P. 1
IJCSIS Volume 7 No 3 March 2010

IJCSIS Volume 7 No 3 March 2010

|Views: 2,192|Likes:
Published by ijcsis
In this March 2010 issue, we present selected publications from the active research area of core and applied computer science, networking, information retrieval, information systems, emerging communication technologies and information security. The paper acceptance rate for this issue is 32%. The journal covers the state-of-art issues in the computer science and their applications in business, industry and other subjects. Printed copies of the journal are distributed to accredited universities and libraries. All the papers in IJCSIS are also available freely with online full-text content and permanent worldwide web link. The abstracts are indexed and available at major academic databases.

We are very grateful to all our authors who have produced some excellent work and the reviewers for providing prompt constructive review comments on the manuscripts. Special thanks to our technical sponsors for their valuable service.
In this March 2010 issue, we present selected publications from the active research area of core and applied computer science, networking, information retrieval, information systems, emerging communication technologies and information security. The paper acceptance rate for this issue is 32%. The journal covers the state-of-art issues in the computer science and their applications in business, industry and other subjects. Printed copies of the journal are distributed to accredited universities and libraries. All the papers in IJCSIS are also available freely with online full-text content and permanent worldwide web link. The abstracts are indexed and available at major academic databases.

We are very grateful to all our authors who have produced some excellent work and the reviewers for providing prompt constructive review comments on the manuscripts. Special thanks to our technical sponsors for their valuable service.

More info:

Published by: ijcsis on Apr 08, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

02/17/2013

pdf

text

original

International Journal of

Computer Science
& Information Security






© IJCSIS PUBLICATION 2010
IJCSIS Vol. 7 No. 3, March 2010
ISSN 1947-5500
IJCSIS Editorial
Message from Managing Editor


In this March 2010 issue, we present selected publications from the active
research area of core and applied computer science, networking, information
retrieval, information systems, emerging communication technologies and
information security. The paper acceptance rate for this issue is 32%. The
journal covers the state-of-art issues in the computer science and their
applications in business, industry and other subjects. Printed copies of the
journal are distributed to accredited universities and libraries. All the papers in
IJCSIS are also available freely with online full-text content and permanent
worldwide web link. The abstracts are indexed and available at major academic
databases.

We are very grateful to all our authors who have produced some excellent work
and the reviewers for providing prompt constructive review comments on the
manuscripts. Special thanks to our technical sponsors for their valuable service.

Avai l abl e at ht t p: / / si t es.googl e.com/ si t e/ i j csi s/
I JCSI S Vol. 7, No. 3,
March 2010 Edit ion
I SSN 1947-5500
© I JCSI S 2010, USA.
I ndexed by (among ot hers):

IJCSIS EDITORIAL BOARD

Dr . Gr egor i o Mar t i nez Per ez
Associat e Professor - Professor Tit ular de Universidad, Universit y of Murcia
(UMU), Spain

Dr . M. Emr e Cel ebi ,
Assist ant Professor, Depart ment of Comput er Science, Louisiana St at e Universit y
in Shreveport , USA

Dr . Yong Li
School of Elect ronic and I nformat ion Engineering, Beij ing Jiaot ong Universit y,
P. R. China

Pr of . Hami d Reza Naj i
Depart ment of Comput er Enigneering, Shahid Behesht i Universit y, Tehran, I ran

Dr . Sanj ay Jasol a
Professor and Dean, School of I nformat ion and Communicat ion Technology,
Gaut am Buddha Universit y

Dr Ri kt esh Sr i vast ava
Assist ant Professor, I nformat ion Syst ems, Skyline Universit y College, Universit y
Cit y of Sharj ah, Sharj ah, PO 1797, UAE

Dr . Si ddhi vi nayak Kul kar ni
Universit y of Ballarat , Ballarat , Vict oria, Aust ralia

Pr of essor ( Dr ) Mokht ar Bel dj ehem
Saint e-Anne Universit y, Halifax, NS, Canada

Dr . Al ex Pappachen James, ( Resear ch Fel l ow)
Queensland Micro-nanot echnology cent er, Griffit h Universit y, Aust ralia
TABLE OF CONTENTS


1. Paper 28021082: Design and Implementation of an Intelligent Educational Model Based on
Personality and Learner’s Emotion (pp. 1-13)
Somayeh Fatahi, Department of Computer Engineering, Kermanshah University of Technology,
Kermanshah, Iran
Nasser Ghasem-Aghaee, Department of Computer Engineering, Isfahan University, Isfahan, Iran

2. Paper 22021039: Signature Recognition using Multi Scale Fourier Descriptor And Wavelet
Transform (pp. 14-19)
Ismail A. Ismail, Professor, Dean, College of Computers and Informatics ,Misr International University, ,
Egypt
Mohammed A. Ramadan, Professor, Department of Mathematics, Faculty of Science, Menofia University ,
Egypt
Talaat S. El danaf , lecturer, Department of Mathematics, Faculty of Science, Menofia University , Egypt
Ahmed H. Samak, Ass. Lecturer , Department of Mathematics, Faculty of Science, Menofia University,
Egypt

3. Paper 31011077: Feature-Based Adaptive Tolerance Tree (FATT): An Efficient Indexing
Technique for Content-Based Image Retrieval Using Wavelet Transform (pp. 20-29)
Dr.P.AnandhaKumar, Department of Information Technology, Madras Institute of Technology, Anna
University Chennai, Chennai India
V. Balamurugan, Research Scholar, Department of Information Technology, Madras Institute of
Technology Anna University Chennai, Chennai, India

4. Paper 28021084: Ontology-supported processing of clinical text using medical knowledge
integration for multi-label classification of diagnosis coding (pp. 30-35)
Phanu Waraporn 1,4,*, Phayung Meesad 2, Gareth Clayton 3
1 Department of Information Technology, Faculty of Information Technology
2 Department of Teacher Training in Electrical Engineering, Faculty of Technical Education
3 Department of Applied Statistics, Faculty of Applied Science, King Mongkut’s University of Technology
North Bangkok
4 Division of Business Computing, Faculty of Management Science, Suan Sunandha Rajabhat University
Bangkok, Thailand

5. Paper 23021042: Botnet Detection by Monitoring Similar Communication Patterns (pp. 36-45)
Hossein Rouhani Zeidanloo, Faculty of Computer Science and Information System University of
Technology Malaysia 54100 Kuala Lumpur, Malaysia
Azizah Bt Abdul Manaf, College of Science and Technology University of Technology Malaysia 54100
Kuala Lumpur, Malaysia

6. Paper 04021004: JawaTEX: A System for Typesetting Javanese (pp. 46-52)
Ema Utami 1, Jazi Eko Istiyanto 2, Sri Hartati 3, Marsono 4, and Ahmad Ashari 5
1 Information System Major of STMIK AMIKOM Yogyakarta, Ring Road Utara ST, Condong Catur, Depok
Sleman Yogyakarta, Telp. (0274) 884201-884206, Faks. (0274) 884208, Candidate Doctor of Computer
Science of Postgraduate School Gadjah Mada University
2,3,5 Doctoral Program in Computer Science, Graha Student Internet Center (SIC) 3rd floor, Faculty of
Mathematic and Natural Sciences Gadjah Mada University, Sekip Utara Bulaksumur Yogyakarta. 55281
Telp/Fax: (0274) 522443
4 Sastra Nusantara Major of Culture Sciences Gadjah Mada University, Humaniora ST No.1, Bulaksumur,
Yogyakarta, Fax. (0274) 550451

7. Paper 04110902: Effective Query Retrieval System In Mobile Business Environment (pp. 53-57)
R.Sivaraman, Dy.Director, Center for Convergence of Technologies (CCT), Anna University
Tiruchirappalli, Tiruchirappalli, Tamil Nadu, India
RM. Chandrasekaran, Registrar, Anna University Tiruchirappalli, Tiruchirappalli, Tamil Nadu, India

8. Paper 10021011: Predictive Gain Estimation – A mathematical analysis (pp. 58-61)
P. Chakrabarti, Sir Padampat Singhania University, Udaipur, Rajasthan, India

9. Paper 12021012: Lightweight Distance bound Protocol for Low Cost RFID Tags (pp. 62-67)
Eslam Gamal Ahmed, Eman Shaaban, Mohamed Hashem
Faculty of Computer and Information Science, Ain Shams University, Abbasiaa, Cairo, Egypt

10. Paper 12021016: Analysis of Empirical Software Effort Estimation Models (pp. 68-77)
Saleem Basha, Department of Computer Science, Pondicherry University, Puducherry, India
Dhavachelvan Ponnurangam, Department of Computer Science, Pondicherry University, Puducherry,
India

11. Paper 12021018: A Survey on Preprocessing Methods for Web Usage Data (pp. 78-83)
V.Chitraa, Lecturer, CMS College of Science and Commerce, Coimbatore, Tamilnadu, India
Dr. Antony Selvdoss Davamani, Reader in Computer Science, NGM College (AUTONOMOUS ), Pollachi,
Coimbatore,Tamilnadu, India

12. Paper 16021023: Seamless Data Services for Real Time Communication in a Heterogeneous
Networks using Network Tracking and Management (pp. 84-91)
Adiline Macriga. T, Research Scholar, Department of Information & Communication, MIT Campus, Anna
University Chennai, Chennai – 600025.
Dr. P. Anandha Kumar, Asst. Professor, Department of Information Technology, MIT Campus, Anna
University Chennai, Chennai – 600025.

13. Paper 17021026: Effect of Weighting Scheme to QoS Properties in Web Service Discovery (pp.
92-100)
Agushaka J. O., Lawal M. M., Bagiwa, A. M. and Abdullahi B. F.
Mathematics Department, Ahmadu Bello University Zaria-Nigeria

14. Paper 17021030: Fuzzy Logic of Speed and Steering Control System for Three Dimensional Line
Following of an Autonomous Vehicle (pp. 101-108)
Full Text: PDF
Dr. shailja shukla, Department of electrical engineering J.E.C. Jabalpur
Mr. Mukesh tiwari, Department of electrical engineering J.E.C. Jabalpur

15. Paper 19011013: A reversible high embedding capacity data hiding technique for hiding secret
data in images (pp.109-115)
Mr. P. Mohan Kumar, Asst. Professor, CSE Department, Jeppiaar Engineering College, Chennai., India.
Dr. K. L. Shunmuganathan, Professor and Head, CSE Department, R.M.K. Engineering College, Chennai.
India.

16. Paper 19011014: Mining The Data From Distributed Database Using An Improved Mining
Algorithm (pp. 116-121)
J. Arokia Renjit, Asst. Professor/ CSE Department, Jeppiaar Engineering College, Chennai,
TamilNadu,India – 600119.
Dr. K. L. Shunmuganathan, Professor & Head, Department of CSE, RMK Engineering College,
TamilNadu , India – 601 206.

17. Paper 20021033: Node Sensing & Dynamic Discovering Routes for Wireless Sensor Networks (pp.
122-131)
Prof. Arabinda Nanda, Department of CSE, KEC, Bhubaneswar, India
Prof (Dr) Amiya Kumar Rath, Department of CSE & IT, CEB, Bhubaneswar, India
Prof. Saroj Kumar Rout, Department of CSE, KEC, Bhubaneswar, India

18. Paper 20021034: A Robust Fuzzy Clustering Technique with Spatial Neighborhood Information
for Effective Medical Image Segmentation (pp. 132-138)
S. Zulaikha Beevi, Assistant Professor, Department of IT, National College of Engineering, Tamilnadu,
India.
M. Mohammed Sathik, Associate Professor, Department of Computer Science, Sathakathullah Appa
College, Tamilndu, India.
K. Senthamaraikannan,

Professor & Head, Department of Statistics, Manonmaniam Sundaranar University,
Tamilnadu, India.

19. Paper 20021035: Design And Implementation Of Multilevel Access Control In Medical Image
Transmission Using Symmetric Polynomial Based Audio Steganography (pp. 139-146)
J.Nafeesa Begum, Research Scholar &Sr. Lecturer in CSE, Government College of Engg, Bargur- 635104,
Krishnagiri District , Tamil Nadu , India
K. Kumar, Research Scholar &Lecturer in CSE ,Government College of Engg, Bargur- 635104, Tamil
Nadu , India
Dr. V. Sumathy, Asst. Professor in ECE , Government College of Technology,Coimbatore, Tamil Nadu,
India

20. Paper 23021040: Enhanced Authentication and Locality Aided - Destination Mobility in Dynamic
Routing Protocol for MANET (pp. 147-152)
Sudhakar Sengan, Lecturer, Department of CSE, Nandha College of Technology, Erode -TamilNadu –
India
Dr.S.Chenthur Pandian, Principal, Selvam College of Technology, Namakkal -TamilNadu – India

21. Paper 23021041: Processor Based Active Queue Management for providing QoS in Multimedia
Application (pp. 153-158)
N. Saravana Selvam, Department of Computer Science and Engineering, Sree Sowdambika College of
Engineering, Aruppukottai, India
Dr. S. Radhakrishnan, Department of Computer Science and Engineering, Arulmigu Kalasalingam College
of Engineering, Krishnankoil, India

22. Paper 23021045: New Clustering Algorithm for Vector Quantization using Rotation of Error
Vector (pp. 159-165)
Dr. H. B. Kekre, Computer Engineering, Mukesh Patel School of Technology Management and
Engineering, NMIMS University, Vileparle(w) Mumbai 400–056, India
Tanuja K. Sarode, Ph.D. Scholar, MPSTME, NMIMS University, Assistant Professor, Computer
Engineering, Thadomal Shahani Engineering College, Bandra(W), Mumbai 400-050, India

23. Paper 25021046: Enhanced Ad-Hoc on Demand Multipath Distance Vector Routing protocol (pp.
166-170)
Mrs. Sujata V. Mallapur, Department of Information Science and Engineering Appa Institute of
Engineering and Technology Gulbarga, India
Prof. Sujata .Terdal, Department of Computer Science and Engineering P.D.A College of Engineering
Gulbarga, India

24. Paper 25021047: A Survey on Space-Time Turbo Codes (pp. 171-177)
Dr. C. V. Seshaiah, Prof and Head, Sri Ramakrishna Engg. College
S. Nagarani, Research Scholar, Anna University, Coimbatore

25. Paper 25021048: Mathematical Principles in Software Quality Engineering (pp. 178-184)
Dr. Manoranjan Kumar Singh, PG Department of Mathematics, Magadha University, Bodhagaya, Gaya,
Bihar, India-823001
Rakesh. L, Department of Computer-Science, SCT Institute of Technology, Bangalore, India-560075

26. Paper 27021050: An Analytical Study on Behavior of Clusters Using K Means, EM and K
*
Means
Algorithm (pp. 185-190)
G. Nathiya, Department of Computer Science, P.S.G.R Krishnammal College for Women, Coimbatore-
641004, Tamilnadu India.
S. C. Punitha, Department of Computer Science, P.S.G.R Krishnammal College for Women, Coimbatore-
641004, Tamilnadu India.
Dr. M. Punithavalli, Director of the Computer Science Department, Sri Ramakrishna college of Arts and
Science for Women, Coimbatore, Tamilnadu, India.

27. Paper 27021055: Node inspection and analysis thereof in the light of area estimation and curve
fitting (pp. 191-197)
A. Kumar, Dept. of Comp. Sc. & Engg., Sir Padampat Singhania, University, Udaipur, India.
P. Chakrabarti, Dept. of Comp. Sc. & Engg., Sir Padampat Singhania, University, Udaipur, India.
P. Saini, Dept. of Comp. Sc. & Engg., Sir Padampat Singhania, University, Udaipur, India.

28. Paper 27021059: An Improved Fixed Switching Frequency Direct Torque Control of Induction
Motor Drives Fed by Direct Matrix Converter (pp. 198-205)
Nabil Taïb and Toufik Rekioua
Electrical Engineering Department, University of A. Mira, Targua Ouzemour, Bejaia, 06000, Algeria.
Bruno François, L2EP Laboratory, Central School of Lille, Lille 59651, France

29. Paper 28021065: Internet ware cloud computing :Challenges (pp. 206-210)
Dr. S Qamar, Department of Computer Science, CAS, King Saud University,Riyadh, Saudi Arabia
Niranjan Lal, Department of Information Technology, SRM University-NCR Campus, Ghaziabad ,India
Mrityunjay Singh, Department of Information Technology, SRM University-NCR Campus, Ghaziabad ,
India


30. Paper 28021070: Mobile Database System: Role of Mobility on the Query Processing (pp. 211-
216)
Samidha Dwivedi Sharma and Dr. R. S. Kasana,

Department of Computer Science & Applications, Dr. H. S. Gour, University, Sagar, MP, India

31. Paper 28021076: Secure Iris Authentication Using Visual Cryptography (pp. 217-221)
P.S. Revenkar, Faculty of Department of Computer Science and Engineering, Government College of
Engineering, Aurangabad, Maharashra, India
Anisa Anjum, Department of Computer Science and Engineering, Government College of Engineering,
Aurangabad, Maharashtra, India
W. Z. Gandhare, Principal of Government College of Engineering, Aurangabad, Maharashtra , India

32. Paper 28021077: A New Approach to Lung Image Segmentation using Fuzzy Possibilistic C-
Means Algorithm (pp. 222-228)
M. Gomathi, Department of MCA, Velalar College Of Engineering and Technology, Thindal (PO), Erode,
India
Dr. P.Thangaraj, Dean, School of Computer Technology and Applications, Kongu Engineering College,
Perundurai, Erode, India

33. Paper 28021078: Protection of Web Applications from Cross-Site Scripting Attacks in Browser
Side (pp. 229-236)
K. Selvamani, Department of Computer Science and Engineering, Anna University, Chennai, India
A. Duraisamy, Department of Computer Science and Engineering, Anna University, Chennai, India
A.Kannan, Department of Computer Science and Engineering, Anna University, Chennai, India

34. Paper 28021079: Review of Robust Video Watermarking Algorithms (pp. 237-246)
Mrs Neeta Deshpande, Research Scholar, SRTM University, Nanded India
Dr.Archana Rajurkar, Professor and Head, MGM College of Engineering, Nanded India,
Dr. R Manthalkar, Professor and Head, SGGS Institute of Engineering and Technology Nanded India

35. Paper 28021080: Terrorism Event Classification Using Fuzzy Inference Systems (pp. 247-256)
Uraiwan Inyaem, Faculty of Information Technology, King Mongkut’s University of Technology North
Bangkok, Bangkok, Thailand
Choochart Haruechaiyasak, Human Language Technology Laboratory, National Electrics and Computer
Technology Center, Pathumthani, Thailand
Phayung Meesad, Faculty of Technical Education, King Mongkut’s University of Technology North
Bangkok, Bangkok, Thailand
Dat Tran, Faculty of Information Science and Engineering, University of Canberra, ACT, Australia

36. Paper 28021086: A Model of Cloud Based Application Environment for Software Testing (pp.
257-260)
T. Vengattaraman, Department of Computer Science, Pondicherry University, India
P. Dhavachelvan, Department of Computer Science, Pondicherry University, India.
R. Baskaran, Department of Computer Science and Engineering, Anna University, Chennai, India.

37. Paper 28021089: Joint Design of Congestion Control Routing With Distributed Multi Channel
Assignment in Wireless Mesh Networks (pp. 261-266)
K.Valarmathi, Research Scolar, Sathyabama University, Chennai, India
N. Malmurugan, Principal, Oxford Engineering College, Trichy, India

38. Paper 28021095: Mobile Broadband Possibilities considering the Arrival of IEEE 802.16m &
LTE with an Emphasis on South Asia (pp. 267-275)
Nafiz Imtiaz Bin Hamid
1
, Md. Zakir Hossain
2
, Md. R. H. Khandokar
3
, Taskin Jamal
4
, Md.A. Shoeb
5

Department of Electrical and Electronic Engineering (EEE)
1
Islamic University of Technology (IUT), Board Bazar, Gazipur-1704, Bangladesh.
4
The University of Asia Pacific (UAP), Dhanmondi R/A, Dhaka-1209, Bangladesh.
5
Stamford University, Siddeswari, Dhaka-1217, Bangladesh.
3
School of Engineering and Computer Science. Independent University, Bangladesh.
2
Radio Access Network (RAN) Department, Qubee. Augure Wireless Broadband Bangladesh Limited.

39. Paper 28021096: SAR Image Segmentation using Vector Quantization Technique on Entropy
Images (pp. 276-282)
Dr. H. B. Kekre, Computer Engineering, MPSTME, NMIMS University, Vileparle(w) Mumbai 400–056,
India
Saylee Gharge, Ph.D. Scholar, MPSTME, NMIMS University, Assistant Professor, V.E.S.I.T, Mumbai-
400071, India
Tanuja K. Sarode, Ph.D. Scholar, MPSTME, NMIMS University, Associate Professor, TSEC, Mumbai 400-
050, India

40. Paper 28021098: Reversible Image data Hiding using Lifting wavelet Transform and Histogram
Shifting (pp. 283-289)
S. Kurshid Jinna, Professor, Dept of Computer Science & Engineering, PET Engineering College, Vallioor,
Tirunelveli, India
Dr. L. Ganesan, Professor, Dept of Computer Science & Engineering, A.C College of Engineering &
Technology, Karaikudi, India

41. Paper 31011061: GIS: (Geographic Information System) An application for socio-economical
data collection for rural area (pp. 290-293)
Mr.Nayak S.K., Head, Dept. of Computer Science, Bahirji Smarak Mahavidyalaya, Basmathnagar, Dist.
Hingoli. (MS), India
Dr.S.B.Thorat, Director, Institute of Technology and Mgmt, Nanded, Dist.Nanded. (MS), India
Dr.Kalyankar N.V., Principal, Yeshwant Mahavidyalaya, Nanded, Nanded (MS) India

42. Paper 28021073: Probabilistic Semantic Web Mining Using Artificial Neural Analysis (pp. 294-
304)
Mr.T.Krishna Kishore, Assistant Professor, St.Ann's College of Engineering and Technology. Chirala-
523187.
Mr.T.Sasi Vardhan, Assistant Professor, St.Ann's Engineering College , Chirala-523187
Mr.N.Lakshmi Narayana, Assistant Professor, St.Ann's College of Engineering and Technology. Chirala-
523187

43. Paper 28021075: Document Clustering using Sequential Information Bottleneck Method (pp. 305-
312)
MS. P.J.Gayathri, 1M.Phil scholar, P.S.G.R. Krishnammal College, for Women, Coimbatore, India
MRS. S.C. Punitha, 2 HOD, Department of Computer science, P.S.G.R. Krishnammal College for Women,
Coimbatore, India.
Dr.M. Punithavalli, 3 Director , Department of Computer science, Sri Ramakrishna college of Arts and
Science for Women, Coimbatore, India.

Design and Implementation of an Intelligent
Educational Model Based on Personality and
Learner’s Emotion


Somayeh Fatahi
Department of Computer Engineering
Kermanshah University of Technology
Kermanshah, Iran
Email: fatahi_somayeh@yahoo.com
Nasser Ghasem-Aghaee
Department of Computer Engineering
Isfahan University
Isfahan, Iran
Email: nasser_ga@yahoo.ca


Abstract—The Personality and emotions are effective parameters
in learning process. Thus, virtual learning environments should
pay attention to these parameters. In this paper, a new e-learning
model is designed and implemented according to these
parameters. The Virtual learning environment that is presented
here uses two agents: Virtual Tutor Agent (VTA), and Virtual
Classmate Agent (VCA). During the learning process and
depending on events happening in the environment, learner’s
emotions are changed. In this situation, learning style should be
revised according to the personality traits as well as the learner’s
current emotions. VTA selects suitable learning style for the
learners based on their personality traits. To improve the
learning process, the system uses VCA in some of the learning
steps. VCA is an intelligent agent and has its own personality. It
is designed so that it can present an attractive and real learning
environment in interaction with the learner. To recognize the
learner’s personality, this system uses MBTI test and to obtain
emotion values uses OCC model. Finally, the results of system
tested in real environments show that considering the human
features in interaction with the learner increases learning quality
and satisfies the learner.
Keywords-Emotion; Learning Style; MBTI Indicator;
Personality; Virtual Classmate Agent (VCA); Virtual Tutor Agent
(VTA); Virtual learning.
I. INTRODUCTION
One of the most important applications of computers is
virtual learning. In recent years, many organizations have
started to use distance learning tools. Although this type of
education has some advantages, they don't deal with sufficient
dynamism and often the education systems do not have any
capability of a real class [29]. Nowadays, an effort is being
made to make the virtual learning environments as real-like as
possible using intelligent agents with emotions and a
personality as well as simulating human behavior.
It’s clear that learners’ emotional states change during
learning processes; the changes in the learning process depend
on individual differences and events that happen in the
environment [9]. Positive emotions play an important role in
creativity and flexibility for solving problems. On the other
hand, negative emotions block the thinking process and prevent
sound reasoning [7]. For example, if the students are tired and
stressful, they cannot concentrate on lessons and think properly
[24] [29]. So, the emotional states of learners in virtual learning
environments must be taken into account [7]. Besides, people
have different personalities, and these differences absolutely
affect their duties and daily activities. People with different
personalities show different emotions in facing events. Also,
different personalities play an important role among learners in
the learning process. Personality of learners can affect their
learning styles [13]. According to their personalities, each
person has especial learning style, and therefore the teaching
style that must be used for every student varies from student to
student.
In virtual learning systems that have been made until now,
scientists have focused on the learner’s emotions and have used
emotional agents. Personality is an independent parameter in
few of them. There is an important problem that has not been
solved until now, there is some models in this field, but no one
of them have perfect view relative to learner’s personality and
emotions together.
This paper is organized in the following ways: section 2 is a
review of the previous works and literature. Section 3 explains
psychological principles. Section 4 is about the proposed
model, and section 5 discuses implementation of the model.
Finally, section 6 and 7 explain evaluation of the system,
results and future works.
II. PREVIOUS WORKS
Many researchers had tried to design general models for
emotions in artificial intelligence area [28] [36] [41] [16] [34].
Due to the fact that emotions’ effect on the learner plays an
inevitable part in the real world, if we neglect them, it’s
counted as a big fault in virtual learning systems [2].
There are many efforts in modeling of emotions in the field
of virtual learning. Some of these efforts are explained here:
Barry Kort, Rob Reilly, Rasalind Picard have presented a
model whose target is using the effect of emotions on learning;
then, they implemented their models so that their system could
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
1 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
recognize emotional state of learners and respond to them
according to the state [34]. Shaikh Mostafa Al Masum and
Mitsuru Ishizuka have presented an emotional cubic model.
The cubic model has three dimensions. According to these
three dimensions, eight types of emotions are extracted that are
effective in the learning process. In this model, they have used
fuzzy science for emotional states [2]. Qiao Xiangjie and his
colleague have presented a self-assessment model. In this
model, the learner finds his/her emotional state by data that are
gathered from the self-assessment based on an emotion map.
They have used a polar model for extracting emotions [46].
Some people just have presented personality models, such
as Ushida and his colleague who have modeled personality
types based on differences in individual emotional states. Rosis
and his colleague have modeled and implemented the
personalities according to the change of the agents' priority of
goals .Serra and Chittaro have suggested a goal bound method
for modeling agents. Ball and Breese have modeled intensity of
emotions in the agent with two personality features in a BBN
(Bayesian Belief Network) network. Thalmann and Kishirsagar
have used BBN for modeling features. They have used FFM
personality model and OCC emotional model, and have added
surprise and hate emotions to it [44]. Andre and his colleagues
have presented an integrated model of emotions (based on
OCC model) and personality (based on FFM model). At the
beginning, they have simulated basic emotions like sadness,
joy, fear and anger, and two personality dimensions:
extroversion and pleasantness [44] [30]. Jin Due and his
colleagues tried to obtain modeling from the learner. In their
model, the learner’s personality is extracted based on Cattell
questionnaire, and then the relation between personality and
behavior is obtained using data mining techniques [13].
After reviewing emotion and personality models in the
virtual learning, we will explain some systems that use this
model: Chaffer, Cepeda and Frasson have tried to predict the
learner’s emotion in E-learning systems. They have used Naïve
Bayes Classifier method for predicting and modeling the
learner’s emotional reaction according to his/her personal
features such as sex, personality, etc. [7] [8]. Ju and his
colleagues have designed a software agent that can cooperate
with the learner. They put this agent in a non-synchronic
learning environment. The designed system included two
subsystems: the teacher subsystem and the learner subsystem.
In the learner subsystem, learners are grouped according to
their level of knowledge and willingness to cooperate, and are
treated accordingly. Keleş and his colleagues have presented a
learning system that is called ZOSMAT. The system is
implemented in a real class environment. The system is a
learner based system [44]. Chaffer and Frasson have suggested
ESTEL architecture to determine optimal emotional state of
learning and induct it to the leaner. The architecture uses Naïve
Bayes Classifier method to predict the optimal emotional state
of the learner based on his/her personality. The optimal
emotional state has been defined so that it increases the
learner’s efficiency, then the optimal emotional state is
inducted to the learner using some combined techniques such
as pictures, music, etc. [24]. Chalfoun, Chaffar and Frasson
have designed an agent that can predict the emotional state of
the learner in the e-learning environment. The prediction of the
agent based on personal and impersonal features is done
through a machine learning technique called ID3. Also they
used OCC emotional model [9]. Haron have suggested a
learning system with a learning module, which can adapt to
each learner. This environment uses fuzzy logic and MBTI
personality test [1]. Passenger software is designed by Marin
and his colleagues to be used for laboratory lessons in distance
education. OCC model is used for implementation of the
software. The system uses virtual tutor agent [35]. Ju and his
colleagues have implemented the learning environment, and
have studied the effects of efficiency of virtual classmate agent
on the learner’s efficiency. In their environment, the virtual
classmate agent has either a competitor or a cooperator [25].
Maldonado and his colleagues have designed a system that
provides an environment to provide learning through
interaction with software agents. The software agent, who acts
as a classmate in the system, tries to answer the learner
emotionally. This system is used a cooperated agent to help
learner [35].
III. PSYCHOLOGICAL PRINCIPELS
Emotion, personality and individual differences are
effective parameters in human activities especially in learning.
Every person has special learning style according to his/her
personality features [3].
A. Emotion
Emotions are our reactions to the surrounding world.
Aristotle, defined emotion as "that which leads one’s condition
to become so transformed that his judgment is affected and,
which is accompanied by pleasure and pain"[21]. Damasio
have proven that the emotions affect reasoning, memorizing,
learning and decision making [11]. Studying has showed that
intelligence is effective in learning process as much as emotion,
interest rate and individuals do [29]. Other people such as
Bower and Cohen believe that emotions affect remembering
and decision making [8] [29].
1) OCC Model
A lot of models have been designed for emotions. They
help us implement emotions and peoples’ reactions in different
conditions such as encountering an event. One of the most
famous is OCC model that is used in most researches. This
calculating model is established by Ortoney, Clore and Collins
in 1998. The model determines 22 types of emotions.
Emotions are divided into positive and negative ones, based on
positive or negative reactions to events. The OCC model is
calculated intensity of emotions based on a set of variables.
The variables are divided into two groups: global and local.
Global variables affect all the emotions, however; local
variables affect just some emotions. Global variables include
senses of reality, proximity, unexpectedness and aroused local
variables include desirability, praise worthiness and attraction.
The other local variables include desirability for others,
deservingness, liking, likelihood, effort, realization, strength of
cognitive unit, expectation deviation and familiarity [28].
The OCC model has three branches. The first branch is the
emotions which show the result of happening events. These
results are obtained according to desirability or undesirability
level of events compared to the agents’ goals. This branch
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
2 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
includes four classes and twelve emotions (Happy-for,
Resentment, Gloating, Pity, Hope, Fear, Joy, Distress,
Satisfaction, Disappointment, Relief, and Fear-confirmed) [4].
The second branch is emotions that are pointed out the
result of agent function based on approving or disapproving
relative to a set of standards. The second branch has just one
class. It includes four emotions (Pride, Shame, Reproach, and
Admiration).
The third branch consists of emotions that are the
consequence of the agent’s liking or disliking his/her goals
compared to the agent’s position and attitude. This branch has
just one class that includes two emotions (Love and Hate).
There is still another class beside these three branches, and
includes four compound emotions (Anger, Gratitude, Remorse,
Gratification) [38].
B. Personality
There are various psychological definitions for personality.
In Schultz’s view, the unique, relatively constant internal and
external aspects of a person’s character that influence his
behavior in different situations are called personality. In fact,
personality includes thoughts, feelings, wishes, inclinations,
and behavioral tendencies that are ingrained in various aspects
of each person’s existence [21].
1) Learning Style
The psychological studies show that each person displays
several individual features in problem-solving and decisions-
making. These features are often considered as learning styles
or learning methods [33]. It’s clear that each person has a
specific learning style according to his/her personality features
[47]. According to the Keefe’s definition of learning styles
[32], “the learning style is composed of cognitive and
emotional characteristics and factors of every individual and is
applicable as a set of permanent indices for recognizing how
the learner comprehends the concepts, and interacts with the
learning environment and responses to the environment”.
Learning styles are the criteria in perception of information and
evaluation of understanding them [1] [14] [32] [47]. There is an
important point in the definition, that is, the learning styles
reflect preferences and individual priorities in selection of
learning conditions [12] [14].
a) Evaluation of Learning Styles
Different tools are used to determine learners’ learning
styles [3]. There are many questionnaires that categorize each
person according to their learning styles: Kolb questionnaire,
Honey and Mumford questionnaire [33], GRSLSS
questionnaire [33] [31], etc.
b) MBTI (Myers-Briggs Type Indicator)
In comparison with the questionnaires in other education
sciences, MBTI is known as a strong instrument to determine
learning styles of individuals [14]. It is an evaluation
instrument related to Jung personality theory, the first time, it
used by Kathrin Briggs and Isabel Myers Briggs in 1920 [42]
[14]. It was first used as a job applicants’ evaluation test. After
that it was used in education sciences in 1957[43]. Generally
this questionnaire is used as an instrument for education and
business to determine learning or teaching styles,
communicating styles and job selection [42] [12]. According to
MBTI grouping, every person has instinctive priorities that are
decisive in their behaviors in different conditions [12] [14]. The
questionnaire helps to specify the personality features and
learning priorities of each person, and to extract the teaching
styles are related to the features [40]. MBTI uses four two-
dimensional functions according to the Jung theory. Jung
theory specifies three functions of Extraversion/Introversion
(E/I), Sensing/Intuition (S/N) and Thinking/Feeling (T/F), but
we have a fourth dimension, that is, Judging/Perceiving (J/P) in
MBTI [1] [40].
c) The Features of “MBTI” Dimensions
Extroversion/Introversion: extrovert people tend more to
the outside world. In fact, they have many tendencies for
teamwork. They have a lot of friends. They are active and
practical. Their emotions are easily expressed [12] [14] [22]
[40]. Conversely, introvert people prefer their introverted
opinions and internal world and ideas. They are very
independent. They spend a lot of time to think on their tasks;
they have a few friends. They try to hold their emotions and
express their emotions at certain times to particular people [14]
[22] [40] [45].
Sensing/Intuition (S/N): sensing people are emotional
people who get information from environment through their
five senses. They are realists. They usually pay attention to the
details, focus on practical subjects [14] [22] [24] [45]. On the
other hand, intuitive people, who get information through
perception between relationships and results, usually use their
conception to get information. They try to make a mental
picture of the subject for themselves and then move towards
details. Their concentration is more on ideas and their integrity.
Their concentration is on the future rather than present [14]
[22] [24] [45].
Thinking/Feeling: thinking people make their decisions
based on exact data, and they like accurate subjects. Their
decisions are logical and impersonal [33] [22] [24] [45].
Feeling people, on the other hand, have emphasis on harmony
and balance. They enjoy teamwork. Their judgments and
decisions are based on personal value.
Judging/Perceiving: judging people prefer completely
organized life and regulated thoughts and ideas. They pay
attention to activities which are important to them. Deadlines
are important for them [14] [22] [45]. Perceiving people,
however, have a flexible life style. They are curious, agreeable
and tolerant. They start several projects simultaneously. They
don't pay attention to deadlines.
d) Personality Types of "MBTI"
Sixteen personality types result from mixing four two-
dimensional functions and individuals are categorized in these
types after completing some questionnaires [12] [24]. The
sixteen groups are shown in Table I. For example, people in
ENTP group are all extrovert, intuitive, thinking and
perceiving.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
3 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
TABLE I. PERSONALITY TYPES OF "MBTI”
INTP ENTJ ISTP ESTJ
ENTP INTJ ESTP ISTJ
ENFP INFJ ESFP ISFJ
INFP ENFJ ISFP ESFJ
IV. PROPOSED MODEL
In this paper, a new model is presented according to the
learning model based on emotions and personality [19] and
virtual classmate model [17] [18] in our previous research. This
module is displayed in Figure1.
























Figure 1. Proposed model
The model has goals as following:
• Presentation method to determine learner’s group
based on personality questionnaire
• Presentation method to recognize learner’s emotions
based on his/her personality
• Presentation method to change teaching style based
on learner’s emotions and personality
• Presentation a method to determine VCA based on
learner’s personality
• Presentation suitable tactics in learning based on
learner’s emotions and personality using VTA and
VCA.
A. Model Architecture
The model includes six modules, each of them described
below:
Module of personality identification: In the first, learner
encounters with system, MBTI questionnaire is in front of
him/her, and it finds out learner’s personality (for example
ISEJ, ESTP, INTJ …).
Module of choosing a teaching style matching with
learner’s personality: Generally, there are three kinds of
learning environment: Independent, cooperative, and
competitive learning environment [15]. The system sets learner
in one of three kinds of independent group, cooperative group
with VCA, or competitive group with VCA. Individuals are
classified according to personality types that are showed in
Table II. This classification is obtained based on fulfilled
studies on personality’s characteristics [23].
Module of choosing virtual classmate agent: If the learner
be placed in the independent group, the education and learning
process will be started otherwise system selects a suitable VCA
according to learner’s personality type, then; the process of
education and learning will be started. Selecting personality of
VCA should be in such a way that is proportionate with the
leaner’s personality type and it helps to progress of learner
during the learning process. According to the fulfilled studies,
presence of VCA with an opposed personality is suitable [6]
[10] [39]. Studies in [6] [10] [39] and other psychological
sources are showed that people are grouped with opposed
personality are much better than the people are grouped with
similar personality. Former has high efficiency rather than
second.
TABLE II. LEARNER’S CLASSIFICATION BASED ON MBTI TYPE

Module of education and learning: In this module, lesson’s
points are presented to learner as exercises and learning process
will be started.
Module of emotion evaluation: During doing exercise and
evaluating the rate of learning, based on the learner’s learning
level and the events which happen in the environment, some
emotions are expressed in the learner (e.g. liking VCA,
disappointment from doing exercises, etc). According to the
fulfilled studies, we have found that only specific emotions are
effective in the learning process. The result of the studies in
[29] [36] are showed that the first branch of emotions in the
OCC model is effective in learning. Here, we use first and third
branch of OCC model. The first branch includes effective
emotions in the learning process, and the third branch includes
those emotions that the person in the relation with the others
(e.g. the virtual classmate agent) shows.
Independent
Cooperative with
VCA
Competitive
with VCA
INTJ INFJ ENTP
INFP ENFP ENTJ
ISTJ ISFJ ESFJ
INTP ESFP
ISFP ESTP
ISTP ENFJ
ESTJ
Education and Learning
Emotion Evaluation
Personality
Identification
Choosing Behavior
and Updating the
Learning Style
Choosing Virtual
Classmate Agent
Choosing
Teaching Style
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
4 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Module of choosing behavior and updating style of
teaching: According to the events which happened in the
environment and was changed learner’s emotions; this module
based on personality’s characteristic and current learner’s
emotions, changes the teaching style. In addition, VTA and
VCA perform suitable tactics to interacting with learner based
on event has happened. The tactics are in the knowledge base
of system and include a set of rules like “if-then”.
B. Calculation of Emotions’ Values
In the proposed model, two emotion’s branches of the OCC
model are used. The first branch includes effective emotions in
the learning process and third branch includes person’s emotion
against the others. In this part, we examine the way of
calculating them.
1) First Branch of Emotions in OCC Model
We use calculating model to achieve emotions’ values [26].
In this model to calculate the first branch’s emotions of OCC
model, values of general variables (Unexpectedness), and local
variables (Likelihood and Desirability) should be calculated.
Unexpectedness and Likelihood variables directly are obtained
from outside, and calculate based on environmental variables.
In implementation, which is based on this model [27] as a
VTA, the value of Unexpectedness and Likelihood variables
have been calculated according to the learner’s answer for the
exercises (e.g. True or False) [26]. Here, in the same approach,
calculating the values of these two variables is done, but
calculation value of Desirability is different.
a) Learner Agent’s Goals According to Personality
Type
According to the model [26], when an event happens in the
environment, this event is offered to event’s evaluating module.
According to the learner’s goals, evaluation is done and the
value of Desirability is obtained.
In this paper, according to the “MBTI” questionnaire, four
goals for each learner are considered:
• The goal of learner’s agent is to do the exercise alone
and without any help from VCA.
• The goal of learner’s agent is effort in doing the
exercise, even if desirable result isn’t obtained.
• The goal of learner’s agent is having high speed in
answering for the exercises.
• The goal of learner’s agent is cooperating with VCA for
doing the exercises.
The values of each goal are obtained according to
several questions in MBTI questionnaire. After normalization,
these values are placed in the numerical domain of 0-1 Eq. (1).
These values in the matrix G which is the goals matrix are
placed as following [26]:

G=

[ ] [ ] 1 , 0 : 4 , 1 ∈ ∈ ∀
i
g i

(1)



In Eq. (1), g
i
is valued with goal importance.
b) Event’s Impact on Learner’s Goals
In this stage, the value of each event’s impact on the goal is
expressed, by a matrix Eq. (2):

Impact= [ ] [ ] [ ] 1 , 1 : , 1 , , 1 − ∈ ∈ ∀ ∈ ∀
ij
a m j n i (2)




Each element of the matrix shows value of each event’s
impact on a special goal. “m” includes number of events and
“n” includes number of goals. Positive values of a
ij
s show the
positive effect of event on the goal and negative value of a
ij
s
shows the negative effect of event on the goal. The values of
each a
ij
s are calculated for i
th
event and j
th
goal. To calculate
each of a
ij
s, the “Value Function’ is used [26].
To calculate the “Value Function” environmental variables
are used. These variables are used to measure the achievement
to goal for an event. Two vectors are defined: vector “V” which
shows the effect of environmental variables’ values on a goal,
and vector “W” which shows the effect of the weights’ values
of each environmental variable on a goal. If “n” variables affect
a goal, they showed in vector “V”, as following Eq. (3):


V= [ ] [ ] 1 , 0 : , 1 ∈ ∈ ∀
i
v n i (3)


The weight of each variable is also placed in vector “W”, as
following Eq. (4):
W= [w
1
w
2
… w
m
]
[ ] [ ] n
j
w m j , 0 : , 1 ∈ ∈ ∀
(4)
Value of the “Value Function” is obtained by multiplying
two vectors of “V” and “W”. Because of the value of the
“Value Function” should be between 0 and 1, we divide
obtained product to the sums of the elements of weights’ vector
Eq. (5):
Value (g
j
) =

=
×
m
k
k
W
V W
1
(5)
c) Environmental Variables
In the proposed model, according to the defined goals for a
learner, five environmental variables are considered, these
variables influence the goals:
g
1

g
2
g
3
g
4
a11 … a1n
.
.
.
am … amn
V
1

V
2

.
.
.
V
n

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
5 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
• Independence
• Potential of Cooperation
• Response Speed
• Grade of Exercises
• Effort
According to the fulfilled studies on MBTI questionnaire,
for each of the influencing variables on learner’s goals, it is
considered a numerical weight in the domain of 1-3 [42] [12]
[14] [22] [24] [40] [45]. Variables and weights are shown in
Table III.
TABLE III. ENVIRONMENTAL VARIABLES

Independence: Value of the variable shows the learner’s
independence during the learning process. At the first learner
encounter the system, value of this variable for the cooperative
and competitive group is 0 and for the independence group is 1.
During learning process, the value of this variable calculated
according to Eq. (6):
Independence=1- AH (6)
In this equation, “Independence” variable shows learner’s
independence, and "AH" is indicator of VTA’s help or VCA’s
help. The AH is between 0-1, and it’s obtained by the division
of aid’s request value from VTA or VCA on the number of
exercises.
Potential of Cooperation: Value of the variable shows
learner interesting in cooperative group, the value of this
variable calculated according to Eq. (7):
Potential of Collaboration = 1- Independency (7)
In this equation, the independence variable is calculated
from Eq. (6).
Response Speed: Value of the variable shows learner’s
response speed that is obtained with Eq. (8).

Response Speed= 1 –
DT
RT
(8)
In equation Eq. (8), “RT” is leaner’s response time, and
“DT” is the default time of the system for responding to the
exercise.
Grade of Exercises: Value of the variable is between 0-1,
and it shows the learner’s grade from solving the exercises.
Effort: Value of the variable is obtained with ask of learner.
Value of this variable is between 0-1.
d) Calculating Desirability
After calculation of the goals’ values and the impact value
of the event on the learner’s goals, Desirability value is
obtained by multiplying two matrixes: “Impact” and “G”
according to Eq. (9) [26]. In this equation e
i
represents the
entrance event.
Since the numerical results should be between -1 and 1, the
obtained result is divided to the sums of the vector “G”
elements.
Desirability (e
i
) =

=

=
n
i
i
g
n
j
j
g
ij
a
1
1
(9)
Finally, we obtain value of the first emotions branch of
OCC model from Desirability, Unexpectedness and Likelihood
variables. It should be mentioned that the value of Likelihood
variable is obtained with attention to the student’s performance
in the past, and the value of Unexpectedness variable is
obtained according to the student’s effectiveness.
2) Third Branch of Emotions in OCC Model
For determining Love and Hate emotions, we attend the
event’s type and current emotions. When an event happens in
the environment, either positive or negative emotions appear in
the leaner based on this event. List of the events as well as their
classification to positive and negative groups are shown in
Table IV. In addition, the emotions’ classification based on
positive or negative are shown in Table V.
TABLE IV. CLASSIFICATION OF THE EVENTS
Negative Positive
Inaccurate response to the exercise Accurate response to the exercise
Finishing time of responding and
Unsolved exercises
Student’s effort for solving the
exercise
Leaving the class Student’s thinking
Rejecting help or refusing to cooperate
with VCA
Requesting help from VCA
Request for the next exercise and
leaving the previous exercise unsolved



Vector W
Vector V
Goal 4 Goal 3 Goal 2 Goal 1
1 1 1 3
Independence
3 1 1 1
Potential of
Cooperation
1 3 1 1
Response Speed
2 1 1 2
Grade of Exercises
1 1 3 1
Effort
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
6 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

TABLE V. CLASSIFICATION OF THE EMOTIONS IN OCC MODEL
Negative Positive
Distress Joy
Fear Hope
Disappointment Satisfaction
Fear-confirmed Relief
Pity Gloating
Resentment Happy-for
Shame Pride
Reproach Admiration
Hate Love
Anger Gratitude
Remorse Gratification

In this section, based on the conducted studies in [37],
positive and negative emotions, and positive and negative
events, we consider four states as follows:
• If the learner’s current emotion is negative and a
negative event has happened, Hate emotion toward VCA
will be expressed.
• If the learner’s current emotion is negative and a
positive event has happened, Hate emotion toward VCA
will be expressed.
• If the learner’s current emotion is positive and a
negative event has happened, Love emotion toward
VCA will be expressed.
• If the learner’s current emotion is positive and a positive
event has happened, Love emotion toward VCA will be
expressed.
According to these states, Love or Hate emotions toward a
VCA is obtained and since the numerical value of these two
emotions is not important for the rules of our expert system, it
is just enough for the it to differentiate them.
V. IMPLEMENTATION
We have implemented our model in educational
environments. The educational domain in this environment is
Learning English Language. For better evaluating of the
proposed model, this environment is compared with two other
environments. Three environments to examine are as follows:
• Educational environment without emotions
• Educational environment with emotional VTA
• Educational environment with emotional VTA and
VCA who have emotions and personality
A. Educational Environment without Emotions
This environment is a simple virtual education
environment. The learner enters the environment and just tries
to solve many exercises. After responding to the questions of a
level, the learner is promoted to an upper level. During the
learning process, the environment does not provide any guides
for the learners, and just the learner’s grade is shown on the
screen.
B. Educational Environment with Emotional VTA
In this environment, VTA tries to get the learner’s emotions
by simulation of the learner and select the suitable tactics and
perform them, using the learner’s emotions and the events
happening in the environment. VTA also can show emotional
states and interact with the learner. Considering the events
happening in the environment, the VTA infers the learner’s
emotions and, based on them, uses suitable tactics for teaching
the learner more effectively. The tactics are saved as a set of
rules in the VTA’s knowledge base. One of them for example
is as follows:
Rule
1:
IF Disappointment IS High
OR Disappointment IS Medium
AND Event IS Wrong Answer
THEN Teacher-Tactic 1 IS Increase-Student-
Self-Ability
AND Teacher-Tactic 2 IS Increase-Student-
Effort
C. Educational Environment with Emotional VTA and VCA
with Emotions and Personality
This environment is implemented based on the proposed
model. The environment uses VTA and VCA together. Two
agents based on recognizing learner’s emotions, select suitable
tactics to interaction with him/her (Figure 2).














Figure 2. Educational Environment with VTA and VCA
In this environment, selection of tactics for dealing with the
learner is related to the group’s type. According to the learner’s
learning group, certain tactics are used. At the beginning, based
on the learner’s personality, one of the independent,
cooperative, or competitive learning groups is considered for
him/her.
The rules of determining the learner’s group are saved in
the system’s knowledge base. For example, one of the rules is
as follows:
Rule 1:
ISFJ IS Student's Personality IF
Cooperative IS His/her group THEN

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
7 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
1) Independency’s Learning Group
When a learner is in this group, he is supposed to solve the
exercises by himself and without the presence of VCA. In this
environment, VTA doesn’t help the learner either and only
does his administrative tasks. This learning environment is very
similar to the educational environment with the emotional
VTA. There is, however, a small difference, that is, since the
personality’s type of the learner is considered as independent
and these people like to solve the exercises by themselves, help
with tasks is deleted from the VTA’s tasks. The other VTA’s
tasks are similar to those of the VTA in the educational system
as mentioned above. The tactics in the system has been defined
for him. The list of VTA’s tactics is shown in Table VI.
TABLE VI. VTA’S TACTICS IN INDEPENDENCY’S LEARNING
ENVIRONMENT
VTA’s Tactics
Allow-to-Leave-Virtual-
Class
7
Increase-Student-Self-
ability
1
Teacher-IS-Idle 8 Increase-Student-Effort
2
Propose-Cooperate-With-
VCA
9 Congratulate-Student
3
Change-Student-Group-to-
Cooperative
10 Encourage-Student
4
Change-Student-Group-to-
Competitive
11 Recognize-Student-Effort
5
Show-Next-Exercise 12 Show-Student-New-Skills
6

VTA performs some tactics to interact with the learner.
The tactics are saved as rules in VTA’s knowledge base. For
example, one of the rules is as follows:

a) Physical and Verbal Behaviors
Every tactic includes a set of physical and verbal behaviors.
The physical behaviors are those emotional behaviors that the
VTA expresses for showing his emotional states. These
behaviors are executable by the prepared functions of Merlin
agent which Microsoft Company has designed.
For each verbal behavior, there is a sentence that VTA
presents as text. Instances of the physical and verbal behaviors
are shown in Table VII and Table VIII, respectively.
TABLE VII. PHYSICAL BEHAVIORS OF VTA IN INDEPENDENCY LEARNING
ENVIRONMENT
Merlin Function Physical Behavior
Congratulate, pleased, Speak Congratulation
TABLE VIII. VERBAL BEHAVIORS OF VTA IN INDEPENDENCY LEARNING
ENVIRONMENT


2) Cooperative Learning Group
When a learner is in this group, according to his
personality’s type, he is interested in participating in the group
and doing cooperative activities. Considering this issue, the
environment has been designed in such a way that it uses a
VCA to interaction with the learner.
In this environment due to the presence of VCA, VTA’s
tasks are changed, and we have defined a set of tasks for VTA
and VCA. Considering this fact, the environment is defined so
that a VCA is used to communicate with the learner. The
tactics of VTA and VCA in Cooperative Learning Environment
are shown in Table IX.
TABLE IX. TACTICS OF VTA AND VCA IN COOPERATIVE LEARNING
ENVIRONMENT
VTA’s Tactics VCA’s Tactics
Congratulate-Student Increase-Student-Self-ability
Recognize-Student-Effort Increase-Student-Effort
Show-Student-New-Skills
Persuade-Student-To-Think-More-
For-Problem
Show-Next-Exercise Cooperate-With-Student
Allow-To-Leave-Virtual-Class Notify-Student-For-Deadline
Teacher-IS-Idle Encourage-Student
Change-Student-Group-To-
Independent
Give-Help
Change-Student-Group-To-
Competitive
Persuade-Student-To-Be-
Independent
Offer-Cooperation

According to the above description, a set of rules are saved
in the knowledge base of the environment so that the VTA and
VCA have interaction with the learner in accordance with
them. For example, one of the rules is as follows:

Merlin’s Speaking
Verbal
Behavior
Uauuuuu! You are very well! Congratulations for the
efforts that you made!
Congratulation
Congratulations! You obtain an excellent result!
Continue it.
Congratulation
Congratulations! Your performance was stupendous! Congratulation
Congratulations for your efforts! Congratulation
Congratulations! You reached a good result! Congratulation
Rule 1: IF Student Group IS Independent
AND Disappointment IS High
OR Disappointment IS Medium
AND Event IS Wrong Answer
THEN Teacher-Tactic 1 IS Increase-Student-
Self-Ability
AND Teacher-Tactic 2 IS Increase-Student-
Effort
AND Teacher-Tactic 3 IS Change-Student-
Group-to-
Cooperative
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
8 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

In this part, VTA’s behaviors are executable by Merlin
agent, and VCA’s behaviors are executable by Peedy agent.
Instances of the physical and verbal behaviors, which are
related to the VCA, are given in Table X and Table XI.
TABLE X. PHYSICAL BEHAVIORS OF VCA IN COOPERATIVE LEARNING
ENVIRONMENT
Peedy Function Physical Behavior
Think, Speak Persuade_Student

TABLE XI. VERBAL BEHAVIORS OF VCA IN COOPERATIVE LEARNING
ENVIRONMENT
Peedy’s Speaking Verbal Behavior
You have to think more for doing your
assignment.
Persuade-Student
I know, you are very intelligent, but you’d
better spend more time on your assignments.
Persuade-Student
Let think more on this idea, please. There are
enough times. Don’t festinate to answer.
Persuade-Student

3) Competitive Learning Group
When a learner is in this group he/she may be interested in
competing with his classmate, based on his personality type.
Concerning this issue, the environment has been designed in
such a way that it uses a VCA for competing with the learner
and simulates a competitive environment for the learner.
In this environment, due to the presence of VCA, VTA’s
tasks are changed, and we have defined a set of tasks for VTA
and VCA. Considering this fact, the environment is defined so
that a VCA is used to communicate with the learner. The
tactics of VTA and VCA in Cooperative Learning Environment
are shown in Table XII.




TABLE XII. TACTICS OF VTA AND VCA IN COMPETITIVE LEARNING
ENVIRONMENT
VTA’s Tactics VCA’s Tactics
Congratulate-Student Increase-Student-Effort
Congratulate-Classmate
Persuade-Student-To-Think-
More-For- Problem
Increase-Student-Self-Ability Notify-Student-For-Deadline
Encourage-Student
Recognize-Student-Effort
Show-Student-New-Skills
Show-Next-Exercise
Allow-To-Leave-Virtual-Class
Teacher-IS-Idle
Change-Student-Group-To-
Independent
Change-Student-Group-To-
Cooperative
According to the above description, a set of rules are saved
in the knowledge base of the environment so that the VTA and
VCA have interaction with the learner in accordance with
them. For example, one of the rules is as follows:
In this part, like the previous part, for each tactic of the
VTA and VCA, a set of physical and verbal behaviors are
defined. For a better comparison between the two cooperative
and competitive states of the virtual classmate agent, it is
given the tactics of persuade-student-to-think in Tables XIII
and XIV, respectively.
TABLE XIII. PHYSICAL BEHAVIORS OF VCA IN COMPETITIVE LEARNING
ENVIRONMENT
Peedy Function Physical Behavior
Speak Persuade_Student_to_Think



Rule 1: IF Student Group IS Cooperative
AND Like IS High
OR Like IS Medium
AND Distress IS High
AND Event IS Wrong-Answer
AND Student’s
Response speed
IS Higher-Than-
Threshold
AND Virtual
Classmate's
Personality
IS IN
OR Virtual
Classmate's
Personality
IS IS
THEN Teacher_Tactic1 IS Recognize-
Student-Effort
AND Classmate_Tactic1 IS Persuade-Student-
to-Think-More-
for-Problem
Rule 1: IF Student Group IS Competitive
AND Like IS High
OR Like IS Medium
AND Distress IS High
AND Event IS Wrong Answer
AND Student’s
Response speed
IS Higher–Than-
hreshold
AND Virtual Classmate's
Personality
IS IN
OR Virtual Classmate's
Personality
IS IS
THEN Classmate_Tactic1 IS Persuade-Student-
to-Think-
More-for-Problem
AND Teacher_Tactic1 IS Recognize-Student-
Effort
AND Teacher_Tactic2 IS Change-Student-
Group-to-
Cooperative
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
9 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

TABLE XIV. VERBAL BEHAVIORS OF VCA IN THE COMPETITIVE
LEARNING ENVIRONMENT
Peedy’s Speaking Verbal Behavior
I think you should take your time doing
your assignments.
Persuade-Student-to-Think
No need to rush. Think them over!
Persuade-Student-to-Think
VI. EXPERIMENTAL RESULTS
For evaluating educational environment based on the
proposed model, three educational environments were shown
to thirty users and the users evaluated them. After that, they
were asked to answer a questionnaire (Appendix A). According
to users’ responses, the following results are given (Figure 3-
Figure 14):

Figure 3. Evaluating of Learning Rate

Figure 4. Evaluating Attractiveness of
Educational Environments



Figure 5. Evaluating Interaction and User’s Satisfaction of
Educational Environments

Figure 6. Evaluating Interaction and User’s Satisfaction Of Educational
Environment

Figure 7. Evaluating Interaction and User’s Satisfaction of Educational
Environment 2

Figure 8. Evaluating Interaction and User’s Satisfaction of Educational
Environment 3

Figure 9. Comparing User’s Interaction and Satisfaction of Three
Educational Environments.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
10 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


Figure 10. Evaluating VTA’s Function in the Environment 2

Figure 11. Evaluating VTA’s Function in the Environment 3

Figure 12. Comparing VTA’s Function in the Environment 2 and 3

Figure 13. Evaluating VCA’s Function







Figure 14. Evaluating the Effect of VCA’s Presence in Learning Progress
VII. CONCLUSION AND FUTURE WORKS
As the result of evaluation shows, users believe that the
educational environment 3 is more attractive than the
educational environments 1 and 2. Also, they believe the
educational environment 2 is more attractive than the
educational environment 1.
The result of the evaluation shows that the presence of the
intelligent agents with features like human can increase the
learning rate, and it has an important role in attracting them for
the virtual educational environments. Comparing the
educational environment 2 with the educational environment 3
showed that the presence of a VCA increases users’ satisfaction
and users’ interaction with the environment.
Finally, the results show that VTA and VCA have
considerable effect on improvement of learning process.
In the future, we will try to complete the system. We can do
the following enhancements:
Applying all dimensions of “MBTI”: In the proposed model
just two dimensions of MBTI were used for VCA simulation.
For presenting this agent more realistically, two other
dimensions can be added.
Applying all emotions of the OCC model: In this model, just
the emotions of the first and third branches of the OCC model
were used. We can improve the model by using all of them.
Applying the culture model: Nowadays, lots of researchers
on the impacts of the culture on learning styles have been
published. In the future, by adding this parameter to personality
and emotion models, we can increase the environment
credibility for the learners.
Adding the learning feature to agents: In the implemented
system, agents perceive the states according to the written rules
of the system and do a suitable action for it. By adding the
learning features to VTA and VCA and based on the learner’s
reactions in the environment, they can learn the rules.
Completing the system: We can add some more functions to
the system, such as lessons’ classification according to their
degree of hardness. In addition, it can increase the number of
the VCA’s in the learning environment.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
11 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

REFERENCES
[1] Abrahamian, E., Weinberg, J., Grady, M., and Michael Stanton, C.
(2004). "The Effect of Personality-Aware Computer-Human Interfaces
on Learning" , Journal of Universal Computer Science, Vol. 10, pp. 27-
37.
[2] Al Masum, S.M. and Ishizuka, M. (2005). "An Affective Role Model of
Software Agent for Effective Agent-Based e-learning by Interplaying
between Emotions and Learning", WEBIST, USA, pp. 449-456.
[3] Anderson, T. and Elloumi, F. (2003). "Theory and practice of online
learning".
[4] Berry, M. (2005). "A virtual learning environment in primary
education".
[5] Botsios, S., Mitropoulou, V., Georgiou, D. and Panapakidis, I. (2006).
"Design of Virtual co-Learner for Asynchronous Collaborative e-
Learning". ICALT, pp. 406-407.
[6] Capretz L., F. (2002). "Implications of MBTI in Software Engineering
Education", ACM SIGCSE Bulletin - inroads, ACM Press, New York,
Vol. 34, pp. 134-137.
[7] Chaffar, S. and Frasson, C. (2004). "Using an Emotional Intelligent
Agent to Improve the Learner’s Performance", In Social and emotional
intelligence in learning Environments workshop, 7th International
Conference on Intelligent Tutoring System, Brazil, pp. 37-43.
[8] Chaffar, S., Cepeda, G. and Frasson, C. (2007). "Predicting the Learner’s
Emotional Reaction towards the Tutor’s Intervention", 7th IEEE
International Conference, Japan, pp. 639-641.
[9] Chalfoun, P., Chaffar, S. and Frasson, C. (2006). "Predicting the
Emotional Reaction of the Learner with a Machine Learning
Technique", Workshop on Motivaional and Affective Issues in ITS,
International Conference on Intelligent Tutoring Systems, Taiwan
[10] Choi, K., Deek, F.P., and Im, I. (2008). "Exploring the Underlying
Aspects of Pair Programming: The Impact of Personality", Journal of
Information and Software Technology.
[11] Damasio, A.R. (1994). "Descartes’ Error: Emotion, Reason, and the
Human Brain ", Gosset/Putnam Press, New York.
[12] Dewar,T. and Whittington,D. (2000). "Online Learners and their
Learning Strategies " , Journal of Educational Computing Research, Vol.
23, no. 4, pp. 415-433.
[13] Du, J., Zheng, Q., Li, H. and Yuan, W. (2005). "The Research of Mining
Association Rules Between Personality and Behavior of Learner Under
Web-Based Learning Environment", ICWL, pp. 406 – 417.
[14] Durling, D., Cross, N., and Johnson, J. (1996). "Personality and learning
preferences of students in design and design-related disciplines".
Proceedings of IDATER 96 (International Conference on Design and
Technology Educational Research), Loughborough University, pp. 88-
94.
[15] Ellis, S., and Whalen, S. (1996). “Cooperative Learning: Getting
Started”, Scholastic.
[16] El-Nasr, M., Yen, J. and Ioerger, T. (2000), "FLAME – fuzzy logic
adaptive model of emotions", Autonomous Agents and Multi-Agent
Systems, Vol. 3, no.3, pp. 219-57.
[17] Fatahi, S., Ghasem-Aghaee, N., and Kazemifard, M. (2008). "Design an
Expert System for Virtual Classmate Agent (VCA)". Proceedings of
World Congress Engineering 2008, U.K, London.
[18] Fatahi, S., M. Kazemifard, and N. Ghasem-Aghaee. 2009. "Design and
Implementation of an E-Learning Model by Considering Learner's
Personality and Emotions". In Advances in Electrical Engineering and
Computational Science, Netherlands: Springer, Vol. 39, pp. 423-434.
[19] Ghasem-Aghaee, N., Fatahi, S., and T.I. Ören. (2008). "Agents with
Personality and Emotional Filters for an E-learning Environment",
Proceedings of Spring Agent Directed Simulation Conference, Ottawa,
Canada.
[20] Harati Zadeh, S., bagheri Shouraki, S. and Halavati, R. (2006).
"Emotional Behavior: A Resource Management Approach", Journal of
SAGE, Vol. 14, pp. 357-380.
[21] Hartmann, P. (2006). "The Five-Factor Model: Psychometric, biological
and practical perspectives".
[22] Higgs, M. (2001). "Is there a relationship between the Myers-Briggs
type indicator and emotional intelligence?", Journal of Managerial
Psychology, Vol. 16, no. 7, pp. 509-533.
[23] http://www.murraystate.edu
[24] Jessee, S.A., ƠNeill, P.N. and Dosch, R.O. (2006). "Matching Student
Personality Types and Learning Preferences to Teaching
Methodologies", Journal of Dental Education, Vol. 70, pp. 644-651.
[25] Ju, W., Nickell, S., Eng, K. and Nass, C. (2005). "Influence of colearner
agent behavior on learner performance and attitudes", CHI '05 extended
abstracts on Human factors in computing systems, ACM Press, Portland,
OR, USA.
[26] Kazemifard, M., Ghasem-Aghaee, N., and Oren, T. I. (2006). "An
Event-based Implementation of Emotional Agents". In Proceeding of the
Summer Simulation Conference (SCSC'06), Calgary, Canada,pp. 63-67.
[27] Kazemifard, M., and Ghasem-Aghaee, N. (2007). "Virtual Tutor". In
Proceeding of the 15th Iranian Conference on Electrical Engineering
(ICEE'07), Tehran, Iran,pp. 358-363.
[28] Kestern, A.J.(2001)."A supervised machine-learning approach to
artificial emotions". Master’s thesis, Department of Computer Sience,
University of Twent.
[29] Kort, B. and Reilly, R. (2001). "Analytical Models of Emotions,
Learning and Relationships: Towards an Affect-sensitive Cognitive
Machine". MIT Media Lab Tech Report, no. 548.
[30] Kshirsagar, S. and Magnenat-Thalmann, N. (2002). "A multilayer
personality model", Proceedings of the 2nd international symposium on
Smart graphics, Hawthorne, New York pp.107-115.
[31] Lang, H.G., Stinson, M.S., Kavanagh, F., Liu, Y., and Basile, M. (1999).
"Learning styles of deaf college students and instructors’ teaching
emphases". Journal of Deaf Studies and Deaf Education, Vol. 4, pp. 16-
27.
[32] Li, Y.S., Chen, P.S., and Tsai, S.J. (2007). "A comparison of the
learning styles among different nursing programs in Taiwan:
Implications for nursing education", Journal of Nurse Education Today.
Vol. 28, no. 1, pp. 70-76.
[33] Logan, K., and Thomas, P. (2002). "Learning Styles in Distance
Education Students Learning to Program", Proceedings of 14th
Workshop of the Psychology of Programming Interest Group, Brunel
University, pp. 29-44.
[34] Maria, K.A. and Zitar, R.A. (2007). "Emotional Agents: A Model and an
Application", Journal of Information and Software Technology, Elsevier
Publishing, Vol. 49, no. 6, pp. 695–716.
[35] Marin , B.F., Hunger, A. and Werner, S. (2006). "Corroborating
Emotion Theory with Role Theory and Agent Technology: a Framework
for Designing Emotional Agents as Tutoring Entities", Journal of
Networks, Vol. 1, pp. 29-40.
[36] Miranda, J.M and Aldea, A. (2005). "Emotions in Human and Artificial
Intelligence", Journal of Computers in Human Behaviour, Vol. 21, no.
2, pp. 323-341.
[37] Morishima, Y., Nakajima, H., Brave, S., Yamada, R., Maldonado, H.,
Nass, C. and Kawaji, S. (2004), "The Role of Affect and Sociality in the
Agent-Based Collaborative Learning System", In Tutorial and Research
Workshop, New York, pp. 265-275.
[38] Ortony, A., Clore, G. L. and Collins, A .1988. “The Cognitive Structure
of Emotions”, Cambridge University Press, Cambridge, UK.
[39] Peslak, A.R. (2006). "The impact of personality on information
technology team projects", Proceedings of the 2006 ACM SIGMIS CPR
conference on computer personnel research: Forty four years of
computer personnel research: achievements, challenges & the future,
Claremont, California, USA.
[40] Rushton, S., Morgan, J. and Richard, M. (2007). "Teacher's Myers-
Briggspersonality profiles: Identifying effective teacher personality
traits", Journal of Teaching and Teacher Education, Vol. 23, pp. 432-
441.
[41] Sarmento, L.M. (2004). "An Emotion-Based Agent Architecture",
Master Thesis in Artificial Intelligence and Computing, Universidade do
Porto.
[42] Schultz, D. P., and Schultz, S.E., (2008) “Theories of Personality”,
edition 4.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
12 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

[43] Shermis, M.D. and Lombard, D. (1998). "Effects of computer-based test
administration on test anxiety and performance". Journal of Computers
in Human Behavior, Vol. 14, pp. 111-123.
[44] Vinayagamoorthy, V., Gillies , M., Steed, A., Tanguy, E., Pan, X.,
Loscos, C., and Slater,M. (2006). Building Expression into Virtual
Characters" , In Eurographics 2006. Vienna: Proceeding of
Eurographics.
[45] Vincent, A. and Ross, D. (2001). "Personalize training: determine
learning styles, personality types and multiple intelligences online", The
Learning Organization, Vol. 8, no. 1, pp. 36±43 ISSN 0969-6474.
[46] Xiangjie, Q., Zhiliang, W., Jun, Y. and Xiuyan, M. (2006). "An
Affective Intelligent Tutoring System Based on Artificial Psychology".
Beijing University of Science and Technology, China, pp. 402-405.
[47] Yeung A., Read J. and Schmid S. (2005). "Students’ learning styles and
academic performance in first year chemistry". Proceedings of the
Blended Learning in Science Teaching and Learning Symposium.
Sydney,NSW: UniServe Science, pp. 137–42.
Appendix A.
A few sample questions from the questionnaire for the user’s
satisfaction of the system.

(i) Which of the educational environments is more attractive?
(a) The educational environment 1(simple educational
environment)
(b) The educational environment 2(educational
environment with emotional virtual tutor)
(c) The educational environment 3(educational
environment with virtual tutor and classmate agent
who has emotions and personality)

(ii) Your satisfaction level of the educational environment
3(educational environment with a virtual tutor and a
classmate agent with emotions and personality)
a) Very Low b) Low c) Medium d) High
e) Very High

(iii) Your satisfaction level of the virtual tutor’s helps in the
educational environment 2:
a) Very Low b) Low c) Medium d) High
e) Very High

(iv) Your satisfaction level of the virtual classmate’s
encouragements in the educational environment 2:
a) Very Low b) Low c) Medium d) High
e) Very High

(v) Your satisfaction level of the virtual classmate’s
encouragements in the educational environment 3:
a) Very Low b) Low c) Medium d) High
e) Very High
(vi) How do you evaluate the presence of the virtual classmate
agent?
a) Poor b) Fair c) Acceptable d) Good
e) Excellent

(vii) Your evaluation of the effect of the cooperation with the
virtual classmate agent in learning progress:
a) Very Low b) Low c) Medium d) High
e) Very High

(viii) Your evaluation of the effect of the competition with the
virtual classmate agent in learning progress:
a) Very Low b) Low c) Medium d) High
e) Very High

Somayeh Fatahi received her B.Sc. and M.Sc. degrees in
Computer Engineering from Razi University, and Isfahan
University, Iran, in 2006 and 2008 respectively. She is
Lecturer in the Department of Computer Engineering at
Kermanshah University of Technology. She also teaches in
Razi University, University of Applied Science and
Technology, Payam Noor University of Kermanshah, Islamic
Azad University of Kermanshah, Institute of Higher Education
of Kermanshah Jahad-Daneshgahi.
Her research activities include (1) simulation of agents with
dynamic personality and emotions (2) Computational
cognitive modeling (3) Simulation and formalization of
cognitive processes (4) Multi Agent Systems (5) Modeling of
Human Behavior (6) Fuzzy Expert Systems.

Dr. Nasser Ghasem-Aghaee is a co-founder of Sheikhbahaee
University of Higher Education in Isfahan, Iran, as well as
Professor in the Department of Computer Engineering at both
the Isfahan University and Sheikhbahaee University. In 1993-
1994 and 2002- 2003, he has been visiting Professor at the
Ottawa Center of the McLeod Institute for Simulation
Sciences at the School of Information Technology and
Engineering at the University of Ottawa. He has been active in
simulation since 1984. His research interests are modeling and
simulation, cognitive simulation (including simulation of
human behaviour by fuzzy agents, agents with dynamic
personality and emotions, artificial intelligence, expert
systems, fuzzy logic, object-oriented analysis and design,
multi-agent systems and their applications. He published more
than 100 documents in Journals and Conferences.












(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
13 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010


Signature Recognition using Multi Scale
Fourier Descriptor And Wavelet
Transform
Ismail A. Ismail
1
, Mohammed A. Ramadan
2
, Talaat S. El danaf
3
and
Ahmed H. Samak
4


1
Professor, Dean, College of Computers and Informatics ,Misr International University, , Egypt
2
Professor, Department of Mathematics, Faculty of Science, Menofia University , Egypt
3
Ass. Professor , Department of Mathematics, Faculty of Science, Menofia University , Egypt
4
Ass. Lecturer , Department of Mathematics, Faculty of Science, Menofia University, Egypt
Email : eng_ahmed_Samak@yahoo.co.uk


Abstract This paper present a novel off-line
signature recognition method based on multi
scale Fourier Descriptor and wavelet transform .
The main steps of constructing a signature
recognition system are discussed and
experiments on real data sets show that the
average error rate can reach 1%. Finally we
compare 8 distance measures between feature
vectors with respect to the recognition
performance.

a) Key words signature recognition ,
Fourier Descriptor , Wavelet transform , personal
verification


1- INTRODUCTION

In the past decades, biometrics research has
always been the focus of interests for scientists
and engineers. It is an art of science to use
physical and behavioral characteristics to verify
or identify a person. Particularly, handwriting is
believed to be singular, exclusive, personal for
individuals. Handwriting signature is the most
popular identification method socially and
legally which has been used widely in the bank
check and credit card transactions, document
certification, etc.

The objective of signature recognition is to
recognize the signer for the purpose of
recognition or verification. Recognition is
finding the identification of the signature
owner. Verification is the decision about
whether the signature is genuine or forgery as
in figure 1 .



Figure 1: Verification task

Handwritten signature recognition can be
divided into on-line (or dynamic) and off-line
(or static) recognition. On-line recognition
refers to a process that the signer uses a special
pen called a stylus to create his or her signature,
producing the pen locations, speeds and
pressures, while off-line recognition just deals
with signature images acquired by a scanner or
a digital camera. In general, off-line signature
recognition is a challenging problem. Off- line
handwriting recognition systems are more
difficult than online systems as dynamic
information like duration, time ordering,
number of strokes, and direction of writing are
lost. But, offline systems have a significant
advantage in that they don‟t require access to
special processing devices when the signature
is produced. This chapter deals with an off-line
signature recognition and verification system.

In the last few decades, many approaches
have been developed in the pattern recognition
area, which approached the offline signature
verification problem. Justino, Bortolozzi and
Sabourin proposed an off-line signature
verification system using Hidden Markov
Model [1]. Zhang, Fu and Yan (1998) proposed
14 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010


handwritten signature verification system based
on Neural „Gas‟ based Vector Quantization [2].
Vélez, Sánchez and Moreno proposed robust
off-line signature verification system using
compression networks and positional cuttings
[3].
Arif and Vincent (2003) concerned data
fusion and its methods for an off-line signature
verification problem which are Dempster-
Shafer evidence theory, Possibility theory and
Borda count method [4]. Chalechale and
Mertins used line segment distribution of
sketches for Persian signature recognition [5].
Sansone and Vento (2000) increased
performance of signature verification system by
a serial three stage multi-expert system [6].

Inan Güler and Majid Meghdadi ( 2008)
proposed a method for the automatic
handwritten signature verification (AHSV)is
described. This method relies on global features
that summarize different aspects of signature
shape and dynamics of signature production.
For designing the algorithm, they have tried to
detect the signature without paying any
attention to the thickness and size of it [7].

Jing Wen,BinFang, Y.Y.Tang and TaiPing
Zhang (2009) presents two models utilizing
rotation invariant structure features to tackle the
problem. In principle, the elaborately extracted
ring-peripheral features are able to describe
internal and external structure changes of
signatures periodically. In order to evaluate
match score quantitatively, discrete fast Fourier
transform is employed to eliminate phase shift
and verification is conducted based on a
distance model. In addition, the ring-hidden
Markov model (HMM) is constructed to
directly evaluate similar between test signature
and training samples [8].

2- DATABASE
The signature database consists of 840
signature images, scanned at a resolution of
300 dpi,8-bit gray-scale. They are organized
into 18 sets, and each set corresponds to one
signature enrollment. There are 24 genuine and
24 forgery signatures in a set. Each volunteer
was asked to sign his or her own signatures on
a white paper 24 times. After this process had
been done, we invited some people who are
good at imitating other‟s handwritings. An
examples of the database image are shown in
figure 2.
3- PREPROCESSING
Any image-processing application suffers from
noise like touching line segments, isolated
pixels and smeared images. This noise may
cause severe distortions in the digital image
and hence ambiguous features and a
correspondingly poor recognition and
verification rate. Therefore, a preprocessor is
used to remove noise. Preprocessing
techniques eliminate much of the variability of
signature data. Preprocessor also achieve the
scaling and rotation invariant using slant
normalization.

3-1 Noise Reduction
Standard noise reduction and isolated peak
noise removal techniques, such as median-
filtering [1], are used to clean the initial
image. The median filter is a sliding-window
spatial filter, it replaces the center value in the
window with the median of all the pixel values
in the window. The kernel is usually square but
can be any shape. Figure 3 present example
of noise reduction

3-2 Slant Normalization

Normalization is necessary to achieve the
scaling and rotation invariant of the target
images before the recognition phase. The
scale normalization can be made by scaling the
image along the x coordinate and y coordinate
respectively to the prefixed size. For the slant
normalization a moment based algorithm is
described in [10]. The basic idea is to compute
the major orientation or slant angle of the
handwriting strokes according to second
moments of foreground pixels and rotate the
foreground pixels by the computed angle along
the opposite direction such that the major
orientation is horizontal. Figure 4 present
examples of slant normalization



15 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010




( a )

( b )
Figure 2 Database examples : ( a ) Genuine and ( b ) forgery signatures.


(a) (b)
Figure 3 : Noise reduction (a) noised image (b)filtered image



















Figure 4 Slant Normalization




4- FEATURES EXTRACTION
The choice of a powerful set of features is crucial in
signature identification systems. In our system, we use
implement a new Multi scale Fourier descriptor using
wavelet transform as discus in the next section


4-1 Multi scale Fourier descriptor using wavelet transform
The multi scale representation of the signature image can be
achieved using wavelet transform. In discrete wavelet
transform (DWT),the wavelet coefficient of the image f(x,
y) defined as
16 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
) , ( ) , (
1
) , , (
, ,
1
0
1
0
0
0
y x y x f
MN
n m j W
n m j
M
x
N
y
0
0 ¯ ¯
÷
=
÷
=
=
} , , { ) , ( ) , (
1
) , , (
, , ,
1
0
1
0
D V H h y x y x f
MN
n m j W
i
n m j
M
x
N
y
i
= =
¯ ¯
÷
=
÷
=
v
v
Where J
0
is arbitrary starting scale
The problem with the coefficients obtained from the wavelet
transform is the fact that they not rotation invariant. Also the
dimensionality of the feature vector depends on the
signature image size . Therefore, the coefficient vectors of
different signatures cannot be directly matched in the image
retrieval. The proposed solution for this problem is to apply
the Fourier transform to the coefficients obtained from the
wavelet transform. In this way, the multi scale signature
representation can be transformed to the frequency domain,
in which normalization and matching are straightforward
operations. Hence the benefits of multi scale representation
and Fourier representation can be combined. The Multi scale
Fourier descriptor is formed by applying the discrete Fourier
transform of Eq
w t u where N nt j t u
N
a
N
t
n
= H ÷ =
¯
÷
=
) ( ) / 2 exp( ) (
1
1
0

This results in a set of Fourier coefficients {
n
a
}, which is a
representation of the signature region . Since image
generated through rotation, translation and scaling (called
similarity transform of a image ) of a same image are
similar images , a image representation should be invariant
to these operations. The selection of different start point on
the image boundary to derive
) (t u
should not affect the
representation. From Fourier theory, the general form for the
Fourier coefficients of a contour generated by translation,
rotation, scaling and change of start point is given by :

) 0 (
) exp( ) exp(
n n
a c j jnt a × × × = o

0 = n


where
0
n
a
and
n
a
are the Fourier coefficients of the
original image and the similarity transformed image ,
respectively;
) exp( jnt
,
) exp( u j
and
s
are the terms
due to change of starting point, rotation and scaling. Except
the DC component (
0
a
), all the other coefficients are not
affected by translation. Now considering the following
expression
) 0 (
0
) 0 (
0
) exp( ) exp(
) exp( ) exp(
a c j jt
a c j jnt
a
a
b
n n
n
× × ×
× × ×
= =
o
o

] ) 1 ( exp[ ] ) 1 ( exp[
) 0 (
0
0
) 0 (
t n j b t n j
a
a
n
n
÷ = ÷ =

where
n
b
and
0
n
b
are normalized Fourier coefficients of the
derived image and the original image , respectively. The
normalized coefficient of the derived image
n
b
and that of
the original image
0
n
b
have only difference of
] ) 1 ( exp[ t n j ÷
. If we ignore the phase information and
only use magnitude of the coefficients, then
n
b
and
0
n
b
are the same. In other words,
n
b
is invariant to
translation, rotation, scaling and change of start point. The
set of magnitudes of the normalized Fourier coefficients of
the signature image {
n
b
,
N n s < 0
} can now be used
as signature image descriptors, denoted as
} 0 { N n FD
n
s <
. the next section discuses some
distance measured can be used .

5- DISTANCE MEASURES

Let X, Y be feature vectors of length n. Then we can
calculate the following distances between these feature
vectors
Minkowski distance ( L
P
matrices)
( )
P
n
i
i i p
y x y X L Y X d
1
1
) , ( ) , (
¯
=
÷ = =
;
Manhattan distance ( L
1
matrices , city block distance )

¯
=
=
÷ = =
n
i
i i p
y x y X L Y X d
1
1
) , ( ) , (
;
Euclidean distance (L
2
matrices)

¯
=
=
÷ = =
2
1
2
2
) ( ) , ( ) , (
i
i i p
y X y X L Y X d ;
Angle – based distance
) , cos( ) , ( Y X Y X d ÷ =

¯ ¯
¯
= =
=
=
n
i
i
n
i
i
n
i
i i
y x
y x
Y X
1
2
1
2
1
) , cos(
;
Correlation coefficient- based distance
) , ( ) , ( Y X r Y X d ÷ =

¯ ¯ ¯ ¯
¯ ¯ ¯
= = = =
= = =
÷ ÷
÷
=
n
i
n
i
i
n
i
i i
n
i
i
n
i
n
i
n
i
i i i i
y y n x x n
y x y x n
Y X r
1 1
2
1
2 2
1
2
1 1 1
) ) ( ( ) ) ( (
) , (
;
Modified Manhattan distance

¯ ¯
¯
= =
=
÷
=
n
i
i
n
i
i
n
i
i i
y x
y x
Y X d
1 1
) , (

Modified SSE-based distance

¯ ¯
¯
= =
=
÷
=
n
i
n
i
i i
n
i
i i
y x
y x
Y X d
1 1
2 2
1
2
) (
) , (

17 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
6- EXPERIMENTAL RESULTS

This section reports some experimental results obtained
using our method . In the following experiments, a total of
840 signature images. The experimental platform is the
Intel core 2 duo 1.83 GHZ processor, 1G RAM, Windows
vista , and the software is Matlab 7.0.0.1. The recognition
performance is evaluated using different distance measure
and different wavelet families as present in Table1,table 2
and table 3 . in the first table we use only FD as a features to
present signature images ,also Table 2 use only Wavelet
Transform finally Table 3 we use the new Multi scale
Fourier descriptor using wavelet transform.


















Table 1 : Recognition Performance using Fourier descriptor coefficients.



Wav family
haar DB2 DB8 DB15 Sym8
Distance measures

Minkowski distance 89.8% 91.4% 92.8% 93.6% 93%
Manhattan distance 93% 93.4% 94.4% 95.2% 94.6 %
Euclidean distance 92.6% 93.4% 94.8% 94.4% 94.2%
Angle – based distance 93.2% 94.2% 94.2% 94.8% 94.2%
Correlation coefficient- based distance 92.2% 92.8% 93.4% 94.2% 93.8%
Modified Manhattan distance 92% 93.8% 94.2% 94.6% 94%
Modified SSE-based distance

93.2% 94.2% 94,6% 95.6% 94.4 %

Table 2 : Recognition Performance Using wavelet transform .





Distance measures

Correct
recognition rate
Minkowski distance 92.6%
Manhattan distance 96.2%
Euclidean distance 95.4%
Angle – based distance 93.4%
Correlation coefficient-
based distance
92.2%
Modified Manhattan
distance
95.6%
Modified SSE-based
distance
88.8%
18 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Wav family
haar DB2 DB8 DB15 Sym8
Distance measures

Minkowski distance 97% 97.6% 97.2% 97% 96.6%
Manhattan distance 98.8% 98.4% 98% 98.6% 99%
Euclidean distance 98.2% 98.4% 98.2% 98.2% 98.2%
Angle – based distance 96.6% 97.8% 97% 97.6% 97.8%
Correlation coefficient- based
distance
95.8% 96.6% 96.6% 97.2% 97.2%
Modified Manhattan distance 96.2% 98% 97.4% 97.8% 97.6%
Modified SSE-based distance

92.8% 96.2% 96.8% 98% 95.8%
Table 3 : Recognition Performance Using Multi scale Fourier descriptor and wavelet transform


7- CONCLUSIONS
In this publication we devolve a method for signature
recognition based on multi scale Fourier Descriptor using
wavelet transform. Recognition experiments were
performed using the database containing 840 signature
image . Our method tested using different wavelet family
and various distance Measures. The best recognition results
were achieved using sym8 wavelet family and Manhattan
distance .

REFERENCES

[1] E. J. R. Justino, F. Bortolozzi and R. Sabourin, “Off-line
Signature Verification Using HMM for Random, Simple
and Skilled Forgeries”, ICDAR 2001, International
Conference on Document Analysis and Recognition, vol. 1,
pp. 105--110. 2001

[2] B. Zhang, M. Fu and H. Yan, “Handwritten Signature
Verification based on Neural „Gas‟ Based Vector
Quantization”, IEEE International Joint Conference on
Neural Net-works, pp. 1862-1864, May 1998

[3] J. F. Vélez, Á. Sánchez , and A. B. Moreno, “Robust
Off-Line Signature Verification Using Compression
Networks And Positional Cuttings”, Proc. 2003 IEEE
Workshop on Neural Networks for Signal Processing, vol. 1,
pp. 627-636, 2003.

[4] M. Arif and N. Vincent, “Comparison of Three Data
Fusion Methods For An Off-Line Signature Verification
Problem”, Laboratoire d‟Informatique, Université de
François Rabelais, 2003

[5] A. Chalechale and A. Mertins, “Line Segment
Distribution of Sketches for Persian Signature Recognition”,
IEEE Proc. TENCON, vol. 1, pp. 11–15, Oct. 2003
[6] Sansone and Vento, “Signature Verification: Increasing
Performance by a Multi-Stage System”, Pattern Analysis &
Applications, vol. 3, pp. 169–181, 2000.

[7] Inan Güler and Majid Meghdadi " A different approach
to off-line handwritten signature verification using the
optimal dynamic time warping algorithm", Digital Signal
Processing 18 (2008) 940–950

[8] Jing Wen, BinFang, Y.Y.Tang and TaiPing Zhang "
Model-based signature verificationwith rotation invariant
features", Pattern Recognition 42 (2009) 1458 – 1466

[9] Gonzalez, C., Wintz, P., 1987. Digital Image
Processing, second ed. Addison-Wesley, MA.

[10] B. Horn, Robot Vision, The MIT Press, 1986.



19 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol.7, No. 3, 2010
Feature-Based Adaptive Tolerance Tree (FATT): An
Efficient Indexing Technique for Content-Based
Image Retrieval Using Wavelet Transform

Dr.P.AnandhaKumar V.Balamurugan
Department of Information Technology Research Scholar, Department of Information Technology
Madras Institute of Technology Anna University Chennai, Madras Institute of Technology Anna University, Chennai
Chennai,India Chennai India
Email ID : annauniv@edu Email ID: vbalamurugan19@gmail.com

Abstract—This paper introduces a novel indexing and access
method, called Feature- Based Adaptive Tolerance Tree (FATT),
using wavelet transform is proposed to organize large image data
sets efficiently and to support popular image access mechanisms
like Content Based Image Retrieval (CBIR).Conventional
database systems are designed for managing textual and
numerical data and retrieving such data is often based on simple
comparisons of text or numerical values. However, this method is
no longer adequate for images, since the digital presentation of
images does not convey the reality of images. Retrieval of images
become difficult when the database is very large. This paper
addresses such problems and presents a novel indexing
technique, Feature Based Adaptive Tolerance Tree (FATT),
which is designed to bring an effective solution especially for
indexing large databases. The proposed indexing scheme is then
used along with a query by image content, in order to achieve the
ultimate goal from the user point of view that is retrieval of all
relevant images. FATT indexing technique, features of the image
is extracted using 2-dimensional discrete wavelet transform (2D-
DWT) and index code is generated from the determinant value of
the features. Multiresolution analysis technique using 2D-DWT
can decompose the image into components at different scales, so
that the coarest scale components carry the global approximation
information while the finer scale components contain the detailed
information. Experimental results show that the FATT
outperforms M-tree upto 200%, Slim-tree up to 120% and HCT
upto 89%. FATT indexing technique is adopted to increase the
efficiently of data storage and retrieval.
Index Terms— CBIR, FATT, indexing, wavelet transform.
INTRODUCTION
ne of the challenges in the development of a content
based indexing and retrieval application is to achieve an
efficient indexing scheme. Efficient image indexing and
accessing tools are of paramount importance in order to fully
utilize the increasing amount of digital data available on the
internet and digital libraries. Recent years have been a
growing interest in developing effective methods for indexing
large image databases. Image databases are utilized in diverse
areas such as advertising, medicine, entertainment, crime
detection, education, military and in the domain of museum
and gallery image collections etc. This motivates the
development of efficient image indexing and retrieval systems
and algorithms. However as the database grow larger, the
traditional keywords based method to retrieve a particular
image becomes inefficient[21],[26],[33],[35].

Content- based image retrieval (CBIR) approach has
emerged as a promising alternative. CBIR has been a
particular challenge as the image content covers a vast range
of subjects and requirements from end users are often very
loosely defined. In CBIR, images are indexed by its own
visual contents, such as color, texture and shape. The
challenge in CBIR is to develop the methods that will increase
the retrieval accuracy and reduce the retrieval time. Hence, the
need of an efficient indexing structure for images supporting
popular access mechanisms like CBIR arises.[26], [33], [35].
In order to overcome such problems several content based
indexing and retrieval applications have been developed such
as the MUVIS system [22],[23],[29], photobook
[31],VisualSEEK[37], Virage[40], and VideoQ[9] all of which
are designed to bring a framework structure for handling and
especially retrieval of the digital multimedia items, such as
images, audio, and/or video clips. In this way similarity
between two database images can be retrieved by calculating
the similarity distance between their feature vectors. This is
the general query by example (QBE) scenario, which on the
other hand is expensive and CPU intensive especially for large
databases. The main challenge of implementing such an index
structure is to make it capable of handling high level image
relationships easily and efficiently during access[7], [14],[21]
The indexing techniques can be mainly grouped in two
types (1) Spatial Access Methods (SAMs) and (2) Metric
Access Methods (MAMs) are proposed[21] .Initial attempts of
SAMs are such as KD-trees[1],R-trees[16],SS-tree[41],Hybrid
tree[8]etc. Especially for content-based indexing and retrieval
in large scale databases. SAMs have several drawbacks and
limitations. SAM-based indexing technique partitions and
works over a single feature space.SAMs while providing good
results on low dimensional feature space and do not scale up
well to high dimensional spaces. SAM-based indexing
schemes even becomes less efficient than sequential indexing
for high dimensions.(2)Static and Dynamic Access
Methods(MAMs)[17] are proposed such as VP-tree[43],MVP-
tree[46],GNAT[6] whereas the dynamic ones, M-tree[7] and
O
20 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

other M-tree variants such as M+-tree. The existing
multidimensional index structures support CBIR by translating
the content-similarity measurement into features level
equivalence, which is a very difficult job and can result in
erroneous interpretation of user’s perception of similarity.
The indexing structures so far addressed are all designed to
speed up any Query By Example(QBE)process by some
multidimensional index structure.However all of them have
significant drawbacks and shortcomings for indexing of large
scale databases[1],[6],[7] ,[21], [41].In order to overcome such
problems and provide efficient solutions to the aforementioned
shortcomings of the indexing algorithm especially for image
databases,we develop a MAM-based balanced and dynamic
indexing technique called Feature-Based Adaptive tolerance
Tree(FATT).
In this paper, we present FATT consists of root
node(grandparent) is having the maximum equal parent nodes
of 256 and depth of the tree depends upon the number of
features considered and width of the tree depends upon the
individual index value.
The rest of the paper is organized as follows: Section II
presents the related work in the area of the indexing and
retrieval. In Section III we introduce the general structure of
FATT and algorithms. Section IV for wavelet transform and
image coding. Section V presents the experimental results.
Finally, Section VI concludes this paper.


RELATED WORK
There are several multidimensional indexing techniques for
capturing the low-level features like feature based or distance
based techniques, each of which can be further classified as
data-partitioned[3],[7],[16],[44]or space partitioned based
algorithm [27],[34].Feature based indexing techniques project
an image as a feature vector in a feature space and index the
space. The basic feature based index structures are KD-tree
[1], R-tree [16] etc.Researchers proposed several indexing
techniques that are formed mostly in a hierarchical tree
structure that is used to cluster the feature space. Initial
attempts of such as KD-trees [1] used space –partitioning
methods that divide the feature space into predefined hyper-
planes regardless of the distribution of the feature vectors.
Such regions are mutually disjoint and their union covers
entire space. In R-tree [16] the feature space is divided
according to the distribution of the database items and region
overlapping may occur as a result. Both KD-tree and R-tree
are the first examples of SAMs. Afterwards several enhanced
SAMs have been proposed .R*-tree [2] provides consistently
better performance by introducing a policy called “forced
reinsert” than the R-tree and R+-tree[36].R*-tree also
improves the node splitting policy of the R-tree by taking
overlapping area and region parameters into consideration.Lin
et al proposed TV-tree[19],which called as telescope vectors.
These vectors can be dynamically shortened assuming that
only dimensions with high variance dimensions can be
neglected. Berchtold et al [3] introduced X-tree, which is
particularly designed for indexing high dimensional data. X-
tree avoids overlapping of region bounding boxes in the
directory structure by using a new organization of the
directory as a result, X-tree outperforms both TV-tree and R*-
tree significantly. It is 450 times faster than R-tree and
between 12 times faster than the TV-tree when the dimension
is higher than two and it also provides faster insertion
times.Still, bounding rectangles can overlap in higher
dimensions. In order to prevent this, White and Jain proposed
the SS-tree [41], an alternative to the R-tree structure, which
uses minimum bounding spheres instead of rectangles. Even
though SS-tree outperforms R*-tree, the overlapping in the
high dimensions still occur. Thereafter, several other SAM
variants are proposed such as SR-tree[20],S
2
-tree[42],Hybrid-
tree[8],A-tree[38],IQ-tree[5],Pyramid –tree[4],NB-tree[13]
etc.The aforementioned degradations and shortcomings
prevent a wide usage of SAM based indexing structures
especially for large scale image collections. In order to
provide a more general approach to similarity indexing for
several MAM- based indexing techniques have been
proposed.Yianilos[43] presented VP-tree that is based on
partitioning the feature vectors into two groups according to
their similarity distances with respect to a reference point, a
so-called vantage point.Bozkaya and Ozsoyoglu[47] proposed
extension of the VP-tree, a so-called MVP-tree(multiple
vantage point),which basically assigns m vantage points to a
node with a fan out of m
2
.They reported 20% -80% reduction
of similarity distance computation compared to VP-trees. Brin
[6]introduced the geometric near-neighbor access tree(GNAT)
indexing structure,which chooses k split points at the top level
and each of the remaining feature vectors are associated with
the closest split points. GNAT is then built recursively and the
parameter k is chosen to be a different value for each feature
set depending on its cardinality.Koikkalainen and Oja
introduced TS-SOM [25] that is used in PicSOM [28] as a
CBIR indexing structure.TS-SOM provides a tree –structure
vector quantatization algorithm. Other SOM-based approaches
are introduced by Zhang and Zhong [45],and Sethi and
Coman[39].All SOM-based indexing method rely on training
of the levels has a pre-fixed node size that has to arranged
according to the size of the database. This brings a significant
limitation ,that is they are all static indexing structures,which
do not allow dynamic construction or updates for particular
database. Retraining and costly reorganizations are required
each time the content of the database changes (i.e., new
insertions and deletions),that is indeed nothing but rebuilding
the whole indexing structure from the scratch. Similarly, the
rest of the MAMs, so far addressed present several
shortcomings. Contrary to SAMs, these metric trees are
designed only to reduce the number of similarity distance
computations, paying no attention to I/O costs (disk page
accesses).They are also intrinsically static methods in the
sense that the tree structure is built once and new insertions
are not supported.Furthermore, all of them build the indexing
structure from top to bottom and hence the resulting tree is not
guaranteed to be balanced. Ciaccia et al [7] proposed the M-
tree to overcome such problems. The M-tree is a balanced and
dynamic tree, which is built from bottom to top, creating a
new level only when necessary. The node size is a fixed
number M, and therefore the tree height depends on M and the
21 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

database size. Its performance optimization concerns both
CPU computational time for similarity distances and I/O costs
for disk accesses for feature vectors of the database items.
Traina et al [15] proposed Slim- tree, an enhanced variant of
M-trees, which is designed for improving the performance by
minimizing the overlaps between nodes. They introduced two
parameters, “fat-factor” and “blot factor”, to measure the
degree of overlap and proposed the usage of minimum
spanning tree (MST)[24],[32],for splitting the node. Another
slightly enhanced M-tree structure, a so-called M+-tree, can be
found.[46].Serkan kiranyaz and Moncef Gabbouj [21]
proposed Hierarchical cellular tree(HCT) has no limit for cell
size as long as cell keeps a definite compactness.Any action
(i.e,an item insertion)it consequent reactions cannot last
indefinitely due to the fact that each of them can occur only in
a higher level and any HCT body has naturally limited number
of levels. Ming Zhang and John Fulcher[48] proposed GAT-
trees which is neural network based adaptive tree but it takes
longer time to train the network and it gives accuracy 5%
higher than general tree random noise is added, 7% accuracy
when gamma value of Gaussian noise exceeds 0.3.
1. FATT indexing is MAM-based and have a hierarchical
structure, i.e., levels (m).
2. FATT designed, dynamically and balanced in a top-to-
bottom fashion to overcome the problem of overlap between
nodes in metric spaces.
3. Root node (grant parent(A)) grows from the root node to
leaves, each parent node is represented with several left
child(lchild) and rightchild(rchild) nodes and maximum of
256(N) nodes.
4. Each child node immediately proceeding with equal left
child(lchild) and rightchild(rchild).For both lchild and rchild
of A+1 is at NA+N=N(N+A).Unless N(A+1)>m in which case
(A+1) has no lchild.Hence this representation can clearly be
used for all image indexing and fast searching process.
FATT STRUCTURE AND ALGORITHMS
FATT Structure
FATT is balanced, adaptive and an indexing tree .It is
designed in a complete N-ary, where N is the number of nodes.
The FATT is constructed based on the index code developed.
The height of the tree depends upon the number of features
considered and width of the tree depends upon the number
individual index codes that are used in code generation. The
leaf node contains the index value. The retrieval performance
depends upon the tree construction. The size of the tree can be
changed depending upon the number of images that has to be
stored. The structure of the tree can be changed depending
upon images found. The general structure (4 levels, m =4, N=
256)of the FATT is shown in Fig.1.The maximum number
unique index value for a m-levels, N-nodes tree is given as
=N
m


No. of nodes at top level (m)=1
No. of nodes for each node at first level (m
1
) =256
No. of nodes for each node at second level (m
2
) =256
No. of nodes for each node at third level (m
3
) =256
No. of nodes for each node at fourth level (m
4
) =256
No. of individual index value =(1×256×256×256×256)
4
=4
10

Where N=256, m=4


... ... 01 00 1A 1B DF EF FF
... ... 01 00 3E
3F DF EF FF
... ... 01 00 2A 2B DF EF FF
... ... 01 00 3E 3F DF EF FF
Root node
(A)
Top level
Level 1
(m=1)
Level 2
(m=2)
Level 3
(m=3)
Level 4
(m=4)
Index value
Index value

of
Fig.1.General structure of the FATT(N=256, m=4)


FATT Algorithms and Operations
There are 3 FATT algorithms and operations (i.e) image
insertion, searching and retrieval (indexing).

The insertion algorithm Insert (nextImage,levelNo) first
performs the searching algorithm which hierarchically FATT
from root node(grant parent) to the least child node .In order
to locate most suitable image for nextImage.Once the least
node is located,the image is inserted into the immediate parent
node. Let the nextImage be the image to be inserted into a
target level indicated by levelNo. Accordingly the insertion
algorithm as follows and the sample insertion of 2 nodes ,4
levels,( N=2, m=4) 3 nodes 4 levels(N=3, m=4) is shown in
Fig.2. and Fig.3

1.Insertion Algorithm

Insert(nextImage,levelNo)
Let the root level number; root LevelNo and the single image
in the top level:
¾ If(levelNo>rootlevelNo) then do;
Append nextImage into least lchild node
¾ If(levelNo=rootlevelNo) then do;
Assign rootlevelNo=LevelNo
¾ If(levelNo<root levelNo) then do;
Append nextImage into least rchild node.
22 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

Check least child node for post- processing
¾ If leastchild node is split then do;
Create the least lchild node equal to immediate parent node
¾ Insert(nextImage,immediate root levelNo)
Else if insertion of least child node then do;
Let least lchild and nextImage be parent and new child node
Else if unchange the immediate parent node
Return.
A.Insertion of 4-levels and 2-nodes (m=4,N=2)
Number of levels, m =4
Number of nodes, N =2
Then the total number of index values (N
m
) is16

G
A
A B
A
A
B
B
C
C D E
F
1
1
1
1
2 2
2
Level 1
(m=1)
22 2
N L I K
H
J
F
H
Index
value
Root
node
A
B
C
D E
D
G
M O P
1
1
1 2
2 2 2 2
2
2 2
2
2 2 1 1 1 1 1 1 1 1
Level 3
(m=3)
Level 2
(m=2)
Level 4
(m=4)
2
Top level

Fig.2.A sample FATT (m=4,N=2)



If a complete FATT with N =2, m =4 depth first search is
represented sequentially as above then for then for grand
parent node with index A, 1≤A≤m we have,
Case (1) grandparent (A) is at (A/2) if A =1 when A=1, A is
the root and has no parents.
Case (2) leftchild (A) is at 2A if 2A≤m.If 2A>m, then
grand parent A has no left child(lchild)
Case (3) rightchild (A) is at 2A+1 if 2A+1≤m,If 2A+1>m,
then A has no rightchild(rchild)
Proof:
We prove case(2) and case(3) is immediate consequence of
case(2) and the numbering nodes on the same level from left
to right case (1) follows from case (2) and case (3).We prove
case (2) by induction on A..For A =1,clearly the lchild is at 2
unless 2>m in which case (1) has no lchild.Then two nodes
immediately proceeding lchild(A+1).In representations are the
rchild of A and lchild of A.The lchild of A is at 2A.Hence
the lchild of A+1 is at 2A+2=2(A+1).Unless 2A+1>m, in
which case A+1,has no lchild.

B.Insertion of 4-levels and 3-nodes(m=4,N=3)

Number of levels, m ==4
Number of node, N =3
Then the total number of index values (N
m
) is 81

If a complete FATT with N=3,m=4 the depth first search
(i.e.,DFS) is represented sequentially as above then for
grand parent node with index A , 1≤A≤m we have,

Top level
I H
A
G
1
1
2
1 1
3
1
1
1
1
1
1
1
2
2
2 2 2
2
2 2
2
2
3 3
3 3
3
3
3
A
A
C
3 3
A
A
B
D
B
B
E B C
C
C
K
F
I
Index value
I
U T S J R L
J K
L R S T U AAAB Z Y AZ
3
.
..
Level 1
(m=1)
Level 4
(m=4)
.
..
.
..
.
..
.
..
.
..
Level 3
(m=3)
Root
node
Level 2
(m=2)

Fig.2 Fig.3..A sample FATT (m=4,N=3)


Case (1) grand parent (A) is at (A/3)if A≠1.When A=1, A is
the root and has no parent
Case (2) leftchild (A) is at 3A if 3A≤m.If 3A>m,the A has
no left child(lchild)
Case (3) middlechild(A) is at 3A+1 if 3A+1≤m.If
3A+1>m, then A has no middle child(mchild)
Case (4) rightchild (A) is at 3A+2 if 3A+2≤m.If 3A+2>m,
then then A has no right child(rchild)
Proof:
We prove case(1),(3) and (4) is an immediate
consequence of case (2) and numbering of nodes on the same
level left to middle and right.Case(1)follows (2),(3) and
(4).We prove case (2) by induction on A.For A=1,Clearly
lchild is at 3 unless 3>m,then nodes immediately proceeding
lchild(A+1), in the representations are the middle child of A
and the lchild(A). The lchild(A) is at 3(A), hence the lchild of
3A+2 unless 3(A+1)>m..
In general if a complete FATT with number of maximum
nodes is 256(N=256) (ie,depth =N
m
is represented sequentially
as above then for grandparent node with index A,1≤A≤N.we
have,
Case (1) grandparent (A) is at (A/N) if A≠1 when A=1,A is
the root and no parent.
Case (2) leftchild (A) is at 2A if 2A ≤256.If 2A>256 then A
has no lchild.

mchild(A) at 2A+1 if 2A+1≤256.If
2A+ 2A+1≤256.If 2A+1>256 then A has no mchild.
Case Case (3) rightchild (A ) is at 2A+2 if 2A+2≤256.
If 2A+2>256 then A has no rchild .we prove that
case(2),(3)and (4) is an immediate consequence of
case (2) and the numbering of nodes on the same
level from left to right case(1) follows from case
(2),(3) and (4).we prove case (2) by induction on A
at 2. Unless 2>256 in which case (1) has no lchild
.Then,the two nodes immediately proceeding lchild
(A+1) in the representations are the mchild A and
the lchild of A.The lchild of A is at 2A .Hence the
23 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

lchild of A+1 is at 2A+2=2(A+1) unless
2(A+1)>256 in which case A+1 has no lchild.

2. Searching Algorithm
Depth first search algorithm is used for traversing the tree.
In this algorithm search as deeply as possible by visiting a
node, and then recursively performing depth –first search on
each adjacent node.
Search(nextImage,levelNo)
¾ If the parentnode >root node then do;
Go to the lchild of the root node
Until no lchild is avilable
Check whether the indexing value is obtained
¾ Elseif parentnode< root node
Return the index value
¾ Else not found traverse step 1 and 2
Repeat the steps 1,2 and 3 until index value is found.

The searching algorithm search(nextImage,levelNo) first
perform the searching with root node.
Case (1) If parentnode >root node searching beginning with
lchild node until no leftmost child is available.
Case (2) If parentnode< root node then return the index value
otherwise search for leftmost child node is available

3. Retrieval Algorithm

FATT can index large image-scale database using index code
generated and euclidean similarity measure used as distance
metric

Index(nextImage,levelNo)
¾ If the parentnode >root node then do;
Go to the lchild of the root node
Until no lchild is avilable
Check whether the indexing value is obtained
¾ Elseif parentnode< root node
Return the index value
¾ Else not found traverse step 1 and 2
¾ Repeat the steps 1,2 and 3 until index value is found.

The indexing algorithm index(nextImage,levelNo) first
perform the indexing with root node

Case (1) If parentnode >root node indexing beginning with
lchild node until no leftmost child is available.Check
whether index value is available.
Case (2)If parentnode< root node then return the index value
otherwise index for leftmost child node is available
WAVELET TRANSFORM AND IMAGE CODING
Wavelet Transform
A 2 dimensional-discrete wavelet transform(2D-DWT) is a
process which decomposes a signal, that is a series of digital
samples, by passing it through two filters, a low pass filter L
and high pass filter H. The low pass sub band represents a
down sampled version of the original signal. The high pass
sub band represents residual information of the original signal,
needed for the perfect reconstruction of the original set from
the low resolution version.
Since image is typically a two dimensional signal, a 2D
equivalent of the DWT is performed. This is achieved by first
applying the L and H filters to the lines of samples, row by
row, then refiltering the output to the columns by the same
filters. As the result, the image shown in Fig.4 is divided into
4 subbands, LL, LH, HL and HH as depicted in Fig.5. The LL
sub band contains the low pass information of horizontal,
vertical and diagonal orientation. The LL sub band provides a
half sized version of input image which can be transformed
again to have more levels of resolution..Generally, an image is
partitioned into L resolution levels by applying the 2D DWT
(L-1) times.[11].


Fig.4.Orginal image Fig.5.One level decomposition


By wavelet transform, we mean the decomposition of an
image with family of real orthogonal bases
obtained through translation and dilation of a kernel
function known as mother wavelet.[11].


(1)

Where and are integers. Due to the orthonormal
property,the wavelet coefficients of a signal can be easily
computed via

(2)

and the synthesis formula

.
(3)

can be used to recover
from its wavelet coefficients

To construct the mother wavelet

we may first

determine a scaling function
which satisfies the

two-scale
difference equation



(4)

Then the wavelet kernel is related to the scaling
function via,

24 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

(5)

where

(6)
The coefficients in (4) have to several conditions for the
set of basis wavelet functions in (1) to be unique, orthonormal,
and have a certain degree of regularity [11], [18].
The coefficients and play a very crucial role in a
given discrete wavelet transform. To perform the wavelet
transform does not require the explicit forms of and
 but only depends on and  .Consider a J-level
wavelet decomposition which can be written as



(7)

Where coefficients are given and coefficients and
at scale are related to the coefficients at scale
via

(8)

(9)

Where .Thus,(8) and (9) provides a recursive
algorithm for wavelet decomposition through and
,and the coefficients for a low resolution component
.By using a similar approach,we can derive a recursive
algorithm for function synthesis based on its wavelet
coefficients and

(10)

It is convenient to view the decomposition (8) as passing a
signal through a pair of filters and with impulse
responses and and down sampling the filtered
signals by two (dropping every other sample), where and
are defined as



The pair of filters H and G. correspond to the halfband
lowpass and highpass filters,respectively,and are called the
quadrature mirror filters in the signal processing literature[11]
The reconstruction procedure is implemented by upsampling
the subsignals and and filtering with and
,respectively, and adding these two filtered signals
together.Usually the signal decomposition scheme is
performed recursively to the output of lowpass filter .

The wavelet packet basis functions can be
generated from a given function as follows

(11)

(12)

Where the function can be identified with the scaling
function and with the mother wavelet .Then,the
wavelet packet bases can be defined to be the collection of
orthonormal bases composed of functions of the
form ,where l, k ,n Each element is
determined by a subset of the indices: a scaling parameter l, a
localization parameter k, and an oscillation parameter n.
The 2D wavelet (or wavelet packet) basis functions can be
expressed by tensor product of two 1-D wavelet (or wavelet
packet) basis functions along the horizontal and vertical
directions. The corresponding 2-D filter coefficients can be
expressed as

(13)

(14)

Where the first and second subscripts in (13) and (14)
denotes the low pass and highpass filtering characteristics in
the -and -directions respectively.[11]We have applied orth-
ogonal wavelet transformation with dyadic subsampling.Wav-
elet decomposition of images is performed using db4 wavelet
basis function. On application of the the above procedure,for
an image of size 256 × 256, db4 wavelet yields suband
matrices of 128×128 at the first level,64×64 at the second
level, 32×32 at the third level, 16×16 at the fourth level of
wavelet decomposition.


Image Coding
In image coding, a six digit code is generated for each image
feature which is to be stored and retrieved .The code generated
depends upon the value of the determinant generated. The
number of different codes that can be generated depends upon
the value of the determinant .The algorithm for finding the
code is given below

Code=function (determinant value)
The code is generated depends upon the determinant value
of the matrix. The function generates the code between 0 to F
based upon the value of the determinant. It is a function in
which the input to the function is the determinant value
obtained. Based upon the range of the determinant obtained
the function returns value which is the code for the image.The
database to store the images is a single table with three
fields.The three fields are serial number, image and index
value.
Image Coding Algorithm

25 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

Step1: Get the matrix of the individual feature (m×m)
Step2: Find the transpose of the matrix obtained
¾ Read the m×m matrix
¾ Give the input of the m×m matrix elements
¾ Transpose the m×m of the input matrix elements
Step 3: Multiply the two matrices to get a square matrix.
¾ Read the order of m×m for the first matrix
¾ Read the order of p×q for the second matrix
¾ Give the input of the m×m of the first matrix
elements
¾ Give the input of the p×q of the second matrix
elements
¾ For i=0;i<m;i++,For j=0;j<q;j++,For
k=0;k<p;k++
¾ C[i,j]=C[i,j]+(A[i,k] × B[k,j])
Step4: Get the determinant value of the matrix (m×m)
¾ Read the m×m matrix
¾ Give the input m×m matrix elements
¾ The determinant value of the m×m matrix
¾ Determinant value given by A[i,j] ×(A[i+1,j+1]
×A[i+2, j+2]-A[i+2, j+1] ×A[i+1,j+2]) A[i+1,j+1]
×(A[i+1,j] ×A[i+2, j+2]- A[i+2, j] × A[i+1,j+2]) +
A[i+1,j+2] × (A[i+1,j] × A[i+2, j+1]- A[i+1,j+1] ×
A[i+2, j])
Step5: Based on the range of the determinant value the code
generated.
If x 0 and x≤10 then y=00
Else if x>10 and x≤20 then y=01
Else if x>20 and x≤30 then y=02
Else if x>30and x≤40 then y=03
Else if x>40 and x≤50 then y=04
Else if x>50 and x≤60 then y=05
Else if x>60and x≤70 then y=06
Else if x>70and x≤80 then y=07
Else if x>80 and x≤90 then y=08
Else if x>90 and x≤100 then y=09
Else if x>100 and x≤110 then y=10
Else if x>110 and x≤120 then y=11
Else if x>120 and x≤130 then y=12
Else if x>130 and x≤140 then y=13
Else if x>140 and x≤150 then y=14
Else if x>150 then y=15
Endif
.
.
Endif

D. Error Handling Phase

Errors may occur during retrieval of images from the
database. The error is caused by the code change during the
generation purpose. The code generated is made up of six
parts each obtained from each individual feature. The error
occurs when determinant value obtained returns a code that
differs from the code of the image stored in the database. This
changes the code entirely. The severity of the error lies in the
level it occurs. When the error occurs at the bottom most level
the severity is minimum. Whenever such error occurs
searching the neighboring nodes can rectify it. This only
possible only if the error occurs at the last level. If the error
occurs at higher level tracing the tree becomes difficult.
Example
Let the image in the database have the node, 122300
Let the code generated for the image which is being given as
the input be, 122301
Searching the adjacent nodes, which would return the image
required, could rectify this error.
EXPERIMENTAL RESULTS

We have tested the FATT to index and retrieve the images
with three different databases through a query process such as
query by example (QBE). Database 1-D1 consists of 1000
natural scene images of size 256×256 of 60 selected categories
are from D1:various beach images, sunsets, waterfalls, clouds,
mountains and glaciers etc from COREL. Database 2-
D2consists of 10000 natural scene images of 100 categories
similar contents with D1 from COREL. Database.Selected
categories are rose,sunflower,dinosaur,,bus,lion,elephant
etc.We implemented in MATLAB 7.4 under Windows vista.
The experiments were performed on a Pentium Core 2
Duo,1.66GHz PC with 1GB RAM.Our implementations for
node access ,distance computations and retrieval process.

One indexing and retrieval results from D1 shown in Fig.6 ,
D2 is shown in Fig.7 and for D3 shown in Fig.8.The
effectiveness of the proposed tree have been validated by a
large number of experiments.


,
Fig.6.Retrieval of images from D1


26 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010


Fig.7.Retrieval of images from D2




Fig.8.Retrieval of images from D3



Fig.9.I/Os versus number of objects in D1



Fig.10.Computation costs versus no. of objects in D1




Fig.11.I/Os versus number of objects in D2


Fig.12.Computation costs versus no. of objects in D2



Since FATT is balanced and dynamic tree the performances
like I/Os and computation costs is compared with existing
balanced and dynamic tress such as M-tree, Slim-tree, HCT.
The FATT consistently outperforms irrespective of the
database size .Fig.9,Fig.11.,Fig.13 shows the I/Os versus
number of objects in D1,D2 and D3.From the experimental
though database size increased but the I/O cost maintains less
and uniformly.upto 83% for the D1,upto81% for D2 and upto
82% for D3 the performance is achieved.
Fig.10. Fig.12, Fig.14.Shows the computation costs versus
no.of objects for D1and D2.The computation cost the for
D1decreased up to 82% up to 81% for D2 and upto83% for
D3. Average distance computations performance also
outperforms for D1 and D2.Experimental results show that
the performance is no degradation irrespective of the database
size is increased.FATT indexing technique can be
conveniently used for retrieval and to achive the users goal to
retrieve the most relevant images.


Complexity of the algorithm
Suppose we are given n images A, B, C…Z and suppose the
images are inserted in order into a FATT node. There are n
permutations are required for n images. Each such
permutations will give rise to a corresponding tree. It can be
shown that the average depth of the n tree is approximately
log
2
n+1,Accordingly ,the average running time f(n) to search
27 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

for image in FATT with n images is proportional to
log
2
n,(i.e,)f(n) =O(log
2
n+1).

TABLE III
COMPLEXITY ANALYSIS
log
2
n n nlog
2
n n
2
n
3

1 2 2 4 8
1.584 3 4.754 9 27
2 4 8 16 64
2.321 5 11.609 25 125
2.584 6 15.509 36 216
7.807 7 19.651 49 343
3 8 24 64 512
3.169 9 28.529 81 729
3.321 10 33.329 100 1000000
8 256 20.48 65536 16777216

FATT nodes represent the database images, this requires
prior calculation of the relative similarity distances and hence
yields aO(n
2
)computational cost. The nodes are constructed
dynamically since images can be any time inserted since such
operation requires O(n
3
).Therefore, an incremental FATT
algorithm is adaptive based on leaf nodes. This is a sequential
algorithm and O(n ) computational complexity per image and
hence O(n
2
) overall cost as desired.

CONCLUSION AND FUTURE WORK
In this paper, a novel indexing technique for content based
image retrieval is designed particularly for fast insertion,
searching and indexing, moreover to tackle the problem of
overlap between the nodes. The M-tree has fixed cell policy
due to its natural deficiency not suitable in dynamic
environments and data are subject to permanent changes.
Slim-tree is the extension of M-tree that speed up insertion
using node splitting algorithm while also improving the
storage utilization, unfortunately this algorithm does not
guarantee the minimal occupation of each node. Whereas HCT
has flexible cell policy but the levels are limited. Our proposed
FATT greatly improves the performance comparing with M-
tree, Slim-tree and HCT indexing schemes in I/Os costs,
computation costs and average distance computations. The
insertion speed of our FATT improves up to 84% compared
with M-tree, up to 75% compared with Slim-tree, up to 70%
compared with HCT. The searching speed of improves up to
146% compared with M-tree, up to 105% compared with
Slim-tree, up to 89% compared with HCT. The possibility of
using clustering, neural networks and other multimedia
databases such as audio, video will also give attractive
performances could be explored in future


REFERENCES
[1] J.L.Bentley, “Multidimensional binary search trees used for associative
searching,” In Proc.of communications of the ACM,vol.18,no.9,pp.509-
517,Sept.1975.
[2] N.Beckmann,H-P.Kriegel,R.Schneider and B.Seeger, “The R*-tree:An
efficient and robust access method for points and rectangles,”In Proc.of
ACM SIGMOID Int.conf.on management of data.,US,pp.322-331.1990.
[3] S.Berchtold,D.A.Keim,and H.Kriegel,“The x-tree:an index structure for
high dimensional data,”In Proceedings of the 22
nd
International
Conference on Very Large Databases,pp.28-39, India,Sept. 1996.
[4] S.Berchtold,D.A.Keim and H.Kriegel, “The pyramid-technique:Towards
breaking the curse of dimensionality,”In Proc.of 1998.ACM
SIGMMOD.International Conference on Management of Data,pp.142-
153,Seattle,Washinton,US Jun. 01-04,1998.
[5] S.Berchtold,C.Bohm,H.V.Jagadish,H.P.Kriegel and Sander,
“Independent Quantization:An index compression technique for high
dimensional data spaces,”In Proc.of of the 16
th
Int.Conf.on Data
Engineering.US.pp.557-588,Feb.2000.
[6] S.Brin, “Near neighbor search in metric spaces,”In Proc.Int.Conf.on
Very Large Databases(VLDB),.pp.574-584. 1995
[7] P.Ciacca,M.Patella,and P.Zezula, “M-tree:An efficient access method
for similarity search in metric spaces,”In Proceedings of the 23th VLDB
International Conference. Athens,Greece, pp.426-435,August 1997.
[8] K.Chakabarti and S.Mehrotra, “The hybrid tree:An index for high
dimensional data spaces,”In Proceedings of the IEEE International
Conference on Data Engineering , Australia pp.440-447,Mar. 1999.
[9] S.F.Chang,W.Chen,J.Meng,H.Sundaram and D.Zhong, “VideoQ::An
automated content-based search system using cues,”In Proc.ACM
Multimedia,Seattle,WA,1997.
[10] K.Chatterjee and S-C Chen, “Affinity hybrid tree:An indexing
technique for content-based image retrieval in multimedia databases,”in
Procceedings of the Eighth IEEE International Symposium on
Multimedia(ISM’06).pp.2746-2755.2006.
[11] T.Chang and C-C Jay Kuo, “Texture analysis and classification with
tree-structured wavelet transform, “IEEE Trans.on Image
Processing.vol.2.no.4.Oct. 1993.
[12] R.Fagin “Fuzzy queries in multimedia database systems.In Proceedings
of Sventeenth ACM SIGACT SIGMOD-SIGART symbosium on
principles of database systems,US. pp. 1-10, 1998:
[13] M.J.Fonseca,J.A.Jorge, “Indexing High –Dimensional Data for Content
–Based Retrieval in Large Databases’,In Proc.of Eighth International
Conference on Database Systems for Advanced Applications(DASFAA
03).Kyoto-Japan,Mar.26-28, pp.267-274,2003.
[14] C.Traina,A.J.M.Traina, B.Seeger,and C.Faloutsos, “Slim-trees :High
performance metric trees minimizing overlap between nodes,”in
Proc.Oedbt 2000,Konstanz,Germany, pp.51-65. Mar. 2000
[15] C.Traina,A.J.M.Traina,C.Faloutsos, and B.Seeger, “Fast indexing and
visualization of metric data sets using slim-trees,” IEEE Transactions on
Knowledge and Data Engineering,vol.14,.no2. pp. 244-
260.Mar/Apr.2002.
[16] A.Guttman. “R-trees:A dynamic index structure for spatial searching”.In
Proceedings of the 1984 ACM SIGMOID International Conference on
Management of Data,Pages 47-57, U S,Jun. 1984.
[17] V.Gaede and O.Gunther, “Multidimensional Access Methods,”ACM
Comptuing Surveys,vol.30,no.2.pp.170-231,1998.
[18] W.Y.Ma and B.S.Manjunath,“A comparison of wavelet transform
features for texture image annotation,”in Proc.IEEE International
Conf.On Image Processing,1985.
[19] K.Lin,H.V.Jagadish,and C.Faloutsos. “The TV-tree:an index for high
dimensional data,”Very Large Databases (VLDB)Journal,3(4),pp.57-
543,1994.
[20] N.Katayama, S.Satoh, “The SR-tree: An index for high –dimensional
nearest neighbor queries”, In Pro.of 1997 ACM SIGMMOD
International Conference on Management of data,
Tueson,Arizona,US,May 11- 15, pp.369-380,1997.
[21] S.Kiranyanz and M.Gabbouj, “Hierarchical cellular tree:An efficient
indexing scheme for content based retrieval on multimedia based
databases,” IEEE Transactions on Multimedia.vol.9.no.1.pp :102-
119.Jan.2007.
[22] S.Kiranyanz,K.Caglar,O.Guldogan,and E.Karaogllu, “MUVIS:A
multimedia browsing, indexing and retrieval framework,”in
Proc.Third Int.Worshop on Content Based Multimedia
Indexing,CBMI,Rennes,France,Sep.22- 24,2003
[23] S.Kiranyanz,K.Caglar,E.Guldogan,O.Guldogan and M.Gabbouj,
“MUVIS:A content-based multimedia indexing and retrieval
framework,”in Proc.Seventh Int.Symposium on Signal Proc.and its
Applications,ISSPA 2003,Parris,France, Jul. 1-4, pp.1-8,2003.
[24] J.R.Kruskal, “On the shortest spanning subtree of a graph and the
travelling salesman problem,”in Proc.AMS 71,1956
[25] P.Koikkalainen and E.Oja, “Self-organizing hierarchical feature
maps,”in Proc.Int.Joint Conf.Neural Netwoks,San Diego,CA,1990.
28 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

[26] Manesh Kokare,Student Member IEEE,P.K.Biwas,Member IEEE and
B.N.Chatterji, “Texture Image Retrieval Using New rotated Complex
Wavelet Filters.,”IEEE Transactions on Systems,Man and Cybernetics-
Part-B.vol.35.no.6.pp:1168-1178,Dec. 2005.
[27] D.B.Lomet and B.Salzberg. “The hb-tree:A multiattribute indexing
method with good guaranteed performance”ACM Transactions on
Database Systems.15(4):pp.625-658,1990.
[28] J.T.Laaksonen, J.M.Koskela,S.P.Laakso,and E.Oja, “PicSOM-content-
based image retrieval with self organizing maps,”Pattern Recognition
Letter,vol.21,no.13-14.pp.1199-1207,Dec.2000
[29] MUVIS.[Online].Avilable:http://muvis.cs.tut.fi/
[30] A.Motro Vague, “A user interface to relational databases that permits
vague queries.”ACM Transactions on office Information Systems,
6(3):pp.625-658, 1990.
[31] A.Pentland,R.W.Picard,and S.Sclaroff, “Photobook:Tools for content
based manipulation of images,”in Proc.SPIE(Storage and retrieval
for image and video databases II), vol.2185,pp.34-37. 1994,
[32] R.C.Prim, “Shortest connection matrix network and some
generalizations,”Bell Syst.Tec.J.,vol.36.pp.1389-1401[2]
[33] Y. Rui, T. S. Huang, and S.-F. Chang, “Image retrieval: Current
techniques, promising directions, and open issues,” J. Vis. Commun.
Image Represent., vol. 10, pp. 39–62, Nov.1999.
[34] J.Robinson. “The k-d-b-tree:A search strucure for large
multidimensional dynamic indexes”. ”.In Proceedings of the 1984
ACM SIGMOID International Conference on Mangement of Data, Ann
Arbor, Michigan,U S, pp. 10-18,Apr. 1981.
[35] A. W. M. Smeulders, M. Worring, S. Santini, A. Gupta, and R. Jain,
“Content-based image retrieval at the end of the early years,” IEEE
Trans. Pattern Anal. Machine Intell., vol. 22, pp.1349–1380, Dec. 2000
[36] T.K.Sellis,N.Roussopoulos,C.Faloutsos, “The R+-Tree :A Dynamic
Index for Multi-Dimensional Objects,”In Proc.of the 13
th

International Conferenc on Very Large Data Bases,pp.507-518,Sept. 01-
04,1987.
[37] J.R.Smith and Chang, “VisualSEEK:A fully automated content-based
image query system,”in Proc.ACM Multimedia,Bostan,MA,Nov.96
[38] Y.Sakurai,M.Yoshikawa,S.Uemura,H.Kojima, “The A- tree:An index
structure for High –Dimensional Spaces using Relative
Approximation,”In Proc.of the 26
th
International conference on Very
Large Databases,pp.516-26,September 10-14,2000.
[39] I.K.Sethi and Coman, “Image retrieval using hierarchical self-organizing
feature map,”Pattern Recognition Letter,vol.20,pp.1337-1345,1999.
[40] Virage,[Online].Avilable:www.virage.com
[41] D.A White and R.Jain. “Similarity indexing with ss-tree”. In
Proceedings of the 12
th
International Conference on Data
Engineering, pp.516-523, New Orleans,LA,US,Feb. 1996.
[42] H.Wang,C.-S.Perg, “The S
2 –
tree:An Index Structure for susequence
matching of spatial objects”,In Pro.of 5
th
Asia Pacific Conf.on
Knowledge Discovery and Data mining (PAKDD),Hong Kong,2001.
[43] P.N.Yianilos.”Data structures and algorithms for nearest search in
general metric spaces.In Proceeding of the 3
rd
Annual ACM-SIAM
Syposium on Discrete algorithms, pp311-
321,Philadephia,PA,US,January 1993.
[44] P.Zezula,P.Ciaccia,and F.Rabitti. “M-tree :A dynamic index for
similarity queries in multimedia databases.In Technical Report
7.HERMES ESPRIT LTR Projects,1996.
[45] H.Zhang and D.Zhong, “A scheme for visual features based image
indexing,”in Proc.SPIE/IS&T Conf.Storage and Retrieval for Image
and Video Databases III,San Jose,CA, vol.2420,pp.36-46. Feb.9-
10,1995.
[46] X.Zhou,G.Wang,J.X.Yu,and G.Yu, “M+tree:A new dynamical
multidimensional index for metric spaces, “in Proc.Fourteenth
Australian Database Conf.Database
Technologies,Adelaide,Australia,pp.161-168. Feb,2003
[47] T.Bozkaya and Z.M.Ozsoyoglu, “Distance-based indexing for high
dimensional metric spaces,” in Proc.ACM-SIGMOID,pp.357-368,1997.
[48] Ming Zhang and John Fulcher, “Face recognition using artificial neural
network group-based adaptive tolerance trees,”IEEE Trans.on Neural
Networks,vol.7.no.3.May.1996.


P.AnandhaKumar received B.E degree in Electronics and Communication
from Government College of Engineering,Salem,Tamil nadu. and M.E
degree in Computer Science and Engineering from Government College of
Technology, Coimbatore. He received PhD degree from College of
Engineering Guindy in the Department of Computer Science and
Engineering at Anna university,Chennai.Currently working as Assistant
Professor in the Department of Information Technology at Madras Institute
of Technology,Anna University- Chennai,India. He has published several
papers in international, national journals and conferences. His areas of
interests includes content-based image indexing techniques and
frameworks, image processing and analysis,video analysis,fuzzy
logic,pattern recognition,knowledge management and semantic analysis .

V.Balamurugan received B.E degree in
Electrical and Electronics Engineering from
Government College Technology, Coimbatore
and M.E degree in Applied Electronics with
distinction from Karunya Institute of
Technology, Coimbatore. Currently pursuing
PhD degree in the Department of Information
Technology at Madras Institute ofTechnology,
Anna University-Chennai. India. His current
research interest includes in the area of
content-based image retrieval, image
processing and analysis, digital signal
processing, wavelet theory and application.




29 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Ontology-supported processing of clinical text using
medical knowledge integration for multi-label
classification of diagnosis coding

Phanu Waraporn
1,4,*
, Phayung Meesad
2
, Gareth Clayton
3

1
Department of Information Technology, Faculty of Information Technology
2
Department of Teacher Training in Electrical Engineering, Faculty of Technical Education
3
Department of Applied Statistics, Faculty of Applied Science
King Mongkut’s University of Technology North Bangkok

4
Division of Business Computing, Faculty of Management Science
Suan Sunandha Rajabhat University
Bangkok, Thailand
*
phanu.waraporn@gmail.com, pym@kmutnb.ac.th , gareth@kmutnb.ac.th

Abstract—This paper discusses the knowledge integration of
clinical information extracted from distributed medical ontology
in order to ameliorate a machine learning-based multi-label
coding assignment system. The proposed approach is
implemented using a decision tree based cascade hierarchical
technique on the university hospital data for patients with
Coronary Heart Disease (CHD). The preliminary results
obtained show a satisfactory finding.
Keywords-component; medical ontology, diagnosis coding,
knowledge integration, machine learing, decision tree.
I. INTRODUCTION

From the fact that the typical character of any medical data
is heterogeneous, traditional machine learning approach alone
cannot be directly applied to solve efficiently our study in the
area of automating the clinical coding task. Therefore, we
present a knowledge integration method based on the
utilization of distributed medical ontology support knowledge
capturing and integration and machine learning techniques to
enhance a coding assignment of multi-label medical text.
Text Categorization or Text Assignment (TA) as part of the
Natural Language Processing (NLP) consists the assignment
of one or more preexisting categories to a text document [1].
In multi-label assignment, the problem can comprise various
classes.
As large unstructured and structured medical databases are
being generated momentarily, difficulties accessing,
integrating, extracting, and managing knowledge out of them
are among many reasons researchers are trying to overcome
including utilizing ontology, a form of knowledge-based
systems which are repositories of structured knowledge such
as UMLS, MeSH, ICD, etc.
According to Nelson et al.[2], several studies have shown
that the use and integration of several knowledge sources
improves the quality and efficiency of information systems
using the query on the ontology , specifically so in the domain
specific such as the health information systems or medicine.
An ontology is a specification of a conceptualization that
defines and/or specifies the concepts, relationships, and other
distinctions that are relevant for modeling a domain. Such
specification takes the form of the definitions of
representational vocabulary (classes, relations, and so on),
which provide meanings to the vocabulary and formal
constraints on its coherent use [3].



















Fig.1. The framework of officially accepted disease [6].
In compliance with the WHO ICD 10 for Coronary
Heart Disease [4], a domain specific ontology based on a
distributed architecture is constructed for use in the work to
support the knowledge capturing and integration processes. As
depicted in Figure 1 below an adapted framework of officially
accepted disease generated in HOZO [5] representing a high
level medical ontology in our work which can be shared and
30 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
reused.
The essence in managing knowledge about semantic
relations, how to acquire as well as how to integrate them and
finally how to put them altogether are discussed. Of many
machine learning algorithms, we short-listed few of them and
preliminary tests are performed. We compare the results with
our own classifier, a variant of the existing decision tree, and
conclude that our approach marginally outperform the
traditional ones.
The rest of the paper is arranged as follows: first, a
related work section comments on some relevant works in the
field; section 3 briefly introduces the proposed system
architecture; section 4 summarizes the data collection and
experiments along with the preliminary results. We deliver the
conclusions and future work in the epilogue of section 5.


II. RELATED WORKS

A. Ontology
Our aim of enhancing the automatic assignment of
medical coding by automatically integrating ontologies is
guided by the use of ontologies in various natural language
processing tasks such as automatic summarization, text
annotation and word sense disambiguation, among other [7].
Advantage of using ontologies in the area of relevance-
feedback, corpus-dependent knowledge models and corpus-
independent knowledge models on the domain-specific and
domain-independent ontologies all contribute to ameliorate
information retrieval systems [8].
Domain-independent ontologies such as WordNet/
Medical WordNet though improves a word sense
disambiguation, it has so broad coverage that it can be
debatable for the ambiguous terms making a domain-specific
ontologies, particularly on the part of a terminology which is
less ambiguous. Further more, it models terms and concepts
corresponding to a specific or given domain [9].
In our case, an Ischaemic Heart Disease ontology is
manually built by reusing the framework, high level, relations
and concepts defined in accordance with [6]. Figures 2 and
Figure 3 illustrates the property inheritance and top level,
respectively.




Fig.2 Property Inheritance in HOZO Heart Disease [6].





Fig.3 High Level category in HOZO [6].


B. Medical Knowledge Integration Framework and Process

In a complex domain such medicine, knowledge
integration requires consolidation of the heterogeneous
knowledge and reconfirm it with the induced models since it
originates from sources with different levels of certainty and
completeness. Therefore, new models are collectively learned
and comprehensively evaluated based on existing knowledge.
Figure 4 illustrates the overview of medical knowledge
integration whilst a more comprehensive medical knowledge
integration process is depicted in Figure 5.




Fig.4 Overview of medical knowledge integration architecture, adapted
from [10].


31 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010


Fig.5 Domain knowledge integrated into medical knowledge integration
process, adapted from [10].


C. Clinical data/text

Patient records in use are the discharge summary records
generally contain the principal diagnosis (PDx) information.
The particular of secondary diagnosis (SDx) may appear
provided that there is additional ailment requiring treatment in
addition to the PDx. If any, SDx can be the details about the
comorbidity, complication, status of the disorder; chronic,
acute and external cause of the injury. Additionally, depending
on the necessity, the treatment may involve other medical
procedures (PROC) and such details are to be itemized. In the
case where only PDx is reported, the coding process is fairly
simple and fast. Generally, however, the patient records
contain many SDxs and multiple PROC. The coder duty is to
translate those PDx(s), SDx(s) and PROC information into
corresponding ICD 10 code(s). Other patient data aside from
the discharge summary includes but not limited to prescription
information sheet, laboratory results, drug prescribed nurse
note, progress note, and other records [11].


D. Multi-label Classification Task[12][13]

A pattern recognition, classification, categorization can be
viewed as a mapping from a set of input variables to an output
variable representing the class label. In classification problems
the task is to assign new inputs to labels of classes or
categories. As input data the patient’s anamnesis, subjective
symptoms, observed symptoms and syndromes, measured
values (e.g. blood pressure, body temperature etc.) and results
of laboratory tests are taken. This data is coded by vector x,
the components of which are binary or real numbers. The
patients are classified into categories D
1
, …, D
m
that
correspond to their possible diagnoses d
1
, …., d
m
. Also
prediction of the patient’s state can be stated as classification
problem. On the basis of examined data represented with
vector x patients are categorized into several categories P
1
, …,
P
m
that correspond to different future states. For example five
categories with the following meaning can be considered: P
1

can mean death, P
2
deterioration of the patient’s state, P
3

steady state, P
4
improvement of the patient’s state and P
5

recovery.

As opposed to binary classification, multiple labels (e.g.,
Breathing, Blood circulation, and Pain) are considered. In
binary classification there was one label (e.g., Breathing) and
the task was to assign instances either to the class of topically
related (i.e., belongs to the class of Breathing) or to the class
of topically unrelated (i.e., does not belong to the class of
Breathing) objects. In other words, the multi-label
classification task can be restructured to multiple binary
classification tasks - one for each topic-label. The only
difference in the multi-class classification is that in multi-label
classification, each instance can belong to several classes at
the same time.

E. Diagnosis Coding

From Figure 6, a ICD 10 for Coronary Heart Disease
(CHD) is presented in a hierarchical form. The top first level is
the high/concept level class where the second and third levels
are major and minor classes, respectively. The minor class
gives more specific information yet not comprehensively
enough when compared with other major medical concepts
and ontologies like UMLS, GALEN, SNOMED CT, etc. This
is due to the fact that information is served differently.

Key words/terms extracted from patient discharge
summary will undergo the coding process and provided that
all relevant information are in accordance, this summary will
finally be assigned a corresponding ICD 10 code(s) as per
specified in the ICD 10.




Fig.6 ICD 10 for Coronary Heart Disease in hierarchical form.

With the preceding background and related works, a
system for automating the ICD 10 coding assignment for CHD
can now begin. In the next section, a framework for such a
system will be introduced. Furthermore, data collected for this
32 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
preliminary experiment will be briefed and early result of
applying the proposed novel method called cascade
hierarchical Decision Tree (chiDT), a twice processing of
Decision Tree C4.5 algorithm, is presented.

III. THE PURPOSED FRAMEWORK AND PRELIMINARY
EXPERIMENTAL RESULTS

This section explains the proposed framework appeared in
Figure 7 below. Our emphasis is on the one surrounded by the
red block.



Fig.7 High level framework for automating ICD 10 coding assignment.

A machine-learning approach using a cascade of two
classifiers trained on the same data is used to predict the
codes. Both classifiers are trained with the same data, and
perform multi-label classification by decomposing the task
into 11 (out of 28) binary classification problems, one for each
code. In this setting, it is possible for a classifier to predict an
empty, or impossible, combination of codes. Such known
errors are used to trigger the cascade: when the first classifier
makes a known error, the output of the second classifier is
used instead as the final prediction. No further correction of
the output of the second classifier is performed as preliminary
experiments suggested that this would not further improve the
performance.

In the context of Thai people based on data collected
during year 2009 for all patients with Coronary Heart Disease
(CHD) in one university hospital, out of 28 ICD 10 codes in
the CHD group, 11 classes were reported, the rest is non
existed.

196 patients with CHD were reported to the university
hospital during 2009. 53 patient records were then separated
for training purpose. These instances were carefully selected
in order to cover all the classes. In order to understand the data
for preliminary testing purpose, we recombined 53 training
records with the 143 remaining and untrained ones and based
on chiDT classifier using WEKA [14] as a processing engine,
the following early results were reported. The following
tables detail the results generated for each different classifier.

Table 1 represents the results of 53 carefully selected
records covering 11 classes widely seen in Thailand and used
for training. While Tables 2 to 4 present the results on all 196
records used for training the chiDT, SVM and Fuzzy
classifiers, respectively.

chiDT
Correctly Classified Instances 52 98.1132 %
Incorrectly Classified Instances 1 1.8868 %
Kappa statistic 0.9756
Mean absolute error 0.012
Root mean squared error 0.0818
Relative absolute error 4.5652 %
Root relative squared error 22.5907 %
Total Number of Instances 53

Table 1 With original 53 selected for training, the chiDT alone gave
approximately 98.11 % accuracy.

chiDT
Correctly Classified Instances 185 94.3878 %
Incorrectly Classified Instances 11 5.6122 %
Kappa statistic 0.9323
Mean absolute error 0.0107
Root mean squared error 0.0927
Relative absolute error 7.0466 %
Root relative squared error 33.6758 %
Total Number of Instances 196

Table 2 With original 196 selected for training, the chiDT alone gave
approximately 94.39 % accuracy.




33 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
SVM
Correctly Classified Instances 183 93.3673 %
Incorrectly Classified Instances 13 6.6327 %
Kappa statistic 0.9196
Mean absolute error 0.1492
Root mean squared error 0.2642
Relative absolute error 97.9788 %
Root relative squared error 95.9388 %
Total Number of Instances 196

Table 3 With original 196 selected for training, the chiDT with Support
Vector Machine (SVM) classifier gave approximately 93.37 % accuracy.

FLR
Correctly Classified Instances 184 93.8776 %
Incorrectly Classified Instances 12 6.1224 %
Kappa statistic 0.9262
Mean absolute error 0.0111
Root mean squared error 0.1055
Relative absolute error 7.3094 %
Root relative squared error 38.3185 %
Total Number of Instances 196

Table 3 With original 196 selected for training, the chiDT with Fuzzy
classifier gave approximately 93.87 % accuracy.

The early result of this preliminary experiments displays
that the proposed chiDT classifier based on cascade
hierarchical architecture does produce satisfying output
followed marginally by Fuzzy and SVM techniques.


IV. CONCLUSION AND FUTURE WORKS
In this paper, we have provided an overview of the proposed
machine learning algorithm titled cascade hierarchical
Decision Tree (chiDT). Though the result was not so
distinctively conclusive due to limited number of the data set,
the authors expect that with increased sample size, the result
should improve the yield substantially. To conclude that this
algorithm is reliable, a cost sensitivity analysis (CSA) will be
tested apart from other standard model evaluation techniques.
These works represent an upcoming work to be carried out.
Also it would be appropriate to mention that by integrating
ontology and medical knowledge integration framework into
this work, future medical knowledge management would
enhance both works of computer scientists and clinical
specialists, to name just a few, for the improved classifiers and
clinically generic models, respectively.


V. ACKNOWLEDGEMENT
We would like to extend our sincere thanks to staff at the
Mahidol University’s Faculty of Medicine Siriraj Hospital
Division of Molecular Genetics, staff at the National Center
for Genetic Engineering and Biotechnology (BIOTEC) and
staff at the Human Language Technology Laboratory of the
National Electronics and Computer Technology Center
(NECTEC) for all resources and advices discussed in this
experimental study. In addition, we acknowledge the team at
the Mizoguchi Laboratory of the Institute of Scientific and
Industrial Research, Osaka University for allowing us to
access the software, HOZO, an ontology editor.



REFERENCES
[1] Sebastiani, F. Machine Learning in automated text categorization. ACM
Comput. Surv., 34(1), 1-47 (2002).
[2] Nelson, S.J., et al. Relationships in medical subject headings. In C.A.
Bean & R. Green (Eds.), Relationship in the Organization of Knowledge.
New York: Kluwer Academic Publishers, (pp. 171-184) (2001).
[3] Gruber, T. Toward Principles for the Design of Ontologies used for
Knowledge Sharing. International Journal of Human-Computer Studies,
43, 907-928 (1995).
[4] WHO. World Health Organization. www.who.int,
www.who.int/classifications/icd/en/
[5] HOZO, an ontology editor. www.hozo.jp
[6] Mizoguchi, R. et al. An Advanced Clinical Ontology. Available from
Nature Precedings <http://dx.doi.org/10.1038/npre.2009.3506.1> (2009)
[7] Martin-Valdivia, M.T. Expanding terms with medical ontologies to
improve a multi-label text categorization system. In P.Violaine and R.
Mathieu (Eds.), Information Rerieval in Biomedicine: Natural Language
Processing for Knowledge Integration, (pp 38-57) (2009).
[8] Bhogal, J., et al. A review of ontology based query expansion.
Information Processing & Management, 43(4), July 2007, 866-886
(2007)
[9] Waraporn, P., et al. Proposed framework for interpreting medical
diagnosis records using adopted WordNet/Medical WordNet.
Proceedings of Technology and Innovation for Sustainable Development
Conference(TISD2008), 05_004_2008I, 433-436 (2008).
[10] Kwiatkowska, M., et al, Knowledge-basaed induction of clinical
prediction rules. In Berka, P., Rauch, J., Zighed A., D., (Eds.), Data
Mining and Medical Knowledge Management: Cases and Applications,
(pp 356-357) (2009)
[11] Waraporn, P., et al. Distributed Ontological Engineering and Integrated
Development of Medical Diagnosis Coding Ontology for State Hospitals
in Thailand, Proceedings of National Conference on Computer and
Information Technology (NCIT 2008) (2008).
[12] Vesely, A. Classification and prediction with neural networks. In Berka,
P., Rauch, J., Zighed D. A., editors. Data Mining and Medical
Knowledge Management: Cases and Applications (pp 76-107) (2009).
[13] Suominen, H., et al. Machine learning to automate the assignment of
diagnosis codes to free-text radiology reports: a method description. In
Hauskrecht, M., Schuurmans, D., and Szepesvari, C., editors.
Proceedings of the ICML/UAI/COLT 2008 Workshop on Machine
Learning for Health-Care Applications, July 9, 2008, Helsinki, Finland
(2008).
[14] WEKA. An open sourced machine learning software from the University
of Waikato. Http://www.cs.waikato.ac.nz/ml/






34 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
AUTHORS PROFILE

Phanu Waraporn, a Ph.D. candidate in Information
Technology at the Faculty of Information Technology,
King Mongkut’s University of Technology North
Bangkok. Currently, he is the lecturer in Business
Computing at the Faculty of Management Science,
Suan Sunandha Rajabhat University, Bangkok,
Thailand.


Phayung Meesad, Ph.D., assistant professor. He is an
associate dean for academic affairs and research at the
faculty of Information Technology, King Mongkut’s
University of Technology North Bangkok. He earned
his MS and Ph.D. degrees in Electrical Engineering
from Oklahoma State University, U.S.


Gareth Clayton, Ph.D., a senior lecturer in statistics at
the Department of Applied Statistics, Faculty of
Applied Science, King Mongkut’s University of
Technology North Bangkok. He earned his Ph.D. in
Statistics from Melbourne University, Australia.

35 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Botnet Detection by Monitoring Similar
Communication Patterns


Hossein Rouhani Zeidanloo
Faculty of Computer Science and Information System
University of Technology Malaysia
54100 Kuala Lumpur, Malaysia
h_rouhani@hotmail.com
Azizah Bt Abdul Manaf
College of Science and Technology
University of Technology Malaysia
54100 Kuala Lumpur, Malaysia
azizah07@citycampus.utm.my


Abstract— Botnet is most widespread and occurs commonly in
today‘s cyber attacks, resulting in serious threats to our network
assets and organization’s properties. Botnets are collections of
compromised computers (Bots) which are remotely controlled by
its originator (BotMaster) under a common Command-and-
Control (C&C) infrastructure. They are used to distribute
commands to the Bots for malicious activities such as distributed
denial-of-service (DDoS) attacks, spam and phishing. Most of the
existing Botnet detection approaches concentrate only on
particular Botnet command and control (C&C) protocols (e.g.,
IRC,HTTP) and structures (e.g., centralized), and can become
ineffective as Botnets change their structure and C&C
techniques. In this paper at first we provide taxonomy of Botnets
C&C channels and evaluate well-known protocols which are
being used in each of them. Then we proposed a new general
detection framework which currently focuses on P2P based and
IRC based Botnets. This proposed framework is based on
definition of Botnets. Botnet has been defined as a group of bots
that perform similar communication and malicious activity
patterns within the same Botnet. The point that distinguishes our
proposed detection framework from many other similar works is
that there is no need for prior knowledge of Botnets such as
Botnet signature.

Keywords-Botnet; Bot; centralized; decentralized; P2P; similar
behavior
I. INTRODUCTION
Bot is a new type of malware [1] installed into a
compromised computer which can be controlled remotely by
BotMaster for executing some orders through the received
commands. After the Bot code has been installed into the
compromised computers, the computer becomes a Bot or
Zombie [2]. Contrary to existing malware such as virus and
worm which their main activities focus on attacking the
infecting host, bots can receive commands from BotMaster
and are used in distributed attack platform.
Botnets are networks consisting of large number of Bots.
Botnets are created by the BotMaster(a person or a group of
person which control remote Bots) to setup a private
communication infrastructure which can be used for malicious
activities such as Distributed Denial-of-Service(DDoS),
sending large amount of SPAM or phishing mails, and other
nefarious purpose [ 3,4,5 ]. Bots infect a person’s computer in
many ways. Bots usually disseminate themselves across the
Internet by looking for vulnerable and unprotected computers
to infect. When they find an unprotected computer, they infect
it and then send a report to the BotMaster. The Bot stay hidden
until they are announced by their BotMaster to perform an
attack or task. Other ways in which attackers use to infect a
computer in the Internet with Bot include sending email and
using malicious websites, but common way is searching the
Internet to look for vulnerable and unprotected computers [6] .
The main difference between Botnet and other kind of
malwares is the existence of Command-and-Control (C&C)
infrastructure. The C&C allows Bots to receive commands and
malicious capabilities, as devoted by BotMaster. BotMaster
must ensure that their C&C infrastructure is sufficiently robust
to manage thousands of distributed Bots across the globe, as
well as resisting any attempts to shutdown the Botnets.
Recently, attackers are also continually improving their
approaches to protect their Botnets. The first generation of
Botnets utilized the IRC (Internet Relay Chat) channels as
their Common-and-Control (C&C) centers. The centralized
C&C mechanism of such Botnet has made them vulnerable to
being detected and disabled. Therefore, new generation of
Botnet which can hide their C&C communication have
emerged, Peer-to-Peer (P2P) based Botnets. The P2P Botnets
do not suffer from a single point of failure, because they do
not have centralized C&C servers [12]. Attackers have
accordingly developed a range of strategies and techniques to
protect their C&C infrastructure. The rest of the paper is
organized as follows. In Section 2, we analyze different Botnet
communication topologies and consider the protocols that are
currently being used in each model. In Section 3, we review
the related work. In Section 4, we describe our proposed
detection framework and all its components and finally
conclude in section 5.
36 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
II. BOTNET COMMUNICATION TOPOLOGIES
According to the Command-and-Control(C&C) channel, we
categorized Botnet topologies into two different models, the
Centralized model and the Decentralized model.
A. Centralized model
In this model, one central point is in charge for exchanging
commands and data between the BotMaster and Bots. In this
model, BotMaster chooses a host (usually high bandwidth
computer) to be the central point (Command-and-Control)
server of all the Bots. The C&C server runs certain network
services such as IRC or HTTP. The main advantage of this
model is small message latency which cause BotMaster easily
arranges Botnet and launch attacks. Since all connections
happen through the C&C server, therefore, the C&C is a
critical point in this model. In other words, C&C server is the
weak point in this model. If somebody manages to discover
and eliminates the C&C server, the entire Botnet will be
useless and ineffective. Thus, it becomes the main negative
aspect of this model.
Since IRC and HTTP are two common protocols that C&C
server uses for communication, we consider Botnets in this
model based on IRC and HTTP. Figure 1 shows the basic
communication architecture for a Centralized model. There are
two central points that forward commands and data between
the BotMaster and his Bots.










Figure 1. Command and control architecture of a Centralized model

1) Botnet based on IRC : The IRC is a form of real-time
Internet text messaging or synchronous conferencing [13]. The
protocol is based on the Client-Server model, which can be
used on many computers in distributed networks. Some
advantages which made IRC protocol widely being used in
remote communication for Botnets are: (1) Low latency
communication; (2) Anonymous real-time communication; (3)
Ability of Group (many-to-many) and Private (one-to-one)
communication; (4) simple to setup and (5) simple commands.
The basic commands are connect to servers, join channels and
post messages in the channels; (6) Very flexibility in
communication. Therefore IRC protocol is still the most
popular protocol being used in Botnet communication [5].


Figure 2. IRC based Botnet
In this model, BotMasters can command their Bots as a
whole or command a few of the Bots selectively using one-to-
one communication. The C&C server runs IRC service that is
the same with other standard IRC service. BotMaster usually
creates a designated channel on the C&C servers where all the
Bots will connect, awaiting commands in the channel which
will instruct each connected Bot to do the BotMaster’s
bidding. Figure 2 showed that there is one central IRC server
that forwards commands and data between the BotHerder and
his Bots.
2) Botnet based on HTTP: The HTTP protocol is another
popular protocol used by Botnets. Since IRC protocol within
Botnets became well-known, more internet security
researchers gave attention to monitoring IRC traffic to detect
Botnet. Consequently, attackers started to use HTTP protocol
as a Command-and-Control communication channel to make
Botnets become more difficult to detect. The main advantage
of using the HTTP protocol is hiding Botnets traffics in
normal web traffics, so it can easily bypasses firewalls with
port-based filtering mechanisms and avoid IDS detection.
Usually firewalls block incoming/outgoing traffic to unwanted
ports, which often include the IRC port. There are some
known Bots using the HTTP protocol, such as Bobax [16],
ClickBot [13] and Rustock [17]. Gu et al in the reference [10]
pointed out that the HTTP protocol is in a “pull” styleand the
IRC is in a “push” style. However the architecture of both is
same.
B. Decentralized Model
Due to main disadvantage of Centralized model attackers
started to build alternative Botnet communication system that
is much harder to discover and to destroy. Hence, they decided
to find a model in which the communication system does not
completely depending on only some selected servers and even
discovering and destroying a number of Bots. As a result,
attackers exploit the idea of Peer-to-Peer (P2P)
communication as a Command-and-Control(C&C) pattern
which is more resilient to failure in the network. The P2P
based C&C model will be used significantly in Botnets in the
near future, and definitely Botnets that use P2P based C&C
model impose much bigger challenge for defense of networks.
Since P2P based communication is more robust than
Centralized C&C communication, more Botnets will move to
use P2P protocol for their communication.
In the P2P model, as shown in Figure 3, there is no
Centralized point for communication. Each Bot keeps some

37 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
connections to the other Bots of the Botnet. Bots act as both
Clients and servers. A new Bot must know some addresses of
the Botnet to connect there. If Bots in the Botnet are taken
offline, the Botnet can still continue to operate under the
control of BotMaster. P2P Botnets aim at removing or hiding
the central point of failure which is the main weakness and
vulnerability of Centralized model.











Figure 3. Example of Peer-to-peer Botnet Architecture
Some P2P Botnets operate to a certain extent decentralized
and some completely decentralized. Those Botnets that are
completely decentralized allow a BotMaster to inject a
command into any Bots, and have it either be broadcasted to a
specified node. Since P2P Botnets usually allow commands to
be injected at any node in the network, the authentication of
commands become essential to prevent other nodes from
injecting incorrect commands.
III. RELATED WORK
Different approaches have been proposed for detection of
Botnet. There are essentially two approaches for botnt
detection. One approach is based on locating honeynets in the
network. And another approach is monitoring and analysis of
passive network traffic [20].
There are many papers discussed how to apply honeynets
for Botnet detection [5,3,21,22,23,24,1,25,26]. Honeynets are
functional to understand Botnet characteristics and
technology, but cannot detect bot infection all the times.
We can categorize passive network traffic monitoring
approach to signature-based, anomaly-based, DNS-based and
mining-based.
Signature-based Botnet detection technique uses the
signatures of current Botnets for its detection. For instance,
Snort [27] is capable to monitor network traffic to find
signature of existing bots. Signature-based detection approach
is only capable to be used for detection of well-known
Botnets. Consequently, this solution is not functional for
unknown bots.
Anomaly-based detection approaches try to detect Botnets
based on a number of network traffic anomalies such as high
network latency, high volumes of traffic, traffic on unusual
ports, and unusual system behavior that could show existence
of bots in the network [28]. Nevertheless this technique meets
the problem of detecting unknown Botnets, but is not capable
to realize an IRC network Botnet which has not been used yet
for attacks. To solve this, Binkley and Singh [14] proposed an
effective algorithm that combines TCP-based anomaly
detection with IRC tokenization and IRC message statistics to
create a system that can clearly detect client Botnets. This
algorithm can also reveal bot servers [14]. However, Binkley’s
approach could be easily crushed by simply using a minor
cipher to encode the IRC commands.
Lately, Gu et al. have proposed Botsniffer [13] that uses
network-based anomaly detection to identify Botnet C&C
channels in a local area network. Botsniffer is based on
observation that bots within the same Botnet will likely reveal
very strong similarities in their responses and activities.
Therefore, it employs several correlation analysis algorithms
to detect spatial-temporal correlation in network traffic with a
very low false positive rate [13].
DNS-based detection techniques are based on DNS
information generated by a Botnet. As mentioned before, bots
normally begin connection with C&C server to get commands.
In order to access the C&C server bots carry out DNS queries
to locate the particular C&C server that is typically hosted by
a DDNS (Dynamic DNS) provider. Therefore, it is feasible to
detect Botnet DNS traffic by DNS monitoring and detect DNS
traffic anomalies [29, 30].
In 2005, Dagon [31] proposed a method to discover Botnet
C&C servers by detecting domain names with unusually high
or temporally intense DDNS query rates. This method is
similar to the approach proposed by Kristoff [32] in 2004.
In 2007, Choi et al. [29] suggested anomaly mechanism by
monitoring group activities in DNS traffics. They defined
some special features of DNS traffics to differentiate valid
DNS queries from Botnet DNS queries. This method is more
efficient than the prior approaches and can detect Botnet
despite the type of bot by looking at their group activities in
DNS traffic [29].
Geobl and Holz [15] proposed Rishi in 2007. Rishi is
primarily based on passive traffic monitoring for odd or
suspicious IRC nicknames, IRC servers, and uncommon
server ports. They use n-gram analysis and a scoring system to
detect bots that use uncommon communication channels,
which are commonly not detected by classical intrusion
detection systems [15]. The disadvantages of this method are
that it cannot detect encrypted communication as well as non-
IRC Botnets.
Strayer et al. [33] proposed a network-based approach for
detecting Botnet traffic which used two step processes
including separation of IRC flows at first, and then discover
Botnet C&C traffic from normal IRC flows [33]. This
technique is specific to IRC based Botnets.
Masud et al. [34] proposed effective flow-based Botnet
traffic detection by mining multiple log files. They proposed
several log correlation for C&C traffic detection. They
categorize an entire flow to identify Botnet C&C traffic. This
method can detect non-IRC Botnets[34].
Botminer [35] is the most recent approach which applies
data mining techniques for Botnet C&C traffic detection.
Botminer is an improvement of Botsniffer [13]. It clusters
similar communication traffic and similar malicious traffic.

38 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Then, it performs cross cluster correlation to identify the hosts
that share both similar communication patterns and similar
malicious activity patterns. Botminer is an advanced Botnet
detection tool which is independent of Botnet protocol and
structure. Botminer can detect real-world Botnets including
IRC-based, HTTP-based, and P2P Botnets with a very low
false positive rate [35].
As we mentioned above researches have proposed some
approaches and techniques [14,15,16,13,17,18] for detecting
Botnets. Majority of these approaches are developed for
detecting IRC or HTTP based Botnets[14,15,18]. For instance,
BotSniffer[13] is designed especially for detecting IRC and
HTTP based Botnets. Rishi[15] is also desingned for detecting
IRC based Botnets with using well-known IRC bot nickname
patterns as signature. But recently we have witnessed that
structure of Botnets moved from centralized to distributed
(e.g., using P2P [9,19]). Consequently, the detection
approaches designed for IRC or HTTP based Botnets may
become ineffective against the new P2P based Botnets.
Therefore, we need to develop a next generation Botnet
detection system, which is also effective in the face of P2P
based Botnets. In addition, we have to take into consideration
that this detection system should require no prior knowledge
of particular Botnets (such as Botnet signature, or C&C server
names/addresses).
In order to come up with a new detection system that also
meet the requirements for detection of P2P based Botnets, we
studied the communication and activity characteristics of few
P2P based Botnet( e.g. Storm Worm) and eventually come up
with effective definition of Botnets; specially for P2P based
Botnet:
“A group of bots (at least three) within the same Botnet
will perform similar communication and malicious activities”.
Actually we share similar idea for definition of Botnet as
proposed by Gu et al. in Botminer[35]. It means that if each
bot within the same Botnet show different behavior (e.g. in
terms of receiving instructions), the bots are only isolated
infected systems that we cannot consider them as a Botnet
based on our definition. According to definition above we
proposed a new framework for detection of Botnets that
mainly targets P2P based and IRC based Botnets, however the
framework has the capability of adding another component for
HTTP based Botnet detection. This framework monitors both
the group of hosts that show similar communication pattern
and performing malicious activities, and try to find common
hosts on them.
IV. PROPOSED BOTNET DETECTION FRAMEWORK AND
COMPONENTS
Our proposed framework is based on passively monitoring
network traffics. This model is based on the definition of P2P
Botnets that multiple bots within the same Botnet will perform
similar communication patterns and malicious activities. Figure
4 shows the architecture of our proposed Botnet detection
system, which consist of 7 main components: Filtering,
Application Classifier, Traffic Monitoring, Malicious Activity
Detector, Analyzer, Monitoring & Clustering and Flows
Analyzer.
Filtering is responsible to filter out unrelated traffic flows.
The main benefit of this stage is reducing the traffic workload
and makes application classifier process more efficient.
Application classifier is responsible for separating IRC and
HTTP traffics from the rest of traffics. Malicious activity
detector is responsible to analyze the traffics carefully and try
to detect malicious activities that internal host may perform and
separate those hosts and send to next stage. Traffic Monitoring
is responsible to detect the group of hosts that have similar
behavior and communication pattern by inspecting network
traffics. Analyzer is responsible for comparing the results of
previous parts (Traffic Monitoring and Malicious Activity
Detector) and finding hosts that are common on the results of
both parts. Monitoring & Clustering is responsible to monitor
the traffic flows and cluster the similar flows to same database.
Flows Analyzer is responsible to detect the group of hosts that
have similar behavior and communication patterns by
comparing databases that received from previous stage for
detecting IRC based bots.
A. Filtering
The main objective of Filtering is to reduce the traffic
workload and makes the rest of the system perform more
efficiently. Figure 5 shows the architecture of the filtering.

Figure 5. Traffics filtering stages


In C1, we filter out those traffics which targets (destination
IP address) are recognized servers and will unlikely host
Botnet C&C servers. For this purpose we used the top 500
websites on the web (Http://www.alexa.com/topsites), which
the top 3 are google.com, facebook.com and yahoo.com.
In C2, we filter out handshaking processes (connection
establishments) that are not completely established.
Handshaking is an automated process of negotiation that
dynamically sets parameters of a communications channel
established between two entities before normal
communication over the channel begins. It follows the
physical establishment of the channel and precedes normal
information transfer [36]. To establish a connection, TCP uses
a three-way handshake; in this case we filter out the traffics
that TCP handshaking have not completed. Like a host sends
SYN packets without completing the TCP handshake. Based
on our experience these flows are mostly caused by scanning
activities.
39 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010

Figure 4. Architecture overview of our proposed detection framework


B. Application classifier
Application Classifier is responsible to separate IRC and
HTTP traffics from the rest of traffics and send them to
Monitoring & Clustering and HTTP component. For detecting
IRC traffics we can inspect the contents of each packet and try
to match the data against a set of user defined strings. For this
purpose we use payload inspection that only inspects the first
few bytes of the payload and looking for specific strings.
These IRC specific strings are NICK for the client’s nickname,
PASS for a password, USER for the username, JOIN for
joining a channel, OPER that says a regular user wants to
become a channel operator and PRIVMSG that says the
message is a private message [37]. Using this strategy for
detecting IRC traffic is almost simple for most network
intrusion detection software like Snort. In some cases
botmasters are using encryption for securing their
communication that make using packet content analysis
strategy useless. This issue actually is not our target here.
In next step, we also have to separate Http traffics and send
to Centralized part. For this purpose we also can inspect the
first few bytes of Http request and if it has certain pattern or
strings, separate it and send it to centralized part. For detecting
Http traffics we focus on concept of Http protocol. Like most
network protocols, HTTP uses the client-server model: An
HTTP client opens a connection and sends a request message
to an HTTP server (e.g. "Get me the file 'home.html'"); the
server then returns a response message, usually containing the
resource that was requested("Here's the file", followed by the
file itself). After delivering the response, the server closes the
connection (making HTTP a stateless protocol, i.e. not
maintaining any connection information between
transactions).[38]
In the format of Http request message, we are focusing on
Http methods. Three common Http methods are “GET”,
“HEAD”, or “POST”: [38]
• A GET is the most common Http method; it says
"give me this resource"
• A HEAD request is similar to GET request, except it
asks the server to return the response headers only,
and not the actual resource (i.e. no message body).
This is helpful to consider characteristics of resources
without downloading it which can help in saving
bandwidth. We use HEAD when no need for a file’s
contents.
• A POST request is used to send data to the server to
be processed in some way, like by a CGI script. A
POST request is different from a GET request in the
following ways:
• There's a block of data sent with the request,
in the message body. There are usually extra
headers to describe this message body.
• The request URI is not a resource to
retrieve; it's usually a program to handle the
data you're sending.
• The HTTP response is normally program
output, not a static file.
Therefore we inspect the traffics and if the first few bytes
of an Http request contain “GET”, “POST” or “HEAP”, it’s
the indication of Http protocol and will separate those flows
and send them to Centralized part. After filtering out Http and
IRC traffics, the remaining traffics that have the probability of
containing P2P traffics are send to Traffic Monitoring part and
Malicious Activity Detector. However in parallel we can use
other approaches for identifying P2P traffics. We have to take
into consideration that P2P traffic is one of the most
challenging application types. Identifying P2P traffic is
difficult both because of the large number of proprietary p2p
protocols, and also due to the deliberate use of random port
numbers for communication. Payload-based classification
approaches tailored to p2p traffic have been presented in [41,
40], while identification of p2p traffic through transport layer
characteristics is proposed in [39]. Our suggestion for using
Network
Traffic
Filtering
Application
Classifier
HTTP
IRC
Other (P2P)
Traffic
Monitoring
Malicious
activity
detector
Analyzer
Report
Monitoring
&
Clustering
Flows
Analyzer
Report
IRC
Http
HTTP
40 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
specific application or tools for identifying P2P traffics other
than sending remaining traffics is use of BLINC [42] that can
identify general P2P traffics. In contrast to previous methods,
BLINC is based on observing and identifying patterns of host
behavior at the transport layer. BLINC investigates these
patterns at three levels of increasing detail (i) the social, (ii)
the functional and (iii) the application level. This approach has
two important features. First, it operates in the dark, having (a)
no access to packet payload, (b) no knowledge of port
numbers and (c) no additional information other than what
current flow collectors provide.[42]
C. Traffic Monitoring
Traffic Monitoring is responsible to identify hosts that are
likely part of Botnet during the time that hosts (bots) initiate
attacks by analyzing flows characteristics and finding
similarities among them. Therefore, we are capturing network
flows and record some special information on each flow. We
are using Audit Record Generation and Utilization System
(ARGUS) which is an open source tool [43] for monitoring
flows and record information that we need in this part. Each
flow record has following information: Source IP(SIP)
address, Destination IP(DIP) address, Source Port(SPORT),
Destination Port(DPORT), Duration, Protocol(Pr), Number of
packets(np) and Number of bytes(nb) transferred in both
directions.

Table 1. Recorded information of network flows
fi SIP DIP Sport Dport Pr np nb duration
f1
f2
.
.

fn

Then we insert this information on a data base like Table 1,
which
{fi}i=1…n
are network flows. After this stage we
specify the period of time which is 6 hours and during each 6
hours, all n flows that have same Source IP, Destination IP,
Destination port and same protocol (TCP or UDP) are marked
and for each network flow {fi} (row) we calculate Average
number of bytes per second and Average number of bytes per
packet:
• Average number of bytes per second(nbps) = Number of
bytes/ Duration
• Average number of bytes per packet(nbpp) = Number of
Bytes/ Number of Packets
Then, we insert this two new values (nbps and nbpp) including
SIP and DIP of the flows that have been marked into another
database, similar to Table 2 . Therefore, during the specified
period of time (6 hours), we might have a set of database,
{fi}i=1…m
which each of these databases have same SIP,
DIP, DPORT and protocol (TCP/UDP). We are focusing just
at TCP and UDP protocols in this part.
As we mentioned earlier, the bots belonging to the same
Botnet have same characteristics. They have similar behavior
and communication pattern, especially when they want to
update their commands from botmasters or aim to attack a
target; their similar behaviors are more obvious. Therefore,
next step is to looking for groups of Databases that are similar
to each other.

Table 2. Database for analogous flows
SPort DPort nbps nbpp



We proposed a simple solution for finding similarities
among group of databases. For each database we can draw a
graph in x-y axis, which x-axis is the average number of bytes
per packet (nbpp) and y-axis is average number of byte per
second (nbps). (X, Y)= (bpp, bps).
For example, in database (di), for each row we have nbpp
that specify x-coordinate and have nbps that determine y-
coordinate. Both x-coordinate and y-coordinate determine a
point (x,y) on the x-y axis graph. We do this procedure for all
rows (network flows) of each database. At the end for each
database we have number of points in the graph that by
connecting those points to each other we have a curvy graph.
We have an example, Figure 6, for two different databases
based on data in our lab that their graphs are almost similar to
each other.
0
0.5
1
1.5
2
2.5
3
3.5
0 10 20
0
0.5
1
1.5
2
2.5
3
3.5
0 10 20

Figure 6: Example of two similar graphs based on data in our lab

Next step is comparing different x-y axis graphs, and
during that period of time (each 6 hours) those graphs that are
similar to each other are clustered in same category. The
results will be some x-y axis graphs that are similar to each
other. Each of these graphs is referring to their corresponding
databases in previous step. We have to take record of SIP
addresses of those hosts and send the list to next step for
analyzing.
D. Malicious Activity Detector
In this part we have to analyze the outbound traffic from
the network and try to detect the possible malicious activities
that the internal machines are performing. Each host may
perform different kind of malicious activity but Scanning and
Spamming are the most common and efficient malicious
activities a botmaster may command their bots to perform
[44,26,45]. The outputs of this part are the list of hosts which
performed malicious activities.
41 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
1) Scanning: Scanning activities may be used for malware
propagation and DOS attacks. Most scan detection has been
based on detecting N events within a time interval of T
seconds. This approach has the problem that once the window
size is known, the attackers can easily evade detection by
increasing their scanning interval. Snort are also use this
approaches. Snort version 2.0.2 uses two preprocessors. The
first is packet-oriented, focusing on detecting malformed
packets used for “stealth scanning” by tools such as nmap
[46]. The second is connection oriented. It checks whether a
given source IP address touched more than X number of ports
or Y number of IP addresses within Z seconds. Snort’s
parameters are tunable, but it suffers from the same drawbacks
as Network Security Monitor(NSM)[47] since both rely on the
same metrics [48]. Other work that are focusing on scan
detection is by Staniford et al. on Stealthy Probing and
Intrusion Correlation Engin( SPICE)[49]. SPICE is focusing
on detecting stealthy scans, especially scans that spread across
multiple source addresses and execute at very low rates. In
SPICE there are anomaly scores for packets based on
conditional probabilities derived from the SIP and DIP and
ports. It uses simulated annealing to cluster packets together
into port scan using heuristics that have developed from real
scans[49]. An important need in our system is prompt
response, however reaching to our goals which are promptness
and accuracy in detecting malicious scanners is a difficult task.
Another solution is also using Threshold Random
Walk(TRW)[48], an online detection algorithm. TRW is based
on sequential hypothesis testing.
After assessing different approaches for detecting scanning
activities, the best solution for using in this part is Statistical
sCan Anomaly Detection Engine( SCADE)[16], a snort
processor plug-in system which has two modules, one for
inbound scan detection and another one for detecting outbound
attack propagation.
a) Inbound Scan Detection(ISD): In this part SCADE has
focused on detection of scan activities based on ports that are
usually used by malware. One of the good advantages of this
procedure is that it is less vulnerable to DOS attacks, mainly
because its memory trackers do not maintain per-external-
source-IP. SCADE here just tracks scans that are targeted to
internal hosts. The bases of Inbound Scan Detection are on
failed connection attempts. SCADE in this part has defined
two types of ports: High-Severity (hs) ports which
representing highly vulnerable and commonly exploited
services and low-severity (ls) ports. For make it more
applicable in current situation SCADE focused on TCP and
UDP ports as high-secure and all other as low-secure ports.
There are different weights to a failed scan attempt for
different types of ports.
The warning for ISD for a local host is produced based on an
anomaly score that is calculated as based on this formula:
S= (w1fhs + w2 fls)
fhs: indicate numbers of failed attempts at high-severity ports
fls: shows numbers of failed attempts at low-severity ports

b) Outbound Scan Detection (OSD): OSD is based on a
voting scheme (AND, OR or MAJORITY). SCADE in this
part has three parallel anomaly detection models that track all
outbound connection per internal host:
• Outbound scan rate (s1): Detects local hosts that perform
high-rate scans for many external addresses.
• Outbound connection failure rate (s2): Detects unusually
high connection fail rates, with sensitivity to HS port usage.
The anomaly score s2 is calculated based on this formula:

S2= (w1fhs + w2 fls)/C

fhs: indicate numbers of failed attempts at high-severity ports
fls: shows numbers of failed attempts at low-severity ports
C: is the total number of scans from the host within a time
window.

• Normalized entropy of scan target distribution (s3):
Calculates a Zipf (power-law) distribution of outbound address
connection patterns. A consistently distributed scan target
model provides an indication of a possible outbound scan. It is
used an anomaly scoring technique based on normalized
entropy to identify such candidates:
S3=H/ln (m)

H: is the entropy of scan target distribution

H= - ∑ pi ln(pi)

m: is the total number of scan targets
pi: is the percentage of the scans at target i

2) Spam-related Activities: E-mail spam, known as
Unsolicited Bulk Email (UBE), junk mail, is the practice of
sending unwanted email messages, in large quantities to an
indiscriminate set of recipients. More than 95% of email on
the internet is spam[50], which most of these spam are sent
from Botnets. A number of famous Botnets which have been
used specially for sending spam are Storm Worm which is P2P
Botnet and Bobax that used Http as its C&C.
A common approach for detecting spam is the use of DNS
Black/Black Hole List (DNSBL) such as
(http://www.dnsbl.info/dnsbl-list.php). DNSBLs specify a list
of spam senders’ IP addresses and SMTP servers are blocking
the mail according to this list. This method is not efficient for
bot-infected hosts, because legitimate IP addresses may be
used for sending spam in our network. Creation or misuse of
SMTP mail relays for spam is one of the most well-known
exploitation of Botnets. As we know user-level client mail
application use SMTP for sending messages to mail server for
relaying. However for receiving messages, client application
usually use Post Office Protocol (POP) or the Internet
Message Access Protocol (IMAP) to access the mail box on a
mail server. Our idea in this part is very simple and efficient.
42 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Our target here is not recognizing which email message is
spam, though for detecting group of bots that sending spam
with detecting similarities among their actions and behaviors.
Therefore the content of emails from internal network to
external network is not important in our solution. All we want
to do is determining which clients have been infected by bot
and are sending spam. For reaching to this target, we are
focusing on the number of emails sending by clients to
different mail servers. Based on our experience in our lab,
using different external mail servers for many times by same
client is an indication of possible malicious activities. It means
that it is unusual that a client in our network send many emails
to the same mail server (SMTP server) in the period of time
like one day. Therefore, we are inspecting outgoing traffic
from our network( gateway), and recording SIP and DIP of
those traffics that destination ports are 25( SMTP) or
587(Submission) in the database. Based on network flows
between internal hosts and external computers( SIP belong to
mail servers) and the number of times that it can happen we
can conclude which internal host is behaving unusual and are
sending many emails to different or same mail servers.
E. Analyzer
Analyzer which is the last part of our proposed framework
for detection of Botnets, is responsible for finding common
hosts that appeared in the results of previous parts (Traffic
Monitoring and Malicious Activity Detector).
F. Monitoring and Clustering
Since the architecture of communication between IRC
server and bots is one-to-many (multicast) model, thus; the
network flows to all bots should show similar characteristic
and pattern. Our objective in this part is detection of IRC
based Botnet by monitoring network traffics. Our approach in
this part is based on identifying hosts that are likely part of a
Botnet before initiating an attack, particularly during the time
that IRC server commanding or updating their bots.
Monitoring & Clustering is responsible to inspect network
traffics and clustering the similar characteristics of network
flows. Consequently, we are capturing network flows and
record some special information in each flow. We are using
ARGUS for monitoring flows and record information that we
need in this part. Each flow record has following information:
Source IP(SIP) address, Destination IP(DIP) address, Source
Port(SPORT), Destination Port(DPORT), Duration(Dr),
Protocol(Pr), Packet Arrival Time(PAT), Number of packets
(np) and Number of bytes (nb) transferred in both directions.
Then, we insert this information in a data base as shown in
Table 3, in which {fi}i=1…n are network flows.
After this stage, we specify the period of time which is 6
hours and during each 6 hours, all n flows that have same
Source IP, Destination IP, Source port, Destination port,
Packet Arrival Time (PAT) and same protocol (TCP or UDP),
are marked and then for each network flow (row) we calculate
nbps and nbpp based on formula that mentioned earlier.



Table 3. Recorded information of network flows
fi SIP DIP Sport Dport Dr Pr PAT np nb
f1
f2
.
.

fn

Then, we insert these two new values (nbps and nbpp)
including SIP and DIP of the flows that have been marked into
another database, similar to Table 2. Therefore, during the
specified period of time (6 hours), we might have a set of
database,{di}i=1…m in which each of these databases has the
same SIP, DIP, DPORT, PAT and protocol (TCP/UDP). We
are focusing just at TCP and UDP protocols in this part. These
databases are sent to next stage, Flows analyzer, for finding
similar databases.
G. Flows Analyzer
Flows Analyzer is responsible for looking a group of
databases that are similar to each other. The comparison and
finding analogous databases is similar to approach that has
been described in Traffic Monitoring component. After
finding similar databases we have to take a record of SIP
addresses of those hosts and send them as a group of bot that
are belong to IRC based Botnet.
V. CONCLUSION
The first seminar on Botnets was hold in 2007 and since
then many Botnet detection techniques have been proposed
and also some real bot detection systems have been
implemented (e.g. BotHunter by Gu et al. [16]). Botnet
detection is a challenging problem. In this paper at first we
have defined taxonomy for better understanding of Botnets.
Then we proposed a new general detection framework which
currently focuses on P2P based Botnets and IRC based
Botnets. This proposed framework is based on the definition
of Botnets. Botnets have been defined as a group of bots that
will perform similar communication and malicious activities
pattern within the same Botnet. The point that distinguishes
our proposed detection framework from many other similar
works is that there is no need for prior knowledge of Botnets
such as Botnet signature. In addition, we plan to further
improve the efficiency of our proposed detection framework
with adding unique detection method in HTTP part and make
it as one general system for detection of Botnet and try to
implement it in near future.
ACKNOWLEDGMENT
The authors would like to express their appreciation to
Universiti Teknologi Malaysia (UTM) for their invaluable
supports (technically & financially) in encouraging the authors
to publish this paper.



43 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
REFERENCES
[1] P. Barford and V.Yagneswaran, “An Inside Look at Botnets”. In: Special
Workshop on Malware Detection, Advances in Information Security,
Springer, Heidelberg (2006).
[2] N. Ianelli, A. Hackworth, Botnets as a Vehicle for Online Crime, CERT,
December 2005.
[3] E. Cooke, F. Jahanian, and D. McPherson, “The zombie roundup:
Understandinng, detecting, and disrupting Botnets,” Proc. of Workshop
on Steps to Reducing Unwanted Traffic on the Internet (SRUTI'05),
June 2005.
[4] Honeynet Project, Know your Enemy: Tracking Botnets, March
2005.http://www.honeynet.org/papers/bots
[5] M.A Rajab, J. Zarfoss, F. Monrose, and A. Terzis, “A multifaceted
approach to understanding the Botnet phenomenon,” 6th ACM
SIGCOMM on Internet Measurement Conference, IMC 2006, 2006, pp.
41-52
[6] Zeidanloo, H.R.; Manaf, A.A. “Botnet Command and Control
Mechanisms”,. Second International Conference on Computer and
Electrical Engineering, 2009. ICCEE '09. Page(s): 564 – 568 .2009
[7] Duc T. Ha, Guanhua Yan, Stephan Eidenbenz, Hung Q. Ngo. On the
Effectiveness of Structural Detection and Defense Against P2P-based
Botnet, Proceedings of the 39th Annual IEEE/IFIP International
Conference on Dependable Systems and Networks (DSN'09), June
2009
[8] J. Oikerinen , D. Reed. Internet Relay Chat protocol .May 1993. Web
publication. Available at URL :
http://tools.ietf.org/html/rfc1459#section-1
[9] J. B. Grizzard, V. Sharma, C. Nunnery, B. B. Kang, and D. Dagon. Peer-
to-peer Botnets: Overview and case study. In Proceedings of USENIX
HotBots’07, 2007.
[10] J.Stewart.Bobax Trojan analysis.
http://www.secureworks.com/research/threats/bobax/
[11] Daswani N, Stoppelman M, the Google Click Quality and Security
Teams. The anatomy of ClickBot.A. In: Proc. of the 1st Workshop on
Hot Topics in Understanding Botnets(HotBots 2007). 2007.
[12] Chiang K, Lloyd L. A case study of the rustock rootkit and spam Bot.
In: Proc. of the 1
st
Workshop on Hot Topics in Understanding Botnets
(HotBots 2007). 2007.
[13] Guofei Gu, Junjie Zhang, and Wenke Lee. "BotSniffer: Detecting Botnet
Command and Control Channels in Network Traffic." In Proceedings of
the 15
th
Annual Network and Distributed System Security
Symposium (NDSS'08), San Diego, CA, February2008.
[14] R. Binkley and S. Singh. An algorithm for anomaly-based Botnet
detection. In Proceedings of USENIX SRUTI’06, pages 43–48, July 2006
[15] J. Goebel and T. Holz. Rishi: Identify bot contaminated hosts by irc
nickname evaluation. In Proceedings of USENIX HotBots’07, 2007.
[16] G. Gu, P. Porras, V. Yegneswaran, M. Fong, and W. Lee. BotHunter:
Detecting malware infection through ids-driven dialog correlation. In
Proceedings of the 16th USENIX Security Symposium (Security’07),
2007.
[17] A. Karasaridis, B. Rexroad, and D. Hoeflin. Widescale Botnet detection
and characterization. In Proceedings of USENIX HotBots’07, 2007.
[18] W. T. Strayer, R.Walsh, C. Livadas, andD. Lapsley. Detecting Botnets
with tight command and control. In Proceedings of the 31st IEEE
Conference onLocal Computer Networks (LCN’06), 2006.
[19] R. Lemos. Bot software looks to improve peerage.
Http://www.securityfocus.com/news/11390, 2006.
[20] Z. Zhu, G. Lu, Y. Chen, Z. J. Fu, P.Roberts, K. Han, "Botnet Research
Survey," in Proc. 32nd Annual IEEE International Conference on
Computer Software and Applications (COMPSAC '08), 2008, pp.967-
972.
[21] A. Ramachandran and N. Feamster, “Understanding the network-level
behavior of spammers,” in Proc. ACM SIGCOMM, 2006.
[22] K. K. R. Choo, “Zombies and Botnets,” Trends and issues in crime and
criminal justice, no. 333, Australian Institute of Criminology,
Canberra,March 2007.
[23] M. Vrable, J. Ma, J. Chen, D. Moore, E.Vandekieft, A. C. Snoeren,
G.M. Voelker, and S.Savage,” Scalability, Fidelity and Containment in
the Potemkin Virtual Honeyfarm,” in Proc. ACM SIGOPS
OperatingSystem Review, vol. 39(5), pp. 148–162, 2005.
[24] F. Freiling, T. Holz, and G. Wicherski, “Botnet tracking: Exploring a
root-cause methodology to prevent distributed denial-of-service attacks,”
in Proc. 10th European Symposium on Research in Computer Security
(ESORICS), vol. Lecture Notes in Computer Science 3676, September
2005, pp. 319–335
[25] D. Dagon, C. Zou, and W. Lee, “Modeling Botnet propagation using
time zones,” in Proc. 13th Network and Distributed System Security
Symposium (NDSS’06), 2006
[26] J. Oberheide, M. Karir, and Z.M. Mao, “Characterizing Dark DNS
Behavior,” in Proc. 4th nternational Conference on Detection of
Intrusions and Malware, and Vulnerability Assessment, 2007.
[27] Snort IDS web page. http://www.snort.org, March 2006.
[28] B. Saha and A, Gairola, “Botnet: An overview,” CERT-In White
PaperCIWP-2005-05, 2005.
[29] H. Choi, H. Lee, H. Lee, and H. Kim, “Botnet Detection by Monitoring
Group Activities in DNS Traffic,” in Proc. 7th IEEE International
Conference on Computer and Information Technology (CIT 2007),
2007,pp.715-720.
[30] R.Villamarin-Salomon and J.C. Brustoloni, “Identifying Botnets Using
Anomaly Detection Techniques Applied to DNS Traffic,” in Proc. 5
th

IEEE Consumer Communications and Networking Conference
(CCNC2008), 2008, pp. 476-481.
[31] D. Dagon, “Botnet Detection and Response, The Network is the
Infection,” in OARC Workshop, 2005.
[32] J. Kristoff, “Botnets,” in 32nd Meeting of the North American Network
Operators Group, 2004.
[33] W. Strayer, D. Lapsley, B. Walsh, and C. Livadas, Botnet Detection
Based on Network Behavior, ser. Advances in Information
Security.Springer, 2008, PP. 1-24.
[34] M. M. Masud, T. Al-khateeb, L. Khan, B. Thuraisingham, K.
W.Hamlen, “ Flow-based identification of Botnet traffic by mining
multiple in Proc. International Conference on Distributed Framework&
Application,Penang,Malaysia.2008
[35] G. Gu, R. Perdisci, J. Zhang, and W. Lee, “Botminer: Clustering
analysis of network traffic for protocol- and structure independent
Botnet detection,” in Proc. 17th USENIX Security Symposium, 2008
[36] http://en.wikipedia.org/wiki/Handshaking
[37] J. Rayome. “ IRC on your dime? What you really need about Internet
Relay Chat, CIAC/LLNL. May 22, 1998
[38] HTTP Made Really Easy, http://www.jmarshall.com/easy/http
[39] T. Karagiannis, A.Broido, M. Faloutsos, and kc claffy. Transport layer
identification of P2P traffic. In ACM/SIGCOMM IMC, 2004.
[40] T. Karagiannis, A.Broido, N.Brownlee, kc claffy, and M.Faloutsos. Is
P2P dying or just hiding? In IEEE Globecom 2004, GI.
[41] S. Sen, O. Spatscheck, and D. Wang. Accurate, Scalable In-Network
Identification of P2P Traffic Using Application Signatures. In WWW,
2004
[42] T. Karagiannis, K. Papagiannaki, and M. Faloutsos, "BLINC:multilevel
traffic classification in the dark," In Proceedings of the 2005 Conference
on Applications, Technologies, Architectures, and Protocols for
Computer Communications, pp. 229-240, Philadelphia, Pennsylvania,
2005
[43] Argus (Audit Record Generation and Utilization System,
http://www.qosient.com/argus)
[44] Collins, m., Shimeall, t., Faber, s., Janies, j., Weaver, R.Shon, M.D.,and
Kadane,j. “using uncleanliness to predict future Botnet addresses”. In
Proceedings ACM/USENIX Internet Measurement Conference.2007
[45] ZHUGE, J., HOLZ, T., HAN, X., GUO, J., and ZOU, W.,
“Characterizing the ircbased Botnet phenomenon.” Peking University&
University ofMannheim Technical Report, 2007.
[46] Nmap — free security scanner for network exploration & security
audits. http://www.insecure.org/nmap/.
44 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
[47] L. T. Heberlein, G. V. Dias, K. N. Levitt, B. Mukherjee, J.Wood, and
D.Wolber. A network security monitor. In Proc.IEEE Symposium on
Research in Security and Privacy, pages 296–304, 1990.
[48] JUNG, J., PAXSON, V., BERGER, A. W., and BALAKRISHNAN, H.,
“Fast Portscan Detection Using Sequential Hypothesis Testing,” in IEEE
Symposium on Security and Privacy 2004, (Oakland, CA), May 2004
[49] S. Staniford, J. A. Hoagland, and J. M. McAlerney. Practical automated
detection of stealthy portscans. In Proceedings of the 7th ACM
Conference on Computer and Communications Security, Athens,
Greece, 2000.
[50] WARD, M., “More than 95% of e-mail is ’junk’.”
http://news.bbc.co.uk/1/hi/technology/5219554.stm, 2006.


AUTHORS PROFILE

Hossein Rouhani Zeidanloo received his B.Sc.
in software engineering from Meybod University, Iran. He is
currently completing his Master’s degree in Information
Security at the Universiti Teknologi Malaysia (UTM). He has
published two papers in international journals and also
published many papers in international conferences around the
world. His area of interest is Network Security and Ethical
Hacking.



















Azizah Abdul Manaf is a Professor at
Universiti Teknology Malaysia (UTM). She graduated with B.
Eng. (Electrical) 1980, MSc. Computer Science (1985) and
PhD in 1995 from UTM. Her current areas of interest and
research are image processing, watermarking, steganography,
Information Security, Botnets and Worm, Intrusion Detection
and computer forensics and have postgraduate students at the
Masters and PhD level to assist her in these research areas.
She has written numerous articles in journals and presented an
extensive amount of papers at national and international
conferences on her research areas. Prof. Dr. Azizah has also
held management positions at the University and Faculty level
such as Head of Department, Deputy Dean, Deputy Director
and Academic Director pertaining to academic development as
well as on training for teaching and learning methodologies at
UTM.



























45 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
JawaT
E
X: A System for Typesetting Javanese
Ema Utami
1
, Jazi Eko Istiyanto
2
, Sri Hartati
3
, Marsono
4
, and Ahmad Ashari
5
1
Information System Major of STMIK AMIKOM Yogyakarta
Ring Road Utara ST, Condong Catur, Depok Sleman Yogyakarta
Telp. (0274) 884201-884206, Faks. (0274) 884208
Candidate Doctor of Computer Science of Postgraduate School Gadjah Mada University
2,3,5
Doctoral Program in Computer Science
Graha Student Internet Center (SIC) 3rd floor
Faculty of Mathematic and Natural Sciences Gadjah Mada University
Sekip Utara Bulaksumur Yogyakarta. 55281
Telp/Fax: (0274) 522443
4
Sastra Nusantara Major of Culture Sciences Gadjah Mada University
Humaniora ST No.1, Bulaksumur, Yogyakarta
Fax. (0274) 550451
1
emma@nrar.net,
2
jazi@ugm.ac.id,
3
shartati@ugm.ac.id,
4
nusantara@ugm.ac.id,
5
ashari@ugm.ac.id
Abstract
Transliteration of Latin text to Javanese letter is a letter
substitution from Latin alphabet to Javanese alphabet. Re-
searches about transliteration of Latin text document to Ja-
vanese letter in digital forms are still very few. At this mo-
ment some researches focus on making font that is used for
a software of word processing. Write Javanese letters by
using the font, the user must have good knowledge in read-
ing and writing Javanese letters and the user is expected to
memorize the symbols and certain complicated Latin letters
to obtain the expected Javanese letters. Another researches
are conversion programs but the weaknesses of those pro-
grams are the conversion result is not easy to be transliter-
ated to other media or printed, not all programs can convert
a text file and the result of conversion is not in accordance
with the rule. In addition, not all Latin character writing
can be transliterated to Javanese characters.
This research is the beginning phase to overcome the
problems of Latin-Javanese text document transliteration.
Therefore it is necessary to build the transliteration model
named JawaT
E
X to transliterate the Latin text document
to Javanese characters.The parser method used in this re-
search is The Context Free Recursive Descent Parser. The
Latin text document processing becomes the list of the Latin
string split pattern by using rule-based method, whereas the
matching process of each Latin string split pattern in map-
ping form of L
A
T
E
X uses Pattern Matching method. The us-
ing of rule-based method can solved problems of the previ-
ous reseraches by using certain methods. The established
transliteration model is supported by the production rule of
browsing the Latin string split pattern, the models of the
Latin string split pattern, the production rule for the Latin-
Javanese character mapping, the models of syntax coding
pattern, style or macro L
A
T
E
X, Javanese character Metafont.
The spelling checker to correct the mistake of letter typing
by applying Brute Force algorithm also provided within sys-
tem.
Several testing results above prove that if the user can
write every word correctly including absorption suitable
with the original pronunciation and write or re-arrange the
Latin spelling in the source text, so the transliteration model
of the Latin text document to Javanese character formed
can be used to transliterate the Latin text document to Ja-
vanese character writing. The concept of the text document
split and the established transliteration in this article can
be used as a basis to develop other cases. For the next re-
search, the Javanese character split writing in good form
still needs to be developed. The Javanese character writing
sometimes cannot be justified alignment since the Javanese
1
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
46 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
character writing does not recognize space between words.
Key words: transliteration, Javanese characters, type-
setting, The Context Free Recursive Descent Parser, Pattern
Matching, rule based, Brute Force, L
A
T
E
X, JawaT
E
X
1 INTRODUCTION
In many countries research has been done to develop char-
acter computeration for their local culture. Latin to Javanese
character transliteration machine is one of research field in
linguistic computational. There is just a little research at
this field in Indonesia than other countries [13]. At this
moment there are already two Javanese character true type
font. The fonts were made by Teguh Budi Sayoga [10] and
Jason Glavy [4]. Those fonts are using in word processor
such as Microsoft Word and Open Office [10, 4]. When
using those fonts users have to remember several formats,
for example the Javanese sentence: aksara jawi punika tek-
sih kathah kekiranganipun thus the Latin character that we
have to wrote are ?aksrjwipunika [tkSih kqh kekirqnNipun/.
How Javanese characters adapt to recent growth of trea-
sury words? It is impossible to restrict the input of Latin
characters that will be transliterated to Javanese charac-
ters [15]. For example, the foreign society having com-
plex words treasury, including person name, place name, or-
ganization name where there were consonant combination
that likely impossible happened at Javanese character writ-
ing. Beside that not all Latin characters have equivalance
to existing Javanese characters [16]. At this moment there
were several rules in Javanese grammar were not relevant to
do transliteration because of there are a lot of words in the
worlds that not having equivalance in Javanese characters.
None researchers have already developed algorithm to han-
dle writing Javanese character for x and q Latin characters,
multiple consonant (more that two sequences consonant),
diftong, roman numbering system, accomodates space, dash
and period to avoid ambiguity [13]. Grammar or rule to
write Javanese character in relevation with huge of words
at this time need to be considered. The rules that are not
relevant need to be revised by coordination with Javanese
expert.
Transliteration research using T
E
X/L
A
T
E
X and Metafont
has not been done yet [13]. So this paper is new research in
this field (Latin to Javanese character transliteration using
T
E
X/L
A
T
E
X [13]. By knowing all the problems, advantages
and disadvantages of the existing research are needeed to
make font based on Metafont and transliterator from Latin
to Javanese character using T
E
X/L
A
T
E
X that we call JawaT
E
X
(Javanese Typesetting and Transliteration Text Document).
JawaT
E
Xis intended to write Javanese character simpler and
easier based on complex transliteration algoritm. Translit-
eration model in this paper did not focus in font making but
more in document transliteration. The input text that was
used in this transliteration was native text characters writ-
ten in Latin. So the scope is not only Javanese society that
know Javanese character but also at society that uses Latin
character [16].
2 NATURAL LANGUAGE PRO-
CESSING
Parser is base system in natural language processing. Parser
is sub program or system that read every sentence, word by
word to define ”what is what” [11]. Parsing is process for
command extraction in natural language. There are 3 kinds
of parsers, The State Machine Parser, The Context Free Re-
cursive Descent Parser and The Noise Diposal Parser. At
The State Machine Parser, process is done by following
the rule that depends on recent situation. At the Context
Free Recursive Descent Parser a sentence is seen as group
of items, which each item is also arranged by other items
and at the end it can be broken as atomic item [11]. The
rule that arranges how each part can be built is called as
production rule from grammar. The Noise Diposal Parser is
done by removing words that are not important, like making
transcription.
String matching, how to find all possibility of occurrence
of x string with length of m, is often called pattern on other
string t with n length called text [1]. String matching is pro-
cess to find string characters form pattern in other string or
text document content [9, 2]. Pattern Matching can be dev-
ided into two model, there are exact string matching and in-
exact string matching or fuzzy string matching [5]. Inexact
string matching are divided into two model, first approxi-
mate string matching [3] and second phonetic string match-
ing [5]. String searching involve two point, text (string
with characters length) and pattern (string with char-
acters length ( < )) that will be search in the text [8].
There are several string searching algorithms, for example
are Brute Force Algorithm, Knuth Morris Pratt and Bayer
Moore [12]. Each algorithm has their advantage and disad-
vantage [9]. One algorithm is better form other in special
case but in other case could be the other is more effective
finding solution [19]. Brute Force algorithm comparing to
the other is simple and strong [6]. In this research was used
Brute Force algorithm because degree of succesfull finding
solution is 100% although having weakness on time process
efficiency [7].
Choosing of parsing method and linguistic computation
that will use depends on the problems that will be faced
[13, 14, 15, 16]. This research used Pattern Matching to
transliterate Latin string that is written by user because
177 models for building transliteration text document have
been determined. Production rules to Latin string split pro-
duce 177 Latin string split models that can be expended to
2
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
47 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
produce more than 280490 Latin string split patterns [18].
String which will be transliterated is sequence ASCII char-
acter in text document, not graphic document) so it is not
necessary to train. Pattern matching is the act of check-
ing for the presence of the constituents of a given pattern
or model. Pattern matching is used to check wanted struc-
ture on something, to look for relevant structure, to get part
wanted and to change part which is looked with others. Pat-
tern matching is used to find relevant Latin string break-
ing pattern model from every Latin string breaking pattern
got from syntax analysis. Every model has own production
rule for transliteration. Those production rules make pre-
cise transliteration fromLatin string breaking pattern to des-
tination character. This method needs some consideration
such as, getting the correct Latin string pattern, sometimes
backwards searching is needed in addition that to determine
the first character at Latin string breaking searching process
there are some methods depending on condition of charac-
ters around it. This situation can use method The Context
Free Recursive Descent Parser. Sometimes parsing is not
only used at source string but also on the result of process-
ing string. At formal language theory, every language has
consistency and standard grammar. In fact, it is impossible
to bind string that will be substituted to Javanese charac-
ter. So that new rules were needed to revise some irrele-
vant rules. A character in input string, for example Latin
consonant can have more than one possibility of alphabet
in Javanese depending on character that follow that conso-
nant. The period also has possibility as indication finishing
sentences, decimal or abbreviation so it will influence how
that character build Latin string split pattern. Transliteration
model in this paper follows the production rule for check-
ing and breaking Latin string by splitting Latin string un-
til smallest token. The smallest token was split Latin string
pattern form. The rule in transliteration model was made ac-
cording to linguistic knowledge of writing Javanese script.
3 JawaT
E
X TRANSLITERATOR
CONCEPT
The schema process of Latin to Javanese character translit-
eration with L
A
T
E
X is in figure 1.
Text document that would transliterated to Javanese
character was written using text editor. Before Latin string
split pattern are browsing, the state from every words must
be known. Error checking possibility that happened on writ-
ing of the text source done by matching with dictionary
[14]. So the sensitivity or accuracy depends on the com-
pleteness of words list in the dictionary. Words search-
ing in the dictionary were doing using Brute Force algo-
rithm, every time found unmatching pattern with text the
pattern shifted one character to right. This spell checker fa-
cility made to find word similarity to correct error spelling
word. Words checking process consists two words check-
ing, Indonesian language consist 7962 words and English
language consist 29759 words [17]. If words having simi-
larity with Indonesian then words will be saved on tempo-
rary then checking doing on English. If there were not in the
database then the words still can be replaced by new input.
Parsing in text document was done to get token from
sequences of characters that build text document and read
from left to right. The result of parsing process was token
list, composed of sequences of characters, the composer text
document. Token list is broken into set of characters, the
composer of Latin string. Syntax analysis did token check-
ing and compares with token list and matches with produc-
tion rule [16]. Ambiguity problems that raise when Latin
were transliterated into Javanese characters were prevented
by handling space character [13]. The list of tokens were di-
vided into pieces of syllables of Latin string composer. Syn-
tax analysis tracked down the character or token to be com-
pared with the available token list and matched with pro-
duction rules of checking and breaking the available Latin
string. The Latin string split must accomadate the handling
of ambiguity problem [14]. This splitting will determine the
structure of Latin string split pattern obtained. So it must be
determined which character becomes the fundamental char-
acter, which character expresses pasangan character and so
on [16].
The structure of split Latin string pattern which have
been obtained here then is matched with the Pattern Match-
ing production rule to get relevant pattern of writing Ja-
vanese character [14]. So production rules were used for
spliting Latin string and obtaining transliteration pattern.
Next process was looking for the relevant mapping translit-
eration pattern to replace the part of the split Latin string
pattern become the Javanese character which first determine
the position of Javanese character. This rule was used to
replace the part of relevant mapping transliteration to Ja-
vanese character with first determining the situation or po-
sition of Javanese character [17, 18].
Intermediate text is document with T
E
X/L
A
T
E
X code and
syntax. The code and syntax will be used to transliterate
split Latin string pattern that the Javanese character posi-
tions were known. Intermediate text is a text document with
extention .tex that follows right rule to write Javanese
character [13]. Metafont is used to design and create Ja-
vanese character look like or font. The Javanese font were
written and saved using text editor in file Jawa.mf. Meta-
font program then use to converted Jawa.mf became T
E
X
font codes, .gf and .tfm. Metafont is a language program
to define vektor font. Metafont also is a compiler that ex-
cecutes Metafont code, converts source code (vector font)
.mf into bitmap font with .gf and and .tfm extention.
JawaT
E
X.sty is a style file or a class file that contains macro
3
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
48 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Figure 1: The schema process of Latin to Javanese character transliteration with L
A
T
E
X
to define all rules that will be used to write Javanese char-
acters [13]. T
E
X documents that were compiled to compose
text document become output that can be seen in monitor
screen. T
E
X Font Metrics (TFM) is used by T
E
X to compile
document. dvi document (.dvi) is compiled result doc-
ument. Generic font (.gf) is compresed into packed font
(.pk) using GftoPK program to obtain smaller size. Pro-
cess to convert (dvi document become document that are
print ready (ps document) use dvips program. The result
of this transliterator was document that contains Javanese
characters as a result of complex rule using L
A
T
E
X and Perl
program.
4 JawaT
E
X TESTING
Testing was done with hardware: processor AMD Atlon XP
2500+, RAM 256 MB and hardisk 40 GB, while the soft-
ware which was used is GNU/Linux Debian 3.1 Sarge op-
erating system, Perl, L
A
T
E
X (e-TeX (Web2C 7.4.5) 3.14159-
2.1) and Metafont ((Web2C 7.4.5) 2.718)). The testing of
application was done by giving Latin text document input
which contains [15]:
1. The sequence of string that has character combination
which is possible to be written in syllable of Javanese
character.
2. The sequence of string Latin that has character combi-
nation which is not possible to be written in syllable of
Javanese character and previously cannot be transliter-
ated to Javanese character.
There are 2 kinds of mechanisms for transliteration using
JawaT
E
X: user need all of document part be transliterated
and user need only part of document be transliterated. If
user need all of document part be transliterated, then every
source text written using text editor and saved in .txt for-
mat [17]. Source text was processed using Perl to produce
correct syllable split pattern according to linguistics knowl-
edge of writing Javanese script and mapping process into
L
A
T
E
X code. So in general text source cultivation include:
file writing and reading process, formatting process, roman
number checking process, spell checker for filtering wrong
words process, and L
A
T
E
X syntax code writing process. This
process produce 3 files which contains:
1. File in rev.txt format contains corrected text doc-
ument after spell checker process.
2. File in .jw format contains list of split Latin string
pattern.
3. File in .tex format contains list of syntax code pat-
tern.
The system of text document split is tested by using
based text file as shown in figure 2.
An example of a Latin text which has never been suc-
cessfully transliterated, because this text contains char-
acter combination which is impossible to happen in Ja-
vanese. The part of processing of document.txt as
shown in figure 3. Corrected text document was saved
as document rev.txt by system [17] and this system
could produced the pattern of Latin string split and by the
system it was saved the file .jw. as shown on figure 4.
The result of the testing showed that the model of sylla-
4
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
49 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Figure 2: File of document.txt
Figure 3: The part of text document processing
Figure 4: File of document.jw
ble browsing could form split pattern which has been in a
line with the existing linguistic knowledge. This transliter-
ator could produce the syntax code pattern and by the sys-
tem it was saved the file .tex. as shown on figure 5. The
Figure 5: File of document.tex
.tex document then being processed L
A
T
E
X by calling syn-
tax code that have been wroten in the L
A
T
E
X file style called
JawaT
E
X.sty. The result is .dvi file that can be processed
be .ps and .pdf file as shown on figure 6. No deletion
Figure 6: File of document.pdf
or removing in the input character that would be transliter-
ated. Latin string is transliterated just the way it is without
transcription (substitution of writing which is suitable by
pronunciation and word).
If user need only part of document be transliterated, then
user write the L
A
T
E
X syntax code. User must having knowl-
edge how to split the syllabic based on writing Javanese
script and remember the syntax code based on JawaT
E
X.
Figure 7 is an example how to write a document that not all
of document part will be transliterated. User write source
text using text editor and saved in .tex format.
File in .tex format which shown in figure 7 then ready
to be compiled using instructions:
ema@debian:˜/JawaTeX/$ latex double.tex
ema@debian:˜/JawaTeX/$ dvips double.dvi
ema@debian:˜/JawaTeX/$ ps2pdf double.ps
5
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
50 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Figure 7: An example how to write a document that not all
of document part will be transliterated
This system could produce file in .pdf format which con-
tains result of transliteration as shown in figure 8. The result
Figure 8: The part of text document processing
of the testing shows that JawaT
E
X has some capabilities:
1. Able to find the word similarity to correct the word
spelling mistakes.
2. Able to read, modify, and insert other characters into
the character of input string in order to fulfill writing
format requirement.
3. Able to handle the writing of Latin characters which
have no equalization in Javanese alphabets.
4. Able to handle the writing of diftong (multiple vocal
characters).
5. Able to handle the writing of roman numbering sys-
tems.
6. Able to accomodate period to avoid ambiguity because
period also has possibility as indication finishing sen-
tences, decimal or abbreviation so it will influence how
that character build split Latin string pattern.
7. Able to accomodate space to avoid ambiguity, because
Javanese character does not recognize space to divide
words.
8. Able to accomodate acute accent to avoid ambiguity.
9. Able to handle the writing of more than three multiple
consonant characters.
10. Able to handle the sequence of string Latin that has
character combination which is not possible to be writ-
ten in syllable of Javanese character and previously
cannot be transliterated to Javanese character.
5 CONCLUSION
The experimental results showed that by using The Context
Free Recursive Descent Parser algorithm, text document in
Latin writing can be processed so that syllable split patterns
can be produced correctly. The produced syllable split pat-
terns were ready to be processed into the next step that is the
process of converting syllable split patterns to be Javanese
character and the mapping of their writing scheme using
Pattern Matching.
Text document transliteration algorithm covers: produc-
tion rules for splitting Latin string that consist of spell
checker, roman number checking, text formatting and Latin
string split pattern browsing, list of split Latin string pattern
models, list of syntax code pattern models, and production
rules were used for transliteration split Latin string pattern
to Javanese character. Every process has own production
rule. By building a set complex of rule, Latin string se-
quence which was written in Latin character could be pro-
cessed so that syllable split patterns could be produced cor-
rectly. Ambiguity problem could be avoided by handling
of space, dash, and period characters, and be expected to
solve complex problem without any problems. The concept
of this transliterator model could improve the existing ma-
chine of Latin string split which was made before.
JawaT
E
X program package contains two program,
checking and breaking Latin string to get the Latin string
split pattern and L
A
T
E
X style to write L
A
T
E
X syntax code.
6
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
51 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
JawaT
E
X also can be used without program of checking and
breaking Latin string, but users must have knowledge about
how to get tokens and write L
A
T
E
X syntax code associated
with that tokens. The concept of checking and breaking
Latin string to get the pattern and the process of convert it
into other character which built in this paper can be used as
the base to be developed in other case.
References
[1] Apostolico, A; Galil, Z., Pattern Matching Algorithms. Ox-
ford University Press. Oxford. UK, 1997
[2] Black, P., Dictionary of Algorithms and Data Structures.
Nasional Institute of Standards and Technology. Online at
www.nist.gov/dads/. 26 June 2008
[3] French, J.; Powell, A.; Schulman, E., Applications of Ap-
proximate Word Matching. ACM ISSN 0-89791-970-x. 1997.
Online at www.cs.virginia.edu/papers/p9-french.pdf. 26 June
2008.
[4] Glavy, J., Asian Fonts. Online at
http://www.geocities.com/jglavy/asian.html. 10 Septem-
ber 2006.
[5] Gusfield, D., Algorithms on Strings, Trees, and Sequences:
Computer Science. Cambridge University Press, 1997.
[6] Guzma, V., Brute Force: Brute Force Algo-
rithm design techniques. Institute of Software Sys-
tems/Tampere University of Technology. 2005. Online at
www.cs.tut.fi/ tiraka/english/material2005/lecture3.pdf. 25
Juni 2008.
[7] Kumar, String Matching Algorithms. Online at
www.mainline.brynmawr.edu/Courses/cs330/spring2008/
ImportantAlgorithms/StringMatching(ESomach).pdf. 25 Juni
2008.
[8] Mohammad, A; Saleh, O; Abdeen, R., Occurrences Al-
gorithm for String Searching Based on Brute-force algo-
rithm. Journal of Computer Science 2(1): 82-85, 2006.
ISSN 1549-3636. Science Publications. 2006. Online at
www.scipub.org/fulltext/jcs/jcs2182-85.pdf. 25 Juni 2008.
[9] Nori, K.; Kumar, S., Foundations of Software Technology and
Theoretical Computer Science. Springer, 1988.
[10] Sayoga, T., The Official Site of Aksara Jawa 2005. Online
pada http://hanacaraka.fateback.com, 10 September 2006.
[11] Schildt; Herbert., Artificial Intelligence Using C. Osborne-
McGraw Hill, California, 1987.
[12] Stephen, G., String Searching Algorithms. World Scientific.
1994.
[13] Utami, E.; Istiyanto, J.; Hartati, S.; Marsono; Ashari, A.,
JawaT
E
X: Javanese Typesetting and Transliteration Text Doc-
ument. Presented at Proceedings of International Conference
on Advanced Computational Intelligence and Its Applica-
tion (ICACIA) 2008, ISBN: 978-979-98352-5-3, 1 September
2008, page 149-153.
[14] Utami, E.; Istiyanto, J.; Hartati, S.; Marsono; Ashari, A., Pe-
manfaatan Teknologi Informasi dan Komunikasi untuk Mem-
bangun Model Transliterasi Dokumen Teks Karakter Latin ke
Aksara Jawa Melalui Komputasi Linguistik sebagai Alternatif
Menarik dalam Melestarikan Kebudayaan Jawa. Presented at
Proceedings of SNASTIA 2008 Surabaya University, ISSN:
1979-3960.
[15] Utami, E.; Istiyanto, J.; Hartati, S.; Marsono; Ashari, A.,
Applying Natural Language Processing in Developing Split
Pattern of Latin Character Text Document According to Lin-
guistic Knowledge of Writing Javanese Script. Presented at
Proceedings of International Graduate Conference on Engi-
neering and Science (IGCES) 2008, ISSN: 1823-3287, 23-24
December 2008, D5.
[16] Utami, E.; Istiyanto, J.; Hartati, S.; Marsono; Ashari, A.,
Applying of The Context Free Recursive Descent Parser and
Pattern Matching Method in Developing Transliteration Pat-
tern of Latin Character Text Document to Javanese Charac-
ter. Presented at Proceedings of International Conference on
Telecommunication (ICTEL) 2008, ISSN: 1858-2982, 20 Au-
gust 2008, page 108-113.
[17] Utami, E.; Istiyanto, J.; Hartati, S.; Marsono; Ashari, A., Text
Document Split Pattern Browsing Based on Linguistic Knowl-
edge of Writing Javanese Script using Natural Language Pro-
cessing. Presented at Proceedings of International Conference
on Rural Information and Communication Technology 2009,
ISBN: 978-979-15509-4-9, 17-18 Juni 2009, 372-377
[18] Utami, E.; Istiyanto, J.; Hartati, S.; Marsono; Ashari, A., De-
veloping Transliteration Pattern of Latin Character Text Doc-
ument Algorithm Based on Linguistics Knowledge of Writ-
ing Javanese Script. Proceeding of International Conference
on Intrumentation, Communication, Information Technology
and Biomedical Engineering (ICICI-BME) 2009, ISBN: 978-
979-1344-67-8, IEEE: CFPO987H-CDR, 23-25 November
2009
[19] Ute, A., String Matching Proseminar ”Algo-
rithmen”. Prof. Brandenburg. Sommersemester
2001. Online at www.infosun.fim.uni-
passau.de/br/lehrstuhl/Kurse/Proseminar ss01/Abel.pdf.
25 Juni 2008
7
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
52 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
EFFECTIVE QUERY RETRIEVAL SYSTEM IN MOBILE BUSINESS
ENVIRONMENT
1
R.Sivaraman,
2
RM.Chandrasekaran
1
Dy.Director, Center for Convergence of Technologies (CCT), Anna University Tiruchirappalli, Tiruchirappalli, Tamil
Nadu, India
email: rsiva.raman@yahoo.com
2
Registrar, Anna University Tiruchirappalli, Tiruchirappalli, Tamil Nadu, India
Email: aurmc@sify.com


Abstract
Web Based Query Management System (WBQMS) is a
methodology to design and to implement Mobile Business, in
which a server is the gateway to connect databases with clients
which sends requests and receives responses in a distributive
manner. The gateway, which communicates with mobile phone
via GSM Modem, receives the coded queries from users and
sends packed results back. The software which communicates
with the gateway system via SHORT MESSAGE, packs users’
requests, IDs and codes, and sends the package to the gateway;
then interprets the packed data for the users to read on a page of
GUI. Whenever and wherever they are, the customer can query
the information by sending messages through the client device
which may be mobile phone or PC. The mobile clients can get the
appropriate services through the mobile business architecture in
distributed environment. The messages are secured through the
client side encoding mechanism to avoid the intruders. The
gateway system is programmed by Java, while the software at
clients by J2ME and the database is created by Oracle for
reliable and interoperable services.
Key words: Query, J2ME, Reliability, Database and Midlet
I. INTRODUCTION
Due to the growth of Mobile network and data
management schemes, mobile business has drawn attention by
more customers in distributive environment. As a result, it
must determine how to deliver compelling applications to
ensure that data services to fulfill their potential requirements.
In order to provide mobile business applications to the
consumers, it is necessary to store and retrieve persistent
information on the mobile device as well as access remote
information stored on a remote DBMS host from the mobile
device. The storage of information on the mobile device is
necessary because a business application can stop suddenly
due to different reasons, such as, an incoming call phone or
because the device runs out of battery.
As of now, most of the web based query management
schemes are in preliminary stage only, and the goal of this
query system is to achieve that can be achieved by PC but
now by mobile phones.
With an short message based query message, data could
be retrieved by customers in mobile business environment and
unnecessary time would not be wasted. Due to the reliable
nature of short message, the consumers will receive the
message even if their phone is turned off at that time.
The short message in web based Query management
system described in this paper is the interaction short message,
which gives only the requested information.

II. RELATED WORK

As of now, most of the existing web based business query
management scheme is in preliminary stage only, for example,
a small number of query via short message are encoded in
PDU (Packet Data Unit) format, which will increase the cost
when the payload increases and it also leads to sending more
than one message if the requested payload is large. So the
traditional PDU method is not suitable for mobile business
queries in web based distributed environment.

III. PROPOSED BUSINESS QUERY STRUCTURE

Web based mobile business query structure proposed here
is differed from the traditional PDU format, uses request and
response short message, which makes use of short message to
achieve two-way delivery of information. Message of this
business gateway system, which in special data structure, is
encoded in Text mode based on AT commands as compared
to PDU format in traditional method, and that will greatly
shorten the length of short message since the message is coded
into a standard format.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
53 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
The structure of the mobile business Querying System for
Academic Education which is composed of mobile phone,
data source server (Business Data Management) and the
gateway, is given below.

Fig.1 Structure of mobile business query system

The application software which communicates with the
gateway system via short message connection packs the query
code, User ID and Password and sends encoded package to
the gateway. The gateway will receive the coded queries from
customers, retrieve the data according to the query code and
sends packed results back. The software at client side, then
interprets the packed data for the users to read on a page of
GUI. The system can be extended to support GPRS, CDMA,
Bluetooth and other communication protocols.
Gateway must be setup in such a manner as shown in Fig.
1 to establish short message connection between mobile
phones and data management system host. The gateway is
composed of Communication Interface Module, Processing
Module and Data Source Interface Module. This work takes
educational query as an example to analyze the
implementation of web based mobile business query system.

IV. THE BUSINESS GATEWAY SYSTEM

Mobile business Query based on short message is
achieved by the connection between the server, SHORT
MESSAGE and database management system.
When business application installed in mobile phones is
initiated, and then user has to select any one business query
from the available choices and sends the packed query
information in the form of short message to the gateway
system. Communication interface module which is connected
serially to the Processing module will receive the short
message and gives it to the processing module. Processing
module decodes the received business query message and
fetches the user’s query information (query code, User ID, and
Password) and first checks whether the user is valid to query
the business information or not. Processing module then
converts the query information to SQL and queries the
database according to the business query code. Finally the
results which are encoded into short message are sent back to
the user’s destination number through short message. The
software application in mobile device displays the results in
the form of text. That’s called a complete query.

A. Communication Interface Module

Communication Interface Module establishes a
communication channel between mobile phones and
communication module via short message connection. A
database is created in communication interface module to
store the information of short messages such as user’s phone
number, user ID, Date/Time, query code etc. The Database
also has four tables to increase the reliability of the mobile
business query system, they are, InBox table, OutBox table,
BackUp table and FailureSend table.

1) InBox Table: InBox table is used store the received
business query messages from the serial communication port
before processing that short messages. Processing module,
which is always monitoring InBox table and fetches one
message at each time when there are messages in this table.

2) OutBox Table: OutBox table stores the messages that
are waiting for being sent to the corresponding mobile phone
numbers. Once the message has been sent, it is cleared from
the OutBox table and starts sending the next message from the
table.

3) BackUp Table: When processing module has finished
the query process of short messages, then processing module
clears the short message from InBox table and preserves it to
the BackUp table for future use. All short messages in
BackUp table will be removed every week.

4) FailureSend Table: A business application can stop
suddenly at any point of time. FailureSend table stores
messages that didn’t be sent due to some failures like network
failure, out of range and battery failure etc., Processing
Module checks whether there is a message in this table after a
particular period of time if yes then fetches the message(s) and
sends it into OutBox table after re-set up.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
54 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
B. Back end (Web) Module
  The Processing Module, which is responsible to provide
the interface between the communication interface module
and data management server together and ensures the
complete implementation of the mobile business query
function. Once the system is started, web module of the
business system monitors the InBox Table and it deals with
one message each time according to First Come First Serve
(FCFS) basis. This module fetches sender’s number and sends
it to ReceiverMobileNo field of OutBox table, then fetches the
contents from the message which includes three data’s for
further processing: query content, student’s ID number or
teacher’s number, and password.
First Web Module authenticate whether the user is legal
according to user’s ID and password using SHORT
MESSAGE database which is extracted from the message,
then determines which database should be queried after
integrates query information, –query content and additional
element, and generates SQL to query database, finally puts the
message into OutBox table of Communication Interface
Module waiting for being sent. Progressing Module takes
multi-thread technique to judge the query.
Since customer’s request message arrives at a random
time, there are a number of messages arrive within a certain
period of time. Moreover, the procedure of processing every
customer’s query message from querying database to sending
messages by GSM Modem should be safe and reliable.
Consequently multi-thread technique is exerted in the whole
program. Main thread creates a new sub-thread for each query
process when there is a new message. The sub-thread
processes the new message and won’t be released until the
result is sent back to user.
C. Data Management Module

The data management server which has been created
using oracle for education department includes: students’
score table, students’ credit table, students’ exam schedule
table, teachers’ information table, teachers’ schedule table.
Inquiry of business is carried out by connecting to the
database server and table which has been confirmed according
to query content extracted from the message.

V. THE BUSINESS SOFTWARE IMPLEMENTATION

As short messaging services is based on store and forward
mechanism, the transportation of messages is safe and
reliable. The business query system designed in this paper
combines both Advanced User Interface and Low-level User
Interface to a portable, extensible component of GUI on
account of different mobile terminals and functions.
The application software of the mobile business is
composed of four layers; they are user interface, record
management system (RMS), the application software and
Embedded OS.

User Interface
Record Management System (RMS)
J2ME Application Software
Embedded OS

Fig.2 Layers of Business Software Implementation

A. Sending Module

Two forms are created using J2ME technology and is
visualized by customers using Graphical User Interface (GUI)
which is provided by sending module. First a Form is
designed to provide query content for users to select from the
list available choices. When users finished their choices, click
“OK” button to go into another Form in which there are two
TextFields for users to input their user IDs and passwords.
This module then transforms query content, user ID and
password into digital code after users finished selecting the
choices. This can greatly shorten the length of short message.
The sending module starts a new thread when user clicks the
“send” button to avoid no response due to network blocking,
no coverage etc.,
First, short message connection is established through
Connector.open(url) method of message connection, in which
the connection between the client mode and appropriate port
number are set. Host number of destination address is the SIM
card number of the GSM modem and destination address is
indicated in sending module program.


B. Receiving Module
Receiving the result message of business query takes use
of Push mechanism. After the introduction of MIDP2.0,
Midlet applications can startup asynchronously through
network connection.
A Midlet application of receiving messages is registered
into a Push Registry through a push event by means of static
registration. When there is a new message arrives the
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
55 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
application manager creates a new instance of receiving
message by new() method and invokes startApp() method to
activate this Midlet. ListConnection() method is used to
establish Message connection and open() method is invoked to
open and process message. The connection will close after the
process is finished.
As soon as the application starts, the receiving module
monitors the monitors the designated port, then starts a new
thread to receive message when there is a new message, and
displays it by translating the message into text form user can
read.
C. Record Management System (RMS)

Persistent storage of result message is helpful for future
use. The “javax.microedition.rms” package is based on
Record Stores. A Record Store is the equivalent of a simple
file. A Record Store stores a set of records in binary format.
This package allows developers to store and retrieve
information to/from files on mobile devices. Two Record
Stores are designed in this paper, one is CourseStore which is
used to store the code and name of courses, the other is
ClassroomStore which is used to store the code and name of
teaching buildings. When curriculums and teaching buildings
need to be displayed, the application can access them at any
time.
VI. SHORT MESSAGE SPECIFICATION

The Short Message used for web based business query
system contains three parts includes code of the query content,
User ID and Password. The contents of short message are
listed below in Table 1.

TABLE I
CONTENT OF SHORT MESSAGE

Query Content Code User ID Password
Student’s score 001
Student’s credit 002
Teacher’s Quantity 003
Teacher’s class
Quality
004
Exam schedule 005
Student’s
Register number
(or) Teacher’s
Employee
number



-------

The 1st, 2nd and 3 rd characters are the reference which
can help decide to query which database. The 4th to 15th
characters are on behalf of students’ number or teachers’
number. The 18th to 27th characters are user’s password.
When query code is ‘002’, for example, it means the
Attendance credit of a student is considered to be queried.

The objective of the paper is to reduce the length of the
short message in this query system. In order to achieve this
each part is assigned to a particular length of bits (digital
codes) which will undoubtedly reduce the length and cost of
the short message based query system. Since, the message is
encoded into a standard format.

The length of the each part of Short Message in this
system is listed in Table 2.

TABLE II
LENGTH OF SHORT MESSAGE

Code of Query
Content
User ID Password
3 bits 12 bits 10 bits


VII. CONCLUSION & FUTURE SCOPE


This project application starts with welcome page with
time interval set to 2000 milliseconds before it will load the
options form to provide a list of choices. The login form will
then be displayed. This login form requires users to enter their
login name and password. Only valid users can pass through
this form before they can proceed to other forms. If the login
name and password are not valid, error message will be
displayed in the user’s mobile devices.



Fig.3 Form I Fig. 4 Form II

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
56 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
                   

Fig. 5 Interface Fig.6 Result display


The method to implement mobile business query
system based on request-response short message was
described and developed in this work. This system is software
designed based on typical practical applications to be used by
business providers and customers. Even if there are several
businesses only one query message according to a particular
content query can be sent and the result is displayed correct.
This designed software was found to be reliable and practical.
It is verified that the system is usable and easy-operating.

In Future work, more business query functions can be added
from the prototype design to achieve Book query, Price query,
shopping query and other business queries. When there are a
large number of short messages waiting for processing, GSM
Modem group can be used to solve this problem to increase
the reliability of the system.

REFERENCES

[1] Z.Wang, Z.Guo, and Y.Wang, “Design and Implementation of Short
message query system for academic office based on J2ME,” in 2008
ISECS International Colloquium on Computing, Communication,
Control, and Management, 2008, paper 10.1109, p. 509.
[2] Marc Alier, Pablo Casado, and M. José Casany, “J2MEMicroDB: a
new Open Source lightweight Database Engine for J2ME Mobile
Devices,” in International Conference on Multimedia and Ubiquitous
Engineering 4 (MUE’07), 2007.
[3] M.A. Mohammad, A. Norhayati, “A Short Message Service for
Campus Wide Information Delivery,” in 4
th
National Conference on
Telecommunication Technology Proceedings, Shah Alam, Malaysia,
2003, p. 216.
[4] R. Cooper, S.Manson, “Extracting temporal Information from
short messages, Data Management, Data Everywhere,” in 24th
British National Conference on Databases. BNCOD 24, 2007, p. 224.
[5] Wireless Messaging API (WMA) for Java™ 2 Micro Edition.
[Online]. Available: http://java.sun.com.
[6] James Keogh. J2ME: The Complete Reference, 2
nd
ed. Berkeley,
U.S.A: McGraw-Hill-Osborne, 2003.



(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
57 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Predictive Gain Estimation – A mathematical analysis

P.Chakrabarti
Sir Padampat Singhania University
Udaipur , Rajasthan , India
Email_id : prasun9999@rediffmail.com


Abstract- In case of realization of successful business, gain
analysis is essential. In this paper we have cited some new
techniques of gain expectation on the basis of neural property
of perceptron. Support rule and Sequence mining based
artificial intelligence oriented practices have also been done in
this context. In the view of above fuzzy and statistical based
gain sensing is also pointed out.

I. INTRODUCTION

Predictive gain estimation plays a pivotal role in forecast
based strategic business planning. Realization of gain
patterns is essential for proper gain utilization. the gain
analysis can be sensed using perceptron learning rule and
other techniques. Prediction can also been performed on the
basis of fuzzy assumption theory on the factors on which
gain of a business organization depends. Statistical
application of gain estimation can also be used as a tool in
this context.

II. GAIN ANALYSIS USING PERCEPTRON LEARNING
RULE

We assume that G= {g
1
, g
2
,….,g
n
}be the set of gain of
business organization noted after observation in respective
years Y = {y
1
,y
2
,…y
n
}.As per our assumption g
k
( where g
k

ε G and 1<k<n}.

The following steps must be done:

1. Achieve difference in gain estimate as δ
i
= | g
i+1
– g
i
| ,
(i=1 to n-1).

2. g
k
is optimum i.e. Max(g
1
, g
2
,….,g
n) =
g
k

3. Compute n-1
δ
AVG
= ∑ δ
i
/ (n-1)
i=1

4. Predicted gain = g
n
= g
n-1
+ δ
AVG
( if g
n-1 <
δ
AVG
)
or g
n
= g
n-1
- δ
AVG
( if g
n-1 >
δ
AVG
)
5. Normalization of the parameters on which gain depends
will be scaled upwards/downwards by a factor of x where x
= (g
n
- g
k
).




III. BEHAVIORAL THEORY OF GAIN ESTIMATION

For a particular business, yearwise gain is noted. It is
possible to rationalize this sequence of gain patterns on the
basis of likelihood estimate , support rule and sequence
mining.

A. Likelihood measure

In case of gain prediction of a business, forecast based
expectation can be achieved after sensing original gains.

Theorem1 : Maximum likelihood estimator of expected
gain , taking on threshold , depends on individual estimated
gain.

Proof : Let g
1
, g
2
,….,g
n
be the gain of business organization
noted after observation in respective years y
1
,y
2
,…y
n
. The
business authority initially expects gain as g
e
.
The joint density function of the gain patterns for that
particular business is given by
L = f(g
1
, g
e
) f(g
2
, g
e
)...... f(g
n
, g
e
)where L is the
likelihood. We can write as follows:
δf(g
1
,g
e
)/{f(g
1
,g
e
).δg
e
}+…δf(g
n
,g
e
)/{f(g
n
,g
e
).δg
e
} = 0…..(1)
Solution of g
e
from eq(1) reveals that expected gain
depends on individual estimated gain.

B.Gain analysis based on support rule

The factors on which gain of a particular business depends
are mainly production , quality , market competition , risk
involvement and cost and the above parameters are denoted
as P,Q,M,R,C respectively. Let ,
PL = low production ,PH = high production,QM= medium
quality,QB= best quality,ML= low market competition,
MH= high market competition, RL= less risk involvement,
RH= high risk involvement,CL= low cost, CH= high cost


YEAR GAIN PARAMETER STATUS
y
1
g
1
PL QB MH RL CH
y
2
g
2
PH QM ML RL CL
y
3
g
3
PH QB MH RH CH
y
4
g
4
PL QM MH RH CH

Table 1 : Gain observation with parameter status

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
58 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
As per support rule , support count is as follows:
PL = PH =1/2
QM=QB= 1/2
MH =3/4
ML= 1/4
RL=RH=1/2
CH=3/4
CL=1/4

Optimum Gain can be achieved if the gain condition =
g
e
= f(PH,QB,MH,RL,CL).

C. Gain analysis based on sequence mining

Sequence of gain patterns of a business organizarion
depends on Boolean notation of its associated factors.
PL=0 ,PH=1, QM=0, QB=1,
ML=0,MH=1,RL=0,RH=1,CL=0 and CH=1.
As per Table 1, the sequence tables are as follows:
GAIN P Q M R C
g
1
0 1 1 0 1
g
2
1 0 0 0 0
g
3
1 1 1 1 1
g
4
0 0 1 1 1

Table 2 : Sequence observation with parameter status

As per the sequence,it is quite obvious that the market
competition is high and hence there must be ample
production with high cost and best quality.

IV. CHAOS THEORY BASED GAIN ESTIMATION

The chaos theory can be applied in case of gain estimation.
As per the theory, a minute change in the input will affect
the output a lot. Hence if a business organization bestows
gain in an uniform rate, and due to some external factor,
huge gain/loss is incurred ,then inspection of the internal
parameter status can be observed using Chaos Theory.
Factors involved are production ,quality ,market competition
, risk involvement and cost. By crisp operation, status of
each has two probable outputs – 0 or 1. The bit values
expected are X={0,1} and the combinations are 2
5
.

V. FUZZY BASED OPTIMUM GAIN REALIZATION

If the gain estimates for a particular business are as g
1
, g
2
,
g
3
and g
4
, then the codes in terms of fuzzy value are as
follows:-g
1
= 0.1,g
2
= 0.2,g
3
= 0.3,g
4
= 0.4. We assume that
(i)the outcomes of the gains are based on parameters
P,Q,M,R,C as before (ii)the parameter P will be high in
cases of the gains g
2
, g
3
; Q will be on g
1
, g
3
; M on g
1
, g
3
,
g
4
, R on g
1
, g
2
and C on

g
2
.

The desired optimum gain will be a fuzzy set whose
member functions will be such that is intersection rule is
applied in case of R and C while for other parameters the
union rule.

Statement Fuzzy
Values
g
1
0.1
g
2
0.2
g
3
0.3
g
4
0.4

Table 3: Fuzzy based value assignment

The above chart involves the gains and its respective fuzzy
values and set. Since the gains are based on fuzzy operation,
so we can denote each gain as a fuzzy set and the results as
per our assumption are shown below: -

Fuzzy Set Member
Function
Value
G
1
~

P,Q,M,R,C


G
1
~
= {(x
1
, 0.1), (x
2
, 0.6), (x
3
,
0.9), (x
4
, 0.2), (x
5
, 0.8)}
G
2
~
G
2
~
= {(x
1
, 0.7), (x
2
, 0.3), (x
3
,
0.5), (x
4
, 0.3), (x
5
, 0.2)}
G
3
~
G
3
~
= {(x
1
, 0.8), (x
2
, 0.8), (x
3
,
0.7), (x
4
, 0.7), (x
5
, 0.7)}
G
4
~
G
4
~
= {(x
1
, 0.2), (x
2
, 0.1), (x
3
,
0.8), (x
4
, 0.9), (x
5
, 0.8)}

Table4: Fuzzy representation of respective gains

Now ,µ
(G1~U G2~ UG3~ U G4~ )
(x
1
)

= max(0.1, 0.7,0.8,0.2) = 0.8;
µ
(G1~U G2~ UG3~ U G4~ )
(x
2
)

= max(0.6, 0.3,0.8,0.1) =0.8;
µ
(G1~U G2~ UG3~ U G4~ )
(x
3
)

= max(0.9, 0.5,0.7,0.8) =0.8;
µ
(G1~∩ G2~∩ G3~∩ G4~ )
(x
4
)

= min(0.2, 0.3,0.7,0.9) = 0.2;
µ
(G1~∩ G2~∩ G3~∩ G4~ )
(x
5
)

= min(0.8, 0.2,0.7,0.8) = 0.2

Hence G
opt
~
= {(x
1
, 0.8), (x
2
, 0.8), (x
3
, 0.8), (x
4
,0.2),(x
5
,0.2)}

PARAMETER YEAR OF
REALIZATION
P y
3

Q y
3

M y
1

R y
1

C y
2


Table 5: Corresponding year realization for optimum gain

In this case, we realize that the business has flourished in
year y
1
maintaining lowest risk in highest competitive
market ; lowest cost involvement in y
2
while highest
production with best quality in y
3.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
59 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
VI. STATISTICAL APPROACH OF GAIN PREDICTION

We can analyze gain in time series form. In a business,the
year of highest gain is inspected for future use and
prediction.

Theorem 2
If a gain of a particular business changes (G) over time (t) in
an exponential manner, in that case the value of the gain at
the centre point an interval (a
1
, a
2
) is a geometric mean of its
values at a
1
and a
2
.

Proof: Let G
a
= mn
a
, m and n being constants.
Then G
a1
= mn
a1
and G
a2
= mn
a2
Now, value of G at (a
1
+ a
2
)/2
= mn
(a1+a2)/2
= [m
2
n
(a1+a2)
]
1/2

= [(mn
a1
)(mn
a2
)]
1/2

= (G
a1
G
a2
)
1/2
Theorem 3
If a variable m representing gain of a business is related to
another variable n representing year in the form m= an,
where a is a constant, then harmonic mean of n is related to
that of n based on the same equation.

Proof: Let x is number of observed gain values.
If m
HM
= x / (∑ 1/m
i
) for i = 1 to x
= x / (∑ 1/an
i
) [ Since m
i
= an
i
]
= x / ( 1/a ∑ 1/n
i
) for i = 1 to x
= a( x / ( ∑ 1/n
i
) for i= 1 to x
= an
HM

Gain can also be estimated based on probabilistic approach.
Suppose G be the set of gains g
1
, g
2
, g
3
…………..g
m
for a
particular business organization with respective probability
p
1
,p
2
, …….p
n.

m
When ∑ p
i
= 1
i = 1

m
then E(G) = ∑ g
i
p
i
= 1…………………………..(2)
i = 1

provided it is finite.

Here, we are use bivariate probability based on G (g
1
, g
2
,
g
3
…g
m
) i.e.set of achieved gains and Q (q
1
, q
2
, q
3
, …….q
n
)
i.e. set of predictive gains , ( 1 < m < n)

Theorem 4
If the values of observed gain and predicted gain be two
jointly distributed random variables then
E ( G + Q) = E (G) + E(Q) .

Proof : G assume values g
1
, g
2
, g
3
……………… g
m

Q assume values q
1
, q
2
, q
3
………………. q
m

P(G=g
i
, Q = q
j
) = p
ij
, i = 1 to n and j = 1 to n

E (G + Q) = ∑ ∑ (g
i
+ q
j
) p
ij

i j

= ∑ ∑ g
i
p
ij
+ ∑ ∑ q
j
p
ij

i j i j

= ∑ g
i
∑ p
ij
+ ∑ q
j
∑ p
ij

i j j i

E( G + Q) =E (G) + E(Q) ………………..........(3)


We can also predict gain on the basis of autoregression
property
Here from next year onwards, a future gain guessing will be
done based on

g
m+1
=
m
g
m
+
m-1
g
m-1
+
m-2
g
m-2
+…+….
1
k
g
+
m+1 .
.....(4)

Here, 
m+1
, indicates a random error at time m+1. Here,
each element in the time series can be viewed as a
combination of a random error and a linear combination of
previous values. Here 
i
are the autoregressive parameters.

We can also predict based on the theory of moving average.
In this case the gain guessing strategy will be based on :

g
m+1
= a
m+1
+
m
a
m
+
m-1
a
m-1
+ 
m-2
a
m-2
+…… + 
m-q
a
m-q
…(5)
where a
i
is a shock
 is estimate
q is term indicating last predicted value.

The values of the gain estimates for different years are not
identical. In some cases the values are close to one another,
where in some cases they are highly dedicated from one
another. In order to get a proper idea about overall nature of
a given set of values, it is necessary to know, besides
average, the extent to which the gain estimates differ among
themselves or equivalently, how they are scattered about the
average.Let the values g
1
, g
2
, g
3
…….g
m
are the gain
estimates values and c be the average of the original values
of g
m+1
, g
m+2
,……g
n.

Mean Deviation of k about c will be given by
1 n-m
MD
c
= ________ ∑ | g
i
– c |………………….......(6)
( n – m) i = 1

In particular , when c = g , mean deviation about mean will
be given by
1 n-m
MD
g
= _______ ∑ | g
i
– g
i
| …………………….(7)
( n – m) i = 1


(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
60 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
VII. CONCLUSION

The paper deals with several gain estimates which play
crucial role in strategic business planning thereby bestowing
optimum gain estimate. In this context gain analysis with
neural , fuzzy and statistical justification pointed out in this
paper.

REFERENCES

[1] M.Spiegel et.al. “Probability and Statistics”,Tata McGraw Hill, 2004

[2] P.Chakrabarti et. al. “A Mathematical realization of software analysis”
to appear in International Journal of Computer and Electrical Engineering
, Vol 2 No.3 , Jun 2010

[3] P.Chakrabarti et. al. “Approach towards realizing resource mining and
secured information transfer” published in international journal of IJCSNS,
Korea , Vol 8 No.7, July08

[4] P.Chakrabarti et. al. “Information representation and processing in the
light of neural-fuzzy analysis and distributed computing” accepted for
publication in international journal AJIT(Asian Journal of Information
Technology), ISSN: 1682-3915, Article ID: 743-AJIT

[5] P.Chakrabarti et. al. “An Intelligent Scheme towards information
retrieval” accepted for publication in international journal AJIT(Asian
Journal of Information Technology), ISSN: 1682-3915, Article ID: 706-
AJIT



About author:


Dr.P.Chakrabarti(09/03/81) is currently serving as Associate
Professor in the department of Computer Science and
Engineering of Sir Padampat Singhania University,Udaipur.
Previously he worked at Bengal Institute of Technology and
Management , Oriental Institute of Science and Technology,
Dr.B.C.Roy Engineering College, Heritage Institute of
Technology, Sammilani College. He obtained his
Ph.D(Engg) degree from Jadavpur University in Sep09,did
M.E. in Computer Science and Engineering in
2005,Executive MBA in 2008and B.Tech in Computer
Science and Engineering in 2003.He is a member of Indian
Science Congress Association , Calcutta Mathematical
Society , Calcutta Statistical Association , Indian Society
for Technical Education , Computer Society of India, VLSI
Society of India , Cryptology Research Society of India,
IEEE(USA) , IAENG(Hong Kong) ,CSTA(USA) and Senior
Member of IACSIT(Singapore) .He is a Reviewer of
International journal of Information Processing and
Management(Elsevier), International Journal of Engineering
and Technology, Singapore. He has about 90 papers in
national and international journals and conferences in his
credit. He has several visiting assignments at BHU Varanasi
, IIT Kharagpur , Amity University,Kolkata , et al.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
61 http://sites.google.com/site/ijcsis/
ISSN 1947-5500



Lightweight Distance Bound P
Cost RFID Tags
Eslam Gamal Ahmed
Faculty of Computer and Information Science
Eslam_Gamal@cis.asu.edu.eg
Abstract: Almost all existing RFID authentication schemes
(tag/reader) are vulnerable to relay attacks, because of their
inability to estimate the distance to the tag. These attacks
are very serious since it can be mounted without the notice
of neither the reader nor the tag and cannot be prevented by
cryptographic protocols that operate at the application
layer. Distance bounding protocols represent a promising
way to thwart relay attacks, by measuring the round trip
time of short authenticated messages. All the existing
distance bounding protocols use random number generator
and hash functions at the tag side which make them
inapplicable at low cost RFID tags.
This paper proposes a lightweight distance bound
protocol for low cost RFID tags. The proposed protocol
based on modified version of Gossamer mutual
authentication protocol. The implementation of the
proposed protocol meets the limited abilities of l
RFID tags.

Keywords: RFID, Distance Bound, Mutual Authentication,
Relay Attack, Gossamer.

I. INTRODUCTION
Radio Frequency Identification (RFID) system is the latest
technology that plays an important role for object
identification as a ubiquitous infrastructure. RFID
applications in access control, manufacturing
maintenance, supply chain management, parking garage
management, automatic payment, tracking,
control.
RFID tags and contactless smart cards are nor
passive; they operate without any internal battery and receive
the power from the reader. This offers long lifetime but
results in short read ranges and limited processing power.
They are also vulnerable to different attacks related to the
location: distance fraud and relay attacks. Relay attacks occur
when a valid reader is tricked by an adversary into believing
that it is communication with a valid tag and vice versa. That
is, the adversary performs a kind of man-in-the
between the reader and the tag. It is difficult to prevent these
(IJCSIS) International Journal of Computer Science and Information Security,
Lightweight Distance Bound Protocol for Low
Cost RFID Tags
Eman Shaaban Mohamed Hashem
Faculty of Computer and Information Science
Ain Shams University
Cairo, EGYPT
Eslam_Gamal@cis.asu.edu.eg Eman.Shaaban@cis.asu.edu.eg

Mhashem@cis.asu.edu.eg

Almost all existing RFID authentication schemes
attacks, because of their
tag. These attacks
are very serious since it can be mounted without the notice
of neither the reader nor the tag and cannot be prevented by
cryptographic protocols that operate at the application
Distance bounding protocols represent a promising
to thwart relay attacks, by measuring the round trip
All the existing
use random number generator
and hash functions at the tag side which make them
distance bound
protocol for low cost RFID tags. The proposed protocol
modified version of Gossamer mutual
implementation of the
protocol meets the limited abilities of low cost
Mutual Authentication,

stem is the latest
an important role for object
nfrastructure. RFID has many
manufacturing automation,
supply chain management, parking garage
automatic payment, tracking, and inventory
RFID tags and contactless smart cards are normally
passive; they operate without any internal battery and receive
the power from the reader. This offers long lifetime but
results in short read ranges and limited processing power.
They are also vulnerable to different attacks related to the
distance fraud and relay attacks. Relay attacks occur
when a valid reader is tricked by an adversary into believing
that it is communication with a valid tag and vice versa. That
the-middle attack
der and the tag. It is difficult to prevent these
attacks since the adversary does not change any data between
the reader and the tag [3].
There are three types of attacks related with distance
between the reader and the tag. The dishonest tag may
to be closer than he really is. This attack is called distance
fraud attack. There are two types of relay attacks: mafia fraud
attack and terrorist fraud attack. In
scenario, both the reader R and the tag T are honest, but a
malicious adversary is performing man
between the reader and the tag by putting fraudulent tag T
and receiver R’. The fraudulent tag T
honest reader R and the fraudulent reader R
the honest tag T. T’ and R’ cooperate together. It enables T
to convince R as if R communicates with T, without actually
needing to know anything about the secret information.
Terrorist fraud attack is an extension of the mafia fraud
attack. The tag T is not honest and coll
fraudulent tag T’. The dishonest tag T uses T
reader that he is close, while in fact he is not. T does not
know the long-term private or secret key of T. The problem
with Mafia fraud attack is that this attack can be mounted
without the notice of both the reader and the tag.
Figure 1. Distance Fraud Attack

Figure 2. Mafia and terrorist
er Science and Information Security,
Vol. 7, No. 3, 2010
rotocol for Low
Mohamed Hashem

Mhashem@cis.asu.edu.eg
attacks since the adversary does not change any data between
There are three types of attacks related with distance
between the reader and the tag. The dishonest tag may claim
to be closer than he really is. This attack is called distance
There are two types of relay attacks: mafia fraud
attack and terrorist fraud attack. In mafia fraud attack
scenario, both the reader R and the tag T are honest, but a
malicious adversary is performing man-in-the-middle attack
between the reader and the tag by putting fraudulent tag T’
. The fraudulent tag T’ interacts with the
honest reader R and the fraudulent reader R’ interacts with
cooperate together. It enables T’
to convince R as if R communicates with T, without actually
needing to know anything about the secret information.
Terrorist fraud attack is an extension of the mafia fraud
attack. The tag T is not honest and collaborates with
. The dishonest tag T uses T’ to convince the
reader that he is close, while in fact he is not. T does not
term private or secret key of T. The problem
with Mafia fraud attack is that this attack can be mounted
without the notice of both the reader and the tag.

Distance Fraud Attack

errorist fraud attack
62 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010



It is difficult to prevent since the adversary does not
change any data between the reader and the tag. Therefore
mafia fraud attack cannot be prevented by cryptographic
protocols that operate at the application layer. Although one
could verify location through use of GPS coordinates, small
resource limited devices such as RFID tags do not lend
themselves to such applications.
Distance bounding protocols are good solutions to
prevent such relay attacks [8, 9, 11]. These protocols measure
the signal strength or the round-trip time between the reader
and the tag. However the proof based on measuring signal
strength is not secure as an adversary can easily amplify
signal strength as desired or use stronger signals to read from
afar. Therefore many works are devoted to devise efficient
distance bounding protocols by measuring round-trip time.
This paper is organized in the following way: Section II
presents the related work for distance bound protocols in low
cost RFID tags. Section III presents the proposed protocol.
Section IV presents the implementation of the proposed
protocol. Section V concludes the paper.
II. RELATED WORK
Hancke and Kuhn proposed a distance bounding protocol
(HKP) [9] that has been chosen as a reference-point because
it is the most popular distance bounding protocol in the RFID
framework. As depicted in Figure. 3, the protocol is carried
out as follows.
After exchanges of random nonces (N
a
and N
b
), the
reader and the tag compute two n-bit sequences, v
0
and v
1
,
using a pseudorandom function (typically a MAC algorithm,
a hash function, etc.). Then the reader sends a random bit for
n times. Upon receiving a bit, the tag sends back a bit R
i
from
v
0
if the received bit C
i
equals 0. If C
i
equals 1, then it sends
back a bit from v
1
.
After n iterations, the reader checks the correctness of R
i
’s
and the propagation time. In each round, the probability that
the adversary sends a correct response is a priori ½. However
the adversary can query the tag in advance with some
arbitrary C′ is, between the nonces are sent and the rapid bit
exchange starts. Doing so, the adversary obtains n bits of the
registers. For example, if the adversary queries with some
zeroes only, he will entirely get v
0
. In half of all cases, the
adversary will have the correct guesses, that is C′
i
= C
i
, and
therefore will have obtained in advance the correct value R
i

that is needed to satisfy the reader. In the other half of all
cases, the adversary can reply with a guessed bit, which will
be correct in half of all cases. Therefore, the adversary has
3/4 probability of replying correctly.
Munilla, and Peinado [5] modified the Hancke and
Kuhn’s protocol by applying “void challenges” in order to
reduce the success probability of the adversary. As shown in
Figure. 4, the challenges from the reader are divided into two
categories, full challenge and void challenge.


Figure 3. Hancke and Kuhn’s Protocol
After exchanges of random nonces (N
a
and N
b
), the reader
and the tag compute 3n-bit sequence, P||v
0
||v
1
, using a
pseudorandom function. The string P indicates the void-
challenges; that is, if P
i
= 1 reader sends a random challenge
and if P
i
= 0 it does not. These void-challenges allow the tag
to detect if an adversary is trying to get the responses in
advance. When the tag detects an adversary it stops sending
responses.
The protocol ends with a message to verify that no
adversary has been detected. The adversary can choose
between two main attack strategies: asking in advance to the
tag, taking the risk that the tag uncovers him, and without
taking in advance and trying to guess the responses to the
challenges when they occur. The adversary’s success
probability depends on p
f
, the probability of the occurrence
of full challenge, and can be calculated:
P
mp
= (1 – p
f
/2)
n
, if p
f
≤ 4/5 (without asking in advance),
(p
f
* 3/4 )
n
, if p
f
> 4/5 (asking in advance).
The success probability of the adversary is (5/8)
n
if the
string P is random [5], which is less than (3/4)
n
. Note that the
final confirmation message h(K, v
0
, v
1
) does not take any
challenges C
i
as an input. So it can be pre-computed before
the start of the fast bit exchange. On the other side, the
disadvantage of their solution is that it requires three
(physical) states: 0, 1, and void, which may be difficult to
implement. Furthermore the success probability of the
adversary is higher than (1/2)
n
.

63 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010




Figure 4. Munilla and Peinado Protocol
To overcome the disadvantage of Munilla and Peinado
protocol, Chong Hee Kim and Gildas Avoine [3] present a
modification using mixed challenges: the challenges from the
reader to the tag in the fast bit exchanges are divided into two
categories, random challenges and predefined challenges.
The earlier are random bits from the reader and the latter are
predefined bits known to both the reader and the tag in
advance.

Figure.5 Distance bounding protocol using mixed challenges
As shown in Figure. 5, the reader and the tag compute
4n-bit sequence for T||D||v
0
||v
1
, after exchange of random
nonces (N
a
and N
b
). The string T indicates random-
challenges: if T
i
= 1 the reader sends a random bit S
i
c {0, 1}
and if T
i
= 0 it sends a predefined bit D
i
to the tag.
From the point of the adversary’s view, all C
i
’s from the
reader look like random. Therefore he cannot distinguish
random challenges from predefined challenges. However,
these predefined challenges; the tag is able to detect an
adversary sending random challenges in order to get
responses in advance. Upon reception of a challenge C
i
from
the reader, either T
i
= 1 (random challenge), in this case the
tag sends out the bit v
i
C
i
; or T
i
= 0 (predefined challenge), in
this case the tag sends out the bit v
0
i
if C
i
= D
i
and a random
bit if C
i
≠ D
i
(it detects an error). From the moment the tag
detects an error, it replies a random value to all the
subsequent challenges. By doing this, both the reader and the
tag fight the adversary.
In this protocol no confirmation message after the end of
fast bit exchanges is used, which improves efficiency in
terms of computation and communication compared to
Munilla and Peinado [5]. This protocol with (binary) mixed
challenges provides the best performances among all the
existing distance bounding protocols with binary challenges
that do not use final signature. Indeed, while all previous
protocols provide a probability of the adversary success equal
to (3/4)
n
, the probability quickly converges toward (1/2)
n
in
this case.
III. PROPOSED SOLUTION
The main issues in implementing previous distance bound
protocols in low cost RFID tags which has only 4k security
gates according to EPC Class1 Generation2 standards [6]; is
that it requires random number generation and hash function
which exceeds capabilities of low cost RFID tags.
Modified Gossamer protocol [1] can be combined with
distance bound protocol using mixed challenges to make
distance bound protocol applicable on low cost RFID tags by
removing random number generation and hash function from
tag side and it will be done only on reader side as in Figure.6.

Figure.6 Modified Gossamer and distance bound using mixed
challenges
64 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010



In this protocol reader and tag will use random numbers
n1, n2, n3, n1’ instead of T||D||v
0
||v
1
so there is no need for
random number generation and hash functions in tag side.
From storage view we need to store (6*96) bits in RAM for
old and new values of IDS, K1, K2 and 96 bit in ROM;
which is applicable in low cost RFID tag which has 1K
memory bits according to EPC Class1 Generation 2 standard.
The distance bound protocol using mixed challenges in
proposed protocol is implemented as in Figure.7.{T}
sequence is replaced with nonce n1; {D} sequence is
replaced with nonce n2; {v
0
}

sequence is replaced with nonce
n3 and {v
1
}

sequence is replaced with nonce n1’.Therefore
proposed solution prevents relay attacks and supports mutual
authentication on low cost RFID tags.

Figure.7 Distance bound protocol using mixed challenges
implemented in modified gossamer
The proposed protocol prevents many RFID attacks [2] as
shown in table 1.

IV. IMPLEMENTATION
As shown in Figure.8 the proposed protocol has 11 states.
The tag starts at begin state (S0) and waits for reader
interrogation signal (S) and waits for receiving A
(R_A).when receiving S and R_A tag moves to Recv_A state
(S1) and waits until receiving A(96 bit).the tag moves the
same way in states Recv_B (S2) and Recv_C (S3).In
Calc_T_abc state (S4) the tag calculates A||B||C and
compares between C and C’; if C=C’ then the tag moves to
Calc_T_d state (S5) else it will return to S1.
After calculating D the tag waits until receiving R_Ci to
begin distance bound protocol; when receiving R_Ci the tag
moves to Recv_Ci state (S6) and moves to Calc_Ri (S7).If no
error detected and distance bits didn’t finished (N’) the tag
returns to S6.If no error detected at (S7) and receive n bits
(N) then tag moves to Tag_update state (S8). If error detected
in distance stage the tag moves to Gen_rnd (S9) to send
random bits and then moves to final state (S10).
The proposed protocol is implemented using Xilinx 9.2i
using VHDL on VirtexII FPGA (XC2VP20) device [6].The
implementation consists of two parallel processes one for
controller and one for data path. The controller process
contains all control signal and gates while data path process
contains data registers and ALU gates to implement required
operations on these registers.Figure.9 shows general block
diagram for hardware implementation for proposed protocol
while Figure.10 shows RTL schematic generated from
Xilinx.
Table 1. Prevented attacks in proposed protocol
X: Not protected Partially: Partially protected √: Protected

Figure.8 State diagram of proposed protocol
Layer Attack Type Attack
Proposed
protocol
Physical
Permanently
Disabling Tags
Tag Removal X
Tag Destruction X
KILL Command X
Temporarily
Disabling Tags
Passive Interference X
Active Jamming X
Relay Attacks √
Network -
Transport
Attacks on the Tags
Cloning X
Spoofing √
Attacks on the
Reader
Impersonation √
Eavesdropping √
Network Protocol Attacks X
Application

Unauthorized Tag
Reading

Tag Modification √
Middleware Attacks
Buffer Overflows X
Malicious Code Injection


X
Strategic
Competitive Espionage Partially
Social Engineering X
Privacy Threats √
Targeted Security
Threats
Partially
Multilayer Attacks
Covert Channels X
Denial of Service Attacks
[3,6]
Partially
Traffic Analysis √
Crypto Attacks √
Side Channel Attacks X
Replay Attacks √
65 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010



The implementation results from synthesis report generated
from Xilinx, as shown in table 2 shows that proposed
protocol meets low cost RFID tags according to EPC Class 1
Generations 2 standard.
#of
4-bit
LUT
#of
Slices
#of
Flip flops
ROM RAM Frequency
860 510 886 96 bit 576 bit 487 MHZ
Table 2. Implementation results

Figure.9 Hardware implementation of proposed protocol

Figure.10 RTL schematic for proposed protocol
Total equivalent gates are 10,100 gates; equivalent to 1684
ASIC gates; as 1 ASIC gate ≈ (5-7) FPGA gates. From
implementation results the proposed solution can be
implemented in low cost RFID tags.


V. CONCLUSION
This paper has proposed a distance bound protocol for low
cost RFID tags. The proposed protocol based on modified
Gossamer mutual authentication protocol and prevents relay
attacks. The proposed protocol does not need random number
generation and hash function to be done in tag side.
In order to verify the proposed protocol, we also
designed and implemented it using Xilinx 9.2i with using
VHDL at the behavioral level. The system operates at a clock
frequency of 487 MHz on VirtexII FPGA device. From
implementation results, we have shown that our scheme is a
well-designed strong protocol which satisfies various security
requirements in low cost RFID tags.
REFERENCES

[1] Eslam Gamal Ahmed, Eman Shabaan, Mohamed Hashem
“Lightweight Mutual Authentication Protocol for Low cost RFID
Tags”, International Journal of Network Security & Its Application
(IJNSA), Academy & Industry Research Collaboration Center
(AIRCC), April 2010, Vol.2, No.2.
[2] Aikaterini Mitrokotsa, Melanie R. Riebackand and
rew S. Tanenbaum “Classifying RFID attacks and defenses”, Inf
Syst Front, Springer, Published online 29 July 2009, DOI
10.1007/s10796-009-9210-z.
[3] Chong Hee Kim and Gildas Avoine “RFID Distance Bounding
Protocol with Mixed Challenges to Prevent Relay Attacks”,
CANS’09, December 2009, former version: IACR ePrint at
"http://eprint.iacr.org/2009/310.pdf”
[4] Hung-Yu Chien, “DOS Attacks on Varying Pseudonyms-Based
RFID Authentication Protocols”,2008 IEEE Asia-Pacific Services
Computing Conference,pp. 616-622.
[5] J. Munilla and A. Peinado. Distance bounding protocols for
RFID enhanced by using void-challenges and analysis in noisy
channels. Wireless communications and mobile computing.
Published online: Jan 17 2008.
[6] Pedro Peris López, Dr. D. Julio C. Hernández Castro and Dr. D.
Arturo Ribagorda Garnacho” Lightweight Cryptography in Radio
Frequency Identification (RFID) Systems” Ph.D. THESIS,
UNIVERSIDAD CARLOS III DE MADRID, Computer Science
Department, Leganés, October 2008.
[7] Hong Lei, Tianjie Cao ” RFID Protocol enabling Ownership
Transfer to protect against Traceability and DoS attacks “,First
International Symposium on Data, Privacy and E-Commerce,DOI
10.1109/ISDPE.2007.29,pp. 508-510.
[8] L. Bussard and W. Bagga. Distance-bounding proof of
knowledge to avoid real-time attacks. In IFIP/SEC, 2005.
[9] G. Hancke and M. Kuhn. An RFID distance bounding
protocol. In the 1st International Conference on Security and
Privacy for Emergin Areas in Communications Networks
(SECURECOMM'05), pages 67-73. IEEE Computer Society,
2005.
66 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010



[10] Volnei A. Pedroni “Circuit Design with VHDL”. MIT Press
Cambridge, Massachusetts, London, England, ISBN 0-262-16224-5,
2004.
[11] S. Brands and D. Chaum. Distance-Bounding Protocols. In
Advances in Cryptology - EUROCRYPT 93, volume 765 of Lecture
Notes in Computer Science, pages 344-359. Springer, 1994.

AUTHORS PROFILE

Eslam Gamal Ahmed Teacher
assistant in computer systems
department in faculty of computer and
information sciences, Ain Shams
University. Graduated at June 2006 with
a degree excellent with honor. Currently
I am working in my master degree titled
“Developing Lightweight Cryptography
for RFID”. Fields of interest are
computer and networks security, RFID systems and computer
architecture.

Dr. Eman Shaaban Lecturer in
computer systems department in faculty
of computer and information sciences,
Ain Shams University. Fields of interest
are RFID systems, embedded systems,
computer and networks security, logic
design and computer architecture.


Prof. Mohamed Hashem Department
head of information systems department
in faculty of computer and information
sciences, Ain Shams University. Fields
of interest are computer networks, Ad-
hoc and wireless networks, Qos Routing
of wired and wireless networks,
Modeling and simulation of computer
networks, VANET and computer and network security.

67 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Analysis of Empirical Software Effort Estimation
Models
Saleem Basha
Department of Computer Science
Pondicherry University
Puducherry, India
smartsaleem1979@gmail.com
Dhavachelvan P
Department of Computer Science
Pondicherry University
Puducherry, India
dhavachelvan@gmail.com


Abstract – Reliable effort estimation remains an ongoing
challenge to software engineers. Accurate effort estimation is the
state of art of software engineering, effort estimation of software
is the preliminary phase between the client and the business
enterprise. The relationship between the client and the business
enterprise begins with the estimation of the software. The
credibility of the client to the business enterprise increases with
the accurate estimation. Effort estimation often requires
generalizing from a small number of historical projects.
Generalization from such limited experience is an inherently
under constrained problem. Accurate estimation is a complex
process because it can be visualized as software effort prediction,
as the term indicates prediction never becomes an actual. This
work follows the basics of the empirical software effort
estimation models. The goal of this paper is to study the empirical
software effort estimation. The primary conclusion is that no
single technique is best for all situations, and that a careful
comparison of the results of several approaches is most likely to
produce realistic estimates.
Keywords-Software Estimation Models, Conte’s Criteria,
Wilcoxon Signed-Rank Test.
I. INTRODUCTION
Software effort estimation is one of the most critical and
complex, but an inevitable activity in the software development
processes. Over the last three decades, a growing trend has
been observed in using variety of software effort estimation
models in diversified software development processes. Along
with this tremendous growth, it is also realized the essentiality
of all these models in estimating the software development
costs and preparing the schedules more quickly and easily in
the anticipated environments. Although a great amount of
research time, and money have been devoted to improving
accuracy of the various estimation models, due to the inherent
uncertainty in software development projects as like complex
and dynamic interaction factors, intrinsic software complexity,
pressure on standardization and lack of software data, it is
unrealistic to expect very accurate effort estimation of software
development processes [1]. Though there is no proof on
software cost estimation models to perform consistently
accurate within 25% of the actual cost and 75% of the time
[30], still the available cost estimation models extending their
support for intended activities to the possible extents. The
accuracy of the individual models decides their applicability in
the projected environments, whereas the accuracy can be
defined based on understanding the calibration of the software
data. Since the precision and reliability of the effort estimation
is very important for the competitiveness of software
companies, the enterprises and researchers have put their
maximum effort to develop the accurate models to estimate
effort near to accurate levels. There are many estimation
models have been proposed and can be categorized based on
their basic formulation schemes; estimation by expert [5],
analogy based estimation schemes [6], algorithmic methods
including empirical methods [7], rule induction methods [8],
artificial neural network based approaches [9] [17] [18],
Bayesian network approaches [19], decision tree based
methods [21] and fuzzy logic based estimation schemes [10]
[20].
Among these diversified models, empirical estimation
models are found to be possibly accurate compared to other
estimation schemes and COCOMO, SLIM, SEER-SEM and FP
analysis schemes are popular in practice in the empirical
category [24] [25]. In case of empirical estimation models, the
estimation parameters are commonly derived from empirical
data that are usually collected from various sources of
historical or passed projects. Accurate effort and cost
estimation of software applications continues to be a critical
issue for software project managers [23]. There are many
introductions, modifications and updates on empirical
estimation models. A common modification among most of the
models is to increase the number of input parameters and to
assign appropriate values to them. Though some models have
been inundated with more number of inputs and output features
and thereby the complexity of the estimation schemes is
increased, but also the accuracy of these models has shown
with little improvement. Although they are diversified, they are
not generalized well for all types of environments [13]. Hence
there is no silver bullet estimation scheme for different
environments and the available models are environment
specific.
II. COCOMO ESTIMATION MODEL
A. COCOMO 81
COCOMO 81 (Constructive Cost Model) is an empirical
estimation scheme proposed in 1981 [29] as a model for
estimating effort, cost, and schedule for software projects. It
68 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
was derived from the large data sets from 63 software projects
ranging in size from 2,000 to 100,000 lines of code, and
programming languages ranging from assembly to PL/I. These
data were analyzed to discover a set of formulae that were the
best fit to the observations. These formulae link the size of the
system and Effort Multipliers (EM) to find the effort to develop
a software system. In COCOMO 81, effort is expressed as
Person Months (PM) and it can be calculated as

I
=
=
15
1
* *
i
i
b
EM Size a PM (1)
where,
“a” and “b” are the domain constants in the model. It
contains 15 effort multipliers. This estimation scheme accounts
the experience and data of the past projects, which is extremely
complex to understand and apply the same.
Cost drives have a rating level that expresses the impact of
the driver on development effort, PM. These rating can range
from Extra Low to Extra High. For the purpose of quantitative
analysis, each rating level of each cost driver has a weight
associated with it. The weight is called Effort Multiplier. The
average EM assigned to a cost driver is 1.0 and the rating level
associated with that weight is called Nominal.
B. COCOMO II

In 1997, an enhanced scheme for estimating the effort for
software development activities, which is called as COCOMO
II. In COCOMO II, the effort requirement can be calculated as

I
=
=
17
1
* *
i
i
E
EM Size a PM (2)
where SF
B E
j
j
5
1
* 01 . 0
=
¯ + =
COCOMO II is associated with 31 factors; LOC measure as
the estimation variable, 17 cost drives, 5 scale factors, 3
adaptation percentage of modification, 3 adaptation cost drives
and requirements & volatility. Cost drives are used to capture
characteristics of the software development that affect the
effort to complete the project.
COCOMO II used 31 parameters to predict effort and time
[11] [12] and this larger number of parameters resulted in
having strong co-linearity and highly variable prediction
accuracy. Besides these meritorious claims, COCOMO II
estimation schemes are having some disadvantages. The
underlying concepts and ideas are not publicly defined and the
model has been provided as a black box to the users [26]. This
model uses LOC (Lines of Code) as one of the estimation
variables, whereas Fenton et. al [27] explored the shortfalls of
the LOC measure as an estimation variable. The COCOMO
also uses FP (Function Point) as one of the estimation
variables, which is highly dependent on development the
uncertainty at the input level of the COCOMO yields
uncertainty at the output, which leads to gross estimation error
in the effort estimation [33]. Irrespective of these drawbacks,
COCOMO II models are still influencing in the effort
estimation activities due to their better accuracy compared to
other estimation schemes.
III. SEER-SEM ESTIMATION MODEL

SEER (System Evaluation and Estimation of Resources) is
a proprietary model owned by Galorath Associates, Inc. In
1988, Galorath Incorporated began work on the initial version
of SEER-SEM which resulted in an initial solution of 22,000
lines of code. SEER (SEER-SEM) is an algorithmic project
management software application designed specifically to
estimate, plan and monitor the effort and resources required for
any type of software development and/or maintenance project.
SEER, which comes from the noun, referring to one having the
ability to foresee the future, relies on parametric algorithms,
knowledge bases, simulation-based probability, and historical
precedents to allow project managers, engineers, and cost
analysts to accurately estimate a project's cost schedule, risk
and effort before the project is started. Galorath chose
Windows due to the ability to provide a more graphical user
environment, allowing more robust management tradeoffs and
understanding of what drives software projects.[4]
This model is based upon the initial work of Dr. Randall
Jensen. The mathematical equations used in SEER are not
available to the public, but the writings of Dr. Jensen make the
basic equations available for review. The basic equation, Dr.
Jensen calls it the "software equation" is:

5 . 0
) (
d te e
Kt C S = (3)
where,
‘S’ is the effective lines of code, ‘ct’ is the effective
developer technology constant, ‘k’ is the total life cycle cost in
man-years, and ‘td’ is the development time in years.
This equation relates the effective size of the system and the
technology being applied by the developer to the
implementation of the system. The technology factor is used to
calibrate the model to a particular environment. This factor
considers two aspects of the production technology -- technical
and environmental. The technical aspects include those dealing
with the basic development capability: Organization
capabilities, experience of the developers, development
practices and tools etc. The environmental aspects address the
specific software target environment: CPU time constraints,
system reliability, real-time operation, etc.
The SEER-SEM developers have taken the approach to
include over 30 input parameters, including the ability to run
Monte Carlo simulation to compensate for risk [2].
Development modes covered include object oriented, reuse,
COTS, spiral, waterfall, prototype and incremental
69 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
development. Languages covered are 3rd and 4th generation
languages (C++, FORTRAN, COBOL, Ada, etc.), as well as
application generators. It allows staff capability, required
design and process standards, and levels of acceptable
development risk to be input as constraints [15]. Figure 1 is
adapted from a Galorath illustration and shows gross categories
of model inputs and outputs, but each of these represents
dozens of specific input and output possibilities and
parameters.

Figure 1. SEER-SEM I/O Parameters
Features of the model include the following:
- Allows probability level of estimates, staffing and
schedule constraints to be input as independent
variables.
- Facilitates extensive sensitivity and trade-off analyses
on model input parameters.
- Organizes project elements into work breakdown
structures for convenient planning and control.
- Displays project cost drivers.
- Allows the interactive scheduling of project elements
on Gantt charts.
- Builds estimates upon a sizable knowledge base of
existing projects.
Model specifications include these:
- Parameters: size, personnel, complexity, environment
and constraints - each with many individual
parameters; knowledge base categories for platform &
application, development & acquisition method,
applicable standards, plus a user customizable
knowledge base.
- Predictions: effort, schedule, staffing, defects and cost
estimates; estimates can be schedule or effort driven;
constraints can be specified on schedule and staffing.
- Risk Analysis: sensitivity analysis available on all
least/likely/most values of output parameters;
probability settings for individual WBS elements
adjustable, allowing for sorting of estimates by degree
of WBS element criticality.
- Sizing Methods: function points, both IFPUG
sanctioned plus an augmented set; lines of code, both
new and existing.
- Outputs and Interfaces: many capability metrics, plus
hundreds of reports and charts; trade-off analyses with
side-byside comparison of alternatives; integration
with other Windows applications plus user
customizable interfaces.
Aside from SEER-SEM, Galorath, Inc. offers a suite of
many tools addressing hardware as well as software concerns.
One of particular interest to software estimators might be
SEER-SEM, a tool designed to perform sizing of software
projects.
The study done by Thibodeau in 1981 and a study done by
IIT Research Institute (IITRI) in 1989 states that they
calibrated SEER-SEM model using three databases. The
significance of this study is as follows:
1. Results greatly improved with calibration, in fact, as high
as a factor of five.
2. Models consistently obtained better results when used
with certain types of applications.
The IITRI study was significant because it analyzed the
results of seven cost models (PRICE-S, two variants of
COCOMO, System-3, SPQR/20, SASET, SoftCost-Ada) to
eight Ada specific programs. Ada was specifically designed for
and is the principal language used in military applications, and
more specifically, weapons system software. Weapons system
software is different then the normal corporate type of
software, commonly known as Management Information
System (MIS) software. The major differences between
weapons system and MIS software are that weapons system
software is real time and uses a high proportion of complex
mathematical coding. Up to 1997, DOD mandated Ada as the
required language to be used unless a waiver was approved.
Lloyd Mosemann stated: The results of this study, like other
studies, showed estimating accuracy improved with calibration.
The best results were achieved by SEER-SEM model were
accurate within 30 percent, 62 percent of the time.
IV. SLIM ESTIAMTION MODEL
SLIM Software Life-Cycle Model was developed by Larry
Putnam [3]. SLIM hires the probabilistic principle called
Rayleigh distribution between personnel level and time. SLIM
is basically applicable for large projects exceeding 70,000 lines
of code. [4].

Figure 2. The Rayleigh Model
P
e
r
c
e
n
t
a
g
e

o
f

T
o
t
a
l

E
f
f
o
r
t

T=0
D
td
Time
2
2
2
at
Kate
dt
dy
÷
=

Reliability

Maintenance
Risk
Schedule
Cost
Effort


SEER-SEM
Size
Personnel
Environment
Complexity
Constraints
Input Parameters Output Parameters
70 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
It makes use of Rayleigh curve referred from [14] as shown
in figure 2 for effort prediction. This curve represents
manpower measured in person per time as a function of time. It
is usually expressed in personyear/ year (PY/YR). It can be
expressed as

2
2
2
at
Kate
dt
dy
÷
= (4)
where,
dy/dt is the manpower utilization per unit time, “ t”
is the elapsed time, “a” is the parameter that affects the shape
of the curve and “K” is the area under the curve. There are two
important terms associated with this curve:
1) Manpower Build up given by D
0
=K/t
d
3
2) Productivity = Lines of Code/ Cumulative Manpower i.e.
P=S/E and S= CK
1/3
t
d
4/3
,where C is the technology factor which
reflects the effects of various factors on productivity such as
hardware constraints, program complexity, programming
environment and personal experience.
The SLIM model uses two equations: the software the
manpower equation and software productivity level equation
The SLIM model uses Rayleigh distribution to estimate to
estimate project schedule and defect rate. Two key attributes
used in SLIM method are productivity Index (PI) and
Manpower Buildup Index (MBI). The PI is measure of process
efficiency (cost-effectiveness of assets), and the MBI
determines the effects on total project effort that result from
variations in the development schedule [A Probabilistic
Model].
Inputs Required: To use the SLIM method, it is necessary
to estimate system size, to determine the technology factor, and
appropriate values of the manpower acceleration. Technology
factor and manpower acceleration can be calculated using
similar past projects. System size in terms of KDSI is to be
subjectively estimated. This is a disadvantage, because of the
difficulty of estimating KDSI at the beginning of a project and
the dependence of the measure on the programming language.
Completeness of Estimate: The SLIM model provides
estimates for effort, duration, and staffing information for the
total life cycle and the development part of the life cycle.
COCOMO I provides equations to estimate effort, duration,
and handles the effect of re-using code from previously
developed software. COCOMO II provides cost, effort, and
schedule estimation, depending on the model used (i.e.,
depending on the degree of product understanding and
marketplace of the project). It handles the effect of reuse, re-
engineering, and maintenance adjusting the used size measures
using parameters such as percentage of code modification, or
percentage of design modification
Assumptions: SLIM assumes the Rayleigh curve
distribution of staff loading. The underlying Rayleigh curve
assumption does not hold for small and medium sized projects.
Cost estimation is only expected to take place at the start of the
design and coding, because requirement and specification
engineering is not included in the model.
Complexity: The SLIM model’s complexity is relatively
low. For COCOMO the complexity increases with the level of
detail of the model. For COCOMO I the increasing levels of
detail and complexity are the three model types: basic,
intermediate, and detailed. For COCOMO II the level of
complexity increases according to the following order:
Application Composition, Early Design, Post Architecture.
Automation of Model Development: The Putnam method is
supported by a tool called SLIM (Software Life-Cycle
Management). The tool incorporates an estimation of the
required parameter technology factor from the description of
the project. SLIM determines the minimum time to develop a
given software system. Several commercial tools exist to use
COCOMO models.
Application Coverage: SLIM aims at investigating
relationships among staffing levels, schedule, and effort. The
SLIM tool provides facilities to investigate trade-offs among
cost drivers and the effects of uncertainty in the size estimate.
Generalizability: The SLIM model is claimed to be
generally valid for large systems. COCOMO I was developed
within a traditional development process, and was a priori not
suitable for incremental development. Different development
modes are distinguished (organic, semidetached, embedded).
COCOMO II is adapted to feed the needs of new development
practices such as development processes tailored to COTS, or
reusable software availability. No empirical results are
currently available regarding the investigation these
capabilities.
Comprehensiveness: Putnam’s method does not consider
phase or activity work breakdown. The SLIM tool provides
information in terms of the effort per major activity per month
throughout development. In addition, the tool provides error
estimates and feasibility analyses. As the model does not
consider the requirement phase, estimation before design or
coding is not possible. Both COCOMO I and II are extremely
comprehensive. They provide detailed activity distributions of
effort and schedule. They also include estimates for
maintenance effort, and an adjustment for code re-use.
COCOMO II provides prototyping effort when using the
Application Composition model. The Architectural Design
model involves estimation of the actual development and
maintenance phase. The granularity is about the same as for
COCOMO I.
V. REVIC ESTIMATION MODEL

REVIC (REVised version of Intermediate COCOMO) is a
direct descendent of COCOMO. Ourada [16] was one of the
first to analyze validation, using a large Air Force database for
calibration of the REVIC model. There are several key
differences between REVIC and the 1981 version of
COCOMO, however.
71 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
- REVIC adds an Ada development mode to the three
original COCOMO modes; Organic, Semi-detached,
and Embedded.
- REVIC includes Systems Engineering as a starting
phase as opposed to Preliminary Design for
COCOMO.
- REVIC includes Development, Test, and Evaluation as
the ending phase, as opposed to COCOMO ending
with Integration and Test.
- The REVIC basic coefficients and exponents were
derived from the analysis of a database of completed
DoD projects. On the average, the estimates obtained
with REVIC will be greater than the comparable
estimates obtained with COCOMO.

- REVIC uses PERT (Program Evaluation and Review
Technique) statistical techniques to determine the
lines-of-code input value, Low, high, and most
probable estimates for each program component are
used to calculate the effective lines-of-code and the
standard deviation. The effective lines-of-code and
standard deviation are then used in the estimation
equations rather than the linear sum of the line-of-code
estimates.
- REVIC includes more cost multipliers than COCOMO.
Requirements volatility, security, management reserve,
and an Ada mode are added.
VI. SASET ESTIMATIN MODEL

SASET (Software Architecture, Sizing and Estimating
Tool) is a forward chaining, rule-based expert system using a
hierarchically structured knowledge database of normalized
parameters to provide derived software sizing values. These
values can be presented in many formats to include
functionality, optimal development schedule, and man-loading
charts. SASET was developed by Martin Marietta Denver
Aerospace Corp. on contract to the Naval Center for Cost
Analysis. To use SASET, the user must first perform a
software decomposition of the system and define the
functionalities associated with the given software system [22].

SASET uses a tiered approach for system decomposition;
Tier 1 addresses software developmental and environmental
issues. These issues include che class of the software to be
developed, programming language, developmental, schedule,
security, etc. Tier 1 output values represent preliminary budget
and schedule multipliers. Tier II specifies the functional aspects
of the software system, specifically the total lines-of-code
(LOC). The total LOC estimate is then translated into a
preliminary budget estimate and preliminary schedule estimate.
The preliminary budget and schedule estimates are derived by
applying the multipliers from Tier I to the total LOC estimate.
Tier III develops the software complexity issues of the system
under study. These issues include: level of system definition,
system timing and criticality, documentation, etc. A complexity
multiplier is then derived and used to alter the preliminary
budget and schedule estimates from Tier II. The software
system effort estimation is then calculated. Tier IV and V are
not necessary for an effort estimation. Tier IV addresses the in-
scope maintenance associated with the project.

The output of Tier IV is the monthly man-loading for the
maintenance life-cycle. Tier V provides the user with a
capability to perform risk analysis on the sizing, schedule and
budget data. The actual mathematical expressions used in
SASET are published in the User's Guide, but the Guide is very
unclear as to what they mean and how to use them
VII. COSTMODL ESTIMATION MODEL

COSTMODL (Cost MODeL) is a COCOMO based
estimation model developed by the NASA Johnson Space
Center. The program delivered on computer disk for
COSTMODL includes several versions of the original
COCOMO and a NASA developed estimation model KISS
(Keep It Simple, Stupid). The KISS model will not be
evaluated here, but it is very simple to understand and easy to
use; however, the calibration environment is unknown. The
COSTMODL model includes the basic COCOMO equations
and modes, along with some modifications to include an Ada
mode and other cost multipliers.

The COSTMODL as delivered includes several calibrations
based upon different data sets. The user can choose one of
these calibrations or enter user specified values. The model also
includes a capability to perform a self-calibration. The user
enters the necessary information and the model will "reverse"
calculate and derive the coefficient and exponent or a
coefficient only for the input environment data. The model uses
the COCOMO cost multipliers and does not include more as
does REVIC. This model includes all the phases of a software
life cycle. PERT techniques are used to estimate the input
lines-of-code in both the development and maintenance
calculations
VIII. STUDY OF EMPIRICAL MODELS

Empirical estimation models were studied for the past
couple of decades, out of these studies many came with the
result of accuracy and performance. Table I summaries the
brief study of the most relevant empirical models. Studies are
listed in chronological order. For each study, estimation
methods are ranked according to their performance. A “1”
indicates the best model, “2” the second best, and so on.

72 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
TABLE I. SUMMARY OF EMPIRICAL ESTIMATION STUDY
A. Impact of Cost Drivers
Empirical Software estimation models mainly stands over
the cost drivers and scale factors. These model reveals the
problem of instability due to values of the cost drivers and
scale factors, thus affects the sensitivity of the effort. Also,
most of the model depends on the size of the project, a change
in the size leads to the proportionate change in the effort.
Miscalculations of the cost drives have even more vivid change
in the result too. For example, a misjudgment in personnel
capability in COCOMO or REVIC from ‘very high to very
low’ will result in 300% increase in effort. Similarly in SEER-
SEM changing security requirements from ‘low’ to ‘high’ will
result in 400% increase in effort. In PRICE-S, 20% change in
effort will occur due to small change in the value of the
Productivity factor. All models have one or more inputs for
which small changes will result in large changes in effort and,
perhaps, schedule.
The input data problem is further compounded in that some
inputs are difficult to obtain, especially early in a program. The
size must be estimated early in a program using one or more
sizing models. These models usually have not been validated
for a wide range of projects. Some sensitive inputs, such as
analyst and programmer capability, are subjective and often
difficult to determine. Studies like one performed by Brent L.
Barber, Investigative Search of Quality Historical Software
Support Cost Data and Software Support Cost-Related Data,
show that personnel parameter data are difficult to collect.
Figure 3, extended from the SEER-SEM User’s Manual shows


Figure 3. Relative Cost Driver Impact[32]
Sl No. Author Regression COCOMO Analogy SLIM CART ANN
Stepwise
ANOVA
OSR
Expert
Judgment
Other
Methods
1 Luciana Q, 2009 1
2 Yeong-Seok Seo, 2009 1
3 Jianfeng Wen, 2009 2 1
4 Petrônio L. Braga, 2007 2 1
5 Jingzhou Li, 2007 2 1
6
Iris Fabiana de Barcelos Tronto,
2007
3 4 5 2 1
7 Chao-Jung Hsu, 2007 1
8 Kristian M Furulund, 2007 1
9 Bilge Başkeleş, 2007 2 1
10 Da Deng, 2007 2 1
11 Simon, 2006 2 1
12 Tim Menzies, 2005 2 1
13 Bente Anda, 2005 2 1
14 Cuauhtémoc López Martín, 2005 1
15 Parag C, 2005 2 3 1
16 Randy K. Smith, 2001 2 1
17 Myrtveit, Stensrud, 1999 2 3
18 Walkerden, Jeffery, 1999 2 1
19 Kitchenham, 1998 2 1
20 Finnie et al., 1997 2 1 1
21 Shepperd, Schofield, 1997 2 1
22 Jorgensen, 1995 1 2 1
23 Srinivasan, Fischer, 1995 2 4 5 3 1
24 Bisio, Malabocchia, 1995 2 1
25 Subramanian, Breslawski 1993 1 2
26 Mukhopadhyay, Kerke 1992 1-3 2
27 Mukhopadhyay et al., 1992 3 4 2 1
28 Briand et al. 1992 2 3 1
29 Vicinanza et al., 1991 2 3 1
73 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
the relative impact on cost/effort of the different input
parameters for that model. Even "objective" inputs like

Security Requirements in SEER-SEM may be difficult to
confirm early in a program, and later changes may result in
substantially different cost and schedule estimates. Some
sensitive inputs such as the PRICE-S Productivity Factor and
the SLIM PI should be calibrated from past data. If data are not
available, or if consistent values of these parameters cannot be
calibrated, the model’s usefulness may be questionable.
IX. ANALYSIS OF STUDY
A. Accuracy Estimatos
The field of cost estimation suffers a lack of clarity about
the interpretation of a cost estimate. Jørgensen reports different
application of the term ‘cost estimate’ being “the most likely
cost, the planned cost, the budget, the price, or, something
else”. Consequently there is also disagreement about how to
measure the accuracy of estimates. Various indicators for
accuracy – relative and absolute – have been introduced
throughout the cost estimation literature such as mean squared
error (MSE), absolute residuals (AR) or balanced residual error
(BRE). Our literature review indicated that the most commonly
used by far are the mean magnitude relative error or MMRE,
and prediction within x or PRED(x). Of these two, the MMRE
is the most widely used, yet both are based on the same basic
value of magnitude relative error (MRE) which is defined as
The first step will be to apply Conte’s criteria to determine the
accuracy of the calibrated and uncalibrated model. This will be
achieved using the following equations.
Conte’s Criteria:
The performance of model generating continuous output
can be assesses in many ways including PRED(30), MMRE,
correlation etc., PRED(30) is a measure calculated from the
relative error, or RE, which is the relative size of the difference
between the actual and estimated value. One way to view these
measures is to say that training data contains records with
variables 1,2,3,……N and performance measures and
additional new variables N+1, N+2,….
MRE(Magnitude of Relative Error): First, calculate the
Magnitude of Relative Error (degree of estimating error in an
individual estimate) for each data point. This step is a
precedent to the next step and is also used to calculate
PRED(n). Satisfactory results are indicated by a value of 25
percent or less [30].
actual actual predicted MRE / ÷ = (5)
MMRE(mean magnitude of the relative error): The mean
magnitude of the relative error, or MMRE, is the average
percentage of the absolute values of the relative errors over an
entire data set.
i i i
actual actual predicted
N
MMRE /
100
÷ ¯ =
where, N = total number of estimates
RMS (Root Mean Square): Now, calculate the Root Mean
Square (model’s ability to accurately forecast the individual
actual effort) for each data set. This step is a precedent to the
next step only. Again, satisfactory results are indicated by a
value of 25 percent or less[30].

( ) ( )
2
* / 1
i i
actual predicted n RMS ÷ ¯ =


RRMS(Relative Root Mean Square): Lastly, calculate the
Relative Root Mean Square (model’s ability to accurately
forecast the average actual effort) for each data set. According
to Conte, the RRMS should have a value of 25 percent or
less[30].
) / /( T actual RMS RRMS ¯ =

PRED(n): A model should also be within 25 percent
accuracy, 75 percent of the time [30]. To find this accuracy rate
PRED(n), divide the total number of points within a data set
that have an MRE = 0.25 or less (represented by k) by the total
number of data points within the data set (represented by n).
The equation then is: PRED(n) = k/n where n equals 0.25 [30].
In general, PRED(n) reports the average percentage of
estimates that were within n percent of the actual values. Given
N datasets, then


For example, PRED(30) = 50% means that half the
estimates are within 30 percent of the actual.

Wilcoxon Signed-Rank Test.

The next step will be to test the estimates for bias. The
Wilcoxon signed-rank test is a simple, nonparametric test that
determines level of bias. A nonparametric test may be thought
of as a distribution-free test; i.e. no assumptions about the
distribution are made. The best results that can be achieved by
the model estimates is to show no difference between the
number of estimates that over estimated versus those that under
estimated. The Wilcoxon signed-rank test is accomplished
using the following steps [31],
1. Divide each validated subset into two groups based on
whether the estimated effort was greater (T+) or less (T-) than
the actual effort.
2. Sum the absolute value of the differences for the T+ and
T-groups. The closer the sums of these values for each group
are to each other, the lower the bias.
(9)
(8)
(7)
(6)
N

i=1
PRED(n)= Σ

100
N
1 if MRE
i
<=n/100
0 otherwise
74 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
3. Any significant difference indicates a bias to over or
under estimate.
Another performance measure of a model predicting
numeric values is the correlation between predicted and actual
values. Correlation ranges from +1 to -1 and a correlation of +1
means that there is a perfect positive linear relationship
between variables. And can be calculates as follows

The correlation coefficient for COCOMO II is 0.6952 and
the correlation coefficient for proposed model is 0.9985


All these performance measures (correlation, MMRE, and
PRED) address subtly different issues. Overall, PRED
measures how well an effort model performs, while MMRE
measures poor performance.
A single large mistake can skew the MMREs and not effect
the PREDs. Sheppard and Schofield comment that MMRE is
fairly conservative with a bias against overestimate while
PRED(30) will identify those prediction systems that are
generally accurate but occasionally wildly inaccurate[28]
B. Model Accuracy
There is no proof on software cost estimation models
to perform consistently accurate within 25% of the cost and
75% of the time[30]. In general model fails to produce
accurate result with perfect input data. The above studies have
compared empirical estimation models with known input data
and actual cost and schedule information, and have not found
the accuracy to be scintillating. Most model were accurate
within 30% of the actual cost and 57% of the time.


The Ourada study showed even worse results for SEER-SEM,
SASET, and REVIC for the 28 military ground programs in an
early edition of the Space and Missiles Center database. A
1981 study by Robert Thibodeau entitled An Evaluation of
Software Cost Estimating Models showed that calibration
could improve model accuracy by up to 400%. However, the
average accuracy was still only 30% for an early version of
SLIM and 25% for an early version of PRICE-S. PRICE-S and
System-3 are within 30%, 62% of the time. An Air Force
study performed by Ferens in 1983 and published in the ISPA
Journal of Parametrics, concluded that no software support
cost models could be shown to be accurate. The software
support estimation problem is further convoluted by lack of
quality software support cost data for model development,
calibration, and validation. Even if models can be shown to be
accurate, another effect must be considered.

Table III summarizes the parameters used and activities
covered by the models discussed. Overall, model based
techniques are good for budgeting, tradeoff analysis, planning
and control, and investment analysis. As they are calibrated to
past experience, their primary difficulty is with unprecedented
situations.
TABLE II. ANALYSIS OF EMPIRICAL ESTIMATION MODELS
Study Model Application Type Validated Accuracy
MMRE /
MRE
RRMS Pred
Karen
Lum, 2002
COCOMO
Flight Software
34.4 - -
SEER 140.7 - -
COCOMO
Ground Software
88.22 - -
SEER 552.33 - -
Karen
Lum, 2006
COSEEKMO
Kind:min 31 - 60(0.3)
Lang:ftn 44 - 42(0.3)
Kind:max 38 - 52(0.3)
All 40 - 60(0.3)
Mode:org 32 - 62(0.3)
Lang:mol 36 - 56(0.3)
Project:Y 22 - 78(0.3)
Mission Planning 36 - 50(0.3)
Avioicsmonitoring 38 - 53(0.3)
Mode:sd 33 - 62(0.3)
Project:X 42 - 42(0.3)
Fg:g 32 - 65(0.3)
Center:5 57 - 43(0.3)
All 48 - 43(0.3)
Mode:e 64 - 42(0.3)
Cemter:2 22 - 83(0.3)
Gerald L
Ourada,
1992
REVIC
Aero Space
0.373 0.776 42(0.25)
SASET 5.95 -0.733 3.5(0.25)
SEER 3.55 -1.696 10.7(0.25)
Cost Model 0.46 0.53 29(0.25)
Chris F
Kemour,
1987
SLIM
ABC Software
771.87 - -
COCOMO 610.09 - -
FP 102 - -
Estimac 85.48 - -
SLIM
Business:App
772 - -
COCOMO 601 - -
FP 102.74 - -
Estimac 85 - -
Jeremiah
D Deng,
2009
Machine
Learning
Random 0.61 - 0.4(30)
De Tran-
Cao, 2007
Cosmic B-1 39 - 50(0.25)


In Table II, Summary of the analysis of the study, the result
of a collaborative effort of the authors, which includes author
name, cost model name, application type, validated accuracy
(MMRE, RRMS, Pred) is the percentage of estimates that fall
within the specified prediction level of 25 or 30 percent. In this
Chris F Kemour validated SLIM and obtained the result of
highest MRE of 772, COCOMO obtained the result of highest
S
p=

Σ
i
T
(Predicted
i
–p)
2
,


T-1
P=
Σ
i
T
Predicted
i ,
T
a=
Σ
i
T
Actual
i
,

T
S
a=

Σ
i
T
(Actual
i
–a)
2
,
T-1
Corr=
S
pa
/ S
p
* S
a

(10)
S
pa=

Σ
1
T
(Predicted
i
–p)

(Actual
i
–a)

,
T-1
75 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
TABLE III. ACTIVITIES COVERED/FACTORS EXPLICITLY CONSIDERED BY VARIOUS MODELS[33]


MRE rate of 610.09. Karen Lum has validated SEER-
SEM and found to be 552.33. the validation of COSEEKMO
in Mode:e has an enormous MRE of 64 evaluated by Karen
Lum. Ourada study showed REVIC has MMRE of 0.373
and SASET even worse result of 5.95.
X. CONCLUSION
Based upon the background readings, this paper states
that the existing models were highly credible; however, this
survey found this not to be so based upon the research
performed. All the models could not predict the actual
against either the calibration data or validation data to any
level of accuracy or consistency. Surprisingly, SEER and
machine learning techniques were reliable good at predicting
the effort. But however they are not accurate because all the
model lies in the term prediction, prediction never comes
true is proved in this estimation models. In all the models,
the two key factors that influenced the estimate were project
size either in terms of LOC or FP and the capabilities of the
development team personnel. This paper is not convinced
that no model is so sensitive to the abilities of the
development team can be applied across the board to any
software development effort. Finally this paper concludes
that the no model is best for all situations and environment.
REFERENCES
[1] Satyananda, “An Improved Fuzzy Approach for COCOMO’s Effort
Estimation Using Gaussian Membership Function” Journal of
Software, vol 4, pp 452-459, 2009
[2] R. Jensen, “An improved macrolevel software development resource
estimation model”. In 5th ISPA Conference, pp 88–92, 1983
[3] B Boehm, C Abts, and S Chulani. "Software Development Cost
Estimation Approaches – A Survey”, Technical Report USC-CSE-
2000-505", University of Southern California – Center for Software
Engineering, USA, (2000).
[4] S. chulani, B. Boehm, and B. Steece, “Bayesian Analysis of
Emperical Software Engineering Cost Models,’ IEEE Trans.
Software Eng., vol.25, no. 4, pp.573-583, 1999..
[5] Jorgen M, Sjoberg D.I.K, “The Impact of Customer Expectation on
Software Development Effort Estimates” International Journal of
Project Management, Elsevier, pp 317-325, 2004


[6] Chiu NH, Huang SJ, “The Adjusted Analogy-Based Software Effort
Estimation Based on Similarity Distances,” Journal of Systems and
Software, Volume 80, Issue 4, pp 628-640, 2007
[7] Kaczmarek J, Kucharski M, “Size and Effort Estimation for
Applications Written in Java,” Journal of Information and Software
Technology, Volume 46, Issue 9, pp 589-60, 2004
[8] Jeffery R, Ruhe M,Wieczorek I, “Using Public Domain Metrics to
Estimate Software Development Effort,” In Proceedings of the 7th
International Symposium on Software Metrics, IEEE Computer
Society, Washington, DC, pp 16–27, 2001
[9] Heiat A, “Comparison of Artificial Neural Network and Regression
Models for Estimating Software Development Effort,” Journal of
Information and Software Technology, Volume 44, Issue 15, pp 911-
922, 2002
[10] Huang SJ, Lin CY, Chiu NH, “Fuzzy Decision Tree Approach for
Embedding Risk Assessment Information into Software Cost
Estimation Model,” Journal of Information Science and Engineering,
Volume 22, Number 2, pp 297–313, 2006
[11] B.W. Boehm, “Software Engineering Economics,” Prentice Hall,
1981.
[12] B.W. Boehm, E. Horowitz, R. Madachy, D. Reifer, B. K. Clark, B.
Steece, A. W. Brown, S. Chulani, and C. Abts, “Software Cost
Estimation with COCOMO II,” Prentice Hall, 2000.
[13] Vu Nguyen, Bert Steece, Barry Boehm “A Constrained Regression
Technique for COCOMO Calibration” ESEM’08, ACM, pp 213-222,
2008
Group Factor SLIM CheckPoint Price-s Estimacs SEER-SEM
Select
Estimator
COCOM
O II
Size Attributes
Source Instruction Yes Yes Yes No Yes No Yes
Function Points Yes Yes Yes Yes Yes No Yes
OO-Related Metrics Yes Yes Yes ! Yes Yes Yes
Program Attributes
Type/Domain Yes Yes Yes Yes Yes Yes No
Complexity Yes Yes Yes Yes Yes Yes Yes
Language Yes Yes Yes ! Yes Yes Yes
Reuse Yes Yes Yes ! Yes Yes Yes
Required Reliability ! ! Yes Yes Yes No Yes
Computer
Attributes
Resource Constraints Yes Yes Yes Yes Yes No Yes
Platform Volatility ! ! ! ! Yes No Yes
Personnel
Attributes
Personnel Capability Yes Yes Yes Yes Yes Yes Yes
Personnel Continuity ! ! ! ! ! No Yes
Personnel Experience Yes Yes Yes Yes Yes No Yes
Project Attributes
Tools and Techniques Yes Yes Yes Yes Yes Yes Yes
Breakage Yes Yes Yes ! Yes Yes Yes
Schedule Constraints Yes Yes Yes Yes Yes Yes Yes
Process Maturity Yes Yes ! ! Yes No Yes
Team Cohesion ! Yes Yes ! Yes Yes Yes
Security Issues ! ! ! ! Yes No No
Multi Site Development ! Yes Yes Yes Yes No Yes
Activity Covered
Inception Yes Yes Yes Yes Yes Yes Yes
Elaboration Yes Yes Yes Yes Yes Yes Yes
Construction Yes Yes Yes Yes Yes Yes Yes
Transition and Maintenance Yes Yes Yes No Yes No Yes
76 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
[14] K.K.Aggarwal, Yogesh Singh, A.Kaur, O.P.Sangwan "A Neural Net
Based Approach to Test Oracle" ACM Software Engineering Notes
Vol. 29, No. 4, pp 1-6, 2004.
[15] R. W Jensen, “A Comparison of the Jensen and COCOMO Schedule
and Cost Estimation Models”, Proceedings of the International
Society of Parametric Analysts, pp. 96-106, 1983.
[16] Oruada, Gerald L, “Software Cost Estimation Models: A
Callibration, Evaluation, and Compartison “, Air fore institute of
Technology.
[17] K. Srinivasan and D. Fisher, "Machine learning approaches to
estimating software development effort," IEEE Transactions on
Software Engineering, vol. 21, pp. 126-137, 1995.
[18] A. R. Venkatachalam, "Software Cost Estimation Using Artificial
Neural Networks," Presented at 1993 International Joint Conference
on Neural Networks, Nagoya, Japan, 1993.
[19] G. H. Subramanian, P. C. Pendharkar, and M. Wallace, "An
Empirical Study of the Effect of Complexity, Platform, and Program
Type on Software Development Effort of Business Applications,"
Empirical Software Engineering, vol. 11, pp. 541-553, 2006.
[20] S. Kumar, B. A. Krishna, and P. S. Satsangi, "Fuzzy systems and
neural networks in software engineering project management,"
Journal of Applied Intelligence, vol. 4, pp. 31-52, 1994.
[21] R. W. Selby and A. A. Porter, "Learning from examples: generation
and evaluation of decision trees for software resource analysis," IEEE
Transactions on Software Engineering, vol. 14, pp. 1743-1757, 1988.
[22] Denver, CO, Martin-Marietta, Ratliff, Robert W., “ SASET 3.0 user
Guide”, 1993
[23] K. Maxwell, L. Van Wassenhove, and S. Dutta, "Performance
Evaluation of General and Company Specific Models in Software
Development Effort Estimation," Management Science, vol. 45, pp.
787-803, 1999
[24] M. van Genuchten and H. Koolen, "On the Use of Software Cost
Models," Information & Management, vol. 21, pp. 37-44, 1991.
[25] T. K. Abdel-Hamid, "Adapting, Correcting, and Perfecting
softwareestimates: Amaintenance metaphor " in Computer, vol. 26,
pp. 20-29, 1993
[26] F. J. Heemstra, "Software cost estimation," Information and Software
Technology, vol. 34, pp. 627-639, 1992
[27] N. Fenton, "Software Measurement: A necessary Scientific Basis,"
IEEE Transactions on Software Engineering, vol. 20, pp. 199-206,
1994.
[28] M.Sheppered and C. Schofied, “Estimating Software Project Effort
Using Analogies”, IEEE Trans. Software Eng. Vol. 23, pp 736-743,
1997
[29] Barry Boehm. Software engineering economics. Englewood Cliffs,
NJ:Prentice-Hall, 1981. ISBN 0-13-822122-7
[30] S.D. Conte, H.E. Dunsmore, V.Y.Shen, “Software Engineering
Metrics and Models”, Benjamin-Cummings Publishing Co., Inc.,
1986
[31] Mendenhall, W., Wackerly, D.D., Schaeffer, R.L, “Mathematical
statistics with applications, 4th edition”, PWS-KENT Publishing
Company, Boston (1990),752 pp,ISBN 0-534-92026-8
[32] www.faa.gov
[33] Barry Boehma, Chris Abts a and Sunita Chulani, “Software
development cost estimation approaches -A survey” Annals of
Software Engineering, pp 177-205, 2000








AUTHORS PROFILE

Saleem Basha is a Ph.D research scholar in the Department
of Computer Science, Pondicherry University. He has
obtained B.E in the field of Electrical and Electronics
Engineering, Bangalore University, Bangalore, India and
M.E in the field of Computer Science and Engineering,
Anna University, Chennai, India. He is currently working in
the area of SDLC specific effort estimation models and web
service modelling systems.
Dr. Dhavachelvan Ponnurangam is working as Associate
Professor, Department of Computer Science, Pondicherry
University, India. He has obtained his M.E. and Ph.D. in the
field of Computer Science and Engineering in Anna
University, Chennai, India. He is having more than a decade
of experience as an academician and his research areas
include Software Engineering and Standards, web service
computing and technologies. He has published around 75
research papers in National and International Journals and
Conferences. He is collaborating and coordinating with the
research groups working towards to develop the standards
for Attributes Specific SDLC Models & Web Services
computing and technologies.

77 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
A Survey on Preprocessing Methods for
Web Usage Data
V.Chitraa
Lecturer
CMS College of Science and Commerce
Coimbatore, Tamilnadu, India
vchit2003@yahoo.co.in

Dr. Antony Selvdoss Davamani
Reader in Computer Science
NGM College (AUTONOMOUS )
Pollachi, Coimbatore,Tamilnadu, India
selvdoss@yahoo.com

Abstract— World Wide Web is a huge repository of web pages
and links. It provides abundance of information for the Internet
users. The growth of web is tremendous as approximately one
million pages are added daily. Users’ accesses are recorded in
web logs. Because of the tremendous usage of web, the web log
files are growing at a faster rate and the size is becoming huge.
Web data mining is the application of data mining techniques in
web data. Web Usage Mining applies mining techniques in log
data to extract the behavior of users which is used in various
applications like personalized services, adaptive web sites,
customer profiling, prefetching, creating attractive web sites
etc., Web usage mining consists of three phases preprocessing,
pattern discovery and pattern analysis. Web log data is usually
noisy and ambiguous and preprocessing is an important process
before mining. For discovering patterns sessions are to be
constructed efficiently. This paper reviews existing work done
in the preprocessing stage. A brief overview of various data
mining techniques for discovering patterns, and pattern
analysis are discussed. Finally a glimpse of various applications
of web usage mining is also presented.

Keywords- Data Cleaning, Path Completion, Session
Identification , User Identification, Web Log Mining
I. INTRODUCTION
Data mining is defined as the automatic extraction of
unknown, useful and understandable patterns from large
database. Enormous growth of World Wide Web increases the
complexity for users to browse effectively. To increase the
performance of web sites better web site design, web server
activities are changed as per users’ interests. The ability to
know the patterns of users’ habits and interests helps the
operational strategies of enterprises. Various applications like
e-commerce, personalization, web site designing, recommender
systems are built efficiently by knowing users navigation
through web. Web mining is the application of data mining
techniques to automatically retrieve, extract and evaluate
information for knowledge discovery from web documents and
services.
The objects of Web mining are vast, heterogeneous and
distributing documents. The logistic structure of Web is a graph
structured by documents and hyperlinks, the mining results
maybe on Web contents or Web structures. Web mining is
divided into three types. They are Web content mining, Web
structure mining and Web usage mining.
Web Content Mining deals with the discovery of useful
information from the web contents or data or documents or
services.
Web Structure Mining mines the structure of hyperlinks
within the web itself. Structure represents the graph of the link
in a site or between the sites.
Web Usage Mining mines the log data stored in the web
server.
A. Web Usage Mining
Web usage mining also known as web log mining is the
application of data mining techniques on large web log
repositories to discover useful knowledge about user’s
behavioral patterns and website usage statistics that can be used
for various website design tasks. The main source of data for
web usage mining consists of textual logs collected by
numerous web servers all around the world. There are four
stages in web usage mining.
Data Collection : users log data is collected from various
sources like serverside, client side, proxy servers and so on.
Preprocessing : Performs a series of processing of web log
file covering data cleaning, user identification, session
identification, path completion and transaction identification.
Pattern discovery : Application of various data mining
techniques to processed data like statistical analysis,
association, clustering, pattern matching and so on.
Pattern analysis : once patterns were discovered from web
logs, uninteresting rules are filtered out. Analysis is done using
knowledge query mechanism such as SQL or data cubes to
perform OLAP operations.
All the four stages are depicted through the following
figure.
78 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010



The objective of this paper is to provide a review of web
usage mining and a survey of preprocessing stage. Data
Collection section list out various data sources, preprocessing
section reviews the different works done in session
identification, path completion process. Remaining sections
briefs about pattern discovery, analysis and the different areas
of applications where web usage mining is used.
II. DATA COLLECTION
Data Collection is the first step in web usage mining
process. It consists of gathering the relevant web data. Data
source can be collected at the server-side, client-side, proxy
servers, or obtain from an organization’s database, which
contains business data or consolidated Web data [13].
Server level collection collects client requests and stored in
the server as web logs. Web server logs are plain text that is
independent from server platform. Most of the web servers
follow common log format as
“ ipaddress username password date/timestamp url
version status-code bytes-sent“
Some servers follow Extended log format along with
referrer and user agent. Referrer is the referring link url and
user agent is the string describing the type and version of
browser software used. Web cache and the IP address
misinterpretation are the two drawbacks in the server log.
Web cache keeps track of web pages that requests and saves a
copy of these pages for a certain period. If there is a request for
same page, the cache page is in use instead of making new
request to the server. Therefore, these requests are not record
into the log files.
Cookies are unique ID generated by the web server for
individual client browsers and it automatically tracks the site
visitors [16]. When the user visits next time the request is send
back to the web server along with ID. However if the user
wishes for privacy and security, they can disable the browser
option for accepting cookies.
Explicit User Input data is collected through registration
forms and provides important personal and demographic
information and preferences. However, this data is not reliable
since there are chances of incorrect data or users neglect those
sites.
Client Side Collection is advantageous than server side
since it overcomes both the caching and session identification
problems. Browsers are modified to record the browsing
behaviors. Remote agents like Java Applets are used to collect
user browsing information. Java applets may generate some
additional overhead especially when they are loaded for the
first time. But users are to be convinced to use modified
browser. Along with log files intentional browsing data from
client side like “add to my favorites”, “copy” is also added for
efficient web usage mining [27].
Proxy level collection is the data collected from
intermediate server between browsers and web servers. Proxy
caching is used to reduce the loading time of a Web page
experienced by users as well as the network traffic load at the
server and client sides [16]. Access log from proxy servers are
of same format as web server log and it records the web page
request and response for the server. Proxy traces may reveal the
actual HTTP requests from multiple clients to multiple Web
servers. This may serve as a data source for characterizing the
browsing behavior of a group of anonymous users sharing a
common proxy server.
III. DATA PREPROCESSING
The information available in the web is heterogeneous and
unstructured. Therefore, the preprocessing phase is a
prerequisite for discovering patterns. The goal of
preprocessing is to transform the raw click stream data into a
set of user profiles [8]. Data preprocessing presents a number
of unique challenges which led to a variety of algorithms and
heuristic techniques for preprocessing tasks such as merging
and cleaning, user and session identification etc [18]. Various
research works are carried in this preprocessing area for
grouping sessions and transactions, which is used to discover
user behavior patterns.
A. Data Cleaning
Data Cleaning is a process of removing irrelevant items
such as jpeg, gif files or sound files and references due to
spider navigations. Improved data quality improves the analysis
on it. The Http protocol requires a separate connection for
every request from the web server. If a user request to view a
particular page along with server log entries graphics and
scripts are download in addition to the HTML file. An
exception case is Art gallery site where images are more
important. Check the Status codes in log entries for successful
codes. The status code less than 200 and greater than 299
were removed.
B. User Identification
Identification of individual users who access a web site is
an important step in web usage mining. Various methods are
to be followed for identification of users. The simplest method
is to assign different user id to different IP address. But in
Proxy servers many users are sharing the same address and
same user uses many browsers. An Extended Log Format


Data Cleaning
User Identification
Session Identification
Transaction Identification
Pattern
discovery
Figure 1. Phases of Web usage mining
Web
Log
Pattern
Analysis
79 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
overcomes this problem by referrer information, and a user
agent. If the IP address of a user is same as previous entry and
user agent is different then the user is assumed as a new user.
If both IP address and user agent are same then referrer URL
and site topology is checked. If the requested page is not
directly reachable from any of the pages visited by the user,
then the user is identified as a new user in the same address
[20]. Caching problem can be rectified by assigning a short
expiration time to HTML pages enforcing the browser to
retrieve every page from the server [7].
C. Session Identification
A user session can be defined as a set of pages visited by
the same user within the duration of one particular visit to a
web-site. A user may have a single or multiple sessions during
a period. Once a user was identified, the click stream of each
user is portioned into logical clusters. The method of portioning
into sessions is called as Sessionization or Session
Reconstruction. A transaction is defined as a subset of user
session having homogenous pages. There are three methods in
session reconstruction. Two methods depend on time and one
on navigation in web topology.
Time Oriented Heuristics : The simplest methods are time
oriented in which one method based on total session time and
the other based on single page stay time. The set of pages
visited by a specific user at a specific time is called page
viewing time. It varies from 25.5 minutes [5] to 24 hours [23]
while 30 minutes is the default timeout by R.Cooley [19]. The
second method depends on page stay time which is calculated
with the difference between two timestamps. If it exceeds 10
minutes then the second entry is assumed as a new session.
Time based methods are not reliable because users may involve
in some other activities after opening the web page and factors
such as busy communication line, loading time of components
in web page, content size of web pages are not considered.
Navigation-Oriented Heuristics : uses web topology in
graph format. It considers webpage connectivity, however it is
not necessary to have hyperlink between two consecutive page
requests. If a web page is not connected with previously visited
page in a session, then it is considered as a different session.
Cooley proposed a referrer based heuristics on the basis of
navigation in which referrer URL of a page should exists in the
same session. If no referrer is found then it is a first page of a
new session.
Both the methods are used by many applications. To
improve the performance different methods were devised on
the basis of Time and Navigation Oriented heuristics by
different researchers. Different works were done by researchers
for effective reconstruction of sessions.
The referrer-based method and time-oriented heuristics
method are combined to accomplish user session identification
in [13]. Web Access Log set is the set of all records in the web
access log and stored according to time sequence A User
Session Set is obtained from the Web Access Log Set by
following rules such as different users are distinguished by
different IP address. If the IP addresses are same, the different
browsers or operating systems indicate different users and if
the IP addresses are same, the different browsers and operation
systems are same, the referrer information is taken into
account. The Referrer URL field is checked and a new user
session is identified if the URL in the Referrer URL field has
never been accessed before, or there is a large interval (more
than 10 seconds [12]) between the access time of this record
and the previous one if the Referrer URL field is empty. If the
sessions identified by the previous step contain more than one
visit by the same user at different time, the time-oriented
heuristics is then used to divide the different visits into
different user sessions.
A simple algorithm is devised by Baoyao Zhou [4]. An
access session is created as a pair of URL and the requested
time in a sequence of requests with a timestamp. The duration
of an URL is estimated as the difference of request time of
successor entry and current entry. For the last URL there is no
successor. So the duration is estimated as the average duration
of the current session. The end time of session is the start time
and duration. This algorithm is suitable when there are more
number of URL’s in a session. The default time set by author
is 30 minutes per session.
Smart Miner is a new method devised by Murat Ali and
team [16, 17]. This framework is a part of Web Analytics
Software. The sessions constructed by SMART-SRA contains
sequential pages accessed from server-side works in two stages
and follows Timestamp Ordering Rule and Topology rule. In
the first stage the data stream is divided into shorter page
sequences called candidate sessions by using session duration
time and page stay time rules. In the second stage candidate
sessions are divided into maximal sub sessions from sequences
generated in the first phase. In the second phase referrer
constraints of the topology rule are added by eliminating the
need for inserting backward browser moves. The pages
without any referrers are determined in the candidate session
from the web topology. Then those pages are removed. If a
hyperlink exists from the previously constructed session then
those pages are appended to the previous sessions. In this
sessions are formed one after another. An agent simulator is
developed by authors to simulate an actual web user. It
randomly generates a typical web site topology and a user
agent to accesses the same from its client side and acts like a
real user. An important feature of the agent simulator is its
ability to model dynamic behaviors of a web agent. Time
constraint is also considered as the difference between two
consecutive pages is smaller than 10 minutes
Another method using Integer Programming was proposed
by Robert F.Dell [21]. The advantage of this method is
construction of all sessions simultaneously. He suggests that
each web log is considered as a register. Registers from the
same IP address and agent as well as linked are grouped to
form a session. A binary variable is used and a value of 1 or 0
is assigned depending on whether register is assigned a position
in a particular session or not. Constraints such as each register
is used at most only once and in only one session for each
ordered position. A maximization problem is formulated. To
improve the solution time the subset of binary variables is set
to zero. An experiment is conducted to show how objective
function is varied and results are obtained with raw registers
and filtered for MM objects and errors. Unique pages and links
between pages are counted. Chunks with same IP address and
80 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
agent within a time limit is formed such that no register in one
chunk could ever be part of a session in another. Experiment
is focused with IP address with high diversity and a higher
number of registers. Sessions produced better match an
expected empirical distribution.
Graphs are also used for session identification. It gives more
accurate results for session identification. Web pages are
represented as vertices and hyperlinks are represented as
edges in a graph. User navigations are modeled as traversals
from which frequent patterns can be discovered. i.e., the sub-
traversals that are contained in a large ratio of traversals [22].
A method was proposed by Mehdi Heydari and team [15].
They considered client side data is also important to
reconstruct user’s session. There are three phases in this
method. In first phase an AJAX interface is designed to
monitor user’s browsing behavior. Events such as Session
start, end, on page request, on page load, on page focus are
created along with user’s interaction and are recorded in
session. In the second phase a base graph is constructed using
web usage data. Browsing time of web pages in indicated as
vertices. Traversal is a sequence of consecutive web pages on
a base graph [22]. A database is created with traversals. In
phase three graph mining method is applied to the database to
discover weighted frequent pattern. Weighted frequent pattern
is the pattern when weight of traversal is greater than or equal
to a given Minimum Browsing Time.
Another algorithm proposed by Junjie Chen and Wei Liu in
which data cleaning and session identification is combined [13]
In this deleting the content foreign to mining algorithms
gathered from web logs. User activity record is checked,
judges whether the record is spider record or not and judges
whether it is embedded object in pages or not according to
URL of pages requested and site structure graph. Session
record is searched if no session exists, a new session is
established. If the present session ends or exceeds the preset
time threshold, the pattern will ends it and founds a new one.
Graph mining methods constructs accurate sessions and the
time taken is also comparatively less. More research is to be
done in this area.
D. Path Completion
There are chances of missing pages after constructing
transactions due to proxy servers and caching problems
[25][26]. So missing pages are added as follows: The page
request is checked whether it is directly linked to the last page
or not. If there is no link with last page check the recent
history. If the log record is available in recent history then it is
clear that “back” button is used for caching until the page has
been reached. If the referrer log is not clear, the site topology
can be used for the same effect. If many pages are linked to the
requested page, the closest page is the source of new request
and so that page is added to the session. There are three
approaches in this regard.
Reference Length approach: This approach is based on the
assumption that the amount of time a user spends on a page
correlates to whether the page is a auxiliary page or content
page for that user. It is expected that the time spent on
auxiliary page is small and content page is more. A reference
length can be calculated that estimates the cut off between
auxiliary and content references. The length of each reference
is estimated by taking the difference between the time of the
next reference and the current reference. But the last reference
has no next reference. So this approach assumes the last one is
always a auxiliary reference.
Maximal Forward Reference: A transaction is considered
as the set of pages from the visited page until there is a
backward reference. Forward reference pages are considered
as content pages and the path is taken as index pages. A new
transaction is considered when a backward reference is made.
Time Window : A time window transaction is framed from
triplets of ipaddress, user identification, and time length of each
webpage up to a limit called time window. If time window is
large, each transaction will contain all the page references for
each user. Time window method is also used as a merge
approach in conjunction with one of the previous methods.
An optimal algorithm is devised by G.Arumugam and
S.Suguna [2] to generate accurate path sequences by using two
way hashed structure based access history list to frame a
complete path with optimal time. In this tree structure of server
pages are searched. There are two problems in this search as
backward reference consumes more time in unused pages also
and pages which are directly referred from other server’s leads
to incorrect session identification. To overcome these issues
authors gives different algorithm. In this Session Identification
algorithm data structures such as Array List to represent Web
Logs and User Access List, a Hash table to represent server
pages, a two-way hashed structure are utilized. Two way
hashed structure is used to store Access History List (AHL) to
represent user accessed page sequence. Two hash tables
primary and secondary hash tables are used in which primary is
used to store sessions and pointers to secondary table which is
having a complete path navigation. To solve the time
consumption only visited pages are stored in access history list
and unused is not considered. Using a single search in history
list, the page sequences are directly located. When pages are
referred from other servers directly start from the page and not
from root. If the page is not available in present sessions, start a
new session and we can infer that this is not a backward
reference but the page is browsed in another server. This
method generates correct complete path than maximal forward
and reference length methods.
IV. PATTERN DISCOVERY AND ANALYSIS
Once user transactions have been identified, a variety of
data mining techniques are performed for pattern discovery in
web usage mining. These methods represent the approaches
that often appear in the data mining literature such as discovery
of association rules and sequential patterns and clustering and
classification etc., [13]. Classification is a supervised learning
process, because learning is driven by the assignment of
instances to the classes in the training data. Mapping a data
item into one of several predefined classes is done. It can be
done by using inductive learning algorithms such as decision
tree classifiers, naive Bayesian classifiers, Support Vector
Machines etc., Association Rule Discovery techniques are
81 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
applied to databases of transactions where each transaction
consists of a set of items. By using Apriori algorithm the
biggest frequent access item sets from transaction databases
that is the user access pattern are discovered. Clustering is a
technique to group users exhibiting similar browsing patterns.
Such knowledge is especially useful for inferring user
demographics in order to perform market segmentation in E-
commerce applications or provide personalized web content to
pages. Sequential Patterns are used to find inter-session
patterns such that the presence of a set of items followed by
another item in a time-ordered set of sessions. By using this
approach, web marketers can predict future visit patterns which
will be helpful in placing advertisements aimed at certain user
groups.
Pattern Analysis is the last stage of web usage mining.
Mined patterns are not suitable for interpretations and
judgments. So it is important to filter out uninteresting rules or
patterns from the set found in the pattern discovery phase. In
this stage tools are provided to facilitate the transformation of
information into knowledge. The exact analysis methodology
is usually governed by the application for which Web mining is
done. Knowledge query mechanism such as SQL is the most
common method of pattern analysis [7]. Another method is to
load usage data into a data cube in order to perform OLAP
operations.
V WEB USAGE MINING APPLICATIONS
Users’ behavior is used in different applications such as
Personalization, e-commerce, to improve the system and to
improve the system design as per their interest etc., Web
personalization offers many functions such as simple user
salutation to more complicate such as content delivery as per
users interests. Content delivery is very important since non-
expert users are overwhelmed by the quantity of information
available online. It is possible to anticipate the user behavior by
analyzing the current navigation patterns with patterns which
were extracted from past web log. Recommendation systems
are the most common application. Personalized sites are
example for recommendation systems. E-Commerce
applications need customer details for Customer Relationship
Management. Usage mining techniques are very useful to
focus customer attraction, customer retention, cross sales and
customer departure. System Improvement is done by
understanding the web traffic behavior by mining log data so
that policies are developed for Web caching, load balancing,
network transmission and data distribution. Patterns for
detecting intrusion fraud, attempted break-ins are also provided
by mining. Performance is improved to satisfy users. Site
Modification is a process of modifying the web site and
improving the quality of design and contents on knowing the
interest of users. Pages are re-linked as per customer behavior.
VI FUTURE
There are a number of issues in preprocessing of log data.
Volume of requests in web log in a single log file is the first
challenge. Analyzing web user access log files helps to
understand the user behaviors in web structure to improve the
design of web components and web applications. Log includes
entries of document traversal, file retrieval and unsuccessful
web events among many others that are organized according to
the date and time. It is important to eliminate the irrelevant
data. So cleaning is done to speed up analysis as it reduces the
number of records and increases the quality of the results in the
analysis stage. Efforts in this data to find accurate sessions are
likely to be the most fruitful in the creation of much effective
web usage mining and personalization systems. By following
data preparation steps, it is very easier to generate rules which
identify directories for website improvement. More research
can be done in preprocessing stages to clean raw log files, and
to identify users and to construct accurate sessions.
VII CONCLUSION
Web sites are one of the most important tools for
advertisements in international area for universities and other
foundation. The quality of a website can be evaluated by
analyzing user accesses of the website. To know the quality of
a web site user accesses are to be evaluated by web usage
mining. The results of mining can be used to improve the
website design and increase satisfaction which helps in various
applications. Log files are the best source to know user
behavior. But the raw log files contains unnecessary details
like image access, failed entries etc., which will affect the
accuracy of pattern discovery and analysis. So preprocessing
stage is an important work in mining to make efficient pattern
analysis. To get accurate mining results user’s session details
are to be known. The survey was performed on a selection of
web usage methodologies in preprocessing proposed by
research community. More concentration is done on
preprocessing stages like session identification and path
completion and we have presented various works done by
different researchers. Our research in future is to create more
efficient session reconstructions through graphs and mining the
sessions using graph mining as quality sessions gives more
accurate patterns for analysis of users.
REFERENCES
[1] Archana N.Mahanta ,“Web Mining:Application of Data Mining,”,
Proceedings of NCKM , 2008.
[2] Arumugam G. and Suguna S,“Optimal Algorithms for Generation of
User Session Sequences Using Server Side Web User Logs,
“,ESRGroups, France , 2009.
[3] Bamshad Mobasher “Data Mining for Web Personalization,”, LCNS,
Springer-Verleg Berlin Heidelberg, 2007.
[4] Baoyao Zhou, Siu Cheung Hui and Alvis C.M.Fong,“An Effective
Approach for Periodic Web Personalization,“, Proceedings of the
IEEE/ACM International Conference on Web Intelligence. IEEE,2006.
[5] Catlegde L. and Pitkow J., “Characterising browsing behaviours in the
world wide Web,”, Computer Networks and ISDN systems, 1995.
[6] Chungsheng Zhang and Liyan Zhuang , “New Path Filling Method on
Data Preprocessing in Web Mining ,“, Computer and Information
Science Journal , August 2008.
[7] Cyrus Shahabi, Amir M.Zarkessh, Jafar Abidi and Vishal Shah
“Knowledge discovery from users Web page navigation, “, In.
Workshop on Research Issues in Data Engineering, Birmingham,
England,1997.
[8] Demin Dong, “Exploration on Web Usage Mining and its Application, “,
IEEE,2009.
82 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
[9] Dimitrios Pierrakos, Georgios Paliouras, Christos Papatheodorou and
Constantine D.Spyropoulos “Web Usage Mining as a Tool for
Personalization, “, Kluwer Academic Publishers,2003.
[10] Feng Tao and Fionn Murtagh, “Towards Knowledge Discovery from
WWW Log Data,” IEEE 2007.
[11] Jaideep Srivastave, Robert Cooley, Mukund Deshpande, Pang-Ning Tan
“Web Usage Mining:Discovery and Applications of Usage Patterns from
Web Data,”, SIGKDD Explorations. ACM SIGKDD,2000.
[12] Jia Hu and Ning Zhong “Clickstream Log Acquisition with Web
Farming,,”, Proceedings of the International Conference on Web
Intelligence, IEEE,2005.
[13] Jose M. Domenech1 and Javier Lorenzo, “A Tool for Web Usage
Mining , “ , 8th International Conference on Intelligent Data Engineering
and Automated Learning ,2007
[14] Jungie Chen and Wei Liu, “Research for Web Usage Mining Model,”,
International Conference on Computational Intelligence for Modelling
Control and Automation, IEEE,2006.
[15] Mehdi Heydari, Raed Ali Helal, and Khairil Imran Ghauth, “A Graph-
Based Web Usage Mining Method Considering Client Side Data, “,
International Conference on Electrical Engineering and Informatics,
IEEE, 2009
[16] Murat Ali Bayir, Ismail Hakki Toroslu, Ahmet Cosar and Guven Fidan
“Discovering more accurate Frequent Web Usage Patterns, ”,
arXiv0804.1409v1, 2008
[17] Murat Ali Bayir, Ismail Hakki Toroslu, Ahmet Cosar and Guven Fidan
“Smart Miner:A new Framework for Mining Large Scale Web Usage
Data,” , International World Wide Web Conference Committee, ACM,
2009.
[18] Raju G.T. and Sathyanarayana P. “Knowledge discovery from Web
Usage Data : Complete Preprocessing Methodology, ”, IJCSNS 2008.
[19] Robert.Cooley,Bamshed Mobasher, and Jaideep Srinivastava, “Web
mining:Information and Pattern Discovery on the World Wide Web,”,In
International conference on Tools with Artificial Intelligence, pages
558-567, Newport Beach, IEEE,1997.
[20] Robert.Cooley,Bamshed Mobasher and Jaideep Srinivastava,“Data
Preparation for Mining World Wide Web Browsing Patterns ,“, journal
of knowledge and Information Systems,1999.
[21] Robert F.Dell ,Pablo E.Roman, and Juan D.Velasquez, “Web User
Session Reconstruction Using Integer Programming,” , IEEE/ACM
International Conference on Web Intelligence and Intelligent
Agent,2008.
[22] Seong Dae Lee, and Hyu Chan Park, “Mining Weighted Frequent
Patterns from Path Traversals on Weighted Graph, “,International
Journal of Computer Science and Network Security, VOL.7 No.4, April
2007.
[23] Spilipoulou M.and Mobasher B, Berendt B.,“A framework for the
Evaluation of Session Reconstruction Heuristics in Web Usage
Analysis,” INFORMS Journal on Computing Spring ,2003.
[24] Suresh R.M. and Padmajavalli .R. ,“An Overview of Data
Preprocessing in Data and Web usage Mining ,“ IEEE, 2006.
[25] Yan Li, Boqin FENG and Qinjiao MAO, “Research on Path Completion
Technique in Web Usage Mining,,”, International Symposium on
Computer Science and Computational Technology, IEEE,2008.
[26] Yan Li and Boqin FENG “The Construction of Transactions for Web
Usage Mining,,”, International Conference on Computational
Intelligence and Natural Computing, IEEE,2009.
[27] Yu-Hai tao , Tsung-Pei Hong andYu-Ming Su, “Web usage mining with
intentional browsing data, “, Expert Systems with Applications , Science
Direct,2008.
AUTHORS PROFILE



Mrs. V. Chitraa is a doctoral student in
Manonmaniam Sundaranar University, Tirunelveli,
Tamilnadu. She is working as a lecturer in CMS
college of Science and Commerce, Coimbatore. Her
research interest lies in Database Concepts, Web
Usage Mining, Clustering.


Dr. Antony Selvadoss Davamani is working as a
Reader in NGM college with a teaching experience of
about 22 years. His research interests includes
knowledge management, web mining, networks,
mobile computing, telecommunication. He has
published about 8 books and 16 papers.

83 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Seamless Data Services for Real Time Communication in a Heterogeneous
Networks using Network Tracking and Management

Adiline Macriga. T
1
Dr. P. Anandha Kumar
2


1. Research Scholar, Department of Information & Communication, MIT Campus, Anna University
Chennai, Chennai – 600025. email: adiline_shanker@rediffmail.com, adiline.it@ssec.edu.in
2. Asst. Professor, Department of Information Technology, MIT Campus, Anna University Chennai,
Chennai – 600025. email: anandh@annauniv.edu

Abstract

Heterogeneous Networks is the integration of all existing
networks under a single environment with an
understanding between the functional operations and
also includes the ability to make use of multiple
broadband transport technologies and to support
generalized mobility. It is a challenging feature for
Heterogeneous networks to integrate several IP-based
access technologies in a seamless way. The focus of this
paper is on the requirements of a mobility management
scheme for multimedia real-time communication services
- Mobile Video Conferencing. Nowadays, the range of
available wireless access network technologies includes
cellular or wide-area wireless systems, such as cellular
networks (GSM/GPRS/UMTS) or Wi-Max, local area
Network or personal area wireless systems, comprising
for example, WLAN (802.11 a/b/g) and Bluetooth. As the
mobile video conferencing is considered, the more
advanced mobile terminals are capable of having more
than one interface active at the same time. In addition, the
heterogeneity of access technologies and also the
seamless flow of information will increase in the future,
making the seamless integration of the access network a
key challenge for mobility management in a
heterogeneous network environment. Services must be
provided to the user regardless of the particular access
technology and also the type of service provider or the
network used.

Keywords: Location Tracking, Location Management,
Mobility Management, Heterogeneous Networks,
Seamless services.

I. INTRODUCTION

Today’s communication technology becomes outdated for
tomorrows requirement. The growth of the
communication industry is tremendous and unimaginable.
There are different modes like “wired, wireless, adhoc,
mobile etc., supporting the growth of the communication
industry but with all certain limits. Now, it is time to
emerge into the world of mobility where the wireless
communication plays a vital role, where it is necessary to
satisfy the requirements of the modern world. A world
without a mobile phone is unimaginable. It has taken
people to a different world. Now it is the time for
providing services in an uninterrupted way. In medical
industry a millisecond delay in transfer of information
may lead to a loss of life. So the technology has to be
updated day by day to meet the needs of the various
industries. As the communication industry is considered it
is one of the challenging one for the researchers.
Considering the infrastructure of the existing
communication industry a huge amount has been
deployed by different service providers to satisfy their
customer needs. It is now a challenge to provide the flow
of information seamlessly without re-modifying the
existing infrastructure. The most challenging one is to
provide mobility management for real time
communication services. This paper mainly concentrates
on framing a path in advance between the source and the
destination based on the nature of the data being
communicated in this case mobile video conferencing.
This paper discusses the challenge involved in the
mobility and handoff technique. In heterogeneous
wireless networks, traditionally handoff is mainly
classified as : horizontal handoff and vertical handoff. A
horizontal handoff is made between different access
points within the same link-layer technology such as
when transferring a connection from one Base Station to
another or from one Access Point to another. A vertical
handoff is a handoff between access networks with
different link-layer technologies, which will involve the
transfer of a connection between a Base Station and an
Access Point. Seamless and efficient Vertical Handoff
between different access technologies is an essential and
challenging problem in the development toward the next-
generation wireless networks [1][12]. Internally as the
handoff process is considered it can be further carried out
using the following main steps: system discovery, handoff
decision, and handoff execution [24]. During the system
discovery phase, mobile terminals equipped with multiple
interfaces have to determine which networks can be used
and the services available in each network. During the
handoff decision phase, the mobile device determines
which network it should connect to. During the handoff
execution phase, connections need to be rerouted from the
existing network to the new network in a seamless
manner. There are three strategies for handoff decision
mechanisms: mobile-controlled handoff, network-
controlled handoff, and mobile-assisted handoff [14].
Mobile Controlled Handoff is used in IEEE 802.11
WLAN networks, where a Mobile Host continuously
monitors the signal of an Access Point and initiates the
handoff procedure. Network Controlled Handoff is used
in cellular voice networks where the decision mechanism
of handoff control is located in a network entity. Mobile
Assisted Handoff has been widely adopted in the current
WWANs such as GPRS, where the mobile host measures
the signal of surrounding base stations and the network
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
84 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
then employs this information and decides whether or not
to trigger handoff [3][13]. The handoff algorithms[3]
considered are based on the threshold comparison of one
or more metrics and dynamic programming/artificial
intelligent techniques applied to improve the accuracy of
the handoff procedure. The most common metrics are
received signal strength, carrier-to-interference ratio,
signal-to-interference ratio, and bit error rate [2]. In
heterogeneous wireless networks, even though the
functionalities of access networks are different, all the
networks use a specific signal beacon or reference
channel with a constant transmit power to enable received
signal strength measurements. Thus, it is very natural and
reasonable for vertical handoff algorithms to use received
signal strength as the basic criterion for handoff decisions
[14] [16].
In order to avoid the ping-pong effect [4],
additional parameters such as hysteresis and dwelling
timer can be used solely or jointly in the handoff decision
process. In addition to the absolute received signal
strength threshold, a relative received signal strength
hysteresis between the new base station and the old base
station is added as the handoff trigger condition to
decrease unnecessary handoffs. With this implementation
it will be possible to provide an uninterrupted flow of
multimedia communication. The ultimate goal of this
paper is to provide the services based on the saying “Any
time Anything Anywhere and Everywhere Anystate and
Everystate”. We follow this approach by proposing a
location tracking based solution that supports hybrid
handovers without disruption of real time multimedia
communication services. The solution provided is
mobility management using Location based tracking and
Network management.
The rest of the paper is organized as follows:
Section II reviews related work on location estimation and
vertical handover. Section III provides the solution for
mobility management. Section IV presents the proposed
method. Section V deals with the performance evaluation.
Section VI presents the results and related discussion.
Section VII discusses directions for future work and
concludes this paper.

II. SURVEY OF EXISTING TECHNOLOGIES &
METHODS

The session below provides the survey on the available
technologies that supports the communication at the
various stages and aspects. Daniel et al. [5] proposes a
handoff scheme based on RSS with the consideration of
thresholds and hysteresis for mobile nodes to obtain
better performance. However, in heterogeneous wireless
networks, RSS from different networks can vary
significantly due to different techniques used in the
physical layers and cannot be easily compared with each
other. Thus, the methods in [4] and [5] cannot be
applied to VHO directly. Anthony et al. [19] use the
dwelling timer as a handoff initiation criterion to
increase the WLAN utilization. It was shown in [21]
that the optimal value for the dwelling timer varies
along with the used data rate or, to be more precise,
with the effective throughput ratio. In [8], Olama et al.
extend the simulation framework in [14] by introducing
a scenario for multiple radio network environments.
Their main results show that the handoff delay caused
by frequent handoff has a much bigger degrading effect
for the throughput in the transition region. In addition,
the benefit that can be achieved with the optimal value
of the dwelling timer as in [7] may not be enough to
compensate for the effect of handoff delay. In [27],
claudio et al. propose an automatic Interface selection
approach by performing the VHO if a specific number
of continuous received beacons from the WLAN exceed
or fall below a predefined threshold.
Additionally, in the real-time service, the
number of continuous beacon signals should be lower
than that of the non-real-time service in order to reduce
the handoff delay [26][30]. More parameters may be
employed to make more intelligent decisions. Li et al.
[10] propose a bandwidth aware VHO technique which
considers the residual bandwidth of a WLAN in
addition to RSS as the criterion for handoff decisions.
However, it relies on the QBSS load defined in the
IEEE 802.11e Standard to estimate the residual
bandwidth in the WLAN. In [29], Weishen et al.
propose a method for defining the handoff cost as a
function of the available bandwidth and monetary cost.
In[16], actual RSS and bandwidth were chosen as two
important parameters for the Waveform design. Hossain
et al. [15] propose a game theoretic frame work for
radio resource management perform VHO in
heterogeneous wireless networks. One main difficulty
of the cost approach is its dependence on some
parameters that are difficult to estimate, especially in
large cellular networks. Mohanty and Akyildiz [14]
developed a cross-layer (Layer 2 + 3) handoff
management protocol CHMP, which calculates a
dynamic value of the RSS threshold for handoff
initiation by estimating MH’s speed and predicting the
handoff signaling delay of possible handoffs.
To sum up, the application scenario of current
Vertical Handoff algorithms is relatively simple. For
example, most Vertical Handoff algorithms only
consider the pure Vertical Handoff scenario, where the
algorithm only needs to decide when to use a 3G
network and when to use a WLAN [1], [10], [17], [18],
[21], [25]. In fact, at any moment, there may be many
available networks (homogeneous or heterogeneous),
and the Handoff algorithm has to select the optimal
network for Horizontal Handoff or Vertical Handoff
from all the available candidates. For example, if the
current access network of Mobile Host is a WLAN, the
Mobile Assisted Handoff may sense many other
WLANs and a 3G network at a particular moment, and
it has to decide whether to trigger Horizontal Handoff
or Vertical Handoff. If the Horizontal Handoff trigger is
selected, Mobile assisted handoff then needs to decide
which WLAN is the optimal one [20] [22].
Consequently, an analytical framework to evaluate
VHO algorithms is needed to provide guidelines for
optimization of handoff in heterogeneous wireless
networks. It is also necessary to build reasonable and
typical simulation models to evaluate the performance
of VHO algorithms. The proposed work will provide an
optimal solution to choose the network based on the
type of service that is being carried out. As the work
mainly concentrates on the application oriented
approach the type of network and handover selection is
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
85 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
also based on requirement It also concentrates on the
identification of the source and destination and by
locating them the path is chosen.

III. SOLUTIONS FOR MOBILITY
MANAGEMENT

A. HYBRID HANDOFF
Seamless and efficient information flow between
different access technologies is an essential and
challenging problem in the development toward the
next-generation wireless networks. Also a single hand
off cannot be suggested. So the available handoff for
different technologies is grouped under the single head
hybrid handoff. For the seamless flow of information
the main technique is handoff.In general, the handoff
process can be divided into three main steps: system
discovery, handoff decision, and handoff execution.
Also the During the system discovery phase, mobile
terminals equipped with multiple interfaces have to
determine which networks can be used and the services
available in each network. During the handoff decision
phase, the mobile device determines which network it
should connect to. During the handoff execution phase,
connections need to be rerouted from the existing
network to the new network in a seamless manner.
During the Vertical Handoff procedure, the handoff
decision is the most important step that affects Mobile
Host’s communication [9][11]. An incorrect handoff
decision may degrade the QoS of traffic and even break
off current communication. Handoff algorithms in
heterogeneous wireless networks should support both
Horizontal Handoff and Vertical Handoff and can
trigger Horizontal handoff or Vertical handoff based on
the network condition. What should be noted is that,
because of the uncertainty of the network distribution
and the randomness of MH’s mobility, it is impossible
to forecast the type of the next handoff in advance. For
this purpose only in the proposed work the nature of the
network between the source and the destination is
studied in advance and the triggering based on the
availability and services provided by the available
network. Thus, handoff algorithms in heterogeneous
wireless networks must make the appropriate handoff
decision based on the network metrics in a related short
time scale.
There are three strategies for handoff decision
mechanisms: mobile-controlled handoff, network-
controlled handoff, and mobile-assisted handoff [14].
Mobile-controlled handoff is used in IEEE 802.11
WLAN networks, where the Mobile Host continuously
monitors the signal of an AP and initiates the handoff
procedure. Network-controlled handoff is used in
cellular voice networks where the decision mechanism
of handoff control is located in a network entity.
Mobile-controlled handoff has been widely adopted in
the current WWANs such as GPRS, where the Mobile
handoff measures the signal of surrounding Base
Stations and the network then employs this information
and decides whether lor not to trigger handoff. During
Vertical handoff, only Mobile Hosts have the
knowledge about what kind of interfaces they are
equipped with. Even if the network has this knowledge,
there may be no way to control another network that the
Mobile Host is about to handle the handoff . This is
achieved by having a proper QoS understanding
between the networks. Eg. The data considered for
transmission is huge and the available network has a
bandwidth that can handle the data but dute to the flow
density in the network it is not able to handle that. The
proposed work will take the nature of the data and if it is
an emergency information which requires immediate
attention the corresponding network will be requested to
rearrange the traffic in the network by sharing the
resources of the surrounding network and to provide the
network for the current transmission.

B. MOBILE INTERNET PROTOCOL
Mobile Internet Protocol is a mobility solution working
at the network layer. IPv4 assumes that every node has
its own IP address that should remain unchanged during
a communication session. Mobile IP introduces the
concepts of home address, the permanent address of the
Mobile Host and of care-of-address. The latter is a
temporary address assigned to the Mobile Host as soon
as it moves from its home network to a foreign one. A
specific router in the home network in the home agent is
informed as soon as the node acquires the Care-of-
Address in the foreign network from a so-called foreign
agent. The home agent acts as an anchor point, relaying
the packets addressed to the home address towards the
actual location of the Mobile Host, at the care-of-
address. Using mobile IP for real-time communications
has some drawbacks. A well-known problem is
triangular routing, that is, the fact that the packets sent
to the Mobile Host are captured by the home agent and
tunneled, whereas the Mobile Host can send packets
directly to the Corresponding Host. This asymmetric
routing adds delay to the traffic towards the Mobile
Host, and delay is an important issue in voice over IP
(VoIP). The fact that the packets are tunneled also
means that an overhead of typically 20 bytes, due to the
IP encapsulation, will be added to each packet. Still
another drawback of using mobile IP is that each
Mobile Host requires a permanent home IP address,
which can be a problem because of the limited number
of IP addresses in IPv4. A number of works have built
upon MIP to overcome its drawbacks. A notable one is
cellular IP [4], which improves MIP, providing fast
handoff control and paging functionality comparable to
those of cellular networks. Being a network level
solution, cellular IP requires support from the access
networks, and it is suitable for micro-mobility, namely,
mobility within the environment of a single provider.
The major work of this paper concentrates on seamless
streaming in heterogeneous networks; one of the major
challenges is the bit rate adaptation when the gap
between two different networks is large. In the
heterogeneous networks, an available channel
bandwidth usually fluctuates in a wide range from bit
rate below 64kbps to above 1mbps according to the type
of network. The following technique will overcome the
above mentioned drawbacks and will provide a
comfortable solution for the seamless flow of
information based on the nature of information.

IV. PROPOSED SERVICE METHOD

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
86 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Given the requirements for seamless mobility listed
above, the roles to be supported by a mobility
management function exploiting the terminal capability to
access several radio access networks are the following:
i. Selection of the access network at application
launch. This role is ensured by mobility management
subfunctions here referred to as service-to-radio mapping
control.
ii. Triggering of the handover during a session. The
mobility management function aims at always providing
the best access network to the terminal.
iii. A terminal-centric selection without network
assistance or recommendation
iv. A network-controlled selection within network
entities, based on both terminal and access network
measurements, enforcing decisions on the terminal
v. Network-assisted selection on the terminal side,
the network providing operator policies, and access/core
load information (joint terminal/network decisions).
When only one access remains available, network-
assisted selection is applied; when access selection is
triggered by network load considerations, network control
may be used for load balancing.
vi. Finally, for access network selection, the mobility
management function must retrieve the status of resource
usage in each access network. This information is
provided by an “access network resource management”
function, which computes a technology-independent
abstracted view of access resource availability.

Functional Entities Involved in Mobility Management
— The mobility management functions are supported
by functional entities described below that are
responsible for selecting the best access network for
each terminal. They may be triggered at application
launch or during the time of connection establishment.
• Generate a geographical map between the source and
the destination based on the mode of transport
• Tabulate the list of service providers with their
frequency and coverage
• Create an acyclic graph by pointing out the service
providers and the geographical scenarios
• Form a topological graph from the acyclic graph by
removing the obstacles and considering the signal
strength
• Get the traffic status of each and every link from
source to destination
• Now create a path from source to destination based on
the network traffic and also by choosing the shortest
path with minimum handovers



Fig. 2 Graphical Representation between source (S)
and Destination (D)




Fig.3Topological Representation between source (S)
and Destination (D)





Fig.4Path Representation between source (S) and
Destination (D)


• For all the network in the specified path between the
source and destination
Get the bandwidth of the network
Calculate the average traffic of the network
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
87 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Note down the obstacles on the way
Note down the active service providers with
their coverage area
Note down the type of network services [3G,
3GPP]

• Calculate the traffic density in the in the network
NLc + ∆E ≤ NLth → take the same path
NLc → Current Network Load
∆E → Estimated Increase in Load
NLth → Network Threshold Load

• Generate a shortest path based on
The maximum signal coverage
Traffic density below the NLth
• Continue the transmission in the specified path
• Continue the same procedure till the source reaches the
destination or the source is stable or not in mobility

Assumptions made for the analysis
Atleast one type of service provider is available within
the limit

V. PERFORMANCE EVALUATION


Fig.5 Cellular/ WLAN Seamless Mobile Architecture[17]

As far the architecture is considered the existing
architecture is used without any modifications in the
hardware. Modifications are carried out at the router
level to reduce the router management delay as the
information from the origin will have the path to be
taken and the address of the destination also will have
the details of the corresponding node through which it
has to pass and when to go for handoff and what type
of handoff is required in advance.
They may be triggered at application launch or during
the application session by the terminal or local Mobility
Management.
• The mobility register is a database that stores
profiles and high-level characteristics of users, radio
access networks, and operators. It also stores session
information such as terminal location or application
currently used. There is one database entity per
operator.
• The global Mobility Management registers
users to the seamless mobility service. The global
Mobility Management activates the user context in the
mobility register and is the screen for the Authentication
Availability Access rights process. nterfaces with the
mobility register receives “global” information from the
terminal on application needs, user preferences, and
basic access network data type, identity, availability and
performs pre-selection of the access network. Using
information from the terminal, the global Mobility
Management provides the local Mobility Management
with an ordered list of recommended access networks
based on operator policies e.g., prioritize WLAN access
for streaming applications, manage access privileges
according to user’s profile, user and network profiles,
application quality of service (QoS) constraints (e.g.,
minimum bandwidth, latency guaranty), and basic radio
information such as availability of access networks.
• The local Mobility Management receives
measurements of the environment in its coverage area
from access network RM entities access network load
and quality information such as delay, packet loss
ratio and from the terminal on an event-triggered or a
periodic basis, processes application requests from the
terminal in order to map QoS application needs to
radio parameters (e.g., bandwidth vs. load on the
different networks) within the service-to-radio
mapping control function, Computes handoff triggers
such as radio coverage and quality on the current
network being below an acceptable threshold, current
access network load being above a threshold, and
modification of the network classification provided by
the global Mobility Management. Also processes the
global Mobility Management recommendation before
selecting an access network for a user. This
recommendation arises on a global Mobility
Management event trigger or a terminal event trigger.
Finally, makes the final handoff decision based on the
radio triggers, as well as on the global Mobility
Management recommendation, and orders the terminal
to execute the handover.
• The terminal implements a seamless mobility
application programming interface in charge of
Computing handover triggers, related to coverage
radio signal strength and signal quality in order to
detect whether the radio bearer fulfills application
needs in terms of link quality.
• Sending out radio signal strength and quality
measurement for current and target access networks
on an event-triggered based on local Mobility
Management request or triggers below thresholds, but
also on a periodic basis if the radio metrics remain
below the threshold. If the signal is good enough for
the terminal, no periodic measurement will be sent to
the local Mobility Management unless the local
Mobility Management sends out a specific request to
get information detecting available networks in line of
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
88 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
sight, Managing user preferences, Invoking services
via service-to-radio mapping control, the API
provides application needs and a preferred access
network for this application. Then terminal pre-
selection is confirmed or not by Mobility
Managements according to access network condition.
executing the handover upon local Mobility
Management order depends on the link layer
technology. There is no specific constraint on the
mobility management protocol, which could be based
on Internet Engineering Task Force specifications, for
instance triggering the handoff in case it does not
receive local Mobility Management orders in time or
when only one target access network remains
available. Optionally, managing operator policies and
preferences so that it can efficiently make the
handover decision by itself in the absence of a local
Mobility Management recommendation.
The access network Resource Management entities.
This entity is access-technology-specific as it
interfaces each access network with the local Mobility
Management Resource Managements receive real-
time radio load-related information from the access
network access point and use it to provide load
indicators to the local Mobility Management in a
standardized abstracted format.

VI. RESULTS AND DISCUSSION
The following section is to provide the seamless flow
of information in a practical context that addresses the
integrating of cellular and WLAN access networks. In
order to implement the different functions listed
earlier, some initial technological choices need to be
made. First, only intertechnology handoffs WLAN are
considered in the seamless mobility architecture.
Intratechnology handoffs are taken care of by
technology-specific mechanisms. Then Mobile IP has
been chosen as the L3 protocol for handoff execution
in the proof of concept, and is used on top of either
IPv4 or IPv6 in order to provide session continuity
during intertechnology handoff. A clear separation of
handoff decision and execution processes allows any
evolution of IP protocols to minimize new care-of
address configuration and rerouting latencies, for
instance, to replace baseline Mobile IP without
modifying the proposed architecture.
0
20
40
60
80
100
0 10 20 30 40 50 60 70 80 90
N
o
.

o
f

U
s
e
r
s
Data rate in Mbps
MaximumData rate for 3GPP/ UMTS
Usable Data Rate
MaximumData Rate

Fig. 6. Data rate of the Network 3GPP/ UMTS

AS the existing technology is considered the 3GPP/
UMTS network has a constant coverage for a limited
traffic. The maximum users allowed is 80 – 85. Also as
the usage spectrum is considered only 80 – 85% of the
available spectrum is utilized efficiently. The result is
shown in fig. 6. During which no traffic can be
transmitted or received (it corresponds to traffic
interruptions on Fig. 6. Upon returning to normal
operation, a peak of traffic is observed when the terminal
transmitting a burst of packets that could not be
transmitted during the scanning periods of 200–400 ms.
In order to avoid perceivable interruption of voice
transmission, an adaptive buffer has been set up on the
receiver side, which enables the network to cope with
“silences” but results in slightly increased latency. This
configuration could further be improved by breaking the
scanning period into shorter ones in order to avoid latency
increase. However, this configuration may lead to lower
measurement precision, so an acceptable compromise
must be reached. In any case, this scenario is not
considered for wider-scale deployment, since the latency
on the EDGE network leads to unacceptable VoIP quality.

0
5
10
15
20
25
30
0 2 4 6 8 10
N
o
.

o
f

U
s
e
r
s
Data rate in Mbps
MaximumData rate for WLAN/ Wifi
Usable Data Rate
MaximumData Rate


Fig. 7. Data Rate of WLAN Network

Another goal of the test bed was to assess per-
formance of mobility management in the WLAN
environment. As an example, we considered handoff
delay for a 60 kb/s Real-Time Transmission Protocol
streaming service, with handoff delay defined as the
delay between the first Real-Time Transmission
Protocol packet on the new interface and the last
packet on the old interface. When network control is
enabled, the decision to perform handover is taken on
load criteria: the streaming starts on the WLAN
interface where other terminals load the AP when the
network load reaches a given threshold, mobility
management entities trigger the handover. In both
cases handoff delay was about 0.05 ms, because of
Mobile IP and Generic Packet Radio Service network
latencies. The results of the data rate in fig. 7 also
gives a clear picture that it was mainly based on the
nature of the application and also the stability of the
network varies upon the nature of the functions of the
hardware deployed.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
89 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
90
100
110
120
130
140
150
0 5 10 15 20
N
o
.

o
f

U
s
e
r
s
Data rate in Mbps
MaximumData rate for Wimax/ 3G
Usable Data Rate
MaximumData Rate

Fig.8. Data Rate in the 3G Environment

The higher transmission latency experienced in the
cellular access network can be observed in the graph
provided (fig. 8). On the transmit side, the
transmission is performed with no silence period. On
the receive side, handing over to the cellular network
introduces more latency, results in a silence period the
order of magnitude of which is equal to the latency
difference between both networks. The use of an
adaptive buffer at the receiver side makes it
transparent to the user which is reflected as a smooth
seamless flow in the heterogeneous Networks. When
considering the 3G/ Wimax cellular network, the
number of users is high compared with the other
networks and also had a wider coverage but there is a
pitfall at the end, the bandwidth fluctuates beyond
80%. At the time of mobility the network coverage is
limited as shown in fig. 8

100
150
200
250
300
0 1 2 3 4 5 6 7
N
o
.

o
f

U
s
e
r
s
Dat a r at e i n Gbps
Max i mum Dat a r at e f or Het er ogeneous Net wor k
Usabl e Dat a Rat e
Max i mum Dat a Rat e

Fig.9. Data Rate in the Heterogeneous Network
Environment

By considering the positive measures of the above
mentioned networks and by having a thorough
understanding between the available networks the
heterogeneous network is designed. The
heterogeneous network provides maximum
throughput, minimum number of handoffs and
maximum coverage at mobile. By designing a proper
QoS standard and having proper understanding
between the network the desires which are explained
at the initial paragraph can be achieved. By improving
the performance measures by deploying and allocating
the code cpectrum for the 3GPP network and by
having proper power management in the 3G network
and by making use of antennas with wider coverage in
WLAN environment, the available bandwidth can be
maximum utilized and also the number of handoffs
can be reduced as the nature of the network present in
the graphical architecture between the source and the
destination is studied in advance, a maximum
throughput can be achieved with minimum tolerable
delay or no delay based on the nature of the
information that is taken for transmission. The data
rate of the heterogeneous network is very close to the
available rate as shown in fig. 9.

VII. FUTURE SCOPE & CONCLUSION

Results have confirmed the feasibility of the approach;
its scalability to large geographical areas has to be
confirmed with additional validation through
simulations and trials. A possible stepwise approach to
the deployment of the different functional elements of
the presented architecture is defined. In this approach
a vector based location tracking and management is
only considered for the seamless flow. By combining
the parameters such as signal strength and delay
management in flow and also the formats of the
information we can have a seamless flow. Also the
QoS between the Radio Access Networks’s should be
standardized in such a way that there is no mismatch
of transmission from one type of environment to
another type. Finally, with the advent of research on
moving networks (e.g., Network Mobility), in which
the whole network is mobile, the integration of
WLANs and WMANs can improve mobile network
connectivity. It is expected that public transportation
(trains, buses, airplanes, ships, etc.) will popularize
Internet access through WiFi connectivity to
passengers while in movement. To this end, it will be
equipped with a bridge to communicate with external
networks such as WiMAX. Moreover, seamless
mobility is still an issue as clients may be equipped
with both interfaces, and the vehicle gateway may also
give support to WiFi external connectivity through
dual gateways /interfaces (WiFi/ WiMAX) in order to
offer fault tolerance and load balance between
networks as well as new connectivity opportunities to
passengers. Apart from serving the movement
network, the mobile gateway can also be used by
external clients, such as those outside the WiFi AP
and WiMAX BS coverage areas, but that have the
opportunity to download data or attain Internet access
through the dual gateway belonging to the vehicular
area network (VAN).

REFERENCES

[1] Fei Yu and Vikram Krishnamurthy, “ Optimal Joint
Session Admission Control in integrated WLAN and
CDMA Cellular Networks with Vertical Handoff”,
IEEE Transaction on Mobile Computing, vol 6, No. 1,
pp. 126 – 139, Jan’ 2007.
[2] Jaroslav Holis and Pavel Pechac,” Elevation
Dependent Shadowing Model for Mobile
Communications via High Altitude Platforms in Built-
Up Areas” - IEEE TRANSACTIONS ON
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
90 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
ANTENNAS AND PROPAGATION, VOL. 56, NO.
4, APRIL 2008
[3] Sándor Imre, “Dynamic Call Admission Control for
Uplink in 3G/4G CDMA-Based Systems” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 56, NO. 5, SEPTEMBER
2007
[4] Yan Zhang, and Masayuki Fujise, “Location
Managemenet Congestion Problem in Wireless
Networks” - IEEE TRANSACTIONS ON
VEHICULAR TECHNOLOGY, VOL. 56, NO. 2,
MARCH 2007
[5] Daniel Morris and A. Hamid Aghvami, “Location
Management Strategies for Cellular Overlay
Networks—A Signaling Cost Analysis” - IEEE
TRANSACTIONS ON BROADCASTING, VOL. 53,
NO. 2, JUNE 2007
[6] Haining Chen, Hongyi Wu, Sundara Kumar and
Nian-Feng Tzeng, “Minimum-Cost Data Delivery in
Heterogeneous Wireless Networks” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 56, NO. 6, NOVEMBER
2007
[7] Yuh-Shyan Chen, Ming-Chin Chuang, and Chung-Kai
Chen, “DeuceScan: Deuce-Based Fast Handoff
Scheme in IEEE 802.11 Wireless Networks” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 57, NO. 2, MARCH 2008
[8] Mohammed M. Olama, Seddik M. Djouadi, Ioannis
G. Papageorgiou, and Charalambos D. Charalambous
“Position and Velocity Tracking in Mobile Networks
Using Particle and Kalman Filtering With
Comparison” - IEEE TRANSACTIONS ON
VEHICULAR TECHNOLOGY, VOL. 57, NO. 2,
MARCH 2008
[9] Archan Misra, Abhishek Roy and Sajal K. Das,
“Information-Theory Based Optimal Location
Management Schemes for Integrated Multi-System
Wireless Networks” - IEEE/ACM TRANSACTIONS
ON NETWORKING, VOL. 16, NO. 3, JUNE 2008
[10] Yang Xiao, Yi Pan and Jie Li, “Design and Analysis
of Location Management for 3G Cellular Networks” -
IEEE TRANSACTIONS ON PARALLEL AND
DISTRIBUTED SYSTEMS, VOL. 15, NO. 4, APRIL
2004
[11] Di-Wei Huang, Phone Lin and Chai-Hien Gan,
“Design and Performance Study for a Mobility
Management Mechanism (WMM) Using Location
Cache for Wireless Mesh Networks” -IEEE
TRANSACTIONS ON MOBILE COMPUTING,
VOL. 7, NO. 5, MAY 2008
[12] Yi-hua Zhu and Victor C. M. Leung, “Optimization
of Sequential Paging in Movement-Based Location
Management Based on Movement Statistics” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 56, NO. 2, MARCH 2007
[13] Ramón M. Rodríguez-Dagnino, and Hideaki Takagi,
“Movement-Based Location Management for General
Cell Residence Times in Wireless Networks” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 56, NO. 5, SEPTEMBER
2007
[14] Wenchao Ma, Yuguang Fang and Phone Lin,
“Mobility Management Strategy Based on User
Mobility Patterns in Wireless Networks” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 56, NO. 1, JANUARY 2007
[15] Dusit Niyato and Ekram Hossain, “A Non-
cooperative Game-Theoretic Framework for Radio
Resource Management in 4G Heterogeneous Wireless
Access Networks” - IEEE TRANSACTIONS ON
MOBILE COMPUTING, VOL. 7, NO. 3, MARCH
2008
[16] Marcus L. Roberts, Michael A. Temple, Richard A.
Raines, Robert F. Mills, and Mark E. Oxley,
“Communication Waveform Design Using an
Adaptive Spectrally Modulated, Spectrally Encoded
(SMSE) Framework” - IEEE JOURNAL OF
SELECTED TOPICS IN SIGNAL PROCESSING,
VOL. 1, NO. 1, JUNE 2007
[17] Christian Makaya and Samuel Pierre, “An
Architecture for Seamless Mobility Support in IP-
Based Next-Generation Wireless Networks” - IEEE
TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 57, NO. 2, MARCH 2008
[18] Haiyun Luo, Xiaqiao Meng, Ram Ramjee, Prasun
Sinha, and Li (Erran) Li, “The Design and Evaluation
of Unified Cellular and Ad Hoc Networks” - IEEE
TRANSACTIONS ON MOBILE COMPUTING,
VOL. 6, NO. 9, SEPTEMBER 2007\
[19] Anthony Almudevar, “Approximate Calibration-Free
Trajectory Reconstruction in a Wireless Network” -
IEEE TRANSACTIONS ON SIGNAL
PROCESSING, VOL. 56, NO. 7, JULY 2008
[20] Yi Yuan-Wu and Ye Li, “Iterative and Diversity
Techniques for Uplink MC-CDMA Mobile Systems
With Full Load” - IEEE TRANSACTIONS ON
VEHICULAR TECHNOLOGY, VOL. 57, NO. 2,
MARCH 2008


[21] Abhishek Roy, Archan Misra, and Sajal K. Das,
“Location Update versus Paging Trade-Off in Cellular
Networks: An Approach Based on Vector
Quantization” - IEEE TRANSACTIONS ON
MOBILE COMPUTING, VOL. 6, NO. 12,
DECEMBER 2007
[22] Enrique Stevens-Navarro, Yuxia Lin, and Vincent W.
S. Wong, “An MDP-Based Vertical Handoff Decision
Algorithm for Heterogeneous Wireless Networks” -
IEEE TRANSACTIONS ON VEHICULAR
TECHNOLOGY, VOL. 57, NO. 2, MARCH 2008
[23] Sai Shankar N and Mihaela van der Schaar,
“Performance Analysis of Video Transmission Over
IEEE 802.11a/e WLANs”- IEEE TRANSACTIONS
ON VEHICULAR TECHNOLOGY, VOL. 56, NO. 4,
JULY 2007
[24] Abhishek Roy, Archan Misra and Sajal K. Das,
“Location Update versus Paging Trade-Off in Cellular
Networks: An Approach Based on Vector
Quantization” - IEEE TRANSACTIONS ON
MOBILE COMPUTING, VOL. 6, NO. 12,
DECEMBER 2007
[25] Dusit Niyato, and Ekram Hossain, “A Noncooperative
Game-Theoretic Framework for Radio Resource
Management in 4GHeterogeneous Wireless Access
Networks” - IEEE TRANSACTIONS ON MOBILE
COMPUTING, VOL. 7, NO. 3, MARCH 2008
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
91 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


Effect of Weighting Scheme to QoS Properties in Web Service Discovery
¹Agushaka J. O., Lawal M. M., Bagiwa, A. M. and Abdullahi B. F.
Mathematics Department, Ahmadu Bello University Zaria-Nigeria
¹jagushaka@yahoo.com
Abstract
Specifying QoS properties can limit the selection of some good web services that the user will
have considered; this is because the algorithm used strictly ensures that there is a match between
QoS properties of the consumer with that of the available services. This is to say that, a situation
may arise that some services might not have all that the user specifies but are rated high in those
they have. With some tradeoffs specified in form of weight, these services will be made available
to the user for consideration. This assertion is from the fact that, the user’s requirements for the
specified QoS properties are of varying degree i.e. he will always prefer one ahead of the other.
This can be captured in form of weight i.e. the one preferred most will have the highest weight.
If a consumer specifies light weight for those QoS properties that a web service is deficient in
and high weight for those it has, this will minimize the difference between them. Hence the
service can be returned.
Key Words: QoS properties, QoS weighting vector, Distance Measure
1. Introduction
Web Services are the third generation web
applications; they are modular, self-
describing, self-contained applications that
are accessible over the Internet Cubera et al
(2001). A Web Services (sometimes called
an XML Web Services) is an application
that enables distributed computing by
allowing one machine to call methods on
other machines via common data formats
and protocols such as XML and HTTP. Web
Services are accessed, typically, without
human intervention. Web service technology
address the problem of platform
interoperability however, in the work of
Plammer and Andrews (2001), they showed
that there is actually a slow take off of web
services technology and DuWaldt and Trees
(2002) attributed this slow take off to factors
such as perceived lack of security and
transaction support and also quality of the
web service. Web Services standards like
WSDL (www.w3.org/TR/wsdl), SOAP
(www.w3.org/TR/soap2-part1), UDDI
(www.uddi.org/pubs/uddi-v3.00) and BPEL
(ftp://www6.software.ibm.com/software/dev
eloper/library/ws-bpel.pdf) provide syntax
based interaction and composition of Web
Services in a loosely coupled way that does
not take into account the non-functional
specification like quality of service (QoS)
properties such as scalability, performance,
accessibility etc. QoS for Web services
gives consumers assurance and confidence
to use the services, consumers aim to
experience a good service performance, e.g.
low waiting time, high reliability, and
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
92 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


availability to successfully use services.
Service registries host hundreds of similar
Web services, which make it difficult for the
service consumers to choose from, as the
selection is only based on the functional
properties albeit they differ in QoS that they
deliver. Such variety in QoS is considered as
an important criterion for Web service
selection. Taher, L. et al (2005a) proposed a
generic QoS Information and Computation
(QoS_IC) framework for QoS-based service
selection in which the QoS selection
mechanism utilizes an established Registry
Ontology: which is used to present the
semantics of the proposed framework and its
QoS structure. The QoS selection
mechanism also uses the Euclidian distance
measure to evaluate the similarity between
the consumer/provider QoS specification in
the matchmaking process. We try to extend
the work of Taher et al (2005a) to
accommodate a user defined weighting
scheme. This weighting scheme is defined in
such a way that the highest weight signifies
the most desired QoS property. It decreases
base on order of priority. Also, the
weighting scheme normally between [0,1].
The algorithm presented here is a slight
modification of Taher’s as it take into
consideration the weighting scheme. As part
of the aim of this paper, we show that the
introduction of a weighting scheme into the
discovery algorithm can greatly address the
issues of “trade off” that can arise in service
selection. That is, depending on the weight
specification, certain web services can
perform better and hence be returned. The
examples in this paper helped us in making
these assertions. The sections in this paper
are organized as follows: Related work is
given next, it is closely followed by QoS
matching in Tahers work, then our propose
extension. Detailed examples are given next
to proof our assertions. Finally, conclusion
and future work is given.
2. Related work
At the present time, Universal Description,
Discovery and Integration of Web services
(UDDI) based look ups for Web services are
based on the functional aspects of the
desired Web services. In his work, Ran
(2003) extended UDDI model by adding a
new role called QoS certifier which verifies
the service providers QoS claims. Figure 1 is
an adaptation from the work of Ran (2003).
In his proposed model, Ran assumes that a
Web service provider needs to supply
information about the company, the
functional aspects of the provided service as
requested by the current UDDI registry, as
well as to supply quality of service
information related to the proposed Web
service. The claimed quality of service
needs to be certified and registered in the
repository.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
93 http://sites.google.com/site/ijcsis/
ISSN 1947-5500



Figure 1: Rans UDDI model
The consumer searches the UDDI registry
for a Web service with the required
functionality as usual; they can also add
constraints to the search operation. One type
of constraint is the required quality of
service. If there were multiple Web services
in the UDDI registry with similar
functionalities, then the quality of service
requirement would enforce a finer search.
The search would return a Web service that
offers the required functionality with the
desired set of quality of service. If there is
no Web service with these qualities,
feedback is given to the consumer. This
approach lacks support for the dynamic
nature of these QoS properties. The
approach of Taher et al (2005a) takes into
account this issue of dynamic nature of QoS
properties. We implemented his work using
a different similarity metric and also
improve his matching algorithm to
accommodated user defined weighting
scheme for the QoS properties. Depending
on which property the user desires best he
gives it a higher weight. Apart from this two
works, several attempt have been made to
add QoS specification to the discovery
process of web services. Examples of such
approaches are: Web Service Level
Agreement (WSLA) (Keller, A. et al, 2002),
Web service-QoS (Ws-QoS) (Tian, M.,
2004), Web Service Offering Language
(WSOL) (Tosic, V., 2003), SLAng
(Lamanna, D., 2003), UDDI eXtension
(UX) (Chen, Z., 2003) and UDDIe (Ali, S.,
2003). A comparison of the work of Taher et
al (2005a) and other approaches is given in
(Taher et al, 2005b). This serves as basis for
our selection of Taher’s work for
improvement. All such approaches do not
address issues related to adapting the
consumers to the changing conditions of
providers systems (Taher et al, 2005a).
3. QoS Matching in Taher’s Work
Matchmaking problem meets the question of
distance measure between objects, there are
many approaches to measure distance
between any two objects based on their
numerical or semantic closeness, the
Euclidean distance measure was chosen for
the algorithm. In other words, Euclidean
distance is used to evaluate the square root
of the sum of squared differences between
corresponding elements of the two vectors
3.1. The QoS matchmaking algorithm
The QoS matchmaking algorithm
determines which Web service

, from
WS, = {
1
,
2
,
3
, …

}, is
selected based on consumer’s QoS
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
94 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


specifications (QPc). For that purpose, QoS
Manager constructs

matrix, where n
represents the total number of Web services
(WS) that have the same functional
properties, and k represent the total number
of QoS properties. To compensate between
different measurement units between
different QoS properties values (
,
), the
values need to be normalized to be in the
range [0, 1]. We will use the following
equations to normalize them.

,

=

,


,

,


,

1

,

=

,

,

,


,

2
Where
,
, is the QoS property that one
wishes to normalize by minimization using
equation-1 or maximization using equation-
2, for example, response time need to be
normalized by minimization using equation-
1 while availability needs to be normalized
by maximization using equation-2.
,

is the
,
that has the maximum value
among all values on column v and

,

is the
,
that has the minimum
value among all values on column v. To
normalize matrix QoS, we need to define an
array , = {
1
,
2
, …….

} with
1 ≤ ≤ . The value of

can be either
0 or 1, 0 indicates that

should be
normalized using equation-1, whereas 1
indicates that

should normalized using
equation-2. The key idea of the QoS
matchmaking algorithm is to find the nearest

to the QoS specifications of the
consumer (QPc), i.e. to find a Web service
with a minimum Euclidian distance. Given
the QoS mode (qm) and the submitted QoS
properties (QPc) submitted by the consumer,
QoS matchmaking algorithm works as
follows:
Step-1: Check qm, based on that
Step-2: Construct QoS matrix.
Step-3 Normalizes (QPc) using equation-1
and equation-2.
Step-4-5 Normalize QoS matrix using
equation-1 and equation-2.
Step-6-7 Compute the Euclidian distance
between each QP(wsi) and (QPc).
Step-7 Find

with the minimum distance
4. Proposed Extensions
In this section, we give the extensions
proposed for the model given in Taher et al
(2005a). The assumption here is that all
other components given in Taher’s model
remain except the similarity metric and the
QoS matching algorithm. Detail is given in
the following sections:
4.1. Similarity Metric
In their work, Taher et al (2005a) used the
Euclidean distance to measure the similarity
between two vectors. This does not capture
any form of weighting for the QoS
properties. As an extension to their work, we
introduced a user specified weighting vector

. As we have said earlier is normally
between [0,1]. The modified formula is
given below:
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
95 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


• Euclidean distance measure is used
to evaluate the similarity between
two vectors

=
1
……

and

=
1
……

. Here we introduce

which we use to multiply
the Euclidean distance.

,

� = ��(



ℎ=1
×

4.2. Assertion
We are saying that the introduction of a
weighting scheme will help our algorithm to
accommodate the tradeoffs that exists in
nature. Specifying QoS properties can limit
the selection of some good web services that
the user will have considered, as the
algorithm strictly ensures that there is a
match between QoS properties of the
consumer with that of the available services.
This is to say that, some services might not
have all that the user specifies but are rated
high in those they have. With some tradeoffs
specified in form of weight, these services
will be made available to the user for
consideration. This assertion is from the fact
that, the user’s requirements for the
specified QoS properties are of varying
degree i.e. he will always prefer one ahead
of the other. This can be captured in form of
weight i.e. the one preferred most will have
the highest weight. If a consumer specifies
light weight for those QoS properties that a
web service is deficient in and high weight
for those it has, this will minimize the
difference between them. Hence the service
can be returned as it shows from case 2.
We will use the same example given in
Taher et al (2005a) to proof our assertion
5. The new algorithm
This new algorithm is an improved version
of that given in Taher et al (2005a). This is
because it incorporates a user defined
weighting scheme for the desired QoS
properties.
Given web services
= {
1
,
2
, ……

} that satisfy the
user’s functional requirements, QoS
properties

and QoS properties weight
base on the user’s specified priority. Just as
in the work of Taher et al (2005a), this
algorithm tries to find which of the web
services

that best satisfy the consumer’s
request based on the non-functional
specification (QoS). For this purpose, a
quality matrix, ℚ = {(

); 1 ≤ ≤
; 1 ≤ ≤ } is created, this refers to a
collection of quality attribute-values for a set
of candidate services, such that, each row of
the matrix corresponds to the value of a
particular QoS attribute (in which the user is
interested) and each column refers to a
particular candidate service. In other words,
(

), represents the value of the

QoS
attribute for the

candidate service. The
normalization equations given in Taher’s
work is used to normalize QoS properties
obtained from profile of web services and

to be in the range [0,1]. Given the QoS
mode (qm) as in Taher et al (2005a), the
submitted QoS properties (

) submitted
by the consumer and the QoS weight, QoS
matchmaking algorithm works as follows:
Step-1: Check qm, based on that
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
96 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


Step-2: Construct Quality matrix.
Step-3: Normalize (

) and quality matrix.
Step-4: Compute the similarity using the
metric given in previous section,
between each (

) and (

).
Step-5 Find

with the minimum distance
Just as in the case of Taher’s alogorithm,
The QoS matchmaking algorithm works fine
even if (

) does not include the whole set
of QoS properties, as it is anticipated that
consumers need not to specify all QoS
parameters defined previously. The
Complexity is O(n), since the number of
QoS parameters is constant and n represents
the total number of Web services that have
the same functionality based on the
consumer’s functional requirements.
However the complexity could change, in
case the number of QoS properties change to
a large value.
6. Example
This example is adopted from Taher et al
(2005a). It considers a scenario of how the
QoS matchmaking algorithm works.
Assume that

= {0.9, 20, 50, 0.9, 1, 200}, =
(/) = {1, 0, 1, 1, 1, 0},
the QoS properties are in order of
scalability, response time, throughput,
availability, accessibility and cost. Also,
assuming the user specify weighting
schemes for the QoS properties as follows
1.

= {0.9,1,0.6,0.4,0.6,0.1}
2.

= {0.9,0.1,1,0.1,0.2,0.9}
In these schemes, two different tradeoffs or
variation in user’s wants are shown. Based
on the functional specifications assume that
four Web services {
1
,
2
,
3
,
4
}
have been returned by UDDI. QoS
matchmaking algorithm retrieves the
relevant QoS properties associated with
mode of the four Web services and use it to
construct Quality matrix, as shown in table-
1.
Table-1: quality matrix

QoS matchmaking algorithm continues by
normalizing

and Quality matrix. The
QoS values of

after normalization are
{0.90, 0.00, 0.17, 0.75, 1.00, 0.75}. The QoS
values of Quality matrix after normalization
are shown in table-2
Table-2: normalized QoS matrix

The algorithm then calculates the
similarities for the web services by using the
our extended formula given earlier
1. Case 1: using

=
{0.9,1,0.6,0.4,0.6,0.1}
The algorithm calculates the distance
for
1
,
2
,
3

4
to be
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
97 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


0.782, 1.215, 1.266 0.655
respectively. Since
4
has the
minimum, it is returned.
Note: comparing our result with that
in Taher et al (2005a), we see that
the distance in all the web services is
greatly reduced. Remarkably, if look
at the distance for
1
, as compared
to that in Taher’s work we see that
the distance is significantly reduced.
This is because the user is less
interested in QoS property cost as
shown by its weight, in which the
web service differ from the request (
as seen from both the QoS profile of
the service and request)
2. Case 2: using

=
{0.9,0.1,1,0.1,0.2,0.9}
The algorithm returns distances for

1
,
2
,
3
,
4
to be
0.8017, 1.00, 0.7222 0.8684.
Since
3
has the minimum, it is
returned.
Note: there is a significant decrease
in distance for
3
this is because
the user is less interested in QoS
properties, as indicated by their
weights, which
3
is not rated high
for. As compared to case 1 where

4
was returned with the least
difference, we see that the weighting
scheme for case 1 has more weight
in areas where the similarities are
high between
4
and user required
QoS properties. This goes to show
the effect of weighting scheme in
determining which service is
returned. Though the consumer
wants all the QoS properties he
specified, tradeoffs specified in form
of weights helps return services
which hitherto will not be considered
because of their low weight in some
QoS properties which will have
caused their difference to increase.
This case confirms our assertion that
weight plays a great deal in returning
services that actually meets the
consumer’s needs. The fact is that
there is always trade off that exists in
these needs and these tradeoffs are
best captured using a weighting
scheme.
As shown in the above example the results
are promising and proofing our concept. In
our ongoing work, we are attempting to
provide an implementation for this work.
This we hope will be based on the
implementation of Taher’s work.
7. Conclusion
Quality of Service selection for Web
services is becoming a significant challenge.
We proposed an advanced QoS based
selection framework that is an improvement
on the work Taher et al (2005a) that
manages Web service quality and provides
mechanisms for QoS updates. The proposed
improvement preserves the architecture
presented in Taher’s work and proposes an
extension that includes a user defined
weighting scheme in both metric used to
calculate similarities and the matching
algorithm. This extension can be added
seamlessly without any change in the
architecture in Taher’s work, it also can be
customized for specific domain. From the
example given herein especially in case 2,
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
98 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


we see that adding a weighting scheme to
the QoS matching process greatly affects the
service to be return. Low weight to QoS
property a web service has low rating in will
make it insignificant and greatly affects its
(service) selection as can be seen in case 2
of our example. Our work also works base
on the assumption in Taher’s work that the
QoS Modes have been derived with the
assumption that network conditions are
static; in practice network factors would
have a direct affect on many QoS properties
such as response time, we are working on
addressing this limitation in our future work.
8. References
Curbera, F., Nagy, W. And Weerawarana, S.
(2001). Web Services: Why and How.
In Workshop on Object-Oriented
Web Services – OOPSLA 2001,
Tampa, Florida, USA.
PLUMMER, D., AND ANDREWS, W.
2001. The Hype Is Right: Web
Services Will Deliver Immediate
Benefits.
Http://www3.gartner.com/displaydoc
ument?Id=344028&ref=g_search
Duwaldt and Trees. 2002. Web Services A
Technical Introduction, DEITEL™
Web Services Publishing.
WSDL: Web Services Description Language,
http://www.w3.org/TR/wsdl.
SOAP Version 1.2 Part 1: Messaging
Framework [online] Available
http://www.w3.org/TR/soap12-
part1/.
UDDI Version 3.0 [online]
http://uddi.org/pubs/uddi-v3.00-
published-20020719.htm
Business Process Execution Language for
Web Services Version 1.1. [online]
available
ftp://www6.software.ibm.com/softwar
e/developer/library/ws-bpel.pdf
L.Taher, R.Basha, H. El Khatib. (2005a) “A
Framework and qos Matchmaking
Algorithm for Dynamic Web Services
Selection”, The Second International
Conference on Innovations in
Information Technology (IIT’05)
Ran, S. (2003). A Model for Web Services
Discovery with qos
A. Keller, H. Ludwig (IBM), “The WSLA
Framework: Specifying and
Monitoring of Service
levelagreements for Web Services”,
IBM research report RC22456, 2002,
http://www.research.ibm.com/resourc
es/paper_search.shtml
M. Tian, A. Gramm, H. Ritter, J. Schiller, R.
Winter (2004) “A Survey of current
Approaches towards Specification
and Management of Quality of
Service for Web Services ”. Freie
Universität Berlin, Institut für
Informatik
V. Tosic, B. Pagurek, K. Patel, B. Esfandiari,
W. Ma, (2003) "Management
Applications of the Web Service
Offerings Language (WSOL)", Proc.
Of the 15th International Conference
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
99 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


on Advanced Information Systems
Engineering(caise'03).
D. D. Lamanna, J. Skene, W. Emmerich
(2003). “slang: A language for
defining Service Level Agreements”,
The Ninth IEEE Workshop on Future
Trends of Distributed Computing
Systems (FT DCS'03).
Z. Chen, C. Liang-Tien, B. Silverajan, L. Bu-
Sung (2003) “UX – An Architecture
Providing qos-Aware and Federated
Support for UDDI”, Proc. Of the
2003 International Conference on
Web Services (ICWS'03).
A. S. Ali, O. F. Rana, R. Al-Ali, and D. W.
Walker. (2003) “uddie: An Extended
Registry for Web Services”. In
Workshop on Service Oriented
Computing: Models, Architectures
and Applications at SAINT
Conference. IEEE Computer Society
Press.
L.Taher, R.Basha, H. El Khatib. (2005b)
“qos Information & Computation
(qos-IC) Framework for qosbased
Discovery of Web Services”, to
appear on MOSAIC, Upgrade journal
Authors profile
Agushaka J. O. had his B.Sc. (mathematics
with computer science) in 2005 and
M.Sc.(computer science) in 2010 all
at Ahmadu Bello University, Zaria-
Nigeria. He currently lectures at the
same institution. He has special
interest in semantic web services,
knowledge representation, software
engineering. All other co-authors are
his colleagues in department of
mathematics of the same institution.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
100 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

Fuzzy Logic of Speed and Steering Control System for Three Dimensional
Line Following of an Autonomous Vehicle

Dr. Shailja shukla Mr. Mukesh Tiwari
Department of Electrical Engineering Department of Electrical Engineering
Jabalpur engineering College Jabalpur Jabalpur Engineering College Jabalpur
Jabalpur (M.P) India Jabalpur (M.P) India
E-mail shailja.shukla@indiatimes.com E-mail mukesh_tiwari836@yahoo.co.in


Abstract- The major problem of robotics research today is that there
is a huge barrier to entry into Robotics research due to system
software complexity and need for a researcher to learn more about
details, dependencies and intricacies of the complete system. This is
because a robot system needs several different modules to
communicate and execute in parallel. Today there are not much
controlled comparisons of algorithms and solutions for a given task,
which is the standard scientific method of other sciences. There is
also very little sharing between groups and projects, requiring code to
be written from scratch over and over again. This paper is to describe
exploratory research on the design of a modular autonomous mobile
robot controller. The controller incorporates a fuzzy logic [8] [9]
approach for steering and speed control [37], a FL approach for
ultrasound sensing and an overall expert system for guidance. The
advantages of a modular system are related to portability and
transportability, i.e. any vehicle can become autonomous with
minimal modifications. A mobile robot test bed has been constructed
in university of Cincinnati using a golf cart base. This cart has full
speed control with guidance provided by a vision system and obstacle
avoidance using ultrasonic sensors. The speed and steering fuzzy
logic controller is supervised through a multi-axis motion controller.
The obstacle avoidance system is based on a microcontroller
interfaced with ultrasonic transducers. This micro-controller
independently handles all timing and distance calculations and sends
distance information back to the fuzzy logic controller via the serial
line. This design yields a portable independent system in which high
speed computer communication is not necessary. Vision guidance has
been accomplished with the use of CCD cameras judging the current
position of the robot.[34] [35][36] It will be generating a good image
for reducing an uncertain wrong command from ground coordinate to
tackle the parameter uncertainties of the system, and to obtain good
WMR dynamic response.[1] Here we Apply 3D line following
mythology. It transforms from 3D to 2D and also maps the image
coordinates and vice versa, leading to the improved accuracy of the
WMR position. The fuzzy logic Controller may give a good
command signal; moreover we can find a highly accurate plant model
to design the controller taking into account
The unknown factors like friction and dynamic environment
.This design, in its modularity, creates a portable autonomous fuzzy
logic controller applicable to any mobile vehicle with only minor
adaptations.

I. INTRODUCTION
Controller design for any system needs some knowledge
about the system. Usually this involves a mathematical
description of the relation among inputs to the process, its state
variables, and its Output. This description is called the model
of the system. The model can be represented as a set of
transfer functions for linear time invariant systems or other
relationships for non-linear or time variant systems.
Modeling of complex systems may be very difficult task.
In a complex system such as a multiple input and multiple
outputs system inaccurate models can lead to unstable
systems, or unsuitable system performance. [9] Fuzzy Logic
Control (FLC) is an effective alternative approach for systems
which are difficult to model. The FLC uses the qualitative
aspects of the human decision process to construct the control
algorithm. This can lead to a robust controller design. The
modeling of a mobile robot is a very complex task and a direct
application of FLC can be found in this area. An excellent
introduction to the mathematical analysis of mobile robots can
be found in [1]
Even though the visualization and recognition of image
information for the guidance of mobile robot have been
studied for many years, The design of a mobile vehicle system
is a challenging task in the sense determining what
information to measure and how to use this information to
design an intelligent controller in a manner that will satisfy the
performance specifications of the system.
Overall fuzzy logic approaches for modeling control
systems for vehicles have been studied in the past. A fuzzy
logic controller [8] that guarantees stability of a control system
for a computer simulated model car and advanced fuzzy logic
application for automobiles application has been discussed in
Altrock et. al. [9].

II. OBJECTIVES
The main aspect of intelligent control addressed in this
paper is the design of a controller for a mobile robot using
fuzzy logic. The design specifications selected here fully
satisfies the building of a robot simulation which could follow
a line, avoid obstacles, and adapt to variations in terrain. The
adaptive capabilities of mobile robots depend on the
fundamental analytical and architectural designs of the sensor
systems used.
The mobile robot provides an excellent test platform for
investigations into generic vision guided robot control since it
is similar to an automobile and is a multi-input, multi-output
system. An algorithm has been developed to establish a
mathematical and geometrical relationship between the
physical three dimensional (3-D) ground coordinates of the
line to follow and its corresponding two dimensional (2-D)
digitized image coordinates.
This relationship is incorporated into the vision tracking
system to determine the perpendicular distance and angle of
the line with respect to the centroid of the robot. The
information from the vision tracking system is used as input to
a closed loop fuzzy logic controller to control the steering and
the speed of the robot.

III. RESEARCH OBJECTIVE
The main goal of this research is to model a modular
Fuzzy Logic Control for an automated guided vehicle and test
the performance of the vehicle Simulation in A MATLAB
Simulation the research is focused on the design of the Fuzzy
Controller for vision and sonar navigation of the automated
guided vehicle.
The design of the controller has been executed in three
stages. In the first stage the universe of discourse is identified
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
101 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
and fuzzy sets are defined. The rule base (Fuzzy Control
Rules) for the control is then defined through a human
decision making process. The membership functions and their
intervals are defined. Aggregation and de fuzzification
methods are selected. In the second stage the Fuzzy Controller
is implemented on the autonomous guided vehicle. In the
third and final stage performance of the controller is tested
through a series of simulations and real time running of the
vehicle.

IV. METHODOLOGY
The purpose of the vision guidance is to guide the robot to
follow the line using a digital charge couple device (CCD)
camera. To do this, the camera needs to be calibrated. Camera
calibration 34 is a process to determine the relationship
between a given 3-D coordinate system (world coordinates)
and the 2-D image plane a camera perceives (image
coordinates). More specifically, it is to determine the camera
and lens model parameters that govern the mathematical or
geometrical transformation from world coordinates to image
coordinates based on the known 3-D control field and its
image. The CCD camera digitizes the line from 3-D coordinate
system to 2-D image system. Since the process is autonomous,
the relationship between the 2-D system and the 3-D system
has to be accurately determined so that the robot can follow
the line. The objective of this section is to show how a model
was developed to calibrate the vision system so that, given any
2-D image coordinate point, the system can mathematically
compute the corresponding ground coordinate point. The X
and Y (the Z is constant) coordinates of two ground points are
then computed from which the angle and the perpendicular
distance of the line with respect to the centroid of the robot are
determined. The vision system was modeled by the following
equations
xPI = A
11
X
g
+ A
12
Y
g
+ A
13
Z
g
+ A
14 …………..(1)


yPI = A
21
X
g
+ A
22
Y
g
+ A
23
Z
g
+ A
24……………(2)


Where A
nm
are coefficients, xPI and yPI are x and y image
coordinates, and X
g
, Y
g
, and Z
g
are the ground coordinates. In
transforming the ground coordinate points to the image
coordinate points the following
IV.II, 2-D TRANSFORMATION OPERATION
 Translation
 Scaling
 Rotation
 Shear

IV.II.I, 2D TRANSLATION
 Current position

P=
 New position (after translation)
P=
 Translation operation
T =
…………. (3)
………………. (4)
……………. (5)

IV.II.II 2, SCALING


Fig. 1 Scaling
 Current position
P=


 New position
P’=
 Scaling operation
=

……. (6)
 Matrix multiplication

IV.II.III 2D-ROTATION

 Current position
P=
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
102 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
 New position
P=
 Rotation operation
R(θ)=

………… (7)
P’=

 Positive angles are “counter-clockwise"!

 Derivation of rotation
…………. (8)
………... (9)
 Rotate θ
2 2

…..… (10)
……….... (11)
 Observation (important results from trigonometry)!
.…….. (12)
....... (13)
2D Rotation

Fig. 2. 2D Rotation
IV.II.IV, 2D SHEAR

Fig. 3. 2D Shear

 Current position

P=


 Shear position


…………….... (14)
 Geometric meaning
 Shear operation along y axis


 Geometric meaning!
 Consider more complicated cases!
 Various examples are shown in the class
Transformation operations occur on the points: scaling,
translation, rotation, perspective, and projective. Solving for
the transformation parameters to obtain the image and ground
coordinate relationship is a difficult task. Fortunately, in the
model equations given above, the transformation parameters
are embedded into the coefficients. To compute the
coefficients, a calibration device was built to obtain 12 data
points. With the 12 points, a matrix equation was yielded as
Shown below

XPI = CA
1K
………………………...................(15)
¥PI = CA
2K
….. ………………………….... (16)

Where

Eqns. (15) & (16) consist of 12 linearly independent equations
and four unknowns; the least-square regression method is
applied to yield a minimum mean square error solution for the
coefficients. Below are the equations for the solution:
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
103 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

A
1K
= ( C
T
C)
-1
C
T
XPI ……………………...(17)


A
2K
= ( C
T
C)
-1
C
T
YPI …………………… (18)

Given an image coordinate xPI and yPI, and z ground
coordinate (the z coordinate of the points with respect to the
centroid of the robot is maintained constant since the robot is
run on a flat surface in this model) the corresponding X
g
and
Y
g
ground coordinates are computed as indicated by the
following matrix equations.
………………………….(19)


Where

Note that equation (1) and (19) can be modified to
accommodate the computation of Z
g
when an elevation of the
ground surface is considered. The image processing of the
physical points is done by the ISCAN tracking device, which
returns the centroid of the brightest or darkest region in a
computer controlled windows and returns its X and Y
coordinates. Two points on the line are windowed and their
corresponding coordinates are computed as described above.
From the computed x and y ground coordinates of the points,
the angle of the line with respect to the centroid of the robot is
computed from simple trigonometric relationship. In the next
section, we shall show how the angle of the line just computed
is used with other parameters to model the steering control of
the robot with a fuzzy logic controller.

Fig. 4 Line following

V. OBSTACLE AVOIDANCE
The obstacle avoidance system consists of six ultrasonic
transducers. An ultrasonic ranging system from Polaroid is
used for the purpose of calibrating the ultrasonic transducers.
An Intel 80C196 microprocessor and a circuit board with a
liquid crystal display is used for processing the distance
calculations. The distance value is returned through a RS232
port to the control computer. The system requires an isolated
power supply: 10-30 VDC, 0.5 amps. The two major
components of an ultrasonic ranging system are the transducer
and the drive electronics. In the operations of the system, a
pulse of electronic sound is transmitted toward the target and
the resulting echo is detected. The elapsed time between the
start of the transit pulse and the reception of the echo pulse is
measured. Knowing the speed of sound in air, the system can
convert the elapsed time into a distance measurement. The
drive electronics has two major categories - digital and analog.
The digital electronics generate the ultrasonic frequency. A
drive frequency of 16 pluses per second at 52 kHz is used in
this application.

VI. DESCRIPTION OF THE AUTONOMOUS VEHICLE
The system that is to be controlled is an electrically
propelled mobile vehicle was created and assembled during
the spring quarter of 1998 in the Advanced Robotics Lab at the
University of Cincinnati. This vehicle was built as part of the
Autonomous Guided Vehicle contest sponsored by the Army
Tank Command. A 3D rendering of above said mobile vehicle
is shown below. The vehicle is constructed of an aluminum
frame designed to hold the controller, obstacle avoidance,
vision sensing, vehicle power system, and drive components.
Two independently driven brushless DC motors are used for
both vehicle propulsion, as well as for vehicle steering This
independent drive system not only gives vehicle the capability
to move in a straight line, and perform turning actions, but this
system also allows the vehicle to have a zero turning radius
feature. This feature allows the vehicle to turn directly about
the center of the drive without requiring forward motion,
thereby giving the vehicle the ability to navigate through more
complicated course requirements. A 3-axis Gallil motion
control board is used as the interface between the controller
CPU and the drive components, including the brushless servo
drive motors and the encoders. A Galill board, the brushless
motor, and an optical encoder provide a closed loop system
that allows the controller code to specify accurately motor
dynamics parameters, including position, velocity and
acceleration. The Gallil controller contains a digital PID type
controller. This controller is tuned with the Servo Design Kit
Software package, that selects the Proportional, Integral, and
Derivative gains (Kp, Ki, Kd) to optimize the system response.
.
Fig. 5 Description of the Autonomous Vehicle

Once tuned, the controller code is able to simply select
motor position, velocity and acceleration, and control the
trajectory of the mobile Vehicle. It is important to distinguish
these PID components from the control logic used for vehicle:
this controller drives the motor to a specified velocity, whereas
the control logic selects the value of that specified velocity
based on vision system inputs. There are two control system
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
104 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
types that may be used to control an autonomous guided
vehicle. The firm is to provide the vehicle with complete
information about the environment, and the required path.
The vehicle then uses navigation sensors, and the
programmed information about the environment to navigate
through the course this method requires extensive
programming to completely define the path, and is unable to
navigate in an unknown territory. The second method is to
gather information from the environment using external
sensors, and process the information to control the speed and
steering parameters of the vehicle. Due to the unknown
environment for the usage of the AGV, this second method is
utilized. For path generation, the input to the controller is
attained through two cameras mounted on the front of the
vehicle. These cameras sense the visual image of the path-line.
This information is processed through the controller

VII.SIMULATION MODEL OF AN AUTONOMOUS
VEHICLE
In the simulation model of the autonomous vehicle there
are six inputs and three output all these six inputs are
combined by using multiplexer and provide single input to
fuzzy logic controller. All the inputs evaluated for each rule
that create the fuzzy rule editor and give the single output
which is decoded by de-multiplexer. Two outputs for left and
right motor speed are closed loop with feedback follow the
characteristic of the PID and unity gain. This measured error
signal between the desired and actual state of the linear closed
loop control system, is driven to a zero value and the desired
state is achieved



Fig. 6 Simulation model of An Autonomous Vehicle
VIII. ISCAN SYSTEM
The ISCAN system returns two variables: the distance of
the vehicle from the border line and the relative angle between
the path of the vehicle and the border line. The controller
utilizes these two inputs to select motor speeds that will drive
the vehicle to follow the specified path without crossing the
boundary lines. The vehicle can be driven in a straight line by
specifying equivalent angular velocities of the motors, or
driven in a turn by specifying difference between angular
velocities of the motors. A schematic of the components of the
control system is through a fuzzy logic algorithm, the code
translates the input from the vision system into target output
velocities for each of the right and left vehicle drive motors.
These outputs are processed through the Gallil motion
control system that translates the target output into controller
output signals. These signals are passed through the amplifiers
to increase the signals to a level that will drive the motors at
the proper velocity. The encoders, mounted on the ends of the
motors, supply an angular position feedback signal back to the
Galill control board to minimize the steady state error between
the target velocity, and the actual motor velocity. The end
result is the desired vehicle motion at the target velocity. This
system provides motor output signals for each input sample.
The system is therefore able to adjust to a changing
environment, and changing path conditions[1] .The previous
control logic for the AGV utilized a classical linear control
system with feedback, and a PID (Proportional, Integrator,
Derivative) controller.
This system has been selected due to the simplicity of its
components. This system proved to be excellent for challenges
focusing mainly on the complexity of the multiple input /
multiple output, and the difficulty of tuning the system with
respect to changing environments. For this reason, a fuzzy
logic controller, which is simpler to understand, and to
modify, has been created. To control the vehicle, a control
algorithm is developed that can easily be coded for the Gallil
control hardware interface. The Gallil board translates speed
commands into output signals which, after proper tuning,
result in a desired motor angular position, velocity and
acceleration. The membership functions were tuned to
improve the performance of the vehicle.

IX. FUZZY LOGIC CONTROLLER
Fuzzy logic controller [9] [13] uses the fuzzy set and fuzzy
logic theory previously introduced in its implementation. A
detailed reference on how to design a fuzzy controller can be
found in 29, 30, and 31. Fuzzy Inference System Fuzzy
inference is the actual process of mapping from a given input
to an output using fuzzy logic 27. Fuzzy logic starts with the
concept of a fuzzy set. A fuzzy set is a set without a crisp,
clearly defined boundary. It can contain elements with only a
partial degree of membership. The MATLAB Fuzzy Logic
Toolbox was used to build the initial experimental Input fuzzy
sets the first level of the fuzzy system has two inputs, error and
error. These inputs are resolved into a number of different
fuzzy linguistic sets.

X. RULE BASE
The way one develops control rules [16] depends on
whether or not the process can be controlled by a human
operator. If the operator's knowledge and experience can be
explained in words, then linguistic rules can be written
immediately. If the operator's skill can keep the process under
control, but this skill cannot be easily expressed in words, then
control rules may be formulated based on the observation of
operator's actions in terms of the input - output operating data.
However, when the process is exceedingly complex, it may
not be controllable by a human expert. In this case, a fuzzy
model of the process is built and the control rules are derived
theoretically.
It should be noted however, that this approach is quite
complicated and has not yet been fully developed. Therefore
the FLC is ideal for complex ill - defined systems that can be
controlled by a skilled human operator without the knowledge
of their underlying dynamics. In such cases an FL controller is
quite easy to design and implementation is less time
consuming than for a conventional controller
.
XI. RESULTS
The testing of the dual level fuzzy system controller
explained in that has been done in two steps. First, a
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
105 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
theoretical simulation is run using the MATLAB fuzzy tool
box.
The input for this simulation has generated using
theoretical test cases. The inputs to the MATLAB batch file
which is use to run the simulation (M-file) were error and
error. The outputs were steering and the speeds of the motor
two cases were considered. Results of the simulation are
shown in Obstacle avoidance with case staid.

1. Straight line path.
The objective of this case is to test if the controller handles
a simple case as straight line this simulation is presented in
Figure.1 The output indicating a successful line following in
this path has all condition are zero settling time , angle, peak
time.



Fig. 7 Straight line path
2. Curved Path.
In Case 2, the robot Is made to follow a curved line. In
this case the input data was free of any noise in form of
obstacles and loss of vision. The curved path direction of
vehicle graph as stating time 0sec. Settling angle 35.settling
time 20sec.The result of this simulation as seen in Figure 2
suggests that the fuzzy inference system was able to direct the
vehicle along curved lines.



Fig. 8 Curved Path
3. Angular path.
In Case 3, the robot followed a curved line. Noise in form
of loss of input vision data and obstacle is used during data
collection stage. Angular path conditions has starting time 2.2
sec settling angle 35 settling time 19sec.The simulation
presents a successful line following. The inference engine
worked successfully for this case

.

Fig. 9 Angular fluctuations path

4. Extreme environment path.
In Case 4, an extreme environment with excessive noise in
form of adverse vision input data and obstacles in sensitive
positions (on curves as pointed out in the simulation) have
been introduced. To make this case more difficult steep curves
were used. The simulation presents a failure at the point when
the robot path crosses the line it is supposed to follow. This
extreme environment path graph has starting time of obstacle
simulation 0 sec.,settling angle is 60 degree and settling tine
14sec.
This presents a limitation of the fuzzy inference engine.
This limitation arises due to the limitation on the number of
rules that can be implemented in this present controller. The
FLC fails due to the excess adverse parameters introduced in
this case. A solution to this problem is to use a neural network
to identify such extreme conditions and use dedicated fuzzy
inference engines for each case.



Fig. 10 Environment path

TABLE.1

XII. MOTOR SPEED
Components, including the brushless servo drive motors
and the encoders. A Galill board, the brushless motor, and an
optical encoder provide a closed loop system that allows the
controller code to specify accurately motor dynamics
parameters, including position, velocity and acceleration. The
Gallil controller contains a digital PID type controller.
This controller is tuned with the Servo Design Kit
Software package, that selects the Proportional, Integral, and
Derivative gains (Kp, Ki, Kd) to optimize the system response.
In right motor torque 0.6N/ms in t= 2 sec., peak time torque is
0.7N/ms in t=2.4sec. and settling time torque is 0.5N/ms in t=
16 sec. for left motor speed as well as right motor speed.
Once tuned, the controller code is able to simply select
motor position, velocity and acceleration, and control the
trajectory of the AGV,. It is important to distinguish these PID
components from the control logic used for vehicle: this
controller drives the motor to specified velocity, whereas the
control logic selects the value of that specified velocity based

Direction of
Vehicle
Obstacle avoidance
Starting
Time
sec.
Settling
angle θ
Settling time
sec.
Straight Line
Path
0 0 0
Curved Path 0 35 20
Angular
Path
2.2 35 19
Environment
Path
0 60 14
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
106 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
on vision system inputs has the code for the M-file. Note that
the results appear reasonable for both angle and speed. The
results of these simulations encouraged further tests using a
real life scenario. As a result the model has been also
implemented on the mobile robot, which is scheduled to take
part in nationwide obstacle avoidance and part following
competition



Fig. 11 Right motor speed



Fig. 12 Left motor speed

TABLE.2


XIII. CONCLUSION
The design and implementation of a modular fuzzy logic
based controller for an autonomous mobile robot for line
following along with position control with respect to an
obstacle course has been presented. The control algorithm for
this application is based on vision navigation. The
development of the [8] [9] FLC controller was accomplished
after the detailed study of an autonomous guided vehicle and
its environment. A rule base was generated using expert
system knowledge. Fuzzy membership functions and fuzzy
sets were developed. The FLC model was first tested on the
MATLAB fuzzy logic toolkit with some special cases. A
number of tests were run to analyze the stability and response
of the system under fuzzy control in a real life scenario.
Tuning of the system in form of adjusting the membership
functions and the rules has been accomplished to improve the
stability of the FLC. The fuzzy logic control is a very flexible
and robust soft computing tool for control. The number of
variants involved in the current application present a challenge
for any type of control system. A fuzzy logic control was
selected, as a soft computing solution for this problem keeping
in minds its robustness and flexibility. The performance of the
robot was studied with simulations for five different cases
selected for the study. The FLC shows good stability and
response for three of the cases. The problem at hand seems to
be a complex problem for just one inference engine to handle.
This limitation arises due to the limit on the number of rules
and membership functions that can be used in a single
inference engine. A better system performance can be obtained
if a FL approach is used. The environment in which the robot
runs should be divided into a number of specific classes
according to input data. The control system model will contain
an identified and classified input data, which will finally fire
the right inference engine for the input data class. From the
results obtained in the MATLAB simulation and the
preliminary testing of the model on the robot, it can be
concluded that the model presented, can be reliably and
successfully implemented permanently on the robot. Fuzzy
logic has been proven to be an excellent solution to control
problems where the number of rules for a system are finite and
which can be easily established.[16] In this application an
infinite number of rules can also be established. The fuzzy
control in a way acts as a learning system control, as it has the
ability to learn from situations where it fails. This learning is
possible by increasing the number of rules in the system. In
this way the system can keep on learning until it becomes a
perfect system.

REFERENCES
[1]. P. F. Muir and C. P. Neuman, ‘Kinematic Modeling of Wheeled
Mobile Robots,’ Journal of Robotic Systems, 4(2), 1987, pp. 281-
340
[2]. E. L. Hall and B. C. Hall, Robotics: A User-Friendly Introduction,
Holt, Rinehart, and Winston, New York, NY, 1985, pp. 23.
[3]. Z. L. Cao, S. J. Oh, and E. L. Hall, “Dynamic omni-directional
vision for mobile robots,” Journal of Robotic Systems, 3(1), 1986,
pp. 5-17.
[4]. Z .L. Cao, Y. Y. Huang, and E. L. Hall, “Region Filling
Operations with Random Obstacle Avoidance for Mobile Robots,”
Journal of Robotics Systems, 5(2), 1988, pp. 87-102.
[5]. S. J. Oh and E. L. Hall, “Calibration of an omni-directional vision
navigation system using an industrial robot,” Optical Engineering,
Sept. 1989, Vol. 28, No. 9, pp. 955-962.
[6]. R. M. H. Cheng and R. Rajagopalan, “Kinematics of Automated
Guided Vehicles with an Inclined Steering Column and an Offset
Distance: Criteria for Existence of Inverse Kinematic Solution,”
Journal of Robotics Systems, 9(8), Dec. , 1992, 1059- 1081.
[7]. M. P. Ghayalod, E. L. Hall, F. W. Reckelhoff, B. O. Mathews and
M. A. Ruthemeyer, “Line Following Using Omni-directional
Vision,” Proc. of SPIE Intelligent Robots and Computer Vision
Conf., SPIE Vol. 2056, Boston, MA, 1993, page 101.
[8]. Kazuo Tanaka, “Design of Model-based Fuzzy Controller Using
Lyapunov’s Stability Approach and Its Application to Trajectory
Stabilization of a Model Car,” Theoretical Aspects of Fuzzy
Control, John Wiley & sons, 1995. 2nd IEEE Conference on fuzzy
system, San Francisco, CA, 1993, Inc, pp.31-50.
[9]. C. V. Altrock et al., “Advanced fuzzy logic control technologies in
automotive applications”, Proceedings of 1st IEEE international
Conference on Fuzzy Systems, 1992, pp. 835-842.
Motor T
r
t
r
⁄ T
p
t
p
⁄ T
x
t
x


Right
motor

0.6/2

0.7/2.4

0.5/16

Left motor

0.6/2

0.7/2.4

0.5/16
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
107 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
[10]. L. A. Zadeh, "Outline of a new Approach to the Analysis of
Complex Systems and Decision Process", 1973 IEEE Transacions
on Systems, Man and Cybernetics, v3, pp 28-44.
[11]. E. H. Mamdani, "Fuzzy Sets for Man - Machine Interaction ",
1977, IEEE Transactions on Computer, v26, pp. 1182-1191.
[12]. J. F. Baldwin and N. C. F. Guild, "Feasible Algorithms For
Approximate Reasoning Using Fuzzy Logic", 1980, Fuzzy Sets
and Systems, v3, pp. 225-251..
[13]. J. F. Baldwin and B. W. Pilsworth, "Axiomatic Approach For
Approximate Reasoning with Fuzzy Logic", 1980, Fuzzy Sets and
Systems, v3, pp. 193-219
[14]. J. B. Kiszka, M. M. Gupta and G. M. Trojan, "Multi Variable
Fuzzy Controller under Goedel's Implication", Fuzzy Sets and
Systems, v34, pp. 301-321.
[15]. Z. Cao and A. Kandel, "Applicability of some Fuzzy Implication
Operators", 1989, Fuzzy Sets and Systems, v31, pp. 151-186.
[16]. A. Bardossy, L. Duckstein, "Fuzzy Rule based Modeling with
Application to Geophysical, Biological and Engineering Systems",
1995, CRC Press, New York, pp.62-68.
[17]. H. Hellendoorn, R. Palm, "Fuzzy Systems Technologies at
Siemens R & D", 1994, Fuzzy Sets and Fuzzy Systems, Vol. 63,
pp. 245-269.
[18]. M. Jamshidi, N. Vadiee, T. Ross, "Fuzzy Logic Control", 1993,
PTR Prentice Hall, Englewood Cliffs, New Jersey 07632, pp 89-
101.
[19]. P. King, E. Mamdani, "The application of Fuzzy Control Systems
to Industrial Process", 1977, Automatic a, Vol. 3, pp. 235-242.
[20]. R. Stenz, U. Kuhn, "Automation of a batch distillation column
using Fuzzy and Conventional Control", 1995 IEEE Transactions
on Systems Technology, Vol. 3, pp. 171-176.
[21]. T. Takahashi, M. Kitou, M. Asai, M. Kido, T. Chiba, J.
Kawakami, Y. Matsui, "A new voltage equipment using Fuzzy
Inference", 1994, Electrical Engineering in Japan, Vol. 114, pp. 18-
32.
[22]. C. von Altrock, Fuzzy Logic and Neuro Fuzzy Applications
Explained Prentice Hall PTR, Englewood Cliffs, NJ, 07632, page
78.
[23]. J. Yen, R. Langari, L. Zadeh, "Industrial applications of Fuzzy
Logic and Intelligent Systems", 1995, IEEE Press, IEEE Inc, New
York, pp 08-09.
[24]. T. Yamakawa, "Stabilization of an inverted pendulum by a high-
speed Fuzzy Logic Controller Hardware System", Fuzzy Sets and
Systems, Vol. 32, pp. 161-180.
[25]. Charles P. Coleman and Datta Godbole, University of California
at Berkeley “A Comparison of Robustness: Fuzzy Logic, PID, &
Sliding Mode Control”, 1996, pp.06- 08
[26]. Z. Yuzhou, R. McLauchlan, R. Challoo and S. Omar "Fuzzy Logic
Control of a four-link Robotic Manipulator in a Vertical Plane"
Proceedings of the Artificial Neural Networks in Engineering
(ANNIE '96) Conference, held November 10-13, 1996, St. Louis
US, pp 198-200.
[27]. J.-S. Roger Jang and Ned Gulley, Fuzzy Logic Toolbox For Use
with MATLAB, The MathWorks Inc. 1995, pp 90-92.
[28]. Bart Kosko “Neural Networks and Fuzzy Systems- A Dynamical
Systems Approach To Machine Intelligence”, Prentice Hall,
Englewood Cliffs, NJ 07632, pp 45-
[29]. N. Gulley "How To Design Fuzzy Logic Controllers" from
Machine Design, November 1992, page 26. 62
[30]. Mark Kantrowitz, Erik Horstkotte, and Cliff Joslyn “The Internet
fuzzy-logic FAQ ("frequently-asked questions") list” postings for
comp.ai.fuzzy
URL:ftp.cs.cmu.edu:/user/ai/pubs/faqs/fuzzy/fuzzy_1.faq, 1996
[31]. Kevin Self "Designing With Fuzzy Logic" from IEEE
SPECTRUM, November 1990, Volume 105 pp 42-44.
[32]. T. Takagi, M. Sugeno, "Fuzzy Identification of Systems and it's
Application to Modeling and Control", 1985, IEEE Transactions on
Systems, Man, and Cybernetics, V.SMC-15, pp. 116-132.
[33]. Sung, Eric. Loon, Ng Kok. Yin, Yee Chiang. Parallel linkage
steering for an automated guided vehicle. IEEE Control Systems
Magazine. v 9 n 6 Oct 1989 p 3-8
[34]. Position Control for Wheeled Mobile Robots Using a Fuzzy Logic
Controller T. H. Lee F. H. F. hung 1999 IEEE
[35]. G. Campion, G. Bastin and B. D 'Andrea- Novel, "Structural
properties and classification of kinematic and dynamic models of
wheeled mobile robots, " IEEE Trans. Robotics and Automation,
vol. 12, no. 1, pp. 41-62, Feb. 1996.
[36]. A Comparison of Two and Three Dimensional Imaging Ernest
Hall, Donald Rosselot, Mark Aull and Manohar Balapa Center for
Robotics Research University of Cincinnati

[37]. Autonomous Vehicle Following by a Fuzzy Logic Controller N.
Kehtarnavaz, E. Nakamura, N. Griswold, J. Yen Departments of
Electrical Engineering and Computer Science Texas A&M
University, College Station, TX 77843

AUTHORS PROFILE

Dr. Shailja Shukla received B.E. degree in
Electrical Engg. from Jabalpur Engg. College,
Jabalpur in 1984 and the Ph.D. degree in
Control System from Rajiv Gandhi Technical
University, Bhopal in 2002. She is currently
Professor in Electrical Engg. and the
Chairperson of the Department of Computer
Science and Engg. at Jabalpur Engg. College,
Jabalpur. Her research interest on Large Scale
Control Systems, Soft Computing and include
Machine Learning, Face Recognition and
Digital Signal Processing. She has been the Organizing Secretary of
International Conference on Soft Computing and Intelligent Systems. She has
published more than 40 Research papers in International/National Journals and
Conferences. She is Editorial member of many International Journals


Mr. mukesh tiwari was born in Madhya-Pradesh at
katni on 27
th
November 1983. He received B.E
degree in (Electronic & Communication) from
Rewa Institute of Technology Rewa in 2007 he is
the student of master of Engineering in (Control
system) Department of Electrical Engineering.
Jabalpur Engineering College Jabalpur (M.P)
INDIA. His research interest on fuzzy logic,
communication, and control system He has
published one International journal & Three National Conference


(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
108 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
A reversible high embedding capacity data hiding
technique for hiding secret data in images
Mr. P. Mohan Kumar, Dr. K. L. Shunmuganathan,
Asst. Professor, CSE Department, Professor and Head, CSE Department
Jeppiaar Engineering College, R.M.K. Engineering College,
Chennai., India. Chennai. India.
mohankumarmohan@gmail.com kls_nathan@yahoo.com

Abstract -- As the multimedia and internet technologies are
growing fast, the transmission of digital media plays an
important role in communication. The various digital media
like audio, video and images are being transferred through
internet. There are a lot of threats for the digital data that are
transferred through internet. Also, a number of security
techniques have been employed to protect the data that is
transferred through internet. This paper proposes a new
technique for sending secret messages securely, using
steganographic technique. Since the proposed system uses
multiple level of security for data hiding, where the data is
hidden in an image file and the stego file is again concealed in
another image. Previously, the secret message is being
encrypted with the encryption algorithm which ensures the
achievement of high security enabled data transfer through
internet.
Keywords – steganography, watermarking, stego image, payload

I. INTRODUCTION

Steganography is the technique of hiding
information. The primary goal of cryptography is to make a
data that cannot be understood by a third party, where as
the goal of steganography is to hide the data from a third
party. There are many number of steganographic methods
ranging from invisible ink and microdots to hide a secret
message in the second letter of each word of a large body of
text and spread spectrum radio communication. With the
vast development of computers and internet, there are many
other methods of hiding information [1], such as:
a. Covert channels
b. Concealment of text message within Web pages
c. Hiding files in "plain sight"
d. Null ciphers
One of the most important applications of
steganography is digital watermarking. A watermark is the
replication of an image, logo, or text on paper stock so that
the source of the document can be at least partially
authenticated. A digital watermark can accomplish the
same function; an artist can post sample images on his
website with an embedded signature so that he can prove
her ownership in case others attempt to steal his work or try
to show as their work.
The following formula can provide a very generic
description of the steganographic process:
Cover data + hidden data + stego key = stego data
In this formula, the cover data is the file in which
we will hide the hidden data, which may also be encrypted
using the stego key. The resultant file is the stego
data which will be of the same type as the cover data [2].
The cover data and stego data are typically image or audio
files. In this paper, we are going to focus on image files and
will discuss about the existing techniques of image
steganography.
Before discussing how information is hidden in an
image file, we should have an idea about how images are
stored. An image file is simply a binary file containing a
binary representation of the color or light intensity of each
picture element known as pixel, comprising the image.
Images are normally using either 8-bit or 24-bit
color. When using 8-bit color, there is a definition of up to
256 colors forming a palette for this image, where each
color is denoted by an 8-bit value. A 24-bit color scheme
uses 24 bits per pixel which provides a much better set of
colours. In this case, each pixel is represented by three
bytes, each byte representing the intensity of the three
primary colors red, green, and blue (RGB), respectively[3].
The size of an image file is directly related to the
number of pixels and the granularity of the color definition.
A typical 640x480 pix image using a palette of 256 colors
would require a file about 307 KB in size (640 • 480 bytes),
whereas a 1024x768 pix high-resolution 24-bit color image
would result in a 2.36 MB file (1024 • 768 • 3 bytes).
There are a number of image compression
schemes have been developed as Bitmap (BMP), Graphic
Interchange Format (GIF), and Joint Photographic Experts
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
109 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Group (JPEG) file types. Anyway, we are not able to use
them all as the same way for steganography.
GIF and 8-bit BMP files are using
lossless compression, a scheme that allows the software to
exactly reconstruct the original image. JPEG, on the other
hand, uses lossy compression, which means that the
expanded image is very nearly the same as the original but
not an exact duplicate. While both of these methods allow
computers to save storage space, lossless compression is
much better suited to applications where the integrity of the
original information must be maintained, such as
steganography. Even though JPEG can be used for stego
applications, more commonly used files for hiding data are
GIF or BMP files.

II. LITERATURE SURVEY

The rapid advances of network technologies and
digital devices make information exchange fast and easy.
However, distributing digital data over public networks
such as the Internet is not really secure due to copy
violation, counterfeiting, forgery, and fraud. Therefore,
protective methods for digital data, specially for sensitive
data, are highly demanded. Traditionally, secret data can be
protected by cryptographic methods such as DES and RSA
(Rivest et al., 1978) [4]. The drawback of cryptography is
that cryptography can protect secret data in transit, but once
they have been decrypted, the content of the secret data has
no further protection (Cox et al., 2007).
In addition, cryptographic methods do not hide
the very existence of the secret data. Alternatively,
confidential data can be protected by using information
hiding techniques. Information hiding embeds secret
information into cover objects such as written texts, digital
images, adios, and videos (Bender et al., 1996) [5]. For
more secure, cryptographic techniques can be applied to an
information hiding scheme to encrypt the secret data prior
to embedding.
In general, information hiding (also called data
hiding or data embedding) technique includes digital
watermarking and steganography (Petitcolas et al., 1999).
Watermarking is used for copyright protection, broadcast
monitoring, transaction tracking, etc. A watermarking
scheme imperceptibly alters a cover object to embed a
message about the cover object (e.g., owner’s identifier)
(Cox et al., 2007). The robustness (i.e. the ability to resist
certain malicious attacks such as common signal processing
operations) of digital watermarking schemes is critical. In
contrast, steganography is used for secret communications.
A steganographic method undetectably alters a
cover object to embed a secret message (Cox et al., 2007)
[6]. Thus, steganographic methods can hide the very
presence of covert communications. Information hiding
techniques can be performed in three domains (Bender et
al., 1996) [7], namely, spatial domain (Zhang and Wang,
2006), compressed domain (Pan et al., 2004), and
frequency (or transformed) domain (Kamstra and Heijmans,
2005; Wu and Frank, 2007; Zhou et al., 2007) [8].
Each domain has its own advantages and
disadvantages in terms of embedding capacity, execution
time, storage space, etc. Two main factors that really affect
an information hiding scheme are visual quality of stego
images (also called visual quality for short), embedding
capacity (or payload). An information hiding scheme with
low image distortion is more secure than that with high
distortion because it does not raise any suspicions of
adversaries. The second important factor is embedding
capacity (also called capacity for short).
An information hiding scheme with high payload
is preferred because more secret data can be transferred [9].
However, embedding capacity is inversely proportional to
visual quality. Thus, the tradeoff between the two factors
above varies from application to application, depending on
users’ requirements and application fields. Consequently,
different techniques are utilized for different applications.
Therefore, a class of data hiding schemes is needed to span
the range of possible applications. Embedding the secret
data into an image causes the degradation of image quality.
Even though small image distortion is unacceptable in some
applications such as law enforcement, military image
systems, and medical diagnosis.
If a data embedding scheme is irreversible (also
called lossy), then a decoder can extract secret data only
and the original cover image cannot be restored. In contrast,
a reversible (also called invertible, lossless, or distortion-
free) data embedding scheme allows a decoder to recover
the original cover image completely upon the extraction of
the embedded secret data [10]. A reversible data hiding
scheme is suitably used for some applications such as the
healthcare industry and online content distribution systems.
To our best knowledge, the first reversible data
embedding scheme was proposed in 1997 (Barton, 1997).
Macq (2000) extended the patchwork algorithm (Bender et
al., 1996) [11] to achieve the reversibility. This method
encounters the underflow and overflow problem (i.e.,
grayscale pixel values are out of the allowable range [0,
255]). Honsinger et al. (2001) [12] used modulo arithmetic
operation to resolve the underflow and overflow problem.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
110 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Consequently, Honsinger et al.’s method raises the salt-
and-pepper effect. Fridrich et al. (2001) [13] also proposed
the reversible data embedding method for the authentication
purpose so the embedding capacity of this method is low.
Later on, De Vleeschouwer et al. (2003) [14] proposed the
circular interpretation of bijective transforms to face the
underflow and overflow problem. However, the salt-and-
pepper problem still remains in De Vleeschouwer et al.’s
method.
As a whole, the problem with the aforementioned
methods is either the salt-and-pepper problem or low
embedding capacity. Tian (2003) [15] proposed the
reversible data embedding scheme with high embedding
capacity and good visual quality of embedded images (also
called stego images). Tian’s scheme is of a fragile
technique meaning that the embedded data will be mostly
destroyed when some common signal processing operations
(e.g., JPEG compression) are applied to a stego image.
Tian’s method uses the difference expansion (DE)
operation to hide one secret bit into the difference value of
two neighboring pixels. Thus, the embedding capacity of
the DE method is at most 0.5 bpp for one layer embedding.
Tian also suggested the multiple-layer embedding to
achieve higher embedding capacity. Alattar (2004) [16]
generalized Tian’s method to embed n _ 1 secret bits into a
group of n cover pixels. Thus, the embedding capacity of
Alattar’s method is at most (n _ 1)/n bpp.
Kamstra and Heijmans (2005) [17] also improved
Tian’s method in terms of visual quality at low embedding
capacities. The maximum embedding capacity of Kamstra
and Heijmans’ method is 0.5 bpp. Chang and Lu (2006)
exploited Tian’s method to achieve the average embedding
capacity of 0.92 bpp and the average PSNR of 36.34 dB for
one-layer embedding. Next, Thodi and Rodriquez (2007)
improved Tian’s scheme and proposed the novel method
called prediction error expansion (PEE) embedding. The
PEE method embeds one secret bit into one cover pixel at a
time. However, at its maximum embedding capacity (i.e.,
around 1 bpp), the visual quality of the PEE method is
always less than 35 dB for all test images. Then, Kim et al.
(2008) improved Tian’s method by simplifying the location
map to achieve higher embedding capacity while keeping
the image distortion the same as the original DE method.
Lou et al. (2009) improved the DE method by proposing
the multiple layer data hiding scheme. Lou et al.’s method
reduces the difference value of two neighboring cover
pixels to enhance the visual quality. The problem with the
aforementioned schemes is that the PSNR value becomes
very low (i.e., less than 30 dB) at high embedding capacity
(i.e., more than 1 bpp).

III. PROPOSED SYSTEM

This section presents our new reversible
steganographic scheme with good stego-image quality and
high payload by using the multiple embedding strategies to
improve the image quality and the embedding capacity of
the DE method. For increasing the security of secret data
delivery, it is assumed that the secret data have been
encrypted by using the well-known cryptosystem (e.g.,
DES or RSA) to encrypt the secret data prior to embedding.
Therefore, even an attacker somehow extracts the secret
data from the stego image; the attacker still cannot obtain
the real information without the decryption key. The details
of the proposed method are described next.

A. The embedding phase
Basically, the proposed method embeds one
information bit b of the information bit stream into one
grayscale cover pixel pair of an original grayscale cover
image O sized H _W at a time in raster scan order.
Specifically, the proposed scheme consists of two main
stages, namely, the horizontal embedding procedure HEm
and the vertical embedding procedure VEm. The secret bit
stream S whose length is LS is divided into two secret bit
streams S1 and S2. The lengths of S1 and S2 are denoted as
LS1 and LS2, respectively. The information bit stream B1
is created by concatenating the secret bit stream S1 and the
auxiliary data bit stream A1. That is, B1 = S1||A1.
Similarly, the information bit stream B2 is created
by concatenating the secret bit stream S2 and the auxiliary
data bit stream A2 (i.e., B2 = S2||A2). The generation of A1
and A2 will be described later. Firstly, the information bit
stream B1 is horizontally embedded into O by using the
procedure HEm to obtain the output image T sized H _W.
Secondly, the compressed location map CM1 whose length
is LC1, which will be described later, is embedded into T
by using the least significant bit (LSB) replacement
technique to obtain the output image U sized H _W.
Thirdly, the information bit stream B2 is vertically
embedded into U by using the procedure VEm to obtain the
output image V sized H _W. Fourthly, the compressed
location map CM2 whose length is LC2, which will be
described later, is embedded into V by using the LSB
replacement technique to obtain the final stego image X
sized H _ W.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
111 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
The overview of the proposed embedding process
is shown in the following diagram. For the horizontal
embedding procedure HEm: horizontally scan the cover
image O in raster scan order (i.e., from left to right and top
to bottom) to gather two neighboring pixels x and y into a
cover pixel pair (x, y). If y is an odd value, then the cover
pixel pair (x, y) is defined as a horizontally embeddable
pixel pair. Otherwise, the cover pixel pair (x, y) is defined
as a horizontally non-embeddable pixel pair. Let the set of
horizontally embeddable pixel pairs of O be E1 whose
cardinality is LE1. It is clear that the length of B1 is LE1.
The horizontally non-embeddable pixel pairs are kept
unchanged during the horizontal embedding stage. Each
information bit b in B1 is horizontally embedded into each
horizontally embeddable pixel pair (x, y) in E1 at a time by
using the proposed horizontal embedding rule HR defined
below.


Fig 1. Embedding Phase of Proposed system

The horizontal embedding rule HR:
For each horizontally embeddable pixel pair (x, y),
we apply the following embedding rules:
HR1: If the information bit b = 1, then the stego
pixel pair is computed by (x0 , y0) = (x, y).
HR2: If the information bit b = 0, then the stego
pixel pair is calculated by (x0 , y0) = (x, y _ 1).
The horizontal embedding rule HR is repeatedly
applied to embed each information bit b in B1 into each
cover pixel pair (x, y) in E1 of O until the whole
information bit stream B1 is completely embedded into O
to obtain the output image T. It is noted that the proposed
horizontal embedding rule HR does not cause the
underflow and overflow problem. That is, the embedded
pixel pairs (x0 , y0)’s are guaranteed to fall in the allowable
range [0, 255].
The auxiliary data bit stream A1 is actually the
LSBs of the first LC1 pixels in the image T and generated
as follows. It is noted that LC1 is the length of the
compressed location map CM1 ended with the unique end-
of-map indicator EOM1. Initially, B1 is equal to S1 (i.e.,
B1 = S1). During the execution of the procedure HEm, for
the first LC1 pixels in O, when each pixel has been
processed for embedding, its LSB is taken as an auxiliary
data bit of A1 and appended to the end of B1. That is, B1 is
gradually grown until the LC1 auxiliary data bits in A1 are
concatenated into B1. Finally, the information bit stream is
B1 = S1||A1, which is completely embedded into O.
For the vertical embedding procedure VEm:
Vertically scan the output image U in raster scan
order to group two neighboring pixels u and v into a pixel
pair (u, v). If v is an even value, then the pixel pair (u, v) is
defined as a vertically embeddable pixel pair. Otherwise,
the pixel pair (u, v) is defined as a vertically non-
embeddable pixel pair. Let the set of vertically embeddable
pixel pairs of U be E2 whose cardinality is LE2. It is
obvious that the length of B2 is LE2. The vertically non-
embeddable pixel pairs are left unchanged during the
vertical embedding stage. Each information bit b in B2 is
vertically embedded into each vertically embeddable pixel
pair (u, v) in E2 at a time by using the proposed vertical
embedding rule VR defined below.
The vertical embedding rule VR:
For each vertically embeddable pixel pair (u, v),
we apply the following embedding rules:
VR1: If the information bit b = 0, then the final
stego pixel pair is computed by (u0, v0) = (u, v).
VR2: If the information bit b = 1, then the final
stego pixel pair is computed by (u0, v0) = (u, v + 1).
The vertical embedding rule VR is iteratively
applied to conceal each information bit b in B2 into each
pixel pair (u, v) in E2 of U until the entire information bit
stream B2 is totally concealed into U to obtain the output
image V. It is noted that the proposed vertical embedding
rule VR does not raise the underflow and overflow
problem. That is, the final stego pixel pairs (u0 , v0)’s are
assured to fall in the allowable range [0, 255]. Similar to
the generation of A1, the auxiliary data bit stream A2 is
actually the LSBs of the first LC2 pixels in the image V and
generated as follows. It is noted that LC2 is the length of
the compressed location map CM2 ended with the unique
end-of-map indicator EOM2.
Initially, B2 equals the secret bit stream S2 (i.e.,
B2 = S2). During the execution of the procedure VEm, for
the first LC2 pixels in the image U, when each pixel has
been processed for embedding, its LSB is taken as an
auxiliary data bit of A2 and appended to the end of B2.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
112 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
That is, B2 is gradually grown until the LC2 auxiliary data
bits in A2 are concatenated into B2. Finally, the
information bit stream is B2 = S2||A2, which is fully
embedded into the image U. For the purposes of extracting
B1 and recovering O, a location map HL sized H _ (W/2) is
needed to record the positions of the horizontally
embeddable pixel pairs (x, y) in O. The location map HL is
a one-bit bitmap.
All the entries of HL are initialized to 0. If the
cover pixel pair (x, y) is the horizontally embeddable pixel
pair, then the corresponding entry of HL is set to be 1.
Next, the location map HL is losslessly compressed by
using the JBIG2 codec (Howard et al., 1998) or an
arithmetic coding toolkit (Carpenter, 2002) to obtain the
compressed location map CM1 whose length is LC1. The
compressed location map CM1 is embedded into the image
T by using the LSB replacement technique as mentioned
above. Similarly, for the purposes of extracting B2 and
recovering the image U, a location map VL sized (H/2) _W
is required to save the positions of the vertically
embeddable pixel pairs (u, v) in U. The location map VL is
a one-bit bitmap.
All the entries of VL are initialized to 0. If the
pixel pair (u, v) is the vertically embeddable pixel pair, then
the corresponding entry of VL is set to be 1. Then, VL is
also lossless compressed by using the JBIG2 codec
(Howard et al., 1998) or an arithmetic coding toolkit
(Carpenter, 2002) to obtain the compressed location map
CM2 whose length is LC2. The compressed location map
CM2 is embedded into the image V by using the LSB
replacement technique as mentioned above. The final
output of the embedding phase is the final stego image X
sized H _W. Then, the stego image X is sent to the
expected receivers.
B. The extracting phase
The extracting phase is actually the reverse
process of the embedding phase. The extracting phase is
composed of two main stages, namely, the vertical
extracting procedure VEx and the horizontal extracting
procedure HEx. Specifically, firstly, the embedded CM2 is
retrieved by extracting the LSBs of the first LC2 pixels of
the received stego image X. The extracted CM2 is then
decompressed to obtain VL which is used to identify the
vertical embeddable pixel pairs belonging to the set E2 of
X. Next, A2 is extracted from the last LC2 pixel pairs in E2
of X by using the vertical extracting rule VX. Then, the
first LC2 pixel pairs of X are replaced with the extracted
A2 to obtain the image V. Secondly, from the image V,
extract the embedded B2 and recover the image U by using
the vertical extracting procedure VEx. Thirdly, the
embedded CM1 is obtained by extracting the LSBs of the
first LC1 pixels of the image U. The extracted CM1 is then
decompressed to obtain HL which is used to identify the
horizontal embeddable pixel pairs belonging to the set E1
of U.
Next, A1 is extracted from the last LC1 pixel pairs
in E1 of U by using the horizontal extracting rule HX.
Then, the first LC1 pixel pairs of U are replaced with the
extracted A1 to obtain the image T. Fourthly, from the
image T, extract the embedded B1 and recover the original
cover image O by using the horizontal extracting procedure
HEx. The first LS1 bits of B1 is the secret bit stream S1 and
the first LS2 bits of B2 is the secret bit stream S2. The
extracted secret bit streams S1 and S2 are concatenated to
form the original secret bit stream S (i.e., S = S1||S2.). The
overview of the proposed extracting process is shown in the
following figure.



Fig.2. Extracting phase of proposed system

For vertical extracting procedure VEx
Vertically scan the image V in raster scan order to
group two neighboring pixels u0 and v0 into a pixel pair
(u0 , v0). The extracted VL is used to determine whether a
pixel pair (u0 , v0) belongs to the set E2 (i.e., a vertically
embeddable pixel pair). The extraction of the embedded B2
and the recovery of the image U are performed as follows.
The vertical extracting rule VX
If v0 is an even value,
then The information bit in B2 is extracted by b =
0 and The pixel pair (u, v) is recovered by (u, v) = (u0 , v0).
Else if (u0 , v0) belongs to the set E2,
thenThe information bit in B2 is extracted by b =
1 and
The pixel pair (u, v) is recovered by (u, v) = (u0 ,
v0 _ 1).
Else
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
113 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
There is no information bit extraction and
The pixel pair (u, v) is recovered by (u, v) = (u0 ,
v0).
The output of the vertical extracting procedure
VEx is the image U.
From the image U, the embedded CM1 is
extracted and the image T is recovered as mentioned above.
The location map HL is achieved from
decompressing the extracted CM1.
For horizontal extracting procedure VEx
Horizontally scan the image T in raster scan order
to gather two neighboring pixels x0 and y0 into a pixel pair
(x0 , y0). The location map HL is used to identify if a pixel
pair (x0 , y0) belongs to the set
E1 (i.e., a horizontally embeddable pixel pair). The
extraction of the embedded B1 and the recovery of the
original cover image O are performed as below.
The horizontal extracting rule HX
If y0 is an odd value, then
The information bit in B1 is extracted by b = 1 and
The original cover pixel pair (x, y) is recovered by
(x, y) = (x , y).
Else if (x0 , y0) belongs to the set E1, then
The information bit in B1 is extracted by b = 0 and
The original cover pixel pair (x, y) is recovered by
(x, y) = (x0 , y0 + 1).
Else
There is no information bit extraction and
The original cover pixel pair (x, y) is recovered by
(x, y) = (x0 , y0).

IV. EXPERIMENTAL RESULTS

To evaluate the performance of the proposed
method, we implemented the proposed method and Tian’s
method by using Borland C++ Builder 6.0 software running
on the Pentium IV, 3.6 GHz CPU, and 1.49 GB RAM
hardware platform. The secret bit stream S was randomly
generated by using the library function random(). The
multiple-layer embedding was performed for the DE and
proposed methods. To make the DE method achieve its
maximum embedding capacity, the threshold TH was not
used in the experiments. The location maps L, HL, and VL
were losslessly compressed and decompressed by using the
arithmetic coding toolkit (Carpenter, 2002). The commonly
used grayscale images sized 512 _ 512, were used as the
cover images in our experiments. The good visual quality
of stego images (i.e. images embedded with a secret
message) is the most important property of steganographic
systems because it is hard to be detected by detectors.
Because the lack of a universal image quality measurement
tool, we used peak signal-to-noise ratio (PSNR) to measure
the distortion between an original cover image and the
stego image. The PSNR is defined by


(a) (b) (c)
(d)

Fig 3.a. Host image b. Image after preprocessing c. Stego
image d. Image quality after extracting secret image

V. CONCLUSION

In this paper, we propose a simple reversible
steganographic scheme in spatial domain for digital images
by using the proposed multiple embedding strategies. The
experimental results show that the proposed reversible
steganographic method is capable of achieving very good
visual quality of stego images and high embedding capacity
(especially, when multiple-layer embedding is performed).
Specifically, with the one-layer embedding, the proposed
method can obtain the embedding capacity of more than 0.5
bpp and the PSNR value greater than 54 dB for all test
images. In addition, with the two-layer embedding, the
proposed method can achieve the embedding capacity of
about 1 bpp and the PSNR value greater than 53 dB for all
test images. Especially, with the five-layer embedding, the
proposed method has the embedding capacity of more than
2 bpp and the PSNR value higher than 52 dB for all test
images. Therefore, it can be said that the proposed method
is the one that really allows users to perform multiple layer
embedding to achieve the purposes of very high embedding
capacity and very good visual quality of stego images. As a
whole, the proposed method outperforms many existing
reversible data embedding methods in terms of visual
quality, embedding capacity, and computational
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
114 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
complexity. Thus, we can conclude that our proposed
method is applicable to some information hiding
applications such as secret communications, medical
imaging systems, and online content distribution systems.

ACKNOWLEDGEMENT

We take immense pleasure in thanking our
chairman Dr. Jeppiaar M.A, B.L, Ph.D, the Directors of
Jeppiaar Engineering College Mr. Marie Wilson, B.Tech,
MBA, (Ph.D), Mrs. Regeena Wilson, B.Tech, MBA, (Ph.D)
and the principal Dr. Sushil Lal Das M.Sc(Engg.), Ph.D for
their continual support and guidance. We would like to
extend our thanks to my guide, our friends and family
members without whose inspiration and support our efforts
would not have come to true. Above all, we would like to
thank God for making all our efforts success.

REFERENCES

[1] Bender, W., Gruhl, D., Morimoto, N., Lu, A., 1996. Techniques for
data hiding. IBM Systems Journal 35 (3–4), 313–336.
[2] Alattar, A.M., 2004. Reversible watermark using the difference
expansion of a generalized integer transform. IEEE Transactions on
Image Processing 13 (8), 1147–1156.
[3] Barton, J.M., 1997. Method and apparatus for embedding
authentication information within digital data. US Patent 5 646 997.
[4] Carpenter, B., 2002. Compression via Arithmetic Coding <http://
www.colloquial.com/ArithmeticCoding/>
[5] Chang, C.C., Lu, T.C., 2006. A difference expansion oriented data
hiding scheme for restoring the original host images. Journal of
Systems and Software 79 (12), 1754–1766.
[6] Cox, I.J., Miller, M.L., Bloom, J.A., Fridrich, J., Kalker, T., 2007.
Digital Watermarking and Steganography. Morgan Kauffman, ISBN
978-0-12-372585-1.
[7] Davis, R.M., 1978. The data encryption standard in perspective.
IEEE Communications Magazine 16 (6), 5–9.
[8] De Vleeschouwer, C., Delaigle, J.F., Macq, B., 2003. Circular
interpretation of bijective transformations in lossless watermarking
for media asset management. IEEE Transactions on Multimedia 5
(1), 97–105.
[9] Fridrich, J., Goljan, M., Du, R., 2001. Invertible authentication. In:
Proceedings of the SPIE Security Watermarking Multimedia
Contents, San Jose, CA, pp. 197–208 (January).
[10] Honsinger, C.W., Jones, P.W., Rabbani, M., Stoffel, J.C., 2001.
Lossless recovery of an original image containing embedded data.
US Patent 6 278 791 (August).
[11] Howard, P.G., Kossentini, F., Martins, B., Forchhammer, S.,
Rucklidge, W.J., 1998. The emerging JBIG2 standard. IEEE
Transactions on Circuits and Systems for Video Technology 8 (7),
838–848.
[12] Kamstra, L., Heijmans, H.J.A.M., 2005. Reversible data embedding
into images using wavelet techniques and sorting. IEEE Transactions
on Image Processing 14 (12), 2082–2090.
[13] Kim, H.J., Sachnev, V., Shi, Y.Q., Nam, J., Choo, H.G., 2008. A
novel difference expansion transform for reversible data embedding.
IEEE Transaction Information Forensics and Security 3 (3), 456–
465.
[14] Lou, D.C., Hu, M.C., Liu, J.L., 2009. Multiple layer data hiding
scheme for medical images. Computer Standards and Interfaces 31
(2), 329–335.
[15] Macq, B., 2000. Lossless multiresolution transform for image
authenticating watermarking. In: Proceedings of the EUSIPCO,
Tampere, Finland, pp. 533– 536 (September).
[16] Pan, J.S., Sung, M.T., Huang, H.C., Liao, B.Y., 2004. Robust VQ-
based digital watermarking for the memoryless binary symmetric
channel. IEICE Transactions on Fundamentals E-87A (7), 1839–
1841.
[17] Petitcolas, F.A.P., Anderson, R.J., Kuhn, M.G., 1999. Information
hiding-a survey. Proceedings of IEEE 87 (7), 1062–1078.



AUTRHORS PROFILE









Dr. K.L. Shanmuganathan B.E, M.E.,M.S.,Ph.D
works as the Professor & Head of CSE
Department of RMK Engineering College,
Chennai, TamilNadu, India. He has more than 18
years of teaching experience and his areas of
specializations are Artificial Intelligence, Computer
Networks and DBMS.
P. Mohan Kumar B.E.,M.E.,(Ph.D) works as Assistant
Professor in Jeppiaar Engineering College and he has
more than 8 years of teaching experience. His areas of
specializations are Network security, Image processing
and artificial intelligence.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
115 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
MINING THE DATA FROM DISTRIBUTED DATABASE USING AN
IMPROVED MINING ALGORITHM

J. Arokia Renjit
Asst. Professor/ CSE Department, Jeppiaar Engineering College,
Chennai, TamilNadu,India – 600119.

Dr.K.L.Shunmuganathan
Professor & Head, Department of CSE, RMK Engineering College,
TamilNadu , India – 601 206.

Abstract--Association rule mining is an
active data mining research area and
most ARM algorithms cater to a
centralized environment. Centralized
data mining to discover useful patterns in
distributed databases isn't always feasible
because merging data sets from different
sites incurs huge network communication
costs. In this paper, an Improved
algorithm based on good performance
level for data mining is being proposed.
In local sites, it runs the application based
on the improved LMatrix algorithm,
which is used to calculate local support
counts. Local Site also finds a centre site
to manage every message exchanged to
obtain all globally frequent item sets. It
also reduces the time of scan of partition
database by using LMatrix which
increases the performance of the
algorithm. Therefore, the research is to
develop a distributed algorithm for
geographically distributed data sets that
reduces communication costs, superior
running efficiency, and stronger
scalability than direct application of a
sequential algorithm in distributed
databases.

I. INTRODUCTION

Most existing parallel and distributed
ARM algorithms are based on a kernel
that employs the well-known Apriori
algorithm [1]. Directly adapting an
Apriori algorithm will not significantly
improve performance over frequent item
sets generation or overall distributed
ARM performance. In distributed
mining, synchronization is implicit in
message passing, so the goal becomes
communication optimization. Data
decomposition is very important for
distributed memory[2]. Therefore, the
main challenge for obtaining good
performance on distributed mining is to
find a good data decomposition among
the nodes for good load balancing, and
to minimize communication.
Distributed ARM algorithms aim
to generate rules from different data sets
spread over various geographical site
hence, they require external
communications throughout the entire
process [3].. They must reduce
communication costs so that generating
global association rules costs less than
combining the participating sites' data
sets into a centralized site[4]. Mining
association rules is to generate all
association rules that have support and
confidences are larger than the user-
specified minimum support and
minimum confidence respectively [5].
The main challenges include work-load
balancing, synchronization,
communication minimization, finding
good data layout, data decomposition,
and disk I/O minimization, which is
especially important for DARM.



(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
116 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
II. LITERATURE SURVEY

The Count Distribution (CD) Algorithm
CD algorithm uses the sequential
Apriori algorithm in a parallel
environment and assumes datasets are
horizontally partitioned among different
sites[6]. At each iteration, it generates
the candidate sets at every site by
applying the Apriori-gen function on the
set of frequent itemsets found at the
previous iteration. Every site then
computes the local support counts of all
these candidate sets and broadcasts them
to all the other sites. Subsequently, all
the sites can find the globally frequent
itemsets for that iteration, and then
proceed to the next iteration. This
algorithm has a simple communication
scheme for count exchange. However, it
also has the similar problems of higher
number of candidate sets and larger
amount of communication overhead. It
does not use the memory of the system
effectively.

The Fast Distributed Mining Algorithm

FDM generates fewer candidates
than CD, and use effective pruning
techniques to minimize the messages for
the support exchange step. In each site,
FDM finds the local support counts and
prunes all infrequent local support
counts[7]. After completing local
pruning, instead of broadcasting the
local counts of all candidates as in CD,
they send the local counts to polling site.
FDM's main advantage over CD is that it
reduces the communication overhead to
O (|Cp|*n), where |Cp| and n are
potentially frequent candidate item sets
and the number of sites, respectively[8].
When different sites have
nonhomogeneous data sets, the number
of disjoint candidate itemsets among
them is frequent, and FDM generates
fewer candidate itemsets compared to
CD

III. PROPOSED SYSTEM

Mining Association Rules

Efficient algorithms for mining
frequent itemsets are crucial for mining
association rules as well as for many
other data mining tasks. Methods for
mining frequent itemsets have been
implemented using a prefix-tree
structure, known as an FP-tree, for
storing compressed information about
frequent itemsets. Numerous
experimental results have demonstrated
that these algorithms perform extremely
well. In this paper, we present a novel
FP-array technique that greatly reduces
the need to traverse FP-trees, thus
obtaining significantly improved
performance for FP-tree-based
algorithms. Our technique works
especially well for sparse data
sets.Furthermore, we present new
algorithms for mining all, maximal, and
closed frequent itemsets. The results
show that our methods are the fastest for
many cases. Even though the algorithms
consume much memory when the data
sets are sparse, they are still the fastest
ones when the minimum support is low.

The L-Matrix Algorithm

Algorithm L-Matrix minimizes the
communication overhead. Our solution
also reduces the size of average
transactions and datasets that leads to
reduction of scan time. It minimizes the
number of candidate sets and exchange
messages by local and global pruning.
Reduces the time of scan partition
databases to get support counts by using
a compressed matrix-L-Matrix, which is
very effective in increasing the
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
117 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
performance. Finds a centre site to
manage every the message exchanges to
obtain all globally frequent item sets,
only O(n) messages are needed for
support count exchange. It has superior
running efficiency, lower
communication cost and stronger
scalability that direct application of a
sequential algorithm in distributed
databases.
This new algorithm LMatrix is used to
achieve maximum efficiency of
algorithms..The transaction database is
first created to develop the L-Matrix. A
LMatrix is an object-by-variable
compressed structure. Transaction
database is a binary matrix where the
rows represent transactions and columns
represent alarms. The partitioned
databases need to be scanned only once
to convert each of them to the local
LMatrix. The local LMatrix is read to
find support counts instead of scanning
the partition databases time after time,
which will save a lot of memory. The
proposed algorithm can be applied to the
mining of association rules in a large
centralized database by partitioning the
database to the nodes of a distributed
system. This is particularly useful if the
data set is too large for sequential
mining.

LMatrix implementation

The algorithm is implemented with the
help of the following supermarket
example. Let the supermarket
contains five items namely coffee, tea,
milk, bread, butter which are represented
as A,B,C,D and E respectively and
transactions are being done in the
following manner. Let us consider three
transactions. The first transaction
consists of items coffee, tea, and milk.
The second transaction consists of items
coffee, tea, bread, butter. The third
transaction consists of coffee, milk,
butter.The LMatrix and the transaction
table would look like the one given
below.
Then we can obtain the support count of
'A' by accumulating the numbers of '1' in
the first column. Then counting the
numbers of '1' in Metavector A & C we
get the support of AC is 2.



Improved Mining Algorithm

For a site S
i
, if an
itemset X is both locally and globally
frequent at site S
i
, we say that X is heavy
at site S
i
.

A. Algorithm to compute frequent
Itemset in Local Sites.

1. While flag
i
= true, find heavy
itemsets at site s
i .
Then generate the
candidate sets using Apriori
algorithm.
2. For each candidate set at s
i
,prune
away candidate sets whose max
count value is less than s * D, where
s is min support and D is partition
size of the distributed database.
3. Read LMatrix to compute the local
support count of the remaining
candidate set. Locally frequent
candidate set items are put in LL
k

4. Send the candidate sets in LL
k
to
center sites to collect their global
support counts.
5. If s
i
receives a count request of
itemset X from center site, it reads
LMatrix again to obtain support
TRANSACTI
ON ID
ITEM
1 ABC
2 ABDE
3 ACE
1 1 1 0 0
1 1 0 1 1
1 0 1 0 1
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
118 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
counts of X and sents it back to
centre site else it receives globally
frequent itemsets and their support
counts.

B. Algorithm to compute globally
frequent Itemset in Central
Sites.

1. Center site receives all LL
k
sent
to it from the partition sites. When
LL
k
=Ø, set flag = false. For every
candidate set X € LL
k,
it finds the list of
originating sites.
2. If all partition sites are in the list
of X, put X in L
k
.Else calculate
X.MaxCount and prune away those X
whose X.MaxCount < s*D
3. Then broadcast the remaining
candidate sets to the other sites not on
the list to collect the support counts.
4. Center site receives the local
support counts back and adds together
and if X.count >= s*D, put it also in
L
k.

5. Center site then numbers all X €
L
k
from 1 to m. X is frequent only
when its (k-1) subsets are frequent. If
|L
k
| < k+1, set flag = false.
6. Finally when flag = true, it
broadcasts the globally frequent
itemsets, together with their global
support counts to all the sites and find
the heavy itemsets in each site s
i.


IV. EXPERIMENTAL RESULTS

If a item is being selected among
items A,B,C,D,E in that particular
transaction then a count of 1 is
incremented for each item. Then a
combination of items is being chosen
and if it occurs in a particular transaction
then a count of 1 is incrementally added
to this and the item sets which is less
than the minimum support count is
removed from the list. After that a
combination of three item is chosen then
a count of 1 is incremented if it occurs in
a particular transaction and items sets
having maximum support is the result of
the transaction. We get Result== [AC,
AE, CE]. In the above result, it is true
fact that item D is not in the list of
frequent item sets and so it is eliminated
and again the above step continues with
the help of the items in the list. So the
steps above is done locally and now
global pruning is done that takes
frequent item sets from the both nodes
and would result in a final result [A, B,
C, E]. So we get the list of items which
are locally frequent at site s
i
and also
globally frequent as follows.

[Coffee, Tea, Milk, Butter]

A Coffee
B Tea
C Milk
E Butter

The following graphs have been drawn
to see the performance of the algorithm
in terms of execution time with respect
to various minimum supports and
database sizes



Execution time with different
minimum support
0
50
100
150
200
250
300
350
1 2 3 4 5 6 7 8 9
Mimimum Support
Ex
ec
uti
on
Ti
me
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
119 http://sites.google.com/site/ijcsis/
ISSN 1947-5500




The final transaction table which
contains the frequent itemsets alone will
look like this.












V. CONCLUSION

We have developed an efficient
algorithm for mining association rules in
distributed databases which reduces
communication costs and takes away the
overhead of combining the partition
database sites datasets into a centralized
site. It also has the advantage of reduced
size of messages passed through the
network. It also reduces the time of scan
of partition database by using LMatrix
which increases the performance of the
algorithm. Furthermore, Improved
mining algorithm can be applied to the
mining of association rules in a large
centralized database by partitioning the
database to the nodes of a distributed
system. This is particularly useful if the
data set is too large for sequential
mining.

ACKNOWLEDGEMENT

We take immense pleasure in thanking
our Chairman Dr. Jeppiaar M.A, B.L,
Ph.D, the Directors of Jeppiaar
Engineering College Mr. Marie Wilson,
B.Tech, MBA.,(Ph.D) Mrs. Regeena
Wilson, B.Tech, MBA., (Ph.D) and the
Principal Dr. Sushil Lal Das
M.Sc(Engg.), Ph.D for their continual
support and guidance. We would like to
extend our thanks to my guide, our
friends and family members without
whose inspiration and support our efforts
would not have come to true. Above all,
we would like to thank God for making
all our efforts success.

REFERENCES

[1] D.W. Cheung, et al., "A Fast
Distributed Algorithm for Mining
Association Rules," Proc. Parallel and
Distributed Information Systems, IEEE
CS Press, 1996,pp. 31-42;
[2] M.J. Zaki and Y. Pin , "Introduction:
Recent Developments in Parallel and
Distributed Data Mining," J. Distributed
and Parallel Databases , vol. 11, no. 2,
2002,pp. 123-127.
[3] Ma, Y., Liu, B., Wong, C.K.: Web
for Data Mining: Organizing and
Interpreting the Discovered Rules Using
the Web. SIGKDD Explorations, Vol.
2 (1). ACM Press, New York (2000) 16-
23
[4] A. Schuster and R. Wolff ,
"Communication-Efficient Distributed
Mining of Association Rules," Proc.
ACM SIGMOD Int'l Conf. Management
of Data, ACM Press, 2001,pp. 473-484.
TRANS ID ITEM ID
1 A
2 A
3 A
1 B
2 B
1 C
3 C
2 E
3 E
Execution time with different
Database Size
0
10
20
30
40
50
60
1k 2k 4k 8k 10k 12k
Database Size
E
X
E
C
U
T
I
O
N

T
I
m
e
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
120 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
[5] R. Agrawal, T. Imielinski, and A.
Swami, "Mining Association Rules
Between Sets of Items in Large
Databases," Proc. ACMSIGMOD Int'l
Conf. Management of Data, pp. 207-
216, May 1993.
[6] M.Z Ashrafi, Monash University
ODAM: An Optimized Distributed
Association Rule Mining Algorithm,
IEEE DISTRIBUTED SYSTEMS
ONLINE 1541-4922 © 2004 Published
by the IEEE Computer Society Vol. 5,
[7] Kimball, R., Ross, M.: The Data
Warehouse Toolkit, The Complete
Guide to Dimensional Modeling. 2nd
edn. John Wiley & Sons, New York
(2002)
[8] Hand, D., Manilla, H., Smyth,P.:
Principles of Data Mining, MIT
Press,Cambridge-London (2001)









J.ArokiaRenjit B.E.,M.E.,(Ph.D)
works as Assistant Professor in
Jeppiaar Engineering College and
he has more than 8 years of
teaching experience. His areas of
Dr. K.L. Shanmuganathan B.E,
M.E.,M.S.,Ph.D works as the
Professor & Head of CSE
Department of RMK
Engineering College, Chennai,
TamilNadu, India. He has more
specializations are Networks, Artificial
Intelligence, Software Engineering.
than 18 years of teaching experience and his
areas of specializations are Artificial Intelligence,
Networks and DBMS
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
121 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Node Sensing & Dynamic Discovering Routes f or Wireless Sensor
Networks


1
Arabinda Nanda
2
Amiya Kumar Rath
3
Saroj Kumar Rout
Department of CSE Department of CSE & IT Department of CSE
Krupajal Engineering College College of Engineering Krupajal Engineering College
Bhubaneswar, India Bhubaneswar, India Bhubaneswar, India
aru.nanda@rediffmail.com amiyaamiya@rediffmail.com rout-sarojkumar@yahoo.co.in

Abstract-The applications of Wireless Sensor
Networks (WSN) contain a wide variety of
scenarios. In most of them, the network is composed
of a significant number of nodes deployed in an
extensive area in which not all nodes are directly
connected. Then, the data exchange is supported by
multihop communications. Routing protocols are in
charge of discovering and maintaining the routes in
the network. However, the correctness of a
particular routing protocol mainly depends on the
capabilities of the nodes and on the application
requirements. This paper presents a dynamic
discover routing method for communication
between sensor nodes and a base station in WSN.
This method tolerates failures of arbitrary
individual nodes in the network (node failure) or a
small part of the network (area failure). Each
node in the network does only local routing
preservation, needs to record only its neighbor
nodes’ information, and incurs no extra routing
overhead during failure free periods. It dynamically
discovers new routes when an intermediate node or
a small part of the network in the path from a
sensor node to a base station fails. In our planned
method, every node decides its path based only on
local information, such as its parent node and
neighbor nodes’ routing information. So, it is
possible to form a loop in the routing path. We
believe that the loop problem in sensor network
routing is not as serious as that in the Internet
routing or traditional mobile ad-hoc routing. We
are trying to find all possible loops and eliminate
the loops as far as possible in WSN.

Keywords- routing protocol; wireless
sensor network; node failure; area failure

1. INTRODUCTION

A WSN is composed of a large number of tiny
autonomous devices, called sensor nodes. A sensor
node has limited sensing and computational
capabilities and can communicate only in short
distances. Routing protocol is a set of rules defining
the way router machines find the way that packets
containing information have to follow to reach the
anticipated destination.
The concept of WSN is based on a simple equation:
Sensing + CPU + Radio = Thousands of potential
applications
As soon as people understand the capabilities of a
WSN, hundreds of applications come to mind.
Actually combining sensors, radios, and CPU’s into
an effective WSN requires a detailed understanding
of the both capabilities and limitations of each of the
essential hardware components, as well as a detailed
understanding of modern networking technologies
and distributed systems theory’s that combines data
sensing, computing, and communication has been
gaining great popularity in recent years. Several real
world applications have already been designed,
implemented and deployed [1]. WSN consists of a
large number of Sensor Nodes and one or more Base
Stations. A Base Station acts as a gateway to connect
a WSN to the outside world. Individual Sensor
Nodes sense their environment, and transmit the
sensed data to a Base Station through a multi-hop
network consisting of several sensor nodes. The
Base Station in turn transfers the data to the WSN
users. Several routing protocol for WSN has been
proposed [2, 3, 4, 5, 6, 7, 8, 9, 10].
Deng, Han&Mishra had done a lot of work on
routing mechanism for WSN.They had studied on
loops and how to eliminate the loops in WSN.But
here we add loop finding algorithm, to find all
possible loops in WSN. Although each individual
sensor node is highly constrained in its computing
and communication capabilities, a complete WSN is
capable of performing complex tasks.
Common failures in the system includes:
Node Failure, Area Failure and Lost Message. In
order to function properly, the rest of the system
must (1) detect failures; (2) determine the cause,
such as identifying the types of failure and the
failed component; (3) reconfigure the system so
that it can continue to operate; and (4) recover
when the failed component is repaired.
A node engaged in a handshaking protocol of
some kind usually experiences a failure as the lack
of the expected response from its partner within a
prescribed time limit. The use of time-outs is a
common technique for detecting missing response.
However, the choice of a specific time-out value
presents some practical problems. Too long a
time-out result in slow detection of missing
message. On the other hand, too short a time-out
may trigger false alarms by declaring as missing
message that is just delayed. Moreover, short
time-outs require the communication subsystem to
deal with duplicate message sent in response to
hurriedly requested replays.
Every node in a WSN has similar chances to
suffer from an arbitrary Node Failure, which is
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
122 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
generally caused by battery drain or some internal
problem in the node. An Area Failure results in a
failure of all nodes within a certain geographical
area. This is typically caused by outside accidents,
such as a bomb blast, fire, successful denial-of-
service attacks, and so on. Figure 1 illustrates these
two types of failures in a WSN.



Figure 1 Node failure in WSN

Three different methods have been used to
maintain routing paths in the occurrence of node
failures. In the first method, routing paths are
reconstructed from time to time. For example, in a
simple beacon protocol [11], a base station
periodically broadcasts a beacon message. By
receiving a beacon message, a node receives an up-
to-date routing path to the base station.
Reconstruction of routing paths is expensive in this
method and consumes lots of energy. In addition,
since reconstruction is not on demand, a node has to
wait until the beacon to update the routing
information on a node failure.

In the second method, multiple routing paths are
used to transfer data. The idea is that unless every
path from a sensor node to a base station is broken by
a failed node, data can be transmitted to base station.
The multipath version of directed diffusion [12] uses
this strategy. This method can result in increased
energy consumption and packet collisions, because data is
sent along multiple paths, irrespective of whether
there is a node failure or not. Also, this method
cannot guarantee bypassing an area failure.

In the third method a routing path is selected
probabilistically. In this method, a node chooses
another node to forward a packet with certain
probability. Since there is no fixed path to forward
data, a failed node can’t block all packets from a
sensor node to a base station. The ARRIVE routing
protocol [13] uses this strategy to forward multiple
copies of the same data.
Woo, Tong, and cullar [14] investigated the
challenges of multihop routing in wireless sensor
networks and proposed a routing scheme based on
node’s neighborhood link estimates. This protocol is
for a many-to-one, data collection routing
development in WSN. A sensor network can quickly
respond to node failures and data transmission range
changes, and find new routing path for sensor nodes.
To do this, a sensor node needs to periodically
broadcast its routing information, or periodically
search its neighbor nodes’ routing information. In
addition, it needs to maintain a table which contains
its neighbor nodes’ routing information.
In this paper, we propose a dynamic discovering
routing method that can be integrated in any routing
protocol for WSN to make it fault tolerant. It
dynamically repairs a routing path between a sensor
node and a base station. In contrast to [14], a node
stores only its parent node routing information, and
asks for neighbor nodes routing information when
parent node is hard to find. When an original routing
path is broken, a node selects a new path from its
neighbor nodes. This dynamic discovering routing
method tolerates both arbitrary node and area failures.


2. PROTOCOL EXPLANATION

2.1. As s u mp t i o n s

In this paper, we center of attention on how each
sensor node maintains its routing path to base
stations. We assume that the initial routing method
from each sensor node to a base station has already
been set up. This can be done using a number of
protocols that have been proposed in the past, e.g.
the TinyOS beacon protocol discussed below. In
particular, we assume that each node already has a
path to the base station, and knows its parent node,
neighbor nodes and the number of hops it is from the
base station. This information can be initialized by
using the TinyOS beacon protocol for setting up
routing paths. In this protocol, the base station
floods a beacon message in the network. When a
node first knows the beacon message, it records the
sender of that beacon message as its parent node and
forwards the beacon message to all of its neighbor
nodes. When a node needs to send/forward a message
to the base station, it sends the message to its parent
node. The parent node in turn forwards the message to
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
123 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
its parent node, and so on, until the message gets to
base station. A key problem with this protocol is that
it is not error tolerant. If the parent node of a sensor
node fails, the sensor node cannot communicate with
the base station

2.2.Pa t h Repair Algorithm

The basic idea is to repair routing paths in case
of arbitrary node or area failures is quite simple:
every node monitors its parent node. When it finds
that parent node has failed, it asks its neighbor
nodes for their connection information. It then
chooses a new parent node from its neighbor nodes
based on this connection information. As shown in
Figure-1, the method can tolerate node failures and
routes a message circulating the failed nodes.
This mechanism consists of four parts: the
failure detection, failure information propagation,
new parent detection, and new parent selection.
First, a node detects if its parent node is alive and
if the parent node can connect to base station. This
part is called failure detection. If a node s detects
that its parent node works well, it won’t do any
maintenance work. If there are some problems in
parent node, such as node failure or disconnected to
base station (possibly one of parent node’s ancestor
node is failed), node s informs its children nodes
about the failure, which is called failure
information propagation. In addition, s requests the
connection information from its neighbor nodes
since it needs to choose a new parent node from
them. This part is called new parent detection.
After collecting information from its neighbor
nodes, s decides a new parent node based on the
information it collected. This part is called new
parent selection.

We denote a as the node who tries to maintain its
route path. Node p(a) is a’s parent node.

1. Node a sends FORWARD message to its parent
node p(a) , and set a timeout (timeout_ppt) for
BACK message from p(a).

FORWARD: a → p(a) :forward_ppt

2. If p (a) receives the FORWARD mes s a ge, it
will reply a BACK message. The BACK message
contains the information that whether p(a) connects
to base station or not, and if it is connected, the hops
to base station. If p (a) connects to base station, it
sends BACK_Y message back to a.

BACK_ Y: p (a) → a: connect||hops
If p (a) cannot connect to base station, it sends
BACK_N message back to a:

BACK_N: p (a) → a: broken||broken_ hops

If p (a) cannot connect to its parent node p.parent,
the p.broken_hops is set to 1. Otherwise,

P.broken_hops= p.parent.broken_hops + 1

3 (a). If a receives BACK_Y from p(a), a resets its
hops as parent p’s hops plus one:
a
hops
← hops + 1. If a node’s hops beyond a
maximum threshold value, it sets itself unconnected:
a
hops
← ∞.

(b). I f p (a) is dead or its signal is blocked, it
cannot reply BACK message within timeout. If a
cannot receive BACK message from p(a) within the
specified timeout, a knows that it cannot connect to
base station through p(a). Then it broadcasts a
REQUEST message to all of its neighbor nodes to
find a new parent node.

REQUEST: a→NEIGHBOR: request_parent

(c). If a receives BACK_N from p(a) , a knows
that p(a) cannot connect to base station at that
moment. Instead of broadcasting REQUEST
message immediately, a waits a timeout b e f o r e
sending REQUEST. The timeout depends on the
value of broken_hops from BACK_N message.
This strategy gives parent node p some time to find
its new parent node. a will set its broken_hop, and
propagate it when its children nodes send
FORWARD message to a.

4. when one of a’s neighbor node n receives
REQUEST message from a, and if n can connect to
base station, it sends a REPLY message back to a.
REPLY message contains the ID of n’s parent node,
and n’s hops to base station:

REPLY: n → a: connect||n_hops||n.parent

If n can’t connect to base station, it will not send
any message back to a. Instead, it records a as one
of its REQUEST senders. (Here, a’s children nodes
will not sends REPLY message back to a since it is
not necessary.)
I f a has not got any REPLY message from its
neighbor nodes, it will resend REQUEST after a
certain timeout.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
124 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
5. When a receives REPLY messages from its
neighbor nodes, if the REPLY message says that the
sender connects to base station, a records the sender
as a parent candidate. Finally, a selects its new
parent node whose hops to base station is smallest
among all candidates. After it selects parent node, a
sets its hops as its parent node’s hops plus one:

a
hops
←p(a)
hops
+ 1.

If a ever received REQUEST message from its
neighbor nodes, it will send REPLY back to the
REQUEST senders.

R
:
R
Q
S
T
S:PROBE
R:BACK _Y
Probing
Timeout-Prob
R:RPLY;R: BACK _Y
RQSTing
Pending
Connected Disconnected
R
:
B
A
C
K
-
N
T
im
e
o
u
t
-p
p
t
R:RQST S:RQST
R:RQST
R:RQST
Timeout-rqst
R
:B
A
C
K

_
Y


Figure 2 Protocol Finite Automata


(Transition table for FA)


The states of FA:
Q={ Q
0
,Q
1
,Q
2,
Q
3
,Q
4
}
where
Q
0
= Connect, Q
1
=Probing,Q
2
=Disconnected,
Q
3
=Pending,Q
4
=Requesting
The input of FA:
∑={I
0
,I
2
,I
3
,I
4
,I
5
,I
6
,I
7
,I
8
}
where
I
0
= R: Request, I
1
= R: Back_Y,
I
2
= R: Back_N,
I
3
= R: Reply, I
4
= S: Forward, I
5=
S: Request,
I
6
= Timeout-ppt, I
7
= Timeout-Forward,
I
8
= Timeout-Request.
In figure 2, we present a formal description of this
method with a finite Automata (FA). This FA
shows the major state translation except the
processing of REQUEST requests. We use x : y to
describe the state translation condition. x denotes
the action of events denotes the content of message.
R means receives a message, S means sends a
message

3. PROPERTIES

3.1. Ar b i t r a r y node failure and area failure


The proposed method is forceful in finding new
paths under arbitrary node failure and area failure.
Figure 3 demonstrates how a node find alternative
path when its parent node is failed. In figure 3,
p(a) is a failed node, showed as a black node.
When p(a)’s child node a detects that it cannot
connect to p(a) by running step 1, a broadcasts
REQUEST message to its neighbor nodes . If any
of a’s nonchild neighbor nodes can connect their
parent nodes, they will send REPLY message back
to a. This figure demonstrates that a chooses n as
its new parent node from the REPLY messages,
and then a has a new path to base station.





Figure 4 Bypass Area Failures


I0 I1 I2 I3 I4 I5 I6 I7 I8
Q0 Q0 Q1
Q1 Q0 Q3 Q2
Q2 Q2 Q4
Q3 Q3 Q0 Q2
Q4 Q4 Q0 Q0 Q2
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
125 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

Figure 4 demonstrates that the nodes within a
certain area are all failed. This may caused by some
accidents, i.e. fire, a bomb, or a signal blocking
attack. This type of failure is called area failure.
When it happens, the nodes just close to the failure
area will send REQUEST messages to their neighbor
nodes. In the beginning, some nodes choose other
nodes along the failure edge as their parent nodes.
That is because these nodes may detect the failure
area at slight different time. But quickly, the nodes
just behind the failure area will detect that their
neighbor nodes are also disconnected to base station.
We call this area as “block area”. Because of routing
update inconsistency, some nodes may form routing
loop in the “block area”. In the edge of the failure
area, which we call “edge area”, nodes will find the
real path to base station, and the routing information
of these nodes will ultimately affect the nodes in
“block area” and connect them to base station.

3.2. Ro ut i ng Loop

3.2.1. Lo o ps : In our proposed method, every node
decides its path based only on local information,
such as its parent node and neighbor nodes’ routing
information. So, it is possible to form a loop in the
routing path, because the REPLY message contains
the parent’s node of REPLY sender. A node only
finds and eliminates the short loop which is having
only 2 or 3 nodes. The longer loops can’t be
eliminated. An occurrence of a loop is more likely
incase of area failure than arbitrarily node failure.
When an area failure occurs, some nodes detect their
parent failure and send REQUEST messages, and
some nodes that haven’t yet detect failure keep their
old routing information. This information
inconsistency can create loops. The problem caused
by loops is energy consumption and increased packet
delay/loss. Nodes in a loop may waste their power by
continually forwarding packets.

3.2.2 Algorithm for finding all loops in
Sensor Network.

An algorithm for finding the loops in a sensor
network has been presented. The algorithm first
detects a basic loop, copies this as the part of second
loop excluding the last element, and then searches in
forward and backward directions to find other loops.
This process goes on till all the loops are found out.
Loop finding is a typical searching process and
efficient algorithms for searching loop are not
readily available.

Development of Algorithm

Input Data: For loop finding, data to be supplied are
the basic line information’s, that is, the line with its
end nodes. From the raw data, the algorithm will
prepare a line-node-incidence matrix (LNI), which
will contain the lines connected to a particular node.

The searching process for loop finding will be to
start from the source node and go forward till the
source node is reached again. To a programmer,
however, the problem appears to be a little bit
harder because at every step of the searching
process, the searching direction has to be chosen
judiciously with a wrong direction, the program may
enter ending searching process and will never reach
the source node, may not be able to find out all the
loops or may travel along the same loop every time.

The program must therefore remember the part
along which it had already traveled. A line on the
other hand, may participate in several loops. The
program thus has to select the lines through which it
must travel again, though already traveled while
finding out other loops. The problem may become
easier to understand with the help of an example.
The developed algorithm has been tested with fairly
large size sensor networks; the network of fig 5 has
been taken as example for simplicity. The network
of Figure 5 has 5 nodes, eight lines and 10 loops
starting from node 1.




















Figure 5 Example Network



7
1
4 3 5
2
2 4
6 3
1
5
8
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
126 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
A list of the loops is given as below:

1231
123451
12351
12431
124351
12451
124531
13451
132451
1351

Let node 1 is the source node. Starting from node 1,
one may reach node 2 and come back to the source
node along line 2 or 7. There are seven such loops
with a common second node. All such loops with a
common second node will be referred to as a
BLOCK. Once all the loops of the first BLOCK are
found out, the starting line (Line 1, here) must be
omitted because all the possible loops with this line
have been found out. From source node one may
now reach at node 3 and come back to node 1
through line 7. There are three such loops, forming
another BLOCK. Now line 2 will also be omitted
and no other loop is possible with only one line
connected to source node.

For a network having N lines connected to the
source node there will be N – 1 BLOCKS. While the
program is in a particular BLOCK, it must store the
number of lines, along which it had to travel to
complete each loop. All such lines are stored in
LECON matrix. But a line may be the part of many
loops. As line 4 (3 – 2) is appearing in 3 loops, line
7 (5 – 1) is appearing in 4 loops of the first BLOCK.
The program thus defines another matrix LCON,
which initially contains the same content as
LECON, but afterwards, on reaching a particular
node it judiciously select some lines connected to
that node to make free and these lines are eliminated
from LCON of that node.

As one loop is found out, the program copies it in
the next row, excluding the last entry. From the last
entry of the new row, it then searches for any other
path to come back to the source node. If a path is
available, a new loop will be formed and again it
will be copied. If there is no way to proceed further
in the forward direction, the program will move one
step backward and search again. If in the process of
going backward, the program comes to second
column and can’t find any forward path, the end of a
BLOCK is indicated. Line connecting the first and
second column entry of previous BLOCK will never
be considered in the next BLOCK. At the start of a
new BLOCK LECON is to be initialized again.

A counter NBLOCK counts the number of
BLOCKS. When NBLOCK = number of lines
connected to the source node, the end of the search
process with a source node is indicated.

If all the loop of the network is required, consider
next node as the source node and modify LNI matrix
to omit the previous source node from the network.
At least three nodes are required to form one loop.
Thus the loop finding process will be continuing till
the reduced network contains only two nodes.

The complete algorithm is given below:
1. Form LNI from the raw data. Set row
number K
1
=1.
2. Set NBLOCK = 1, initialize the loops, set
column no K
2
=1.
3. Enter source node as the first column entry.
4. From the LNI of the source node take the
first line, find its end node, modify LNI if
both the nodes to omit the first line.
Elements of LNI are to be shifted towards
left by one position. Enter the end node as
an element of the loop.
5. Set LECON = 0 and LCON = 0 for all
nodes.
6. Check serially all the lines connected to the
second node. If all the lines have been
considered go to step 29. If a new line is
found, detect its end node.
7. Detect any line connected to the new node.
If no line exists go to next step. If the end
node of the new line is the start node, end
of a loop is indicated. Go to step 9. If the
end bus is not the start node, check if the
node has already been entered in the loop.
If so, consider the next line, otherwise enter
the bus in the loop and go on checking till
the start node is reached.
8. Go one step backward. Repeat the search
from step 7, if column number = 2 go to
step 6.
9. Enter the last node in the loop. Enter all the
lines in the loop in LECON.
10. Set LEVEL= K
2
– 1.
11. K
1
= K
1
+ 1. Copy the last loop excluding
the last element.
12. Set LCON = LECON, NRESTNODE = last
element of the present row. K
2
= K2 – 1.
13. If number of rows in the present BLOCK is
less than 3, go to step 22, otherwise go to
next step.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
127 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
14. LBS
1
=Loop (K
1-1
, K2), LBS
2
= Loop (K
1-2
,
K
2
). If LBS
1
= LBS
2
go to step 22.
15. Set ITN= 0.
16. If LBS
2
=Loop (K
1-1
, K
2+1
), go to step 19,
otherwise go to next step.
17. If LBS
2
=any element of the present loop go
to step 19, otherwise go to next step.
18. Find the line connecting LBS
1
and LBS
2
if
any, if no line exists go to step 19. If any
line exists make this line free (eliminate
from LCON).
19. If ITN = 1, go to step 22, otherwise set ITN
= 1.
20. Check the next column in the previous row.
If it is the source node go to step 22.
21. Make LBS
2
=Source node. Go to step 18.
22. Click if the present loop up to the present
entry is same as any other previous loop. If
same, go to step 23. Otherwise, make
LCON of present node = 0.
23. Take a line from LNI of NRESTNODE.
Check if it is in LCON. If no line
connected to the node is free go to step 27,
otherwise go to next step.
24. Find the end node, if end node=any node in
the present row or next column in the
previous row except the source node go to
step 23. Otherwise go to next step.
25. Enter the node in the loop and the line
LCON. If the node is not the source node
go to step 26. If it is the source node, store
the line in the loop in LECON and go to
step 11.
26. LEVEL = LEVEL + 1, NRESTNODE =
end node; go to step 22.
27. LEVEL = LEVEL – 1; if LEVEL = 2 go to
step 6. Otherwise go to next step.
28. Decrease the column number and go to step
12.
29. NBLOCK = NBLOCK + 1; if NBLOCK =
number of lines connected to source node –
1, go to next step. Otherwise set K
2
=1 and
go to step 3.
30. Modify LNI to omit the lines connected to
the present source node. Check how many
nodes are converted to source node. If
number of source node = total node – 3, the
procedure ends. Otherwise, source node =
next node, and go to step 2.

3.2.3. Lo o p Elimination: We don’t use
sender ID and originating sequence number to
detect loop since that requires a node s to
memorize lots of history information if there are
lots of nodes sending packets to base station
through s. In stead, we propose the following
mechanism to eliminate loop. Suppose there is a
loop a
1 →
a
2 →
. . . → a
k →
a
1.
This loop exists
because there is a node (a
k)
that finds that its
original path is broken and it can connect to a
1.
Before choosing a
1
as its new parent node, a
k
needs to broadcast REQUEST to its neighbor
nodes, and so a
k−1
will know a
k’ s
path is broken.
If a
k−1
and its downstream nodes continually
inform their downstream nodes the path broken
event, the “path broken” information will quickly
propagate to all downstream nodes. At the same time,
a
k accepts
a
1 as
its new parent node and sends new
hops information to its downstream nodes.
Although the “new hops” information will
eventually propagate to all downstream nodes, its
propagation speed is much slower than “path
broken” event, since child node gets “new hops”
information after it sends FORWARD message
and receives BACK _Y. If there is a loop, from a
1
through
a
k to
a
1,
the “path broken” event will get
to a
1 and
continue to reach a
k,
and eventually it
will catch “new hops” information. At that time,
every node on the loop will get “path broken”
event and the path of the loop will disappear.

One way to implement above strategy is that in
step3c, after receiving BACK_N, node a
immediately sends PENDING message to its
children nodes. The format of this message is:
PENDING: a→CHILD:pending||pending hops
Initially, a s e t pending ho p s a s 1. When a
node receives PENDIN G from its parent node,
it increases pending hops by 1 and forwards this
message to its children nodes immediately. This
way, the “path broken” in- formation will spread to
all downstream nodes very quickly. Although the
PENDING propagation prevents loop, it may also
generate the PENDING message storm to
downstream nodes.












Figure 6 Elimination of loop

a) Back_N and PENDING is
propagated faster than Back_Y





b) PENDING eventually
catches up BACK_Y, and every
node goes to PENDING state

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
128 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
4. VARIATIONS AND EXTENSIONS

To prevent PENDING storm, a node can slow
down PENDING message forwarding. It can wait a
short timeout before forwarding a PENDING
message. In addition to avoiding loop, a
PENDING message can also be used to control
packet sending rate, i.e. downstream nodes will
slow down or stop sending packets after they know
that the path is temporary broken about the failure
information. BACK_N and REQUEST messages
are used for this purpose. In new parent
detection, a node finds out information about new
parent candidates. REQUEST and REPLY
messages are used to find new parent candidates.
Finally, in new parent selection, a node uses
appropriate metrics to choose a new parent node
from candidate nodes. In the basic mechanism, a
node uses number of hops to base station as the
metric.

4.1 Si mp l i f i c a t i o n of Our Method

In section 2, we described a basic dynamic
discovering weight routing algorithm for WSN,
which is composed of four parts: failure detection,
failure information propagation, new parent
detection, and new parent selection. In failure
detection, a node detects if its parent node has
failed. We use FORWARD and BACK messages
to detect failure. In failure information
propagation, a node tells other nodes.


4.2. Us i n g Diverse Metrics

A central part of our method is the metrics
used for new parent node selection. All nodes must
use a common metrics to evaluate their routing cost
to the base station. This metrics must be such that
its value decreases monotonically as you get closer
to the base station. Every node can simply use a
greedy algorithm to select its parent node based on
this metrics value. Number of hops is one type of
metric that satisfies this property. Any other metric
that satisfies this property can also be used.


4.2.1. Me t r i c s Based on Location Information
If a node can get location of its neighbor nodes
(by using GPS, directional antenna or other
techniques), then it can choose a parent node based
on the location of the failed nodes. For example,
when it finds that most of its neighbor nodes in
one direction have failed, it concludes that there is
an area failure in that direction. In that case, it will
choose a new parent node based not only on hops
cost, but also on its location relative to the failed
area.

4.3. Directed Diffusion

Directed Diffusion is an important milestone in the
routing research of sensor networks. The idea aims
at diffusing data through sensor nodes by using a
naming scheme for the data. The main reason
behind using such a scheme is to get rid of
unnecessary operations of network layer routing in
order to save energy. The proposed dynamic
discovering routing mechanism can be used in
directed diffusion based routing algorithms. In
directed diffusion routing algorithm, a destination
node disseminates its interest to the network. When
corresponding source node gets the interest, it
sends events data back to destination along the path
through which interest disseminated. Then the
destination reinforces a path that connects destination
and source nodes. This reinforcement is based on
the cached events propagation information. Every
new node on the path does reinforcement until the
path gets to source node. If a link is broken, a node
can find alternate path by running reinforcement
again. Since the dissemination of interest passed a
large area of nodes between destination and source,
the nodes within the area can get and keep the cost
metrics to destination. When the reinforced path is
broken, other nodes on the path can run this scheme to
find another path towards destination.

4.4. No de connects and Network reform

In this paper, we focus on node failure problem in
WSN. However, we can extend our scheme to deal
with new node connects and recovery of failed node.
When a new node is added in the network, it
broadcasts a message to find its neighbor nodes and
their hops to base station. Then this node can choose
its parent node and connect the network. In addition,
the new node may change other nodes’ paths to the
base station. Some nodes may have shorter path to
the base station through new node. Here, we use
conservative strategy for a node to change its
parent from a longer path to a shorter path because
that is useful to prevent loop, and prevent malicious
node from sending fictitious hops information.
When a node finds that its neighbor nodes has a
shorter hops to base station, it sends two copies of
a message to base station, one through that node
and the other through its current parent node. If it
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
129 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
receives the feedback message from its neighbor
node earlier that from its parent node, then it
consider to change its parent node.
If there are lots of node failure and new node
connect i ng in the network, our scheme can still
build routing paths for alive nodes but the paths may
not be efficient. In this situation, it is better to use
base station to send beacon message to reconstruct
the routing paths in the network.

5. CONCLUSION AND FUTURE WORK

In this paper, we have presented a dynamic
discovering routing method for communication
between sensor nodes and a base station in a WSN.
This method tolerates failure of arbitrary individual
nodes in the network or a small part of the network
by dynamically discovering new routes when nodes
fail. The proposed mechanism is generic in the sense
that it can be integrated in several routing protocols
to make them fault tolerant. In the future, we plan to
experiment with this method, including a simulation
and implementation, to evaluate its performance and
usability in a real sensor network application.
REFERENCES

[1] H. Abrach, S. Bhatti, J. Carlson, H. Dui, J. Rose,
A. Sheth, B. Shucker, J. Deng, and R. Han.
Mantis: System support for multimodal networks
of in-situ sensors. WSNA’03, San Diego, CA,
USA, September 2003.

[2] K. Akkaya, M. Younis: A survey on routing
protocols for wireless sensor networks,
Elsevier, page-325–349, 2005

[3] B. Chen, K. Jamieson, H. Balakrishnan,
Morris Span: An energy efficient coordination
algorithm for topology maintenance in ad hoc
wireless networks. ACM Wireless Networks
Journal, 8(5):481– 494, 2002.

[4] D. E. Culler, J. Hill, P. Buonadonna, R.
Szewczyk, and A. Woo: A network-centric
approach to embedded software for tiny
devices. In 1st international workshop on
embedded software, Tahoe City, California,
USA, October 2001.

[5] J. Deng, R. Han, and S. Mishra: The
performance evaluation of intrusion-tolerant
routing in wireless sensor networks. IPSN’03,
Palo Alto, CA, USA, April 2003.
[6] K. C. Magsino, H. S. Kamath: Simulations of
Routing Protocols of Wireless Sensor
Networks, World Academy of Science,
Engineering and Technology 50 2009

[7] L. J. G. Villalba, A. L. S. Orozco, A. T.
Cabrera and C. J. Barenco Abbas: Routing
Protocols in Wireless Sensor Networks,
Molecular Diversity Preservation
International, Basel, Switzerland 2009

[8] W. R. Heinzelman, A. Chandrakasan, and H.
Balakrishnan. Energy-efficient Communication
protocol for wireless Microsensor networks.
HICSS’00, Maui, Hawaii, USA, January 2000.

[9] C. Intanagonwiwat, R. Govindan, and D.
Estrin. Directed diffusion: A scalable and
robuts communication paradigm for sensor
networks. In the Sixth Annual International
Conference on Mobile Computing and
Networking, Boston, MA, USA, August 2000.

[10] B. Karp and H.T.Kung.Gpsr: Greedy
perimeter stateless routing for wireless
networks. MobiCom’00, pages 243–254,
Boston, MA, USA, August 2000

[11] D. Ganesan, B. Krishnamurthy, A. Woo, D.
Culler, D. Estrin, and S. Wicker. An empirical
study of epidemic algorithms in large scale
multihop wireless networks. Technical Report
IntelIRP-TR-02-003, Intel Research, March
2002.


[12] D. Ganesan, R. Govindan, S. Shenker, and D.
Estrin. Highly resilient, energy efficient
multipath routing in wireless sensor networks.
MC2R, 1(2), 2002.

[13] C. Karlof, Y. Li, and J. Polastre. Arrive:
Algorithm for robust routing in volatile
environments. Technical Report UCBCSD-02-
1233, Computer Science Department, Univer-
sity of California at Berkeley, May 2002

[14] A. Woo, T. Tong, and D. Culler: Taming the
underlying challenges for reliable multihop
routing in sensor networks. SenSys’03, Log
Angeles, CA, USA, November 2003

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
130 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

AUTHORS PROFILE




Prof. Arabinda Nanda: Received M. Tech (CS)
from Utkal University in the year 2007.Currently working
as Assistant Professor in the Department of Computer
Science & Engineering at Krupajal Engineering College,
Bhubaneswar, Orissa, India. Contributed more than 10
research level papers to many National and International
journals and conferences. Having research interests
include Sensor Network, Adhoc Network, Soft
Computing, Artificial Intelligence and Data Mining.




Prof (Dr) Amiya Kumar Rath: Obtained B.E.
degree in Computer Science & Engg. from Marathwada
University, Maharastra in the year 1990, MBA degree in
Systems Management from Shivaji University in the year
1993, M.Tech in Computer Science from Utkal University
in year 2001 and Ph.D in Computer Science in the year
2005 from Utkal University for the work in the field of
Embedded system. Served in various positions in different
premier institutes namely College of Engineering,
Osmanabad, Maharastra, Orissa Engineering College,
Bhubaneswar, Kalinga Institute of Industrial technology
(KIIT), Bhubaneswar, Krupajal Engineering College, and
Bhubaneswar in the Department CS & IT Engg. Presently
working with College of Engineering Bhubaneswar (CEB)
as Professor of Computer Science & Engg. Cum Director
(A&R) and is actively engaged in conducting Academic,
Research and development programs in the field of
Computer Science and IT Engg. Contributed more than 30
research level papers to many national and International
journals. and conferences Besides this, published 4 books
by reputed publishers. Having research interests include
Embedded System, Adhoc Network, Sensor Network,
Power Minimization, Biclustering, Evolutionary
Computation and Data Mining.











Prof. Saroj Kumar Rout: Received M.
Tech (CS) from Utkal University in the year
2007.Currently working as Assistant Professor in the
Department of Computer Science & Engineering at
Krupajal Engineering College, Bhubaneswar, Orissa,
India. Contributed more than 08 research level papers to
many National and International journals and conferences.
Having research interests include Sensor Network, Adhoc
Network, Embedded System, and Network Distributed
System.


(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
131 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
A Robust Fuzzy Clustering Technique with
Spatial Neighborhood Information for Effective
Medical Image Segmentation
S.Zulaikha Beevi
1
, M.Mohammed Sathik
2
, K.Senthamaraikannan
3

1
Assistant Professor, Department of IT, National College of Engineering, Tamilnadu, India.
2
Associate Professor, Department of Computer Science, Sathakathullah Appa College,Tamilndu, India.
3
 Professor & Head, Department of Statistics, Manonmaniam Sundaranar University, Tamilnadu, India.
 
Abstract-Medical image segmentation demands an efficient and
robust segmentation algorithm against noise. The conventional
fuzzy c-means algorithm is an efficient clustering algorithm that
is used in medical image segmentation. But FCM is highly
vulnerable to noise since it uses only intensity values for
clustering the images. This paper aims to develop a novel and
efficient fuzzy spatial c-means clustering algorithm which is
robust to noise. The proposed clustering algorithm uses fuzzy
spatial information to calculate membership value. The input
image is clustered using proposed ISFCM algorithm. A
comparative study has been made between the conventional FCM
and proposed ISFCM. The proposed approach is found to be
outperforming the conventional FCM.

Index Terms - clustering, fuzzy c-means, image segmentation,
membership function.

I.INTRODUCTION

Data clustering is a common technique for statistical data
analysis, which is used in many fields, including machine
learning, data mining, pattern recognition, image analysis and
bioinformatics. Clustering is the classification of similar
objects into different groups, or more precisely, the
partitioning of a data set into subsets (clusters), so that the data
in each subset (ideally) share some common trait - often
proximity according to some defined distance measure.
Medical imaging techniques such as X - ray, computed
tomography (CT), magnetic resonance imaging (MRI),
positron emission tomography (PET), ultrasound (USG), etc.
are indispensable for the precise analysis of various medical
pathologies. Computer power and medical scanner data alone
are not enough. We need the art to extract the necessary
boundaries, surfaces, and segmented volumes these organs in
the spatial and temporal domains. This art of organ extraction
is segmentation. Image segmentation is essentially a process of
pixel classification, wherein the image pixels are segmented
into subsets by assigning the individual pixels to classes. These
segmented organs and their boundaries are very critical in the
quantification process for physicians and medical surgeons, in
any branch of medicine, which deals with imaging [1].
Recently, fuzzy techniques are often applied as complementary
to existing techniques and can contribute to the development
of better and more robust methods, as it has been illustrated in
numerous scientific branches. It seems to be proved that
applications of fuzzy techniques are very successful in the area
of image processing [2]. Moreover, the field of medicine has
become a very attractive domain for the application of fuzzy
set theory. This is due to the large role imprecision and
uncertainty plays in the field [3]. The main objective of
medical image segmentation is to extract and characterize
anatomical structures with respect to some input features or
expert knowledge. Segmentation methods that includes the
classification of tissues in medical imagery can be performed
using a variety of techniques. Many clustering strategies have
been used, such as the crisp clustering scheme and the fuzzy
clustering scheme, each of which has its own special
characteristics [3]. The conventional crisp clustering method
restricts each point of the data set to exclusively just one
cluster. However, in many real situations, for images, issues
such as limited spatial resolution, poor contrast, overlapping
intensities, noise and intensity in homogeneities variation
make this hard (crisp) segmentation a difficult task. The fuzzy
set theory [4], which involves the idea of partial membership
described by a membership function, fuzzy clustering as a soft
segmentation method has been widely studied and successfully
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
132 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
applied to image segmentation [5–11]. Among the fuzzy
clustering methods, fuzzy c-means (FCM) algorithm [1] is the
most popular method used in image segmentation because it
has robust characteristics for ambiguity and can retain much
more information than hard segmentation methods [5,
6].Although the conventional FCM algorithm works well on
most noise-free images, it has a serious limitation: it does not
incorporate any information about spatial context, which cause
it to be sensitive to noise and imaging artifacts. In this paper,
Improved Spatial FCM (ISFCM) clustering algorithm for
image segmentation is proposed. The algorithm is developed
by incorporating the spatial neighborhood information into the
standard FCM clustering algorithm by a priori probability.
The probability is given to indicate the spatial influence of the
neighboring pixels on the centre pixel, which can be
automatically decided in the implementation of the algorithm
by the fuzzy membership. The new fuzzy membership of the
current centre pixel is then recalculated with this probability
obtained from above. The algorithm is initialized by a given
histogram based FCM algorithm, which helps to speed up the
convergence of the algorithm. Experimental results with
medical images that the proposed method can achieve
comparable results to those from many derivatives of FCM
algorithm, that gives the method presented in this paper is
effective.

II. RELATED WORKS 
There are huge amount of works related to enhancing the
conventional FCM and other forms for image segmentation are
found in the literature. Let us review some of them. Smaine
Mazouzi and Mohamed Batouche [13] have presented an
approach for improving range image segmentation, based on
fuzzy regularization of the detected edges. Initially, a degraded
version of the segmentation was produced by a new region
growing- based algorithm. Next, the resulting segmentation
was refined by a robust fuzzy classification of the pixels on the
resulting edges which correspond to border of the extracted
regions. Pixels on the boundary between two adjacent regions
are labeled taking into account the two regions as fuzzy sets in
the fuzzy classification stage, using an improved version of the
Fuzzy C-Mean algorithm. The process was repeated for all
region boundaries in the image. A two-dimensional fuzzy C-
means (2DFCM) algorithm was proposed by Jinhua Yu and
Yuanyuan Wang [14] for the molecular image segmentation.
The 2DFCM algorithm was composed of three stages. The first
stage was the noise suppression by utilizing a method
combining a Gaussian noise filter and anisotropic diffusion
techniques. The second stage was the texture energy
characterization using a Gabor wavelet method. The third
stage was introducing spatial constraints provided by the
denoising data and the textural information into the two-
dimensional fuzzy clustering. The incorporation of intensity
and textural information allows the 2DFCM algorithm to
produce satisfactory segmentation results for images corrupted
by noise (outliers) and intensity variations. Hadi Sadoghi
Yazdi and Jalal A. Nasiri [15] have presented a fuzzy image
segmentation algorithm. In their algorithm, human knowledge
was used in clustering features for fuzzy image segmentation.
In fuzzy clustering, the membership values of extracted
features for each pixel at each cluster change proportional to
zonal mean of membership values and gradient mean of
adjacent pixels. The direction of membership variations are
specified using human interaction. Their segmentation
approach was applied for segmentation of texture and
documentation images and the results have shown that the
human interaction eventuates to clarification of texture and
reduction of noise in segmented images.G.Sudhavani and
Dr.K.Sathyaprasad [16] have described the application of a
modified fuzzy C-means clustering algorithm to the lip
segmentation problem. The modified fuzzy C-means algorithm
was able to take the initial membership function from the
spatially connected neighboring pixels. Successful
segmentation of lip images was possible with their method.
Comparative study of their modified fuzzy C-means was done
with the traditional fuzzy C-means algorithm by using Pratt’s
Figure of Merit. (2009) B.Sowmya and B.Sheelarani [9] have
explained the task of segmenting any given color image using
soft computing techniques. The most basic attribute for
segmentation was image luminance amplitude for a
monochrome image and color components for a color image.
Since there are more than 16 million colors available in any
given image and it was difficult to analyze the image on all of
its colors, the likely colors are grouped together by image
segmentation. For that purpose soft computing techniques have
been used. The soft computing techniques used are Fuzzy C-
Means algorithm (FCM), Possibilistic C - Means algorithm
(PCM) and competitive neural network. A self estimation
algorithm was developed for determining the number of
clusters. Agus Zainal Arifin and Akira Asano [12] have
proposed a method of image thresholding by using cluster
organization from the histogram of an image. A similarity
measure proposed by them was based on inter-class variance
of the clusters to be merged and the intra-class variance of the
new merged cluster. Experiments on practical images have
illustrated the effectiveness of their method. (2006) An high
speed parallel fuzzy C means algorithm for brain tumor image
segmentation is presented by S. Murugavalli and V. Rajamani
[17]. Their algorithm has the advantages of both the sequential
FCM and parallel FCM for the clustering process in the
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
133 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
segmentation techniques and the algorithm was very fast when
the image size was large and also it requires less execution
time. They have also achieved less processing speed and
minimizing the need for accessing secondary storage
compared to the previous results. The reduction in the
computation time was primarily due to the selection of actual
cluster centre and the accessing minimum secondary storage.
(2006) T. Bala Ganesan and R. Sukanesh [18] have deals with
Brain Magnetic Resonance Image Segmentation. Any medical
image of human being consists of distinct regions and these
regions could be represented by wavelet coefficients.
Classification of these features was performed using Fuzzy
Clustering method (FCM Fuzzy C-Means Algorithm). Edge
detection technique was used to detect the edges of the given
images. Silhouette method was used to find the strength of
clusters. Finally, the different regions of the images are
demarcated and color coded. (2008) H. C. Sateesh Kumar et al.
[19] have proposed Automatic Image Segmentation using
Wavelets (AISWT) to make segmentation fast and simpler.
The approximation band of image Discrete Wavelet Transform
was considered for segmentation which contains significant
information of the input image. The Histogram based
algorithm was used to obtain the number of regions and the
initial parameters like mean, variance and mixing factor. The
final parameters are obtained by using the Expectation and
Maximization algorithm. The segmentation of the
approximation coefficients was determined by Maximum
Likelihood function. Histogram specification was proposed by
Gabriel Thomas [20] as a way to improve image segmentation.
Specification of the final histogram was done relatively easy
and all it takes is the definition of a low pass filter and the
amplification and attenuation of the peaks and valleys
respectively or the standard deviation of the assumed Gaussian
modes in the final specification. Examples showing better
segmentation were presented. The attractive side of their
approach was the easy implementation that was needed to
obtain considerable better results during the segmentation
process.
III. PROPOSED IMPROVED SPATIAL FUZZY C-MEANS
CLUSTERING (ISFCM)
A. Conventional FCM
Clustering is the process of finding groups in unlabeled
dataset based on a similarity measure between the data patterns
(elements) [12]. A cluster contains similar patterns placed
together. The fuzzy clustering technique generates fuzzy
partitions of the data instead of hard partitions. Therefore, data
patterns may belong to several clusters, having different
membership values with different clusters. The membership
value of a data pattern to a cluster denotes similarity between
the given data pattern to the cluster. Given a set of n data
patterns, X = x
1,
…,x
k
,…,x
n
, the fuzzy clustering technique
minimizes the objective function, O(U,C ):
( ) ∑
=

=
=
n
k
v
i
ik
u
1 1
)
i
c ,
k
(x
2
d
m
) C (U,
fcm
O
(1)
where x
k
is the k-th D-dimensional data vector, c
i
is the
center of cluster i, u
ik
is the degree of membership of x
k
in the
i-th cluster, m is the weighting exponent, d (x
k
, c
i
) is the
distance between data x
k
and cluster center c
i
, n is the number
of data patterns, v is the number of clusters. The minimization
of objective function J (U, C) can be brought by an iterative
process in which updating of degree of membership u
ik
and the
cluster centers are done for each iteration.

=

=








V
J
m
jk
d
ik
d
ik
u
1
1
1
1
                           (2) 
( )
( ) ∑
=

=
=
n
k
ik
u
n
k
k
x
ik
u
i
c
1
m
1
m
                                (3) 
where i ∀
ik
u satisfies: [ ] 1 , 0 ∈
ik
u , k ∀ ∑
=
=
v
i
ik
u
1
1 and

=
< <
n
k
n
ik
u
1
0  
Thus the conventional clustering technique clusters an
image data only with the intensity values but it does not use
the spatial information of the given image.
B. Initialization
The theory of Markov random field says that pixels in the
image mostly belong to the same cluster as their neighbors.
The incorporation of spatial information in the clustering
process makes the algorithm robust to noise and blurred edges.
But when using spatial information in the clustering
optimization function may converge in local minima, so to
avoid this problem the fuzzy spatial c means algorithm is
initialized with the Histogram based fuzzy c-means algorithm.
The optimization function for histogram based fuzzy
clustering is given in the equation 4.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
134 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
( ) ∑
=

=
=
L
l
v
i
l l
il
u
1 1
)
i
c , (
2
d ) H(
m
) C (U,
hfcm
O           
(4)
where H is the histogram of the image of L-gray levels.
Gray level of all the pixels in the image lies in the new discrete
set G= {0,1,…,L-1}. The computation of membership degrees
of H(l) pixels is reduced to that of only one pixel with l as grey
level value. The member ship function
il
u

and center for
histogram based fuzzy c-means clustering can be calculated as.


=

=








V
J
m
lj
d
li
d
il
u
1
1
1
1
(5)
                      
( ) ( )
( ) ∑
=

=
=
L
l
il
u
L
l
l l H
il
u
i
c
1
m
1

m
                                   (6) 
where
li
d is the distance between the center i and the gray
level
l

C. Proposed ISFCM
The  histogram based FCM algorithm converges quickly since
it clusters the histogram instead of the whole image. The
center and member ship values of all the pixels are given as
input to the fuzzy spatial c-means algorithm. The main goal of
the FSCM is to use the spatial information to decide the class
of a pixel in the image.
The objective function of the proposed ISFCM is given by
( ) ∑
=

=
=
n
k
v
i
s
ik
u
1 1
)
i
c ,
k
(x
2
d
m
) C (U,
fcm
O (7)





















































=

=


=

=
k
N
z
V
J
m
jz
d
iz
d
k
N
V
J
m
jk
d
ik
d
ik
P
s
ik
u
1 1
1
1
1
1
1

(8)

The spatial membership function
s
ik
u of the proposed ISFCM
is calculated using the equation (8).
where
ik
P is the apriori probability that k
th
pixel belongs to i
th

cluster and calculated as

( )
k
N
k
i
NN
ik
P = (9)
where NN
i
(k) is the number of pixels in the neighborhood of
k
th
pixel that belongs to cluster i after defuzzification.
k
N is
the total number of pixels in the neighborhood.
iz
d is the
distance between i
th
cluster and z
th
neighborhood of i
th
Thus the
center
s
i
c of each cluster is calculated as

( )
( ) ∑
=

=
=
n
k
m
s
ik
u
n
k
k
x
m
s
ik
u
s
i
c
1
1
(10)
Two kinds of spatial information are incorporated in the
member ship function of conventional FCM. Apriori
probability and Fuzzy spatial information
Apriori probability: This parameter assigns a noise pixel to
one of the clusters to which its neighborhood pixels belong.
The noise pixel is included in the cluster whose members are
majority in the pixels neighborhood.
Fuzzy spatial information: In the equation (8) the second term
in the denominator is the average of fuzzy membership of the
neighborhood pixel to a cluster. Thus a pixel gets higher
membership value when their neighborhood pixels have high
membership value with the corresponding cluster.
IV. RESULTS AND DISCUSSION
The proposed ISFCM algorithm converges very quickly
because it gets initial parameters form already converged
histogram based FCM. The proposed approach is applied on
three kinds of images real world images, synthetic brain MRI
image, original brain MRI image. In all the images additive
Gaussian white noise is added with noise percentage level 0%,
5%, 10%, and 15% and corresponding results are shown. The
quality of segmentation of the proposed algorithm(IFSCM)
can be calculated by segmentation accuracy A
s
given as.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
135 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
                        100 × =
p
T
c
N
s
A                                (11)                                          

        
Segmentation accuracy vs Noise
level
80
85
90
95
100
5% 10% 15% 20%
Noise level
S
e
g
m
e
n
t
a
t
i
o
n

a
c
c
u
r
a
c
y

(
%
)
FCM Proposed approach
                         
Fig.1. Segmentation accuracy of FCM, proposed approach
without denoising in segmenting synthetic brain MRI
images with different noise level.

N
c
is the number of correctly classified pixels and T
p
is the
total is the total number pixels in the given image.
Segmentation accuracy of FCM, proposed approach without
denoising in segmenting synthetic brain MRI images with
different noise level is shown in figure 1.

                         
                        a b
                          
                         c                                  d 
Fig.2. Segmentation results of 15% noise added synthetic
brain MRI image. (a) 15% noise added synthetic image. (b)
FCM segmentation (c) Proposed approach without denoising
(d) Base true.

 
                                   a b
                       
                                   c
Fig.3. Segmentation results of original brain MRI image. (a)
Original brain MRI image with tumor. (b) FCM segmentation
result (c) Proposed approach without denoising

a b c

d e f
Fig.4. Segmentation results of original brain MRI image. (a)
Original brain MRI image with tumor. (b) FCM segmentation
with 0% noise (c) with 5% noise (d) with 10 % noise (e) with
15 % noise (f) with 20% noise
The segmentation result of original MRI brain image for
proposed algorithm is shown in figure 5.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
136 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

a b c

d e f
Fig.5. Segmentation results of original brain MRI image. (a)
Original brain MRI image with tumor. (b) ISFCM
segmentation with 0% noise (c) with 5% noise (d) with 10 %
noise (e) with 15 % noise (f) with 20% noise
V. CONCLUSION
To overcome the noise sensitiveness of conventional FCM
clustering algorithm, this paper presents an improved spatial
fuzzy c mean clustering algorithm(ISFCM) for image
segmentation. The main fact of this algorithm is to incorporate
the spatial neighborhood information into the standard FCM
algorithm by a priori probability. The probability can be
automatically decided in the algorithm based on the
membership function of the centre pixel and its neighboring
pixels. The major advantage of this algorithm are its
simplicity, which allows it to run on large datasets. As we
employ a fast FCM algorithm to initialize the ISFCM
algorithm, the algorithm converges after several iterations.
Experimental results show that the proposed method is
effective and more robust to noise and other artifacts than the
conventional FCM algorithm in image segmentation.

REFERENCES

[1] J.C.Bezdek , “Pattern Recognition with Fuzzy Objective Function
Algorithms”, Plenum Press, New York 1981.
[2] N.R.Pal and S.K.Pal , “A review on image segmentation technique”,
Pattern Recognition 26(9), 1993, pp. 1277–1294.
[3] Weina Wang, Yunjie Zhang, Yi li, Xiaona Zhang, “The global fuzzy c-
means clustering algorithm”, [In] Proceedings of the World Congress on
Intelligent Control and Automation, Vol. 1, 2006, pp. 3604–3607.
[4] L.A.Zadeh, “Fuzzy sets”, Information and Control, Vol. 8, 1965, pp.
338– 353.
[5] J.C.Bezdek, L.O.Hall,and L.P.Clarke, “Review of MR image
segmentation techniques using pattern recognition”, Medical Physics
20(4), 1993, pp. 1033–1048.
[6] N.Ferahta, A.Moussaoui,K., Benmahammed and V. Chen, “New fuzzy
clustering algorithm appliedto RMN image segmentation”, International
Journal of Soft Computing 1(2), 2006, pp. 137–142.
[7] Y.A.Tolias and S.M.Panas, “On applying spatial constraints in fuzzy
image clustering using a fuzzy rule-based system”, IEEE Signal
Processing Letters 5(10), 1998, pp. 245–247.
[8] Y.A.Tolias and S.M.Panas,”Image segmentation by a fuzzy clustering
algorithm using adaptive spatially constrained membership functions”,
IEEE Transactions on Systems, Man and Cybernetics, Part A 28(3), 1998,
pp. 359–369.
[9] B.Sowmya and B.Sheelarani, "Colour Image Segmentation Using Soft
Computing Techniques", in proc. of Intl. Journal on Soft Computing
Applications, no. 4, pp: 69- 80, 2009.
[10] M.N.Ahmed, S.M.Yamany, N.Mohamed , A.A.Farag and T. Moriarty ,
“A modified fuzzy C-means algorithm for bias field estimation and
segmentation of MRI data”, IEEE Transactions on Medical Imaging
21(3), 2002, pp. 193–199.
[11] D.Q.Zhang , S.C.Chen, Z.S.Pan and K.R. Tan,”Kernel-based fuzzy
clustering incorporating spatial constraints for image segmentation”, In
Proc. of International Conference on Machine Learning and
Cybernetics, Vol. 4, 2003, pp. 2189–2192.
[12] Agus Zainal Arifin and Akira Asano, "Image segmentation by histogram
thresholding using hierarchical cluster analysis", in proc. of Pattern
Recognition Letters, vol. 27, no. 13. Oct. 2006, Doi:
10.1016/j.patrec.2006.02.022.
[13] Smaine Mazouzi and Mohamed Batouche, "Range Image Segmentation
Improvement by Fuzzy Edge Regularization", in proc. of Information
Technology Journal, vol. 7, no. 1, pp: 84- 90, 2008.
[14] Jinhua Yu and Yuanyuan Wang, "Molecular Image Segmentation Based
on Improved Fuzzy Clustering", in proc. of International Journal on
Biomedical Imaging, vol. 2007, no. 1, Jan. 2007.
[15] Hadi Sadoghi Yazdi, A.Jalal and Nasiri, "Fuzzy Image Segmentation
Using Human Interaction", in proc. of Journal on Applied Sciences
Research, vol. 5, no. 7, pp: 722- 728, 2009.
[16] G.Sudhavani and Dr.K.Sathyaprasad, "Segmentation of Lip Images by
Modified Fuzzy C-means Clustering Algorithm", in proc. of IJCSNS
International Journal on Computer Science and Network Security, vol.9,
no.4, April 2009.
[17] S. Murugavalli and V. Rajamani, "A High Speed Parallel Fuzzy C-
Mean Algorithm for Brain Tumor Segmentation", in proc. of BIME
Journal, vol. 6, no. 1, December 2006.
[18] T. Bala ganesan and R. Sukanesh, "Segmentation of Brain MR Images
using Fuzzy Clustering Method with Sillhouette Method", in proc. of
Journal on Engineering and Applied Sciences, vol. 3, no. 10, pp: 792-
795, 2008.
[19] H. C. Sateesh Kumar, K. B. Raja, K.R.Venugopal and L. M. Patnaik,
"Automatic Image Segmentation using Wavelets", in proc. of IJCSNS
International Journal on Computer Science and Network Security, vol.
9, no. 2, Feb. 2009.
[20] Gabriel Thomas, "Image Segmentation using Histogram Specification",
in Proc.of . IEEE Int. Conf.on Image Processing, pp: 589- 592, 12- 15
Oct., San Diego, 2008.



Zulaikha Beevi S. received the B.E.,
degree from the department of Civil and
Transportation Engineering, Institute of
Road and Transport Technology,
TamilNadu, India and M.Tech from the
Department of Computer Science and IT
, Manonmaniam Sundaranar University,
TamilNadu, India in 1992 and 2005,
respectively. She is currently pursuing the
Ph.D. degree, working with
Prof.M.Mohamed Sathik and Prof.K.Senthamarai Kannan. She is
working as Assistant Professor in National College of Engineering ,
Tirunelveli, TamilNadu, India.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
137 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
M.Mohamed Sathik completed
B.Sc.,and M.Sc.,degrees from
Department of Mathematics, M.Phill.,
from Department of Computer Science,
M.Tech from Computer Science and IT
,M.S., from Department of Counseling
and Psycho Therapy, and M.B.A degree
from reputed institutions. He has two
years working experience as a
Coordinator for M.Phill Computer
Science Program, Directorate of Distance
and Continuing Education,
M.S.University. He served as Additional
Coordinator in Indra Gandhi National Open University for four
years. He headed the University Study Center for MCA Week End
Courese, Manonmaniam Sundaranar University for 9 years. He has
been with the department of Computer Science, Sadakathullah Appa
College for 23 years.Now he is working as a Reader for the same
department. He works in the field of Image Processing, specializing
particularly in medical imaging . Dr.Mohamed Sathik M. guided 30
M.Phil Computer Science Scholors and guiding 14 Ph.D Computer
Science Scholor from M.S.University, Tirunelveli, Barathiyar
University, Coimbatore and Periyar Maniammai University,
Tanjavur. He presented 12 papers in international conferences in
image processing and presented 10 papers in national conferences. He
published 3 papers in International Journals and 5 papers in
proceedings with ISBN.

















 

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
138 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
1

Abstract— Steganography techniques are used in Multimedia data
transfer to prevent adversaries from eaves dropping. The medical
profession is also under a strict duty to protect the confidentiality of
patients' medical records as per the HIPAA ACT of 1996. Thus,
protection of medical data/information in telemedicine is of
paramount importance. Most telemedicine systems include some
form of security measures such as the use of passwords. Password
identification determines whether a user is authorized to gain access
to a system. However, passwords are insufficient mechanisms to
maintain patient confidentiality from intruders who gain knowledge
of a user's password to log onto a system. This paper deals with the
design and implementation of multilevel access control in medical
image transmission using symmetric polynomial based audio
steganography. Medical image transmission using audio
steganography deals with covering the medical image on top of an
audio file and subsequently sending it to multiple receivers .Only the
intended recipients know that the Audio files actually contain
medical images and they can use their key to see the images. We have
developed a Multilevel access control model by which medical
images sent to low class users like medical assistants can also be seen
by physicians who are higher in the hierarchy whereas the vice-versa
is not allowed. To provide multilevel access control, symmetric
polynomial based scheme is used. The steganography scheme makes
it possible to hide the medical image in different bit locations of host
media without inviting suspicion. The Secret file is embedded in a
cover media with a key. At the receiving end the key can be derived
by all the classes which are higher in the hierarchy using symmetric
polynomial and the medical image file can be retrieved. The system is
implemented and found to be secure, fast and scalable. Simulation
results show that the system is dynamic in nature and allows any type
of hierarchy. The proposed approach performs better even during
frequent member joins and leaves. The computation cost is reduced
as the same algorithm is used for key computation and descendant
key derivation. Steganographic technique used in this paper does not
use the conventional LSB’s and uses two bit positions and the hidden
data occurs only from a frame which is dictated by the key that is
used. Hence the quality of stego data is improved.

Index Terms- HIPAA, Steganography, Multilevel Access control,
audio file, symmetric polynomial, dynamic, scalable
INTRODUCTION
T
he Health Insurance Portability and Accountability act
(HIPAA) is widely acknowledged as the norm for healthcare
services and Indian companies are well versed with the Act
and other regulatory bodies. HIPAA [25] covers all protected
healthcare information. It does not apply to specific records,
but to information. The information is protected in any form
by HIPAA and it continues to apply whether the content is
being printed, discussed orally, or changes in form. For
organizations that deal with the electronic management of
healthcare information it is vital to protect the electronic
maintenance and transmission of this data. Steganography is
the art and science of writing hidden messages in such a way
that no one, apart from the sender and intended recipient,
suspects the existence of the message, a form of security
through obscurity. The advantage of steganography, over
cryptography alone, is that messages do not attract attention to
themselves. Plainly visible encrypted messages will arouse
suspicion, and may in themselves be incriminating in countries
where encryption is illegal. Therefore, whereas cryptography
protects the contents of a message, steganography can be said
to protect both messages and communicating parties.
Steganography includes the concealment of information within
computer files. In digital steganography, electronic
communications may include steganographic coding inside of
a transport layer, such as a document file, image file, program
or protocol. Media files are ideal for steganographic
transmission because of their large size.
There are many scenarios in which situation arises that only
some users should be able to view the medical image or all
higher level users should also be able to view the image
message that is relayed to the doctors. for example in a
orthopedic hospital all messages sent to surgeons should be
seen by the pathologists, radiologists , anesthologists who are
actually invisible doctors but play an important role in the
operation by guiding the surgeon. There may be many other
images sent to pathologists, radiologists, anesthologists that
Design and Implementation of Multilevel
Access Control in Medical Image
Transmission Using Symmetric Polynomial
Based Audio Steganography
J.Nafeesa Begum
Research Scholar &Sr. Lecturer in
CSE, Government College of Engg,
Bargur- 635104,
Tamil Nadu , India
nafeesa_jeddy@yahoo.com
K. Kumar
Research Scholar &Lecturer in
CSE ,Government College of
Engg, Bargur- 635104,
Tamil Nadu , India
pkk_kumar@yahoo.com
Dr.V. Sumathy
Asst .Professor in ECE ,
Government College of
Technology,Coimbatore ,
Tamil Nadu, India
sumi_gct2001@yahoo.co.in
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
139 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
2
need not be known to the surgeons. Like wise all images sent
to medical students need to be sent to the chief physician.
There should also be a mechanism by which people at the
same level are able to converse among themselves.
To implement such a multilevel access control in
steganography symmetric polynomial approach is used. In
most existing schemes, key derivation is different from key
computation. Key derivation needs iterative computation of
keys for nodes along the path from a node to its descendant,
which is inefficient if the path is long. In this scheme, both
operations are same by substituting (different) parameters in
the same polynomial function assigned to node v. Thus, the
key derivation efficiency can be improved. Our scheme also
supports full dynamics at both node and user levels and
permits any random access hierarchies. More importantly,
removing nodes and/or users is an operation as simple as
adding nodes and/or users in the hierarchy. A trusted Central
Authority (CA) can assign secrets (i.e. polynomials) to
corresponding nodes so that nodes can compute their keys.
Also, nodes can derive their descendant’s keys without
involvement of the CA once polynomial functions were
distributed to them. In addition, the storage requirement and
computation complexity at the CA are almost same as that at
individual nodes, thus, the CA would not be a performance
bottleneck and can deal with dynamic operations efficiently.

The rest of the paper is as follows, Section 2 deals with related
work Section 3 gives all overview of the system Section 4
describes the audio steganographic method for the images
Section 5 deals about the symmetric polynomial approach
Section 6 shows the simulation results and Section 7 gives the
performance analysis and section 8 concludes the paper.

II. RELATED WORK
Information hiding using steganography [9] relates to
protection of text, image, audio and digital content on a cover
medium [1,2,3,5].The cover media in many cases has been an
image [1]. Aoki presented a method in which information that
is useful for widening the base band is hidden into the speech
data [6] .Sub band Phase shifting was also proposed for
acoustic data hiding [3].All these schemes focus on data that is
stored in a hard disk or any other hardware whereas there are
many applications like military warfare where the audio data is
to be given in real time as in live broadcast system.
Techniques for hiding the audio in real time came into
existence [4] and systems for synchronized audio
steganography has been developed and evaluated [7]. In this
scheme secret speech data is recorded and at the same time it
is sent to the receiver and a trusted receiver extracts the speech
from the stego data using the key which is shared between the
server and the receiver. In the proposed scheme multilevel
access control is implemented using symmetric polynomial
approach. The audio is encrypted by a key of lower level user,
and the higher level users are able to derive the key using
symmetric polynomial approach. Forward and Backward
secrecy [8] i.e. whoever is active at that instance only are able
to receive the audio.
The first multi level access solution was proposed by Akl et al.
[11, 12] in 1983 and followed by many others [13, 16, 17, 18,
20, 21, 14, 15, 19, 22, 23]. These schemes basically rely on a
one-way function so that a node v can easily compute v's
descendant’s keys whereas v's key is computationally difficult
to be computed by v's descendant nodes. Moreover, many
existing schemes have some of the following problems: (1)
Some schemes were found with security flaws in due course of
time shortly after they were proposed; (2) Some schemes
cannot support for reconfiguration of a hierarchy; (3) Some
schemes require access hierarchy to be in a certain form so that
it must be a tree or a DAG with only one root; and (4) Member
revocation is one of the most difficult processes in
cryptographic schemes, therefore, it is important to address
this problem so that the revocation process can be dealt with
efficiently. In this paper, we propose a new scheme based on
symmetric polynomials for synchronized audio data. Unlike
many existing schemes based on one-way functions, our
scheme is based on a secret sharing method which makes the
scheme unconditionally secure [21, 24]. Also, this multilevel
access control requires two types of key operations: (1) key
computation: a node v computes its own key, and (2) key
derivation: a node v computes its descendants' keys.
III.SYSTEM OVERVIEW
Multilevel Access Control in medical image transmission is
useful for Hospitals which have a hierarchical structure. For
e.g. In a Orthopedic hospital, many people are involved at
various levels and there is a hierarchy among them as shown
below.

Figure: 1 : A sample hierarchy in a medical organization
Chief Doctor
Pathologist
anestialogist
Radiologist
Surgeons
Medical assistants
Duty Doctor
Trainees
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
140 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
3

In such a type of system, medical images sent to a lower class
should be seen by the active members of lower class and also
by all active members of the higher class. It is not only
essential to maintain the access control but, the data should be
hidden as well. Steganography technique is used to hide the
image into audio file and sent .The sequence of events is as
follows.
At the server:
1. Generate a general polynomial.
2. Give a symmetric polynomial to each of the classes.
3. Select the image to be sent
4. Use Steganographic technique to hide the image into
audio.
5. A text can also be hidden in a audio file.
6. The file is encrypted by the class key for whom the
message is to be relayed.
7. The symmetric polynomial generates a key in this
case.
8. The server takes care of including class dynamics so
the hierarchy can be changed at any time.
9. Users can join or leave a class at all instances. Keys
are recalculated so that Forward and Backward
secrecy are maintained.
10. If the users within the group need to transfer message
among themselves, the private key of the users is
used.

Figure 2: At the Server

At the receiver
1. All the active receivers will receive the audio file.
2. If the recipient belongs to the actual intended class he
can use the polynomial to get the hidden medical
image file instantaneously from the audio file.
3. If the recipient belongs to a class lower than the
actual intended class in the hierarchy, he will not be
able to derive the key .The polynomial derivation
method will give a null value.
4. If the recipient belongs to a higher class he can derive
the key of the lower class and see the image file
which in turn is applicable to text messages as well.
5. The users at the same class can transfer messages
among them.
6. When a user joins or leaves, the new polynomials are
given by the server and the private keys also get
updated according to the new polynomial. Other
classes are not affected by this.
7. Service messages can be sent from higher class users
to lower class users.

Figure 3: At the Receiver
Stego
data
frames
Trusted
receiver
Symmetric
Polynomial Module
Generate Key for
User Class
Operation on key to
find frame no x

Medical Image
Trusted
receiver
belonging to
higher class
Trusted receiver
belonging to
Lower class
Untrusted
receiver
Not allowed to
generate keys
Image not
intelligible
Symmetric
polynomial gives
null value
Derives key of
lower class
stop
Audio data-
cover file
PCM setting
Symmetric Polynomial
Module
Generate Key for User
Class
Operation on key to find
frame no x
Play cover file as it is
upto frame x
The Stego
data
Take 2 bits from secret
data and perform an
operation involving secret
data and key .
Use the key to hide the
secret audio
replace 2 bits in each
channel starting from
frame x+ 1 by the
value
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
141 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
4
C1 C2
C3
C4
C5
C6 C7 C8 C9


3.1. Contribution
Solutions of a synchronized steganography have been given in
past [7]. In this once the stego data reaches the destination the
audio can be listened by the trusted receiver. Our contributions
are
1. The key is used during the embedding process also.
2. The key is not a simple key but it identifies a class of
users.
3. If the key used belongs to a low level group in the
hierarchy, The higher level class of user can derive
the key using the symmetric polynomial approach and
listen to it.
4. There can be normal message transfer among the
group elements and also service messages from
higher classes.
5. Forward and backward secrecy is maintained.
6. It is a dynamic one where new hierarchies can be
introduced, User level and class level dynamics are
taken care.
IV AUDIO STEGANOGRAPHY FOR MEDICAL IMAGES
The input Image to be sent is selected. When the covering
media is being played at the same time the image is can be put
into the audio file simultaneously or the image can as well be
hidden in a already stored file. The stego bit stream is then
transmitted to the receivers. Multilevel Access control using
symmetric polynomial is used at this stage to generate the key
to make secure transmission of the image file. According to the
hierarchy the trusted users are able to retrieve the hidden audio
file.
In this system, cover data is divided into fix-sized frames
according to Pulse Code Modulation setting. To cover low size
and high phonetic quality suitable sampling rate for the cover
media is selected. Three main processes are involved in the
Audio Steganography for Medical Images.
(1). Using data sampling image data’s are embedded into
another audio.
(2). Bit Embedding: The key used helps in hiding the image
file in bit positions and once the bit positions are found data is
hidden after performing an operation on secret data and the
key.
(3). Synchronized Process: Malicious and intentional attacks
can be avoided as the secret data can be put over a real time
audio input also.
4.1 Algorithm
Step1: select the image file. The audio file is divided into fix-
sized frames and set to be specific PCM format. PCM
qualification is decided by sampling rate, sampling size, and
sampling channel. The PCM property of cover audio wav is set
to be 32 kHz-16bit-2ch.
FORMULA USED FOR STEGANOGRAPHY:
Steganographic process:
cover medium + hidden data + stego_key = stego_medium
Part of The Wave File Format opened using Notepad:




The format is being specified by a WAVEFORMATEX
structure

Step2: Use Symmetric Polynomial to calculate key of class
Step3: Perform calculation and decide the frame from which
the data is to be embedded.
Step 4: Decide two bit locations in each frame and clear the bit
in the locations .cmask1 = (2
loc1
−1) xor (Keybit),
cmask2 = (2
loc2
−1) xor (Keybit), cmask = cmask1 ∧ cmask2
hide the secret data bits into these bit locations by again
performing an operation on the secret data along with the key.
The cover media has two channels and so the data is written on
both the channels. Other bits are not changed.
Step5: The next set of data will go to the next frame.
Step6: Do the repetitive process till the entire image is hidden.
Step8: Transmit using sockets
Step9: At the receiving end, Use the key and see the image
Step10: If the receiving user belongs to higher class, he can
derive the key and listen to the audio.

V SYMMETRIC POLYNOMIAL APPROACH PROTOCOL

A polynomial F(x; y; z) is said to be symmetric if F(x; y; z) =
F(x; z; y) = F(y; x; z) = F(y; z; x) = F(z; x; y) = F(z; y; x):A
polynomial in several variables x
1
,…. x
n
is called symmetric
if it does not change when you permute the variables.
5.1 A Symmetric Polynomial Based Multilevel Access Scheme
• A is an set of n classes – { C1,C2,C3,……,Cn}
• B is a set of ancestral classes of set A.
B = {S1,S2,S2,…….,Sn}
• mi is calculated as the number of the ancestral classes
mi = |Si|
• We are choosing a value for m , such that m ≥ max
{m1,m2,m3,…….. mn} + 1
• Here m is the number of parameter in the polynomial
function P, where P is for constructing our multi
level access control scheme
A Numerical Example:












Figure 4: Hierarchical Structure of Multi Level access control
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
142 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
5


• Here we have nine classes
{ C1,C2,C3,C4,C5,C6,C7,C8,C9}
• Ancestral classes sets are
S1 = { φ }
S2 = { φ }
S3 = { C1,C2 }
S4 = { C2 }
S5 = { C2 }
S6 = { C1,C2,C3 }
S7 = { C1,C2,C3,C4 }
S8 = { C2,C3,C5 }
S9 = { C2,C5 }
• From the previous step, we need to choose m such that
m ≥ max { m1,m2,m3,….,m9} + 1
Let us choose m=7, It will allow us to expand the
hierarchy without changing the value of m.
• Symmetric polynomial, we are using here is as follows
t t t
P(x1,x2,….,xm) = ∑ ∑ ∑ a
i1,i2,.im
x
1
i1
x
2
i2
.x
m
im
(mod p)
i1=0 i2=0 im=0
Here t is threshold number.
• We can classify the work into two types.
i) Key Calculation
ii) Key Derivation
Key Calculation
• We can calculate key K
i
of class C
i
as follows
Ki = P(S
i
,S
i1
,S
i2
,…..,S
im
,S’
1
,S’
2
,…..,S’
m-mi-1
) - (1)

Key Derivation
• In key derivation, we are using a term Sj/I which can
be calculated as
S
j/I
= S
j
/(S
i
U {Ci} )
= { C
(j/i)1
, C
(j/i)2
,………., C
(j/i)rj
}
• Consider a class Ci which is ancestor to class Cj and
key Kj can be calculated by Ci as ,
K
j
= g
i
(S
j
, S
(j/i)1
, S
(j/i)2
,………… , S
(j/i)rj
,
S’
1
,S’
2
,…..,S’
m-mi-2-rj
)
= P(S
i
,S
j
,S
i1
,S
i2
,……….,S
imi
, S
(j/i)1
,
S
(j/i)2
,………… , S
(j/i)rj
, S’
1
,S’
2
,…..,S’
m-mi-2-rj
) (2)

Example
Key Derivation
Consider that C3 is an ancestor class to class
C7. Then K7 can be derived by C3 in the following
steps.
S
7/3
= { C4 }
K7 = P (S3,S7,S1,S2,S4,S1’,S2’)


General Concept used in the polynomial:
for(i=0;i<t;i++)
for(j=0;j<t;j++)
for(k=0;k<t;k++)
for(l=0;l<t;l++)
for(m=0;m<t;m++)
for(n=0;n<t;n++)
for(o=0;o<t;o++)
{ a[o] = o
2
+ 10
a[o] = a[o]*a
i
.b
j
.c
k
.d
l
.e
m
.f
n
.g
o

c = (c+a[o]) % s
}
Key Calculation for the Classes using equation (1)
K1 = P(S1,S1’,S2’,S3’,S4’,S5’,S6’)
K2 = P(S2,S1’,S2’,S3’,S4’,S5’,S6’)
K3 = P(S1,S2,S3, S1’,S2’,S3’,S4’)
K4 = P(S4,S1,S2,S1’,S2’,S3’,S4’)
K5 = P(S5,S1,S2,S1’,S2’,S3’,S4’)
K6 = P(S6,S1,S2,S3,r1,r2,r3)
K7 = P(S7,S1,S2,S3,S4,S1’,S2’) -(3)
K8 = P(S8, S1,S2,S3,S4,S5,r1)
K9 = P(S9, S1,S2,S3,S4,S5,r1)
Key Derivation of class 7 by class 3 using
equation(2)
S3 = { C1,C2 }
S7 = { C1,C2,C3,C4 }
S3U{ C3 } = { C1,C2,C3 }
S7/3 = { C4 }
K7 = P( S3,S7,S1,S2,S4,S1’,S2’ ) – (4)
Which is equal to the key calculated by class7
itself.
Key Derivation of class 3 by class 7 using
equation(2)
S3 = { C1,C2 }
S7 = { C1,C2,C3,C4 }
S7U{ C7 } = { C1,C2,C3,C4,C7 }
S7/3 = { φ }
K7 = P( S7,S3,S1,S2,S3,S4,S1’ ) –(5)
It can be seen that when the class derives its own key and
when an ancestor of this class derives the key , equation 2 and
equation 4 have same parameters passed in the polynomial
but the combination differs whereas when a wrong ancestor
derives the key the parameters are not the same.
The default values, we have taken are
1) m=7
2) P=2147483646
3) s1=5, s2=10,s3=13,s4=9,s5=6,s6=22,s7=18,s8=30,
s9=39,
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
143 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
6
r1=11,r2=12,r3=13,r4=14,r5=15,r6=16,r7=17,r8=18,
r9=19 (instead of s’ we have used r )
For a small Hierarchy, with more than two classes, we can
easily illustrate our key calculations ,where each class consists
of several users.



Figure 5:Normal Structure

Key Calculations:
Step-1:
The parameters to be passed for calculating group key class 2
are
P(s2,r1,r2,r3,r4,r5,r6)
Group key class C2
=699615258
1) Private key for user21
=699615258+(699615258/21)
=732930270
2) Private key for user22
=699615258+(699615258/22)
=731415951
3) Private key for user23
=699615258+(699615258/23)
=730033312
4) Private key for user24
=699615258+(699615258/24)
=728765893
Step-2:
The same way group key for class 4 can also calculated by
passing the following parameters to the polynomial
P(s4,s2,r1,r2,r3,r4,r5)
Group key for class 4=1947982264
1)Private key for user41
=1947982264+(1947982264/41)
=1995494026
2) Private key for user42
=1947982264+(1947982264/42)
=1994362794
3) Private key for user43
=1947982264+(194782264/43)
=1993284177
4) Private key for user44
=1947982264+(194782264/44)
=1992254588
Key Derivation:
Deriving the group key of class C4 using its ancestral class C2
S2={}
S4={s2}
Sj|I can be calculated as
S4|2={s2}|(s2U{})
={s2}\{s2} Set Difference
S4|2=O
The parameters to be passed for deriving the key of class C4
using C2
M-mi-2-rj
Key=p(s2,s4,r1,r2,r3,r4,r5)
=p(10,9,11,12,13,14,15)
=1947982264
Private Keys are used for local communication among the
users.
VI.SIMULATION RESUTS
The system is developed using .NET and found to be secure
and fast. The system takes care of User level and Class level
dynamics. The large number of numbers prevents a possible
guessing .for eg. For a eight parameter polynomial, 16! (i.e.
10922789888000) combinations possible. Bursty leave and
join operations also are possible and the system can be used
for any hierarchy.
The additional features that are included are
1.message passing among the same group.
2.service messages from higher users to lower level users.
3.Dynamics at user level and class level and secrecy.















Figure 6: Key calculation
Illustrations shown for the hierarchy below
CLASS 1
USER14
CLASS 3
CLASS 2
CLASS 3 CLASS 4 CLASS 5
USER12
USER13
USER11
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
144 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
7












Figure 7: Hiding the image in Audio










Figure 8: sending the image












Figure 9: Deriving the Key


Figure 10.Extracting the image file

VII PERFORMANCE ANALYSIS:
Performance and security : Each user u
i
will receive the time
complexity for computing the group key is O(w
2n
). An important
performance measure for a secure group communication scheme is
the number of rekeying messages. Suppose that t users will be joining
the group. The TA will send k and g
i
to each of them respectively (2t
messages) and broadcast one message to tell which users are joining.
The total number of rekeying messages is O(2t). Suppose that t users
are leaving the group. The TA only broadcasts one message to tell
which users are leaving, thus the number of rekeying messages is
O(1). Suppose that t users are joining and another v user are leaving
the group, the total number of rekeying messages is still O (2t).
As for the security of the scheme, if w +1 users collude, then they can
figure out the function f entirely. Therefore, the scheme is w-resilient.
Moreover, if less than w + 1 users collude, they cannot get any
information about the key, i.e., any value in the key space looks like a
valid and equiprobable key to these colluding users. It follows that
the scheme is unconditionally secure.
A. Memory: Each user will be able to calculate the key based on the
polynomial and hence very less memory is used. All parameters are
publicly available and using the same method keys of lower hierarchy
can be derived by substituting the corresponding parameters as given
by the derivation module. The steganographic module does not
involve any storage for storing the already recorded data as always
data is recorded and subsequently sent to the receivers. The size of
the cover medium does not increase because only two bits are used in
each channel.
B. Computation cost: When the user joins there is no need for
recalculation because the recorded message has already been played.
When a user leaves a group key is recalculated and given to the class.
Private keys are generated from this. The value of the new key
involves not a change of parameters but a change of mod P value.
Hence each class will be able to get a new polynomial value by
passing the same parameters. Any left user will not be able to get the
key. Only one key is used during creation of stego data. The higher
class users need not remember the keys of all their descendant classes
but rather using a simple scheme derive the exact parameters to
generate the key. Hence the computation cost is reduced.
C. Communication Cost: The p value is changed by the Trusted
Authority and when the users try to calculate the key the new key will
be generated. The computation cost is reduced because, the class
users are not bothered about the key transmission. Once the
polynomial is given the users can calculate their own key.
D. Dynamics: Class joining, Class leaving, Dynamic Hierarchy and
New user joining a class are all done by the trusted authority in a
phased manner thereby allowing the scheme to scale to greater
hierarchy .Additionally local messaging and service messages are
taken care in this system.

VIII.CONCLUSION AND FUTURE WORK
Thus in this paper , Design And Implementation of Multilevel Access
Control in Medical Image Transmission Using Symmetric
Polynomial Based Audio Steganography is done. The
implementation results show that any type of hierarchy can be
introduced and all dynamics can be done. For a 8 parameter
polynomial that can have 8 among the 16 values, there are 16 !
combinations. Also, nodes can derive their descendants' keys without
involvement of the CA once polynomial functions are distributed to
them. In addition, the storage requirement and computation
complexity at the CA are almost same as that at individual nodes,
thus, the CA would not be a performance bottleneck and can deal
with dynamic operations efficiently.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
145 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
8
We believe that this flexible, integrated and easy to use solution is a
robust alternative to more complex architectures for simple image
transmissions or occasional circumstances. In many fields (e.g.,
medicine, manufacturing, veterinary science, scientific research, etc.),
it is often necessary to examine a subject and communicate the results
of the examination to a remote place. Such information exchanges are
especially desirable in the medical arena where it is often useful for
medical practitioners to communicate medical information, such as
patient test results, e.g., radiology studies or cardiac studies, to other
practitioners located in remote places. This type of system provides
secure transmission with multilevel access control.

8.1 Future work
1.The Trusted authority can still make it secure by changing the value
of the parameters .
2. Should be extended for video files.
3. Bit selection for steganography can be made by using some pseudo
random generator.
REFERENCES
[1] Neil F.Johnson, Z.Duric and S.Jajodia. “Information Hiding
Steganography andWatermarking-Attacks and Countermeasures”,
Kluwer Academic Publishers, 2001
[2] F.A.P.Petitcolas, R.J.Anderson, M.G.Kuhn:”Information Hiding-
A Survey”, Process of IEEE, vol.87, no.7, pp.1062-1078, July, 1999.
[3] Matsuoka Hosei. “Acoustic Data Hiding Method using Sub-band
Phase Shifting”,Technical report of IEICE, EA vol.106 pp.7-11,
2006.
[4] Xuping Huang, Ryota Kawashima, Norihisa Segawa, Yoshihiko
Abe. “The Real-Time Steganography Based on Audio-to-Audio Data
Bit Stream”,Technical report of IEICE, ISEC, vol.106 pp.15-22,
September 2006.
[5] MinWu, Bede Liu. “Multimedia Data Hiding”, Springer- Verlag
New York, 2003.
[6] Aoki, Naofumi. ”A Band Widening Technique for VoIP Speech
Using Steganography Technology”, Report of IEICE, SP,106(333),
pp.31-36, 2006.
[7] Xuping Huang, Ryota Kawashima, Norihisa Segawa, Yoshihiko
Abe “Design and implementation of synchronized audio-to-audio
steganography scheme”, pg331-334 , ieee explore 2008
[8] G. Tsudik Y. Kim, A. Perrig, “Simple and fault-tolerant key
agreement for dynamic collaborative groups," in Proceedings of the
7th ACM conference on Computer and communicationssecurity,
November 2000.
[9] W. Stallings, editor. Network and Internetworking Security.
Pearson Education Asia,2001.
[10] Xukai Zou, Li Bai,”A new class of key management scheme for
access control in dynamic hierarchies”, CCR-0311577.2000
[11] S. G. Akl and P. D. Taylor. Cryptographic solution to a problem
of access control in a hierarchy. ACM Transactions on Computer
Systems, 1(3):239{ 247, March 1983.
[12] S. J. MacKinnon, P. D. Taylor, H. Meijer, and S. G. Akl. An
optimal algorithm for assigning cryptographic keys to control access
in a hierarchy. IEEE Transactions on Computers, 34(9):797.802,
Sept. 1985.
[13]S. Chen, Y.-F. Chung, and C.-S. Tian. A novel key management
scheme for dynamic access control in a user hierarchy. In
COMPSAC, pages 396.397, Sept. 2004.
[14] I. Ray, I. Ray, and N. Narasimhamurthi. ,”A cryptographic
solution to implement access control in a hierarchy and more”,
SACMAT ’02: Proceedings of the seventh ACM symposium on
Access control models and technologies, pages 65.73. ACM Press,
2002.

[15] R. S. Sandhu. Cryptographic implementation of a tree hierarchy
for access control. Information Processing, Letter, 27(2):95.98, Feb.
1988.
[16] G. C. Chick and S. E. Tavares. Flexible access control with
master keys. Proceedings on Advances in Cryptology: CRYPTO ’89,
LNCS, 435:316.322, 1989.
[17] M. L. Das, A. Saxena, V. P. Gulati, and D. B. Phatak.
Hierarchical key management scheme using polynomial
interpolation. SIGOPS Operating Systems Review, 39(1):40.47, Jan.
2005.
[18] L. Harn and H. Y. Lin. A cryptographic key generation scheme
for multilevel data security. Computers and Security, 9(6):539.546,
Oct. 1990.
[19] V. R. L. Shen and T.-S. Chen. A novel key management scheme
based on discrete logarithms and polynomial interpolations.
Computers and Security, 21(2):164.171, Mar. 2002.
[20] M.-S. Hwang, C.-H. Liu, and J.-W. Lo. An ef_cient key
assignment for access control in large partially ordered hierarchy.
Journal of Systems and Software, Feb. 2004.
[21] C. H. Lin. Dynamic key management scheme for access control
in a hierarchy. Computer Communications, 20(15):1381.1385, Dec.
1997.
[22] S. Zhong. A practical key management scheme for access
control in a user hierarchy. Computers and Security, 21(8):750.759,
Nov. 2002.
[23] X. Zou, B. Ramamurthy, and S. Magliveras. Chinese remainder
theorem based hierarchical access control for secure group
communications. Lecture Notes in Computer Science (LNCS),
2229:381.385, Nov. 2001.
[24] X. Zou, B. Ramamurthy, and S. S. Magliveras, editors. Secure
Group Communications over Data Networks. Springer, New York,
NY, USA, ISBN: 0-387-22970-1, Oct. 2004.
[25]. www.hipaa.org.



(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
146 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010

Enhanced Authentication and Locality Aided -
Destination Mobility in
Dynamic Routing Potocol for MANET

Sudhakar Sengan
1

Lecturer, Department of CSE,
Nandha College of Technology ,
Erode -TamilNadu – India
sudhasengan@gmail.com
Dr.S.Chenthur Pandian
2

Principal
Selvam College of Technology
Namakkal -TamilNadu – India
chenthur@rediffmail.com


Abstract — Mobile Ad Hoc Network (MANET) is an
emerging area of research in the communication network
world. As the MANET is infrastructure less, it is having
dynamic nature of arbitrary network topology. So, it needs set
of new networking strategies to be implemented in order to
provide efficient end to end communication. Node activities
such as sending or receiving data is highly traceable. Nodes are
vulnerable to attacks and disruptions. To identify such nodes,
a method of direct validation is proposed. Since it is unlikely
for 2 ad hoc nodes to stay at the same position concurrently,
the match between a position and ID is definitely unique.This
information is obtained via global positioning system (GPS)
and location services. In the routing protocol, location
information is distributed between nodes by means of position
beacons. Routing schemes rely on the cooperation and
information exchanged among the nodes. Here in addition to
node ID, extra information such as positions of the nodes is
used for making routing decisions. Its neighbouring nodes
receive the request and content to access the channel for
becoming the next hop using Receiver Contention Channel
Access Mechanism. A receiver that is geographically closer to
the destination is assigned a higher priority and can win the
contention. The destination also finds the corresponding
authentication code according to the position carried in the
rreq and encrypts the code with the secret key of its secret key
pair.The encrypted result is included in the rrep and sent to
the source.The source finds out whether it reaches the right
destination by decrypting the information with the
destination’s key and comparing the authentication code with
the one it obtained through the position request.
To avoid intruder for routing, Packet Dropping,
WatchDog, SYBIL Attacks and PathSelector are used.The
watchdog identifies misbehaving nodes, while the Pathselector
avoids routing packets through these nodes. The watchdog, the
path selector is run by each server. Each Server maintains a
rating for every other node it knows about in the VHR. In our
proposed model, the route selection is a function of following
parameters: hop count, trust level of node and security level of
application. In this paper, to focus on secure neighbor
detection, trust factor evaluation, operational mode, route
discovery and route selection. The paper mainly address the
security of geographic routing.The watchdog identifies
misbehaving nodes, while the Pathselector avoids routing
packets through these nodes. The watchdog, the pathselector is
run by each server. In order to keep the source informed about
the destination’s mobility, the destination keeps sending the
alert message to its previous hop telling that it has changed its
position and any reference to it for data packet forwarding be
informed to the VHR server.

Keywords— Mobile ad hoc networks, routing protocols,
multipath routing, Reliable Routing, Position Based.

I. INTRODUCTION
Wireless networking is an emerging technology
that allows users to access information and services
electronically, regardless of their geographic position.
Wireless networks can be classified in two types:
A. Infrastructure networks:
Infrastructure network consists of a network with
fixed and wired gateways. A mobile host communicates
with a bridge in the network (called base station) within its
communication radius. The mobile unit can move
geographically while it is communicating. When it goes out
of range of one base station, it connects with new base
station and starts communicating through it. This is called
handoff. In this approach the base stations are fixed.
B. Infrastructureless (Ad hoc) networks:
In ad hoc networks all nodes are mobile and can be
connected dynamically in an arbitrary manner. All nodes of
these networks behave as routers and take part in discovery
and maintenance of routes to other nodes in the network. Ad
hoc networks are very useful in emergency search-and-
rescue operations, meetings or conventions in which
persons wish to quickly share information, and data
acquisition operations in inhospitable terrain. These ad-hoc
routing protocols can be divided into two categories:
C. Table-driven routing protocols:
In table driven routing protocols, consistent and up-to-date
routing information to all nodes is maintained at each node.
147 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010

D. On-Demand routing protocols:
In On-Demand routing protocols, the routes are created
as and when required. When a source wants to send to a
destination, it invokes the route discovery mechanisms to
find the path to the destination.

II. ROUTING PROPOSAL
The wireless networks with infrastructure support,
a base station always reaches all mobile nodes, this is not
the case in an ad hoc network. Thus, routing is needed to
find a path between source and destination and to forward
packets appropriately. In Traditional Routing Algorithms
like AODV[1], DSR[2], DSDV[3],a node has to disclose its
ID in the network for building a router.Node activities such
as sending or receiving data is highly traceable. Nodes are
vulnerable to attacks and disruptions. Routing schemes rely
on the cooperation and information exchanged among the
nodes.
These routing algorithms that rely largely or
completely on location information (based on position).
Here in addition to node ID, extra information such as
positions of the nodes is used for making routing decisions.
Since it is unlikely for 2 ad hoc nodes to stay at the same
position concurrently, the match between a position and ID
is definitely unique.Hence, in these algorithms , when
positions are revealed for routing , there is no need of node
IDs. Hence node anonymity can be maintained.However
such algorithms rely on position exchange among the
neighbouring nodes. Such time based position exchange
messages make a node highly traceable. The trajectory of a
node movement can be well known to other nodes even
when its node ID is intentionally hidden. Hence there is lack
of privacy in traditional position based ad hoc routing
algorithms.
The destination’s position alone is revealed for
routing purposes thereby maintaining the privacy of other
nodes IDs. For routing discovery, a node sends out a routing
request. Its neighbouring nodes receive the request and
contend to access the channel [5]. for becoming the next
hop using Receiver Contention Channel Access Mechanism.
A receiver that is geographically closer to the destination is
assigned a higher priority and can win the contention. Once
the route is built, only Pseudo IDs are generated and are
used by the nodes participating in the route. Nodes that get
the access to the channel by winning the contention may
maliciously drop packets. To avoid such nodes from
becoming part of the route, Packet Dropping [6],
WatchDog, SYBIL Attacks and PathSelector are used.
Certain nodes may try to win the contention by reporting
false Pseudo IDs as their own ID. To identify such nodes, a
method of direct validation is proposed.

III. POSITION MANAGEMENT
Virtual Home Region (VHR) based distributed
secure position service system. An Ad Hoc node is assumed
to be able to obtain its own geographic position [7]. It is
assumed that a source is able to get the position of its
destination. Each node has a geographical region around a
fixed center called the Virtual Home Region(VHR).The
relationship between a node ID and the VHR follows a hash
function that is predefined and known to all the nodes who
join the network.
A number of servers which are also ad hoc nodes
are distributed in the network. A node updates its position to
the servers located in its VHR to which other nodes send
position requests acquiring this node’s position. Only a
small number of trusted nodes can act as position servers. A
node updates its position to its VHR when the distance
between its current position and the last reported position
exceed a threshold value. When the source gets the position
of its destination, it also gets the time when the position is
updated and an authentication code. The time is needed for
accuracy and the code can be any random number generated
and sent to the position server by the destination.
A.Position Verification
The location based routing protocol require that a
node be able to identify it’s own position and position of
destination node. This information is obtained via global
positioning system (GPS) [8] and location services. In the
routing protocol, location information is distributed between
nodes by means of position beacons.
All network used in MANETs have a maximum
communication range. Based on this properties, we define
acceptance range threshold ‘T’. Position beacons received
from nodes that are at position larger than ‘T’ away from
current position of receiving nodes can be discarded.
Position can also be verified based on the mobility of the
node. It is assumed that all nodes move at well defined
speed. When receiving a beacon the node records the arrival
time of beacon. On receiving subsequent beacons, the node
checks the average speed of nodes between two position in
two beacons. If the average speed exceeds mobility grade T,
the position beacon is discarded.










Algorithm for position verification based on transmission range.













Algorithm for position verification based on mobility

A receives beacon from B
if distance(A’s position, B’s position) = T
if B is in A’s neighbor table
update the position information of B
else
add B’s ID, position details in A’s table
else
reduce trust value of B drop beacon
A receives beacon from B , t=time of last beacon
from B
if B is not in A’s neighbor table add B’s ID, position
details in A’s table else
old=position of B in A’s table
new=position information in beacon
speed=distance(new,old)/(current time-t)
if speed=Max.speed
update position and time details
else
reduce trust level of B drop beacon
148 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010

IV. ROUTING DISCOVERY
Here, a source discovers its route through the
delivery of a routing request to its destination. To find the
route to its destination, the source first generates a Pseudo
ID for itself through a globally defined Hash Function using
its position and current time as its inputs. This procedure
makes the probability of 2 active nodes having the same
pseudo ID negligible. The source then sends out a Routing
Request(rreq) message that carries Position of the
destination , distance from this source to the destination and
the source Pseudo ID.
The neighbouring nodes around the source called
receivers will receive rreq. A receiver checks to find out
whether it is the intended destination. If not, it uses the hash
function to generate its own Pseudo ID. The receivers then
contend for the wireless channel to send out the hop reply-
hrep message.This contention mechanism called the hrep
Contention Mechanism is discussed very soon. The receiver
who has successfully sent out the hrep will be the next hop.
Its pseudo ID is carried in the hrep. On receiving the hrep,
the source replies with a confirm message(cnfm). Its next
hop replies to this message with an ack. On receiving this
ack, the source saves the pseudo ID in its routing table.
On receiving the cnfm message, the next hop
receiver becomes a sender. The searching for the next hop is
continued until the destination receives the rreq message.
Finally, the destination sends out a Routing reply(rrep)
message through the reverse path to the source. The
destination also finds the corresponding authentication code
according to the position carried in the rreq and encrypts the
code with the secret key of its secret key pair.The encrypted
result is included in the rrep and sent to the source. The
source finds out whether it reaches the right destination by
decrypting the information with the destination’s key and
comparing the authentication code with the one it obtained
through the position request.
Message Flow in routing discovery

V. RECEIVER CLASSIFICATION
A receiver determines its node class by finding
that, if it is the next hop, how much closer ( this geographic
distance is defined as ∆d) it can move a rreq from the
sender toward the destination. ∆d can be calculated because
the distance between the receiver and the destination is
known based on their positions and the distance between the
sender and the destination is carried in the rreq.













In this example, all nodes except the destination
are divided into four node classes. A distance of d is
calculated as d = r/3, where r is the maximum radio
coverage of the ad hoc channel.Nodes with ∆d>2d (e.g.
node A, as if falls in the circle centered at the destination
with a radius of l-2d belong to class 1, which has the highest
priority . Nodes with d ≤∆d<2d(e.g. node B) and nodes with
0≤∆d<d (e.g. nodes C and B) belong to Class 2 and 3 ,
respectively , and have lower priorities. For nodes E,F,and
G, ∆d<0. They belong to class 4 and will lead the rreq away
from the destination. Other nodes, such as H and I, are out
of the sender’s transmission range and cannot receive the
rreq. Note that the destination is a special node. It has the
highest priority to access the channel with a class of 0. In
this paper, we investigated the algorithm in which only
nodes of class 1, 2, and 3 will contend to be legitimate
receivers. A node of class 4 will not attend the contention
because it leads a rreq away from the destination. The node
classification scheme is used only for simplicity of
presentation and will be used in the rest of the paper. In
more complicated schemes, rules for node classification
can be adaptive based on node density. When the density is
high, only the nodes that can greatly reduce the distance
between the rreq and the destination should be assigned to
the class with a high priority. On the other hand, if the
nodes are sparsely distributed, a node which leads the rreq
away from the destination can also be a possible legitimate
receiver. Such a rule adaptation, for example, can be made
by adjusting the value of d. Besides the distance to the
destination, other criteria, such as signal quality, the
remaining power of a node, and node mobility, can also be
considered in node classification.

VI.RECEIVER CONTENTION CHANNEL ACCESS MECHANISM
- (hrep)



The receiver contention mechanism used in hrep
contention phase is EY-NPMA[9] (Elimination Yield Non
149 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010

Preemptive Priority Multiple Access).The receivers are
classified based on how much closer(geographical distance)
they can move the rreq from the sender toward the
destination. Based on this distance, priorities are assigned to
the different nodes.
A.The hrep contention phase is divided into 3 phases:
a.Prioritization Phase :
This phase allows only the receivers with highest
channel access priority among the contending nodes to
participate in the next phase. A number of slots, the same as
the number of different priority classes are available in this
phase. A receiver of priority 3 can send a burst slot 3 only if
no burst is sent in the previous 2 slots. This means it has the
highest priority. It therefore enters the next phase. If a
receiver senses a burst in one of the previous slots, it will
quit from hrep contention, cannot enter the next phase and
therefore drop rreq.
b.Elimination Phase:
This phase starts immediately after the
transmission of the prioritization bursts and consists of a
number of slots.A receiver in this phase will transmit burst
in a randomly selected slot. The receiver transmitting the
longest series of bursts will survive. After the end of burst
transmission, each receiver senses the channel for the
duration of the elimination survival verification slot. If the
channel is sensed to be idle, the receiver is admitted to the
next phase. Otherwise, it drops itself from contention.
c.Yield Phase:
In this phase, a receiver will yield for a number of
slots and listens to the channel and if the channel is sensed
idle, it sends out a hrep. Otherwise, the receiver loses
contention and drops the rreq. When more than one receiver
sends out a hrep at the same time, a hrep collision occurs.
The sender will have to resend the rreq in such cases.
The next hop is determined by node contention
mechanism as illustrated above. A malicious node can
always use this most aggressive contention mechanism to
become the next hop. Once it is included in a route, it can
conduct different attacks such as Packet dropping and false
misbehaviour.
B.Secure Neighbor Detection
A node N broadcasts[10] a hello message M1 with
it’s certificate. The target node receiving the message M1
decrypt N’s certificate to verify and obtain N’s public key.
The target node sent the reply through message M2. After
receiving the response, N stores the nodes public key and
recent location coordinates of the target node in it’s
neighbor table. Node N records the sending time of M 1 at
t0 and receiving time of M2 at t1.
Total delay d = t1 – t0
Distance between the nodes must be less than (d/2)
* c, where c is the speed of light. Thus node N can check
that the other party is within it’s transmission range.

VII.PACKET DROPPING
When nodes act as forwarding nodes, offering
routes to other destinations, it is expected that such nodes
actually forward data packets once the route is setup.
However , malicious nodes deviate from this expected
behaviour and maliciously drop data packets[11] thereby
disrupting transmission. Such Malicious nodes are identified
by installing a watchdog and a PathSelector in the Ad-hoc
network on every server.









VIII.WATCHDOG
The watchdog identifies misbehaving nodes, while
the Pathselector avoids routing packets through these nodes.
When a node forwards a packet, the watchdog verifies that
the node forwards the packet to all its neighbours. If the
node does not forward the packet even to one of its
neighbour,then it is misbehaving. The PathSelector[12] uses
this knowledge of misbehaving nodes to choose the network
path that is most likely to deliver packets.
The watchdog is implemented on every server by
maintaining a buffer of neighbours for each and every node.
When a node transmits packet to its neighbour,the
corresponding entry in the buffer is forgotten by the
watchdog, since it has been forwarded on. If an entry for a
corresponding node’s neighbour has remained in the buffer
for longer than a certain timeout, the watchdog increments a
failure rate for the node and determines that the node is
misbehaving.
IX.PATH SELECTOR
The watchdog, the pathselector is run by each
server. Each Server maintains a rating for every other node
it knows about in the VHR. Path selector works during the
contention scheme. If a node is misbehaving, the watchdog
will identify such a node before route discovery itself and
assigns a failure rate to such a node. The Pathselector then
compares the rating for the nodes that win the contention
scheme with this failure rate to determine whether they are
misbehaving. If so, they are not included in the route at all.
Thus they are avoided from becoming part of the route.
An Example:
Suppose that a network is consisting of the nodes
labeled S(source), D (destination) and from alphabet A to I.
The source wishes to communicate with the destination. At
first, the source select the mode as 1 based on the required
security level of application.










150 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010


Node ID Trusted Node Trusted Route
A 4 Path Selection
E 5 Path Selection

Selection of Source Node& Path Modification

The numbers shown closer to each node indicate
their corresponding trust level. Node S to communicate with
node D broadcasts rreq to it’s neighbors A and E. There are
two possible paths from node S to D: S-A-B-C-D (path1),
S-E-F-G-H-I (path2). Node A tries to authenticate the
source node S. It checks it’s trust table. If S is trusted, A
accepts the rreq message, update the location field and
TUSN in it’s neighbor table and broadcast the rreq to the
next node. If S cannot be trusted, A drops the rreq. If S is
not in A’s table, A send a trust_request to S. If the response
is ‘yes’, A stores the information in it’s trust table and
rebroadcasts the rreq. When the response is not received
within a limited time, node A drops the rreq. As a result
node A forwards to B, B forwards to C and C forwards to
destination D. Similarly in path 2, E forwards to F, F
forwards to G, G forwards to H, H forwards to I and I to
destination D.
The destination D unicasts[13] the rrep to C and I
separately. Node C send the reply to node B. Node B
forward the packet to A. But before sending, each node
attaches the trust level of the node from where it just
received the rrep. Upon receiving the rrep, each node update
the recent destination list. The node attaches the trust level
of C to trust string. So the trust string now contains the
value 5. Node B forwards the rrep to A. Now the value of
trust string is 54. The process continues until it reaches the
source node. So the final value of trust string for the path 1
is 544. Similarly in path 2 node I forwards the rrep to I. The
process will be similar as in path1. The final value of trust
string for the path 2 is 87875.
Now the source waits for a predefined time period
to select the best route. The application requires trusted path
for communication. The average trust weight of path 1 is
4.33 and trust weight of path 2 is 7. Hence path 2 is
selected.
X.SYBIL ATTACKS
The contention scheme proposed in the AO2P
Protocol is vulnerable to malicious nodes that try to become
part of the route by claiming False Identities for themselves.
Their False Identity is such that, that the malicious node
becomes the best choice for data transmission. Such nodes
are called as SYBIL NODES. In order to identify Sybil
nodes the following method is proposed.
When a node sends the hrep packet to the sender, the sender
forwards the packet to the server for validation. The server
then sends a message to the location specified in the Pseudo
ID of the hrep packet forward. If the node responds to it,
then the server knows that the node is legitimate and that its
position is geographically correct. If the node does not
respond to the message, then the server knows that the node
is a Sybil node and that its malicious. Therefore it alerts the
sender. The sender then ignores this hrep packet and
chooses the next best choice.
XI.DESTINATION MOBILITY
Once a route is found between the source and the
destination, the destination responds to the source by
sending the rrep message. There is a possibility that by the
time rrep message reaches the source , the destination might
have moved to the new location. Hence this when unnoticed
can lead to large position errors. In order to keep the source
informed about the destination’s mobility, the destination
keeps sending the alert message to its previous hop telling
that it has changed its position and any reference to it for
data packet forwarding be informed to the VHR server. This
alert message is forwarded in the reverse path until it
reaches the source that initiated the transmission. The VHR
server when intimated will know about the destination’s
new location and hence the data packets can be sent to the
destination properly.
XII.CONCLUSION
The protocol follows different routing mechanism
based on the security level required by application. In mode
1, the packets are routed along the trusted path based on the
trust factor of the nodes. In mode2, the packets are routed
along the shortest path based on hop count. The protocol
uses a mechanism to detect and overcome the effect of
falsified position information in geographic routing
position. The protected position information reduces the
routing overhead and increase the security of routing.
Destination position alone is revealed for routing purposes.
REFERENCES
[1]. C.E. Perkins and E.M Royer, “Ad hoc On Demand Distance Vector
Routing “, Proc. Second IEEE Workshop Mobile Computing Systems and
Application,1999
[2].D Johnson and D.MAltz , “ Dynamic Source Routing in Ad Hoc
wireless Networks “, proc. ACM SIGCOMM- computer comm. Review,
1996
[3]C.E. Perkins and P.Bhagawat , “Highly Dynamic Destination Sequenced
Distance Vector Routing (DSDV) for mobile Computer”, proc. ACM
SIGCOMM ,1994
[4]Sanzgiri, K., Dahill, B., Levine, B. N., Shields, C., and Belding-Royer,
E. M. “A Secure Routing Protocol for Ad Hoc Networks”. In Proceedings
of the 10th IEEE International Conference on Network Protocols
(ICNP'02), 2002.
[5]Li, H. and Singhal, M. “A Secure Routing Protocol for Wireless Ad Hoc
Networks”, In Proceedings of the 39th Hawaii International Conference on
System Sciences, pp. 1-10, 2006.
[6]Yih-chun-hu and Adrian Perrig, Rushing Attacks and Defense in
Wireless Ad hoc network Routing Protocols, ACM Conference on Wireless
Security, September 2003.
[7]Cheng Yong; Huang Chuanhe; Shi Wenming, "Trusted Dynamic Source
Routing Protocol", International Conference on Wireless Communications,
Networking and Mobile Computing, WiCom, Sept. 2007
[8]Xukai Zou, Byrav Ramamurthy and Spyros Magliveras, “Routing
Techniques in Wireless Ad Hoc Networks – Classification and
Comparion”, 20 Dec 2005.
[9]Huaizhi Li and Mukesh Singhla, A secure Routing protocol for Wireless
Ad hoc Networks, Proceedings of the 39th Hawwaii International
Conference on System Science, 2006.
[10]Sunil Kumar Senapati, Pabitra Mohan Khilar, “Securing FSR Against
Data Packet Dropping by Malicious Nodes in MANET”, International
Journal of Computer Applications in Engineering, Technology and
Sciences April, 2009.
[11]A. Khalili, J. Katz, and W.A. Arbaugh, “Toward Secure Key
Distribution in Truly Ad-Hoc Networks,”2003 Symp. Applications and the
Internet Workshops (SAINT 03 Workshops), IEEE CS Press, 2003, pp.
342-346.
151 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010

[12]Hadi Sargolzaey, Ayyoub Akbari Moghanjoughi and Sabira Khatun,
“A Review and Comparison of Reliable Unicast Routing Protocols For
Mobile Ad Hoc Networks”,
[13]Jain2005] N. Jain and D.P. Agrawal, “Current Trends in Wireless
Sensor Network Design,” International Journal of Distributed Sensor
Networks.
Authors
Sudhakar Sengan is a faculty member in Department
of Computer Science and Engineering , Nandha
College of Technology , Erode , TamilNadu, India. He
received his M.E.(CSE) in 2007 from Anna University
, Chennai , TamilNadu, India.And Pursing Ph.D in
Anna University–Coimbatore, Chennai,
TamilNadu,India.His areas of research interests include Mobile Computing
and Network Security. He is Published National Conferences 4 and
International Conferences 2.

DR. S. Chenthur Pandian Ph.D is the Principal in
Selvam College of Technology, Namakkal , Tamil
Nadu, India.He received his B.Sc.(Maths) from
Madurai Kamaraj University, Madurai in 1983 and
AMIE from Institute of Engineers (India), Calcutta
in 1984 and M.E. from Punjab University,
Chandigarh in 1994 and Ph.D. in Fuzzy Application
for Power Systems from Periyar Univeristy, Salem in 2005. He published
National Journals 3 , International Journals 4,Conferences 34.And he
published around 3 books. He is a member of MIEEE(USA), MISTE. His
research interests include Fuzzy Application for Power Systems, Power
Electronics, Neuro-Fuzzy System.











152 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Processor Based Active Queue Management
for providing QoS in Multimedia Application


N. Saravana Selvam. M.E.,
Professor/Department of CSE,
Sree Sowdambika College of Engineering, Aruppukottai,
Tamil Nadu – 626 134, India.
saravanaselvam.kcet@gmail.com,

Abstract—The objective of this paper is to implement the
Active Network based Active Queue Management Technique
for providing Quality of Service (QoS) using Network
Processor(NP) based router to enhance multimedia
applications. The performance is evaluated using Intel
IXP2400 NP Simulator. The results demonstrate that, Active
Network based Active Queue Management has better
performance than RED algorithm in case of congestion and is
well suited to achieve high speed packet classification to
support multimedia applications with minimum delay and
Queue loss. Using simulation, we show that the proposed
system can provide assurance for prioritized flows with
improved network utilization where bandwidth is shared
among the flows according to the levels of priority. We first
analyze the feasibility and optimality of the load distribution
schemes and then present separate solutions for non-delay-
sensitive streams and delay-sensitive streams. Rigorous
simulations and experiments have been carried out to evaluate
the performance.

Key words - Multimedia, QoS, Network Processor, IXP
2400.
1. INTRODUCTION
QoS in the existing and emerging applications in the
Internet has been a big challenge to the Internet Programmer.
Real time applications such as audio/video conversations and
on demand movies are interactive, have delay constraints or
require high throughput. There were many mechanisms
proposed in the past to enable the internet to support
applications with varying service requirements. These include
admission control, queue management algorithms and
scheduling. Admission control is meant to prevent network
overload so as to ensure service for applications already
admitted. It is deployed at the network edges where a new
flow is either admitted, when network resources are available
or rejected otherwise. Active queue management has been
proposed to support end-to-end congestion control in the
Internet. The aim is to anticipate and signal congestion before
it actually occurs.



Dr. S. Radhakrishnan,
Senior Professor & Head/ Department of CSE,
Arulmigu Kalasalingam College of Engineering,
Krishnankoil, Tamil Nadu - 626 190, India.
srk@kalasalingam.ac.in

Scheduling determines the order in which the packets from
different flows are served. The above mechanisms are building
blocks of Quality of Service (QoS) architectures.The end-to-
end congestion control in the Internet requires some form of
feedback information from the congested link to the source of
data traffic, so that they can adjust their rates of sending the
data. Therefore explicit feedback mechanism, such as Active
Queue Management algorithms can be used to control
congestion in the network [1,2].
Multimedia traffic has become high due to the growth of
multimedia applications such as video streaming, video
conferencing, IP telephony and e-learning. These Multimedia
applications require better Quality of service which can be
provided by properly classifying and scheduling the packets,
shaping the Traffic, managing the bandwidth, and reserving
the resources. All these techniques require the fundamental
task Packet classification at the router, to categorize the
packets into flows.
A QoS-enabled network is composed of various functions
for providing different types of service to different packets
such as rate controller, classifier, scheduler, and admission
control. The scheduler function of them determines the order
in which packets are processed at a node and/or transmitted
over a link. The order in which the packets are to be processed
is determined by the congestion avoidance and packet drop
policy (also called Active Queue Management) at the node.
Here Dynamic QoS (DQoS) can be applied regardless of
existing network settings.
2. ACTIVE NETWORKS
In an Active network, the router or switches of the network
perform customized computation on the messages flowing
through them. For example, the user of an active network
could see a “trace” program to each router arranged for the
program to be execute when their packets are processed.
Each Active packet, called Capsule, carries both the
program fragment and data parts. The program part is stored
within packet options that are recognized only on those active
nodes and triggers the interruption to be performed on the
nodes. Normal IP nodes ignore the program part and treat
these capsules as normal IP packets.

153 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
A flow is a sequence of packets and can be uniquely
identified by the information placed in packet headers, which
are source and destination IP addresses, source and destination
port number and protocol. Active packets will not interfere
with routing protocols. Alternative routes are possible as long
as defined in the local forwarding table. Active packets are
used for QoS provisioning in conjunction with and as a
complement to existing frameworks in order to optimize the
usage of existing QoS capabilities.
A. Active Network Approaches
A number of different approaches have been proposed to
implement the active networks architecture.
i. There will be some standard services or modules in the
network node, which will be selected and invoked
through options carried in the user’s packets. The rest of
the user’s packets will be treated as data to be processed
by the invoked routine. The current IP processing
modules can be thought of as an example of such an
approach.
ii. The “programmable switch” model: this approach allows
user code to execute on the network nodes. The code is
downloaded into the nodes out-of-band, and the normal
flow packets are treated as data are input to this node.
Depending upon the node’s security policy, such code
downloads can be restricted only to system
administrators.
iii. The “Capsule” model: Each packet is treated as a full-
fledges program, to be executed at each intermediate
nodes. This is the most general of the three approaches
discussed.
3. ACTIVE QUEUE MANAGEMENT
The implementation of AQM for emergency purposes
seeks to drop the packets of non-emergency traffic as much as
needed to allow as much emergency traffic as possible to
proceed through the router. The goal is to provide lower
packet loss for emergency traffic so that emergency
communications can proceed more dependably. It should be
noted, however, that emergency traffic in general does not
need to have better delay or jitter performance than normal
traffic. Emergency traffic is no different than non-emergency
traffic in that sense. The use of AQM, therefore, is meant to
create lower packet loss for emergency traffic by acting as a
filtering mechanism to perform prioritized packet discarding.
The filtering also seeks, however, to provide the best service
possible to non-emergency traffic by not unnecessarily
favoring emergency traffic.

A. Queue Management
Queues represent locations where packets may be held (or
dropped). Packet scheduling refers to the decision process
used to choose which packets should be serviced or dropped.
Buffer management refers to any particular discipline used to
regulate the occupancy of a particular queue. At present,
support is included for drop-tail (FIFO) queuing, RED buffer
management, CBQ (including a priority and round-robin
scheduler), and variants of Fair Queuing including, Fair
Queuing (FQ), Stochastic Fair Queuing (SFQ), and Deficit
Round-Robin (DRR). In the common case where a delay
element is downstream from a queue, the queue may be
blocked until it is re-enabled by its downstream neighbor. This
is the mechanism by which transmission delay is simulated. In
addition, queues may be forcibly blocked or unblocked at
arbitrary times by their neighbors (which is used to implement
multi-queue aggregate queues with inter-queue flow control).
B. Need for Active Queue Management
The technique for managing router queue lengths is to set
maximum length (n terms of packets) for each queue. It
accepts packet for the queue until the maximum length is
reached, then rejects or drops the incoming packets until the
queue (length) decreases, as a packet from the queue has
been transmitted. This technique is known as drop tail
(FIFO).It has the following drawbacks:
1. Lock-Out :
In some situations tail drop allows a single connection. i.e. it
does not allow any other connections.
2. Full Queue :
Once the queue is full, the packets are dropped. So it is
important to reduce steady state queue size and this is one of
the important goals of queue management.
Active Queue management mechanism can provide
following advantages for responsive flows:
a. Reduce the number of packets dropped in routers in packet
switched networks; the arrival of packets at destination is
bursty in nature. If all the queue space in a router is already
committed to “steady state” traffic, then the router cannot
handle the buffer bursts. Hence Active queue management
maintains small average queue size, which in turn facilitates
minimizing the dropping of packets.
b. Provide low delay interactive service. By specifying small
average queue size, queue management will reduce the
delays seen in the packet flows in a network. This effect can
be observed in interactive applications such as video on
demand [1].
C. Queuing Components for QoS
This section will give an overview over traffic
conditioning components in general. Quality of Service is a
kind of service discrimination. A network component (e.g. a
router) has to handle packets in different manners in order to
achieve a certain Quality of Service for a specific flow or
type of packets. This differentiation between packets may be
done on a per flow basis as in RSVP or for an aggregation of
packets, distinguished by different DSCP (Differentiated
Services Code Point) values as it is done by Differentiated
Services. Within the Internet the processing speed of network
components is assumed high compared to the bandwidth of
the links between them. Congestion occurs when a router has
to transmit more packets over a link than the link’s capacity
allows. The router has to discard packets. All approaches to
154 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
realize QoS are based on dropping the”right” packets. To
handle packets differently, an Internet router usually has a
queuing system attached to his outgoing interfaces. Simple
queuing systems like FIFO (first in first out) queues are
capable to intercept short bursts of packets exceeding the
output bandwidth. More complicated queuing systems allow
handling packets differently, putting them to different kind of
queues and processing these queues with different priority.
Several mechanisms were developed for various purposes.
4. INTEL IXP2400 NETWORK PROCESSOR
The advent of network processors was driven by an
increasing demand for high throughput and flexibility in
packet routers. As a first step in the evolution from software-
based routers to network processors, the bus connecting
network interface cards with the central control processor
(Control Plane, CP) was replaced by a switch fabric. As
demand grew for even greater bandwidth, network interface
cards were replaced by Application-Specific Integrated
Circuits (ASICs), meaning that packets no longer had to be
sent to the CP for forwarding.
a. Background
The Intel® IXP2400 is designed to perform a wide range
of functionalities such as multi-service switches, routers,
broadband access devices and wireless infrastructure systems.
It implements a high-performance parallel processing
architecture on a single chip that is suitable for processing
complex algorithms, detailed packet inspection, traffic
management and forwarding at the wire speed. The
architecture of an integrated network processor IXP 2400 NP
shown in Figure 1.








Figure: 1 The Block Diagram of an IXP 2400
It has a single 32-bit XScale core processor, eight 32-bit
MicroEngines (MEs) organized as two clusters, standard
memory interfaces and high speed bus interfaces. Each
microengine has 256 general purpose registers that are equally
shared between eight threads. Microengines exchange
information through an on-chip scratchpad memory or via 128
special purpose next neighbor registers. Data transferring
across the MEs and locations external to the ME, (for eg
DRAMs, SRAMs etc.) are done by the available 512 Transfer
Registers.
The Xscale core is responsible for initializing and
managing the chip, handling control and management
functions and loading the ME instructions. Each ME has eight
hardware-assisted threads of execution with no context switch
overhead. All threads in a particular ME execute code from
the instruction stored on that ME, whose size is 4K. The
SRAMs and DRAM are off chips that are shared by all
processors. In general, SRAM is used for storing the table
information such as routing table and DRAM is used for
packet buffering. Also the IXP2400 chip has a pair of buffers
(BUF), Receive BUF (RBUF) and Transmit BUF (TBUF) that
are used to send / receive packets to / from the network ports
with each of size 8 Kbytes. The data in RBUF and TBUF is
divided into sub blocks referred to as elements.
5. IMPLEMENTATION
Packets of non-real time application like the packets for e-
mail, file transfer, etc cannot tolerate loss but can afford delay
By keeping all these issues in mind priority and scheduling is
maintained by programming a IXP2400, to work with
buffering, located in the physical memory or DDR-RAM of
Intel Network Processor .

The Workbench provides packet simulation of media bus
devices as well as simulation of network traffic. There is a
feature under the Packet Simulation called Packet Simulation
Status that enables the observation of the number of packets
being received into the media interface and number of packets
being transmitted from the fabric switch interface. To make
sure that flows are not synchronized, each flow begins its
transmission at a random time within the first 40 msec. The
QoS setting in D-QoS is automatically adjusted to offer the
interruption according to the buffer capacity of the flows.

Media streaming for real-time playback is highly delay-
sensitive, and the playback quality is the most important
concern to the clients. Too much jitter may greatly deteriorate
the playback quality. To reduce the jitter, media units of each
stream must be processed timely and orderly in the NPs.

When voice and video packets need to pass through router
(IXP 2400) will be treated and processed at the highest priority
as it is real time traffic. The first priority will be for the
expedited forwarding which handles real time application
packets. This minimize the packet delay for the real-time data
packets in IPv6 DiffServ Network to maximize the throughput
of the data like voice, video etc in which delay is not tolerable.
When EF traffic got some break then second priority for
assured forwarding traffic will be forwarded.
155 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
In this process both incoming traffic and stored packets in
the memory will be moved if there is any. The third priority
packets are buffered accordingly, when there are no packets or
traffic for EF or AF then the packets for third priority means
best effort will be forwarded. The framework for the
implementation shown in the Figure 2.







Figure 2: Framework for the implementation
The simulator is configured to generate and inject packet
streams to ports 0 & 1 of the device.(Figure 3) Packet Receive
Microengine has been interfaced with the Media Switch Fabric
Interface (MSF). The packets are injected through Media
switch Fabric Interface and Receive Buffer (RBUF)
reassembles incoming mpackets (packets with length 64
bytes). For each packet, the packet data is written to DRAM,
the packet meta-data (offset, size) is written to SRAM. The
Receive Process is executed by microengine (ME0) using all
the eight threads available in that microengine (ME0). The
packet sequencing is maintained by executing the threads in
strict order (Figure 4). The packet buffer information is written
to a scratch ring for use by the packet processing stage
Communication between pipeline stages is implemented
through controlled access to shared ring buffers. (Figure 5)






Figure: 3 Packet Simulation statuses

The forwarding functionality can be implemented in two
ways, through fast path and through slow path. In fast path, a
hashing table is maintained for known data streams to enable
fast packet processing. The hashing table is updated at fixed
interval of 50ms so that the dynamic performance of the
algorithm is maintained. While in slow path, calculations are
performed for per-packet basis to find the best possible next-
hop at that instant.


Figure: 4 Execution of Thread in the Microengine


Figure: 5 Data stored in shared ring buffers

Classifier microblock is executed by microengine (ME1)
that removes the layer-3 header from the packet by updating
the offset and size fields in the packet Meta descriptor. The
packets are classified into different traffic flows based on the
IP header and are enqueued in the respective queue. Then the
Packet Transmit microblock segments a packet into m-packets
and moves them into TBUFs for transmitting the packets over
the media interface through different ports. The egress packet
streams are forwarded to the output ports 0-4 of the device.
Multimedia stream is artificially simulated with UDP
flows since voice and video applications use UDP rather than
TCP. Traffic generated in this paper/work consists of
RTP/UDP packets, UDP packets (with large TTL and with
less TTL) and TCP packets. All these packets are uniformly
156 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Q
u
e
u
e
 
L
o
s
s
 
r
a
t
e
 
(
%
)
Time (sec)
0
5
10
15
20
25
30
35
40
45
0 10 20 30 40 50 60 70 80
AQM with AN
Without AQM
D
e
l
a
y
 
(
m
s
)
Time (sec.)
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0 10 20 30 40 50 60 70 80
AQMwith AN
Without AQM
distributed in the traffic. Traffic is generated with a constant
rate of 1000Mb/s and inter-packet gap is set to 96 ns.
In such an NE, upon receipt of a PDU, the following
actions occur. The header of the PDU is parsed (HdrP) and the
type of the PDU is identified (PktID) to decide which
forwarding table to search (e.g., virtual local area network
(VLAN), multiprotocol label switching (MPLS), L2/L3). The
PDU is classified (CL) to establish the flow and class of the
PDU and possibly its priority. The packet Transmitter micro
block monitors the MSF to see if the TBUF threshold for
specific ports has been exceeded. If the TBUF value for the
output port 0 (VoIP pkts) exceeds, here we are allowing the
packets to transmit until it reaches the MAX TBUF value
instead of dropping the packets at the tail end. if it still reaches
the max threshold (85% of the o/p buffer) starts forwarding it
to the other ports which are dedicated to low priority flows.

Figure: 6. AQM before Ordered thread execution
If it happens for other non priority flows it stops
transmitting on that port and any requests to transmit packets
on that port are queued up in local memory and if the data rate
increases further the packets are dropped at the end. (Figure 6)
The Packet Transmitter micro block periodically updates the
classifier with information about how many packets have been
transmitted.
If no further treatment is required then the AQM function
decides whether to forward or discard the PDU(Protocol Data
Unit) according to the output queues_ fill levels and the
PDU’s class and/or priority and possibly its color. The
scheduler (SCH) ensures that the PDU’s transmission is
prioritized according to its relative class/priority. The traffic
shaper (TS) ensures that the PDU is transmitted according to
its QoS profile and/or agreements.
The queuing mechanism used within this interruption
mode aims to give higher priority to the privileged flow. Other
flows previously classified into DiffServ’s EF (time-sensitive)
and AF(non-time-sensitive) classes are transmitted with the
lowest priority. To provide different services for time-sensitive
(EF) flows and non-time sensitive (AF) flows, the two lowest
priority levels are reserved for each one of these two flow
types. The time-sensitive flows previously classified into
DiffServ’s EF class are placed in the second lowest priority
level, while other flows previously belonging to DiffServ’s AF
classes are given the lowest priority level. Thus, EF traffic
receives lower-loss, lower-delay and lower-jitter comparing to
AF traffic.





Figure: 7 Packet Loss rate in Queue
Here (Figure 7) the loss rate in the queue decreases
drastically when we are applying the proposed queue
management technique over the queues present in the egress
edge. At the same time packet delay (Figure 8) is also reduces
due to the execution of threads in strict order.






Figure: 8 Packet Queuing Delay
157 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
6. CONCLUSION
In this paper, we investigated the problem of AQM in
multimedia streams on a NP-based active router. Some of the
open issues in the NP space include software durability, which
they share with many other specialized, embedded systems.
Therefore, it is currently nearly impossible to write code that
would easily port to a different family. For code running in the
data plane, use of a smart optimizing compiler permits to write
relatively architecture-independent code.

With appropriate, evolving libraries, key sub functions can
be transferred progressively and seamlessly from software
implementation to hardware, maintaining backwards
compatibility. In the control plane, standard interfaces are
being developed and joined with capabilities for dynamic NP
feature discovery to allow NP-independent code.

Stepping back to see the big picture, we can conclude that
versatility is one of NPs strongest features. With comparably
little effort, it is possible to implement new features to
dramatically increase the value offered by a network device,
and to offer new and powerful functions, often combined from
amongst a wide variety of existing building blocks. We
believe that in the networking world, this makes NPs a strong
competitor to ASICs for all but the highest-performance net-
work devices and thus expect their use to grow dramatically in
the near future. The simulation results shows that the Active
Network technique indeed improves the overall utilization of
network resources, and decreases the packet loss rate and
queuing delay. Additionally, evaluation results demonstrate
that Active Network mechanism is most effective when the
high-priority queues suffer serious congestion while resources
are still available in low-priority queues.

REFERENCES

[1] Idris Rai, Ernst W Biersack, “Size Based Scheduling to
improve the performance of short TCP Flows”, IEEE Network
January 2005.
[2] Arnaud Legout and Earnst W, “Revisiting the Fair
Queuing Pagadigm for End-to-End Congestion Control”,
IEEE Network, September 2002.
[3] Andreas Kind, The Role of Network Processors in Active
Networks, IBM Zurich Research Lab, 2003.
[4] Harish. H. Kenchannavar, U.P. Kulkarni and A.R. Yardi, “
A Comparison Study of End-to-End Delay Using Different
Active Queue Management Algorithms:, CIMCA 2008.
[5] Jaesung Hong, Changhee Joo and Saewoong Bahk, “
Active Queue management algorithm considering queue and
load states”, Elsevier Computer Network, November 2006.
[6] Enqing Dong and Xiaoqian Ji, “ A New Active Queue
Management Scheme based on Packet loss Ratio”, ICSP 2006.
[7] Bhaskar Reddy. T and Ali Ahammed, “ Performance
Comparison of Active Queue Management Techniques”
Journal of Computer Science, 4(12), 2008.


AUTHORS PROFILE

N. Saravanaselvam is working as a
Professor in Department of Computer
Science and Engineering at Sree
Sowdambika College of Engineering,
Aruppukottai, Tamilnadu, India. He has
completed his B.E. Electronics and
Communication Engineering and M.E.
Computer Science and Engineering in
Arulmigu Kalasalingam College of Engineering,
Krishnankoil under Madurai Kamaraj University, Madurai.
Now he is a research scholar of Anna University, Chennai.
He has guided more than 25 B.E. /M.E. Projects. His field of
interest is Network Engineering.
Dr.S.Radhakrishnan is presently
working as Senior Professor and Head,
Department of Computer Science and
Engineering at Arulmigu
Kalasalingam College of Engineering,
Krishnankoil, TamilNadu, India. He
has completed his M.Tech. and Ph.D.,
in Biomedical Engineering from
Institute of Technology, Banaras Hindu University. He has
guided more than 50 M.E./M.Tech. Projects and 10 M.Phil.
Thesis. Currently ten candidates are working for Ph.D. under
his guidance. His fields of interests are Network Engineering,
Computer Applications in medicine and Evolutionary
computing. He is also serving as Project Director (Network
technologies) in TIFAC CORE in Network Engineering at
Arulmigu Kalasalingam College of Engineering. He has
more than 10 publications to his credit.

158 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
New Clustering Algorithm for Vector Quantization
using Rotation of Error Vector
Dr. H. B. Kekre
Computer Engineering
Mukesh Patel School of Technology Management and
Engineering, NMIMS University, Vileparle(w)
Mumbai 400–056, India
hbkekre@yahoo.com.
Tanuja K. Sarode
Ph.D. Scholar, MPSTME, NMIMS University,
Associate Professor, Computer Engineering,
Thadomal Shahani Engineering College,
Bandra(W), Mumbai 400-050, India
tanuja_0123@yahoo.com


Abstract—The paper presents new clustering algorithm. The
proposed algorithm gives less distortion as compared to well
known Linde Buzo Gray (LBG) algorithm and Kekre’s
Proportionate Error (KPE) Algorithm. Constant error is added
every time to split the clusters in LBG, resulting in formation of
cluster in one direction which is 135
0
in 2-dimensional case.
Because of this reason clustering is inefficient resulting in high
MSE in LBG. To overcome this drawback of LBG proportionate
error is added to change the cluster orientation in KPE. Though
the cluster orientation in KPE is changed its variation is limited
to ± 45
0
over 135
0
. The proposed algorithm takes care of this
problem by introducing new orientation every time to split the
clusters. The proposed method reduces PSNR by 2db to 5db for
codebook size 128 to 1024 with respect to LBG.
Keywords-component; Vector Quantization; Codebook;
Codevector; Encoding; Compression.
I. INTRODUCTION
World Wide Web Applications have extensively grown since
last few decades and it has become requisite tool for
education, communication, industry, amusement etc. All these
applications are multimedia-based applications consisting of
images and videos. Images/videos require enormous volume
of data items, creating a serious problem as they need higher
channel bandwidth for efficient transmission. Further high
degree of redundancies is observed in digital images. Thus the
need for image compression arises for resourceful storage and
transmission. Image compression is classified into two
categories, lossless image compression and lossy image
compression technique.

Vector quantization (VQ) is one of the lossy data compression
techniques[1], [2] and has been used in number of
applications, like pattern recognition [3], speech recognition
and face detection [4], [5], image segmentation [6-9], speech
data compression [10], Content Based Image Retrieval (CBIR)
[11], [12], Face recognition[13], [14] iris recognition[15],
tumor detection in mammography images [29] etc.

VQ is a mapping function which maps k-dimensional vector
space to a finite set CB = {C
1
, C
2
, C
3
, ..…., C
N
}. The set CB is
called as codebook consisting of N number of codevectors and
each codevector C
i
= {c
i1
, c
i2
, c
i3
, ……, c
ik
} is of dimension k.
Good codebook design leads to reduced distortion in
reconstructed image. Codebook can be designed in spatial
domain by clustering algorithms [1], [2], [16-22].

For encoding, image is split in blocks and each block is then
converted to the training vector X
i
= (x
i1
, x
i2
, ..….., x
ik
). The
codebook is searched for the nearest codevector Cmin by
computing squared Euclidean distance as presented in
equation (1) between vector X
i
and all the codevectors of the
codebook CB. This method is called as exhaustive search
(ES).
)} C , {d(X min ) C , d(X
j i N j 1 min i ≤ ≤
= Where
2
k
1 p
jp ip j i
) c (x ) C , d(X

=
− = (1)
Exhaustive Search (ES) method gives the optimal result at the
end, but it intensely involves computational complexity.
Observing equation (1) to obtain one nearest codevector for a
training vector computations required are N Euclidean
distance where N is the size of the codebook. So for M image
training vectors, will require M*N number of Euclidean
distances computations. It is obvious that if the codebook size
is increased the distortion will decrease with increase in
searching time.

A variety of encoding methods are available in literature:
Partial Distortion search (PDS)[23], nearest neighbor search
algorithm based on orthonormal transform (OTNNS) [24].
Partial Distortion Elimination (PDE) [25], Kekre’s fast search
algorithms [26], [27], [28] etc., are classified as partial search
methods. All these algorithms minimize the computational cost
needed for VQ encoding keeping the image quality close to
Exhaustive search algorithm.
II. CODEBOOK GENERATION ALGORITHMS
In this section existing codebook generation algorithms i.e.
Linde Buzo Gray (LBG) and Kekre’s Proportionate Error
(KPE) are discussed.
159 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
A. Linde Buzo and Gray(LBG)Algorithm[1],[2]
In this algorithm centroid is computed by taking the
average as the first codevector for the training set. In Figure 1
two vectors v1 & v2 are generated by using constant error
addition to the codevector. Euclidean distances of all the
training vectors are computed with vectors v1 & v2 and two
clusters are formed based on closest of v1 or v2. This modus
operandi is repeated for every cluster. The shortcoming of this
algorithm is that the cluster elongation is +135
o
to horizontal
axis in two dimensional cases resulting in inefficient
clustering.

Figure 1 LBG for Two dimensional case.
B. Kekre’s Proportionate Error(KPE) Algorithm[10], [18]
Here to generate two vectors v1 & v2 proportionate error is
added to the covector. Magnitude of elements of the
codevector decides the error ratio. Hereafter the procedure is
same as that of LBG. While adding proportionate error a safe
guard is also introduced so that neither v1 nor v2 go beyond
the training vector space eliminating the disadvantage of the
LBG. Figure 2. shows the cluster elongation after adding
proportionate error.


Figure 2. Orientations of the line joining two vector v1
and v2 after addition of proportionate error to the
centroid..
III. PROPOSED ALGORITHM
In this algorithm two vectors v1 & v2 are generated by
adding error vector to the codevector. Euclidean distances of
all the training vectors are computed with vectors v1 & v2 and
two clusters are formed based on closest of v1 or v2. The
codevectors of the two clusters are computed and then both
clusters are splitted by adding and subtracting error vector
rotated in k-dimensional space at different angle to both the
codevector. This modus operandi is repeated for every cluster
and every time to split the clusters error ei is added and
subtracted from the codevector and two vectors v1 and v2 is
generated. Error vector e
i
is the ith row of the error matrix of
dimension k. The error vectors matrix E is given in Equation
2.



































=
































=
. .......... .......... .......... .......... ..........
.
.
. .......... .......... .......... .......... ..........
. .......... .......... .......... .......... ..........
1 1 1 ........ 1 1 1 1
1 - 1 - 1 ........ 1 1 1 1
1 1 1 ........ 1 1 1 1
1 1 1 ........ 1 1 1 1
1 1 1 ........ 1 1 1 1
k
e
.
.
.
.
5
e
4
e
3
e
2
e
1
e
E
(2)
Note that these error vector sequence have been obtained by
taking binary representation of numbers starting from 0 to k-1
and replacing 0’s by 1’s and 1’s by -1’s.
Algorithm
Step 1: Divide the image into non overlapping blocks and
convert each block to vectors thus forming a training
vector set.
Step 2: initialize i=1;
Step 3: Compute the centroid (codevector) of this training
vector set.
Step 4: Add and subtract error vector e
i
from the codevector
and generate two vector v1 and v2.
Step 5: Compute Euclidean distance between all the training
vectors belonging to this cluster and the vectors v1
and v2 and split the cluster into two.
Step 6: Compute the centroid (codevector) for the clusters
obtained in the above step 5.
Step 7: increment i by one and repeat step 4 to step 6 for each
codevector.
Step 8: Repeat the Step 3 to Step 7 till codebook of desire size
is obtained.
IV. RESULTS
The algorithms discussed above are implemented using
MATLAB 7.0 on Pentium IV, 1.66GHz, 1GB RAM. To test
the performance of these algorithms eleven color images
belonging to different classes of size 256x256x3 are used.

Figure 3. Eleven color training Images. The images used
belong to class portrait, collection of objects, Bird, Animal,
Fruit, Flower, Monument, Place, Scenary etc.
160 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Figure 4. Results of LBG KPE and Proposed algorithm from
codebook size 1024 on Balls, Flower and Tajmahal image.

Figure 5. Compariosn of LBG, KPE and Proposed algorithm
for varying codebook sizes 128, 256, 512 and 1024 with
respect to average MSE.

Table 1. Results of LBG KPE and Proposed algorithm on
eleven color images from different categories of size
256x256x3 for codebook size 1024 and 512.

Table 2. Results of LBG KPE and Proposed algorithm on
eleven color images from different categories of size
256x256x3 for codebook size 256 and 128.


Figure 3. Eleven Training Images.




Aishwariya Balls Bird Boat
Flower Ganesh Scenary Strawberry
Tajmahal Tiger Viharlake
161 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2010

Figure 4. Results of Proposed, KPE and LBG algorithm from codebook size 1024 on Balls, Flower and Tajmahal image.

TABLE I. RESULTS OF LBG KPE AND PROPOSED ALGORITHM ON ELEVEN COLOR IMAGES FROM DIFFERENT CATEGORIES OF SIZE 256X256X3 FOR CODEBOOK
SIZE 1024 AND 512.
LBG KPE Proposed LBG KPE Proposed
Images Para-
meters 128 256
MSE 186.09 162.02 83.37 183.45 134.59 72.87
Aishwariya
PSNR 25.43 26.04 28.92 25.50 26.84 29.51
MSE 1912.70 1104.00 779.15 1895.50 853.43 693.18
Balls
PSNR 15.31 17.70 19.21 15.35 18.82 19.72
MSE 305.40 395.28 174.12 302.11 320.79 148.98
Bird
PSNR 23.28 22.16 25.72 23.33 23.07 26.40
MSE 620.06 762.48 410.54 614.73 685.49 344.17
Boat
PSNR 20.21 19.31 22.00 20.24 19.77 22.76
MSE 256.28 339.30 160.73 253.76 314.99 131.32
Flower
PSNR 24.04 22.82 26.07 24.09 23.15 26.95
MSE 650.92 652.82 481.61 645.64 610.63 421.70
Ganesh
PSNR 20.00 19.99 21.30 20.03 20.03 21.88
MSE 355.95 453.20 191.29 352.46 406.39 153.17
Scenary
PSNR 22.62 21.57 25.31 22.66 22.04 26.28
MSE 933.50 393.16 266.80 925.90 338.06 228.22
Strawberry
PSNR 18.43 22.19 23.87 18.47 22.84 24.55
Balls MSE: 1801.6 MSE: 507.33 MSE: 465.95
Flower MSE: 236.97 MSE: 167.20 MSE: 70.86
Tajmahal MSE: 862.02 MSE: 230.30 MSE: 137.62
Original Images LBG KPE Proposed
162 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. , 2010
MSE 910.25 601.56 301.23 902.56 364.59 241.31
Tajmahal
PSNR 18.54 20.34 23.34 18.58 22.51 24.31
MSE 491.44 488.83 340.02 487.72 463.80 288.65
Tiger
PSNR 21.22 21.24 22.82 21.25 21.47 23.53
MSE 162.73 161.91 134.83 160.78 154.99 113.28
Viharlake
PSNR 26.02 26.04 26.83 26.07 26.23 27.59
MSE 616.85 518.72 302.15 611.33 436.81 257.89
Average
PSNR 21.37 21.66 24.13 21.41 22.37 24.86

TABLE II. RESULTS OF LBG KPE AND PROPOSED ALGORITHM ON ELEVEN COLOR IMAGES FROM DIFFERENT CATEGORIES OF SIZE 256X256X3 FOR CODEBOOK
SIZE 256 AND 128.
LBG KPE Proposed LBG KPE Proposed
Images Para-
meters 512 1024
MSE 178.51 106.41 54.12 170.05 70.71 41.60
Aishwariya
PSNR 25.61 27.86 30.80 25.83 29.64 31.94
MSE 1866.20 680.73 574.34 1801.60 507.33 465.95
Balls
PSNR 15.42 19.80 20.54 15.57 21.08 21.45
MSE 296.48 233.30 116.87 285.04 164.40 90.08
Bird
PSNR 23.41 24.45 27.45 23.58 25.97 28.58
MSE 604.63 526.01 22.76 583.59 417.39 222.50
Boat
PSNR 20.32 20.92 23.80 20.47 21.93 24.66
MSE 247.55 249.18 102.84 236.97 167.20 70.86
Flower
PSNR 24.19 24.17 28.01 24.38 25.90 29.63
MSE 635.20 533.10 354.68 613.29 449.07 307.90
Ganesh
PSNR 20.10 19.97 22.63 20.25 20.77 23.25
MSE 346.55 296.83 119.19 333.81 189.24 90.19
Scenary
PSNR 22.73 23.41 27.37 22.90 25.36 28.58
MSE 912.77 277.28 186.65 884.99 233.57 152.89
Strawberry
PSNR 18.53 23.70 25.42 18.66 24.45 26.29
MSE 889.35 279.01 179.13 862.02 230.30 137.62
Tajmahal
PSNR 18.64 23.67 25.60 18.78 24.51 26.74
MSE 480.53 432.18 235.52 465.69 345.72 195.16
Tiger
PSNR 21.31 21.77 24.41 21.45 22.74 25.23
MSE 157.44 138.34 92.49 151.13 112.72 77.14
Viharlake
PSNR 26.16 26.72 28.47 26.34 27.61 29.26
MSE 601.38 352.12 185.33 580.74 271.22 168.35
Average
PSNR 21.49 23.31 25.86 21.66 24.54 26.87














163 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010


0
100
200
300
400
500
600
700
L
B
G
K
P
E
P
r
o
p
o
s
e
d
L
B
G
K
P
E
P
r
o
p
o
s
e
d
L
B
G
K
P
E
P
r
o
p
o
s
e
d
L
B
G
K
P
E
P
r
o
p
o
s
e
d
128 256 512 1024
Codebook Size
A
v
e
r
a
g
e

M
S
E

Figure 5. Comparisons of LBG, KPE and Proposed algorithm for varying codebook sizes 128, 256, 512 and 1024 with respect to average MSE.

V. CONCLUSIONS
In this paper a novel codebook generation algorithm is
proposed. In LBG constant error is added every time to split
the clusters, which results in cluster formation in one
direction only. The cluster elongation in LBG is 135
o
in 2-
dimensional case. Due to this reason clustering in LBG is
inefficient resulting in high MSE. To overcome this
drawback of LBG modification to it is introduced by adding
proportionate error to change the cluster orientation in KPE.
Although the orientation is changed its variation is limited
to the first quadrant. The proposed algorithm takes care of
these problems by introducing new orientation every time to
split the cluster. This has resulted in improving the
clustering and reducing the image degradation in
reconstructed image considerably. The proposed method
reduces MSE by 51% to 71 for codebook size 128 to 1024
with respect to LBG and reduces MSE by 41% to 37% for
codebook size 128 to 1024 with respect to KPE.

References
1. R. M. Gray, “Vector quantization”, IEEE ASSP Mag., pp. 4-29, Apr.
1984.
2. Y. Linde, A. Buzo, and R. M. Gray, “An algorithm for vector
quantizer design,” IEEE Trans.Commun., vol. COM-28, no. 1, pp. 84-
95, 1980.
3. Ahmed A. Abdelwahab, Nora S. Muharram, “A Fast Codebook
Design Algorithm Based on a Fuzzy Clustering Methodology”,
International Journal of Image and Graphics, vol. 7, no. 2 pp. 291-
302, 2007.
4. Chin-Chen Chang, Wen-Chuan Wu, “Fast Planar-Oriented Ripple
Search Algorithm for Hyperspace VQ Codebook”, IEEE Transaction
on image processing, vol 16, no. 6, June 2007.
5. C. Garcia and G. Tziritas, “Face detection using quantized skin color
regions merging and wavelet packet analysis,” IEEE Trans.
Multimedia, vol. 1, no. 3, pp. 264–277, Sep. 1999.
6. H. B. Kekre, Tanuja K. Sarode, Bhakti Raul, “Color Image
Segmentation using Kekre’s Algorithm for Vector Quantization”,
International Journal of Computer Science (IJCS), Vol. 3, No. 4, pp.
287-292, Fall 2008. available: http://www.waset.org/ijcs.
7. H. B. Kekre, Tanuja K. Sarode, Bhakti Raul, ”Color Image
Segmentation using Vector Quantizationt”, Journal of Advances in
Engineering Science, Section C, Number 3, 2008.
8. H. B. Kekre, Tanuja K. Sarode, Bhakti Raul, “Color Image
Segmentation using Vector Quantization Techniques Based on
Energy Ordering Concept” International Journal of Computing
Science and Communication Technologies (IJCSCT) Volume 1, Issue
2, January 2009.
9. H. B. Kekre, Tanuja K. Sarode, Bhakti Raul, ”Color Image
Segmentation using Kekre’s Fast Codebook Generation Algorithm
Based on Energy Ordering Concept”, ACM International Conference
on Advances in Computing, Communication and Control (ICAC3-
2009), 23-24 Jan 2009, Fr. Conceicao Rodrigous College of Engg.,
Mumbai. Available on online ACM portal.
10. H. B. Kekre, Tanuja K. Sarode, “Speech Data Compression using
Vector Quantization”, WASET International Journal of Computer and
Information Science and Engineering (IJCISE), vol. 2, No. 4, 251-
254, Fall 2008. available: http://www.waset.org/ijcise
11. H. B. Kekre, Ms. Tanuja K. Sarode, Sudeep D. Thepade, “Image
Retrieval using Color-Texture Features from DCT on VQ
Codevectors obtained by Kekre’s Fast Codebook Generation”,
ICGST-International Journal on Graphics, Vision and Image
Processing (GVIP), Volume 9, Issue 5, pp.: 1-8, September 2009.
Available online at
http://www.icgst.com/gvip/Volume9/Issue5/P1150921752.html.
12. H.B.Kekre, Tanuja K. Sarode, Sudeep D. Thepade, “Color-Texture
Feature based Image Retrieval using DCT applied on Kekre’s Median
Codebook”, International Journal on Imaging (IJI), Available online
at www.ceser.res.in/iji.html.
13. H. B. Kekre, Kamal Shah, Tanuja K. Sarode, Sudeep D. Thepade,
”Performance Comparison of Vector Quantization Technique –
KFCG with LBG, Existing Transforms and PCA for Face
Recognition”, International Journal of Information Retrieval (IJIR),
Vol. 02, Issue 1, pp.: 64-71, 2009.
14. H.B.Kekre, T.K.Sarode, V.A.Bharadi, Tejas Bajaj, Somesh
Chatterjee, Mithilesh Bhat, Kunal Bihani “A Comparative Study of
DCT and Kekre’s Median Code Book Generation Algorithm for Face
Recognition”, International Conference and Workshop on Emerging
Trends in Technology (ICWET 2010). To be held at Thakur College
of Engineering and Technology (TCET), 26 & 27th February 2010,
the paper will be uploaded on ACM portal.
15. H.B.Kekre, T.K.Sarode, V.A.Bharadi, A A Agrawal, R J Arora, M C
Nair “Iris Recognition Using Vector Quantization”, International
Conference on Signal Acquisition and Processing (ICSAP 2010),
Organized by International Association of Computer Science &
164 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, 2010
Information Technology (IACSIT) Singapore, held at Banglore, 9-
10th February 2010. Available on IEEEXplorer.
16. H. B. Kekre, Tanuja K. Sarode, “New Fast Improved Codebook
Generation Algorithm for Color Images using Vector Quantization,”
International Journal of Engineering and Technology, vol.1, No.1, pp.
67-77, September 2008.
17. H. B. Kekre, Tanuja K. Sarode, “Fast Codebook Generation
Algorithm for Color Images using Vector Quantization,” International
Journal of Computer Science and Information Technology, Vol. 1,
No. 1, pp: 7-12, Jan 2009.
18. H. B. Kekre, Tanuja K. Sarode, “An Efficient Fast Algorithm to
Generate Codebook for Vector Quantization,” First International
Conference on Emerging Trends in Engineering and Technology,
ICETET-2008, held at Raisoni College of Engineering, Nagpur, India,
16-18 July 2008, Avaliable at online IEEE Xplore.
19. H. B. Kekre, Tanuja K. Sarode, “Vector Quantized Codebook
Optimization using K-Means”, International Journal on Computer
Science and Engineering (IJCSE) Vol.1, No. 3, 2009, pp.: 283-290,
Available online at:
http://journals.indexcopernicus.com/abstracted.php?level=4&id_issue
=839392.
20. H. B. Kekre, Tanuja K. Sarode, “Multilevel Vector Quantization
Method for Codebook Generation”, International Journal of
Engineering Research and Industrial Applications (IJERIA), vol. 2,
no. V, 2009, ISSN 0974-1518, pp.: 217-231. Available online at.
http://www.ascent-journals.com/ijeria_contents_Vol2No5.htm.
21. H. B. Kekre, Tanuja K. Sarode, “Bi-level Vector Quantization
Method for Codebook Generation”, Second International Conference
on Emerging Trends in Engineering and Technlogy, at G. H. Raisoni
College of Engineering, Nagpur on 16-18 December 2009, this paper
will be uploaded online at IEEE Xplore.
22. H.B.Kekre, Tanuja K. Sarode, “Bi-level Vector Quantization Method
for Codebook Generation”, Second International Conference on
Emerging Trends in Engineering and Technlogy, at G. H. Raisoni
College of Engineering, Nagpur on 16-18 December 2009, pp.:866-
872. Available online at IEEE Xplore.
23. C. D. Bei and R. M. Gray.: ‘An improvement of the minimum
distortion encoding algorithm for vector quantization’, IEEE Trans.
Commun.,vol. 33, No. 10, pp. 1132–1133, Oct. 1985.
24. Z. Li, and Z.- M. Lu. : ‘Fast codevector search scheme for 3D mesh
model vector quantization’, Electron. Lett., vol. 44, No. 2, pp. 104-
105, Jan 2008.
25. C. Bei, R. M. Gray, ‘‘An improvement of the minimum distortion
encoding algorithm for vector quantization’’, IEEE Trans. Commun.,
Vol. 33, no. 10, pp. 1132–1133, Oct 1985.
26. H. B. Kekre, Tanuja K. Sarode, “Centroid Based Fast Search
Algorithm for Vector Quantization”, International Journal of Imaging
(IJI), Vol 1, No. A08, pp. 73-83, Autumn 2008, available:
http://www.ceser.res.in/iji.html.
27. H. B. Kekre, Tanuja K. Sarode, “Fast Codevector Search Algorithm
for 3-D Vector Quantized Codebook”, WASET International Journal
of cal Computer Information Science and Engineering (IJCISE),
Volume 2, No. 4, pp. 235-239, Fall 2008. available:
http://www.waset.org/ijcise.
28. H. B. Kekre, Tanuja K. Sarode,”Fast Codebook Search Algorithm for
Vector Quantization using Sorting Technique”, ACM International
Conference on Advances in Computing, Communication and Control
(ICAC3-2009), 23-24 Jan 2009, Fr. Conceicao Rodrigous College of
Engg., Mumbai. Available on online ACM portal.
29. H. B. Kekre, Tanuja K. Sarode, Saylee Gharge, “Detection and
Demarcation of Tumor using Vector Quantization in MRI images”,
International Journal of Engineering Science and Technology, Vol.1,
Number (2), pp.: 59-66, 2009. Available online at:
http://arxiv.org/ftp/arxiv/papers/1001/1001.4189.pdf.








AUTHORS PROFILE
Dr. H. B. Kekre has received B.E. (Hons.) in Telecomm. Engineering.
from Jabalpur University in 1958, M.Tech (Industrial
Electronics) from IIT Bombay in 1960, M.S.Engg.
(Electrical Engg.) from University of Ottawa in 1965
and Ph.D. (System Identification) from IIT Bombay
in 1970 He has worked as Faculty of Electrical
Engg. and then HOD Computer Science and Engg. at
IIT Bombay. For 13 years he was working as a
professor and head in the Department of Computer
Engg. at Thadomal Shahani Engineering. College, Mumbai. Now he is
Senior Professor at MPSTME, SVKM’s NMIMS University. He has guided
17 Ph.Ds, more than 100 M.E./M.Tech and several B.E./ B.Tech projects.
His areas of interest are Digital Signal processing, Image Processing and
Computer Networking. He has more than 250 papers in National /
International Conferences and Journals to his credit. He was Senior
Member of IEEE. Presently He is Fellow of IETE and Life Member of
ISTE Recently six students working under his guidance have received best
paper awards. Currently 10 research scholars are pursuing Ph.D. program
under his guidance.

Tanuja K. Sarode has Received Bsc.(Mathematics) from Mumbai
University in 1996, Bsc.Tech.(Computer
Technology) from Mumbai University in 1999,
M.E. (Computer Engineering) from Mumbai
University in 2004, currently Pursuing Ph.D.
from Mukesh Patel School of Technology,
Management and Engineering, SVKM’s NMIMS
University, Vile-Parle (W), Mumbai, INDIA.
She has more than 10 years of experience in
teaching. Currently working as Associate Professor in Dept. of Computer
Engineering at Thadomal Shahani Engineering College, Mumbai. She is
life member of IETE, member of International Association of Engineers
(IAENG) and International Association of Computer Science and
Information Technology (IACSIT), Singapore. Her areas of interest are
Image Processing, Signal Processing and Computer Graphics. She has 55
papers in National /International Conferences/journal to her credit.

165 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

Enhanced Ad-Hoc on Demand Multipath Distance
Vector Routing Potocol (EAOMDV)

Mrs.Sujata V.Mallapur
Department of Information Science and Engineering
Appa Institute of Engineering and Technology
Gulbarga, India
Sujatank000@yahoo.co.in
Prof. Sujata .Terdal
Department of Computer Science and Engineering
P.D.A College of Engineering
Gulbarga, India
Suja_pst@rediffmail.com


Abstract—Due to mobility in Ad-Hoc network the topology of the
network may change randomly, rapidly and unexpectedly,
because of these aspects, the routes in the network often
disappear and new to arise. To avoid frequent route discovery
and route failure EAOMDV was proposed based on existing
routing protocol AOMDV. The EAOMDV (Enhanced Ad-Hoc on
Demand Multipath Distance Vector) Routing protocol was
proposed to solve the “route failure” problem in AOMDV.
EAOMDV protocol reduces the route failure problem by pre-
emptively predicting the link failure by the signal power received
by the receiver (pr). This proposed protocol controls overhead,
increases throughput and reduces the delay. The EAOMDV
protocol was implemented on NS-2 and evaluation results show
that the EAOMDV outperformed AOMDV.
KEYWORDS— AD-HOC NETWORKS, AODV, AOMDV, MULTIPATH
ROUTING, EAOMDV.
I. INTRODUCTION
A mobile Ad-Hoc Network (MANET) [1] is a collection of
mobile nodes that form a wireless network without the use of
any fixed base station. Each node acting as both a host and a
router arbitrarily and communicates with others via multiple
wireless links, therefore the network topology changes greatly.
The routing protocols proposed so far can be divided in to 2
categories: proactive routing protocol and reactive routing
protocol. Reactive routing protocol, which initiates route
computation only on demand, performs better than proactive
routing protocol, which always maintains route to destination
by periodically updating, due to its control overhead.
In such dynamic network, it is an essential to get route in time,
perform the routing with maximal throughput and minimal
control overhead. Several on-Demand routing protocol have
been proposed. In such protocols, nodes build and maintain
the routes as they are needed. Examples of these protocols
include the Dynamic Source Routing (DSR) [7] and Ad hoc
On-Demand Distance Vector AODV Routing protocol [2].
These protocols initiate a route discovery process whenever a
node needs route to a particular destination. In AODV the
source broadcasts a route Request (RREQ) packet in the
network to search for route to the destination. When a RREQ
reaches either the destination or an intermediate node that
knows a route to the destination, a Route Reply (RREP)
packet is unicast back to the source. This establishes a path
between the source and destination. Data is transferred along
this path until one of the links in the path breaks due to node
mobility. The source is informed of this link failure by means
of a Route Error (RERR) packet from the node upstream of
the failed link. The source node then re-initiates a route
discovery process to find a new route to the destination. It is a
single path routing, which needs new route discovery
whenever path breaks. To overcome such inefficiency, several
studies have been presented to compute multiple paths. If
primary path breaks, they provide alternative paths to send
data packets without executing a new discovery.
A mobile Ad-Hoc Network (MANET) [1] is a collection of
mobile nodes that form a wireless network without the use of
any fixed base station. Each node acting as both a host and a
router arbitrarily and communicates with others via multiple
wireless links, therefore the network topology changes greatly.
The routing protocols proposed so far can be divided in to 2
categories: proactive routing protocol and reactive routing
protocol. Reactive routing protocol, which initiates route
computation only on demand, performs better than proactive
routing protocol, which always maintains route to destination
by periodically updating, due to its control overhead.
In such dynamic network, it is an essential to get route in time,
perform the routing with maximal throughput and minimal
control overhead. Several on-Demand routing protocol have
been proposed. In such protocols, nodes build and maintain
the routes as they are needed. Examples of these protocols
include the Dynamic Source Routing (DSR) [7] and Ad hoc
On-Demand Distance Vector AODV Routing protocol [2].
These protocols initiate a route discovery process whenever a
node needs route to a particular destination. In AODV the
source broadcasts a route Request (RREQ) packet in the
network to search for route to the destination. When a RREQ
reaches either the destination or an intermediate node that
knows a route to the destination, a Route Reply (RREP)
packet is unicast back to the source. This establishes a path
between the source and destination. Data is transferred along
this path until one of the links in the path breaks due to node
mobility. The source is informed of this link failure by means
of a Route Error (RERR) packet from the node upstream of
the failed link. The source node then re-initiates a route
discovery process to find a new route to the destination. It is a
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
166 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
single path routing, which needs new route discovery
whenever path breaks. To overcome such inefficiency, several
studies have been presented to compute multiple paths. If
primary path breaks, they provide alternative paths to send
data packets without executing a new discovery.
The current multipath routing protocols finds multiple route
during Route Discovery process [11]. The best path that is
with the shortest hop count is chosen as the primary path for
data transfer while other paths are used only when primary
path fails. These protocols do not perform any prediction of
route failure before the path breaks. As a result it leads the
problem of frequent route discovery for data transmission.
To remedy this problem this paper presents a new routing
protocol called the Enhanced Ad-hoc on Demand Multipath
Distance Vector (EAOMDV) routing protocol. This protocol is
proposed based on the AOMDV [5] to provide stable path in
Ad-Hoc network. EAOMDV is an extension of AOMDV.
EAOMDV uses the Node-Disjoint Multipath routing Protocol.
The goal of EAOMDV is to provide efficient recovery from
“route failure” problem in dynamic network. To achieve this
goal it computes “the received power of each receiver node”
using “link failure prediction technique” to discover the route
from source and destination. A source node sends the RREQ
packet, if the receiver node has less received power than
threshold then drops the packet and sends the warning packet
to the sender than a source node not select the route
containing, therefore, the selected routing path exclude the
nodes that are going out of threshold. A Route Maintenance
mechanism is implemented to repair a broken route, finds the
new route when all route failed.
The rest of the paper is organized as follows. Section II
describes related work. Section III describes the AOMDV
route discovery and route maintenance. The proposed protocol
is presented in section IV, and its performance is evaluated and
compared with that of AOMDV in section V. Some
conclusions are given in section VI.

II. RELATED WORK
This section summarizes various examples of on-demand
multipath routing protocols especially from the viewpoint of
route discovery strategy
AODV Backup Routing (AODV-BR) [3] enhances the AODV
by letting each neighboring node of a primary route maintain
its own backup route. When the node over a primary route
detects a link failure, it transmits a route update message and a
neighboring node receiving this message activates the backup
route. A problem of this approach is limitation of the route
selection that is at most within one hop distance.
AOMDV (Ad hoc On-demand Multipath Distance 'Vector
routing) [5] is a sophisticated protocol which produces
multiple routes with loop-free and link-disjoint properties.
When an intermediate node receives copies of a RREQ packet,
it compares a hop count field in a packet with the minimum
hop count, called advertised-hopcount, stored in a routing
table for previous RREQ packets. Only a packet with the
minimum hop count is accepted to avoid routing loops.
Furthermore, a firsthop field in a RREQ packet is then
compared with the firsthop-list in a routing table. When a
route with node-disjoint property (new firsthop) is found, a
new reverse route is recorded. Destination returns RREP
packets accordingly, and multiple routes with link-disjoint'
property are established at a source node. A problem of
AOMDV is that several efficient routes may be missed due to
strong restriction by the firsthop field. Another problem is lack
of backup route maintenance that causes timeout expiration of
backup routes.
III. AOMDV OVERVIEW
Ad Hoc On-Demand Multipath Distance Vector Routing
Protocol [5] is one of the most used Ad-Hoc routing protocol.
It is a reactive routing protocol based on DSDV. AOMDV is
designed for networks with tens to thousands of mobile nodes.
The main idea in AOMDV is to compute multiple paths during
route discovery. It is designed primarily for highly dynamic ad
hoc networks where link failures and route breaks occur
frequently. When single path on-demand routing protocol such
as AODV is used in such networks, a new route discovery is
needed in response to every route break. Each route discovery
is associated with high overhead and latency. This inefficiency
can be avoided by having multiple redundant paths available.

The AOMDV protocol has two main components:
1. A route update rule to establish and maintain multiple loop-
free paths at each node.
2. A distributed protocol to find node-disjoint paths that is
route discovery.

In AOMDV a new route discovery is needed only when all
paths to the destination break. A main feature of the AOMDV
protocol is the use of routing information already available in
the underlying AODV protocol as much as possible. Thus
little additional overhead is required for the computation of
multiple paths.


A. Route Discovery
The route discovery process has two major phases: route
request phase and route reply phase. The route discovery
process computes the multiple loop free paths. The route
discovery process will be initiated when a route is requested
by a source node and there is no information about the route in
its routing table. First, the source node generates an RREQ and
then floods the packet to networks. The RREQ’s are
propagated to neighbours within the source’s transmission
range. They also broadcast the packets to their neighbours.
The process is repeated until the destination receives the
RREQ. When an intermediate node receives the RREQ, it
performs the following process:

1. When an intermediate node receives the information
of RREQ, either it sends the route reply if the node is
destination, or it rebroadcasts the RREQ to it
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
167 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
neighbours.
2. The node reads the information from the RREQ.

In order to transmit route reply packets to the source, the node
builds a reverse path to the source. The node will insert the
path to its multiple path lists. Otherwise, the node will ignore
the path and discard the RREQ.
Link failures in ad hoc networks are caused by mobility,
congestion, packet collisions, node failures, and so on. In the
AOMDV protocol, the link layer feedback from IEEE 802.11
is utilized to detect link failures. If a node sends packets along
the broken link, it will receive a link layer feedback. When a
node detects a link break, it broadcasts route error (RERR)
packets to its neighbours. The neighbours then rebroadcast the
packets until all source nodes receive the packets. If a source
node receives the RRER, it will remove every entry in its
routing table that uses the broken link. Differing from single
path routing protocols, the route error packets should contain
the information not only about the broken primary path but
also the broken backup paths. When the source node receives
the RERR’s, it removes all broken routing entries and uses the
shortest backup paths as primary paths. The source node
initiates a route discovery process where all backup paths are
broken.
IV. EAOMDV OVERVIEW
A. Protocol Assumptions
In this section we present the operation of EAOMDV. The
EAOMDV is ad-hoc Reactive routing protocol based on
DSDV. EAOMDV is an extension of AOMDV, The goal
behind the proposed protocol is to provide efficient recovery
from “route failure” in dynamic network. To achieve this at the
time of route discovery it computes the “received power of the
receiver node” using the “link failure prediction technique". It
calculates the received power to predict pre-emptively before
the route failure.
In Ad Hoc networks route failure may occurs due to less
received power, mobility, congestion and node failures.
EAOMDV predict pre-emptively the route failure that occurs
with the less received power.


Figure 1: Route Request in EAOMDV
The above figure 1 shows the Route Request in EAOMDV;
here the source node S wants to send the data to the
destination D. Source S floods the RREQ packet to its
neighbour nodes , Node A broadcasts the RREQ to the
others nodes. After Broadcasting the Route Request Node B
calculates the Receiver Power if it has less than Threshold it
Drops the packet and sends the WRNG packet.
EAOMDV Protocol uses the main component:
1. A route update rule to establish and maintain stable
multiple loop-free paths at each node using link failure
prediction technique.
B. Route Discovery
EAOMDV uses the Route Discovery method to discover the
multiple node-disjoint paths. The route discovery uses the 2
different phases. Route Discovery phase and Route Reply
phase. The Route Request phase is used to discover the path it
broadcasts the RREQ packets. When an intermediate node
receives the RREQ it performs following Steps.

Step 1: The node measures its Received Power (Pr) by
comparing the “Carrier Sense Threshold”.

Step 2: If Received power Pr of receiver node is less than
threshold then the host drop the packet and send the
warning packet.

Step 3: The routes with the less received power can be
avoided, and then selects another path for transmission.
The received power is goes on checking at every node.

The following algorithm 1 shows the Route update Rule for
Route Request:
Definations:
RREQ: A route request packet.
CSThreshold: carrier sense threshold.
Pr: Received power.
WRNG: Warning Packet.
Procedure Route Request (RREQ) update
Begin
When an intermediate node receives RREQ
if (Pr < CSThreshold) then
Drop the packet and send the WRNG packet to
source node.
else if (Pr == CSThreshold)
if ((Pr > CSThreshold) then
boardcast the RREQ to its neighbor nodes;
endif
else
Drop the packet RREQ and choose the another path;
endif
End
Algorithm 1. Route update rule for Route Request
Route Reply Phase, when the destination receives the route
request packet, it sends route reply (RREP) packet to the
source along the reverse paths created previously. The
destination sends RREP to next nodes of reverse paths. They
also forward the packet to next nodes until the source receives
the RREP.
Whenever the Node Receives the RERR packet it immediately
uses the Route maintenance phase to maintain the Route.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
168 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

V. SIMULATIONS AND RESULTS
A. Simulation Environment
The EAOMDV was evaluated using the Ns-2 [9] simulator
version 2.32 with CMU’s multihop wireless extensions. In the
simulation, the IEEE 802.11 distributed coordination function
was used as the medium access control protocol. The physical
radio characteristics of each wireless host were based on
Lucent’s WaveLan. WaveLan was direct spread spectrum
radio and the channel had radio propagation range of 250
meters and capacity of 2Mb/sec. The AOMDV and enhanced
AOMDV (EAOMDV) are to be compared in the simulation.
Our results are based on the simulation of 50 wireless nodes
forming an ad hoc network moving about in an area of 1500
meters by 300 meters for 100 seconds of simulated time.
Nodes move according to the random waypoint model in a
free space model.
B. Simulation Results and Analysis
The following performance metrics used to evaluate the two
routing protocols:

Packet delivery ratio: The ratio of the data packets delivered
to the destination to those generated by the CBR sources.

End to End delay: Average time between data packets
received by the destinations and data packet sent by CBR
source. The data were collected only successfully delivered
packets. The delay is determined by any factors such as
buffering during route discovery, queuing at the interface
queue and routing paths between two nodes.

Overhead: The number of routing packets transmitted per
data packet delivered to the destination.

Throughput: the total size of data packets that are received
in CBR destinations per second. It represents in whether the
protocols make good use of network resources or not.

We report the results of the simulation experiments for the
original AOMDV protocol with the EAOMDV. In this we
analyze the performance metrics by the pause time.
Figure 2 compares the Average end-to-end delay by the
different pause time. The routing protocols in varying in pause
time. The graph demonstrates the node-disjoint EAOMDV
performs better then AOMDV; End-to-End delay is less
Because of less rout discovery.
Figure 3 plots the routing overhead of two routing protocols
against pause time. Observe that node-disjoint EAOMDV has
a less overhead than AOMDV. The reasons for less overhead
is less route discoveries are initiated in EAOMDV, which lead
to the flooding of RREQ.
Figure 4 compares the packet delivery ratio of routing
protocols in varying pause time. In the simulation all the nodes
move the same specified speed. The graph demonstrates the
node-disjoint EAOMDV performs better then AOMDV; the
paths in the Nod-Disjoint EAOMDV fail independently due to
their node-disjoint property.


Figure 2: End-to-End Delay

Figure 3: Overhead of AOMDV and EAOMDV
Figure 5 compares the throughput for both the protocols.
Throughput of EAOMDV is better compared to AOMDV
because of less Route Discovery; it saves the bandwidth and
the network resources.



Figure 4: Packet Delivery Fraction
.


Figure 5: Throughput of AOMDV and EAOMDV

VI. CONCLUSION AND FUTURE WORK
Multipath routing can be used in on-demand protocols to
achieve faster and efficient recovery from route failures in
highly dynamic Ad-hoc networks. In this project we have
proposed an Enhanced Ad-Hoc on-Demand Multipath
Distance Vector routing protocol that extends the AOMDV
protocol to compute the stable path. There are three main
contributions in this work. One is computing multiple loop-
free paths at each node, another calculating received power of
each node while transferring packets and node-disjoint route
discovery mechanism.
Simulation results show that the throughput, packet delivery
fraction EAOMDV is more than that of AOMDV. Also
overhead of EAOMDV is less than that of AOMDV. This is
because EAOMDV selects the node disjoint path pre-
emptively before the path fails. If one path breaks then it
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
169 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
selects an alternative and reliable node-Disjoint path. The
advantage is less Route Discovery and Reduces the Route
Error Packets.
In EAOMDV it uses multiple paths only one path is used at a
time. It is possible to use multiple paths simultaneously for
increasing data rate, which is not considered in this project.
This aspect can be one area for future work.

ACKNOWLEDGMENT
This work is done in Poojya Doddappa Appa college of
Engineering. I would like to express my gratitude to the
supervisor of this work, professor .Sujata Terdal who gave me
lot of valuable guidance and comments of this work.Special
thanks to my family and friend without their support, I could
not finish my Master degree studies.
REFERENCES
[1] Abolhasan, M., Wysocki, T., and Dutkiewicz, E., “A review of routing
protocols for mobile ad hoc networks,” Ad Hoc Networks 2, pp. 1-22 (2004).
[2] Perkins, C., Belding-Royer, E., and Das, S., “Ad hoc On-Demand Distance
Vector (AODV) routing,” rfc3561.txt (2003).
[3] Lee, S. J. and Gerla, M., “AODV-BR: Backup Routing in Ad hoc
Networks,” Proc. of IEEE Wireless Communications and Networking
Conference, pp. 1311-1316 (2000).
[4] Li, X. F. and Cuthbert, L., “On-demand Node-disjoint Multipath Routing
in Wireless Ad hoc Networks,” Proc. of the 29th Annual IEEE International
Conference on Local Computer Networks (LCN’04).
[5] Marina, M. K. and Das, S. R., “On-demand Multipath Distance Vector
Routing for Ad Hoc Networks,” Proc. of 9th IEEE Int. Conf. On Network
Protocols, pp.14-23 (2001).
[6] Jiang, M. H. and Jan, R. H., “An Efficient Multiple Paths Routing Protocol
for Ad-hoc Networks,” Proc. of the 15th International Conference on
Information Networking, pp. 544-549 (2001).
[7] DSR, “Dynamic Source Routing Protocol”, IETF MANET Working
Group Inter Draft
[8] Theodore S. Rappaport, Wireless Communications Principles and Practice,
Prentice Hall, December, 2001
[9] The VINT Project. Network Simulator. http://www.isi.edu/nsnam/ns/.
[10] Elizabeth M. Royer and C-K Toh: A Review of Current Routing
Protocols forAd-Hoc Mobile Wireless Networks.
[11] Stephen Mueller, Rose P. Tsang, and Dipak Ghosal, Multipath Routing in
Mobile Ad Hoc Networks: Issues and Challenges.

AUTHORS PROFILE
I sujata V Mallapur. Completed pre high school and high school in Chetan
School in Gulbarga. B.E and M.Tech in Poojya Doddappa Appa college of
Engineering in the year of 2009. Presently working as lecturer in Appa
Institute of Engineering And Technology, Gulbarga. My Interested Area is Ad-
Hoc Network.




(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
170 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
S.Nagarani, Research Scholar, Anna University,
Coimbatore, Tamilnadu,India.
sureshnagarani@yahoo.co.in

Abstract—As wireless communication systems look
intently to compose the transition from voice communication
to interactive Internet data, achieving higher bit rates becomes
both increasingly desirable and challenging. Space-time
coding (STC) is a communications technique for wireless
systems that inhabit multiple transmit antennas and single or
multiple receive antennas. Space-time codes make use of
advantage of both the spatial diversity provided by multiple
antennas and the temporal diversity available with time-
varying fading. Space-time codes can be divided into block
codes and trellis codes. Space–time trellis coding merges
signal processing at the receiver with coding techniques
appropriate to multiple transmit antennas. The advantages of
space-time codes (STC) make it extremely remarkable for
high-rate wireless applications. Initial STC research efforts
focused on narrowband flat-fading channels. The decoding
complexity of Space-time turbo codes STTC increases
exponentially as a function of the diversity level and
transmission rate. This proposed paper provides an over view
on various techniques used for the design of space-time turbo
codes. This paper also discusses the techniques handled by
researchers to built encoder and decoder section for multiple
transmits and receives antennas. In addition the future
enhancement gives a general idea for improvement and
development of various codes which will involve
implementing viterbi decoder with soft decoding in a multi-
antenna scenario. In addition the space-time code may be
analyzed using some of the available metrics and finally to
simulate it for different receive antenna configurations.

Keywords—Antenna, Bit Rate, Block Codes, Diversity,
Space-Time Coding (STC), Transmitter, Trellis Codes, and
Viterbi Decoder.
I. INTRODUCTION
In general the Space-time codes utilize the advantages of
both the spatial diversity provided by multiple antennas and
the temporal diversity available with time-varying fading.
Space-time coding (STC) is a communications technique for
wireless systems that occupy multiple transmit antennas and
single or multiple receive antennas. Therefore recently there
has been a surge of interests in the design of the so called
“space-time codes.” Most of the proposed space-time codes
were mainly based on trellis codes or orthogonal block codes.
Those codes make use of a fixed number of transmitter
antennas for each code construction. A new class of scalable
space-time codes based on turbo codes or turbo trellis codes
was proposed in [1]. They will be referred as space-time turbo
codes (STT) in the consequence. The scalability means that
the code rate and number of transmitter antennas can be
effortlessly personalized to different design requirements
without redesigning the main part of the code [26].


Dr.C.V. Seshaiah, Prof and Head, Sri Ramakrishna
Engg. College, Tamilnadu, India.
cvseshaiah@gmail.com

With high probability, this class of codes will take full
advantage of both space and temporal diversity. The
performance of the STT code is close or better than AT&T's
64 states code. Design criteria have been proposed for space-
time codes in a assortment of environments [2], [3] and [4]. In
Rayleigh fading, each feasible code word difference in a
coded modulation produces a „signal‟ matrix which is a
function of both the code word difference and the channel
correlation. The diversity provided by a code word difference
is given by the rank of this „signal‟ matrix and the effective
product measure [4]. Therefore the STT model can utilize
random symbol interleavers, such that the code word
differences are stretched among all the transmitter antennas,
which results in full rank and outsized effectual product
measure „signal‟ matrix with high probability.
The following advantages of space-time codes (STC) make
it highly attractive for high-rate wireless applications. The
foremost advantage is that it improves the downlink
performance without the requirements for multiple receive
antennas at the terminals. Second, it elegantly combines
spatial transmit diversity with channel coding realizing a
coding gains in addition to maximum diversity gain [3].
Moreover there is no necessity of channel state information
(CSI) at the transmitter terminal. In addition the need for an
expensive reverse link, which may be consistent in the case of
rapid channel fading, can be eliminated by operating open
loop. STC is robust against certain non-ideal operating
conditions like antenna correlation, channel estimation errors
and Doppler effects [5].

Multiple antennas posses the potential to drastically increase
the achievable bit rates [6], thus converting wireless channels
from narrow to wide data pipes. This can be well
demonstrated using Information Theory. Rayleigh flat fading
can be beneficial for a multiple-antenna communication link.
More recently, space–time trellis coding has been proposed
which combines signal processing at the receiver with coding
techniques appropriate to multiple transmit antennas and
provides significant gain over. This proposed paper provides
an over view on various techniques used for the design of
space-time turbo codes. In addition the future enhancement
gives a general idea for improvement and development of
various codes which will involve implementing viterbi
decoder with soft decoding in a multi-antenna scenario. In
addition the space-time code may be analyzed using some of
the available metrics and finally to simulate it for different
receive antenna configurations.

The remainder of this paper is structured as follows. Section
2 discusses the related work that was earlier proposed in
literature for space-time turbo codes. Section 3 gives a general
idea of further improvements of the earlier approaches in
A Survey on Space-Time Turbo Codes
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
171 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
modeling the different sections of a space-time coding scheme. Section 4 concludes the paper with fewer discussions.
II. BACKGROUND STUDY
Space-Time Coding (STC) has been studied from early time
and lots of advanced techniques have been proposed for
implementing this communication technique for wireless
systems. This section of the paper discusses the related work
that was earlier proposed in literature for space-time turbo
coding.

Alamouti in [7] proposed a simple two branch diversity
scheme. The diversity created by the transmitter utilizes space
diversity and either time or frequency diversity. Space
diversity is affected by redundantly transmitting over a
plurality of antennas, time diversity is affected by redundantly
transmitting at different times, and frequency diversity is
affected by redundantly transmitting at different frequencies.
The scheme makes use of two transmitter antennas and one
receiver antenna. Even then the proposed scheme provides the
same diversity order as maximal-ratio receiver combining
(MRRC) with one transmit antenna, and two receive antennas.
The principles of this invention are applicable to arrangements
with more than two antennas, (i.e. similarly it was proved) that
the scheme can be generalized to two transmit antennas and M
receive antennas, such that it may provide a diversity order of
2M. The most important advantage of the proposed scheme is
that it does not require any bandwidth expansion or any
feedback from the receiver to the transmitter. Additionally, the
computational complexity of the proposed scheme is very
much similar to MRRC.
Tarokh et al. in [8] described a space-time code that is
applicable for high data rate wireless communications.
Generally it is well known that Space-time coding is a
bandwidth and power efficient method of communication over
fading channels that realizes the remunerations of multiple
transmit antennas. Precise codes have been constructed using
design criteria consequent for quasi-static flat Rayleigh or
Rician fading, where channel state information is accessible at
the receiver. It is apparent that the reasonableness of space-
time codes will be significantly improved if the derived design
criteria continue to be applicable in the absence of perfect
channel state information. It is even more enviable that the
design criteria not be disproportionately sensitive to frequency
selectivity and to the Doppler spread. They presented a
theoretical study of these issues beginning with the effect of
channel estimation error. They also assumed that the channel
estimator extracts fade coefficients at the receiver and for
constellations with constant energy, it is proved that in the
absence of perfect channel state information the design criteria
for space-time codes is still valid. They also derived the
maximum-likelihood detection metric in the presence of
channel estimation errors. They studied the effect of multiple
paths on the performance of space-time codes for a slow
changing Rayleigh channel. It is proved that the presence of
multiple paths does not decrease the diversity order
guaranteed by the design criteria used to construct the space-
time codes.
A new paradigm for communication was introduced by
Tarokh et al. in [9]. They introduced a space-time block
coding, a new paradigm for communication over Rayleigh
fading channels using multiple transmit antennas. Data is
encoded with the aid of a space-time block code and the
encoded data is divide into „n‟ streams which are concurrently
transmitted using „n‟ transmit antennas. The received signal at
each receive antenna is a linear superposition of the „n‟
transmitted signals disconcerted by noise. Maximum-
likelihood decoding was accomplished in an uncomplicated
means through decoupling of the signals transmitted from
different antennas rather than joint detection. This uses the
orthogonal structure of the space-time block code and gives a
maximum-likelihood decoding algorithm which is based only
on linear processing at the receiver. The approach focuses on
achieving the maximum diversity order for a provided number
of transmit and receive antennas subject to the limitation of
having a simple decoding algorithm. The space-time block
code is constructed using the classical mathematical
framework of orthogonal designs. Consequently, a
generalization of orthogonal designs is shown to afford space-
time block codes for both real and complex constellations for
any number of transmit antennas as the code constructed in the
above way exist only for a few sporadic values of „n‟. These
codes realize the greatest possible transmission rate for any
number of transmit antennas using any uninformed real
constellation such as Pulse Amplitude Modulation (PAM).
The best tradeoff between the decoding delay and the number
of transmit antennas was also computed and they showed that
many of the codes presented here are optimal in this sense as
well.
Tarokh et al. in [10] put forth a practical way to illustrate
that the information capacity of wireless communication
systems can be increased dramatically by employing multiple
transmit and receive antennas. An effective approach to
increasing data rate over wireless channels is to employ space-
time coding techniques suitable to multiple transmit antennas.
These space-time codes initiate sequential and spatial
correlation into signals transmitted from different antennas, so
as to provide diversity at the receiver, and coding gain over an
un-coded system. Their proposed approach noticeably reduced
encoding and decoding complexity. This was achieved by
partitioning antennas at the transmitter into small groups, and
using individual space-time codes, called the component
codes, to transmit information from each group of antennas. A
novel linear processing which is capable of suppressing the
signals transmitted by other group of antennas by treating
them as interference was employed at the receive antenna to
decode an individual space-time code. The simple receiver
structure provides the diversity and the coding gain over un-
coded system. This combination of array processing at the
receiver and coding techniques for multiple transmit antennas
can offer steadfast and very high data rate communication
over narrowband wireless channels. A modification of this
fundamental configuration gives rise to a multilayered space-
time structural design that both generalizes and improves upon
the layered space-time architecture.
The performance of space–time block codes which provided
a new standard for transmission over Rayleigh fading channels
using multiple transmit antennas was documented by Tarokh
et al. in [11]. They considered a wireless communication
system with „n‟ antennas at the base station and „m‟ antennas
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
172 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
at the remote. The main purpose of their paper is to estimate
the performance of the space–time block codes constructed
them in their earlier work and to provide the details of the
encoding and decoding procedures. They assumed that
transmission at the base-band employs a signal constellation.
Maximum likelihood decoding of any space–time block code
can be achieved using only linear processing at the receiver.
Figure 1 shows the system block diagram of space-time
coding.

Figure.1. System block diagram of STC Scheme

The information source is encoded using a space–time block
code, and the constellation symbols are transmitted from
different antennas. The receiver estimates the transmitted bits
by using the signals of the received antennas. Their
experimental results revealed the fact that considerable gains
can be achieved by increasing the number of transmit antennas
with very little decoding complexity. In addition there exists a
possibility to concatenate an outer trellis code [12] with the
above space–time block coding to achieve even better
performance. The added coding gain provided by the outer
code is the same as the gain provided by that code on a
Gaussian channel. The decision metrics given in their paper
for the inner space–time block code then can be used as the
branch metrics for the outer trellis code [12]. This improves
the performance at the disbursement of a higher complexity.
Sandhu and paulraj in [13] presented the Space-time block
codes as a remarkable modulation scheme discovered recently
for the multiple antenna wireless channels. They have a well-
designed mathematical solution for providing full diversity
over the coherent, flat-fading channel. In addition, they
necessitate extremely simple encoding and decoding at the
transmit antenna and the receive antenna respectively. They
showed that even though the scheme provided full diversity at
low computational costs the scheme incur a loss in its
capacity. This is because they convert the matrix channel into
a scalar AWGN channel whose capacity is smaller than the
true channel capacity. In their view the loss in capacity is
quantified as a function of channel rank, code rate, and
number of receive antennas.
Telatar in [14] investigated the use of multiple transmitting
and/or receiving antennas for single user communications over
the additive Gaussian channel with and without fading.
Formulas for the capacities and error exponents of such
channels were also derived and evaluated the computation
procedures for those formulas in [14]. Additionally, the paper
also revealed the potential gains of such multi-antenna
systems over single-antenna systems is rather large under
independence assumptions for the fades and noises at different
receiving antennas. A single user Gaussian channel with
multiple transmitting and/or receiving antennas has been taken
into account for deriving the formulas and the computation
procedures. This choice models a Rayleigh fading
environment with enough separation within the receiving
antennas and the transmitting antennas such that the fades for
each transmitting-receiving antenna pair are independent.
Error components provide an answer for the hardness to get
closer to the capacity of the system by giving an upper bound
to the probability of error achievable by block codes of a given
length „n‟ and rate „R‟. The upper bound is known as random
coding bound. The multi-user capacity for this communication
scenario can be evaluated easily by exploiting the nature of the
solution to the single user scenario. The use of multiple
antennas will significantly augment the attainable rates on
fading channels if the channel parameters can be estimated at
the receiver and if the path gains between different antenna
pairs behave independently.
Foschini et al. in [15] presented a paper that was greatly
motivated by the need for fundamental understanding of
ultimate limits of bandwidth efficient delivery of higher bit-
rates in digital wireless communications and to also begin to
look into how these limits might be approached. They
examined the development of multi-element array (MEA)
technology, which is processing the spatial dimension to
improve wireless capacities in certain applications.
Exclusively, they presented a quantity of essential information
theory results that guarantee great advantages of using MEAs
in wireless LANs and building to building wireless
communication links. The case where the channel
characteristics is not available at the transmitter but the
receiver tracks the characteristic which is subject to Rayleigh
fading has been explored in their presented paper. The
capacity offered by MEA technology was revealed by fixing
the over all transmitted power. They investigated the case of
independent Rayleigh faded paths between antenna elements
and find that with high probability extraordinary capacity is
available. Standard approaches such as selection and optimum
combining are seen to be incomplete when compared to what
will eventually be possible. New codecs need to be invented to
comprehend a robust portion of the great capacity promised.

A new point-to-point communication that employs an equal
number of array elements at both the transmitter and the
receiver was described by Foschini in [16]. The architecture is
specially designed for a Rayleigh fading environment in
situations in which the transmitter does not have the
knowledge of the channel characteristic. The architecture is a
method of presenting and processing higher dimensional
signals with the focus of leveraging the highly developed one-
dimensional codec technology. The capacity is achieved in
terms of n equal lower component capacities one for each
antenna at the receiver or at the transmitter. The following
notations and fundamental assumptions should be reviewed
Number of Antennas, transmitted signal, Noise at the
Receiver, Received signal, Average Signal-to-noise ratio
(SNR) at each receive antenna, and matrix channel impulse
response. The random channel model used in their approach is
Rayleigh channel model. It is assumed that the MEA elements
at each end of the communication link are isolated by about
half a wavelength. The complementary capacity distributions
discussed by them mainly concentrates on high-probability
tail. The distribution of capacity was derived from an
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
173 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
ensemble of statistically independent Gaussian matrices. The
central theme of their architecture is interference avoidance
and it assumes that the interfering signals will be nulled out.

Wolniansky et al. in [17] proposed architecture for realizing
very high data rates over the rich scattering wireless channels.
They described a wireless communication architecture known
as vertical BLAST (Bell Laboratories Layered Space-Time) or
V-BLAST. The essential difference between D-BLAST and
V-BLAST lies in the vector encoding process. In V-BLAST,
however, the vector encoding progression is basically a de-
multiplex operation followed by independent bit-to-symbol
mapping of each substream. No inter-substream coding, or
coding of any kind, is required, nevertheless conventional
coding of the individual substreams may undoubtedly be
applied. V-BLAST is essentially a single-user system which
uses multiple transmitters. The following advantages of the
BLAST system differs it from other conventional multiple
access techniques in a single user fashion. The total channel
bandwidth utilized in the BLAST system is only a small
fraction in excess of the symbol rate, each transmitted signal
occupies the entire system bandwidth, and the entire system
bandwidth is used concurrently by all of the transmitters all of
the time. V-BLAST utilizes a combination of old and new
detection techniques to separate the signals in an efficient
manner, permitting operation at significant fractions of the
Shannon capacity and achieving large spectral efficiencies in
the process. One way to execute detection for this system is by
using conventional adaptive antenna array (AAA) techniques,
i.e. linear combinatorial nulling. Superior performance can be
achieved by using non-linear technique rather than a linear
technique for detection of this system.
Golden et al. in [18] formulated a detection algorithm using
V-BLAST space-time communication architecture. They
described a simplified version of the BLAST detection
algorithm, known as vertical BLAST, or V-BLAST, which has
been implemented in real time in the laboratory. The detection
process uses linear combinatorial nulling and symbol
cancellation for computation. The V-BLAST system diagram
is shown in the Figure 2.


Figure.2 System Block diagram of V-BLAST Scheme

For simplicity in the sequel, they assumed that the same
constellation is used for each component, and that
transmissions are organized into bursts of L symbols. The
power launched by each transmitter is proportional to 1/M so
that the total radiated power is constant and independent of M,
where M indicates the total number of QAM transmitters that
operate co-channel at symbol rate 1/T symbols, with
synchronized symbol timing. The receivers also operate co-
channel, each receiving the signals radiated from all M
transmit antennas. All their results were obtained in a short-
range indoor environment with negligible delay spread.
A low density parity check codes for space application was
designed and standardized by Andrews et al. in [19]. Their
paper described recent activities in the next generation of FEC
code development and standardization, which has
concentrated on low-density parity-check (LDPC) codes.
These codes also achieve excellent performance, within about
1 dB of the Shannon limit. Bandwidth efficiency is largely
achieved through modulation design, but it affects code
selection through the code rate. Decoders for LDPC codes use
a message-passing algorithm based on the Tanner graph. A
simple computation is performed at each variable node to
compute soft code symbol estimates, these estimates are
passed as messages to the check nodes where more simple
computations are performed to compute correction terms, and
these correction terms are passed back to the variable nodes.
Modern turbo and LDPC codes considerably outperform
traditional Reed-Solomon, convolutional, and other codes, and
specific codes have been optimized for the constraints of
spacecraft use.
Burr in [20] considered the application of space-time
processing techniques using multiple antennas to third
generation mobile communication systems, which have been
shown to enable substantial capacity improvements. A
technique was described for the evaluation of such schemes
and apply it to some potential applications of the technique
within the current third generation standards. The application
also included a simple technique which can provide a 16th
order diversity improvement, resulting in a 10 dB performance
improvement. Both the dependence of the capacity on the
radio environment, and the requirements of signal design for
these channels were considered. These applications can be
implemented to third generation mobile communication
systems to enable substantial capacity improvements. Multi-
user detection is also important to provide a good signal to
noise ratio.
Silva et al. in [21] put forth a frequency domain receiver for
rate 1 space-time block codes. Their paper considers iterative
frequency-domain receivers for block transmission techniques
with rate-1 Space Time Block Coding (STBC) for two and
four transmit antennas using both Orthogonal Frequency
Division Multiplexing (OFDM) and Single-Carrier (SC)
schemes. Their proposed receiver includes an interference
canceller which enhances the performance of the non-
orthogonal STBC scheme with 4 transmit antennas, allowing
performances close to those of orthogonal codes. Additionally
their performance results show that combining STBC with
block transmission techniques allows excellent performances.
Unitary space-time modulation scheme was proposed by
Hochwald et al. in [22]. They proposed a signaling scheme,
unitary space-time modulation, for multiple-antenna
communication links. This modulation is preferably
appropriate for Rayleigh fast-fading environments, since it
does not necessitate the receiver to know or learn the
propagation coefficients. Unitary space-time modulation uses
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
174 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
constellations of T×M space-time signals where T represents
the coherence interval during which the fading is
approximately constant and M<T is the number of transmitter
antennas. When the receiver does not know the propagation
coefficients, which between pairs of transmitter and receiver
antennas are modeled as statistically independent, this
modulation performs very well when the signal-to-noise ratio
(SNR) is high. They designed some multiple-antenna signal
constellations and simulated their effectiveness as measured
by bit-error probability with maximum-likelihood decoding.

A quasi random approach for to space-time codes was
described by Wu et al. in [23]. The fundamental principle is to
transmit randomly interleaved versions of forward error
correction (FEC)-coded sequences concurrently from all
antennas in a multilayer structure. In their proposed paper they
provided a comprehensive study for the interleave-division-
multiplexing space–time (IDM-ST) scheme. Additionally they
developed a technique evaluating the signal-to-noise ratio
(SNR) that is closely related to the extrinsic information
transfer (EXIT) chart method. They examined quite a lot of
power allocation strategies to maximize power efficiency as
well as spectral efficiency using the fast performance
assessment technique. They developed an equalization
technique for IDM-ST codes in ISI channels following the
linear minimum mean square error (LMMSE) and
probabilistic data association (PDA) principles. This technique
provides a simple, fast, and relatively accurate technique for
performance evaluation.

Baro et al. in [24] put forth an approach for improving the
performance of BLAST. The error propagation limits the
practical implementation of BLAST architecture. The
theoretically possible increase in diversity level during
successive detection steps cannot be achieved. They evaluated
the possibilities to improve the performance of the earlier
proposed BLAST system. They initially analyzed an MMSE
solution compared to zero forcing. Besides, they had showed
the benefits of soft over hard interference cancellation and
proposed an iterative turbo detection algorithm. As a final
point, they employed transmit diversity with space-time block
codes to BLAST. This improves the overall diversity level and
reduces the number of required receive antennas.

Al-Dhahir et al. in [25] presented an overview of research
activities on space-time coding for broadband wireless
transmission performed at AT&T Shannon Laboratory over
the past two years. Their primary emphasis is on physical
layer modem algorithms such as channel estimation,
equalization, and interference cancellation. On the other hand,
they also discussed the collision of space-time coding gains at
the physical layer on throughput at or above the networking
layer. In addition, they also described a flexible graphical user
interface attached to our physical layer simulation engine in
order to investigate the performance of space-time codes
under an assortment of practical transmission scenarios. Their
work also presented the simulation results for the EDGE
cellular system and the 802.11 wireless Local Area Network
(LAN) environments.

A recursive space-time trellis codes was projected by Fu et
al. in [27] using differential encoding. In their paper, they also
revealed their interest in pursuing large diversity product
space–time codes. The major difference between the above
systematic scheme and the traditional scheme is that the states
in their scheme are generated by a non-group unitary space–
time code (USTC) while the states in the latter are from a
group USTC itself and a group USTC limits the number of
states and its diversity product that may affect the inner code
performance. They proposed a new USTC design criterion to
ensure that the trellis structure improves the diversity product
over the USTC as a block code. They put forth a new class of
USTC design for an arbitrary number of transmit antennas that
has an analytical diversity product formula for two transmit
antennas.
III. FUTURE ENHANCEMENT
This section of the paper explains further improvements of
the earlier approaches in modeling the different sections of a
space-time coding scheme. The future works rely on studying
the code and analyze it using the metrics developed in [8]. The
experiments may be carried out on different receive antenna
configuration. The space-time code may be analyzed and
simulated by implementing viterbi decoder with soft decoding
in a multi-antenna scenario. The performance of the linear
receivers like Zero Forcing (ZF) receiver, Minimum Mean
Squared Error (MMSE) receiver, will analyzed for space-time
coding. Finally, the future work may focus on successive
interference cancellation receiver known as Vertical Bell
Laboratories Layered Space-Time Architecture (V-BLAST).
The performance of V-BLAST receiver may be analyzed by
comparing it with other linear receivers. Spatial multiplexing
techniques send independent data streams on different transmit
antennas to maximally exploit the capacity of multiple-input
multiple-output (MIMO) fading channels. Most existing
multiplexing techniques are based on an idealized MIMO
channel model representing a rich scattering environment.
Simulations for both space-time coding and spatial
multiplexing [28] will be done using Monte Carlo method via
Lab View. The channel model will be assumed to be a
Rayleigh fading model and will be constant over a block of
symbols. The performance of the space-time coding can be
evaluated under different antenna configurations.
IV. CONCLUSION
Space-time coding (STC) is a technique for wireless
systems that reside in multiple transmit antennas and single or
multiple receive antennas. Most of the proposed space-time
codes were mainly based on trellis codes or orthogonal block
codes. This proposed paper provides an over view on a variety
of techniques used for the design of space-time turbo codes. In
addition the future enhancement gives a wide-ranging
suggestion for improvement and development of a range of
codes which will involve implementing viterbi decoder with
soft decoding in a multi-antenna scenario. In addition the
space-time code may be analyzed using some of the available
metrics and finally to simulate it for different receive antenna
configurations. In addition the space-time code may be
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
175 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
analyzed using some of the available metrics and finally to
simulate it for different receive antenna configurations.
REFERENCES
[1] D. J. Divsalar and F. Pollara, “Turbo trellis coded
modulation with iterative decoding for mobile satellite
communications,” in IMSC 97, June 1997.
[2] J. C. Guey, M. P. Fitz, M. R. Bell, and W. Y. Kuo,
“Signal design for transmitter diversity wireless
communication systems over Rayleigh fading channels,”
in Proceedings of IEEE Vehicular Technology
Conference, vol. 1, pp. 136-140, 1997.
[3] V. Tarokh, N. Seshadri, and A. R. Calderbank, “Space-
time codes for high data rate wireless communication:
performance criterion and code construction,” IEEE
Transactions on Information Theory, vol. 44, no. 2, pp.
744-765, March 1998.
[4] M. P. Fitz, J. Grimm, and S. Siwamogsatham, “A new
view of performance analysis techniques in correlated
Rayleigh fading,” in IEEE WCNC, September 1999.
[5] A. Naguib, V. Tarokh, N. Seshadri, and A. R. Calderbank,
“A Space-Time Coding Modem for High-Data-Rate
Wireless Communications,” IEEE Journal on Selected
Areas in Communications , vol. 16, no. 8, pp. 1459–1477,
October 1998.
[6] I. Telatar, “Capacity of Multi-Antenna Gaussian
Channels,” European Transaction on Telecommunication,
pp. 585–95, November 1999.
[7] S. M. Alamouti, “A simple transmit diversity technique
for wireless communications,” IEEE Journal on Selected
Areas in Communications, vol. 16, no. 8, pp. 1451-1458,
1998.
[8] V. Tarokh, A. Naguib, N. Seshadri, and A. R. Calderbank,
“Space-time codes for high data rate wireless
communication: performance criteria in the presence of
channel estimation errors, mobility, and multiple paths,”
IEEE Transactions on Communications, vol. 47, no. 2, pp.
199-207, Feb 1999.
[9] V. Tarokh, H. Jafarkhani, and A. R. Calderbank, “Space-
time block codes from orthogonal designs,” IEEE
Transactions on Information Theory, vol. 45, no. 5, pp.
1456-1467, 1999.
[10] V. Tarokh, A. Naguib, N. Seshadri, and A. R. Calderbank,
“Combined array processing and space-time coding,”
IEEE Transactions on Information Theory, vol. 45, no. 4,
pp. 1121-1128, May 1999.
[11] Vahid Tarokh, Hamid Jafarkhani, and A. Robert
Calderbank, “Space–Time Block Coding for Wireless
Communications: Performance Results,” IEEE Journal on
Selected Areas in Communications, vol. 17, no. 3, pp.
451-460, 1999.
[12] S. M. Alamouti, V. Tarokh, and P. Poon, “Trellis coded
modulation and transmit diversity: Design criteria and
performance evaluation,” in Proceedings of IEEE ICUPC
98, pp. 703–707, Oct. 1998.
[13] S. Sandhu, and A. Paulraj, “Space-time block codes: a
capacity perspective,” IEEE Communications Letters, vol.
4, no. 12, pp. 384-386, 2000.
[14] I. Emre Telatar, “Capacity of Multi-Antenna Gaussian
Channels,” Technical Report No. BL0112170950615-
07TM, AT&T Bell Laboratories, 1995.
[15] G. J. Foschini, and M. J. Gans, “On Limits of Wireless
Communications in a Fading Environment when Using
Multiple Antennas,” An International Journal on Wireless
Personal Communications, vol. 6, no. 3, pp. 311-335,
1998.
[16] G. J. Foschini, “Layered Space-time Architecture for
Wireless Communication in a Fading Environment when
using Multi-Element Antenna,” Bell Labs Technical
Journal, pp. 41-59, 1996.
[17] P. W. Wolniansky, G. J. Foschini, G. D. Golden, and R.
A. Valenzuela, “V-BLAST: An Architecture for Realizing
Very High Data Rates Over the Rich-Scattering Wireless
Channel,” in Proceedings of IEEE ISSSE-98, September
1998.
[18] G.D. Golden, C.J. Foschini, R.A. Valenzuela and P.W.
Wolniansky, “Detection algorithm and initial laboratory
results using V-BLAST space-time communication
architecture,” IEEE Letters, vol. 35, no. 1, pp. 14-16,
1999.
[19] Kenneth Andrews, Dariush Divsalar, Sam Dolinar, Jon
Hamkins, and Fabrizio Pollara, “Design and
Standardization of Low-Density Parity-Check Codes for
Space Applications,” American Institute of Aeronautics
and Astronautics, 2008.
[20] A. G. Burr, “Application of space-time coding techniques
in third generation systems,” First International
Conference on (Conf. Publ. No. 471) 3G Mobile
Communication Technologies, 2000.
[21] Mário Marques da Silva,Rui Dinis, and M. C. Correia,
“Frequency-Domain Receivers for Rate-1 Space-Time
Block Codes,” International Journal of Communications,
Network and System Sciences, 2006.
[22] B. M. Hochwald, and T. L. Marzetta, “Unitary space-time
modulation for multiple-antenna communications in
Rayleigh flat fading,” IEEE Transactions on Information
Theory, vol. 46, no. 2, pp. 543-564, March 2000.
[23] Keying Wu and Li Ping, “A Quasi-Random Approach to
Space–Time Codes,” IEEE Transactions on Information
theory, vol. 54, no. 3, pp. 1073-1085, 2008.
[24] S. Baro, G. Bauch, A. Pavlic, and A. Semmler,
“Improving BLAST performance using space-time block
codes and turbo decoding,” IEEE Global
Telecommunications Conference, vol. 2, pp. 1067-1071,
2000.
[25] N. Al-Dhahir, C. Fragouli, A. Stamoulis, W. Younis, and
R. Calderbank, “Space-time processing for broadband
wireless access,” Communications Magazine, IEEE, vol.
40, no. 9. pp. 136-142, 2002.
[26] HTTP://WWW.ece.utexas.edu/~wireless.
[27] Shengli Fu, Xiang-Gen Xia, and Haiquan Wang,
“Recursive Space–Time Trellis Codes Using Differential
Encoding,” IEEE Transactions on Information Theory,
vol. 55, no. 2, pp. 531-546, 2009.
[28] D. A. Gore, R. W. Heath, and A. J. Paulraj, “Performance
Analysis of Spatial Multiplexing in Correlated Channels,”
Submitted to Communications, IEEE Transactions, March
2002.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
176 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Dr. C. V. Seshaiah received his M.Sc., in
Mathematics from S. V. University, Tirupati,
Andhra Pradesh, in the year 1982. He
obtained his Ph.D., in Mathematics from
Bhavnagar University, Gujarat, in the year
1990. Currently, he is working as a professor
and the Head of the Department
(Mathematics) in Sri Ramakrishna Engineering College,
Coimbatore, and Tamilnadu. He has a total of 24 years work
experience. His areas of interest include general theory of
relativity, mathematical statistics, and commutative algebra.
He has published eight research papers in national and
international journals. He had published two books on
engineering mathematics. He has presented five papers in
national and international seminars held at various institutions.

S. Nagarani received her B.Sc., and M.Sc., in
Mathematics from Avinashilingam Deemed
University, Coimbatore, and Government
Arts College affiliated to Bharathiar
University, Coimbatore, in the year 1994 and
1996 respectively. She received her M.Phil.,
in Fluid Dynamics from Bharathiar
University, Coimbatore in 1998. Currently, she is pursuing her
Ph.D., in Anna University, Coimbatore, and Tamilnadu. She
has a work experience of 12 years. At present she is working
as a senior lecturer in the department of Mathematics. She has
published papers in national and international journals. She
has participated and presented research papers in various
national and international seminars and conferences. She has
been one of the reviewers of Engineering Mathematics book
for Pearson‟s Publications.



(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
177 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

Mathematical Principles in Software Quality Engineering
Dr.Manoranjan Kumar Singh
PG Department of Mathematics
Magadh University
Bodhagaya - 823001, India
drmksingh_gaya@yahoo.com
Rakesh.L
Department of Computer-Science
S.C.T. Institute of Technology
Bangalore - 560075, India
rakeshsct@yahoo.co.in



Abstract— Mathematics has many useful properties for
developing of complex software systems. One is that it can exactly
describe a physical situation of the object or outcome of an
action. Mathematics support abstraction and this is an excellent
medium for modeling, since it is an exact medium there is a little
possibility of ambiguity. This paper demonstrates that
mathematics provides a high level of validation when it is used as
a software medium. It also outlines distinguishing characteristics
of structural testing which is based on the source code of the
program tested. Structural testing methods are very amenable to
rigorous definition, mathematical analysis and precise
measurement. Finally, it also discusses functional and structural
testing debate to have a sense of complete testing. Any program
can be considered to be a function in the sense that program
input forms its domain and program outputs form its range. In
general discrete mathematics is more applicable to functional
testing, while graph theory pertains more to structural testing.

Keywords— Propositional logic, Graph theory, Validation, Fault.

I. INTRODUCTION

Software testing is one element of broader topic that is often
referred to as verification and validation. Verification refers to
the set of activities that ensure that software correctly
implements a specific function. Verification methods ensure
the system complies with an organization standards and
processes, relying on review or non executable methods.
Validation physically ensures that the system operates
according to plan by executing the system functions through a
series of tests that can be observed and evaluated. The
advantage of mathematics is that it allows rigorous analysis
and avoids an overreliance on intuition. Mathematics provides
precise unambiguous statements and the mathematical proof
of a theorem provides a high degree of confidence in its
correctness. The emphasis is on mathematics that can be
applied rather than mathematics for its own sake. The
engineering approach aims to show how mathematics can be
used to solve practical problems. The engineer applies
mathematics and models to the design of the product and the
analysis of the design is a mathematical activity. The use of
mathematics will enable the software engineer to produce high
quality products that are safe to use. The mathematics required
by engineers include set theory, relations, functions, logics



related to mathematics, tabular expressions, matrix theory,
propositional logic, graph theory, finite state automata,
calculus and probability theory. In general discrete
mathematics is more applicable to functional testing, while
graph theory pertains to structural testing. More than any other
software life cycle activity testing lends itself to mathematical
description and analysis. Testing of software is a means of
measuring or assessing the software to determine its quality.
Testing does provide the last bastion from which quality can
be assessed and, more programmatically, errors can be
uncovered [1]. But testing should not be viewed as a safety
net. As experts say, “you can’t test in quality. If it’s not there
before you begin testing, it won’t be there when you’re
finished testing”. Quality is incorporated into software
throughout the process of software engineering. Miller relates
software testing to quality assurance by stating that “the
underlying motivation of program testing is to affirm software
quality with methods that can be economically and effectively
applied to both large scale and small scale systems” [8].
Verification and validation techniques can be applied to every
element of the computerized system. Verification and
Validation encompasses a wide array of software quality
assurance activity that include formal technical reviews,
quality and configuration audits, performance monitoring,
simulation, feasibility study, documentation review, database
review, algorithm analysis, development testing, usability
testing, qualification testing and installation testing. The two
broad categories of testing, functional testing and structural
testing. Functional testing is sometimes called black box
testing because no knowledge of the internal logic of the
system is used to develop test cases. Structural testing is
sometimes called white box testing because knowledge of the
internal logic of the system is used to develop hypothetical
test cases. Structural test uses verification predominantly. The
properties that the test set is to reflect are classified according
to whether they are derived from a description of the program
function or from the program internal logic. Black box and
white box testing exists from the definition. The paper is
organized into different sections primarily focusing on the
importance of discrete mathematics in verification and
validation activity, testing life cycle, discrete math and its
implication in identifying and analyzing test cases and making
useful progression through results and conclusion.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
178 http://sites.google.com/site/ijcsis/
ISSN 1947-5500

II. DISCRETE MATH FOR TESTING


A. Set Theory

The essence of software testing is to determine a set of test
cases for the item to be tested. Set is a collection of well
defined objects that contains no duplicates. For example, the
set of natural numbers N is an infinite set consisting of the
numbers 1, 2... and so on. Most sets encountered in computer
science are finite as computers can only deal with finite
entities. Set theory is a fundamental building of mathematics,
Venn diagrams are often employed to give pictorial
representation of a set and the various set operations. The two
important variation of set are naive versus axiomatic set
theory. In naive set theory, set is recognised as a primitive
term, much like point and line which are primitive concept in
geometry. Some of the synonyms for set are collection, group,
bunch or a whole, for example instance we might wish to refer
to the set of months that have exactly 30 days. In set notation
it is represented as,

M1 = {April, June, September, November} (1)

We read this notation as “M1 is the set whose elements are the
Months April, June, September, and November”. Sets are
commonly pictured by Venn diagrams. In Venn diagrams, a
set is depicted as a circle and points in the interior of the circle
corresponds to elements of the set. Then, we might draw our
set M1 of 30 day months as in Fig. 1.













Fig. 1 Venn diagram for the set of 30 day Month

Venn diagrams communicate various set relationships in an
intuitive way. Testing is fundamentally concerned with
behaviour, and behaviour is orthogonal to the structural view
common to software engineers. A quick differentiation is that
structural view focuses on what it is and the behavioural view
considers what it does. In this section we developed a simple
Venn diagram that clarifies several nagging questions and is a
useful mathematical tool for testing for graphical analysis.






B. Graph Theory

Graph theory is a branch of topology that is sometimes as
rubber sheet geometry. Curious, because rubber sheet parts of
topology have little to do with graph theory. Furthermore
graphs in the graph theory do not involve axes, scales, points,
and curves as we might expect. Whatever the origin of the
term, graph theory is probably the most useful part of
mathematics for computer science. A graph also known as
linear graph is an abstract mathematical structure defined from
two, a set of nodes and set of edges that set form connections
between nodes. A computer network is a fine example of a
graph. A graph G = (V, E) is composed of a finite (and non
empty set) V of nodes and a set E of unordered pairs of nodes.

V = {n
1
, n
2
, ..., n
m
},
and
E = {e
1
, e
2
, ..., e
p
} (2)

Where each edge e
k =
{n
i,
n
j
} for some nodes n
i
, n
j
є V. From
set theory the set {n
i,
n
j
} is an unordered pair, which we
sometimes write as {n
i,
n
j
}. Nodes are sometimes called
vertices and edges are sometimes called arcs and we
sometimes call nodes the end points of an arc. The common
visual form of a graph shows nodes as circles and edges as
lines connecting pair of nodes. To define a particular graph,
we must first define a set of nodes and then define a set of
edges between pairs of nodes. We usually think of nodes as
program statements and we have various kinds of edges,
representing, for instance, flow of control or define /use
relations. The important property of graph which has deep
implications for testing is cyclomatic complexity. The
cyclomatic number of a graph is given by

V (G) = e – n + p, where

E is the number of edges in G, N is the number of nodes in G,
P is the number of components in G,V (G) is the number
distinct regions in a graph.

One formulation of structural testing postulates the notion of
basis paths in a program and shows that the cyclomatic
number of a program graph is the number of these basis
elements. There are four special graphs that are used for
software verification. The first of these, the program graph,
used primarily at the unit testing level. The other three, finite
state machines, state charts, and petri nets are best used to
describe system level behaviour, although they can be used at
lower levels of testing. Program graph which is quite popular
in testing can be defined as given a program written in an
imperative programming language, its program graph is a

U
April
June
September
November

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
179 http://sites.google.com/site/ijcsis/
ISSN 1947-5500



directed graph in which, Nodes are programme statements,
and edges represent flow of control, there is an edge from
node i to node j if the statement corresponding to node j can be
executed immediately after the statement corresponding to
node i. In the graph in Figure 2 the node and edge set are:

V= {n
1,
n
2,
n
3,
n
4,
n
5,
n
6,
n
7
}

E= {e
1,
e
2,
e
3,
e
4,
e
5,
e
6,
e
7
}

= {(n
1
, n
2
), (n
1
, n
2
), (n
1
, n
4
), (n
3
, n
4
), (n
2
, n
5
), (n
4,
n
6
)} (3)


















The directed graph formulation of program enables a very
precise description of testing aspects of program. For one
thing, a very satisfying connection exists between this
formulation and the precepts of structured programming. The
basic structured programming constructs sequence, selection,
repetition all have a clear, directed graph [6]. When these
constructs are used in structured program, the corresponding
graphs are either nested or concatenated. The single entrance
and single exit criteria result in unique source and sink nodes
in the program graph. In fact, the old non structured “spaghetti
code” resulted in very complex program graphs. GOTO
statement, for example introduces edges and when these are
used to branch into or out of loops, the resulting program
graphs become even more complex.

One of the pioneering analysts of this is Thomas McCabe,
who popularised the cyclomatic number of a graph as an
indicator of program complexity (McCabe 1976). When
program executes, the statement that execute comprise a path
in the program graph. Loops and decision greatly increase the
number of possible paths and therefore similarly increase the
need for testing.






C. Propositional Logic

Propositional logic are concerned with propositional operators
which may be applied to one or more propositions giving new
propositions. A propositional variable is used to stand for a
proposition , let P stand for the proposition ‘2 + 2 = 4’which is
true and propositional variable can take either true or false.
Each propositional variable has two possible values, and a
formula with n-propositional variables has 2
n
values
associated with the propositional variables. The set of values
associated with the n variables may be used to derive truth
table with 2
n
rows and n + 1 columns. Each row gives each of
2
n

values that the n variables may take and the column n + 1
gives the result of the logical expression for that set of values
of the propositional variable. Propositional logic allows further
truth to be derived by logical reasoning or rules of inference.
These rules enable new propositions to be deduced from a set
of existing propositions provided that the rules of inference for
the logic are followed. A valid argument or deduction is truth
preserving i.e., if the set of propositions is true then the
deduced proposition will also be true. It has also been applied
to computer science and the term Boolean algebra is named
after the English mathematician ‘George Boole’. Boole was
the first professor of mathematics at Queens College, Cork in
mid 19
th
century and he formalized the laws of propositional
logic that are foundation for modern computers. Boolean
algebra is widely used in programs for example, the Boolean
condition in an if then else statement determines whether
particular statement will be executed or not. Similarly, the
Boolean condition in a while or for loop will determine if the
statement in the body of the loop will be executed. Set theory,
graph theory and propositional logic have chicken-and-egg
relationship.A propositional logic expression can be viewed as
composed of set of N elements, a truth function from N inputs
to one output, a one-to-one correspondence between the N
elements and the N inputs. For instance the expression:

((a & c) | (b & ~e)) = => ((c | m) < = = > (m & e))

Can be viewed as composed of a set of a 5 elements:
{a, b, c, e, m}

A truth function f (x
1
,x
2,
x
3
, x
4
, x
5
) :
f ( x
1,
x
2,
x
3
, x
4
, x
5
) = ( (x
1
&
,
x
2
) | (x
3
& ~x
4
) = = >
(( x
2
| x
5
) < = = > (x
5 &
x
4
) (4)

And one-to-one correspondence can be written as :

{( a, x
1
), (b, x
3
), (c, x
3
), (e, x
4
), (m, x
5
) } (5)

The resulting expression can be represented graphically.



n1
n 2
n 3
n 4
n 5
n6
n 7
E1
E4
E2
E3
E5
Fig.2 A graph with seven nodes and five edges
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 3, March 2010
180 http://sites.google.com/site/ijcsis/
ISSN 1947-5500


III. A TESTING LIFE CYCLE

Much of the testing literature is mired in confusing
terminology, probably because testing technology evolved
over decades. The following terminology is taken from
standards developed from the institute of Electronics and
Electrical Engineers (IEEE) Computer Society [3].

Error: People make errors. A good synonym is mistake.
When people make mistakes during coding, we call these
mistakes bugs. Errors tend to propagate, a requirements error
may be magnified during design and amplified still more
during coding.

Fault: A fault is the result of an error.It is more precise to say
that fault is the representation of an error. Defect is a good
synonym for fault, as is bug. Faults can be elusive.

Failure: A failure occurs when a fault executes. Two
subtleties arise here, one is that failures only occur in an
executable representation, which is usually taken to be source
code or more precisely loaded object code. The second
subtlety is this definition relates failures only to faults of
commission and not faults of omission. Also, there are faults
that never happen to execute, or perhaps do not execute for a
long time. The Michelangelo virus is an example of such a
fault. It does not execute until Michelangelo’s birthday, March
6th. Reviews prevent many failures by finding fault.

Incident: When failure occurs, it may or may not be readily
apparent to user. An incident is the symptom