International Journal of Computer Science and Information Security Volume 7
International Journal of Computer Science and Information Security (IJCSIS), launched in May 2009, provides a major venue for rapid publication of high quality research in the field of computer science and emerging technologies. IJCSIS continues to attract the attention of Scientists and Researchers across the work. This has only been possible due to large number of high quality submissions and valued efforts of the reviewers. In this February 2010 issue, we present selected publications (with acceptance rate of ~ 29%) in the diverse area of pure and applied computer science, networking, information retrieval, information systems, emerging communication technologies and information security. The editorial board and technical review committee contain some of the most renowned specialists in their areas of expertise. We are very grateful to all the authors who have submitted such high quality work to the Journal and the reviewers for dealing with the manuscripts so quickly. Special thanks to our technical sponsors for their valuable service. Available at http://sites.google.com/site/ijcsis/

IJCSIS Vol. 7 No. 2, February 2010
ISSN 1947-5500
International Journal of
Computer Science
& Information Security
© IJCSIS PUBLICATION 2010
IJCSIS Editorial
Message from Managing Editor
International Journal of Computer Science and Information Security (IJCSIS),
launched in May 2009, provides a major venue for rapid publication of high
quality research in the field of computer science and emerging technologies.
IJCSIS continues to attract the attention of Scientists and Researchers across
the work. This has only been possible due to large number of high quality
submissions and valued efforts of the reviewers.
In this February 2010 issue, we present selected publications (with acceptance
rate of ~ 29%) in the diverse area of pure and applied computer science,
networking, information retrieval, information systems, emerging
communication technologies and information security.
The editorial board and technical review committee contain some of the most
renowned specialists in their areas of expertise. We are very grateful to all the
authors who have submitted such high quality work to the Journal and the
reviewers for dealing with the manuscripts so quickly. Special thanks to our
technical sponsors for their valuable service.
Available at http://sites.google.com/site/ijcsis/
IJCSIS Vol. 7, No. 2,
February 2010 Edition
ISSN 1947-5500
© IJCSIS 2010, USA.
Indexed by (among others):
IJCSIS EDITORIAL BOARD
Dr. Gregorio Martinez Perez
Associate Professor - Professor Titular de Universidad, University of Murcia
(UMU), Spain
Dr. M. Emre Celebi,
Assistant Professor, Department of Computer Science, Louisiana State University
in Shreveport, USA
Dr. Yong Li
School of Electronic and Information Engineering, Beijing Jiaotong University,
P. R. China
Prof. Hamid Reza Naji
Department of Computer Enigneering, Shahid Beheshti University, Tehran, Iran
Dr. Sanjay Jasola
Professor and Dean, School of Information and Communication Technology,
Gautam Buddha University
Dr Riktesh Srivastava
Assistant Professor, Information Systems, Skyline University College, University
City of Sharjah, Sharjah, PO 1797, UAE
Dr. Siddhivinayak Kulkarni
University of Ballarat, Ballarat, Victoria, Australia
Professor (Dr) Mokhtar Beldjehem
Sainte-Anne University, Halifax, NS, Canada
Dr. Alex Pappachen James, (Research Fellow)
Queensland Micro-nanotechnology center, Griffith University, Australia
TABLE OF CONTENTS
1. Paper 31011070: Securing Iris Templates using Combined User and Soft Biometric based
Password Hardened Fuzzy Vault (pp. 001-008)
V. S. Meenakshi, SNR Sons College, Coimbatore, Tamil Nadu, India.
Dr. G. Padmavathi, Avinashilingam University for Women, Coimbatore, Tamil Nadu, India.
2. Paper 07011059: A New Clustering Approach based on Page's Path Similarity for Navigation
Patterns Mining (pp. 009-014)
Heidar Mamosian, Department of Computer Engineering, Science and Research Branch, Islamic Azad
University (IAU), Khouzestan, Iran
Amir Masoud Rahmani, Department of Computer Engineering, Science and Research Branch, Islamic
Azad University (IAU),Tehran, Iran
Mashalla Abbasi Dezfouli, Department of Computer Engineering, Science and Research Branch, Islamic
Azad University (IAU), Khouzestan, Iran
3. Paper 11011004: Implementing New-age Authentication Techniques using OpenID for Security
Automation (pp. 015-021)
Dharmendra Choukse, Institute of Engineering & Science, IPS Academy, Indore, India
Umesh Kumar Singh, Institute of Computer Science, Vikram University, Ujjain, India
Deepak Sukheja, Priyatam Institute of Technology and Management .Indore, India
Rekha Shahapurkar, Lokmanya Tilak College,Vikram University,Ujjain, India
4. Paper 12011009: Ontology Based Query Expansion Using Word Sense Disambiguation (pp. 022-
027)
M. Barathi, Department of Computer Applications, S. M. K. Fomra Institute of Technology, Chennai, India
S. Valli, Department of Computer Science and Engineering, Anna University, Chennai, India
5. Paper 15120915: Secured Cryptographic Key Generation From Multimodal Biometrics: Feature
Level Fusion of Fingerprint and Iris (pp. 028-037)
A. Jagadeesan, Research scholar / Senior Lecturer/EIE, Bannari Amman Institute of Technology,
Sathyamangalam-638 401, Tamil Nadu, India
Dr. K. Duraiswamy, Dean/Academic, K.S.Rangasamy College of Technology, Tiruchengode – 637 209,
Tamil Nadu, India
6. Paper 20011017: The Comparison of Methods Artificial Neural Network with Linear Regression
Using Specific Variables for Prediction Stock Price in Tehran Stock Exchange (pp. 038-046)
Reza Gharoie Ahangar, The master of business administration of Islamic Azad University - Babol branch
& Membership of young researcher club, Iran.
Mahmood Yahyazadehfar, Associate Professor of Finance, University of Mazandaran, Babolsar, Iran
Hassan Pournaghshband, Professor of Computer Science Department, Southern Polytechnic State
University
7. Paper 21011018: A Methodology for Empirical Quality Assessment of Object-Oriented Design (pp.
047-055)
Devpriya Soni, Department of Computer Applications, Maulana Azad National Institute of Technology (A
Deemed University)Bhopal 462007, India
Dr. Namita Shrivastava, Asst. Prof. Deptt. of Mathematics, Maulana Azad National Institute of Technology
(A Deemed University)Bhopal 462007, India
Dr. M. Kumar, Retd. Prof. of Computer Applications, Maulana Azad National Institute of Technology (A
Deemed University)Bhopal 462007, India
8. Paper 22011020: A Computational Algorithm based on Empirical Analysis, that Composes
Sanskrit Poetry (pp. 056-062)
Rama N., Department of Computer Science, Presidency College, Chennai, India
Meenakshi Lakshmanan, Department of Computer Science, Meenakshi College for Women
Chennai, India and Research Scholar, Mother Teresa Women’s University Kodaikanal, India
9. Paper 22011021: Survey Report – State Of The Art In Digital Steganography Focusing ASCII
Text Documents (pp. 063-072)
Khan Farhan Rafat, Department of Computer Science, International Islamic University, Islamabad,
Pakistan
Muhammad Sher, Department of Computer Science, International Islamic University, Islamabad, Pakistan
10. Paper 25011023: New clustering method to decrease probability of failure nodes and increasing
the lifetime in WSNs (pp. 073-076)
Shahram Babaie, Department of Computer Engineering, PhD students, Islamic Azad University, Olom VA
Tahghighat Branch, Tehran, Iran
Ahmad Khadem Zade, Department of Computer Engineering, Iran Telecommunication Research Center,
Tehran, Iran
Ali Hosseinalipour, Department of Computer Engineering, Islamic Azad University- Tabriz Branch, Tabriz
Iran
11. Paper 25011025: Comments on “Routh Stability Criterion” (pp. 077-078)
T. D. Roopamala, Assistant Professor, Sri Jayachamarajendra college of Engineering
S. K. Katti, Professor, Sri Jayachamarajendra college of Engineering
12. Paper 27011026: Concurrent Approach to Flynn’s SPMD Classification through Java (pp. 079-
081)
Bala Dhandayuthapani Veerasamy, Department of Computing, Mekelle University, Mekelle, Ethiopia
13. Paper 27011028: Multi-objective Geometric Programming Problem With Weighted Mean
Method (pp. 082-086)
A. K. Ojha, School of Basic Sciences, IIT Bhubaneswar, Orissa, Pin-751013, India Bhubaneswar-751014,
India
K. K. Biswal, Department of Mathematics, C.T.T.C, Bhubaneswar - 751021, Orissa, India
14. Paper 28011030: Use of Service Curve for Resource Reservation in Wired-cum-Wireless Scenario
(pp. 087-093)
Nitul Dutta, Sikkim Manipal Institute of Technology, Computer Science & Engg. Deptt., India
Iti Saha Misra, Jadavpur University, Electronics & Telecommunication Engineering Department, India
15. Paper 28011031: Analysis, Modification, and Implementation (AMI) of Scheduling Algorithm for
the IEEE 802.116e (Mobile WiMAX) (pp. 094-103)
C. Ravichandiran, IT Leader, Zagro Singapore Pte Ltd, Singapore
Dr. C. Pethuru Raj, Lead Architect, CR Division of Robert Bosch, Bangalore, India.
Dr. V. Vaidhyanathan, Professor and HOD, Dept. of IT, SASTRA University, India
16. Paper 28011033: Current Conveyor Based Multifunction Filter (pp. 104-107)
Manish Kumar, Electronics and Communication Engineering Department, Jaypee Institute of Information
Technology, Noida, India
M.C. Srivastava, Electronics and Communication Engineering Department, Jaypee Institute of nformation
Technology, Noida, India
Umesh Kumar, Electrical Engineering Department, Indian Institute of Technology, Delhi, India
17. Paper 28011034: A Secure Hash Function MD-192 With Modified Message Expansion (pp. 108-
111)
Harshvardhan Tiwari, Student, CSE Department, JIIT, Noida, India
Dr. Krishna Asawa, Ass. Prof., CSE Department, JIIT, Noida, India
18. Paper 29011041: Integration of Rule Based Expert Systems and Case Based Reasoning in an
Acute Bacterial Meningitis Clinical Decision Support System (pp. 112-118)
Mariana Maceiras Cabrera, Departamento de Informática y Ciencias de la Computación,
Universidad Católica del Uruguay, Montevideo, Uruguay
Ernesto Ocampo Edye, Departamento de Informática y Ciencias de la Computación, Universidad Católica
de l Uruguay, Montevideo, Uruguay
19. Paper 29011042: Formal Concept Analysis for Information Retrieval (pp. 119-125)
Abderrahim El Qadi, Department of Computer Science, EST, University of Moulay Ismaïl, Meknes,
Morocco
Driss Aboutajedine, GSCM-LRIT, Faculty of Science, University of Mohammed V, Rabat-Agdal, Morocco
Yassine Ennouary, GSCM-LRIT, Faculty of Science, University of Mohammed V, Rabat-Agdal, Morocco
20. Paper 29011043: Creating A Model HTTP Server Program Using java (pp. 126-130)
Bala Dhandayuthapani Veerasamy, Department of Computing, Mekelle University, Mekelle, Ethiopia
21. Paper 30011045: Evaluation of E-Learners Behaviour using Different Fuzzy Clustering Models:
A Comparative Study (pp. 131-140)
Mofreh A. Hogo, Dept. of Electrical Engineering Technology, Higher Institution of Technology Benha,
Benha University, Egypt
22. Paper 30011047: Hierarchical Approach for Online Mining--Emphasis towards Software Metrics
(pp. 141-146)
M . V. Vijaya Saradhi, Dept. of CSE, Astra, Hyderabad, India.
Dr. B. R. Sastry, Astra, Hyderabad, India.
P. Satish, Dept. of CSE, Astra, Hyderabad, India.
23. Paper 30011049: QoS Based Dynamic Web Services Composition & Execution (pp. 147-152)
Farhan Hassan Khan, Saba Bashir, M. Younus Javed
National University of Science & Technology, Rawalpindi, Pakistan
Aihab Khan, Malik Sikandar Hayat Khiyal
Fatima Jinnah Women University, Rawalpindi, Pakistan
24. Paper 30011050: Indexer Based Dynamic Web Services Discovery (pp. 153-159)
Saba Bashir, Farhan Hassan Khan, M. Younus Javed
National University of Science & Technology, Rawalpindi, Pakistan
Aihab Khan, Malik Sikandar Hayat Khiyal,
Fatima Jinnah Women University, Rawalpindi, Pakistan
25. Paper 30011051: A New Variable Threshold and Dynamic Step Size Based Active Noise Control
System for Improving Performance (pp. 160-165)
P. Babu, Department of ECE, K. S. Rangasamy College of Technology,Tiruchengode, Tamilnadu, India.
A. Krishnan, Department of ECE, K. S. Rangasamy College of Technology, Tiruchengode, Tamilnadu,
India
26. Paper 30011052: Hierarchical Web Page Classification Based on a Topic Model and Neighboring
Pages Integration (pp. 166-173)
Wongkot Sriurai, Department of Information Technology, King Mongkut’s University of Technology,
North Bangkok, Bangkok, Thailand
Phayung Meesad, Department of Teacher Training in Electrical Engineering, King Mongkut’s University
of Technology, North Bangkok, Bangkok, Thailand
Choochart Haruechaiyasak, Human Language Technology Laboratory National Electronics and Computer
Technology Center (NECTEC), Bangkok, Thailand
27. Paper 30011054: Clinical gait data analysis based on Spatio-Temporal features (pp. 178-183)
Rohit Katiyar, Lecturer, Computer Science & Engineering Dept., Harcourt Butler Technological Institute,
Kanpur (U.P.), India
Dr. Vinay Kumar Pathak, Vice Chancellor, Professor, Computer Science & Engg. Dept., Uttarakhand
Open University, Uttarakhand, Haldwani, India
28. Paper 30011055: Design and Performance Analysis of Unified Reconfigurable Data Integrity Unit
for Mobile Terminals (pp. 184-191)
L. Thulasimani, Department of Electronics and Communication Engineering, PSG College of Technology,
Coimbatore-641004, India
M. Madheswaran, Centre for Advanced Research, Dept. of ECE, Muthayammal Engineering College,
Rasipuram-637408, India
29. Paper 30011058: Soft Computing – A step towards building Secure Cognitive WLAN (pp. 192-
198)
S. C. Lingareddy, KNS Institute of Technology, Bangalore, India.
Dr B Stephen Charles, Stanley Stephen College of Engg, Kurnool, India.
Dr Vinaya Babu, Director of Admission Dept., JNTU, Hyderabad, India
Kashyap Dhruve, Planet-i Technologies, Bangalore, India.
30. Paper 31011062: A Hybrid System based on Multi-Agent System in the Data Preprocessing Stage
(pp. 199-202)
Kobkul Kularbphettong, Gareth Clayton and Phayung Meesad
The Information Technology Faculty, King Mongkut’s University of Technology, North Bangkok, Thailand
31. Paper 31011064: New Approach to Identify Common Eigenvalues of real matrices using
Gerschgorin Theorem and Bisection method (pp. 203-205)
D. Roopamala , Dept. of Compute science, SJCE, Mysore, India
S. K. Katti, Dept. of Compute science, SJCE, Mysore, India
32. Paper 31011066: A Survey of Naïve Bayes Machine Learning approach in Text Document
Classification (pp. 206-211)
Vidhya. K. A, Department of Computer Science, Pondicherry University, Pondicherry, India
G. Aghila, Department of Computer Science, Pondicherry University, Pondicherry, India
33. Paper 31011067: Content based Zero-Watermarking Algorithm for Authentication of Text
Documents (pp. 212-217)
Zunera Jalil, Anwar M. Mirza, FAST National University of Computer and Emerging Sciences, Islamabad,
Pakistan
Maria Sabir, Air University, Islamabad, Pakistan
34. Paper 31011068: Secure Multicast Key Distribution for Mobile Ad Hoc Networks (pp. 218-223)
D. SuganyaDevi, Asst. Prof, Department of Computer Applications, SNR SONS College, Coimbatore,
Tamil Nadu, India
Dr. G. Padmavathi, Prof. and Head, Dept. of Computer Science, Avinashilingam University for Women,
Coimbatore, Tamil Nadu, India
35. Paper 31011071: Nonlinear Filter Based Image Denoising Using AMF Approach (pp. 224-227)
T. K. Thivakaran, Asst. Professor, Dept. of I.T, Sri Venkateswara College of Engg, Chennai.
Dr. R.M. Chandrasekaran, Professor, Anna University, Trichy
36. Paper 31011072: Securing Our Bluetooth Mobiles From Intruder Attack Using Enhanced
Authentication Scheme And Plausible Exchange Algorithm (pp. 228-233)
Ms. A. Rathika, Ms. R. Saranya, Ms. R. Iswarya
VCET, Erode, India
37. Paper 31011074: Knowledge Management (pp. 234-238)
Mohsen Gerami, The Faculty of Applied Science of Post and Communications, Danesh Blv, Jenah Ave,
Azadi Sqr, Tehran, Iran.
38. Paper 31011075: Wireless IP Telephony (pp. 239-243)
Mohsen Gerami, The Faculty of Applied Science of Post and Communications, Danesh Blv, Jenah Ave,
Azadi Sqr, Tehran, Iran.
39. Paper 31011078: Reconfigurable Parallel Data Flow Architecture (pp. 244-251)
Dr. Hamid Reza Naji, International Center for Science & high Technology and Environmental Sciences,
Kerman Graduate University of Technology
40. Paper 31100967: Model Based Ceramic tile inspection using Discrete Wavelet Transform and
Euclidean Distance (pp. 252-256)
Samir Elmougy 1, Ibrahim El-Henawy 2, and Ahmed El-Azab 3
1 Dept. of Computer Science, College of Computer and Information Sciences, King Saud Univ., Riyadh
11543, Saudi Arabia
2 Dept. of Computer Science, Faculty of Computer and Information Sciences, Zagazig University, Zagazig,
Egypt
3 Dept. of Computer Science, Misr for Engineering and Technology (MET) Academy, Mansoura, Egypt
41. Paper 06011047: An Analytical Approach to Document Clustering Based on Internal Criterion
Function (pp. 257-261)
Alok Ranjan, Department of Information Technology, ABV-IIITM, Gwalior, India
Harish Verma, Department of Information Technology, ABV-IIITM, Gwalior, India
Eatesh Kandpal, Department of Information Technology, ABV-IIITM, Gwalior, India
Joydip Dhar, Department of Applied Sciences, ABV-IIITM, Gwalior, India
42. Paper 30011060: Role of Data Mining in E-Payment systems (pp. 262-266)
Sabyasachi Pattanaik, Partha Pratim Ghosh
FM University, Balasore
43. Paper 30120933: Facial Gesture Recognition Using Correlation And Mahalanobis Distance (pp.
267-272)
Supriya Kapoor, Computer Science Engg., Lingaya,s Institute of Mgt & Tech., India
Shruti Khanna, Computer Science Engg., Lingaya,s Institute of Mgt & Tech., India
Rahul Bhatia, Information Technology Engg., Lingaya,s Institute of Mgt & Tech.,India
44. Paper 28011035: FP-tree and COFI Based Approach for Mining of Multiple Level Association
Rules in Large Databases (pp. 273-279)
Virendra Kumar Shrivastava, Department of Computer Science & Engineering, Asia Pacific Institute of
Information Technology, Panipat (Haryana), India
Dr. Parveen Kumar, Department of Computer Science & Engineering, Asia Pacific Institute of Information
Technology, Panipat (Haryana), India
Dr. K. R. Pardasani, Dept. of Maths & MCA, MANIT, Bhopal, India
45. Paper 28011032: A GA based Window Selection Methodology to Enhance Window based Multi
wavelet transformation and thresholding aided CT image denoising technique (pp. 280-288)
Syed Amjad Ali, Department of ECE, Lords Institute of Engineering and Technology, Himayathsagar,
Hyderabad 8
Srinivasan Vathsal, Professor and Director, R&D, Bhaskar Engineering College, Yenkapally, Moinabad,
Ranga reddy Dist
K. Lal kishore, Rector, Jawahar Lal Nehru Technological University, Kukatpally , Hyderabad
46. Paper 19011015: Investigation and Assessment of Disorder of Ultrasound B-mode Images (pp.
289-293)
Vidhi Rawat, Department of Biomedical Engineering Samrat Ashok Technological Institute, Vidisha, India.
Alok jain, Department of electronics Engineering, Samrat Ashok Technological Institute, Vidisha, India.
Vibhakar shrimali, Department of Trg. & Technical Education, Govt. of NCT Delhi, Delhi.
Samrat Ashok Technological Institute, Vidisha, India.
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Securing Iris Templates using Combined User and
Soft Biometric based Password Hardened Fuzzy
Vault
V. S. Meenakshi Dr. G. Padmavathi
SNR Sons College, Avinashilingam University for Women, Coimbatore,
Coimbatore,Tamil Nadu, India. Tamil Nadu, India.
. .
Abstract—Personal identification and authentication is very
crucial in the current scenario. Biometrics plays an important
A. Merits of Iris
role in this area. Biometric based authentication has proved Iris is the colored ring surrounding the pupil of the eye. Iris
superior compared to traditional password based authentication. biometric has certain merits compared to finger print. It is
Anyhow biometrics is permanent feature of a person and cannot highly secure and uses a stable physiological trait. Iris is very
be reissued when compromised as passwords. To over come this difficult to spoof. Iris texture is different for right and left eye.
problem, instead of storing the original biometric templates They are unique even for identical twins. Iris is less prone to
transformed templates can be stored. Whenever the
either intentional or unintentional modification when compared
transformation function is changed new revocable/cancelable
templates are generated. Soft biometrics is ancillary information to fingerprint.
that can be combined with primary biometrics to identify a
person in a better way. Iris has certain advantage compared to B. Soft Biometrics
other biometric traits like fingerprint. Iris is an internal part that
is less prone to damage. Moreover is very difficult for an attacker Soft biometrics provides ancillary information about a
to capture an iris. The key advantage of iris biometrics is its person (gender, ethnicity, age, height, weight, eye color etc).
stability or template longevity. Biometric systems are vulnerable They lack distinctiveness or permanence. Hence Soft
to a variety of attacks. This work generates cancelable iris biometrics alone is not enough to differentiate two individuals.
templates by applying user and soft biometric based password Anyhow when combined with primary biometrics (Fingerprint,
transformations and further secures the templates by biometric Iris, Retina etc) soft biometrics gives better results.
cryptographic construct fuzzy vault.
Keywords—Cancelable Biometrics, Password, Soft Biometrics, Iris, C. Cancelable Biometrics
Eye color, Template security, Fuzzy Vault Passwords can be revoked when it is stolen. Biometrics
cannot be revoked when spoofed. This is the only disadvantage
of biometrics as compared to passwords. Therefore instead of
I. INTRODUCTION storing the biometrics as such transformed templates are
Biometrics is automated methods of identifying a person or stored. Whenever a transformed biometric template is spoofed
verifying the identity of a person based on a physiological or another new template can be generated by changing the
behavioral characteristic. Biometric characteristics that have transformation function. This makes the biometric cancelable/
been commonly used are fingerprints, iris, face, hand, retina, revocable similar to password. For different applications
voice, signature and keystroke dynamics. Biometrics identifies different transformation function can be used. This prevents
‘you as you’. Biometrics serves as an excellent alternative to the attacker to use the same captured template for other
traditional token or password based authentication methods. applications. Like passwords these transformed templates can
Biometric systems are excellent compared over traditional be reissued on spoofing.
authentication methods. Biometric traits cannot be lost or
forgotten and they are inherently more reliable. It is very D. Operation of Fuzzy Vault
difficult to copy, share and distribute a biometric trait.
Fuzzy vault is a cryptographic construct proposed by Juels
Biometric system requires the person being authenticated to be
and Sudan [2]. This construct is more suitable for applications
present at the time and point of authentication.
Anyhow biometrics cannot be revoked when they are where biometric authentication and cryptography are combined
spoofed. To overcome this cancelable biometric templates are together. Fuzzy vault framework thus utilizes the advantages of
both cryptography and biometrics. Fuzzy vault eliminates the
generated that can be revoked when spoofed. Further they are
secured by fuzzy vault construct.
1 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
key management problem as compared to other practical This construct is called fuzzy because the vault will get
cryptosystems. decoded even for very near values of U and U’ and the secret
In fuzzy vault framework, the secret key S is locked by G, key S can be retrieved. Therefore fuzzy vault construct become
where G is an unordered set from the biometric sample. A more suitable for biometric data which show inherent fuzziness
polynomial P is constructed by encoding the secret S. This hence the name fuzzy vault as proposed by Sudan [2].
polynomial is evaluated by all the elements of the unordered The security of the fuzzy vault depends on the infeasibility
set G. of the polynomial reconstruction problem. The vault
A vault V is constructed by the union of unordered set G and performance can be improved by adding more number of chaff
chaff point set C which is not in G. points C to the vault.
V=GUC
The union of the chaff point set hides the genuine point set
E. Limitation of Fuzzy Vault Scheme
from the attacker. Hiding the genuine point set secures the
secret data S and user biometric template T. Fuzzy vault being a proven scheme has its own limitations
The vault is unlocked with the query template T’. T’ is [5].
represented by another unordered set U’. The user has to
separate sufficient number of points from the vault V by (i) If the vault is compromised, the same biometric data
comparing U’ with V. By using error correction method the cannot be used to construct a new vault. Fuzzy vault
polynomial P can be successfully reconstructed if U’ overlaps cannot be revoked. Fuzzy vault is prone to cross-
with U and secret S gets decoded. If there is not substantial matching of templates across various databases.
overlapping between U and U’ secret key S is not decoded.
User Password Soft biometric
(40 bits) Password
(24 bits)
User Password + Soft biometric
Password (64 bits)
Transformation equation from
combined password
Key
Generation
Iris
Feature
Extraction
Transformation Transformation
Fuzzy Vault
Fig. 1 Steps in combined password hardened fuzzy
vault
2 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
(ii) Due to the non-uniform nature of the biometric features them using fuzzy vault. Section IV discusses the experimental
it is easy for an attacker to develop attacks based on results and the security analysis. Section V concludes of the
statistical analysis of the points in the vault. proposed work.
(iii) The vault contains more chaff points than the genuine
points. This facilitates the attacker to substitute few II. RELATED WORK
points from his own biometric feature. Therefore the Karthick Nandakumar et al [5] used the idea of password
vault authenticates both the genuine user and the transformation for fingerprint and generated transformed
imposter using the same biometric identity. As a templates. In his work those transformed templates are
consequence, the false acceptance ratio of the system protected using fuzzy vault cryptographic construct in which
increases. password acts an additional layer of security. Iris based hard
(iv) Original template of the genuine user is temporarily fuzzy vault proposed by Srinivasa Reddy [3] followed the
exposed. During this exposure the attacker can glean the same idea of [5] to generate revocable iris templates and
template. secured them using password hardened fuzzy vault. The basic
idea of generating cancelable iris is based on the idea derived
from the work done by karthick Nandakumar et al [5] and
To overcome the limitations of fuzzy vault, password is used Srinivasa Reddy[3].
as an additional authentication factor. The proposed Iris fuzzy Iris based hard fuzzy vault proposed by Srinivasa Reddy [3]
vault is hardened by combined user and biometric password. applies a sequence of morphological operations to extract
This enhances the user-privacy and adds an additional level of minutiae points from the iris texture. This idea is utilized in the
security. proposed method for extracting the minutiae feature point from
the Iris. The same idea is used but with combined user and soft
biometric password.
F. Steps in Combined Password Hardened Fuzzy Vault Soft biometrics ideas derived from [16, 17, 18, 19, 20] are used
The hardened fuzzy vault overcomes the limitations of non- for constructing soft biometric passwords.
revocability and cross-matching by introducing an additional
layer of security by password. If the password is compromised
the basic security and privacy provided by the fuzzy vault is III. PROPOSED METHOD
not affected. However, a compromised password makes the Revocable iris templates generation is carried out in the
security level same as that of a fuzzy vault. Therefore, security following three steps. In the first step the iris texture containing
of the password is crucial. It is very difficult for an attacker to the highlighted minutiae feature points is subjected to simple
compromise the biometric template and the combined permutation and translation. This results in the original
password at the same time. The proposed method constructs a minutiae points being transformed into new points. In the
fuzzy vault using the feature points extracted from iris. The iris second step the soft biometric password is combined with the
biometric fuzzy vault is then hardened using the password. user password to get a new 64 bit password. In the third step,
Steps in hardening scheme: the simple transformed iris template is randomly transformed
using password. This process enhances the user privacy and
1. A combined user and soft biometric password is facilitates the generation of revocable templates and resists
generated. cross matching. This transformation reduces the similarity
between the original and transformed template. The
2. A random transformation function is derived from the transformed templates are further secured using the fuzzy vault
user password. construct.
3. The password transformed function is applied to the Iris
template. A. Extraction of Minutiae Feature point from Iris
4. Fuzzy vault frame work is constructed to secure the The idea proposed by Srinivasa Reddy [3] is utilized to
transformed templates by using the feature points from extract the minutiae feature points from the iris texture.
the iris. The following operations are applied to the iris images to
extract lock/unlock data. Canny edge detection is applied on
5. The key derived from the same password is used to iris image to deduct iris. Hough transformation is applied first
encrypt the vault. to iris/sclera boundary and then to iris/pupil boundary. Then
thresholding is done to isolate eyelashes. Histogram
Figure 1 depicts the steps involved in the construction of the equalization is performed on iris to enhance the contrast.
password hardened multi biometric fuzzy vault. Finally the following sequence of morphological operations is
performed on the enhanced iris structure.
The organization of the paper is as follows: Chapter II (i) closing-by-tophat
elaborates the background study. Section III explains the (ii) opening
proposed generation of cancelable Iris template and securing
3 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
(iii) thresholding
Finally thinning is done to get structures as a collection of
pixels. Now the (x, y) coordinates of the nodes and end points
of the iris minutiae are extracted. Fig. 2(a) shows the localized where Xu and X’u is the horizontal distance before and after
iris image, Fig. 2(b) exhibits the iris image with the minutiae transformation respectively. Similarly Yv and Y’v is the vertical
patterns and Fig 2(c) shows the permuted and transformed distance before and after transformation respectively.
points.
C. Fuzzy vault Encoding
B. Minutiae Feature Point Transformation The transformed features are encoded in the fuzzy vault.
The Iris texture containing the highlighted minutiae feature Password acts as an extra layer of security to the vault. It
points is subjected to simple permutation and translation. This resists an imposter from modifying the vault. Secret message
results in the original minutiae points being transformed into is generated as a 128 bit random stream. This secret message is
new points. transformed with the password. The 16 bit CRC is appended to
The user password is restricted to the size of 5 characters. transformed key S to get 144 bit SC. The primitive polynomial
The length of the user password is 40 bits. The soft biometric considered for CRC generation is
password [16,17.18] is generated by combining height, eye
color, and gender. The combination of these three factors
results in 24 bit soft biometric password (8 bit each). Therefore
the length of the combined password is 64 bits. These 64 bits
are divided into 4 blocks of each 16 bits in length. The minutiae points whose Euclidian distance is less than D
are removed. 16 bit lock/unlock unit ‘u’ is obtained by
concatenating x and y (each 8 bits) coordinates. The ‘u’ values
are sorted and first N of them are selected. The Secret (SC) is
divided into 9 non overlapping segments of 16 bits each. Each
segment is converted to its decimal equivalent to account for
the polynomial coefficients (C8, C7 …C0). All operations takes
place in Galois Field GF(216).
The projection of ‘u’ on polynomial ‘p’ is found. Now the
Genuine points set G is (ui, P(ui)). Random chaff points are
generated which are 10 times in number that of the genuine
points. Both the genuine and chaff point sets are combined to
(a) Localized Iris Image (b) Highlighted Iris Minutiae construct the vault. The vault is List scrambled.
D. Fuzzy vault Decoding
In the authentication phase, the encrypted vault and
bifurcation feature point are decrypted by the combined
password. Password based transformation is applied to the
query feature points and the vault is unlocked.
From the query templates of the iris, unlocking points (N in
number) are extracted. The unlocking set is found as in
encoding. This set is compared with the vault to separate the
(c) Red: Permuted Points and Blue: Transformed Points genuine point set for polynomial reconstruction. From this set,
all combinations are tried to decode the polynomial.
Fig 2. Iris Minutiae Extraction and Password Transformation Lagrangian interpolation is used for polynomial reconstruction.
For a specific combination of feature points the polynomial
The feature points highlighted in Iris texture are divided into gets decoded.
4 quadrants. One password block is assigned to each quadrant. In order to decode the polynomial of degree 8, a minimum of
Permutation is applied in such a way that the relation position at least 9 points are required. If the combination set contains
of the minutiae point does not change. Each 16 bit password less then 9 points, polynomial cannot be reconstructed. Now
block is split into two components Tu of 7 bits and Tv of 9 bits the coefficients and CRC are appended to arrive at SC*. Then
in length. Tu and Tv represents the amount of translation in the SC* is divided by the CRC primitive polynomial.
horizontal and vertical directions, respectively. If the remainder is zero, query image does not match
The new feature points are obtained by the following template image and the secret data cannot be extracted. If the
transformation. remainder is not zero, query image matches with the template
image and the correct secret data can be extracted. In this case
X’u = (Xu + Tu) mod (2 ^ 7)
Y’v = (Yv + Tv) mod (2 ^ 9)
4 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
SC* is divided into two parts as the 128 bit secret data and 16
bit CRC code.
TABLE III: SHOWING THE STRUCTURE OF SAMPLE PASSWORDS
E. Parameters used in implementation Soft Biometric Password
The parameters used in this implementation are shown in User (24 bits)
Table 1. Chaff points hide the genuine points from the password Gender Combined
Height
(5 Iris color (M/F) Password
attacker. More chaff points makes the attacker to take much character)
(0 –
(1character) (1charact (64 bits)
time to compromise the vault but consumes additional 255)
(40 Bits) (8 bit) er)
(8 bit)
computation time. The chaff points added are 10 times in (8 bit)
number that of the genuine points. FUZZY 155 B M 155BM FUZZY
TOKEN 170 G F 170GF TOKEN
VAULT 146 A M 146AM VAULT
TABLE I PARAMETERS OF THE IRIS VAULT
feature points for three different passwords. The feature points
of iris before and after password transformation is shown in
Parameter Number table 4. This property of password transformation facilitates
revocability. Different password can be utilized for generating
No. of. Genuine points(r) 20 different Iris templates.
No. of Chaff points(c) 200
Total no. of points 220 In the proposed method the security of the fuzzy vault is
(t = r + c) measured by min-entropy which is expressed in terms of
security bits. According to Nanda Kumar [7] the min-entropy
of the feature template MT given the vault V can be calculated
IV. EXPERIMENTAL RESULTS AND ANALYSIS as
The Iris template is transformed for three different user
passwords to check for revocability. The Table III shows the
sample bifurcation points from four quadrants after
transformation using three different user passwords and soft
biometric passwords generated as shown in table 2 and table 3.
Consider a 5 character user password ‘FUZZY’, whose
ASCII value is given by or 40 bits. Soft biometric password
component is 155BM(24 bits). Soft biometric password and
User Password are combined to form the transformation Where
password as ‘155BMFUZZY’(64 bits) whose ASCII values are r = number of genuine points in the vault
(155, 66, 77 ,70, 85, 90, 90, 89,) . These 64 bits are divided c = number of chaff points in the vault
into four blocks of 16 bits each. Each 16 bit is divided into 7 t = the total number of points in the vault (r + c)
bits and 9 bits for transformation in horizontal and vertical n = degree of the polynomial
direction.
The feature point transformation is done with other two user The security of the iris, retina vault is tabulated in Table. V.
passwords and soft biometric password combinations namely In order to decode a polynomial of degree n , (n+1) points are
‘170GFTOKEN’ and ‘146AM VAULT’ whose ASCII codes required. The security of the fuzzy vault can be increased by
are (170, 71, 70, 84, 79, 75, 69, 78,) and (146, 65, 77, 86, 65, increasing the degree of the vault. Polynomial with lesser
85, 76, 84,) respectively. For the same original template degree can be easily reconstructed by the attacker. Polynomial
different transformed templates are obtained when password is with higher degree increases security and requires lot of
changed. Fig 3(a), Fig 3(b) and Fig 3(c) shows the transformed computational effort. This makes more memory consumption
and makes the system slow. However they are hard to
reconstruct.In the case of the vault with polynomial degree n, if
TABLE II : EYE COLOR AND CHARACTER CODE the adversary uses brute force attack, the attacker has to try
REPRESENTATION
total of (t, n+ 1) combinations of n+ 1 element each. Only (r,
n+1) combinations are required to decode the vault. Hence, for
Eye Color
Character Code an attacker to decode the vault it takes C(t, n+1)/C(r, n+1)
Used evaluations. The guessing entropy for an 8 ASCII character
Amber A password falls in the range of 18 – 30 bits. Therefore, this
Blue E entropy is added with the vault entropy. The security analysis
Brown B
Gray G of the combined password hardened iris fuzzy vault is shown
Green N in Table 5.
Hazel H
5 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Fig 3. (a) PASSWORD : VAULT146AM
Fig 3. (c) PASSWORD : TOKEN170GF
Fig 3. (b) PASSWORD: FUZZY155BM
Fig 3. Transformed Retinal Features for Three Different Soft Biometric Passwords
6 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
TABLE IV IRIS MINUTIAE FEATURE POINTS BEFORE AND AFTER TRANSFORMATION
Transformation code
Feature points before Feature point after
from
Quadrant transformation transformation
password
and
Horizontal Vertical Vertical
Password Horizontal
Distance Distance Distance
Tu Tv Distance (Xu)
(Xu) (Yv) (Yv)
I
‘155BM FUZZY’ 77 322 81 61
4 123
‘170GF TOKEN’ 85 71 89 66
‘146AM VAULT’ 73 65 77 60
II
‘155BM FUZZY’ 38 326 173 56
135 114
‘170GF TOKEN’ 35 84 170 70
‘146AM VAULT’ 38 342 173 72
III
‘155BM FUZZY’ 42 346 46 224
4 134
‘170GF TOKEN’ 39 331 43 209
‘146AM VAULT’ 32 341 36 219
IV
‘155BM FUZZY’ 90 89 246 218
156 129
‘170GF TOKEN’ 69 78 225 207
‘146AM VAULT’ 76 84 232 213
TABLE V SECURITY ANALYSIS OF COMBINED PASSWORD HARDENED FUZZY VAULT
Vault Degree of Min-entropy Total no: of Combinations No: of Min-entropy
Type polynomia of the vault combinations required Evaluations + guessing entropy of the
(in security password
bits (in security bit )
Iris 8 34 2.8187 X 10 15 167960 1.6782 X 1010 52 to 64
the ideas of fuzzy vault. Due to this the security of the iris
V. CONCLUSION templates increases to 52 to 64 bits.
Biometric templates are vulnerable to a variety of attacks.
The only disadvantage of biometrics authentication as
compared to traditional password based authentication is non ACKNOWLEDGEMENT
revocability. The idea of cancelable biometrics overcomes that A public version of the CUHK Iris Database is available
disadvantage. Iris has certain advantage as compared to from http://www2.acae.cuhk.edu.hk.
fingerprint. Soft biometrics is ancillary information about a
person, when combined with user password gives better REFERENCES
results. It is very difficult for an attacker to gain the biometric [1] Umat uludag, sharath pankanti, Anil. K.Jain “Fuzzy vault for
features, soft biometric components and user password at the fingerprints”, Proceedings of International conference on Audio video
same time. The security of these cancelable templates will be based person authentication, 2005.
[2] Juels and M.Sudan, “A fuzzy vault scheme”, Proceedings of IEEE
the guessing entropy of the 8 character ASCII password which International symposium Information Theory, 2002.
comes to be 18 to 30 bits in strength. The user password can be [3] E.Srinivasa Reddy, I. Ramesh Babu, “Performance of Iris Based Hard
changed for generating revocable biometric templates. The Fuzzy Vault”, Proceedings of IEEE 8th International conference on
revocable biometric templates are further secured by applying computers and Information technology workshops, 2008
7 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[4] U.Uludag, S. Pankanti, S.Prabhakar, and A.K.Jain, “Biometric Dr. Padmavathi Ganapathi is the Professor and Head
Cryptosystems: issues and challenges, Proceedings of the IEEE ,June of the Department of Computer Science, Avinashilingam
2004. University for Women, Coimbatore. She has 21 years of
[5] Karthik Nandakumar, Abhishek Nagar and Anil K.Jain, “Hardening teaching experience and one year Industrial experience.
Fingerprint Fuzzy Vault using Password”, International conference on Her areas of interest include Network security and
Biometrics, 2007. Cryptography and real time communication. She has
[6] Karthick Nandakumar, Sharath Pankanti, Anil K. Jain, “Fingerprint- more than 80 publications at national and International
based Fuzzy Vault Implementation and Performance”, IEEE level. She is a life member of many professional
Transacations on Information Forensics and Security, December 2007. organizations like CSI, ISTE, AACE, WSEAS, ISCA,
[7] K.NandaKumar, “Multibiometric Systems: Fusion Strategies and and UWA. She is currently the Principal Investigator of 5 major projects under
Template Security”, PhD Thesis, Department of Computer Science and UGC and DRDO
Engineering, Michigan State University, January 2008.
[8] Sharat Chikkarur, Chaohang Wu, Venu Govindaraju, “A systematic
Approach for feature Extraction in Fingerprint images”, Center for
Unified Biometrics and Sensors(CUBS), university at Buffalo, NY,USA.
[9] K. Jain, A. Ross, and S. Pankanti, “Biometrics: A Tool for Information
Security,” IEEE Transactions on Information Forensics and Security, vol.
1, no. 2, pp. 125–143, June 2006.
[10] K. Jain, A. Ross, and U. Uludag, “Biometric Template Security:
Challenges and Solutions,” in Proceedings of European Signal
Processing Conference (EUSIPCO), Antalya, Turkey, September 2005.
[11] Anil K.Jain, Karthik Nanda Kumar and Abhishek Nagar, “Biometric
Template Security” EURASIP Journal on Advance in Signal Processing,
special issue on Biometrics, January 2008.
[12] Ratha, N.K., J.H. Connell, and R.M. Bolle, “Enhancing security and
privacy in biometrics-based authentication systems”, IBM Systems
Journal, vol. 40, no. 3.
[13] Jain, Anil K. Jain and Arun Ross, “Multibiometric systems,”
Communications of the ACM,” January 2004, Volume 47, Number 1
(2004).
[14] A.K. Jain and A. Ross, “Learning User-specific parameters in a
Multibiometric System”, Proc. IEEE International Conference on Image
Processing(ICIP), Rochester, New York, September 22 – 25, 2002, pp.
57 – 60.
[15] Li Chen, IEEE Member, Xiao-Long zhang, “Feature-based image
registration using bifurcation structures”, Matlab Central
[16] Anil K. Jain, Sarat C. Dass, and Karthik Nandakumar, ” Soft Biometric
Traits for Personal Recognition Systems Proceedings of International
Conference on Biometric Authentication”, LNCS 3072, pp. 731-738,
Hong Kong, July 2004.
[17] Anil K. Jain, Karthik Nandakumar, Xiaoguang Lu, and Unsang
Park,”Integrating Faces, Fingerprints, and Soft Biometric Traits for User
Recognition”, Proceedings of Biometric Authentication Workshop,
LNCS 3087, pp. 259-269, Prague, May 2004
[18] 18 Anil K. Jain, Sarat C. Dass and Karthik Nandakumar, ” Can soft
biometric traits assist user recognition?”, Proceedings of SPIE Vol. 5404,
pp. 561-572, 2004.
[19] Anil K. Jain and Unsang Park,” Facial Marks: Soft Biometric For Face
Reognition”, IEEE International Conference on Image Processing (ICIP),
Cairo, Nov. 2009.
[20] Jung-Eun Lee, Anil K. Jain and Rong Jin, “Scars, Marks And Tattoos
(Smt): Soft Biometric For Suspect And Victim Identification”,
Biometrics Symposium 2008
V. S. Meenakshi received her B.Sc (Physics) from
Madurai Kamaraj University and MCA from Thiagarajar
College of Engineering, Madurai in 1990 and 1993
respectively. And, she received her M.Phil degree in
Computer Science from Manonmaniam Sundaranar
University, Tirunelveli in 2003. She is pursuing her PhD
at Avinashilingam University for Women. She is
currently working as an Associate Professor in the
Department of Computer Applications, SNR Sons College, Coimbatore. She
has 16 years of teaching experience. She has presented nearly 15 papers in
various national and international conferences. Her research interests are
Biometrics, Biometric Template Security and Network Security.
8 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
A New Clustering Approach based on Page's Path
Similarity for Navigation Patterns Mining
Amir Masoud Rahmani Mashalla Abbasi Dezfouli
Heidar Mamosian Department of Computer Department of Computer
Department of Computer Engineering, Science and Research Engineering, Science and Research
Engineering, Science and Research Branch, Islamic Azad University Branch, Islamic Azad University
Branch, Islamic Azad University (IAU),Tehran, Iran (IAU), Khouzestan, Iran .
(IAU), Khouzestan, Iran . .
Abstract—In recent years, predicting the user's next request in and thereby many chances of the website are missed. Secondly,
web navigation has received much attention. An information those involved in designing the website are not consulted.
source to be used for dealing with such problem is the left
information by the previous web users stored at the web access Website developers usually take pages with related content
log on the web servers. Purposed systems for this problem work and store them in different directories hierarchically. In this
based on this idea that if a large number of web users request study, such method is combined with collected information
specific pages of a website on a given session, it can be concluded from previous web users' navigation to introduce a new
that these pages are satisfying similar information needs, and approach for pages clustering. The simulation results indicated
therefore they are conceptually related. In this study, a new that this method enjoys high accuracy on prediction. The rest of
clustering approach is introduced that employs logical path paper is structured as follows: section II outlines general
storing of a website pages as another parameter which is principles. Section III described related work, and section 4
regarded as a similarity parameter and conceptual relation elaborates on a new clustering approach based on pages storage
between web pages. The results of simulation have shown that the path. Section 5 reports on the results and section 6 is devoted to
proposed approach is more than others precise in determining conclusion and future studies.
the clusters.
II. PRINCIPLES
Keywords-Clustering; Web Usage Mining; Prediction of Users'
Request; Web Access Log.
A. Web Usage Mining process
Web usage mining refers to a process where users' access
I. INTRODUCTION
patterns on a website are studied. In general it is consists of 8
As the e-business is booming along with web services and steps [3, 4]:
information systems on the web, it goes without saying that if a
website cannot respond a user's information needs in a short • Data collection. This is done mostly by the web
time, the user simply refers to another website. Since websites servers; however there exist methods, where client side
live on their users and their number, predicting information data are collected as well.
needs of a website's users is essential, and therefore it has • Data cleaning. As in all knowledge discovery
gained much attention by many organization and scholars. One processes, in web usage mining can also be happen that
important source which is useful in analyzing and modeling the such data is recorded in the log file that is not useful
users' behavior is the second-hand information left by the for the further process, or even misleading or faulty.
previous web users. When a web user visits a website, for one These records have to be corrected or removed.
request ordered by the user one or more than one record(s) of
the server is stored in the web access log. The analysis of such • User identification. In this step the unique users are
data can be used to understand the users' preferences and distinguished, and as a result, the different users are
behavior in a process commonly referred to as Web Usage identified. This can be done in various ways like using
Mining (WUM) [1, 2]. IP addresses, cookies, direct authentication and so on.
Most WUM projects try to arrive at the best architecture • Session identification. A session is understood as a
and improve clustering approach so that they can provide a sequence of activities performed by a user when he is
better model for web navigation behavior. With an eye to the navigating through a given site. To identify the
hypotheses of Visit-Coherence, they attempt to achieve more sessions from the raw data is a complex step, because
precise navigation patterns through navigation of previous web the server logs do not always contain all the
users and modeling them. As such, the prediction system on information needed. There are Web server logs that do
large websites can be initiated only when firstly web access not contain enough information to reconstruct the user
logs are numerous. In other words, for a long time a website sessions; in this case (for example time-oriented or
should run without such system to collect such web access log, structure-oriented) heuristics can be used.
9 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
• Feature selection. In this step only those fields are W3C presented an improved format for Web access log
selected, that are relevant for further processing. files, called extended log format, partially motivated by the
need to support collection of data for demographic analysis and
• Data transformation, where the data is transformed in for log summaries. This format permits customized log files to
such a way that the data mining task can use it. For be recorded in a format readable by generic analysis tools. The
example strings are converted into integers, or date main extension to the common log format is that a number of
fields are truncated etc. fields are added to it. The most important are: referrer, which
• Executing the data mining task. This can be for is the URL the client was visiting before requesting that URL,
example frequent itemset mining, sequence mining, user_agent, which is the software the client claims to be using
graph mining, clustering and so on. and cookie, in the case the site visited uses cookies.
• Result understanding and visualization. Last step III. RELATED WORK
involves representing knowledge achieved from web
usage mining in an appropriate form. In recent years, several Web usage mining projects have
been proposed for mining user navigation behavior [6-11].
As it was shown, the main steps of a web usage mining PageGather (Perkowitz, et al. 2000) is a web usage mining
process are very similar to the steps of a traditional knowledge system that builds index pages containing links to pages similar
discovery process. among themselves. Page Gather finds clusters of pages.
Starting from the user activity sessions, the co-occurrence
B. Web Access Log matrix M is built. The element Mij of M is defined as the
The template is used to format your paper and style the text. conditional probability that page i is visited during a session if
All margins, column widths, line spaces, and text fonts are page j is visited in the same session. From the matrix M, The
prescribed; please do not alter them. You may note undirected graph G whose nodes are the pages and whose
peculiarities. For example, the head margin in this template edges are the non-null elements of M is built. To limit the
measures proportionately more than is customary. This number of edges in such a graph a threshold filter specified by
measurement and others are deliberate, using specifications that the parameter MinFreq is applied. Elements of Mij whose value
anticipate your paper as one part of the entire proceedings, and is less than MinFreq are too little correlated and thus discarded.
not as an independent document. Please do not revise any of The directed acyclic graph G is then partitioned finding the
the current designations. graph’s cliques. Finally, cliques are merged to originate the
clusters.
Each access to a Web page is recorded in the web access
log of web server that hosts it. Each entry of web access log file One important concept introduced in [6] is the hypotheses
consists of fields that follow a predefined format. The fields of that users behave coherently during their navigation, i.e. pages
the common log format are [5]: within the same session are in general conceptually related.
This assumption is called visit coherence.
remothost rfc931 authuser date “request” status bytes
Baraglia and Palmerini proposed a WUM system called
In the following a short description is provided for each SUGGEST, that provide useful information to make easier the
field: web user navigation and to optimize the web server
• remotehost. Name of the computer by which a user is performance [8-9]. SUGGEST adopts a two levels architecture
connected to a web site. In case the name of computer composed by an offline creation of historical knowledge and an
is not present on DNS server, instead the computer's IP online engine that understands user’s behavior. In this system,
address is recorded. PageGather clustering method is employed, but the co-
occurrence matrix elements are calculated according to (1):
• rfc931. The remote log name of the user.
• authuser. The username as witch the user has Nij
authenticated himself, available when using password Mij = (1)
max(Ni, Nj )
protected WWW pages.
• date. The date and time of the request. Where Nij is the number of sessions containing both pages i
and j, Ni and Nj are the number of sessions containing only
• request. The request line exactly as it came from the page i or j, respectively. Dividing by the maximum between
client (the file, the name and the method used to single occurrences of the two pages has the effect of reducing
retrieve it). the relative importance of index pages.
• status. The HTTP status code returned to the client, In SUGGEST a method is presented to quantify intrinsic
indicating whether or not the file was successfully coherence index of sessions based on visit coherence
retrieved and if not, what error message was returned. hypothesis. It measures the percentage of pages inside a user
• Byte. The content-length of the documents transferred. session which belong to the cluster representing the session
considered. To calculate this index, the datasets obtained from
the pre-processing phase is divided into two halves, apply the
Clustering on one half and measure visit-coherence criterion on
10 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
the basis of the second half. It is calculated according to A. Data Pre-processing
achieved clusters. Measure of γ for each session is calculated There are several tasks in data pre-processing module. We
according to 2: begin by removing all the uninteresting entries from the web
access log file which captured by web server, supposed to be in
Common Log Format. Namely, we remove all the non-html
{p ∈ si | p ∈ Ci }
γi = (2) requests, like images, icons, sound files and generally
Ni multimedia files, and also entries corresponding to CGI scripts.
Also the dumb scans of the entire site coming from robot-like
Where p is a page, Si is i-th session, Ci is the cluster agents are removed. We used the technique described in [12] to
representing i, and Ni is the number of pages in i-th session. model robots behavior.
The average value for γ over all NS sessions contained inside Then we create user sessions by identifying users with their
the dataset partition treated is given by: IP address and sessions by means of a predefined timeout
between two subsequent requests from the same user.
According to Catledge et al. in [13] we fixed a timeout value
∑
Ns
γ equal to 30 minutes.
i =1 i
Γ= (3)
Ns
B. Navigation pattern mining
Jalali et al. [10,11] proposed a recommender system for After the data pre-processing step, we perform navigation
navigation pattern mining through Web usage mining to predict pattern mining on the derived user access session. As an
user future movements. The approach is based on the graph important operation of navigation pattern mining, clustering
partitioning clustering algorithm to model user navigation aims to group sessions into clusters based on their common
patterns for the navigation patterns mining phase. properties. Here, to find clusters of correlated pages, both
website developers and website users are consulted. To do so,
All these works attempted to find an architecture and two matrixes M and P are created. Matrix M is a co-occurrence
algorithm for enhancing clustering quality, but the quality of matrix which represents website users' opinions, and matrix P
achieved clusters is still far from satisfying. In this work, a is the matrix of pages' path similarity.
clustering approach is introduced that is based on path
similarity of web pages to enhance clustering accuracy. 1) Co-occurrence Matrix: The algorithm introduced at
SUGGEST system [8, 9] is employed to create co-occurrence
IV. SYSTEM DESIGN matrix. Using this algorithm, M co-occurrence matrix is created
which represents corresponding graph with previous users of a
The proposed system aims at presenting a useful
website. The elements of this matrix are calculated based on (1)
information extraction system from web access log files of web
servers and using them to achieve clusters from related pages in appeared in section III.
order to help web users in their web navigation. Our system has
two modules. The pre-processing module and the module of 2) Path similarity matrix: Website developers usually store
navigation pattern mining. Figure 2 illustrate the model of the pages which are related both in structure and content is same
system. subdirectory, or create links between two related pages. Due to
our lack of knowledge about links between pages on web
access logs, to realize the developer's opinion on conceptual
relation between pages, the website's pages storage path is
employed. For example, two pages Pi and Pj which are located
in the following paths.
Directory1/Subdir1/subdir2/p1.html
Directory1/Subdir1/subdir2/p2.html
Are more related than two pages which are on the following
paths
Directory1/Subdir1/subdir2/p1.html
Directory2/Subdir3/subdir4/p2.html
Hence, a new matrix called pages' path similarity matrix
can be achieved. To calculate path similarity matrix, first the
function similarity(Pi , Pj) is defined. This function returns the
number of common sub-directories of two pages, i.e. Pi and Pj.
To calculate path similarity matrix elements, the following
equation is used:
Figure 1. Model of the system.
Pij =
2 × similarity( path( p1), path( p 2)) (4)
number of directory( path( p1) + number of directory( path( p1)
11 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Where number of directory(path(Pi)) is the number of sub- and MSSqlServer 2008 have used for coding the proposed
directories of storage path in Pi. When two paths of two pages system.
are close to each other, the value of each element of this matrix
get closer to 1, and if there is no similarity in storage path, it
becomes 0.
TABLE II. REMOVED EXTRA ENTRIES
Page Extension Count of Web Log Entries
Example: For two pages, i.e. p1.html and p2.html which .gif 899,883
are stored on the following paths: .xbm 43,954
.pl 27,597
Pi:/history/skylab/pi.html .bmp, .wav, …, web bots entries 165,459
Pj: /history/mercury/ma8/pj.html Total 1,136,893
Then After removing extra entries, different web users are
identified. This step is conducted based on remotehost field.
After identified distinct web users, users' sessions are
2 ×1 reconstructed. As sessions with one page length are free from
Pij = = 0.4
2+3 any useful information, they are removed too. In Table 3,
characteristics of web access log file is represented after
3) Clustering Algorithm: Combining these two performing pre-processing phase.
matrixes, the new matrix C is created which shows relation
between different pages of site based on a mix of users and
developers opinions. To combine these two matrixes whose TABLE III. CHARACTERISTICS OF WEB ACCESS LOG FILE AFTER
elements of each varies between zero and 1, Equation (5) is PERFORMING PRE-PROCESSING PHASE
used to keep the values of combined matrixes still between Number of Number of
Number of
zero and 1. Dataset Size(MB)
Records
Distinct Sessions
Users
NASA 20 357,621 42,215 69,066
Cij = α × M ij + (1 − α ) × Pij (5)
As shown in Figure 3, the percentage of sessions formed by
Where M is co-occurrence matrix and P is the path a predefined number of pages quickly decreases when the
similarity matrix. To arrive at clusters of related pages, the minimum number of pages in a session increases.
graph corresponding to the achieved matrix is divided into
First all the uninteresting entries from the web access log
strong partitions. To do this, DFS algorithm is employed as
file (entries corresponding to multimedia logs, CGI scripts and
follows. When the value of Cij is higher than the MinFreq, two
corresponding inputs through navigations of web bots) are
corresponding nodes are considered connected, and in other
removed.
case they are taken disconnected. We start from one node and
find all nodes connected to it through execution of DFS For example, samples of these extra inputs are cited in
algorithm and put them on one cluster. Each node which is Table 2 along with the number of their repetition in NASA's
visited is labeled with a visited label. If all nodes bear visited web access log.
labels, the algorithm ends, otherwise the node not visited is
selected and DFS algorithm id performed on it, and so on.
V. EXPERIMENTAL EVALUATION
For an experimental evaluation of the presented system, a
web access log from NASA produced by the web servers of
Kennedy Center Space. Data are stored according to the
Common Log Format. The characteristics of the dataset we
used are given in Table 1.
TABLE I. DATASET USED IN THE EXPERIMENTS.
Dataset Size(MB) Records(thousands) Period(days)
NASA 20 1494 28
All evaluation tests were run on Intel® Core™ Duo 2.4
GHz with 2GB RAM, operating system Windows XP. Our
implementation have run on .Net framework 3.5 and VB.Net Figure 2. Minimum number of pages in session.
12 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Once the users sessions are reconstructed based on
clustering algorithm presented in section 4.2.3, clustering
operation is calculated based on varying values of MinFreg and
α, the percentage of pages clustered is calculated. The tests
showed that the percentage of participated pages for value
α = 0.8 is at the best status. In Figure 4, the percentage of
clustered pages is represented as a function of the parameter
MinFreq and for two values α = 1.0 and α =0.8.
Figure 5. Coherence of visit
VI. CONCLUSION
For an experimental evaluation of the presented system, a
web access log from NASA produced by the web servers of
Kennedy Center Space. Data are stored according to the
Common Log Format. The characteristics of the dataset we
used are given in
REFERENCES
Figure 3. Minimum number of pages in session.
[1] O. Etzioni. The World Wide Web: quagmire or gold mine?
Communications of the ACM, 39:65–68, November 1996.
Figure 5 show the number of achieved clusters for two
[2] R. Kosala and H. Blockeel. Web mining research: a survey. In ACM
values α=1.0 and α=0.8 as a function of the MinFreq SIGKDD, pp.1–15, July 2000.
parameter.
[3] R. Iváncsy and S. Juhász, "Analysis of Web User Identification
Methods", International Journal of Computer Science, vol. 2, no. 3, pp.
212-219, 2007
[4] Z. Pabarskaite and A. Raudys, A process of knowledge discovery from
web log data: Systematization and critical review, Journal of Intelligent
Information Systems, Vol.28. No. 1.2007. Pp.79-104.
[5] M. Eirinaki and M.Vazirgiannis, Web Mining for Web
Personalization,ACM Transactions on Internet Technology (TOIT),
2003,Vol3.No1.
[6] M. Perkowitz and O. Etzioni. "Adaptive web sites: Conceptual cluster
mining". In International Joint Conference on Artificial Intelligence,
pages 264–269, 1999.
[7] T. Joachims, D. Freitag, and T. Mitchell. Webwatcher: A tour guide for
the World Wide Web. Fifteenth International Joint Conference on
Artificial Intelligence, 1997.
[8] R. Baraglia and F. Silvestri, "Dynamic personalization of web sites
without user intervention,"Communications of the ACM, vol. 50, pp. 63-
67, 2007.
[9] R. Baraglia and F. Silvestri, "An Online Recommender System for Large
Figure 4. Number of Clusters Found. Web Sites," 2004, pp.199-205.
[10] M. Jalali, N. Mustapha, M. N. B. Sulaiman, and A. Mamat, "OPWUMP:
An Architecture for Online Predicting in WUM-Based Personalization
To evaluate the quality of clusters found for varying values System," Communications in Computer and Information
of α, the Visit-coherence index introduced in section 2 is Science,Advances in Computer Science and Engineering, Springer
employed. Berlin Heidelberg, vol. 6, pp. 838–841, 2008.
[11] M. Jalali, N. Mustapha, N. B. Sulaiman, and A. Mamat, "A Web Usage
In Figure 6, the value of г, is represented as a function of Mining Approach Based on LCS Algorithm in Online Predicting
the MinFreq parameter for two values α. As shown in the Recommendation Systems," in 12th International on Information
figure 6, using our proposed clustering algorithm has enhanced Visualisation,IV'08, London, UK, 2008, pp. 302-307.
clusters' quality. [12] P.-N. Tan and V. Kumar. Modeling of web robot navigational patterns.
In WEBKDD 2000 Worskhop on Web Mining for E-Commerce –
Challenges and Opportunities, August 2000.
13 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[13] L. D. Catledge and J. E. Pitkow. Characterizing browsing strategies in
the World Wide Web. Computer Networks and ISDN Systems, 27, 1995.
14 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Implementing New-age Authentication Techniques
using OpenID for Security Automation
Dharmendra Choukse Umesh Kumar Singh Deepak Sukheja Rekha Shahapurkar
Institute of Engg. & Science, Institute of Comp. Science, Priyatam Institute of Tech. Lokmanya Tilak College,
IPS Academy, Vikram University, and Managemnet, Vikram University,
Indore, India Ujjain, India Indore, India Ujjain,India
Abstract scale systems. In this article present a comprehensive
Security of any software can be enhanced manifolds if multiple approach to RBAC on the Web to identify the user-pull and
factors for authorization and authentication are used .The main server-pull architectures and analyze their utility. To support
aim of this work was to design and implement an Academy these architectures on the Web, for relatively mature
Automation Software for IPS Academy which uses OpenID and technologies and extend them for secure RBAC on the Web.
Windows CardSpace as Authentication Techniques in addition to In order to do so, to make use of standard technologies in use
Role Based Authentication(RBA) System to ensure that only on the Web: cookies [Kristol and Montulli 1999; Moore and
authentic users can access the predefined roles as per their Freed 1999], X.509 [ITU-T Recommendation X.509 1993;
Authorization level. The Automation covers different computing 1997; Housley et al. 1998], SSL (Secure Socket Layer
hardware and software that can be used to digitally create, [Wagner and Schneier 1996; Dierks and Allen 1999]), and
manipulate, collect, store, and relay Academy information needed LDAP (Lightweight Directory Access Protocol [Howes et al.
for accomplishing basic Operation like admissions and registration 1999]).
, student and faculty interaction, online library, medical and The Lightweight Directory Access Protocol (LDAP)
business development. Raw data storage, electronic transfer, and directory service already available for the purpose of webmail
the management of electronic business information comprise the
authentication of IPS Academy, Indore users has been used to
do the basic Authentication. The client can request the
basic activities of the Academy automation system. Further
application server for any web application which will ask for
Transport Layer Security (TLS) protocol has been implemented to
the user credentials which will be verified in the LDAP server
provide security and data integrity for communications over
through an ASP.Net [19] Module. On successful verification,
networks. TLS encrypts the segments of network connections at the
the authorization module will contact the user role database
Transport
and fetch the roles for that user. In case of return of multiple
roles, user will be given the authorization of all the roles. The
Keywords: RBA, Encryption/Decryption, OpenID, access to the application will be on the basis of privilege of the
windowsCardSpace, TLS (Transport LayerSecurity) role of that particular user. The role database is implementing
in Microsoft SQL server [18] database.
1. INTRODUCTION On successful authentication, the Authentication and
authorization module which has been developed for this
The World Wide Web (WWW) is a critical enabling purpose is called and the role for the user is retrieved.
technology for electronic commerce on the Internet. Its Privileges are granted to roles which in turn roles are granted
underlying protocol, HTTP (Hypertext Transfer Protocol to users. The overall database server and application server is
[Fielding et al. 1999]), has been widely used to synthesize considered for possible attacks. The proposed scheme is given
diverse technologies and components, to great effect in Web in figure 3. The database server and the authentication server
environments. Increased integration of Web, operating system, are in a private network and separated from the user network
and database system technologies will lead to continued by a firewall. These servers can be accessed only through
reliance on Web technology for enterprise computing. application server, i.e. through the authentication and
However, current approaches to access control on Web servers authorization module. Application server has an interface in
are mostly based on individual user identity; hence they do not the private network but can avail only the specific service
scale to enterprise-wide systems. If the roles of individual which has been explicitly allowed in the firewall. Application
users are provided securely, Web servers can trust and use the server has another interface which is part of user network with
roles for role-based access control (RBAC [Sandhu et al. a firewall to restrict the clients only to the desired service.
1996; Sandhu 1998]). So a successful marriage of the Web
and RBAC has the potential for making a considerable impact 2. OBSERVATION AND PROBLEM DESCRIPTION
on deployment of effective enterprise-wide security in large-
15 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
The whole Collage Academy automation consists of many change. The newly mapped user is not the owner and so
sections viz. Student Affairs, Academic Section, Research and cannot change the ownership, but maybe allowed to map
development, Training and Placement, Finance and Accounts again. For example, HODCSE is the role and the owner’s user
be given access to different aspects of the systems based on id is”Ram”. Normally, HODCSE maps to Ram. When Prof.
Figure 1: System and Server Security
their clearance level. For e.g. the Assistant Registrar of
Student Affairs should have full access to all the options of Figure 2: Basic Architecture of Academy
Student Affairs database but not that of the Academic Section
database. However, provisions have to be made so that he/she Ram goes on leave, he fills up some form electronically and
is able to perform some student affairs related queries to the this triggers (among other things) a role change of
student affairs database. Similarly, a student must have read- HODCSE to the user he designates, say Prof.Shayam.
only access to his/her information in the official records and Now”Ram” is going on leave till 4/7/2009, so the changed
modifying capabilities some of his/her details in the training mapping is till 4/7/2009 (to”pshayam”; specified by”Ram”
and placement section database. This calls for a role-based in the form he filled up). Now due to an emergency,
approach to access the databases. Each person has a certain ”pshayam” had to leave station on 4/7/2009, making Prof
role attached to it. This role corresponds to the areas of the manoj the Head. Since” pshayam” is not the owner, he
work his login account can access. If a violation occurs, the cannot change the validity date beyond 4/7/2009
user is immediately logged out. and”Ashish” takes over the HODCSE role till 4/7/2009. On
In this work the design and implementation of the Role 5/7/2009 (or the next query of the role), the role remaps
Based Authentication Schemes for Security Automation is to”Ram”. Other cases (like”Ram” having to overstay
described, developed at the IPS Academy, Indore as an beyond 4/7) can be handled by the administrator
ASP.NET 2005 web application in C# server side code,
HTML, and JavaScript for use on the Internet. The purpose 3. METHODOLOGY
work to deploy a cost-effective, web-based system that
significantly extends the capabilities, flexibility, benefits, and 1. We have 2 sets of Roles:
confidentiality of paper-based rating methods while • Global Roles: These refer to the roles which are
incorporating the ease of use of existing online surveys and common to all the applications viz. root,
polling programs. Director: Their Role IDs are of single
Digit: 0, 1, and 2 etc.
2.1Problem Issues and Challenges • Local Roles: These are roles which are specific to a
module. For E.g. for Student Affairs,the roles of Assistant
There are Following problems:- Registrar, Academy in charge. Their IDs are of the Form: 10,
1. The information line must be completely secured. 11, 12 ... 110 etc. where first digit identifies the application to
2. Proper Encryption must be used for storing the which all of them are common.
Password for the User. 2. There is a Global role to role_id mapping table.
3. The authorization token which is stored on the client 3. Also there is a local mapping table for each section.
side has to be encrypted so that the client cannot modify his Insertion/modification or deletion of any entry in the local
authorization clearance level. table generates a Microsoft SQL trigger for its ‘encoded’ entry
4. Each userid-role mapping should have an expiry date addition in the global table.
beyond which it will be invalid. A web interface which is accessed by any member and is
5. Role Scoping: Local and Global Roles used to assign his role to any other member for a specified
6. In each role, we have to have an owner. Normally the period. The role validity period of the other person cannot
role will map to the user id of the owner. The owner can exceed the validity period of the assigner. So, whenever a role
change the mapping and can specify the time period of this
16 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
has to be transferred, an entry is made in the user role relation capability for the exchange of identity attributes as well [6].
table corresponding to the user ID of the assigned person and The first version of OpenID (v.1.0) had several security
it is made sure that the validity period of the assigned is less weaknesses some of which were quickly patched in v1.1 (e.g.
than the validity period of assigner from messages could be replayed), while others were fixed in v2.0.
However, as described below, v2.0 still suffers from several
TABLE 1: Various roles and their IDs security weaknesses, which may or may not pose a significant
risk, depending upon the application that one wishes to secure
Role Role ID with OpenID.
Administrator 0
Student 1
OpenID works as follows in Figure 3. When a user contacts
Faculty 2 a Service Provider (SP) that supports OpenID, he presents his
Assistant Registrar (Student Affairs) 10 URL (or XRI), and the SP contacts the URL to see who is the
Assistant Registrar (Academic) 20 OP that speaks for it. This is the process of Identity Provider
Assistant Registrar (RND) 30 Discovery, and it bypasses the need for the Where Are You
Assistant Registrar (TNP) 40
Assistant Registrar (Finance) 50
From service of Shibboleth and the Identity Selector in
Registrar 3 CardSpace. When XRIs are used, these similarly are resolved
Director 4 by the SP to find the OP that can authenticate the user. Once
Head of Departments 5 the identity provider has been discovered, the SP must
establish a shared secret with it so that future messages can be
authenticated, using the well known process of message
TABLE 2: User name id relation authentication codes (MAC). The OpenID specifications use
Diffie-Hellman to establish the shared secret between the OP
User_name User_id
and SP; unfortunately, Diffie-Hellman is vulnerable to man in
root 1
the middle attacks. Once the OP and SP have established a
dharmendra 2 shared secret, the SP redirects the user to the OP, to be
try 3 authenticated by any mechanism deemed appropriate by the
OP. During the authentication process the OP is supposed to
TABLE 3: User role relation check that the user wants to be authenticated to this SP, by
displaying the “realm” of the SP to the user. (The realm is a
s_no user_id role_id valid_from valid_upto pattern that represents part of the name space of the SP e.g.
*.kent.ac.uk). But this realm information can easily be spoofed
1 1 12 2008-01-01 2009-01-02 by an evil SP, which will lull the user into a false sense of
security that they are authenticating to a known SP when in
2 1 13 2008-01-01 2008-05-06 fact they will be redirected to an evil one after the
authentication has completed. After successful user
3 2 12 2007-01-01 2008-01-01 authentication, the OP redirects the user back to the SP along
with an authentication token saying that the user has been
authenticated and has control over the OpenID they specified.
the same user role relation table. The SP then grants the user access to its services, as it deems
appropriate. One might regard OpenID as a direct competitor
3.1 Database Table Structure of Shibboleth for user authentication. On the face of it OpenID
sounds like an attractive way of assigning people globally
We will have a common login page for all the sections of unique IDs based on URLs, and an authentication service that
the Academy Automation. The looks up table of the will validate this binding. Unfortunately, when one inspects
corresponding IDs are shown in table 1, 2 & 3. the OpenID system closer, one finds it has a significant
number of weaknesses that Shibboleth does not have (and one
4. ADDING NEW AGE AUTHENTICATION major one that is shared with Shibboleth – namely Phishing).
TECHNIQUES AND MECHANISM
4.2 Advantages of OpenID
4.1 OpenID
It is an authentication system that is based on the premise 4.2.1 Simplicity
that anyone can have a URL (or alternatively an Extensible The latest OpenID specification [4] is considerably
Resource Identifier (XRI) [7] which is allowed in version 2.0) thinner and much easier to understand than the latest SAML
and an OpenID Identity Provider (OP) which is willing to specification [11]. This is due to their scope. OpenID is
speak on behalf of this URL or XRI. During its short lifetime, concrete and specifies how data is carried over HTTP. SAML
OpenID has evolved through three versions, namely Open ID is an abstract framework and requires profiles and bindings to
v1.0, v1.1 [5] and v2.0 [4]. Whilst the first two versions were specify what content is carried over which Internet protocols.
only concerned with authentication, v2.0 has added the Thus the OpenID specification is complete and self contained
17 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
(if one excludes its optional extensions), whereas SAML is a relies on the user’s PC to act as the discovery service. The
framework that references more than a dozen other Identity Selector program allows the user to pick the IdP he
specifications, which need to be understood in order to fully wants to use from the cards in his selector.
appreciate and implement SAML. To secure messages, SAML
relies on XML, and consequently upon XML signatures and
XML encryption, whereas OpenID simply relies on SSL/TLS.
Whilst both specify a protocol for carrying authentication
assertions between users and various identity and service
providers, OpenID’s protocol is concrete whilst SAML’s
protocol is abstract and also includes attribute assertions and
authorisation assertions. Whilst OpenID specifies the format
of user identifiers and how the user’s OpenID provider is
discovered, SAML’s framework does not mandate any
particular user identifier, nor how the user’s identity provider
is discovered. Thus SAML is far more flexible and extensible
than OpenID, but as a result, is more complex. However, it
would be possible to define a profile of SAML and a protocol
binding that would mirror that of OpenID if this was required.
4.2.2 Implementation Effort
An OpenID infrastructure should be significantly easier
to implement and deploy than a SAML-based one. Because
the OpenID specification is simpler, with far fewer options,
most OpenID implementations should interwork “out of the
box”. SAML implementations on the other hand will most Figure 3:- The OpenID Authentication Process
likely only implement a specific subset of profiles and
protocol bindings, which will necessarily mean that not all 4.3 OpenID Implementation:
implementations will interwork “out of the box”, and may To implement OpenID in IPS Automation System we
require significant configuration in order to do so. have used JanRain OpenSource Library .The auto -mation
application will go through authentication process as follows:
4.2.3 No Discovery Service • End User enters his identity URL on the Login page.
Because OP discovery is built into the OpenID • Create OpenID authentication request from User’s
specification, via the user’s URL or XRI, then there is no need URL.
for a separate Discovery mechanism. Shibboleth on the other
• Initialize a storage place where the application can
hand does require a means of IdP discovery which can be
store information, since it is working in smart
provided in a number of ways (though none of these is
mode(to keep the session information).
satisfactory as a long-term solution). As a default, the
• The request is sent to OpenID server for
federation provides a Where Are You From (WAYF) service,
authentication. The request also includes the redirect
which presents users with a list of IdPs from which to choose;
path to the IPS Website.
this becomes increasingly less viable as the number of IdPs
grows. Institutions which have implemented library portals • Response from the server is received and processed.
have been able to improve on this by providing their users In case of authentication failure , browser is
with direct links to the institution’s subscribed services (so redirected to an error page displaying a message that
called WAYFless URLs); in the Schools sector this method of authentication failed. Otherwise the user will be
service presentation is seen as essential. Another solution is logged in.
provided by some large publishers and JISC data centres,
which present the user with a list of institution names drawn In the JanRain Library the “Services” folder contains the
from the service’s list of subscribers (though for SPs with a Yadis protocol files and “Auth” folder contains main OpenID
large client list this provides little relief from the current library files( should be included in PHP search path). The
WAYF). Multiple WAYFs are not a realistic solution for record for ipsacademy.com is created in DNS and the web
supporting inter-federation connections though no alternative server(Apache) is configured to make JanRain library files
solution has been agreed. Note that the OpenID method of become accessible when a page request is received . This is
discovery is not new to academia. The EduRoam service [12] done as follows:
works in a similar way to OpenID by requiring the user to <VirtualHost *:80>
enter his identity in the form username@realm, where realm is ServerAdmin webmaster@ipsacademy.org
the DNS name of the user’s university, and acts as the DocumentRoot /backup/ipsacademy
discovery service for EduRoam. CardSpace on the other hand, ServerName ipsacademy.org
ErrorLog logs/ipsacademy.org-error_log
18 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
CustomLog logs/ipsacademy.org-access_log common dirname($_SERVER['PHP_SELF']));
</VirtualHost> // Begin the OpenID authentication process.
HTML source code segment for the OpenID Login form is as $auth_request = $consumer->begin($openid);
follows: // Handle failure status return values.
<form method="get" action="try_auth.php">
Identity URL:
<input type="hidden" name="action" value="verify" />
<input type="text" name="openid_url" value="" />
<input type="submit" value="Verify" />
</form>
The flow of authentication can be explained as: “index.php”
page gets the OpenID URL from an End User and sends it to
“try_auth.php” file. This file then constructs an authentication
request and sends it to the OpenID server. The OpenID server
processes this request and then sends the result back to
“finish_auth.php” file using web browser redirection method.
Figure 4: Use of ipsacademy source files during authentication request
The index.php File processing.
This file is responsible asks user to enter his OpenID
URL. The source code for this form is as shown below: if (!$auth_request) {
<form method="get" action="try_auth.php"> $error = "Authentication error.";
Identity URL: include 'index.php';
<input type="hidden" name="action" value="verify" exit(0);
/> }
<input type="text" name="openid_url" value="" /> $auth_request->addExtensionArg('sreg', 'optional',
<input type="submit" value="Verify" /> 'email');
</form>. // Redirect the user to the OpenID server for
authentication. Store
The try_auth.php File // the token for this authentication so we can verify the
This file is responsible for creating OpenID request and response.
sending it to the OpenID server. $redirect_url = $auth_request->redirectURL($trust_root,
$process_url);
<?php header("Location: ".$redirect_url);
require_once "common.php"; ?>
session_start();
// Render a default page if we got a submission without an The finish_auth.php File
openid This file confirms successful verification or unsuccessful
// value. verification:
if (empty($_GET['openid_url'])) {
$error = "Expected an OpenID URL."; <?php
include 'index.php'; require_once "common.php";
exit(0); session_start();
} // complete the authentication process using the server's
$scheme = 'http'; response.
if (isset($_SERVER['HTTPS'])and $_SERVER['HTTPS'] $response = $consumer->complete ($_GET);
== 'on') { if ($response->status == Auth_OpenID_CANCEL) {
$scheme. = 's'; // This means the authentication was cancelled.
} $msg = 'Verification cancelled.’
$openid = $_GET['openid_url']; } else if ($response->status == Auth_OpenID_FAILURE)
$process_url= {
sprintf("$scheme://%s:%s%s/finish_auth.php", $msg = "OpenID authentication failed: " . $response-
$_SERVER['SERVER_NAME'], >message;
$_SERVER['SERVER_PORT'], } else if ($response->status ==
dirname($_SERVER['PHP_SELF'])); Auth_OpenID_SUCCESS) {
$trust_root = sprintf("$scheme://%s:%s%s", // this means the authentication succeeded.
$_SERVER['SERVER_NAME'], $openid = $response->identity_url;
$_SERVER['SERVER_PORT'], $esc_identity = htmlspecialchars($openid,
ENT_QUOTES);
19 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
$success = sprintf('You have successfully verified ' same profile-related information just to ensure that the user
'<a href="%s">%s</a> as your identity.’ credentials are valid.
$esc_identity, $esc_identity);
if ($response->endpoint->canonicalID) {
$success .= ' (XRI CanonicalID: '.$response->endpoint-
>canonicalID.') '; REFERRENCE
}
$sreg = $response->extensionResponse('sreg'); [1] William Stallings, “Cryptography and Network Security Principles and
Practices” 2003,3rdEdition,Prentice Hall.
if (@$sreg['email']) { [2] Eric Cole, Ronald L. Krutz, James Conley, “Network Security Bible”
$success .= " You also returned '".$sreg['email']."' as your 2005, 2nd Edition, Wiley Publication.
email."; [3] Yih-Cheng Lee, Chi-Ming Ma and ShihChien Chou,” A Service-
} Oriented Architecture for Design And
Development of Middleware,” Proceedings of the 12th Asia-Pacific
} Software Engineering
include 'index.php'; Conference (APSEC05) 0-7695- 2465-6/05
?> [4] specs@openid.net “OpenID Authentication 2.0 – Final” 5 Dec 2007.
Available from
http://openid.net/specs/openid-authentication-2_0.html
After successfully authenticating with the OpenID provider [5] D. Recordon B. Fitzpatrick. “Open ID Authentication 1.1”. May 2006.
(myopenid.com), the OpenID provider redirects the client to Available from
the page originally requested (http://<ipsacademy.org>:8081) http://openid.net/specs/openid-authentication-1_1.html
that shows the remote user, groups, and roles of which the [6] D. Hardt, J. Bufu, Sxip Identity, J. Hoyt, JanRain. “OpenID Attribute
Exchange 1.0 – Final” 5 Dec 2007.
user is a member. The remote user is the openid identity that Available from http://openid.net/specs/openid-attribute-exchange-
was used to log in. The groups contain a single group, the 1_0.html
VALID_OPENID_USER group, and the role is populated [7] OASIS “Extensible Resource Identifier (XRI) Syntax V2.0”. Committee
with OPENID_ROLE. If this is not the case, the user would Specification, 14 November
2005. Available from http://www.oasis-
not be authenticated because only users in the role open.org/committees/download.php/15376
OPENID_ROLE are permitted to access this resource. [8] William E. Burr, Donna F. Dodson, Ray A. Perlner, W. Timothy Polk,
Sarbari Gupta, Emad A.
5. RECCOMMENDATION Nabbus. “Electronic Authentication Guideline”, NIST Special
Publication NIST Special Publication
800-63-1, Feb 2008
• The IPS Automation System should keep track of both [9] Eugene Tsyrklevich & Vlad Tsyrklevich. “OpenID: Single Sign-On for
OpenID and CardSpace identity management systems as the Internet”. Black Hat USA
they evolve. There is clearly a great demand for a Briefings and Training, Las Vagas, July28- Aug 2, 2007. Available from
ubiquitous secure identity management system. https://www.blackhat.com/presentations/bh-usa-
• Now that a publicly available OpenID gateway has been 07/Tsyrklevich/Whitepaper/bh-usa-07-tsyrklevich-
built, publicise its availability to the community and WP.pdf
monitor its applications and usage. If usage becomes [10] OpenID. “Microsoft and Google announce OpenID support”. 30 October
2008. Available from
substantial, consider productising the service. http://openid.net/2008/10/
[11] OASIS. “Assertions and Protocol for the OASIS Security Assertion
6. CONCLUSION Markup Language (SAML)
V2.0”, OASIS Standard, 15 March 2005
[12] L Florio, K Wierenga. “Eduroam, providing mobility for roaming
The research problem and goal of the Academy Automation users”. Proceedings of the EUNIS
is to design a highly secure and efficient framework based on 2005 Conference, Manchester, 2005
Service Oriented Architecture. Keeping in mind the policies of [13] Thomas Price, Jeromie Walters and Yingcai Xiao, “Role –Based Online
minimum data redundancy and efficient security, the work Evaluation System” ,2007.
[14] Srinath Akula, Veerabhadram Devisetty , St. Cloud, MN 56301.” Image
revolved around designing a plug in for secure role based Based Registration and Authentication
authentication. Presently the authentication is based on the System”, 2002.
traditional userid-password based approach, but as is [15] Microsoft,”Visual Studio .Net”.
suggested in this report, work can be done to incorporate new- Website:http://msdn.microsoft.com/vstudio/
[16] Microsoft Corporation. Website: www.passport.net/
age technologies such as OpenID. OpenID provides increased [17] OpenSSL team. Website: http://www.openssl.org/
flexibility for application deployment by enabling applications [18] Microsoft, “SQL Server 2005”. Website:http://www.microsoft.com/sql/
to leverage and third-party authentication providers for [19] Microsoft,”Asp.net”. Website: http://www.asp.net/index.html.
handling authentication. Providers such as OpenID have
become very common as more users want a single user profile
across multiple sites for blogs, wikis, and other social
networking activities. Additionally, many Web sites do not
want to maintain, or require users to continually provide, the
20 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
AUTHORS PROFILE Indore. He served as Sn. Software Engineer in Patni Compute
Biographical notes: System Mumbai, KPIT Pune and Tanmay Software Indore.
His research interest includes network security, secure
electronic commerce, client-server computing and Query
Optimization.
Dharmendra Choukse holds a M.Tech in Information
Technology from Devi Ahilya University, Indore-INDIA. He
is currently Pursuing Ph.D. in Computer Science From
Institute of Computer Science, Vikram University, Ujjain- Rekha D Shahapurkar holds a MCA from Indira Gandhi
INDIA.and He is also currently Sr Software Engineer in National Open University, New Delhi, INDIA. She is
Institute of Engineering & Sciences,IPS Academy, Indore- currently Pursuing Ph.D. in Computer Science From Institute
INDIA. A He served as Software Engineer in Choksi of Computer Science, Vikram University, Ujjain-INDIA.
Laboratories ltd,Indore. His research interest includes network From 2001 she is working as Asst. Professor in Lokmanya
security, secure electronic commerce, client-server computing Tilak College Ujjain-INDIA. Her research interest includes
and IT based education. network security, client-server computing and IT based
education.
Dr. Umesh Kumar Singh obtained his Ph.D. in Computer
Science from Devi Ahilya University, Indore-INDIA. He is
currently Reader in Institute of Computer Science, Vikram
University, Ujjain-INDIA. He served as professor in
Computer Science and Principal in Mahakal Institute of
Computer Sciences (MICS-MIT), Ujjain. He is formally
Director I/c of Institute of Computer Science, Vikram
University Ujjain. He has served as Engineer (E&T) in
education and training division of CMC Ltd., New Delhi in
initial years of his career. He has authored a book on “ Internet
and Web technology “ and his various research papers are
published in national and international journals of repute. Dr.
Singh is reviewer of International Journal of Network Security
(IJNS), ECKM Conferences and various Journals of Computer
Science. His research interest includes network security,
secure electronic commerce, client-server computing and IT
based education.
Deepak Sukheja holeds M.Sc.,M.Tech.NIT( Govt. Engg.
College) Raipur-INDIA. He is currently Pursuing Ph.D. in
Computer Science From Institute of Computer Science,
Vikram University, Ujjain-INDIA and He is working as a
Reader in Priyatam Institute of Technology and Managemnt
21 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Ontology Based Query Expansion Using Word
Sense Disambiguation
M. Barathi S.Valli
Department of Computer Applications Department of Computer Science and Engineering
S. M. K. Fomra Institute of Technology Anna University
Chennai, India . Chennai, India .
Abstract - The existing information retrieval techniques do not Key Sense Noun Synonyms
consider the context of the keywords present in the user’s
word
queries. Therefore, the search engines sometimes do not provide
sufficient information to the users. New methods based on the Cell Any small The cells of a honeycomb
semantics of user keywords must be developed to search in the
vast web space without incurring loss of information. The compartment
semantic based information retrieval techniques need to biology The basic structural and
understand the meaning of the concepts in the user queries. This
will improve the precision-recall of the search results. Therefore, functional unit of all
this approach focuses on the concept based semantic information organisms.
retrieval. This work is based on Word sense disambiguation,
thesaurus WordNet and ontology of any domain for retrieving Electric cell A device that delivers an
information in order to capture the context of particular electric current as the
concept(s) and discover semantic relationships between them.
result of a chemical
Index terms – Word Sense Disambiguation, Semantic reaction.
Information Retrieval, Clustering, Ontology. Cadre A small unit serving as
part of or as the nucleus of
a larger political
I. INTRODUCTION movement.
Search engines have become the most helpful tools
for obtaining useful information ever since the development of Cellular A hand-held mobile
the World Wide Web. But, the search engines sometimes fail Telephone, radiotelephone for use in
to cater to the users need. The huge volume of information
Cellular Phone, an area divided into small
accessible over networks makes it difficult for the user to find
exact information needed. Numerous information retrieval Cell Phone, sections, each with its
techniques have been developed based on keywords. These Mobile phone own short-range
techniques use keyword list to describe the content of the
transmitter/receiver.
information without addressing anything about the semantic
relationships of the keywords. As a result, understanding the Cubicle small room in which a
meaning of the keyword becomes difficult [1]-[4]. Synonym monk or nun lives
and polysemy are two prominent issues. A synonym is a word
which means the same as another word. For instance the word
Figure 1. Multiple Meaning for the word “cell’
animal is a synonym of a living organism. A polysemy is a
word with multiple, related meanings. For example, the word In semantic-based information retrieval techniques
cell can be used to refer to a small room in one context and the searching is performed by interpreting the meanings of the
basic structural and functional unit of an organism in another keywords (i.e., semantic). The system which retrieves
context [1], [3]-[4]. In WordNet, the word cell has multiple information based on the semantics of the keyword attains
meaning as shown in Figure 1. So, cell is a polysemy word. higher precision than the one which is based on the keyword.
Domain ontologies are used as knowledge base to understand
the meanings of the concepts.
22 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
The semantic-based information retrieval techniques, concept for expansion. This is supposed to the best as the user
search by interpreting the meanings of the keywords by himself disambiguates. The user query is enriched with the
sensing the word using the thesaurus WordNet. It is often selected concept and passed to the search engine for efficient
difficult for ordinary users to use information retrieval retrieval of relevant web pages.
systems based on these commonly used keyword based
techniques. So Tin Berners-Lee introduced the idea of a K-core is a kind of keyword cluster. K-cores are the
semantic web, where machine readable Semantic knowledge core words of a concept or theme. Each k-core is a
is attached to all information. The Semantic knowledge representative of the semantic context. K-core is a set of
attached to the information is united by means of ontologies, keywords obtained per topic in a set of web pages. In this
i.e., the concepts attached to the information are mapped into approach set of four keywords form a k-core in order to
these ontologies. Ontology is “a formal, explicit specification perform meaningful experiments. The keywords are clustered
of a shared conceptualization” [5]. Ontology is arranged in a (i.e., k-core) and ranked according to the keyword frequency
lattice or taxonomy of concepts in classes and subclasses count. For example consider the topic as cancer. The best 4
(cancer, inflammatory, clumps, metastasis) as shown in Figure cores are given in Table 1.
2. Each concept is typically associated with various properties
describing its features and attributes as well as various
restrictions on them. Ontology together with asset of concrete Table 1. A sample k-core for the topic cancer
instances (also called individuals) of the class constitutes a
knowledge base. The semantics of keywords are identified K-Core
through the relationships between keywords by performing
semantic similarity on them[6],[1],[7]-[9],[2],[10]. Cancer, Oncology, Oncogene, Meta Stasis
Disease, Cancer clumps, Treatment
Cancer, Breast, Lump, Leukemia
Cancer
Lung Bladder
The goal of this work is to choose the best concept
Breast
and expand the user query for efficient retrieval of information
to satisfy the user needs and expectation. The rest of the paper
Inflammatory Meta stasis is as follows. In section 2, the existing works are highlighted.
clumps In section 3 our proposed methodology is explained. Section 4
presents the experimental results obtained and section 5
concludes the work.
II. EXISTING WORKS
Figure 2. A Sample Domain Ontology
In Seamless searching of Numeric and Textual
Resources project [12] the author use a customized dictionary
In our proposed work we use Word sense
to disambiguate the concepts used for querying. However our
disambiguation to disambiguate several meaning for a word.
system uses a general-purpose thesaurus, WordNet, and the
Word Sense Disambiguation (WSD) is defined as the process
context of the user keywords. CUPID [13] and onto builder
of enumerating the sense of a word. The frequency of the
[14] identify and analyze the factors that affect the
keywords occurring in the web pages is calculated and they
effectiveness of algorithms for automatic semantic
are ranked using the traditional weighting scheme [19] tfidf
reconciliation. Our system uses a set of k-core and WSD to
values and stored in the database. To enrich the user query for
disambiguate the concepts and the ontology of a particular
efficient retrieval of web pages, the user query is matched
domain to enrich the user query for more efficient retrieval of
with the set of k-cores [11] which is constructed using tfidf
information. GLUE[15] studies the probability of matching
values. The user query is enriched with the most relevant k-
two concepts by analyzing the available ontologies, using a
core using WSD and passed to the search engine for the
relaxation labeling method[16]; however, this approach is not
retrieval of the relevant web pages. In order to refine the web
very flexible or / adaptable because it analyzes all of the
search using ontology, both the k-cores and the ontology of a
ontology concepts, while we use an approach based on word
medical domain is used to enrich the user query for more
sense disambiguation to disambiguate the senses and expand
efficient retrieval of web pages. The relevant k-cores are
the user query with the best concept. The internet searches can
matched with the ontology of a particular domain to extract
be much more focused so that only relevant web pages are
the concepts based on the similarity measure. The concepts
retrieved.
are extracted by the concept extractor based on the most
relevant k-cores. The most relevant concepts along with the
ranked k-cores are presented to the user to choose the best
23 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
III. CONCEPT BASED INFORMATION RETRIEVAL
FRAMEWORK User
The proposed system refines the web search for Keyword +
Domain + query
efficient retrieval of web pages. Only web pages specific to Key cores
the context are retrieved. The set of web pages of a particular
I Query Reformulator
domain are retrieved from the web by web searches. Hill- N
T
climbing algorithm is used to “mine” a set of web pages for E
R Concept Extractor
finding k-cores. Stop words are removed and the core N
E
keywords are extracted. T
Concept Matcher
The keywords (i.e. k-core) are clustered based on
tfidf values. Each k-core is a representative of the semantic Reranker
context. Here, k is the size of the cluster. It may be 3 or 4 k-
Domain Ontology
core. Using the frequency count of keywords, the web
searches can be much more focused so that only relevant web
pages are retrieved. This process is shown in Figure 3. Figure 4. Concept Based Semantic Information Retrieval Framework
A. Query Reformulator
User Query
The query reformulator expands the query using
Query Analyser relationship such as synonym [6],[1],[8],[5], semantic
I
N neighborhood [2], hyponym [6],[2],[17] (i.e. Is-A
Query Sense
Word Sense T
E
relationship) and Meronym (i.e. Part-of) [6],[2] using
Result [N]
R
N
distance based approach [18],[8],[9]. Then the query is
WordNet Fetcher E rewritten with these expanded terms and passed to the
T
Concept Matcher.
Key cores
generator B. Concept Extractor and Matcher
The concept matcher matches the relevant k-cores
Keyword +
with the ontology to extracts the concepts based on the
Domain +
Key cores
similarity measure. The concepts are extracted by the concept
extractor based on the most relevant k-cores.
C. Re-ranker
Figure 3. Block Diagram of Web page retrieval and Keycore The Reranker sorts the document according to the
Generation Module relevance of the user’s queries. Documents that are related to
the user’s query are retrieved and ranked according to their
The user query along with the set of k-cores is importance. The relevance between the documents and
refined by using WSD to disambiguate the senses for efficient frequency count of the keywords are measured. The relevance
retrieval of web pages. The refined user query is passed to the of the documents is computed using the traditional weighting
search engine for retrieving the relevant web pages. For scheme [19] given in equation (1).The tf in equation (1) refers
further refinement of the user query the K-cores and the term frequency, N is the total no. of documents, df is the
ontology of the particular domain are used for retrieving document frequency and tfidf is the term frequency inverted
relevant web pages. The concepts are extracted by the concept document frequency.
extractor based on the most relevant k-cores. The most
relevant concepts along with the ranked k-cores are presented tfidf=tf*log (N/df) (1)
to the user to choose the best concept for expansion. This is
supposed to the best, as the user himself disambiguates. The
user query is enriched with the selected concept and passed to D. Concept Similarity
the search engine for efficient retrieval of relevant web pages The similarity is calculated by measuring semantic
as shown in Figure 4. This framework consists of components similarity of concepts and their relationships. The concepts
namely the Query reformulator, Concept Extractor, Matcher similarity is measured by calculating the distance between
and Reranker. them [18], [8], [9]. The distance is calculated between
different concepts from their position in the concepts
hierarchy. The position of a concept in a hierarchy is defined
[8] using equation (2),where ‘k’ is a predefined factor larger
than ‘l’ and l(n) is the depth of the node ‘n’ in hierarchy.
24 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
½
Milestone (n) = G. Refining Web Search Using Ontology
(2) The k-cores and the ontology of the
K l(n) particular domain are used in enhancing the user query for
more efficient retrieval of web pages. The first step matches
For the root of a hierarchy, l (root) is zero. For any two the user query with the set of k-cores using WordNet to
concepts c1 and c2 in the hierarchy having closest common disambiguate the senses. Then the relevant k-cores are
parent (ccp), the distance dc between two concepts and their matched with the ontology of the particular domain based on
ccp is calculated using equations (3) and (4). the similarity measure. The concepts are extracted by the
concept extractor based on the most relevant k-cores. The
dc(c1,c2)=dc(c1,ccp)+dc(c2,ccp) (3) most relevant concepts along with the ranked k-cores are
presented to the user to choose the best concept for expansion.
dc(c1,cpp)=milestone(ccp)–milestone(c1) (4) This is supposed to the best as the user himself disambiguates.
The user query is enriched with the selected concept and
Thus, the similarity simc between the two concepts c1 and c2 is passed to the search engine for efficient retrieval of relevant
calculated using equation (5) web pages. The algorithm for refining the web search using
Ontology is given in Figure 7.
simc(c1,c2)=l-dc(c1,c2) (5)
Input : User query, Domain ontology and K-cores
If the concept c1 and concept c2 are synonym or acronym of Output : Set of relevant web pages
each other, the distance will be 0, i.e. the similarity between Algorithm
these two concepts will be 1.Synonym and acronym relation
1. The user query and the set of k-cores are
between concepts are treated at the same level.
disambiguated using thesaurus WordNet.
2. The set of relevant k-cores is matched with the
E. Relations Similarity concepts in the domain ontology to extract the
The similarity Sim r between any two relations r1and r2 is relevant concepts based on the similarity measure.
given by equation (6) 3. The set of relevant concepts along with the k-cores are
presented as options to the user to disambiguate the
Simr(r1,r2)=1- d r (r1, r2) (6) senses.
4. When the user selects the specific concepts he wants,
The distance between two relations is also calculated by their the user query is enriched with that concept.
5. The enriched query is passed to the web searcher and
respective positions in the relation hierarchy.
it displays the relevant results to the user.
6. End
F. Web Page Retrieval
The web crawler receives the user query of any
domain from the user interface and downloads the web pages Figure 7. Algorithm for Refining the web search using Ontology
corresponding to that domain from the web. Then it opens the
URL connection and reads the content of the web page and IV EXPERIMENTAL RESULTS
stores it in the text file. If the web page contains another URL, This work is implemented using Java and the medical
it adds the URL to the end of the list of URLs to be crawled. It ontology is used as the domain. In this study, around 1500
repeats the process until all the URLs in the list are crawled as web pages have been crawled using Google search engine and
shown in Figure 5. The field “IsCrawled” in Figure 5 stored as text document. Preprocessing is done on each
represents that the particular URL has been crawled by setting document which is the text file as shown in Figure 9.
the value as “t”.
CRAWLTABLE
Serial URL Address IsCrawled
123 http://localhost:8080/cancer.html t
124 http://localhost:8080/cancertypes.html t
125 http://localhost:8080/leukemia.html t
126 http://localhost:8080/causes.html t
127 http://localhost:8080/oncology.html t
128 http://localhost:8080/oncogenes.html t Figure 9. Text File
Figure 5. Sample list of URLs crawled from the web
25 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Then the frequency count for each term is calculated as shown enhance the user query for more efficient retrieval of web
in Figure 10 and term frequency inverted document frequency pages. A piece of breast cancer ontology is shown in Figure
for the terms are calculated and the ranked list is shown in 13. The relevant k-cores are matched with the ontology breast
Figure 11. cancer to extract the concepts based on the similarity measure.
Then the user query is enhanced with the selected concept and
passed to the search engine for efficient retrieval of relevant
web pages.
http://acl/BMV#BreastCancer
-->
owl:Class rdf:about="#BreastCancer">
rdfs:subClassOf rdf:resource="#CancerTypes" />
owl:disjointWith rdf:resource="#ColorectalCancer" />
owl:disjointWith rdf:resource="#GastricCancer" />
owl:disjointWith rdf:resource="#EndometrialCancer"
/>
</owl:Class>
<!--
http://acl/BMV#CMFRegimeTypes
-->
Figure 10 Keyword frequency list owl:Class rdf:about="#CMFRegimeTypes">
rdfs:subClassOf
rdf:resource="#NonAnthracyclineChemoTxRegime
Types" />
rdfs:subClassOf
rdf:resource="#PolyChemoTxRegimeTypes" />
owl:disjointWith rdf:resource="#ECMFRegimeType"
/>
</owl:Class>
Figure 13 A piece of ontology for Breast cancer
Using recall and precision, the effectiveness of an
Information retrieval system is evaluated. The most often used
common evaluation measures are precision and recall as given
in equation (7) and (8). Precision measures the proportion of
retrieved documents that are relevant, and recall measures the
Figure 11. List of term frequency inverted document frequency for the
keywords
proportion of relevant documents that have been retrieved.
They are defined as follows
Using this ranked list, set of k-cores are constructed. When the
query is entered, the user query is matched with the set of k- Retrieved relevant documents
cores. WordNet shows different senses for the word cancer Precision = ------------------------------------ (7)
such as cancer zodiac, cancer horoscope, type of cancer etc. Retrieved documents
To disambiguate these senses, user selects the best synonyms
he is looking for. This enhanced query is passed to the search Retrieved relevant documents
engine for retrieving relevant web pages. An example of user Recall = ------------------------------------- (8)
query and the enhanced query is shown in Figure 12. All relevant documents
User Query : cancer The precision is measured at a number of standard recall
values (i.e. recall assumes the following values 0.1, 0.2, 0.3,
Enhanced Query : {cancer, oncology, oncogene, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0). These measurements result in
metastasis} a set of recall precision figures. These figures are presented in
Figure 14.
Figure 12. A sample of original query and Enhanced query
In order to refine the web search using ontology, both
the k-cores and the ontology of breast cancer is used to
26 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Context-Aware Measure for Semantic Distance Using a Taxonomy
and a Text Corpus”, IEEE International Conference on
1 Information Reuse and Integration, 2007 (IRI-07), pp. 279-284,
2007.
0.8
[11] Eduaro H. Ramirez and Ramon F.Brena, “Semantic Contexts in
the Internet”,IEEE Proceedings of the Fourth Latin American Web
Precision
0.6
Ont ology based IR Congress(LA-WEB’06),2006. Y.Zhao and G.Karypis, “Evaluation
0.4 Keyword based IR of hierarchical clustering algorithms for document datasets”,
Proceeding of the Eleventh International Conference on
0.2 Information and knowledge Management (CIKM-02), pp. 515-
524, New York, Nov 2002. ACM Press.
0 [12] C.Hui-Min, “Design and implementation of the agent-based EVMs
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 system”, Technical report, Berkley, 2000.
Recall
[13] J.Madhavan, P.A. Bernstein, and E.Rahm, “Generic schema
Figure 14. Precision –Recall graph for Ontology based IR and Keyword based matching with cupid”, The very large databases journal, vol.10,
IR pp. 49-58, 2001.
[14] A. Gal. A.Anaby-Tavor, A.Trombetta, and D.Montesi. “A
framework for modeling and evaluating automatic semantic
V CONCLUSION reconciliation”, The very large databases Journal, 2005.
This paper addresses an Ontology based Query [15] A.Doan, J.Madhavan, P.Domingos, and A.Halevy, “Learning to
expansion to improve the precision-recall of the search results map between ontologies on the semantic web”, Proceedings of the
by concentrating on the context of concept(s). The relevant k- 11th International WWW Conference, Hawaii, 2002.
[16] A.Rosenfeld, R.Hummel and S.Zueker, “Scene labeling by
cores are matched with the ontology of medical domain to relaxation operations”, IEEE Transactions on systems, Man and
extract the concepts based on the similarity measure. The most Cybernetics, vol. 6, pp. 420-433, 1976.
relevant concepts along with the ranked k-cores are presented [17] J.Smith and D.Smith, “Database Abstractions, Aggregation and
to the user. The user query is enriched with the selected Generalization,” Database Systems, ACM Transaction, vol.2,
pp. 105-133, 1977.
concept and passed to the search engine for efficient retrieval [18] Manuel Montes-y-Gomez, Aurelio Lopez-Lopez and Alexander
of relevant web pages. The future work would focus on the Gelbukh, “Information Retrieval with conceptual graph
automatic selection of concepts i.e. Intelligent WSD suitable Matching”, DEXA-2000:11th International Conference and
for user’s information need. Workshop on Database and Expert Systems Applications,
Greenwich, England, pp. 312-321, 2000.
[19] Richard Baeza – Yates and Berthier Ribeiro-Neto, “Modern
REFERENCES Information Retreival”, Addison Wesley Publishing Co. Inc.
[1] Wei-Dong Fang, Ling Zhang, Yan Xuan Wang, and Shou-Bin
Dong,“Towards a Semantic Search Engine Based on 2001.
Ontologies”, IEEE Proceedings of the Fourth International
Conference on4 Machine Learning and Cybernetics Guangzhou
China, pp. 1913-1918, August 2005
[2] M.Andrea Rodriguez and Max J. Egenhofer, “Determining
Semantic Similarity among Entity classes from Different
Ontologies”, Knowledge and Data Engineering, IEEE
Transactions, vol.15, Issue 2, pp. 442-456, March-April 2003.
[3] Chen Ue Lee and Von Wun Soo, “Ontology based information
retrieval and extraction”, 3rd International Conference on
Information Technology”, Research and Education, IEEE, pp.
265-269, 2005.
[4] Michael Usehold and Michael Gruninger, “Ontologies and
Semantics for seamless Connectivity”, SIGMOND, vol. 33, pp.
58-64, 2004.
[5] Gruber T, “ A translation approach to portable ontology
specifications Knowledge Acquisition”, pp. 199-220, 1993.
[6] Giannis Varelas, Epimenidis Voutsakis and Paraskevi
Raftopoulou, “Semantic Similarity Methods in WordNet and their
application to Information Retrieval on the web”, 7th ACM
internation workshop on Web information and data management,
pp. 10-16 November, 2005.
[7] D.Bonino, F.Corno, L.Farinetti and A.Bosca, “ Ontology driven
semantic Search”, WEAST Transaction on Information Science
and Application, vol 1, pp. 1597-1605, December 2004.
[8] Jiwei Zhong, Haiping Zhu, Jiaming Li, and Yong yu, “Conceptual
graph Matching for Semantic Search”, Proceedings of the 10th
International Conference on Conceptual Structures: Integration
and Interfaces table of contents, Springer-Verlag London, UK, pp.
92-196, 2002.
[9] S. Khan and F. Marvon, “Identifying Relevant Sources in query
Reformulation”, In the proceedings of the 8th International
Conference on Information Integration and Web-based
Applications & Services(iiWAS2006), Yogyakarta Indonesia, pp.
99-130, 2006.
[10] EI Sayed, Ahmad Hacid, Hakim Zighed and Djamel, “A new
27 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Secured Cryptographic Key Generation From
Multimodal Biometrics: Feature Level Fusion of
Fingerprint and Iris
A.Jagadeesan Dr. K.Duraiswamy
Research scholar/Senior Lecturer/EIE Dean/Academic
Bannari Amman Institute of Technology K.S.Rangasamy College of Technology,
Sathyamangalam-638 401, Tamil Nadu, India Tiruchengode – 637 209, Tamil Nadu, India
. .
Abstract— Human users have a tough time remembering long access control and monitoring applications. The technologies
cryptographic keys. Hence, researchers, for so long, have been are still novel and momentarily evolving [2]. Biometric
examining ways to utilize biometric features of the user instead of systems possess numerous advantages over traditional
a memorable password or passphrase, in an effort to generate authentication methods, that is, 1) biometric information
strong and repeatable cryptographic keys. Our objective is to
cannot be obtained by direct covert observation, 2) It is
incorporate the volatility of the user's biometric features into the
generated key, so as to make the key unguessable to an attacker difficult to share and reproduce, 3) It improves user easiness
lacking significant knowledge of the user's biometrics. We go one by lessening the necessity to memorize long and random
step further trying to incorporate multiple biometric modalities passwords, 4) It safeguards against repudiation by the user.
into cryptographic key generation so as to provide better Besides, biometrics imparts the same security level to all users
security. In this article, we propose an efficient approach based unlike passwords and is tolerant to brute force attacks [3]. A
on multimodal biometrics (Iris and fingerprint) for generation of number of biometric characteristics are being employed today,
secure cryptographic key. The proposed approach is composed of which comprises fingerprint, DNA, iris pattern, retina, ear,
three modules namely, 1) Feature extraction, 2) Multimodal thermogram, face, gait, hand geometry, palm-vein pattern,
biometric template generation and 3) Cryptographic key
smell, keystroke dynamics, signature, and voice [16, 17].
generation. Initially, the features, minutiae points and texture
properties are extracted from the fingerprint and iris images Biometric systems that generally employ a single attribute
respectively. Subsequently, the extracted features are fused for recognition (that is., unimodal biometric systems) are
together at the feature level to construct the multi-biometric influenced by some practical issues like noisy sensor data,
template. Finally, a 256-bit secure cryptographic key is generated non-universality and/or lack of distinctiveness of the biometric
from the multi-biometric template. For experimentation, we have trait, unacceptable error rates, and spoof attacks [4]. A
employed the fingerprint images obtained from publicly available probable improvement, multimodal biometric systems prevail
sources and the iris images from CASIA Iris Database. The over some of these issues by strengthening the proof acquired
experimental results demonstrate the effectiveness of the from several sources [5] [6]. Multimodal biometric system
proposed approach. employs two or more individual modalities, namely, gait, face,
Iris and fingerprint, to enhance the recognition accuracy of
Keywords-Biometrics; Multimodal, Fingerprint, Minutiae
points; Iris; Rubber Sheet Model; Fusion; Segmentation;
conventional unimodal methods. With the use of multiple
Cryptographic key; Chinese Academy of Sciences Institute of biometric modalities, it is shown that to decrease error rates,
Automation (CASIA) iris database. by offering extra valuable information to the classifier.
Diverse characteristics can be employed by a single system or
I. INTRODUCTION separate systems that can function on its own and their
decisions may be merged together [7]. The multimodal-based
The necessity for reliable user authentication techniques has authentication can aid the system in improving the security
risen amidst of heightened issues about security and rapid and effectiveness in comparison to unimodal biometric
progress in networking, communication and mobility [1]. The authentication, and it might become challenging for an
generally utilized authentication systems that regulate the adversary to spoof the system owing to two individual
entry to computer systems or secured locations are password, biometrics traits [15].
but it can be cracked or stolen. For that reason, biometrics has In recent times, multimodal biometrics fusion techniques
turned out to be a practicable option to traditional have invited considerable attention as the supplementary
identification methods in several application areas [23]. information between different modalities could enhance the
Biometrics, expressed as the science of identifying an recognition performance. Majority of the works have focused
individual on the basis of her physiological or behavioral the attention in this area [8-10]. In most cases, they can be
traits, seems to achieve acceptance as a rightful method for categorized into three groups: fusion at the feature level,
obtaining an individual’s identity [1]. Biometric technologies fusion at the match level and fusion at the decision level [6]
have established their importance in a variety of security, [11]. Fusion at the feature level includes the incorporation of
28 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
feature sets relating to multiple modalities. The feature set biometric features and authenticating users by combining
holds richer information about the raw biometric data than the multiple biometric modalities, comprise a grand consideration
match score or the final decision and because of this, in the recent development. A brief review of some recent
integration at this level is bound to offer good recognition researches is presented here.
results. But, fusion at this level is hard to accomplish in real
time due to the following grounds: (i) the feature sets of A realistic and safe approach to incorporate the iris
multiple modalities may be unsuited (namely, minutiae set of biometric into cryptographic applications has been presented
fingerprints and eigen-coefficients of face); (ii) the association by Feng Hao et al. [31].This approach employed a recurring
between the feature spaces of diverse biometric systems may binary string, called as a biometric key, that was created from
be unknown; and (iii) concatenating two feature vectors may a subject's iris image with the help of auxiliary error-
lead to a feature vector with very high dimensionality resulting correction data, which does not disclose the key and can be
to the `curse of dimensionality' problem [12]. stored in a tamper-resistant token, like a smart card. The
reproduction of the key revolves on two aspects: the iris
One current development, biometric cryptosystems [13] biometric and the token. The assessment was done by using
join cryptography and biometrics to take advantage from the iris samples from 70 different eyes, with 10 samples from each
strong points of both fields. In such systems, while eye. This resulted with the genuine iris codes with a 99.5
cryptography endows with high and modifiable security levels, percent achievement rate, which upshot with 140 bits of
biometrics provides non-repudiation and removes the biometric key which is sufficient for a 128-bit AES.A
requirement to memorize passwords or to carry tokens [14]. technique presented by B. Chen and V. Chandran [21],
Lately, the improved performance of cryptographic key coalesced entropy based feature extraction process with Reed-
generated from biometrics in accordance to security has Solomon error correcting codes which generate deterministic
acquired massive reputation amongst the researchers and bit-sequences from the output of an iterative one-way
experimenters [18] and recently, researchers have made an transform. The technique was assessed using 3D face data and
effort towards combing biometrics with cryptography so as to was proved to generate keys of suitable length for 128-bit
enhance the security, by removing the requirement for key Advanced Encryption Standard (AES).
storage using passwords [19-22]. Although it is highly
impractical to break cryptographic keys generated from A biometric-key generation scheme based on a randomized
biometrics, the attackers have a good possibility of stealing by biometric helper has been presented by Beng.A et al. [42]. The
cryptographic attacks. One effectual solution with additional technique engrosses a randomized feature discretization
security will be the integration of multimodal biometrics into process and a code redundancy construction. The former
cryptographic key generation; in order to attain incredible method controls the intra-class variations of biometric data to
security against cryptographic attacks. the nominal level and the latter reduced the errors even more.
The randomized biometric feature was proved as a simple
At this juncture, we introduce an efficient approach for the technique, when the key was conciliated The projected
secure cryptographic key generation on the basis of multiple technique was assessed in the context of face data based on a
modalities like, Iris and fingerprint. At first, the fingerprint subset of the Facial Recognition Technology (FERET)
features (minutiae points) are obtained from the fingerprint database. Sanaul Hoque et al. [43] have presented the direct
image using segmentation, Orientation field estimation and generation of the biometric keys from live biometrics, under
morphological operators. Likewise, the texture features are certain conditions, by partitioning feature space into subspaces
acquired from the iris image by segmentation, estimation of and partitioning these into cells, where each cell subspace
iris boundary and Normalization. Minutiae points and iris contributes to the overall key generated. They assessed the
texture, the two extracted features are then fused at feature presented technique on real biometric data, instead of both
level to build the multimodal biometric template. Fusion at the genuine samples and attempted imitations. Experimental
feature level is achieved by means of the processes that is, results have proved the reliability in possible practical
concatenation, shuffling and merging. Lastly, multi-biometric scenarios for this technique.
template acquired is employed to generate the secure 256-bit
cryptographic key that is competent of enabling better user A cryptographic key generation from biometric data, based
on lattice mapping based fuzzy commitment method was
authentication and security.
proposed by Gang Zheng et al. [44].This was proposed with
The rest of the paper is organized as follows. A short the aim to, secure the biometric data even when the stored
review of the researches connected to the proposed approach information in the system was open to an attacker ,with the
is given in Section II. The proposed approach for generation of generation of high entropy keys and also concealed the
multimodal-based cryptographic key is demonstrated in original biometric data. Simulated results have proved that its
Section III. The results acquired on experimentation of the authentication accuracy was on par to the k-nearest neighbor
proposed approach are given in Section IV. To conclude, the classification. Tianhao Zhang et al. [45] have presented a
conclusions are summed up in Section V. Geometry Preserving Projections (GPP) method for subspace
selection.It is capable of discriminating different classes and
II. REVIEW OF RELATED RESEARCHES conserving the intra-modal geometry of samples within an
Literature embrace ample researches for generating identical class. With GPP, they projected all raw biometric
cryptographic keys from biometric modalities and multimodal data from different identities and modalities onto a unified
biometrics based user authentication. Amid all these subspace, on which classification can be executed. Also, the
researches, approaches for cryptographic key generation from training stage was performed after having a unified
29 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
transformation matrix to project different modalities. and token-based (e.g. Key) techniques and has recently
Experimental results have proved the effectiveness of the emerged as an attractive research area [24]. Several
presented GPP for individual recognition tasks. researchers [45-48] have successfully made use of multiple
biometric traits for achieving user authentication. Multimodal
Donald E. Maurer and John P. Baker et al have presented biometrics was aimed at meeting the stringent performance
a fusion architecture based on Bayesian belief networks [46]. requirements set by security-conscious customers. Some good
The technique fully exploited the graphical structure of Bayes advantages of multimodal biometrics are 1) improved
nets to define and explicitly model statistical dependencies accuracy 2) secondary means of enrollment and verification or
between relevant variables: per sample measurements like, identification in case sufficient data is not extracted from a
match scores and corresponding quality estimates and global given biometric sample and 3) ability to detect attempts to
decision variables. These statistical dependencies are in the spoof biometric systems through non-live data sources such as
form of conditional distributions which are modeled as fake fingers. Two important parameters that determine the
Gaussian, gamma, log-normal or beta.. Each model is effectiveness of the multimodal biometrics are choice of the
determined by its mean and variance, thus considerably biometric traits to be combined and the application area. The
minimizing training data needs. Furthermore, they retrieved different biometric traits include fingerprint, face, iris, voice,
the information from lower quality measurements by
hand geometry, palmprint and more. In the proposed
conditioning decision variables on quality as well as match approach, we integrate fingerprint and iris features for
score instead of rejecting them out of hand. Another cryptographic key generation. The use of multimodal
characteristic of the technique was a global quality measure biometrics for key generation provides better security, as it is
intended to be used as a confidence estimate supporting made difficult for an intruder to spool multiple biometric traits
decision making. Introductory studies using the architecture to simultaneously. Moreover, the incorporation of biometrics into
fuse fingerprints and voice were accounted. cryptography shuns the need to remember or carry long
Muhammad Khurram Khana and Jiashu Zhanga presented passwords or keys. The steps involved in the proposed
an efficient multimodal face and fingerprint biometrics multimodal-based approach for cryptographic key generation
authentication system on space-limited tokens, e.g. smart are,
cards, driver license, and RFID cards [47]. Fingerprint 1) Feature extraction from fingerprint.
templates were encrypted and encoded/embedded within the
face images in a secure manner, so that the feature does not 2) Feature extraction from iris.
get changed drastically during encoding and decoding. This
method of biometrics authentication on space-limited tokens, 3) Fusion of fingerprint and iris features.
was proven to be a proficient and a cheap alternative without 4) Generation of cryptographic key from fused features.
downgrading the overall decoding and matching performance
of the biometrics system. A class-dependence feature analysis A. Minutiae Points Extraction from Fingerprints
technique based on Correlation Filter Bank (CFB) technique This sub-section describes the process of extracting the
for efficient multimodal biometrics fusion at the feature level minutiae points from the fingerprint image. We chose
is presented by Yan Yan and Yu-Jin Zhang [48]. In CFB, by fingerprint biometrics chiefly because of its two significant
optimizing the overall original correlation outputs the characteristics: uniqueness and permanence (ability to remain
unconstrained correlation filter trained for a specific modality. unchanged over the lifetime). A fingerprint can be described
So, the variation between modalities has been considered and as a pattern of ridges and valleys found on the surface of a
the useful information in various modalities is completely fingertip. The ridges of the finger form the so-called minutiae
utilized. Previous experimental outcome on the fusion of face points: ridge endings (terminals of ridge lines) and ridge
and palmprint biometrics proved the advantage of the bifurcations (fork-like structures) [26]. These minutiae points
technique. serve as an important means of fingerprint recognition. The
steps involved in the proposed approach for minutiae
An authentication method presented by M.Nageshkumar extraction are as follows,
et al. [24], focuses on multimodal biometric system
identification using two features i.e. face and palmprint. The 1) Preprocessing: The fingerprint image is first
technique was produced for application where the training data preprocessed by using the following methods,
includes a face and palmprint. Mixing the palmprint and face • Histogram Equalization
features has enhanced the robustness of the person
authentication. The final assessment was done by fusion at • Wiener Filtering
matching score level architecture where features vectors were Histogram Equalization: Histogram equalization (HE) is a
formed independently for query measures and are then very common technique for enhancing the contrast of an
evaluated to the enrolment template, which were saved during image. Here, the basic idea is to map the gray levels based on
database preparation. Multimodal biometric system was the probability distribution of the input gray levels. HE flattens
expanded through fusion of face and palmprint recognition. and stretches the dynamic range of the image’s histogram
III. PROPOSED APPROACH FOR CRYPTOGRAPHIC KEY resulting in overall contrast improvement of the image [32].
GENERATION FROM MULTIMODAL BIOMETRICS HE transforms the intensity values of the image as given by
the equation,
Multimodal biometric authentication has been more
reliable and capable than knowledge-based (e.g. Password)
30 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
k k nj 4) Image Enhancement: It would be desirable to enhance the
s k = T (rk ) = ∑ Pr (r j ) = ∑ fingerprint image further prior to minutiae extraction. The
j =1 j =1 n fingerprint image enhancement is achieved by using,
• Gaussian Low-Pass Filter
Where s k is the intensity value in the processed image • Gabor Filter
corresponding to intensity rk in the input image, Gaussian Low-Pass Filter: The Gaussian low-pass filter is
and p r ( r j ) = 1,2,3K . L is the input fingerprint image used as to blur an image. The Gaussian filter generates a
`weighted average' of each pixel's neighborhood, with, the
intensity level [33]. average weighted more towards the value of the central pixels.
Wiener filtering: Wiener filtering improves the legibility Because of this, gentler smoothing and edge preserving can be
of the fingerprint without altering its ridge structures [34]. The achieved. The Gaussian filter uses the following 2-D
filter is based on local statistics estimated from a local distribution as a point-spread function, and is achieved by the
neighborhood η of size 3 × 3 of each pixel, and is given by convolution [28].
the following equation:
1
2 (x2 + y 2 )
2
σ −v 2 G ( x, y ) = exp
w(n1 , n2 ) = µ + (I (n1 , n2 ) − µ ) 2πσ 2σ
2
σ2
wherev 2 is the noise variance, µ and σ 2 are local mean Where, σ is the standard deviation of the distribution.
and variance and I represents the gray level intensity in Gabor Filter: Mostly used contextual filter [29] for
n1 , n2 ∈ η [35]. fingerprint image enhancement is Gabor filter proposed by
Hong, Wan, and Jain [30]. Gabor filters have both frequency-
2) Segmentation: The fingerprint image obtained after selective and orientation-selective properties and they also
preprocessing is of high contrast and enhanced visibility. The have optimal joint resolution in both spatial and frequency
next step is to segment the preprocessed fingerprint image. domains. The following equation shows the 2-Dimensional (2-
D) Gabor filter form [29],
First, the fingerprint image is divided into non-overlapping
blocks of size 16x16. Subsequently, the gradient of each block
is calculated. The standard deviation of gradients in X and Y 2 y 2
1 x
direction are then computed and summed. If the resultant G ( x, y,θ , f 0 ) = exp− θ + θ cos(2πf 0 xθ ),
σ2 2
value is greater than the threshold value the block is filled with 2 x
σ y
ones, else the block is filled with zeros.
3) Orientation Field Estimation: A fingerprint orientation
xθ sin θ cos θ x
field is defined as the local orientation of the ridge-valley y = − cos θ sin θ y
structures [27]. To obtain reliable ridge orientations, the most θ
common approach is to go through the gradients of gray
intensity. In the gradient-based methods, gradient vectors where θ f 0 is the ridge
is the orientation of the filter,
[ g x , g y ]T are first calculated by taking the partial derivatives
of each pixel intensity in Cartesian coordinates. Traditional frequency, [ xθ , yθ ] are the coordinates of [ x, y ] after a
gradient-based methods divide the input fingerprint image into clockwise rotation of the Cartesian axes by an angle of
equal-sized blocks of N × N pixels, and average over each (90 o − θ ) , and σ x and σ y are the standard deviations of the
block independently [25] [26]. The direction of orientation
Gaussian envelope along the x -and y -axes, respectively.
field in a block is given by,
5) Minutiae extraction: The process of minutiae point
∑ ∑ 2 g x (i, j ) g y (i, j )
N N extraction is carried out in the enhanced fingerprint image.
1 i =1 j =1 π The steps involved in the extraction process are,
θB = a tan N +
∑ ∑ g x (i, j ) − g y (i, j ) 2
N
2 2 2
• Binarization
i =1 j =1
• Morphological Operators
Note that function a tan(⋅) gives an angle value ranges in Binarization: Binarization is the process of converting a
grey level image into a binary image. It improves the contrast
(− π , π ) which corresponds to the squared gradients, while between the ridges and valleys in a fingerprint image, and
θB is the desired orientation angle within [0, π ]. thereby facilitates the extraction of minutiae. The grey level
value of each pixel in the enhanced image is examined in the
binarization process. If the grey value is greater than the
global threshold, then the pixel value is set to a binary value
31 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
one; or else, it is set to zero. The output of binarization process The process of extracting features from the iris image is
is a binary image containing two levels of information, the discussed in this sub-section. Iris recognition has been
foreground ridges and the background valleys. The minutiae recognized as an effective means for providing user
extraction algorithms are good operating on binary images authentication. One important characteristic of the iris is that,
where there are only two levels of interest: the black pixels it is so unique that no two irises are alike, even among
that denote ridges, and the white pixels that denote valleys. identical twins, in the entire human population [37]. The
human iris, an annular part between the pupil (generally,
Morphological Operations: Following the binarization appearing black in an image) and the white sclera has an
process, morphological operators are applied to the binarized extraordinary structure and offers a plenty of interlacing
fingerprint image. The objective of the morphological minute characteristics such as freckles, coronas, stripes and
operations is to eliminate obstacles and noise from the image. more. These visible characteristics, which are generally called
Furthermore, the unnecessary spurs, bridges and line breaks the texture of the iris, are unique to each subject [38]. The
are removed by these operators. The process of removal of steps involved in the feature extraction process of the iris
redundant pixels till the ridges become one pixel wide is image are given below.
facilitated by ridge thinning. The Ridge thinning algorithm
utilized for Minutiae points’ extraction in the proposed 1) Segmentation: Iris segmentation is an essential module in
approach has been employed by the authors of [36]. The iris recognition because it defines the effective image region
image is first divided into two dissimilar subfields that used for subsequent processing such as feature extraction.
resemble a checkerboard pattern. In the first sub iteration, the Generally, the process of iris segmentation is composed of two
pixel p from the initial subfield is erased only when all three
steps 1) Estimation of iris boundary and 2) Noise removal.
conditions, G1, G2, and G3 are satisfied. While, in the second
sub iteration, the pixel p from the foremost subfield is erased
Estimation of iris boundary: For boundary estimation, the
when all three conditions, G1, G2, and G3’ are satisfied.
iris image is first fed to the canny algorithm which generates
Condition G1: the edge map of the iris image. The detected edge map is then
X H ( P) = 1 used to locate the exact boundary of pupil and iris using
Hough transform.
Where
4 • Canny edge detection
X H ( P ) = ∑ bi The Canny edge detection operator was developed by John
i =1 F. Canny in 1986. It uses a multi-stage algorithm to detect a
wide range of edges in images. Canny edge detection starts
1 if x 2i −1 = 0 and (x 2i = 1 or x 2i +1 = 1) with linear filtering to compute the gradient of the image
bi =
0 otherwise intensity distribution function and ends with thinning and
thresholding to obtain a binary map of edges. One significant
x1 , x2 ,..., x8 are the values of the eight neighbors of p , feature of the Canny operator is its optimality in handling
starting with the east neighbor and numbered in counter- noisy images as the method bridges the gap between strong
clockwise order. and weak edges of the image by connecting the weak edges in
the output only if they are connected to strong edges.
Condition G2: Therefore, the edges will probably be the actual ones. Hence
2 ≤ min{n1 ( p ), n2 ( p )} ≤ 3 compared to other edge detection methods, the canny operator
where is less fooled by spurious noise [39].
4
• Hough Transform
n1 ( p ) = ∑ x 2 k −1 ∨ x 2 k The classical Hough transform was concerned with the
k =1 identification of lines in the image, but later, the Hough
4 transform has been extended to identify positions of arbitrary
n 2 ( p ) = ∑ x 2 k ∨ x 2 k +1 shapes, most commonly circles or ellipses. From the edge map
k =1 obtained, votes are cast in Hough space for the parameters of
circles passing through each edge point. These parameters are
Condition G3: the centre coordinates x and y, and the radius r, which are able
( x2 ∨ x3 ∨ x8 ) ∧ x1 = 0 to define any circle according to the equation,
Condition G3’: x2 + y2 = r 2
( x6 ∨ x7 ∨ x ) ∧ x5 = 0
The resultant fingerprint image produced by the A maximum point in the Hough space will correspond to
morphological thinning algorithm composes of ridges each the radius and centre coordinates of the circle best defined by
one pixel wide. This improves the visibility of the ridges and the edge points.
enables effective and effortless of minutiae points. Isolation of Eyelids and Eyelashes: In general, the eyelids
and eyelashes occlude the upper and lower parts of the iris
B. Feature Extraction from Iris
32 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
region. In addition, specular reflections can occur within the xi (θ ) = xi 0 (θ ) + ri Cos (θ )
iris region corrupting the iris pattern. The removal of such
noises is also essential for obtaining reliable iris information. yi (θ ) = yi 0 (θ ) + ri Sin(θ )
• Eyelids are isolated by fitting a line to the upper and
lower eyelid using the linear Hough transform. A second where ( x p , y p ) and ( xi , yi ) are the coordinates on the
horizontal line is then drawn, which intersects with the first
line at the iris edge that is closest to the pupil; the second pupil and iris boundaries along the θ direction.
horizontal line allows maximum isolation of eyelid region. ( x p 0 , y p 0 ) , ( xi 0 , yi 0 ) are the coordinates of pupil and iris
• The eyelashes are quite dark compared with the centers [39].
surrounding eyelid region. Therefore, thresholding is used to
3) Extraction of iris texture: The normalized 2D form image
isolate eyelashes.
is broken up into 1D signal, and these signals are used to
2) Iris Normalization: Once the iris image is efficiently
convolve with 1D Gabor wavelets. The frequency response of
localized, then the next step is to transform it into the
a Log-Gabor filter is given as,
rectangular sized fixed image. The transformation process is
carried out using the Daugman’s Rubber Sheet Model.
Daugman’s Rubber Sheet Model: Normalization process − (log( f / f 0 )) 2
involves unwrapping the iris and converting it into its polar G ( f ) = exp
2(log(σ / f )) 2
equivalent. It is done using Daugman’s Rubber sheet model 0
[40] and is shown in figure.
Where f 0 represents the centre frequency, and σ gives
the bandwidth of the filter [41].
The Log-Gabor filter outputs the biometric feature (texture
properties) of the iris.
C. Fusion of Fingerprint and Iris Features
We have at hand two sets of features namely, 1)
Fingerprint features and 2) Iris features. The next step is to
fuse the two sets of features at the feature level to obtain a
Figure 1. Daugman’s Rubber Sheet Model multimodal biometric template that can perform biometric
authentication.
For every pixel in the iris, an equivalent position is found
out on polar axes. The process comprises of two resolutions: Feature Representation: Fingerprint - Each minutiae point
Radial resolution, which is the number of data points in the extracted from a fingerprint image is represented as ( x , y )
radial direction and Angular resolution, which is the number coordinates. Here, we store those extracted minutiae points in
of radial lines generated around iris region. Using the two different vectors: Vector F1 contains all the x co-ordinate
following equation, the iris region is transformed to a 2D array
with horizontal dimensions of angular resolution and vertical values and Vector F2 contains all the y co-ordinate values.
dimension of radial resolution.
F1 = [x1 x 2 x3 K x n ] ; F1 = n
I [ x (r , θ ), y (r , θ )] → I (r , θ )
F2 = [ y1 y 2 y 3 K y n ] ; F2 = n
where, I ( x, y ) is the iris region, ( x, y ) and (r , θ ) are the
Cartesian and normalized polar coordinates respectively. The Iris - The texture properties obtained from the log-gabor
range of θ is [0 2π ] and r is [0 1] . x ( r , θ ) and filter are complex numbers ( a + ib ) . Similar to fingerprint
y (r , θ ) are defined as linear combinations set of pupil representation, we also store the iris texture features in two
boundary points. The formulas given in the following different vectors: Vector I 1 contains the real part of the
equations perform the transformation, complex numbers and Vector I 2 contains the imaginary part of
the complex numbers.
x(r , θ ) = (1 − r ) x p (θ ) + xi (θ )
y (r , θ ) = (1 − r ) y p (θ ) + yi (θ ) I 1 = [a1 a 2 a 3 K a m ] ; I 1 = m
x p (θ ) = x p 0 (θ ) + r p Cos (θ ) I 2 = [b1 b2 b3 K bm ] ; I 2 = m
y p (θ ) = y p 0 (θ ) + r p Sin(θ )
33 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Thereby, the input to the fusion process (multimodal The aforesaid process is carried out between shuffled
biometric generation) will be four vectors F1 , F2 , I 1 and I 2 . vectors S 2 and S 4 to form vector M 2 . Thereby, the
The fusion process results with the multimodal biometric concatenation process results with two vectors M 1 and M 2 .
template. The steps involved in fusion of biometric feature
vectors are as follows. 3) Merging of the concatenated feature vectors: The last
1) Shuffling of individual feature vectors: The first step in step in generating the multimodal biometric template BT is
the fusion process is the shuffling of each of the individual the merging of two vectors M 1 and M 2 . The steps involved
feature vectors F1 , F2 , I 1 and I 2 . The steps involved in the in the merging process are as follows.
shuffling of vector F1 are, i. For every component of M 1 and M 2 ,
i. A random vector R of size F1 is generated. The
a. The components M 11 and M 21 are converted into
random vector R is controlled by the seed value. their binary form.
ii. For shuffling the i th component of fingerprint b. Binary NOR operation is performed between the
feature vector F1 , components M 11 and M 21 .
a) The i
th
component of the random vector R is c. The resultant binary value is then converted back into
multiplied with a large integer value. decimal form.
b) The product value obtained is modulo operated with ii. These decimal values are stored in the vector BT ,
the size of the fingerprint feature vector F1 . which serves multimodal biometric template.
D. Generation of Cryptographic Key from Fused Features
c) The resultant value is the index say ‘ j ’ to be
The final step of the proposed approach is the generation
interchanged with. The components in the i th and of the k-bit cryptographic key from multimodal biometric
th
j indexes are interchanged. template BT . The template vector BT can be represented as,
iii. Step (ii) is repeated for every component of F1 . The
BT = [bT1 bT2 bT3 K bTh ]
shuffled vector F1 is represented as S1 .
The above process is repeated for every other The set of distinct components in the template vector BT
vectors F2 , I 1 and I 2 with S1 S 2 and S 3 as random vectors are identified and are stored in another vector U BT .
respectively, where S 2 is shuffled F2 and S 3 is shuffled I 1 .
The shuffling process results with four U BT = [u1 u 2 u 3 L u d ] ; U BT ≤ BT
vectors S1 , S 2 , S 3 and S 4 .
2) Concatenation of shuffled feature vectors: The next step The vector U BT is then resized to k components suitable
is to concatenate the shuffled vectors for generating the k-bit key. The resize procedure employed in
process S1 , S 2 , S 3 and S 4 . Here, we concatenate the shuffled the proposed approach,
fingerprints S1 and S 2 with the shuffled iris features S 3 and S 4
respectively. The concatenation of the vectors S1 and S 3 is [u1 u2 L uk ] ; if | U BT | > k
B=
carried out as follows:
[u1 u2 L ud ] << u i ; d + 1 ≥ i ≥ k ; if | U BT | < k
i. A vector M 1 of size S1 + S 3 is created and its first
1 d
S3 values are filled with S 3 . Where, ui =∑u j
d j =1
ii. For every component S1 ,
Finally, the key K B is generated from the vector B,
a) The corresponding indexed component of M 1 say ‘ t ’
K B << Bi mod 2, i = 1,2,3...k
is chosen.
b) Logical right shift operation is carried in M 1 from IV. EXPERIMENTAL RESULTS
index‘t’. The experimental results of the proposed approach have
been presented in this section. The proposed approach is
c) The component of S1 is inserted into the emptied t th implemented in Matlab (Matlab7.4). We have tested the
proposed approach with different sets of fingerprint and iris
index of M 1 .
34 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
images corresponding to individuals. The fingerprint images Image Database collected by Institute of Automation, Chinese
employed in the proposed approach have been collected from Academy of Science. The input iris image, the normalized iris
publicly available databases. The input fingerprint image, the image and the intermediate results of the proposed approach
extracted minutiae points and the intermediate results of the are portrayed in figure 3. Finally, the generated 256-bit
proposed approach are shown in figure 2. For iris feature cryptographic key obtained from the proposed approach is
extraction, we use iris images obtained from CASIA Iris depicted in figure 4.
Figure 2. (a) Input fingerprint image (b) Histogram Equalized Image (c) Wiener Filtered Image (d) Segmented Image (e) Enhanced image (f) Morphological
Processed Image (g) Fingerprint image with Minutiae points
Figure 3. (a) Input Iris image (b) Edge detected image (c) Located pupil and iris boundary (d) Detected top eyelid region (e) Detected top and bottom eyelid region
(f) Segmented Iris image (g) Normalized iris image
Figure 4. Generated 256 bit key
[1] Arun Ross and Anil K. Jain, "Multimodal Biometrics: An Overview", in
V. CONCLUSION proceedings of the 12th European Signal Processing Conference, pp.
1221-1224, 2004.
In this paper, we have attempted to generate a secure [2] Richard A. Wasniowski, "Using Data Fusion for Biometric
cryptographic key by incorporating multiple biometrics Verification", in Proceedings of World Academy of Science,
modalities of human being, so as to provide better security. An Engineering and Technology, vol. 5, April 2005.
efficient approach for generation of secure cryptographic key [3] Parvathi Ambalakat, "Security of Biometric Authentication Systems", in
based on multimodal biometrics (Iris and fingerprint) has been proceedings of 21st Computer Science Seminar, 2005.
presented in this paper. The proposed approach has composed [4] A.K. Jain and A. Ross, “Multi-biometric systems: special issue on
of three modules namely, 1) Feature extraction, 2) Multimodal multimodal interfaces that flex, adapt, and persist”, Communications of
biometric template generation and 3) Cryptographic key the ACM, vol. 47, no. 1, pp. 34–40, 2004.
generation. Firstly, the features, minutiae points and texture [5] L. Hong, A.K. Jain and S. Pankanti, “Can multibiometrics improve
performance?”, in Proceedings of IEEE Workshop on Automatic
properties have been extracted from the fingerprint and iris Identification Advanced Technologies, pp. 59–64, NJ, USA, 1999.
images respectively. Then, the extracted features have been [6] Anil Jain, Karthik Nandakumar and Arun Ross, “Score normalization in
combined together at the feature level to obtain the multi- multimodal biometric systems”, Pattern Recognition, vol. 38, pp. 2270 –
biometric template. Lastly, a 256-bit secure cryptographic key 2285, 2005.
has been generated from the multi-biometric template. For [7] Eren Camlikaya, Alisher Kholmatov and Berrin Yanikoglu, "Multi-
experimentation, we have employed the fingerprint images biometric Templates Using Fingerprint and Voice", Biometric
obtained from publicly available sources and the iris images technology for human identification, Vol. 6944, no5, pp: 1-9, Orlando
FL, 2008.
from CASIA Iris Database. The experimental results have
[8] R. Wang and B. Bhanu, “Performance prediction for multimodal
demonstrated the efficiency of the proposed approach to biometrics”, In Proceedings of the IEEE International Conference on
produce user-specific strong cryptographic keys. Pattern Recognition, pp. 586-589, 2006.
[9] X. Jing, Y. Yao, D. Zhang, J. Yang, and M. Li. “Face and palm print
pixel level fusion and Kernel DCV-RBF classifier for small sample
biometric recognition”, Pattern Recognition, vol. 40, no.11, pp. 3209-
REFERENCES 3224, 2007.
35 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
[10] T. Zhang, X. Li, D. Tao, and J. Yang, “Multi-modal biometrics using Analysis and Machine Intelligence, vol. 20, no. 8, pp. 777-789, August
geometry preserving projections”, Pattern Recognition, vol. 41, no. 3, 1998.
pp. 805-813, 2008. [31] Feng Hao, Ross Anderson and John Daugman, "Combining Crypto with
[11] Yan Yan and Yu-Jin Zhang, “Multimodal Biometrics Fusion Using Biometrics Effectively", IEEE Transactions on Computers, vol. 55, no.
Correlation Filter Bank", in proceedings of 19th International 9, pp. 1081 - 1088, September 2006.
Conference on Pattern Recognition, pp. 1-4, Tampa, FL, 2008. [32] Balasubramanian.K and Babu. P, "Extracting Minutiae from Fingerprint
[12] Arun Ross and Rohin Govindarajan, "Feature Level Fusion in Biometric Images using Image Inversion and Bi-Histogram Equalization",
Systems", in proceedings of Biometric Consortium Conference (BCC), Proceedings of SPIT-IEEE Colloquium and International Conference,
September 2004. Mumbai, India.
[13] Umut Uludag, Sharath Pankanti, Salil Prabhakar, Anil K.Jain, [33] M. Sepasian, W. Balachandran and C. Mares, "Image Enhancement for
“Biometric Cryptosystems Issues and Challenges”, in Proceedings of the Fingerprint Minutiae-Based Algorithms Using CLAHE, Standard
IEEE, vol. 92, pp. 948-960, 2004. Deviation Analysis and Sliding Neighborhood", in Proceedings of the
[14] P.Arul, Dr.A.Shanmugam, "Generate a Key for AES Using Biometric World Congress on Engineering and Computer Science 2008, San
for VOIP Network Security", Journal of Theoretical and Applied Francisco, USA, October 2008.
Information Technology, vol. 5, no.2, 2009. [34] Sharat Chikkerur, Alexander N. Cartwright and Venu Govindaraju,
[15] Muhammad Khurram Khan and Jiashu Zhang, "Multimodal face and "Fingerprint enhancement using STFT analysis", Pattern Recognition,
fingerprint biometrics authentication on space-limited tokens", vol. 40, no.1, pp. 198-211, 2007.
Neurocomputing, vol. 71, pp. 3026-3031, August 2008. [35] Greenberg, S. Aladjem, M. Kogan, D and Dimitrov, I, “Fingerprint
[16] Kornelije Rabuzin and Miroslav Baca and Mirko Malekovic, "A image enhancement using filtering techniques” in Proceedings of the
Multimodal Biometric System Implemented within an Active Database 15th International Conference on Pattern Recognition, vol.32, pp. 322-
Management System", Journal of software, vol. 2, no. 4, October 2007. 325, Barcelona, Spain, 2000.
[17] M Baca and K. Rabuzin, “Biometrics in Network Security”, in [36] L. Lam, S. W. Lee, and C. Y. Suen, “Thinning Methodologies-A
Proceedings of the XXVIII International Convention MIPRO 2005, pp. Comprehensive Survey”, IEEE Transactions on Pattern analysis and
205-210 , Rijeka,2005. machine intelligence, vol. 14, no. 9, 1992.
[18] N. Lalithamani and K.P. Soman, "Irrevocable Cryptographic Key [37] Debnath Bhattacharyya, Poulami Das,Samir Kumar Bandyopadhyay and
Generation from Cancelable Fingerprint Templates: An Enhanced and Tai-hoon Kim, "IRIS Texture Analysis and Feature Extraction for
Effective Scheme", European Journal of Scientific Research, vol.31, Biometric Pattern Recognition", International Journal of Database
no.3, pp.372-387, 2009. Theory and Application, vol. 1, no. 1, pp. 53-60, December 2008.
[19] A. Goh and D.C.L. Ngo, “Computation of cryptographic keys from face [38] J. Daugman, “Statistical Richness of Visual Phase Information: Update
biometrics”, International Federation for Information Processing 2003, on Recognizing Persons by Iris Patterns,” International Journal of
Springer-Verlag, LNCS 2828, pp. 1–13, 2003. Computer Vision, vol. 45, no. 1, pp. 25-38, 2001.
[20] F. Hao, C.W. Chan, “Private Key generation from on-line handwritten [39] S. Uma Maheswari, P. Anbalagan and T.Priya, “ Efficient Iris
signatures”, Information Management & Computer Security, vol. 10, no. Recognition through Improvement in Iris Segmentation Algorithm”,
2, pp. 159–164, 2002. International Journal on Graphics, Vision and Image Processing, vol. 8,
no.2, pp. 29-35, 2008.
[21] Chen, B. and Chandran, V., "Biometric Based Cryptographic Key
Generation from Faces", in proceedings of 9th Biennial Conference of [40] John Daugman, “How Iris Recognition Works”, in Proceedings of
the Australian Pattern Recognition Society on Digital Image Computing International Conference on Image Processing, vol.1, pp. I-33- I-36,
Techniques and Applications, pp. 394 - 401, December 2007. 2002.
[22] N. Lalithamani and Dr. K.P. Soman, “An Effective Scheme for [41] David J. Field, "Relations between the statistics of natural images and
Generating Irrevocable Cryptographic Key from Cancelable Fingerprint the response properties of cortical cells", Journal of the Optical Society
Templates”, International Journal of Computer Science and Network of America,vol. 4, no. 12, 1987.
Security, vol. 9, no.3, March 2009. [42] Beng.A, Jin Teoh and Kar-Ann Toh, "Secure biometric-key generation
[23] Jang-Hee Yoo, Jong-Gook Ko, Sung-Uk Jung, Yun-Su Chung, Ki-Hyun with biometric helper”, in proceedings of 3rd IEEE Conference on
Kim, Ki-Young Moon, and Kyoil Chung, "Design of an Embedded Industrial Electronics and Applications, pp.2145-2150, Singapore, June
Multimodal Biometric System", ETRI-Information Security Research 2008.
Division, 2007. [43] Sanaul Hoque , Michael Fairhurst and Gareth Howells, "Evaluating
[24] Nageshkumar.M, Mahesh.PK and M.N. Shanmukha Swamy, “An Biometric Encryption Key Generation Using Handwritten Signatures",
Efficient Secure Multimodal Biometric Fusion Using Palmprint and in Proceedings of the 2008 Bio-inspired, Learning and Intelligent
Face Image”, IJCSI International Journal of Computer Science Issues, Systems for Security, pp.17-22, 2008.
Vol. 2, 2009. [44] Gang Zheng, Wanqing Li and Ce Zhan, "Cryptographic Key Generation
[25] A.M. Bazen and S.H. Gerez, "Systematic methods for the computation from Biometric Data Using Lattice Mapping", in Proceedings of the 18th
of the directional fields and singular points of fingerprints", IEEE International Conference on Pattern Recognition, vol.4, pp. 513 - 516,
Transaction on Pattern Analysis and Machine Intelligence, vol. 24, no.7, 2006.
pp.905–919, 2002. [45] Tianhao Zhang, Xuelong Li, Dacheng Tao and Jie Yang, "Multimodal
[26] Yi Wang , Jiankun Hu and Fengling Han, "Enhanced gradient-based biometrics using geometry preserving projections", Pattern Recognition,
algorithm for the estimation of fingerprint orientation fields", Applied vol. 41 , no. 3, pp. 805-813, March 2008.
Mathematics and Computation, vol. 185, pp.823–833, 2007. [46] Donald E. Maurer and John P. Baker, "Fusing multimodal biometrics
[27] Jinwei Gu and Jie Zhou, “A Novel Model for Orientation Field of with quality estimates via a Bayesian belief network", Pattern
Fingerprints”, in Proceedings of the IEEE Computer Society Conference Recognition, vol. 41, no. 3, pp. 821-832, March 2008.
on Computer Vision and Pattern Recognition, vol.2, 2003. [47] Muhammad Khurram Khana and Jiashu Zhanga, "Multimodal face and
[28] Keokanlaya Sihalath, Somsak Choomchuay, Shatoshi Wada and fingerprint biometrics authentication on space-limited tokens ",
Kazuhiko Hamamoto, “ Performance Evaluation Of Field Smoothing Neurocomputing, vol. 71, no. 13-15, pp.3026-3031, August 2008.
Filters”, in Proceedings of 2th International Conference on Biomedical [48] Yan Yan and Yu-Jin Zhang , "Multimodal biometrics fusion using
Engineering (BMEiCON-2009), Phuket, Thailand, August 2009. Correlation Filter Bank", in proceedings of the 9th International
[29] D. Maltoni, D. Maio, A. K. Jain, and s. Prabhakar, Handbook of Conference on Pattern Recognition, pp. 1-4,Tampa, FL, 2008.
Fingerprint Recognition, Springer-Verlag, 2003.
[30] L. Hong, Y.Wan, and AI. Jain, "Fingerprint Image Enhancement:
Algorithm and Performance Evaluation," IEEE Transactions on Pattern
36 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Authors Detail:
Mr.A.Jagadeesan was born in Coimbatore, India on
June 14, 1979. He graduated from Bannari Amman
Institute of Technology in 2000 with a degree in
Electrical and Electronics Engineering. He completed
his Master of Technology in Bio-medical Signal
Processing and Instrumentation from SASTRA
University in 2002. Thereafter he joined as a Lecturer in
K.S.Rangasamy College of Technology till 2007. Now
working as a Senior Lecturer in Bannari Amman Institute of Technology. He
is a research scholar in the Department of Information and Communication
Engineering. His area of interest includes Biometrics, Digital Image
Processing, Embedded Systems and Computer Networks. He is a life member
in ISTE and BMESI. He is also a member of Association of Computers,
Electronics and Electrical Engineers (ACEE) and International Association of
Engineers (IAENG).
Dr. K.Duraiswamy received his B.E. degree in
Electrical and Electronics Engineering from P.S.G.
College of Technology, Coimbatore in 1965 and M.Sc.
(Engg) from P.S.G. College of Technology, Coimbatore
in 1968 and Ph.D. from Anna University in 1986. From
1965 to 1966 he was in Electricity Board. From 1968 to
1970 he was working in ACCET, Karaikudi. From 1970
to 1983, he was working in Government College of
Engineering Salem. From 1983 to 1995, he was with
Government College of Technology, Coimbatore as Professor. From 1995 to
2005 he was working as Principal at K.S.Rangasamy College of Technology,
Tiruchengode and presently he is serving as Dean of KSRCT. He is interested
in Digital Image Processing, Computer Architecture and Compiler Design. He
received 7 years Long Service Gold Medal for NCC. He is a life member in
ISTE, Senior member in IEEE and a member of CSI.
37 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
The Comparison of Methods Artificial Neural Network
with Linear Regression Using Specific Variables for
Prediction Stock Price in Tehran Stock Exchange
Reza Gharoie Ahangar, Mahmood Yahyazadehfar Hassan Pournaghshband
Master of Business Administration Associate Professor of Finance Professor of Computer Science
of Islamic Azad University – Babol University of Mazandaran Department, Southern Polytechnic
branch &Membership of Babolsar, Iran State University
young researcher club, Iran. m.yahyazadeh@umz.ac.ir
reza_gh578@yahoo.com
Abstract- In this paper, researchers estimated the stock price of in a problem, they can also model linear processes. For
activated companies in Tehran (Iran) stock exchange. It is used example, the capability of neural networks in modeling linear
Linear Regression and Artificial Neural Network methods and time series has been studied and confirmed by a number of
compared these two methods. researchers [8],[11],[26].
In Artificial Neural Network, of General Regression
Neural Network method (GRNN) for architecture is used. In this
One of the major application areas of ANNs is
paper, first, researchers considered 10 macro economic variables forecasting. There is an increasing interest in forecasting using
and 30 financial variables and then they obtained seven final ANNs in recent years. Forecasting has a long history and the
variables including 3 macro economic variables and 4 financial importance of this old subject is reflected by the diversity of
variables to estimate the stock price using Independent its applications in different disciplines ranging from business
components Analysis (ICA). So, we presented an equation for two to engineering.
methods and compared their results which shown that artificial The ability to accurately predict the future is fundamental to
neural network method is more efficient than linear regression many decision processes in planning, scheduling, purchasing,
method. strategy formulation, policy making, and supply chain
Key words: neural network, linear regression, Tehran stock
operations and stock price. As such, forecasting is an area
exchange, GRNN where a lot of efforts have been invested in the past. Yet, it is
still an important and active field of human activity at the
present time and will continue to be in the future. A survey of
I. INTRODUCTION research needs for forecasting has been provided by
The recent upsurge in research activities into artificial Armstrong [1].
neural networks (ANNs) has proven that neural networks have Forecasting has been dominated by linear methods
powerful pattern classification and prediction capabilities. for many decades. Linear methods are easy to develop and
ANNs have been successfully used for a variety of tasks in implement and they are also relatively simple to understand
many fields of business, industry, and science [24] and interpret. However, linear models have serious limitation
Interest in neural networks is evident from the growth in that they are not able to capture any nonlinear relationships
in the number of papers published in journals of diverse in the data. The approximation of linear models to complicated
scientific disciplines. A search of several major databases can nonlinear relationships is not always satisfactory. In the early
easily result in hundreds or even thousands of “neural 1980s, Makridakis (1982)organized a large-scale forecasting
networks” articles published in one year. competition (often called
A neural network is able to work parallel with input variables M-competition) where a majority of commonly used linear
and consequently handle large sets of data quickly. The methods were tested with more than 1,000 real time series.
principal strength with the network is its ability to find The mixed results show that no single linear model is globally
patterns [3] ANNs provide a promising alternative tool for the best, which may be interpreted as the failure of linear
fore asters. The inherently nonlinear structure of neural modeling in accounting for a varying degree of nonlinearity
networks is particularly useful for capturing the complex that is common in real world problems [10].
underlying relationship in many real world problems. Neural The financial forecasting or stock market prediction is one of
networks are perhaps more versatile methods for forecasting the hottest fields of research lately due to its commercial
applications in that not only can they find nonlinear structures applications owing to the high stakes and the kinds of
38 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
attractive benefits that it has to offer [18]. Unfortunately, stock not only to improve the learning algorithm, but also to reduce
market is essentially dynamic, non-linear, complicated, the complexity in feature space. GA optimizes simultaneously
nonparametric, and chaotic in nature [21]. The time series are the connection weights between layers and the thresholds for
multi-stationary, noisy, random, and has frequent structural feature discrimination. The genetically evolved weights
breaks [13],[22]. In addition, stock market’s movements are mitigate the well-known limitations of the gradient descent
affected by many macro-economical factors ([Miao et al., algorithm. In addition, globally searched feature discretization
2007] and [Wang, 2003]) such as political events, firms’ reduces the dimensionality of the feature space and eliminates
policies, general economic conditions, commodity price index, irrelevant factors. Experimental results show that GA
bank rate, bank exchange rate, investors’ expectations, approach to the feature discrimination model outperforms the
institutional investors’ choices, movements of other stock other two conventional models. [9]
market, psychology of investors, etc.[12],[22]
Artificial neural networks are one of the technologies Shaikh A. Hamid and Zahid Iqbal(2003)
that have made great progress in the study of the stock They present a primer for using neural networks for
markets. Usually stock prices can be seen as a random time financial forecasting. They compare volatility forecasts from
sequence with noise, artificial neural networks, as large-scale neural networks with implied volatility from S&P 500 Index
parallel processing nonlinear systems that depend on their own futures options using the Barone-Adesi and Whaley (BAW)
intrinsic link data, provide methods and techniques that can American futures options pricing model. Forecasts from neural
approximate any nonlinear continuous function, without a networks outperform implied volatility forecasts and are not
priori assumptions about the nature of the generating process, found to be significantly different from realized volatility.
see (Pino et al., 2008).It is obvious that several factors are Implied volatility forecasts are found to be significantly
effective on future stock price and the main weak point in this different from realized volatility in two of three forecast
surrey is that all of them considered a few limit factors in horizons. [19]
future stock price and using linear methods, Regarding that
fact, although previous studies highlighted the problem to D. E. Allen, W. Yang,(2004)
some extent, none of them didn’t provide a comprehensive Examines the deviation of the UK total market index
model to estimate the stock prince. If one estimates the prince from market fundamentals implied by the simple dividend
and provides a model for it to eliminate uncertainties to a large discount model and identifies other components that also
extent it can help to increase the investments in stock affect price movements. The components are classified as
exchange. Conducting the scientific surveys to obtain a permanent, temporary, excess stock return and non-
suitable and desirable model to estimate the stock price is the fundamental innovations to stock prices by employing a
best task. [16] multivariate moving-average model as applied in [J. Financial
The purpose of this study is to insure the investors Quant. Anal. 33 (1998) 1] and imposing relevant restrictions
and provides them with suitable information for better on the model in light of Sims–Bernanke forecast error
investment. Regarding that future stock price and its variance decomposition. They find that time-varying
estimation are important factors in accurate decision making discounted rates play an active role in explaining price
for better investment for investors; therefore, this survey is deviations. [5]
aiming to estimate the future stock price of companies acting
in Tehran (Iran) stock exchange using the most effective David Enke and Suraphan Thawornwong (2005)
variables related to the stock price Introduces an information gain technique used in
machine learning for data mining to evaluate the predictive
II. REVIEW OF LITERATURE relationships of numerous financial and economic variables.
Neural network models for level estimation and classification
Eldon Y. Li(1994) are then examined for their ability to provide an effective
The purpose of his paper is to answer two of the most forecast of future values. A cross-validation technique is also
frequently asked questions: “What are neural networks?” employed to improve the generalization ability of several
“Why are they so popular in today's business fields?” The models. The results show that the trading strategies guided by
paper reviews the common characteristics of neural networks the classification models generate higher risk-adjusted profits
and discusses the feasibility of neural-net applications in than the buy-and-hold strategy, as well as those guided by the
business fields. It then presents four actual application cases level-estimation based forecasts of the neural network and
and identifies the limitations of the current neural-net linear regression models. [4]
technology. [7]
Qing Cao, Karyl B. Leggio, Marc J. Schniederjans (2005)
Kyoung-jae Kimand & Ingoo Han(2000) Their study uses artificial neural networks to predict
Their paper proposes genetic algorithms (GAs) stock price movement (i.e., price returns) for firms traded on
approach to feature discrimination and the determination of the Shanghai stock exchange. We compare the predictive
connection weights for artificial neural networks (ANNs) to power using linear models from financial forecasting literature
predict the stock price index. In this study, GA is employed to the predictive power of the univariate and multivariate
39 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
neural network models. Our results show that neural networks financial distress prediction model. The empirical experiment
outperform the linear models compared. These results are with a total of 37 ratios and 68 listed companies as the initial
statistically significant across our sample firms, and indicate samples obtained a satisfactory result, which testifies for the
neural networks are a useful tool for stock price prediction in feasibility and validity of their proposed methods for the
emerging markets, like China. [17] financial distress prediction. [23]
Yi-Hsien Wang(2007) Zhang Yudong and Wu Lenan(2008)
This study integrated new hybrid asymmetric Their paper proposed an improved bacterial chemo
volatility approach into artificial neural networks option- taxis optimization (IBCO), which is then integrated into the
pricing model to improve forecasting ability of derivative back propagation (BP) artificial neural network to develop an
securities price. Owing to combines the new hybrid efficient forecasting model for prediction of various stock
asymmetric volatility method can be reduced the stochastic indices. Experiments show its better performance than other
and nonlinearity of the error term sequence and captured the methods in learning ability and generalization. [27]
asymmetric volatility simultaneously. Hence, in the ANNS
option-pricing model, the results demonstrate that Grey-GJR– E.L. de Faria and J.L. Gonzalez (2009)
GARCH volatility provides higher predictability than other Their work performs a predictive study of the
volatility approaches. [25] principal index of the Brazilian stock market through artificial
neural networks and the adaptive exponential smoothing
Pei-Chann Chang andChen-Hao Liu(2008) method, respectively. The objective is to compare the
In their study, an integrated system, CBDWNN by forecasting performance of both methods on this market index,
combining dynamic time windows, case based reasoning and in particular, to evaluate the accuracy of both methods to
(CBR), and neural network for stock trading prediction is predict the sign of the market returns. Also the influence on
developed and it includes three different stages: (1) screening the results of some parameters associated to both methods is
out potential stocks and the important influential factors; (2) studied. Their results show that both methods produce similar
using back propagation network (BPN) to predict the buy/sell results regarding the prediction of the index returns. On the
points (wave peak and wave trough) of stock price and (3) contrary, the neural networks outperform the adaptive
adopting case based dynamic window (CBDW) to further exponential smoothing method in the forecasting of the market
improve the forecasting results from BPN. movement, with relative hit rates similar to the ones found in
The empirical results show that the CBDW can assist the other developed markets. [6]
BPN to reduce the false alarm of buying or selling decisions.
[15] III. OBJECTIVES
The present study attempts to undertake the following
Sheng-Hsun Hsu and JJ Po-An Hsieh (2008) objectives:
Their study employs a two-stage architecture for 1- Considering the main variables to estimate future stock
better stock price prediction. Specifically, the self-organizing price of companies acting in stock exchange.
map (SOM) is first used to decompose the whole input space 2- Price estimation using two methods of artificial neural
into regions where data points with similar statistical network and linear regression neural networks and comparison
distributions are grouped together, so as to contain and capture of these two methods’ results.
the non-stationary property of financial series. After
decomposing heterogeneous data points into several IV. RESEARCH METHODOLOGY
homogenous regions, support vector regression (SVR) is
applied to forecast financial indices. The proposed technique A. Sample Unit
is empirically tested using stock price series from seven major The population of present study including all
financial markets. The results show that the performance of companies who were acting in Tehran stock exchange in
stock price prediction can be significantly enhanced by using 1380– 1386. There fore, those companies whose symbol was
the two-stage architecture in comparison with a single SVR not active during this period were omitted and finally, 100
model. [20] companies were chosen. The scope of subject in this study
includes the consideration of the relationship between macro
Wei-Sen Chen and Yin-Kuan Dua(2008) economic and financial variables with stock future price.
Their paper adopted the operating rules of the Taiwan Scope of locative of this study includes all accepted
stock exchange corporation (TSEC) which were violated by companies who were active in Tehran stock exchange from
those companies that were subsequently stopped and early 1379 to the end of 1386.
suspended, as the range of the analysis of this research. In
addition, this paper also used financial ratios, other non- B. Data Collection Method
financial ratios, and factor analysis to extract adaptable In this study, we used 10 macro economic variables
variables. Moreover, the artificial neural network (ANN) and and 30 financial variables to study their effects on stock future
data mining (DM) techniques were used to construct the price. Data related to macro economic variables were collected
40 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
through Central Bank yearbook, economic reports and balance If researcher wants to estimate the dependent variable
sheet of Central Bank and Monetary and financial Research by one or more independent variables, he will use a linear
center of Iran Central Bank and data related to companies regression model. This model will be shown as follows.
financial variables were calculated collected through Amount of P for each set of data will result in
companies financial statements sand informational Agency of minimum μ .When ever we use standard scores instead of
Tehran(Iran) stock exchange. raw variables in the analysis, p regression coefficients will be
shown as B. This relation will be shown as.
C. Methodology Steps Linear regression can be a method to estimate a set of
1. Identifying related factors and omitting additional variables time series.
(among macro economic and financial variables) through the Average of financial and macro economic variables of
analysis of independent components. identified resources in the beginning of each year are
2. Modeling and estimating stock future price through the independent variables in these estimations. Dependent
linear regression equation. variables Q are the real output of the company in estimation
3. Modeling and estimating stock future efficiency using model, which dependent on price data of all stocks in our
General regression neural network. sample. Dependent variable will be estimated using regression
4. Comparison of result related to these methods. step method (OLS). All independent variables will enter to the
regression equation. These in dependent variables with P
a) Independent Components Analysis (ICA) values more than 5% will be omitted in estimation period and
To estimate financial time series, it is necessary to at last, we will choose a subset of independent variables.
use a set of continuous descriptive input variables among a Olson & Mossman state that variables of 3 to 7 independent
very huge set of primary inputs. variable will show the best estimations for this period.
It is difficult to choose a significant and suitable subset of According this study if step solution method chooses more
input variables. In several scientific fields, it is difficult to find than eight independent variables, P – value will be decreased
a reasonable transfer for a huge set of multi-data. to 3% or 4% , and if step solution method chooses one or two
Our purpose is to use a technique to summarize independent variables, P- value will be increased to 10% to include more
components of time series in a set of variables which is named variables.
independent components Analysis (ICA). This method will k
decrease the number of descriptive variables by decreasing a
set of financial and economic information into smaller subsets
Q j ,t = ∑P
i =1
i ,t * F j ,i ,t −1 + u j ,t (1)
of independent components and maintaining the suitable K = the number of independent variables
information. Removing the random elements from each data P = regression coefficient of independent variable I in month t
set will facilitate the identification of relationship between Fj, i, t-1 = independent variable I for stock j at the end of previous
independent components and stock indexes. period (month t-1).
Independent components Analysis are process to summarize a Uj, t = error terms for each regression
new set of statistical independent components in a guide Qj, t = price of (dependent variable) stock j in month t
vector. These components will show some estimations of data
main resource. c) General Regression Neural Network
This process supposes a matrix of time series which includes a GRNN can approximate any arbitrary function from
compound process; so, this process will analyze the historical data. The major strength of GRNN compared to
independent components by creating a matrix when we enter other Ann’s is that its internal structure is not problem
them, and identify the related and unrelated components and dependent.
provide us with the best matrix of estimative variables.
Topology of GRNN
This technique will summarize as follows: • GRNN consists of four layers:
• This technique will summarize independent components of • The first layer is responsible for reception of information.
time series in a set of variables. • The input neurons present the data to the second layer
• This technique will find a way to change data with the (pattern neurons).
minimum statistical dependency among the summarized • The output of the pattern neurons are forwarded to the
components into a linear data. third layer (summation neurons).
• If two random variables are unrelated, they will not be • summation neurons are sent to the fourth layer (output
independent. neuron)
• This technique is so special for analysis and estimation
which uses two matrixes of data covariance and data changes And we can summarize this model as:
by increasing the arrangement of linear and non-linear • This model will consider a few non- linear aspects of the
regression. estimation problem.
• This network model will be taught immediately, and will
b) Linear Regression be suitable for scattered data.
41 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
• First, data will be clustered to decrease the needed layers Cash flow per share
in hidden layer. Inventory turnover rate
• This model enables to solve any problems in monotonous Annual average volume of daily trading relative to annual
functions. average total market capitalization
• This model can not ignore non-related inputs with out the Dividend yield
main revisions in the main algorithm. Dividend payout ratio
Dividend per share
V. FACTORS FOR COMPARISION OF TWO Total of sales to total assets
METHODS RESULTS Bid – ask spread
In time series, it is very important to conform an Market impact of a trade
estimation model to data pattern and we can obtain the Price per share
conformity of estimation method with data pattern by Trading volume
calculating estimation error during the time period. Turnover rate
For example, when a technique of estimation estimates the Commission rate
periodical and seasonal alternations in time series, then Indicator variables for the day of the week effect
estimation error will show the disordered or random Holiday effect
component in time series. January month
Error square mean index is obtained through dividing total Amortized effective spread
error differences square by time series. Error percent absolute Price history
value mean is an index which will be used whenever Past return
estimation of error based on percent is more suitable. Size of firm
Determination coefficient is the most important factor one can Ratio of total debt to stockholder’s equity
explain the relationship between two variants by which. Pastor measure
Ratio of absolute stock return to dollar volume
1- MSE Market depth
2- MAPE Ratio of net income to book equity
3- R
2 Operating income to total assets
Operating income to total sales
VI. CHOOSING FINAL VARIABLES AMONG
PRIMARY VARIABLES Independent components analysis (ICA) most method
40 financial and macroeconomic variables will enter chooses variables with minimum statistical dependency and
independent components analysis method: explanation strength, and then we chose 40 variables
A. Macroeconomic Variables C. Financial Variables
Growth rates of industrial production Earning per share
Inflation rate Size of firm
Interest rate Ratio of total debt to stockholder’s equity
Exchange rate Operating income to total sales
Rate of return on stock public
Unemployment rate D. Macroeconomic Variables
Oil price Inflation rate
Gross Domestic product (GDP) Money supply 1 (M1)
Money supply 1 (M1) Growth rates of industrial production
Money supply 2 (M2)
VII. RESULTS AND ANALYSES
B. Financial Variables Here, we show the results of two methods and the
Book value per share model created by linear regression and neural network
Sales per share methods and comparison of the models’ results using the
Earning per share above-mentioned factors.
42 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
A. Estimation of Linear Regression Model
Table I: Model Summary
Durbin-Watson Std. Error of Adjusted R Square R Model
The Estimate R Square
2,013 83,487569 0,211 0,279 0,368 1
A Predictors: (Constant), EXCHANGE, DEPT, EPS, SOF, INFLATION, M1
B Dependent Variable: Stock Price
Table II: table of ANOVA
Model Sum Squares df Mean Square F sig
1 Regression 381258,653 7
441,257
Residual 287923,471 1117 5,009 0,000a
382,186
Total 326214,368 1123
a. Predictors: (Constant), EPS, SOF, income, inflation, M1, Dept, ratio
Table III: table of Coefficients a
Standardized
Unstanddardized Coefficients
Model Coefficients t sig
B Std. Error Beta
1 (Constant) -14,61 39,216 -2,498 0,459
ratio 2,009 0,843 2,138 3,181 0,001
inflation 7,162 3,728 0,179 2,772 0,005
income -0.208 0.096 -0,022 -0,532 0,066
Dept 0.0309 0,223 0,031 1,991 0,042
SOF -0,0001 0,001 0,027 2,107 0,047
EPS 0,189 0,005 0,184 2,987 0,001
a. Dependent Variable: stock price
Y=-14.61+2.009X1+7.162X2+0.0309X3-0.0001X4+0.189X5 (2)
Y: stock price
X 1: Growth rate of industrial products
X 2: Inflation rate
X 3: Ratio of total liabilities to stockholders pay
X 4: Company’s degree
X 5: Earning per share
As it is observed financial variable of operational and t value is (-0.532), so this variable will not be mentioned
income to total selling are not mentioned in the model should in the model.
be more and than 1.98 and Sig less than 0.05, respectively, for According the tables which calculated by algebra
a variable to be meaningful and mentioned in the model. There method, multi correlation factor (R) is 0.368. That is, it is
fore, the significance level for this variable is more than 5% 0.368 correlations between independent variables and
dependent variables. This means that independent variables
43 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
which remained in regression equation are 0.368 and have a Also, we calculated spread = 0.8326.becaues spread of more
significant relation ship with stock price. than 1 will cause in hyper fitting of network and a larger
Coefficient of determination (R2) or (Pearson’s correlation region of input to output vector. And its very small value will
coefficient) show a ratio of total dependent variable changes cause in increase of estimation error. In a way that function
which are calculated by dependent variables of the equation. will have a high slope and neuron which weights are more
So, in dependent variables could estimate 0.279 variance of similar to its input will have more outputs than other neurons.
dependent variable (price). Moreover, according the B In this network member of input vector P will be calculated
standard coefficient one can say growth rate variable of for all neurons and will be calculated for transfer function
industrial products (Beta = 2.138) in a significant level 0.001 (sigmoid function) and the output will be gained after
is the most descriptive for dependent variable value or stock multiplying in weights vector and adding to bias. And this
price. output will be a vector. We used a 3- layer general regression
neural network which had seven neurons in internal layer and
B. Estimation of General Regression Neural Network fourteen neurons in middle layer and one neuron in external to
Model design.
To estimate General Regression Neural Network After using learning algorithm and network education of 37
Model, we consider 7 variables obtained from dependent educational periods, network error graph is as follows.
components analysis as input (P) and stock price as output (T).
a) Model One
Is an estimated model which is not educated and has its own real error?
Y=-8.11+ 1.83X1-0.000011X2+7.16X3+2.07X4-.00008X5+0.957X6+0.243X7 (3)
b) Model Two a larger region of input to output vector, and its very small
- Which is obtained through using learning algorithm in value will cause in increase of estimation error.
model One which has the minimum error. - We used a 3 – layer general regression neural network
- LM learning algorithm was chosen which has the most which had seven neurons in internal layer, fourteen neurons
adaptability to all survey aspects. in middle layer and one neuron in external layer to design.
- Value of SPREAD = 0.8326 was used because spread
value of more than 1 will case in hype fitting in network and
Fig1: Mean Squared Error of GRNN Network
(4)
Y=-11.07+4.11X1-0.000009X2+6.74X3+1.31X4-0.0007X5+0.39X6+0.131X7
44 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
coefficient will be decreased significantly after using training
VIII. CONCLUSION in neural network which will be shown the increase of
A. Comparison of two Methods Results estimation factor in trained neural network.
As it is shown in table below, value of estimation
error square mean, absolute mean of error percent and (R2)
Table IV: the compare of two methods
R2 MAPE MSE
0,71 1,42 76,2 GRNN
0,368 3,73 97,6 regression linear
After using LM algorithm and network training, above statistics will be changed as follows
Table V: the compare of two methods after using LM algorithm
R2 MAPE MSE
0,98 0,78 31,6 GRNN
Neural networks are quicker than other methods exponential smoothing methods, Expert Systems with
including regression because they are executing parallel and Applications Article in Press.
tolerate more errors and also these networks can make rules
without any implicit formula which are understandable in an [7] Eldon Y. Li, 1994; artificial neural networks and their
environment of chaos and implicitly, such as stock exchange business applications, Information & Management, Volume
which is a very important factor. 27, Issue 5, Pages
As said before, in this survey, we chose 100 303-313
companies of high quality in Tehran stock exchange. And we
understand that artificial neural network method is better than [8] Hwang, H. B. (2001). Insights into neural-network
linear regression method in estimation. And neural network forecasting of time series corresponding to ARMA (p, q)
method is more descriptive than linear regression method, and structures. Omega, 29, 273-289.
at last, the research theory, neural network method is better
than linear regression method, is approved in this study.
[9] Kyoung-jae Kimand & Ingoo Han,2000; Genetic
REFERENCES algorithms approach to feature discretization in artificial
[1] Armstrong, J. S. (1988). Research needs in forecasting. neural networks for the prediction of stock price index,
International Journal of Forecasting, 4, 449-465. Institute of Science and Technology,
South Korea
[2] Armstrong, J. S. (2001). Principles of Forecasting: A
Handbook for Researchers and Practitioners. Boston, MA: [10] Makridakis, S., Anderson, A., Carbone, R., Fildes, R.,
Kluwer Academic Publishers. Business Forecasting with Hibdon, M,. Lewandowski, R., Newton, J., Parzen, E., &
Artificial Neural Networks: An Overview 15 Winkler, R. (1982). The accuracy of extrapolation (time
series) methods: Results of a forecasting competition. Journal
[3] Chung et al., 2007 P.C. Chang, Y.W. Wang and C.H. Liu, of Forecasting, 1(2), 111-153.
The development of a weighted evolving fuzzy neural network
for PCB sales forecasting, Expert Systems with Applications [11] Medeiros, M. C. & Pedreira, C. E. (2001). What are the
32, pp. 86–96. effects of forecasting linear time series with neural networks?
Engineering Intelligent Systems, 237-424.
[4] David Enke and Suraphan Thawornwong,2005; The use of
data mining and neural networks for forecasting stock market [12] Miao et al., 2007 K. Miao, F. Chen and Z.G. Zhao, Stock
returns, Journal of Finance, USA price forecast based on bacterial colony RBF neural network,
Journal of QingDao University 20 (2) (2007), pp. 50–54 (in
[5] D. E. Allen, W. Yang, 2004; Do UK stock prices deviate Chinese).
from fundamentals? Volume 64, Pages 373-383
[13] Oh and Kim, 2002 K.J. Oh and K.-J. Kim, Analyzing
[6] E.L. de Faria and J.L. Gonzalez(2009); Predicting the stock market tick data using piecewise non linear model,
Brazilian stock market through neural networks and adaptive Expert System with Applications 22 (3) (2002), pp. 249–255
45 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
[14] Olson, Dennis and Mossman, Charls (2003), neural organizing map and support vector regression, Expert Systems
network forecasts of Canadian stock returns using accounting with Applications, Volume 36, Issue 4, Pages 7947-7951.
ratios, international journal of foresting 19, pp 453-465.
[21] Tan et al., 2005 Tan, T. Z., Quek, C., & Ng, G. S. (2005).
[15] Pei-Chann Chang and Chen-Hao Liu,(2008); A neural Brain inspired genetic complimentary learning for stock
network with a case based dynamic window for stock trading market prediction. In IEEE congress on evolutionary
prediction; Expert Systems with Applications computation, 2–5th September (Vol. 3, pp. 2653–2660).
Volume 36, Issue 3, Part 2, Pages 6889-6898.
[22] Wang, 2003 Y. Wang, Mining stock prices using fuzzy
[16] Pino et al., 2008 R. Pino, J. Parreno, A. Gomez and P. rough set system, Expert System with Applications 24 (1)
Priore, Forecasting next-day price of electricity in the Spanish (2003), pp. 13–23.
energy market using artificial neural networks, Engineering
Applications of Artificial Intelligence 21 (2008), pp. 53–62. [23] Wei-Sen Chen and Yin-Kuan Dua, 2008; Using neural
networks and data mining techniques for the financial distress
[17] Qing Cao, Karyl B. Leggio, Marc J. Schniederjans,2005; prediction model, The Journal of Finance
A comparison between Fama and French's model and artificial
neural networks in predicting the Chinese stock market, [24] Widrow, B., Rumelhart, D., & Lehr, M. A. (1994). Neural
Computers & Operations Research, Volume32,pages2499- networks: Applications in industry, business and science.
2512 Communications of the ACM,
[18] Ritanjali Majhi and Panda, 2007 Ritanjali Majhi, & [25] Yi-Hsien Wang(2007); Nonlinear neural network
Panda, G., (2007). Stock market prediction of S&P 500 and forecasting model for stock index option price: Hybrid GJR–
DJIA using bacterial foraging optimization technique. In 2007 GARCH approach, Expert Systems with ApplicationsVolume
IEEE congress on evolutionary computation (CEC 2007) (pp. 36, Issue 1, Pages 564-570.
2569–2579). [26] Zhang, G. P. (2001). An investigation of neural networks
for linear time-series forecasting. Computers & Operations
[19] Shaikh A. Hamid and Zahid Iqbal,2003; Using neural Research, 28, 1183-1202.
networks for forecasting volatility of S&P 500 Index futures
prices, School of Business, USA [27] Zhang Yudong and Wu Lenan,2008; Stock market
prediction of S&P 500 via combination of improved BCO
[20] Sheng-Hsun Hsu and JJ Po-An Hsieh(2008); A two-stage approach and BP neural network, Expert Systems with
architecture for stock price forecasting by integrating self- ApplicationsVolume 36, Issue 5, Pages 8849-8854.
46 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
A Methodology for Empirical Quality Assessment of
Object-Oriented Design
Devpriya Soni1
Department of Computer Applications
Dr. Namita Shrivastava2
Asst. Prof. Deptt. of Mathematics
Dr. M. Kumar3
Retd. Prof. of Computer Applications
Maulana Azad National Institute of Technology (A Deemed University)
Bhopal 462007, India
Abstract: The direct measurement of quality is difficult management and sound empirical research. For example,
because there is no way we can measure quality factors. For Kitchenham et.al. [2] write: "Unless the software measurement
measuring these factors, we have to express them in terms of community can agree on a valid, consistent, and
metrics or models. Researchers have developed quality models comprehensive theory of measurement validation, we have no
that attempt to measure quality in terms of attributes, scientific basis for the discipline of software measurement, a
characteristics and metrics. In this work we have proposed the situation potentially disastrous for both practice and research."
methodology of controlled experimentation coupled with power
of Logical Scoring of Preferences to evaluate global quality of According to Fenton [4], there are two types of validation
four object-oriented designs. that are recognized: internal and external. Internal and external
validations are also commonly referred to as theoretical and
Keywords: Software Quality, Quantitative Measurement, LSP. empirical validation respectively [2]. Both types of validation
are necessary. Theoretical validation requires that the software
engineering community reach a consensus on what are the
I. INTRODUCTION properties for common software maintainability metrics for
Software quality must be addressed during the whole object-oriented design. Software organizations can use
process of software development. However, design is of validated product metrics in at least three ways: to identify high
particular importance in developing quality software for two risk software components early, to construct design and
reasons: (i) design is the first stage in software system creation programming guidelines, and to make system level predictions.
in which quality requirement can begin to be addressed. Error Empirical validation can be performed through surveys,
made at this stage can be costly, even impossible to be experiments and case-study.
rectified. (ii) design decision has significant effect on quality
on the final product. Recently, Kumar and Soni [5] have proposed a hierarchical
model to evaluate quality of object-oriented software. The
Measuring quality in the early stage of software proposed model of [5] has been validated both theoretically as
development is the key to develop high-quality software. well as empirically in a recent paper by Soni, Shrivastava and
Analyzing object-oriented software in order to evaluate its Kumar [6]. Further the model has been used for evaluation of
quality is becoming increasingly important as the paradigm maintainability assessment of object-oriented design quality,
continues to increase in popularity. A large number of software especially in design phase, by Soni and Kumar [7]. In this
product metrics have been proposed in software engineering. research, the authors have attempted to empirically validate the
While many of these metrics are based on good ideas about object-oriented design model of [5] using the methodology of
what is important to measure in software to capture its controlled experiment. A global quality assessment of several
complexity, it is still necessary to systematically validate them. designs have been made using the method of Logical scoring of
Recent software engineering literature has shown a concern for Preferences (LSP). The Section II deals with experimental
the quality of methods to validate software product metrics environment and data collection and the Section III deals with
(e.g., see [1][2][3]). This concern is due to fact that: (i) the method of Logical Scoring of Preferences (LSP) used to
common practices for the validation of software engineering evaluate the overall quality of software design. Section IV
metrics are not acceptable on scientific grounds, and (ii) valid gives the steps for design quality evaluation and Section V
measures are essential for effective software project analyzes and compare the quality of selected designs.
47 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
II. EXPERIMENTAL ENVIRONMENT AND DATA COLLECTION yields an output preference e0, for the global preference E, or
For the purpose of empirically evaluating object-oriented any subfeature Ei. It is calculated as:
design for its quality using the hierarchical quality model e0 =(W1E1r + ... + WkEkr)1/r , W1 + … + Wk = 1 (3)
proposed by Kumar and Soni [5], we needed a few designs
created independently for the same problem/project. We used where e0 is the output preference, W is the weight of the
12 students of fifth semester, Master of Computer Applications particular feature, E is the elementary preference of a feature, k
of Maulana Azad National Institute of Technology, Bhopal. is the number of features in the aggregation block and r is a
They had studied courses on Data Base Management System, conjunctive/disjunctive coefficient of the aggregation block.
Object-Oriented Analysis and Design and C++ programming For each Ei a weight Wi is defined for the corresponding
language course including laboratory on these topics. We feature. The weight is a fraction of 1 and signifies the
formed three groups of 4 students each. These groups were importance of a particular feature within the aggregation block.
provided a written problem statement (user requirements) for The r coefficient represents the degree of simultaneity for a
designing a small sized library management system for group of features within an aggregation block. This is described
MANIT library. For any difficulty they were free to consult in terms of conjunction and disjunction. The modification of
library staff. The three groups independently created one above model, called Logic Scoring of Preferences, is a
design each for the library management system. They were generalization of the additive-scoring model and can be
asked to follow Object-Oriented Analysis and Design expressed as follows
methodology [8] for designing and were given two months to P/GP(r) = (W1EP1r+W2EP2r + ... + Wm EPm r)1/r (4)
complete the work and produce design using methodology of
discussion and walk-through within its group. The three where Wi weights and EPi are elementary preferences. The
designs produced are given in Fig 13, 14 and 15 (see Appendix power r is a parameter selected to achieve the desired logical
A). To make this work more reliable and trustworthy, we also relationship and polarization intensity of the aggregation
evaluated an object-oriented design of Human Resource function. Value of 'r' used in Logic Scoring of Preferences
Department [13]. This design was used to raise HR database, method is given in Table I.
which is being successfully used by Bharat Heavy Electrical
Limited (BHEL), Bhopal. This design is produced in Fig 16 TABLE I. VALUE OF R IN LOGIC SCORING OF PREFERENCE METHOD
(see Appendix A).
Sym
Operation d r2 r3 r4 r5
bol
III. LOGICAL SCORING OF PREFERENCES METHOD ARITHMETIC
MEAN
A 0.5000 1.000 1.000 1.000 1.000
The Logical Scoring of Preferences (LSP) method was WEAK QC (-) C-- 0.4375 0.619 0.573 0.546 0.526
proposed in 1996 by Dujmovic [9][11][12] who used it to WEAK QC (+) C-+ 0.3125 -0.148 -0.208 -0.235 -0.251
evaluate and select complex hardware and software systems. It
is grounded on Continuous Preference Logic. In LSP, the The strength of LSP resides in the power to model different
features are decomposed into aggregation blocks. This logical relationships:
decomposition continues within each block until all the lowest
level features are directly measurable. A tree of decomposed Simultaneity, when is perceived that two or more input
features and sub-factors at one level will have a number of preferences must be present simultaneously
aggregation blocks, each resulting in a higher-level factors Replaceability, when is perceived that two or more
going up the tree right through to the highest-level features. For attributes can be replaced (there exist alternatives, i.e., a
each feature, an elementary criterion is defined. For this, the low quality of an input preference can always be
elementary preference Ei needs to be determined by calculating compensated by a high quality of some other input).
a percentage from the feature score Xi. This relationship is
represented in the following equation: Neutrality, when is perceived that two or more input
preferences can be grouped independently (neither
Ei=Gi(Xi) (1) conjunctive nor disjunctive relationship)
where E is the elementary preference, G is the function for
Symmetric relationships, when is perceived that two or
calculating E, X is the score of a feature and i is the number of
more input preferences affect evaluation in the same
a particular feature. The elementary preferences for each
logical way (tough may be with different weights).
measurable feature in one aggregation block are used to
calculate the preference score of the higher feature. This in turn Asymmetric relationships, when mandatory attributes are
is used with the preferences scores of an even higher feature, combined with desirable or optional ones; and when
continuing right up until a global preference is reached. The sufficient attributes are combined with desirable or
global preference is defined as: optional ones.
E = L(E1 ...,En) (2)
IV. STEPS FOR DESIGN QUALITY EVALUATION
where E is the global preference, L is the function for
evaluating E, En is the elementary preference of feature n, n is
the number of features in the aggregation block. The function L Steps required for the evaluation of design quality are:
48 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
1. Consider a hierarchical model for quality characteristics This function is a mapping of the measured value in the
and attributes (i.e. A1 …. An): here, we define and specify the empirical domain [10] into the new numerical domain. Then
quality characteristics and attributes, grouping them into a the final outcome is mapped in a preference called the
model. For each quantifiable attribute Ai, we can associate a elementary quality preference, EQi. We can assume the
variable Xi, which can take a real value: the measured value. elementary quality preference EQi as the percentage of
1 Functionality 4 Reusability
1.1 Design Size 4.1 Design Size
1.1.1 Number of Classes (NOC) 4.1.1 Number of Classes (NOC)
1.2 Hierarchies 4.2 Coupling
1.2.1 Number of Hierarchies (NOH) 4.2.1 Direct Class Coupling (DCC)
1.3 Cohesion 4.3 Cohesion
1.3.1 Cohesion Among Methods of Class (CAM) 4.3.1 Cohesion Among Methods of Class (CAM)
1.4 Polymorphism 4.4 Messaging
1.4.1 Number of Polymorphic Methods (NOP) 4.4.1 Class Interface Size (CIS)
1.5 Messaging
1.5.1 Class Interface Size (CIS) 5 Maintainability
5.1 Design Size
2 Effectiveness 5.1.1 Number of Classes (NOC)
2.1 Abstraction 5.2 Hierarchies
2.1.1 Number of Ancestors (NOA) 5.2.1 Number of Hierarchies (NOH)
2.1.2 Number of Hierarchies (NOH) 5.3 Abstraction
2.1.3 Maximum number of Depth of Inheritance 5.3.1 Number of Ancestors (NOA)
(MDIT) 5.4 Encapsulation
2.2 Encapsulation 5.4.1 Data Access Ratio (DAR)
2.2.1 Data Access Ratio (DAR) 5.5 Coupling
2.3 Composition 5.5.1 Direct Class Coupling (DCC)
2.3.1 Number of aggregation relationships 5.5.2 Number of Methods (NOM)
(NAR) 5.6 Composition
2.3.2 Number of aggregation hierarchies (NAH) 5.6.1 Number of aggregation relationships
2.4 Inheritance (NAR)
2.4.1 Functional Abstraction (FA) 5.6.2 Number of aggregation hierarchies (NAH)
2.5 Polymorphism 5.7 Polymorphism
2.5.1 Number of Polymorphic Methods (NOP) 5.7.1 Number of Polymorphic Methods (NOP)
5.8 Documentation
3 Understandability 5.8.1 Extent of Documentation (EOD)
3.1 Encapsulation
3.1.1 Data Access Ratio (DAR)
3.2 Cohesion
3.2.1 Cohesion Among Methods of Class (CAM)
3.3 Inheritance
3.3.1 Functional Abstraction (FA)
3.4 Polymorphism
3.4.1 Number of Polymorphic Methods (NOP)
Figure 1 Proposed hierarchical design quality model
2. Defining criterion function for each attribute, and requirement satisfied by the value of Xi. In this sense, EQi =
applying attribute measurement: In this process, we define 0% denotes a totally unsatisfactory situation, while EQi =
the basis for elementary evaluation criteria and perform the 100% represents a fully satisfactory situation, Dujmovic
measurement sub-process. Elementary evaluation criteria (1996). Ultimately, for each quantifiable attribute, the
specifies how to measure quantifiable attributes. The result is measurement activity should be carried out.
an elementary preference, which can be interpreted as the 3. Evaluating elementary preferences: In this task, we
degree or percentage of satisfied requirement. For each variable prepare and enact the evaluation process to obtain an indicator
Xi , i = 1, ...,n it is necessary to establish an acceptable range of of partial preference for design. For n attributes, the mapping
values and define a function, called the elementary criterion. produces n elementary quality preferences.
49 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
4. Analyzing and assessing partial and global quality the Maximum Depth of Inheritance (MDIT) metric is a multi-
preferences: In this final step, we analyze and assess the level discrete absolute criterion defined as a subset, where 0
elementary, partial and total quantitative results regarding the implies depth is 1 level; 6 or more implies depth is satisfactory
established goals. (100%).
The preference scale for the Data Access Ratio (DAR)
A. Establishing Elementary Criteria metric is a multi-level discrete absolute criterion defined as a
subset, where 0 implies ratio is less then 5%; 80% or more
For each attribute Ai we associate a variable Xi which can implies satisfactory (100%) ratio. The preference scale for the
take a real value by means of the elementary criterion function. Extent of Documentation (EOD) metric is a multi-level discrete
The final result represents a mapping of the function value into absolute criterion defined as a subset, where 0 implies that
the elementary quality preference, EQi. The value of EQi is a documentation present is 5% or less; 100% implies satisfactory
real value that ‘fortunately’ belongs to the unit interval. (100%) documentation available. Similar criteria were
Further, the preference can be categorized in three rating levels followed for other metrics as well.
namely: satisfactory (from 60 to 100%), marginal (from 40 to
60%), and unsatisfactory (from 0 to 40%). For instance, a
marginal score for an attribute could indicate that a correction B. Logic Aggregation of Elementary Preferences
action to improve the attribute quality should be taken into
account by the manager or developer. Figure 2, shows sample Evaluation process is to obtain a quality indicator for each
elementary criteria for attributes. competitive system then applying a stepwise aggregation
Number of Classes Number of
mechanism, the elementary quality preferences can be
(NOC) 100 8 Hierarchie 100 5 accordingly structured to allow the computing of partial
s (NOH) preferences. Figure 3 to 7 depicts the aggregation structure for
0= no classes
available
functionality, effectiveness, understandability, reusability and
50 50
0= no
maintainability.
1=8 or more hierarchy
classes present available 1.1
0% 0 0% 0 1.1.1 0.3
1=
Hierarchy
level is 5
1.2
1.2.1
or more 0.2
1.3 1
Maximum Depth of Data
Inheritance (MDIT) Access
1.3.1 0.15 C--
100 6 100 80%
Ratio
0= Depth is 1 (DAR)
level 1.4
50 50
1.4.1 0.15
1= Depth is 6 or 0= ratio is
more less than 1.5
0% 1 5% 0% 5% 1.5.1
0.2
1= if ratio Figure 3 Structure of Partial Logic Aggregation for Functionality Factor
is 80% or
more
Extent of Documentation (EOD) 2.1.1
0.3
100 100%
0= Documentation is upto 5% 2.1
2.1.2 A
1= documentation is upto 100% 50 0.3 0.35
2.1.3 0.4
0% 5% 2.2
2.2.1
0.3 2
Figure 2 Sample elementary criteria defined as preference scales for the C--
hierarchical model.
The preference scale for the Number of Classes (NOC) 2.3.1 0.44
2.3
metric is a multi-level discrete absolute criterion defined as a A
0.55
subset, where 0 implies no classes available; 8 or more implies 0.2
satisfactory (100%) number of classes present. The preference 2.3.2
scale for the Number of Hierarchies (NOH) metric is a multi- 2.5
level discrete absolute criterion defined as a subset, where 0 2.5.1
implies no hierarchy available; 5 or more implies satisfactory 0.15
(100%) number of hierarchies present. The preference scale for Figure 4 Structure of Partial Logic Aggregation for Effectiveness Factor
50 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
The global preferences can be obtained through repeating
3.1 the aggregation process at the end. The global quality
preference represents the global degree of satisfaction of all
3.1.1 involved requirements. To evaluate the global quality it is
0.3 necessary to assign elementary preference to each metric of the
3.2
hierarchical model in Figure 1. Figure 8 shows the high-level
3.2.1 C-- 3
0.4 characteristics aggregation to yield the global preference. The
stepwise aggregation process follows the hierarchical structure
3.4 of the hierarchical model from bottom to top. The major CLP
3.4.1 operators are the arithmetic means (A) that models the
0.3
neutrality relationship; the pure conjunction (C), and quasi-
conjunction operators that model the simultaneity one; and the
Figure 5 Structure of Partial Logic Aggregation for Understandability Factor pure disjunction(D), and quasi-disjunction operators that model
the replaceability one. With regard to levels of simultaneity, we
may utilize the week (C-), medium (CA), and strong (C+)
quasi-conjunction functions. In this sense, operators of quasi-
conjunction are flexible and logic connectives. Also, we can
tune these operators to intermediate values. For instance, C-- is
4.1
4.1.1 positioned between A and C- operators; and C-+ is between
0.15 CA and C operators, and so on. The above operators (except A)
4.2
4 mean that, given a low quality of an input preference can never
4.2.1
0.3 be well compensated by a high quality of some other input to
4.3 C--
output a high quality preference. For example in the Figure 3 at
4.3.1 0.3 the end of the aggregation process we have the sub-
characteristic coded 1.1 (called Design Size in the hierarchical
4.4
4.4.1 Model, with a relative importance or weight of 0.3), and 1.2
0.25 sub- characteristic (Hierarchies, 0.2 weighted), and 1.3 sub-
characteristic (Cohesion, 0.15 weighted), and 1.4 sub-
characteristic (Polymorphism, 0.15 weighted), and 1.5 sub-
Figure 6 Structure of Partial Logic Aggregation for Reusability Factor characteristic (Messaging, 0.3 weighted).
All these sub-characteristic preferences are input to the C--
5.1 logical function, which produce the partial global preference
coded as 1, (called Functionality).
5.1.1
0.2
5.2 Functionality
5.2.1 1
0.15 0.25
5.3
5.3.1
0.15 Effectiveness
5.4 2
5.4.1 0.1 Global
0.05 Quality
0.5
Preference
5.5.1 5 Understandability C-+
5.5 3
A C-+
0.2
5.5.2 0.5 0.1
Reusability
5.6.1 0.45 4
A 5.6 0.2
5.6.2 0.55 0.1
Maintainability
5.7 5
5.7.1 0.25
0.05
5.8
5.8.1 Figure 8 Global Aggregation of Preferences of Quality
0.2
Figure 7 Structure of Partial Logic Aggregation for Maintainability Factor
51 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
V. ANALYZING AND COMPARING THE QUALITY OF THE
SELECTED DESIGNS
TABLE IV. PARTIAL QUALITY PREFERENCE FOR EFFECTIVENESS OF DESIGN
We have measured metrics values of all the four designs
(shown in Appendix A in Fig. 13 to 16) and have worked out
elementary preferences as discussed in the previous section. Characteristics and
LMS -1 LMS -2 LMS -3 HRIS
The results of partial quality preferences for functionality, Sub-characteristics
2. Effectiveness
understandability, reusability, effectiveness and maintainability 2.1 Abstraction
of designs are shown in Table II to VI. A comparison of partial 2.1.1 Number of
.5 .4 .3 .8
and global preferences of factors is given in Table VII for all Ancestors (NOA)
the four designs. A bar chart representing the global quality of 2.1.2 Number of
.4 .4 .4 .7
Hierarchies (NOH)
four designs is given in Fig 12. 2.1.3 Maximum
number of Depth of .5 .4 .2 .6
Inheritance (MDIT)
TABLE II. PARTIAL QUALITY PREFERENCE FOR FUNCTIONALITY OF 2.2 Encapsulation
DESIGN
2.2.1 Data Access
1 .8 .6 .8
Ratio (DAR)
2.3 Composition
2.3.1 Number of
Characteristics and aggregation .4 .3 .4 .5
LMS -1 LMS -2 LMS -3 HRIS
Sub-characteristics relationships (NAR)
1. Functionality 2.3.1 Number of
1.1 Design Size aggregation .8 .7 .6 .7
1 hierarchies (NAH)
1.1.1 Number of
Classes (NOC)
EQ=10 1 1 1 2.5 Polymorphism
0% 2.5.1 Number of
1.2 Hierarchies Polymorphic Methods 1 1 1 1
1.2.1Number of (NOP)
Hierarchies (NOH)
.4 .4 .4 .7 Partial Quality
72.00 61.62 51.15 76.71
1.3 Cohesion Preference
1.3.1 Cohesion Among
Methods of Class .8 .7 .6 .8
(CAM)
1.4 Polymorphism
1.4.1 Number of
Polymorphic Methods 1 1 1 .8
(NOP)
1.5 Messaging TABLE V. PARTIAL QUALITY PREFERENCE FOR REUSABILITY OF DESIGN
1.5.1 Class Interface
Size (CIS)
.7 .6 .5 .8
Partial Quality
Preference
77.19 73.54 69.69 86.58
TABLE III. PARTIAL QUALITY PREFERENCE FOR UNDERSTANDABILITY OF Characteristics and
LMS -1 LMS -2 LMS -3 HRIS
DESIGN Sub-characteristics
4. Reusability
4.1 Design Size
Characteristics and Sub- 4.1.1 Number of
LMS -1 LMS -2 LMS -3 HRIS 1 1 1 1
characteristics Classes (NOC)
3. Understandability 4.2 Coupling
3.1 Encapsulation 4.2.1 Direct Class
1 1 1 1
3.1.1 Data Access Ratio Coupling (DCC)
1 .8 .6 .8
(DAR) 4.3 Cohesion
3.2 Cohesion 4.3.1 Cohesion
3.2.1 Cohesion Among Among Methods of .8 .7 .6 .8
.8 .7 .6 .8 Class (CAM)
Methods of Class (CAM)
3.4 Polymorphism 4.4 Messaging
3.4.1 Number of 4.4.1 Class
.7 .6 .5 .8
Polymorphic Methods 1 1 1 1 Interface Size (CIS)
(NOP) Partial Quality
86.06 80.12 73.97 88.75
Partial Quality Preference
91.77 81.60 71.08 85.79
Preference
52 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
TABLE VI. PARTIAL QUALITY PREFERENCE FOR MAINTAINABILITY OF VI. CONCLUSION
DESIGN
We have used the Logical Scoring of Preferences method to
evaluate global quality of four designs, three created by fifth
Characteristics and semester Master of Computer Applications students and the
LMS -1 LMS -2 LMS -3 HRIS
Sub-characteristics
5. Maintainability fourth one created by professionals. As expected the global
5.1 Design Size quality index of design created by professionals has the
5.1.1 Number of highest quality index of 84.07 followed by design LMS-1,
1 1 1 1
Classes (NOC)
5.2 Hierarchies which has the value 78.61. We believe that the methodology
5.2.1 Number of used is quite simple and will provide reasonable estimates for
.4 .4 .4 .7
Hierarchies (NOH) factors like functionality, effectiveness, reusability,
5.3 Abstraction
5.3.1 Number of
understandability, and maintainability and also the overall
.5 .4 .3 .8 quality of software design. It is worth mentioning that a
Ancestors (NOA)
5.4 Encapsulation reasonable estimate of maintainability of software design is
5.4.1 Data Access
Ratio (DAR)
1 .8 .6 .8 going to be very useful for software professionals.
5.5 Coupling
5.5.1 Direct Class
1 1 1 1
Coupling (DCC)
5.5.2 Number of REFERENCES
1 1 1 1
Methods (NOM)
5.6 Composition [1] N. Fenton and B. Kitchenham, "Validating Software Measures," Journal
5.6.1 Number of of Software Testing, Verification and Reliability, vol. 1, no. 2, pp. 27-
aggregation .4 .3 .4 .5 42, 1990.
relationships (NAR) [2] B. Kitchenham, S-L Pfleeger, and N. Fenton, "Towards a Framework for
5.6.2 Number of Software Measurement Validation," IEEE Transactions on Software
aggregation .8 .7 .6 .7 Engineering, vol. 21, no. 12, pp. 929-944, 1995.
hierarchies (NAH)
[3] N. Schneidewind, "Methodology for Validating Software Metrics,"
5.7 Polymorphism
IEEE Transactions on Software Engineering, vol. 18, no. 5, pp. 410-
5.7.1 Number of
Polymorphic 1 1 1 1
422, 1992.
Methods (NOP) [4] N. Fenton, "Software Metrics: Theory, Tools and Validation," Software
5.8 Documentation Engineering Journal, pp. 65-78, January, 1990.
5.8.1 Extent of [5] M.Kumar and D. Soni, “Observations on Object-Oriented Design
Documentation .7 .8 .7 .7 Assessment and Evolving New Model”, Proc of The National
(EOD) Conference on Software Engineering, pp. 161-164, 2007.
Partial Quality
68.54 65.82 59.98 79.98 [6] D. Soni, R Shrivastava and M.Kumar “A Framework for Validation of
Preference
Object-Oriented Design Metrics”, (IJCSIS) International Journal of
Computer Science and Information Security, Vol 6, no 3, pp. 46-52, Dec
TABLE VII. QUALITY FACTORS AND GLOBAL QUALITY FACTORS OF 2009.
VARIOUS DESIGNS
[7] D. Soni and M.Kumar “Maintainability assessment of object-oriented
design quality”, International Journal on Computer Engineering and
Quality
Global Information Technology, Vol 2, no 2, pp. 35-41, 2009.
Factors
Functio Effecti Understa Reusa Maintai Quality [8] J. Rumbaugh et al., “Object-Oriented Modeling and Design,” Prentice
nality veness ndability bility nability Prefere
nces
Hall, 1991.
Design
[9] J.J. Dujmovic, "A Method for Evaluation and Selection of Complex
LMS -1 77.19 72 91.77 86.06 68.54 78.61 Hardware and Software Systems", The 22nd International Conference
LMS -2 73.54 61.62 81.6 80.12 65.82 72.9 for the Resource Management and Performance Evaluation of Enterprise
CS. CMG 96 Proceedings, Vol. 1, pp.368-378, 1996.
LMS -3 69.69 51.15 71.08 73.97 59.98 66.01
[10] N.E. Fenton, S.L. Pfleeger, “Software Metrics: a Rigorous and
HRIS 86.58 76.71 85.79 88.75 79.98 84.07 Practical Approach”, 2nd Ed., PWS Publishing Company, 1997.
[11] J.J. Dujmovic, and R. Elnicki, "A DMS Cost/Benefit Decision Model:
Mathematical Models for Data Management System Evaluation,
Global Quality Preference Comparison, and Selection ", National Bureau of Standards, Washington
D.C. Nº GCR 82-374. NTIS Nº PB 82-170150, pp. 150, 1982.
HRIS 84.07 [12] Luis Olsina Santos, “Web-site Quality Evaluation
Method: a case Study on Museums” ICSE 99 – 2nd
LMS - 3 66.01
Workshop on Software Engineering over the Internet,
1999.
Global Quality Preference
[13] M.Kumar and S.K. Gandhi, “Object-Oriented Modeling Design
LMS – 2 72.9
Approach to General Human Resource System”, Journal of MACT, Vol.
34,35, 2003-04.
LMS - 1 78.61
Figure 12 Global Quality of Designs
53 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
Appendix A
Figure 14 Library Management System (LMS-2)
Figure 13 Library Management System (LMS-1)
Figure 15 Library Management System (LMS-3)
54 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No.2, 2010
Figure 16 Human Resource Information System (HRIS)
AUTHORS PROFILE
Devpriya Soni has seven years of teaching experience to post Dr. Mahendra Kumar is presently Prof. & Dean of Computer
graduate classes and four years of research experience at MANIT. She Science at S I R T. Bhopal. He was Professor and Head Computer
is pursuing her Ph.D. at Department of Computer Applications, applications at M A N I T. Bhopal. He has 42 years of teaching and
MANIT, Bhopal. Her research interest is object-oriented metrics and research experience. He has published more than 90 papers in National
object-oriented databases. EmailId: devpriyasoni@gmail.com and International journals. He has written two books and guided 12
Dr. Namita Shrivastava has done M.Sc., Ph.D. She has 19 years of candidates for Ph D degree and 3 more are currently working. His
teaching and 18 years of research experience. Her area of interest is current research interests are software engineering, cross language
crack problem, data mining, parallel mining and object-oriented information retrieval, data mining, and knowledge management.
metrics. EmailId: sri.namita@gmail.com EmailId: prof.mkumar@gmail.com
55 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
A Computational Algorithm based on Empirical
Analysis, that Composes Sanskrit Poetry
Rama N. Meenakshi Lakshmanan
Department of Computer Science Department of Computer Science
Presidency College Meenakshi College for Women
Chennai, India Chennai, India
n_ramabalu@yahoo.com and
Research Scholar, Mother Teresa Women’s University
Kodaikanal, India
.
Abstract — Poetry-writing in Sanskrit is riddled with problems metrical rules of Sanskrit prosody. What would otherwise be an
for even those who know the language well. This is so because the algorithm with very high time complexity, is considerably
rules that govern Sanskrit prosody are numerous and stringent. improved by a novel scheme by which the target search space
We propose a computational algorithm that converts prose given is narrowed down significantly. The algorithm also handles
as E-text into poetry in accordance with the metrical rules of sandhi-s, since they are compulsorily to be implemented while
Sanskrit prosody, simultaneously taking care to ensure that versifying. Another path-breaking feature of the algorithm is
sandhi or euphonic conjunction, which is compulsory in verse, is that it gives suggestions to the poet in case his/her input cannot
handled. The algorithm is considerably speeded up by a novel be versified according to the metrical rules. Moreover, in cases
method of reducing the target search database. The algorithm where the sandhi rule is ambiguous, the algorithm interacts
further gives suggestions to the poet in case what he/she has given with the poet to confirm his decision on resolving the same. In
as the input prose is impossible to fit into any allowed metrical addition, a speech recognition interface is also provided, that
format. There is also an interactive component of the algorithm would help the visually impaired dictate words in E-text, which
by which the algorithm interacts with the poet to resolve are then versified by the Poetry Composer Engine.
ambiguities. In addition, this unique work, which provides a
solution to a problem that has never been addressed before, A. Unicode Representation of Sanskrit Text
provides a simple yet effective speech recognition interface that The Unicode (UTF-8) standard is what has been adopted
would help the visually impaired dictate words in E-text, which is universally for the purpose of encoding Indian language texts
in turn versified by our Poetry Composer Engine. into digital format. The Unicode Consortium has assigned the
Keywords - Sanskrit, poetry composer, sandhi, metre, metrical Unicode hexadecimal range 0900 - 097F for Sanskrit
analysis, long-short analysis, speech recognition characters.
I. INTRODUCTION All characters including the diacritical characters used to
represent Sanskrit letters in E-texts are found dispersed across
Poetry-writing in any language has always posed a the Basic Latin (0000-007F), Latin-1 Supplement (0080-00FF),
challenge, causing poets to be acclaimed as a lofty tribe. The Latin Extended-A (0100-017F) and Latin Extended Additional
case is particularly strengthened when it comes to writing (1E00 – 1EFF) Unicode ranges.
Sanskrit poetry, which is subject to numerous stringent rules at
the grammatical, semantic and metrical levels, with compound The Latin character set has been employed in this paper to
word formations and euphonic conjunctions (sandhi-s) represent Sanskrit letters as E-text.
exacerbating the complexity. The text given in the form of E-text using the Unicode
In Sanskrit poetry, words may be positioned anywhere and Latin character set, is taken as input for processing. Unicode
in any order in the verse, and need not read in prose-order. The Sanskrit font may also be accepted as input, but is converted to
prose-order is later gleaned by bunching together words of the the Latin character form before processing begins, as already
same genre, i.e. those belonging to the same case-inflectional presented by the authors in [3].
form, gender, number or tense. For example, an adjective can
easily be matched with the noun it describes, by looking for the II. RULES OF VERSIFICATION
closest noun that is in the same case-inflectional form, gender A. Metrical Rules
and number as itself. This re-organizing into the prose-order is Verses in Sanskrit are classified according to metres, i.e.
the procedure followed in practice in order to decipher the according to the number and type of syllables in the four
meaning of a verse. quarters of the verse (and in a few cases, in the two halves of
The computational algorithm we propose, converts prose the verse). Algorithms to efficiently parse and classify verses
given as E-text into poetry in strict accordance with the into more than 700 metres, have already been developed by the
56 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
authors [3]. The following is a brief on the overall 3 ggl t Anti-bacchius
classification scheme and methodology. 4 gll bh Dactylus
Sanskrit verse is normally taken to consist of a sequence of (denoted as b)
four pāda-s or quarters. Each quarter is regulated either by the 5 lgl j Amphibrachys
number of syllables (akṣara-s) or the number of syllabic 6 llg s Anapaestus
instants (mātrā-s) and the determination of metres is based on 7 ggg m Molussus
either of these factors [3]. Metres based on the first yardstick 8 lll n Tribrachys
are called varṇa metres, while those based on the second are
termed jāti metres. The meters in which there are greater than 26 syllables per
quarter are of the ‘danḍaka’ type and are beyond the scope of
Varṇa Metres this work. [3]
A syllable is as much of a word as can be pronounced at Given that each syllable can be either ‘l’ or ‘g’, there is
once. There are two types of syllables to contend with – the clearly a combinatorial explosion in the number of possible 1-
long (guru) and the short (laghu). The following is how syllabled to 26-syllabled Sama metres. For Ardhasama metres
syllables are categorized as long and short: the possible number is obviously even higher, and with
Short syllables: Viṣama, the possibilities are infinite. However, the number of
metres in actual use across the literature is limited to a smaller
• Normally, all short vowels – a, i, u, ṛ, ḷ. number than the number theoretically possible. Hence, it is
sufficient to handle the metres in vogue [4]. An example is
Long syllables: given in Table II.
• All long vowels – ā, ī, ū, ṝ.
TABLE II. L-G AND GAṆA REPRESENTATIONS OF A SAMPLE VERSE
• Any short vowel followed by the anusvāra (ṁ).
• Any short vowel followed by the visarga (ḥ). Verse l-g syllables Gaṇa
• Any short vowel followed by a double consonant. (The vande gurūṇāṁ caraṇāravinde ggl ggl lgl gg ttjgg
exceptions to this rule are the double consonants pr, br, sandarśitasvātmasukhāvabodhe | ggl ggl lgl gg ttjgg
kr and those starting with h. In these four cases, the janasya ye jāṅgalikāyamāne lgl ggl lgl gg jtjgg
preceding short vowel can optionally remain short.) saṁsārahālāhalamohaśāntyai || ggl ggl lgl gg ttjgg
• Optionally, any short vowel at the end of a pāda.
The optional nature of the exceptions mentioned in the last The metre of a verse having the gaṇa sequence “ttjgg” in all
two rules above, indicates a sort of poetic license. its four pāda-s is called “Indravajrā”, while that of a verse
having the gaṇa sequence “jtjgg” in all its four pāda-s is called
From the above discussion it is clear that the four quarters “Upendravajrā”. A verse such as the example given in Table
of a verse can each be represented as a sequence of long and II, whose gaṇa sequences are a combination of the Indravajrā
short syllables. Traditionally, identification of varṇa metres is and Upendravajrā sequences, is said to have the metre called
done on the basis of metrical feet, termed ‘gaṇa-s’ in Sanskrit. “Upajāti”.
A gaṇa is a combination of three syllables, each of which may
be long or short. As such, there are eight such gaṇa-s defined Jāti Metres
as in Table I, in which ‘l’ stands for a laghu (short) letter, and In this type of metre, each short syllable is counted as
‘g’ for a guru (long) one. constituting one syllabic foot or mātrā, while a long syllable is
The number of syllables in a quarter can vary from 1 to counted as constituting two. Such metres are categorized into
999. When the number of syllables is between 1 and 26 per two, depending on whether the verse is considered as
quarter, the meters are categorized into three: constituted by two halves, or by four quarters. The various
types of the oft-encountered Āryā metres are examples of the
a. Sama (meaning ‘equal’) – In this, all the four quarters of first variety.
the verse are identical not just in terms of the number of
syllables, but also in the sequence of long and short The identification of metres is done based mainly on the
syllables number of certain groups of mātrā-s and also partially on gaṇa
patterns. Standard groups of mātrā-s are those of 4, 6, 8 and 10
b. Ardhasama (meaning ‘half-equal’) – In this, the first and mātrā-s. [3]
third quarters are identical, as are the second and fourth.
While composing verse, a poet must make sure that the
c. Viṣama (meaning ‘unequal’) – In this, the quarters are length of a pāda or half-verse (as the case may be), falls into
uneven or mixed up. one of the accepted metre types, either varṇa or jāti. This
implies that the laghu-guru (L-G) combinations of syllables in
TABLE I. GAṆA SCHEME the verse comply with some accepted metre-format. This forms
Syllable- Corresponding the main challenge in composing poetry in Sanskrit, and thus
# Gaṇa has to be most importantly ensured while creating poetry out of
combination English Category
1 lgg y Bacchius a given Sanskrit sentence or group of sentences.
2 glg r Amphimacer
57 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
B. Rules of Euphonic Conjunctions such users, has already been solved by the authors in earlier
Euphonic conjunctions or sandhi-s in Sanskrit are points work [4].
between adjacent words or sub-words at which letters coalesce
TABLE III. SCHEME OF CALLING OUT SPECIAL CHARACTERS FOR VOICE
and transform. The application of sandhi is compulsory in INPUT
Sanskrit verse, though the rules are not as stringent in the
prose. A novel computational approach to sandhi processing # Diacritical English speech equivalent
based on building sandhi-s rather than splitting them, was letter (all in capital)
developed by the authors [2]. This was done in accordance with 1 ā A
the grammatical rules laid down by the ancient Sanskrit 2 ī I
grammarian-genius Pāṇini in his magnum opus, the Aṣṭādhyāyī 3 ū U
and forms a comprehensive sandhi-building engine. 4 ṛ R
An example of sandhi is: tat + ṭīkā = taṭṭīkā. This is an 5 ṝ F
example of the ṣṭutva sandhi type of euphonic conjunctions [2]. 6 ḷ L
In this case, the word tat is an ‘l’ syllable, while the word ṭīkā 7 ṅ G
maps to ‘gg’. Hence, with these two words given in the above 8 ñ Y
sequence, we get the l-g sequence, “lgg”. Now application of 9 ṭ T
the sandhi rule as shown above causes a transformation of the 10 ḍ D
word. As per the rules outlined in section 3.1 above, the word
11 ṇ N
taṭṭīkā has the l-g sequence “ggg”. Thus, the first syllable
provided by the word tat gets transformed from short type to 12 ś S
long type. 13 ṣ Z
14 ḥ H
While composing poetry by changing the order of the given 15 ṁ M
words, care must be taken to handle all such sandhi rules that
affect the long and short syllables. B. The Overall Algorithmic Approach
There is, however, an exception to sandhi rules that must be The following is the overall algorithm for converting the
handled as well. Normally, sandhi rules operational on phale + given input into poetry.
atra would transform into phale’tra, i.e. the starting vowel ‘a’ Algorithm ComposePoetry
of the second word would be dropped. Now the word phale can
have two meanings: ‘in the fruit’ and ‘two fruits’. In the latter Step 1: Scan the given text and establish the maximum and
case, i.e. when the word is in the dual number, the above minimum possible number of syllables in a verse that can result
sandhi rule will not be operational. from the given input. This is done as follows:
III. THE PROSE-TO-POETRY CONVERTER ALGORITHM Step 1.1: Determination of Maximum (Max): Max = the
total number of vowels in the input.
A. The Input
Note: The number n denotes the maximum number of
The input is given as E-text with diacritical marks, using syllables possible in the verse, no matter in what order the
the Latin Unicode character set mentioned in Section 1.1. It is words are jumbled up, and no matter what sandhi rules
assumed that compound words are properly formed before the have to consequently be applied. This is because the
input is given. For example, the compound word gaṅgājalam is application of sandhi rules can only reduce the number of
actually composed of two words gaṅgāyāḥ jalam meaning syllables and can never increase them.
“(River) Gaṇgā’s water”. So, if the poet giving the input wishes
to indicate this meaning, he would have to give ‘gaṇgāyāḥ’ and Step 1.2: Determination of Minimum (Min): Calculate
‘jalam’ as two separate words, or he would have to provide the Min, the minimum number of syllables in the verse, by
compound word ‘gaṅgājalam’. Giving the input as the two examining possible sandhi-s that are applicable with the
words ‘gaṅgā’ and ‘jalam’ would be incorrect and words in the given input, and the maximum number of
unacceptable, unless the poet wants to refer to River Gaṅgā reductions possible through them.
independently and water independently, without intending to Step 2: Use the Max-Min band to reduce the set of possible
convey the relationship “Gaṇgā’s water”. metres that are likely for the given input.
To facilitate ease of access for the visually impaired, a Step 3: Convert each word in the input into its l-g equivalent.
simple alternative user interface is introduced. Since English
style E-text is what is employed for input, the application is Step 4: Starting from the original permutation of words,
made voice-enabled, so that the input can be called out letter by
for all possible permutations of the words, do
letter, providing a pause between words. For example, to input
the word “bhagavān”, the user calls out, ‘b’, ‘h’, ‘a’, ‘g’, ‘a’, apply sandhi rules and reduce;
‘v’, ‘A’, ‘n’ [6]. The special diacritical characters like ‘ā’ are
processed specially by the input module, as shown in Table III. if number of syllables after reduction is divisible by 4, then
Converting the output verse form to speech for the benefit of split the verse into equal-sized quarters;
58 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
if the l-g patterns of the four quarters are equal then a. Giving big words as input is advantageous and would yield
better performance, because the number of possible
search for a match for the pattern in the reduced permutations would reduce.
table of Sama metres; b. The given order of words in the prose text is first tried as
else if the alternate quarters have same l-g pattern then such, because the order of words given would be
meaningful, and it would be ideal if a verse form is
search for a match for the pattern in the reduced possible in the given order itself. Other permutations of
table of Ardhasama metres; words are tried only if a verse form is not possible with the
given word-order.
else
c. The algorithm suggests possible changes by using other
search for a match for the pattern in the reduced words available in the input with the required pattern.
tables of Viṣama and Jāti metres; d. In case the number of syllables is greater that 26 per
end if quarter, then the given words are split into more than one
set and then Anuṣṭhup (common metres with 8 syllables
if match found then per quarter) or Jāti metres are tried out for a match.
quit; IV. ESTABLISHING THE MAX-MIN BAND
else The algorithm presented in Section 4.1 involves
indicate the closest match; permutation-generation and string-matching for each
permutation [1]. This fact coupled with the big size of the
suggest possible changes; metres database, places rather large demands on time. It is to
end if significantly enhance the performance of the algorithm, that the
novel idea of establishing the maximum-minimum band has
else been devised.
split the verse according to possible Ardhasama metres; Once this Max-Min band is established, metres with the
number of syllables lying within this band alone need to be
search for a match for the pattern in the reduced table of
considered for pattern matching. This approach clearly ensures
Ardhasama metres; a substantial savings in terms of time taken by the algorithm.
if match found then TABLE IV. THE SANSKRIT ALPHABET CATEGORIZED
quit;
# Category Letters
else 1 Vowels a, ā, i, ī, u, ū, ṛ, ṝ, ḷ, e, ai, o, au
split the verse according to possible Viṣama metres 2 Short vowels a, i, u, ṛ, ḷ
3 Long vowels ā, ī, ū, ṝ, e, ai, o, au
and Jāti metres;
4 Consonants k, kh, g, gh, ṅ
search for a match for the pattern in the reduced (including c, ch, j, jh, ñ
Semi-vowels) ṭ, ṭh, ḍ, ḍh, ṇ
tables of Viṣama and Jāti metres;
t, th, d, dh, n
if match found then p, ph, b, bh, m
y, r, l, v
quit;
5 Sibilants ś, ṣ, s
else 6 Aspirate h
indicate the closest match; 7 Anusvāra ṁ
8 Visarga ḥ
suggest possible changes;
end if The algorithm presented in Section 4.1 defines how to find
the maximum number of syllables possible in a verse formed
end if from the given input. The following discussion focuses on the
end if development and establishment of equations through
comprehensive empirical analysis, to determine the minimum
end for possible number of syllables in a verse constructed from the
end Algorithm given input text. Table IV presents the letters of the Sanskrit
alphabet divided into categories referenced in the discussion
The following points are worthy of note with regard to the below.
above algorithm:
59 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Consider each individual word of the given input text. The 7. Set S7: Words that begin with a consonant, sibilant or
observation we first make is that we have to contend with only aspirate and end with “aḥ” (Eg: kṛṣṇaḥ)
those sandhi-s which can reduce vowels from long to short, for
this is what will affect metres. Now we introduce the following Let the cardinality of S7 be n7.
possibilities and categorizations: We now derive partial equations for the maximum number
1. Set S1: Words that begin with a vowel and end with a of reductions possible in various scenarios, based on the above
consonant, sibilant, aspirate, anusvāra or visarga (Eg: notations for number of word-occurrences. This maximum
ahaṁ). number is denoted by rm where m = 1, 2, 3.
The maximum change that such a word can bring about is A. Formula for r1 (incorporation of S1, S2 and S3 words)
1, because it has only one vowel at its beginning which if n1 = 0 and n2 = 0 and n3 > 0 then
may merge with another word and get reduced. r1 = n3 – 1;
Let the cardinality of S1 be n1. else
2. Set S2: Words that begin with a consonant, sibilant or r1 = min(n1, n2) + n3;
aspirate and end with a vowel other than au, ai (Eg: end if
bhavāmi).
Explanation
The maximum change that such a word can bring about is
1, because it has only one vowel at its end which may In case both S1 and S2 are null sets, S3 words can combine
merge with another word and get reduced. with only S3 words, provided S3 is not null. Hence, clearly, the
maximum number of reductions possible is only n3 – 1.
Let the cardinality of S2 be n2.
Consider the case when both S1 and S2 are not null sets. For
The reason for not considering words ending with the long words of the S1 and S2 categories, the maximum change can be
vowels ai and au, is that these can never, under the effect brought about by aligning a S1 word just after a S2 word,
of any sandhi rule whatsoever, lead to a reduction from whereby the vowels will combine and may reduce. That is, we
long to short. For example, in kau + ūrudvayaṁ = pair them up. Hence, if n1 and n2 are unequal, then abs(n1-n2)
kāvūrudvayaṁ. the long vowel au does undergo a words will remain unpaired and will therefore cause no change.
replacement, but only by another long vowel, viz. ā. As Hence, if n1 and n2 are non-zero, the maximum number of
such, there is really no change in the l-g scheme that can reductions possible is min (n1, n2).
be brought about by words in this category ending with ai
and au. Hence we leave them out, thereby reducing the As for words of the S3 category, both ends may cause a
processing time further. change. Hence, irrespective of n1 and n2, n3 number of changes
will take place, provided n3 is non-zero. Hence we add n3 to the
3. Set S3: Words that begin and end with a vowel (Eg: atra). formula. For example, consider the following sentence
The maximum change that such a word can bring about is provided as input:
2, because the vowels at both it ends may merge with idānīṁ atra ālasyaṁ tyaktvā ahaṁ paṭhāmi ca likhāmi ca
adjacent words and get reduced.
Here,
Let the cardinality of S3 be n3.
S1 words: idānīṁ, ālasyaṁ, ahaṁ
4. Set S4: Words that begin with a consonant, sibilant or
S2 words: tyaktvā, paṭhāmi, ca, likhāmi, ca
aspirate and end with a consonant, sibilant, aspirate,
anusvāra or visarga (Eg: marut) S3 words: atra
Such words can effect no change at all, because no vowel Thus, n1 = 3, n2 = 5, n3 = 1. Clearly there are only a
in them gets reduced. Neither can they reduce any vowel maximum of 3 ways, i.e. min (n1, n2) ways, of pairing the S1
in adjacent words. Hence we do not introduce any notation and S2 words to cause a change. Further, though both ends of
for the size of this set. the S3 words can cause change, they can cause only one change
each by combining with any other S3 word or with any of the
5. Set S5: Words that begin with a vowel and end with “aḥ” remaining words of S1 or S2. Hence we add n3.
(Eg: ambaraḥ).
In the case where exactly one of S1 and S2 is a null set, then
Clearly, this is a subset of S1, and can cause a maximum too, this formula will clearly hold, since min(n1, n2) = 0 and the
change of 1. maximum possible number of reductions will hence simply be
Let the cardinality of S5 be n5. n3, irrespective of the value of abs(n1-n2).
6. Set S6: The word ahaḥ is special when it combines with B. Formula for r2 (incorporation of S5 words)
another instance of itself, because ahaḥ + ahaḥ = if n1 = n2 and n5 > 0 then
aharahaḥ, which causes a change of 1. r2 = n5 – 1;
Clearly, this is a subset of S5, and its cardinality is included else
in n5.
60 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
r2 = n5; Now S2 words are of no use for reduction in combination
end if with S7 words. Consider the following sample input:
Explanation kṛṣṇaḥ idānīṁ atra ālasyaṁ tyaktvā paṭhati ca likhati ca
We consider the two cases when n1 and n2 are equal, and Here,
when they are unequal. When they are equal, they pair up S1 words: idānīṁ, ālasyaṁ
completely for r1, and hence if S5 is not null, the S5 words have
S2 words: tyaktvā, paṭhati, ca, likhati, ca
only themselves to combine with. For example, we may have
the S5 words, itaḥ and aṁbaraḥ. Here, itaḥ + aṁbaraḥ = S3 words: atra
ito’mbaraḥ, and aṁbaraḥ + itaḥ = aṁbara itaḥ, both of which S7 words: kṛṣṇaḥ
are changes. However, the first does not cause any change in
the long-short scheme, while the second does. Since we are Thus, n1 = 2, n2 = 5, n3 = 1, n7 = 1. Clearly, after the S1 and
only calculating the maximum, we take it that there is a S2 words combine, three S2 words would remain, say ca, likhati
maximum reduction of 1 in this case. Clearly, therefore, the and ca. Now only the ending “aḥ” of S7 words are combinable.
maximum number of reductions here is n5 – 1. Hence, clearly, S2 and S7 words cannot combine. Hence, if n1
<= n2, then no reduction with S7 words can take place. Hence
In the case where n1 and n2 are unequal, they pair up to r3 for such a scenario is zero.
reduce as per r1, leaving behind abs(n1-n2) words. Consider the
example, When n1 > n2, then n1 – n2 words of the S1 type remain
after the r1 calculation. For example, we may have the word
aṁbaraḥ na atra asti parantu aṁbaraḥ anyatra asti ataḥ ahaṁ ahaṁ of S1 remaining. Thus, kṛṣṇaḥ + ahaṁ = kṛṣṇo’haṁ,
itaḥ tatra gacchāmi which is a reduction. Similarly, kṛṣṇaḥ + idānīṁ = kṛṣṇa
Here, idānīṁ which is again a reduction. The number of such
reductions is min(n1-n2, n7) because there will be a maximum
S1 words: ahaṁ of as many reductions as there are pairs of the remaining n1-n2
S2 words: na, parantu, tatra, gacchāmi words and n7 words.
S3 words: atra, asti, anyatra, asti D. Combined Formula for Reductions and Min
S5 words: aṁbaraḥ, aṁbaraḥ, ataḥ, itaḥ Combining the formulae for r1, r2 and r3, we arrive at the
following formula for r, the maximum number of possible
Thus, n1 = 1, n2 = 4, n3 = 4, n5 = 4. Assuming that the first reductions for the given set of words:
words of S1 and S2 combine, we have the last three words of S2
left behind. These can produce three pairs in combination with if (n1 = n2) or (n1 > n2 and n7 = n1 – n2 and n5 > 0) then
three words of S5 and cause a change. For example, we can
r = n1 + n3 + n5 – 1;
have tatra + aṁbaraḥ = tatrāṁbaraḥ. We would thus have one
word of S5 left behind, since n5 > abs(n1-n2), which would else if (n1 < n2) or (n1 > n2 and [(n7 > n1 – n2) or (n7 = n1 –
combine with one of the available compounds of S5 with S1 or n2 and n5 = 0)]) then
S2. Continuing with the above example, tatrāmbaraḥ + itaḥ = r = n1 + n3 + n5;
tatrāmbara itaḥ, a change. All this means that all the S5 words else
contribute to a change, and hence r2 = n5 in this case.
r = n2 + n3 + n5 + n7;
In case n1 and n2 are unequal and n5 <= abs(n1-n2), then end if
after pairing S5 words with the remaining from S1 or S2, we are
left with no more S5 words. Hence, anyway the number of Using r, we calculate Min, the minimum possible number
reductions is n5, i.e. the number of pairs. The only other case is of syllables as Min = Max – r.
n5 = 0, in which r2 should work out to zero. This possibility is
V. SAMPLE SCENARIO OF PERFORMANCE ENHANCEMENT
subsumed in the second case presented in the formula.
USING THE MAX-MIN BAND
C. Formula for r3 (incorporation of S7 words) Now consider an example where Max = 48. This means
if n1 > n2 and n7 > 0 then that in a single pāda or quarter of the verse, there can be a
maximum of 48/4 = 12 syllables. Let us assume that by the
r3 = min(n7, n1 – n2);
above formulations, we arrive at r = 4 for this particular case.
else Then Min = 44, and hence the minimum number of syllables
r3 = 0; per pāda is 11. Thus, we need to only search for metres with 11
or 12 syllables in a pāda. This reduces the target search space
end if of metres to match with, by more than 85%.
Explanation
VI. CONCLUSIONS
Clearly, we have to handle only the case when n7 > 0. Also, The problem of automatic conversion of prose to poetry has
after calculation of r1, the remaining abs(n1 – n2) words alone never been tackled before in the literature. This solution is
have to be contended with in the calculation of r3. therefore the first of its kind. Further, the algorithm presented is
61 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
comprehensive and yet efficient due to the reduction formula
proposed through the Max-Min Band method. The approach
also facilitates the giving of suggestions to the poet, in case the
prose given cannot be set to poetry, for it finds the closest
match. Lastly, and significantly, the application also easily
lends itself, through available English speech recognition
interfaces that come packaged with operating systems itself, for
use by the visually impaired.
REFERENCES
[1] Donald E. Knuth, “Fundamental Algorithms Volume 1”, Addison
Wesley, Third Edition, 1997.
[2] Rama N., Meenakshi Lakshmanan, “A New Computational Schema for
Euphonic Conjunctions in Sanskrit Processing”, IJCSI International
Journal of Computer Science Issues, Vol. 5, 2009 (ISSN (Online): 1694-
0784, ISSN (Print): 1694-0814), Pages 43-51.
[3] Rama N., Meenakshi Lakshmanan, “A Computational Algorithm for
Metrical Classification of Verse”, submitted to under review at IJCSI
International Journal of Computer Science Issues, Vol. 5, 2009 (ISSN
(Online): 1694-0784, ISSN (Print): 1694-0814).
[4] Rama N., Meenakshi Lakshmanan, “An Algorithm Based on Empirical
Methods, for Text-to-Tuneful-Speech Synthesis of Sanskrit Verse”,
submitted to and under review at IJCSNS International Journal of
Computer Science and Network Security, Vol. 10. No. 1, 2010 (ISSN:
1738-7906).
[5] Vaman Shivram Apte, “Practical Sanskrit-English Dictionary”, Motilal
Banarsidass Publishers Pvt. Ltd., Delhi, 1998, Revised and Enlarged
Edition, 2007.
[6] Windows Speech Recognition for Windows Vista, Product Information
and Tutorials can be found at http://www.microsoft.com/enable/
products/windowsvista/speech.aspx, (last accessed on 21.01.2010).
AUTHOR PROFILE
Dr. Rama N. completed B.Sc. (Mathematics), Master of Computer
Applications and Ph.D. (Computer Science) from the University of Madras,
India. She served in faculty positions at Anna Adarsh College, Chennai and as
Head of the Department of Computer Science at Bharathi Women’s College,
Chennai, before moving on to Presidency College, Chennai, where she
currently serves as Associate Professor. She has 20 years of teaching
experience including 10 years of postgraduate (PG) teaching, and has guided
15 M.Phil. students. She has been the Chairperson of the Board of Studies in
Computer Science for UG, and Member, Board of Studies in Computer
Science for PG and Research at the University of Madras. Current research
interests: Program Security. She is the Member of the Editorial cum Advisory
Board of the Oriental Journal of Computer Science and Technology.
Meenakshi Lakshmanan Having completed B.Sc. (Mathematics), Master of
Computer Applications at the University of Madras and M.Phil. (Computer
Science), she is currently pursuing Ph.D. (Computer Science) at Mother
Teresa Women’s University, Kodaikanal, India. She is also pursuing Level 4
Sanskrit (Samartha) of the Samskṛta Bhāṣā Pracāriṇī Sabhā, Chittoor, India.
Starting off her career as an executive at SRA Systems Pvt. Ltd., she switched
to academics and currently heads the Department of Computer Science,
Meenakshi College for Women, Chennai, India. She is a professional member
of the ACM and IEEE.
62 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
SURVEY REPORT – STATE OF THE ART IN
DIGITAL STEGANOGRAPHY FOCUSING ASCII
TEXT DOCUMENTS
Muhammad Sher
Khan Farhan Rafat Department of Computer Science
Department of Computer Science International Islamic University
International Islamic University Islamabad, Pakistan
Islamabad, Pakistan
Abstract— Digitization of analogue signals has opened up new
avenues for information hiding and the recent advancements in
the telecommunication field has taken up this desire even further.
From copper wire to fiber optics, technology has evolved and so
are ways of covert channel communication. By “Covert” we
mean “anything not meant for the purpose for which it is being
used”. Investigation and detection of existence of such cover
channel communication has always remained a serious concern
of information security professionals which has now been evolved
into a motivating source of an adversary to communicate secretly
in “open” without being allegedly caught or noticed.
This paper presents a survey report on steganographic
techniques which have been evolved over the years to hide the Figure 2 – Classification of Information Hiding based on [1]
existence of secret information inside some cover (Text) object.
The introduction of the subject is followed by the discussion
While discussing information hiding, we mainly
which is narrowed down to the area where digital ASCII Text come across people from two schools of thought. One votes
documents are being used as cover. Finally, the conclusion sums for making the secret information unintelligible (encryption)
up the proceedings. [5] whereas the other like Eneas the Tactician, and John
Wilkins [4][5] are in favor of hiding the existence of the
Keywords- Steganography, Cryptography, Conceal, Steganology, information being exchanged (steganography) because of the
Covert Channel fact that the exchange of encrypted data between Government
agencies, parties etc. has its obvious security implications.
I. INTRODUCTION
• Covert/Subliminal Channel A communication
Cryptography derived from Greek, (where historian channel which is not explicitly designed for the
Plutarch elaborated on the use of scytale – an encryption purpose for which it is being used [6][7] e.g. using
technique via transposition, a thin wooden cylinder, by a TCP & IP header for hiding and sending secret bits
general for writing message after wrapping it with paper, to etc.
decrypt the message, one needs to wrap that piece of paper • Steganography is derived from the Greek words
again on the scytale to decrypt the message [41].), focuses on , ‘steganos’ and ‘graphie’, [8]
making the secret information unintelligible. which means Covered Writing/Drawing.
Figure 1 – Scytale [44]
Information Hiding Men’s quest to hide information is
best put in words [2] as “we can scarcely imagine a time when
there did not exist a necessity, or at least a desire, of Figure 3 – Prisoner’s Problem
transmitting information from one individual to another in The classic model for invisible communication was
such a manner as to elude general comprehension”. first proposed by Simmons [3][4] as the prisoners' problem
who argued by assuming, for better understanding, that Alice
and Bob, who have committed a crime, are kept in separate
63 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
cells of a prison but are allowed to communicate with each
Advantages Disadvantages
other via a warden named Wendy with the restriction that they
Does not Does not follow Kerchoff’s principle.
will not encrypt their messages and that the warden can put
require a device Requires voluminous data for
them in isolated confinement on account of any suspicious act
for trespassing and Needs careful
while in communication. In order to plan an escape, they now
computational generation and crafting of cover text
need a subliminal channel so as to avoid Wendy’s
purposes. for hiding bits.
intervention.
A. Terminology: By convention, the object being used
Following is an example from [34] where in World to hide information within it is called cover-text. A variety of
War I, German Embassy in Washington (DC) sent the media such as text, image, audio etc. depicted in
following telegram messages to its Berlin headquarters (David [9][10][11][42] are used to hide secret information within its
Kahn 1996): body. After embedding of secret information, the resultant
object is referred to as stegotext/stego-object. According to
“PRESIDENT'S EMBARGO RULING SHOULD HAVE [12] the algorithms by virtue of which secret information is
IMMEDIATE NOTICE. GRAVE SITUATION embedded in the cover-text at the sending end, and gets
AFFECTING INTERNATIONAL LAW. STATEMENT extracted out of stego-text at the receiving end constitutes a
FORESHADOWS RUIN OF MANY NEUTRALS. stego-system. The secret key involved in information
YELLOW JOURNALS UNIFYING NATIONAL exchange [13] via private and public key Steganography is
EXCITEMENT IMMENSELY. referred to as stego-key.
APPARENTLY NEUTRAL'S PROTEST IS B. Model: Though different in their approach,
THOROUGHLY DISCOUNTED AND IGNORED. Steganography and Cryptography go well together when it
ISMAN HARD HIT. BLOCKADE ISSUE AFFECTS comes to information security. The evolution of digital
PRETEXT FOR EMBARGO ON BYPRODUCTS, technology (which is a continuous process) has brought
EJECTING SUETS AND VEGETABLE OILS.” [34] significant change in the methodologies being used / preferred
earlier for hiding information. As now we opt for a blend of
By concatenating the first character of every word in these two techniques added with compression, to attain a near
the first message and the second character of every word in the to perfect security solution having ‘no-compromise on
second message the following concealed message is retrieved: security’ as our slogan. Mathematical modeling of Figure-4
“PERSHING SAILS FROM NY JUNE I” [34] follows:
Figure 4 – Preferred Stegosystem
At present Internet spam is (and can be) a potential • Encoding Process:
candidate to be used as cover for hiding information. Ό = η (ο, , )
64 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Where: • Spread Spectrum technique uses the conventional
η is the function which operates on the Cover ‘ο’ to approach as is done Telecommunication sector
embed compressed and encrypted data ‘ ’ using where a signal is spread over a range of frequencies.
the Stego-Key to produce the Stego-Object Ό’.
• Statistical methods encode information by changing
= ē (ć, ) ‘Encrypting the compressed message
several statistical properties of a cover and use
(ć) with secret key.
hypothesis testing in the extraction process.
ē is the encryption function that takes the • Distortion techniques store information by signal
compressed data ć for encryption using symmetric distortion and measure the deviation from the
original cover in the decoding step.
key .
• Cover generation methods encode information in
ć = c(M) ‘Compressing the secret message (M) the way a cover for secret communication is created.
using appropriate algorithm.
E. Types of Embedding Applications
• Decoding Process: Another important pre-requisite for covert channel
ο = (‘ Ό ’, , ) communication is the availability of some type of application
Where: embodying some algorithm/technique for embedding secret
is the function which operates on the stegocover information inside the cover. The birth of Inter and Intranet
object ‘Ό’ to decompress and decrypt the data has given way to a multitude of such applications where
indicated by function ‘ ’ using the Stego-Key information hiding finds its vitality as was never before.
and extract the secret information.
Following is a brief review as of [36] of such applications
= (ć, ) ‘Decrypting the decompressed data (ć) which are differentiated according to their objectives:
with secret key .
is the decryption function that takes the • Non-Repudiation, Integrity and Signature
compressed data ć for decryption using symmetric Verification: Cryptography concerns itself with
key . making the secret information un-intelligible by using
the techniques of confusion and diffusion as
ć = c (M’) ‘Decompressing the hidden message suggested by Shannon, to ensure integrity of the
(M’) using appropriate algorithm. message contents. Public key cryptography is a
preferred way of authenticating the sender of the
C. Categorization: Steganography is broadly message (i.e. the sender/signature is genuine / non-
categorized in [2][7] as: repudiation). This, however, becomes challenging
when the information is put on line as a slight error in
• Linguistic Variety of techniques (such as transmission can render the conventional
discussed in [15][16][17][18][19]), takes authentication process as a failure; hence now there
advantage of the syntax and semantics of Natural are applications for automatic video surveillance and
Language (NL) for hiding information. However, authentication of drivers’ licenses etc.
the earliest form probably of which is acrostic. • Content Identification: By adding content specific
Giovanni Boccaccio's Amorosa visione is attributes such as how many times a video is being
considered as the world's hugest acrostic [20, pp. watched or a song is played on air; one can judge the
105–106] (1313–1375). public opinion about it.
• Technical This technique is broader in scope • Copyright Protection: The most debated, popular
which is not confined to written words, sentences and yet controversial application of information
or paragraphs alone but involves some kind of hiding is copyright protection as it is very easy to
tool, device or methodology [16] for embedding have an exact replica of a digital document / item and
hidden information inside a cover, particularly in the owner / holder of the document can own or
its regions / areas which remain unaffected by disown its rights. One such popular incident occurred
any form of compression. in 1980’s when British Prime Minister being fade up
about the leakages of important cabinet documents
D. Categorization of Steganographic Systems based got the word processor modified to automatically
on techniques as explained in [8] is as under: encode and hide the user’s information within word
• Substitution systems Redundant parts of cover spacing of the document to pin-point the culprits. In
get replaced with secret information. the early 1990’s, people begin to think about digital
• Transform domain techniques Transform watermarking for copyright compliance.
space of the signal is used for embedding • Annotating Database: It is not un-common for large
information such as frequency domain. audio / video databases to have text or speech etc.
65 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
captions which can easily be got embedded inside the knowledge about the technology and the type of the
relevant database to resist against various signal media (cover) being used in the concealing process.
processing anomalies. • Analytical Model
• Device control: Human audio / video perceptions are The stego-object is analyzed in terms of its
frequently being exploited by the vendors in associated attributes such as stego-object type,
designing their information hiding techniques. In one format etc. [21] and thereafter on the basis of the
such reported technique a typical control signal, data gathered relevant known steg-analysis tools are
embedded in a radio signal broadcasted by a FM used to extract hidden bits and derive the meaning
radio station was used to trigger the receiver’s out of it.
decoder.
• In-Band captioning: Just as it is not un-common to II. Related Work
embed data in audio-visual streams; so can be the This section covers a literature review of the recently
case where data for various services launched by published text-based steganographic techniques such as use of
Telecom Operators can be embedded in television acronyms, synonyms; semantics to hide secret bits in English
and radio signals. Text in paras A – E, format specific techniques are discussed
• Traitor Tracing: Here distinct digital signatures are in paras F – K while ways of hiding secret bits in TCP and IP
embedded and the number of copies to be distributed header are elaborated in para L respectively:
is limited. The unauthorized usage of the document
A. Acronym
can then be traced back by the intended recipient.
According to the definition at [43] “an acronym
• Media Forensics: The tempered media gets analyzed (pronounced AK-ruh-nihm, from Greek acro- in the sense of
by experts to identify the tempering and the portions extreme or tip and onyma or name) is an abbreviation of
which have been affected by it but not throw light as several words in such a way that the abbreviation itself forms
to how the tempering is done. a pronounceable word. The word may already exist or it can
be a new word. Webster's cites SNAFU and radar, two terms
F. Types of Steganographic Systems: According to [8]
of World War Two vintage, as examples of acronyms that were
Steganographic Systems can be segregated as:
created”.
• Pure Steganography (PS): Weakest, as is based on
Mohammad Sirali-Shahreza and M. Hassan Shirali-
the assumption that parties other than the intended
Shahreza have suggested the substitution of words with their
ones are not aware of such type of exchange of
abbreviations or viza viz in [40] to hide bits of secret message.
secret information.
The proposed method works as under:
• Secret Key Steganography (SKS): In this Table 1
technique, both the sender and receiver share or Acronym Translation
have agreed on a common set of stego-keys prior to 2l8 Too late
commencement of secret communication. The secret ASAP As Soon As Possible
information is embedded inside the cover using the C See
pre-agreed stego-key and gets extracted out at the
CM Call Me
receiving end by reversing the embedding process.
F2F Face to face
The advantage lies in the fact that an adversary
needs to apply brute force etc. attack to get the If a matched word/abbreviation is found then the bit
secret information out of the cover which require to be hidden is checked to see if it is under column ‘1’ or ‘0’
resources such as computational power, time, and and based on its value (i.e., 0 or 1), word/abbreviation from
determination. the corresponding column label is substituted in the cover
• Public Key Steganography (PKS) As the name message, in case of otherwise the word/abbreviation is left
indicates, public key steganography use a pair of unchanged. The process is repeated till end of message.
Public and Private Keys to hide secret information.
Advantages
The advantage of this technique is that an attacker
Speedy
first needs to come up with a public and private key-
pair and then the decoding scheme to extract the Flexibility: More words / abbreviation pairs can be added.
hidden information out of the cover. The key benefit Technique can be applied in variety of fields such as
of this technique is its robustness in execution and science, medicine etc.
easy of key management. Disadvantage
The main drawback lies in the static word/abbreviation
G. Models for Steg-Analysis substitution where anyone who knows the algorithm can
• Blind Detection Model easily extract the hidden bits of information and decode the
message which is against Kerckhoff’s Principle which states
This model is the counterpart of cryptanalysis and
analyzes the stego-object without any prior that the security of the System should lie in its key, where
the algorithm is known to public.
66 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
B. Change of Spelling If a matched word / synonym is found then the bit to be
Mohammad Shirali-Shahreza in his paper [23] hidden is checked to see if it is under column ‘1’ or ‘0’
proposed a method of exploiting the way; words are spelled and based on its value (i.e., 0 or 1), word or synonym
differently in British and American English, to hide bits of from the corresponding column label is substituted in the
secret information. The procedure for concealment explained cover message. Words not found in the lists are left
below, is the same as that of para A, where the words spelled unchanged. The process is repeated till end of the
in British and American English, are arranged in separate message.
columns as shown in Table 2.
Table 2 Advantage Disadvantages
American Spelling British Spelling Language Specific
Speedy Non-adherence to Kerckhoff’s
Favorite Favourite
principle.
Criticize Criticise
Only one synonym is taken in the
Fulfill Fulfil
substitution table.
Center Centre
The column containing British Spelling is assigned D. Miscellaneous techniques
label ‘1’ while that containing American Spelling is The authors in [31] have given a number of
assigned label ‘0’. The information to be hidden is idiosyncrasies ways that are / can be used for hiding secret
converted into bits. The message is iterated to find message bits, such as by introducing modification or injecting
differently spelled words matching to those available in intentional grammatical word/sentence errors to the text. Some
pre-defined list (Table 2 refers). of the suggested techniques / procedures which can be
employed in this context include:
If a matched word is found then the bit to be hidden
• Typographical errors - “tehre” rather than “there”.
is checked to see if it is under column ‘1’ or ‘0’ and based
• Using abbreviations / acronyms - “yr” for “your” /
on its value (i.e., 0 or 1), word spelled in American or
“TC” in place of “Take Care”.
British English from the corresponding column label is
substituted in the cover message. Words not found in the • Transliterations – “gr8” rather than “great”.
lists are left unchanged. The process is repeated till end of • Free form formatting - redundant carriage returns or
the message. irregular separation of text into paragraphs, or by
adjusting line sizes.
Advantage Disadvantages • Use of emoticons for annotating text with feelings -
Language Specific “:)” to annotate a pun.
Speedy Non-adherence to Kerckhoff’s • Colloquial words or phrases - “how are you and
principle. family” as “how r u n family”.
C. Semantic Method • Use of Mixed language - “We always commit the
Mohammad Sirali-Shahreza and M. Hassan Shirali- same mistakes again, and ’je ne regrette rien’!”.
Shahreza in [24] have used those English Language words
whose synonym exists. Advantages Disadvantages
More variations for Eye catching.
The authors had arranged words (having synonym) in hiding information.
one column while corresponding synonyms were placed in More computations Can draw suspicion.
another column (Table 3 refers) and followed the procedure required.
explained below:
E. Enhanced Steganography in SMS
The column containing words/Translation is assigned label In his paper at [35] the author has suggested an
‘1’ while that containing acronyms is assigned label ‘0’ enhancement in an existing steganographic system [22] by
and the information to be hidden is converted into bits. The taking care of the limitations of the existing techniques
message is iterated to find words/abbreviations matching discussed in paras A – D which work as under:
to those available in pre-defined list (Table 1 refers).
Table 3 In this enhanced technique, words and their
corresponding abbreviations are grouped under two
Word Synonym columns. The column containing words is labeled as ‘1’
Big Large and that containing abbreviations is labeled as ‘0 (Table
Small Little 4 refers)’. Depending on the input 128-bit stego-key bits
Chilly Cool and the value of the first stego-key byte, words and their
Smart Clever corresponding abbreviations are swapped so that the two
Spaced Stretched columns now contain a mix of words and abbreviations.
67 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Table 4
1 0
Advantages
0 Too late 2l8
1 ASAP As Soon As Possible The 128-bit LFSR used for encryption with a non
repeated key has rendered the system as OTP.
0 See C
The algorithm can be extended to the desktop, PDA
1 CM Call Me
platforms.
1 F2F Face to face
The algorithm is language independent.
Adding compression before encryption can hide more
• Bits Embedding Process_A 128-bit Linear
secret bits in the cover.
Feedback Shift register (LFSR), initialized using
the same stego-key, serves as a pseudo random bit Disadvantage
generator, the first 128 bits of which are discarded Slightly slower (in fractions) than its predecessor
before use. The output bits from the LFSR get XoR- technique.
ed with the bits of the message. Based on the
resultant bits of the XoR operation, words or F. MS Word Document
abbreviations corresponding to column labels
replaces the contents of the original message.
The embedding and extraction processes are depicted
diagrammatically in Figure 5 and 6 respectively:
Figure 7 – MS Word for Steganography
The author at [32] has made use of change tracking
technique of MS Word for hiding information, where the
stego-object appeared to be a work of collaborated writing. As
shown in Figure 7, the bits to be hidden are first embedded in
the degenerated segments of the cover document which is
followed by the revision of degenerated text thereby imitating
it as being an edited piece of work.
Advantage Disadvantage
Easy to use as most Easily detectable as MS
users are familiar with Word has built in spell
Figure 5.Embedding Process Figure 6.Extraction process MS word. check and Artificial
Intelligence (AI) features.
• Bits Extraction Process_It is just the reverse of the
G. HTML Tags
Bits embedding process, where after Initialization;
The author of publication at [38] elaborates that
the hidden bits are first extracted and then get XOR-
software programs like ‘Steganos for Windows’ uses gaps i.e.
ed with the output of 128-bit LFSR. The resultant bits
space and horizontal tab at the end of each line, to represent
are concatenated and passed through a
binary bits (‘1’ and ‘0’) of a secret message. This, however,
transformation which translates the string of bits into
adds visibility when the cover document is viewed in MS Word
their equivalent ASCII character i.e. secret message
with visible formatting or any other Hex-Editor e.g.:
text.
Advantages <html>( )->->( )->
<head>( )->( )( )->
Adherence to Kerchoff’s Principle
[Text]()()->
Shanon’s principles of confusion & diffusion
</head>->()->->
Secret bits are encrypted before being embedded in the
</html>()->()->
cover makes the system secure, as the enemy will have
to perform additional efforts of decrypting the bits Where ( ) represents Space and ‘->’ denotes Horizontal Tab.
without the knowledge of key.
68 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
The above example indicates hiding of secret bits
‘100101001…’ as per analogy explained above. Advantage Disadvantages
XML is widely Eye catching.
Spaces are also inserted in between TAGS to acceptable tool for Increased Stego-cover
represent a hidden bit ‘0’ or ‘1’. The above example indicates information exchange File size.
hiding of secret bits ‘1001001010’ as per analogy explained. which makes the task of Non adherence to
Later in the discussion, the author proposed the use its Steg-analysis difficult. Kerchoff’s principle.
of line shift; interpreted (in hex) as 0xA0, 0xD0 in Windows
and as 0xA0 in Unix Operating System to translate these as I. White Spaces
‘1’ and ‘0’. A majority of text editors can interpret the two W. Bender, D. Gruhl, N. Morimoto, and A. Lu in
codes for line shift without ambiguity; hence it is a [25] have discussed a number of steganographic techniques for
comparatively secure way to hide secret information. hiding data in a cover, where one of the methods places one or
two spaces after every terminated sentence of the cover
The author of [39] has shown ways where HTML file/text to represent a secret bit ‘0’ or ‘1’ as the case may be.
TAGS can also be manipulated to represent hidden bit ‘0’ or
‘1’.
Advantage Disadvantages
Works well for Visibility/Eye catching in case
HTML of TEXT documents.
documents as Increase in Stego-cover File size. Figure 9: Original Text [25]
regards on screen Non-adherence to Kerchoff’s
visibility. principle.
H. XML Document
Figure 10: Stego-Text [25]
Another discussed technique includes hiding data by
text justification as shown in Figure 11.
Figure 11 -Text from ‘A Connecticut Yankee’ in King Arthur’s Court by
Mark Twain [25]
Advantage Disadvantages
Normally passes by Violates Kerckhoff’s
undetected. Principle.
Increases cover text size.
J. Line Shifting
Figure 8: Data Hiding in XML document Printed text documents can also be manipulated as an
image and subjected to steganographic techniques such as
XML is a preferred way of data manipulation
discussed in [28][29] by slight up/down lifting of letters from
between web-based applications hence techniques have been
baseline or right/left shifting of words within a specified
evolved as published in [26] for hiding secret information
image/page width, etc.
within an XML document. The user defined tags are used to
hide actual message or the placement of tags represents the
corresponding secret information bits. One such technique
places hidden text bytes sequentially in Tags as shown in
Figure 8. Figure 12 [28]
69 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
This increase/decrease in line height or the increase decrease III. Conclusion
in space between words by left / right shifting can be This paper presents a survey on a data hiding
interpreted as binary bits ‘0’ or ‘1’ accordingly to hide secret technique called ‘Steganography’, the terminology, the model,
information. its types, and two types of attacks on any Steganographic
system. This is followed by a discussion on various text-based
data-hiding techniques where the primary focus remained on
Figure 13 [28] recently proposed/developed Steganographic techniques.
Advantage Disadvantages
Secure e-Governance_An essential feature of e-
Difficult to detect in the Looses format if the
government includes secure transmission of confidential
absence of original text. document is saved as text.
information via computer networks where the sensitivity of
K. Feature Coding some information may fall equivalent to a level as that of
The steganographic method in [30] hides the secret national security. Every e-government has its own network but
information bits by associating certain attributes to the text cannot ignore the Internet which by far, is the cheapest means
characters like changing font’s type, its size, color, by of communication for common people to interact with the
underlining it or using strike-through etc. Government. The data on Internet, however, is subjected to
hostile attacks from Hackers etc. and is therefore a serious e-
e.g. Steganography is the art of hiding secret information.
government concern. In his paper at [37] the author has
Advantages Disadvantages emphasized on the importance of steganography for use in e-
More variations for hiding Eye catching. Government and discussed that Governments, seek and had
information. sought consultation and help from cryptographers and have
More computations required. Can draw suspicion. invested huge amounts of time and funds in getting developed
specially designed information security systems to strengthen
L. IPv4 and Transport Layer data security. In today’s' world, cryptography alone is just not
Richard Popa [33] has analyzed a variety of an adequate security solution. With the increase in
steganographic techniques and among the techniques computation speed, the old techniques of cryptanalysis are
discussed, those related to Internet protocol (IP) and falling short of expectations and will soon be out-dated.
Transmission control protocol (TCP) are discussed here. Steganology – that encompasses digital data hiding and a
Figure 14 shows how the IP (version 4) header is organized. detection technique has gained considerable attention now
Three unused bits have been marked (shaded) as places to days. It appears to be a powerful opponent to cryptology and
hide secret information. One is before the DF and MF bits and offers promising technique for ensuring seamless e-security.
another unused portion of this header is inside the Type of
service field which contains two unused bits (the least From the discussion, it is apparent that ensuring
significant bits). one’s privacy has remained and will always remain a serious
concern of Security frontiers. The innocent carrier i.e., text
document (ASCII text format), will continue to retain its
dominance in time to come for being the preferred choice as
cover media, because of zero overhead of metadata with its
body.
REFERENCES
[1] Fabien A. P. Petitcolas, Ross J. Anderson and Markus G.
Figure 14 [33] Kuhn, Information Hiding- A Survey, Proceedings of the IEEE, special issue
on protection of multimedia content, 87(7):1062-1078, July 1999
Every TCP segment begins with a fixed-format 20-byte
header. The 13th and 14th bytes of which are shown in Figure [2] Code Wars: Steganography, Signals Intelligence, and
15. The 6-bit field not used, indicated in shade, can be used to Terrorism. Knowledge, Technology and Policy (Special issue entitled
hide secret information. ‘Technology and Terrorism’) Vol. 16, No. 2 (Summer 2003): 45-62 and
reprinted in David Clarke (Ed.), Technology and Terrorism. New Jersey:
Transaction Publishers (2004):171-191. Maura Conway.
[3] WIPO Diplomatic Conference on Certain Copyright and
Figure 15 [33] Neighbouring Rights Questions, 1996.
[4] WIPO Copyright Treaty, 1996.
Advantage Disadvantage
Due to enormous packet Loss of packets may [5] Document prepared by the International Bureau,
WIPO/INT/SIN/98/9, 1998. Presented at the WIPO Seminar for Asia and the
flow almost unlimited render undesirable Pacific Region on Internet and the Protection of Intellectual Property Rights,
amount of secret bits can be results. Singapore.
exchanged via these
techniques. [6] Mark Owens, A Discussion of Covert Channels and
Steganography, © SANS Institute, March 19, 2002
70 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[7] LADA Luiz, Angel, Dimitar and Andrew, The Art of Covert [23] Mohammad Shirali-Shahreza, Text Steganography by Changing
Communication Words Spelling, ISBN 978-89-5519-136-3, Feb. 17-20, 2008 ICACT 2008
[8] Dave Kleiman (Technical Editor), Kevin Cardwell, Timothy [24] M. Hassan Shirali-Shahreza, Mohammad Shirali-Shahreza, A
Clinton, Michael Cross, Michael Gregg, Jesse Varsalone, The Official New Synonym Text Steganography ,International Conference on Intelligent
CHFI Study Guide (Exam 312-49) for Computer Hacking Forensic Information Hiding and Multimedia Signal Processing 978-0-7695-3278-3/08
Investigators, Published by: Syngress Publishing, Inc., Elsevier, Inc., 30 © 2008 IEEE
Corporate Drive, Burlington, MA 01803, Craig Wright
[25] W. Bender, D. Gruhl, N. Morimoto, and A. Lu, Techniques for
[9] Stefan Katzenbeisser, Fabien A. P. Petitcolas, Information data hiding IBM Systems Journal, Vol. 35, Issues 3&4, pp. 313-336, 1996.
Hiding Techniques for Steganography and Digital Watermarking, Artech
House, Boston – London [26] Aasma Ghani Memon, Sumbul Khawaja and Asadullah Shah,
Steganography: a New Horizon for Safe Communication through XML,
[10] Nedeljko Cvejic, Algorithms For Audio Watermarking And www.jatit.org, JATIT ©2005 – 2008
Steganography, Department of Electrical and Information engineering,
Information Processing Laboratory, University of Oulu, 2004. [27] Xuan Zhou, HweeHwa Pang, KianLee Tan, Querybased
Watermarking for XML Data, ASIACCS’07, March 2022,2007,
[11] Jessica Fridrich, Tomáš Pevný, Jan Kodovský, Statistically Singapore.Copyright 2007 ACM 1595935746/07/0003 ...$5.00.
Undetectable JPEG Steganography: Dead Ends, Challenges, and [28] Patrick Diskin, Samuel. Lau and Robert Parlett, Steganography
Opportunities, Copyright 2007 ACM 978-1-59593-857-2/07/0009 ...$5.00. and Digital Watermarking, Jonathan Cummins, School of Computer Science,
The University of Birmingham, 2004
[12] B. P_tzmann, Information hiding terminology, In Anderson [5],
pp. 347{350, ISBN 3-540-61996-8, results of an informal plenary meeting and [29] S. H. Low N. F. Maxemchuk J. T. Brassil L. O'Gorman,
additional proposals. Document Marking and Identification using Both Line and Word Shifting,
AT&T Bell Laboratories, Murray Hill NJ 07974, 0743-166W95-1995 IEEE
[13] Bret Dunbar, Steganographic Techniques and their use in an
Open-Systems Environment, As part of the Information Security Reading [30] Lingyun Xiang, Xingming Sun, Gang Luo, Can Gan, Research
Room., © SANS Institute 2002 on Steganalysis for Text Steganography Based on Font Format, School of
Computer & Communication, Hunan University, Changsha, Hunan
[14] Ingemar J. Cox, Matthew L. Miller, Jeffrey A. Bloom, Jessica P.R.China, 410082
Fridrich, Ton Kalker, Digital Watermarking and Steganography, Second
Edition, Copyright © 2008 by Elsevier Inc. All rights reserved. [31] Mercan Topkara, Umut Topkara, Mikhail J. Atallah,
Information Hiding Through Errors: A Confusing Approach, Purdue
[15] Glancy, D., Privacy and Intelligent Transportation Technology, University
Santa Clara Computer & High Technologies Law Journal, 1995, pp. 151.
[32] Tsung-Yuan Liu, Wen-Hsiang Tsai,and Senior Member, A New
[16] Victor Raskin, Brian Buck, Arthur Keen, Christian F. Steganographic Method for Data Hiding in Microsoft Word Documents by a
Hempelmann, Katrina E. Triezenberg, Accessing and Manipulating Change Tracking Technique, 1556-6013 © 2007 IEEE
Meaning of Textual and Data Information for Information Assurance and
Security and Intelligence Information, Copyright © 2008 ACM 978-1-60558- [33] Richard Popa, An Analysis of Steganographic Techniques, The
098-2/08/05 ... $5.00 'Politehnica' University of Timisoara, Faculty of Automatics and Computers,
Department of Computer Science and Software Engineering.
[17] Chen Zhi-li, Huang Liu-sheng, Yu Zhen-shan, Zhao Xin-xin,
Zheng Xue-ling, Effective Linguistic Steganography Detection, IEEE 8th [34] Mark Stamp, Information Security-Principles and Practice,
International Conference on Computer and Information Technology Wiley Student Edition, 2006
Workshops, 978-0-7695-3242-4/08 $25.00 © 2008 IEEE
[35] Rafat, K.F, Enhanced text steganography in SMS, Computer,
[18] Hasan Mesut Meral, Bulent Sankur, A. Sumru Ozsoy, Tunga Control and Communication, 2009. IC4 2009 2nd International Conference
Gungor, Emre Seving, Natural language watermarking via morphosyntactic on 17-18 Feb. 2009, Digital Object Identifier 10.1109/IC4.2009.4909228
alterations, 0885-2308/$ - see front matter 2008 Elsevier Ltd. All rights
reserved. [36] Pierre Moulin and Ralf Koetter, Data-Hiding Codes, 0018-
9219/$20.00 © 2005 IEEE
[19] Mercan Topkara Cuneyt M. Taskiran Edward J. Delp, Natural
Language Watermarking, Security, Steganography, and Watermarking of [37] Huayin Si and Chang-Tsun Li, Maintaining Information
Multimedia Contents VII, edited by Edward J. Delp III, Ping Wah Wong, Proc. Security in E-Government through Steganology, Department of Computer
of SPIE-IS&T Electronic Imaging, SPIE Vol. 5681 © 2005 SPIE and IS&T · Science, University of Warwick, Coventry CV4 7AL, UK
0277-786X/05/$15
[38] Stanislav S. Barilnik, Igor V. Minin, Oleg V. Minin ,Adaptation
[20] Maes, M., Twin Peaks: The Histogram Attack on Fixed Depth of Text Steganographic Algorithm for HTML,ISSN 1815-3712 ISBN 978-5-
Image Watermarks, in Proceedings of the Second International Workshop on 7782-0752-3 (C) Novosibirsk State Technical University.
Information Hiding, vol. 1525 of Lecture Notes in Computer Science,
Springer, 1998, pp. 290–305. [39] Sudeep Ghosh , StegHTML: A message hiding mechanism in
[21] GLENN WATT, CTA Conference, Santa Fe, NM, 2006 HTML tags, December 10,2007
[22] Mohammad Sirali-Shahreza, M. Hassan Shirali-Shahreza, Text [40] Mohammad Sirali-Shahreza, M. Hassan Shirali- Shahreza,
Steganography in SMS, 0-7695-3038-9/07 © 2007 IEEE, DOI Text Steganography in Chat, 1-4244-1007/07 © 2007 IEEE
10.1109/ICCIT.2007.100
[41] http://mail.colonial.net/~abeckwith/encrypt.htm
71 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[42] Chapman, Mark. A Software System for Concealing Ciphertext as
Innocuous Text, Hiding the Hidden:
http://www.NICETEXT.com/NICETEXT/doc/ thesis.pdf.1997
[43] http://searchcio-midmarket.techtarget.com/
sDefinition/0,,sid183_gci211518,00.html
[44] http://mail.colonial.net/~abeckwith/images/ scytale.gif
AUTHORS PROFILE
KHAN FARHAN RAFAT has
completed his Ph.D. course work
under supervision of Professor Dr.
Muhammad Sher, International
Islamic University, Islamabad.
He has twenty years R & D
experience in the field of
Information and communication
Security ranging from formulation
and implementation of security
policies, evolution of new and
enhancement of existing security
related Projects to software
development etc.
Professor Dr. MUHAMMAD
SHER is Head of Department of
Computer Science, International
Islamic University, Islamabad,
Pakistan. He did his Ph.D.
Computer Science from TU Berlin,
Germany, and specialized in Next
Generation Networks and Security.
He has vast research and
teaching experience and has a
number of international research
publications to his credit.
72 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
New clustering method to decrease probability of
failure nodes and increasing the lifetime in WSNs
Shahram Babaie Ahmad Khadem Zade Ali Hosseinalipour
Department of Computer Engineering Department of Computer Engineering Department of Computer Engineering
PhD students, Islamic Azad University, Iran Telecommunication Research Center Islamic Azad University- Tabriz Branch
Olom VA Tahghighat Branch, Tehran, Iran Tabriz Iran
Tehran, Iran . .
.
To avoid these overheads and unbalanced consumption of
Abstract—Clustering in wireless sensor networks is one of the energy some high-energy nodes called “Gateways” are
crucial methods for increasing of network lifetime. There are deployed in the network [2]. These sensors are used as head
many algorithms for clustering. One of the important cluster clusters due to decrease the failure probability of head clusters.
based algorithm in wireless sensor networks is LEACH And this increases the lifetime of the network. But since this
algorithm. In this paper we proposed a new clustering method for method takes a lot of expenditure so in this article we just use
increasing of network lifetime. We distribute several sensors with these sensors as manager for a number of head clusters. In this
a high-energy for managing the cluster head and to decrease manner each one becomes gatewayamong each head cluster.
their responsibilities in network. The performance of the This method decreases both networks lifetime and failure
proposed algorithm via computer simulation was evaluated and probability.
compared with other clustering algorithms. The simulation
results show the high performance of the proposed clustering In the second part, the architecture of two networks and the
algorithm. relevant tasks will be explained. In the third part, the proposed
protocol has been explained and in the fourth part the results of
Keywords-Network Clustering; Nodes failure; Energy-Aware simulating and tests evaluation can be seen. The last part
Communication; Wireless Sensor Networks involves conclusion of the article and discussing about pattern
I. INTRODUCTION of future researches.
Recent improvements in integrated circuits (IC) have II. RELATED WORKS
fostered the emergence of a new generation of tiny, called System architecture for clustered sensor networks has been
Sensors. That from economical aspect they are commodious shown in figure 1. There just two sorts of nodes, cluster joint
and also they are used in non military (for instance sensors and head cluster with tolerance of energy shortcoming.
environmental managing: temperature, pressure, tremor, etc) Joint sensors and homogeneous head clusters with a same
To consider having group of limitations such as battery life identity have been assumed as similar. All the connections are
time, calculating and memory significantly they have been wireless. The connection of joint nodes with the main station is
predicted as non recyclable and also they live until their powers possible only with head cluster. For sending information
fade away. So power is something rare for systems like sensor. schedule we use TDMA (Time-Division Multiple Access)
During a special mission the correct consumption for sensors protocol.
lifetime should be managed knowingly. The power of sensor During starting the process a unique ID, primary energy
can not support more than far connection. Therefore to transmit and TDMA scheduling are attributed for all the sensors and
they need the architecture of multi sectional. A useful way to gateways. We suppose that the entire node are aware from
decrease the system lifetime is to divide them to diverse others place by the GPS. In the beginning all of the connective
clusters [2]. Parts of a cluster-based network sensor are base bridges are assumed in connection area. as the energy
stations and sensors. In this method sensors relay the data flow consumption of GPS is high , it is On at the beginning of the
by head clusters. The central station always stays far from clustering and on the other states it is in the sleep mode.
where sensors are expanded. In this manner saving the Connection scheduling among connective bridges first appears
consumption energy and awareness of that to communicate with head cluster when it establishes.
with central station has various methods. Two methods of
routing in articles have been proposed [5, 6]. These methods The central station always stays far from where the sensors
because of their route detecting and finding optimum steps in are expanded. in this order, maintaining the consumption
relation with central station have head load. In addition, they energy and being aware of that in relation with central station
will have extra load on nodes that are located around central have different methods: such as LEACH (Low-energy
station, so most of the traffic will be from them. Adaptive Clustering Hierarchy) [1] and SEP (Stable Election
Protocol) [7] and also two other routing method have been
73 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 1, 2010
explained in articles [5, 6].these methods due to detecting the
path and finding the optimum steps in relation with command
node have head load. In addition having extra load on nodes,
which is located around central station, most of the traffics will
be because of them. To avoid this head loads and unstable
energy consumption some of nodes have been expanded
through the networks by a high-energy that called gateway
[2].these sensors act as gateway among clusters and central
stations. And mage the entire network in cluster. Each sensor
with a high-energy belongs just to one cluster. And the
connection with the central station just takes place through
cluster Gateway. In this method failure probability decreases
and networks lifetime increases.
Figure 2: The LEACH Network model
Figure 3: The LEACH protocol Phase.[1]
First phase as a compared with second one less overhead
impose to protocol. In initialization phase, at first in choose of
Figure 1: network style with clustering
cluster head step, randomly allocate number between zero and
one for each node and then compared with cluster head
A. LEACH Protocol threshold. A node is chosen for cluster head if its number is
LEACH protocol is hierarchical routing algorithm that can less than threshold. Threshold of cluster head shows in relation
organize nodes into clusters collections. Each cluster controlled 1.
by cluster head. Cluster head has several duties. First one is
gathering data from member cluster and accumulates them.
Second one is directly sending accumulation data to sink. Used ⎧ n ∉ G
model in LEACH shows in Figure 2. Third one is scheduling ⎪G n ∈ G
based of Time-Division Multiple Access (TDMA). In that, ⎪
⎪
Τ (n ) = ⎨ P
each node in cluster related to it's time slot could send ⎪
collection data [1]. ⎪1 − P ⎛ r mod ⎛ 1
⎜
⎞⎞
⎪
⎩
⎜
⎝ ⎝ p ⎟⎟
⎠⎠
Cluster head announce time slot by uses of distribution
property to all members of cluster. Main operations of LEACH Relation 1: The way of cluster head selection relation.[1]
are classify in two separate phase that shows in figure 3 [1].
First phase or initialization phase has two process; clustering T (n): Threshold
and cluster head determining. Second phase mean steady-state, P: node selection probability in every period
that this phase concentrate to gathering, accumulation and G: the set of unselected nodes
transmit data to sink. r: number of current period (started from one)
74 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 1, 2010
A node as a cluster head, announces new roles to the other To do so, we expand some of nodes according to lifetime,
nodes. With this signal other nodes based on straight of space and number of exist sensors in network. While clustering
received signal decide to be membership of which cluster. In we don’t need this work node. We can cluster the network with
every cluster, created time slot by cluster head based on the algorithms like SEP, LEACH and TEEN (Threshold-
TDMA, distributed between cluster that contain visual time slot sensitive Energy-Efficient sensor Network Protocol).afterward
for each member of cluster. Cluster head use Code-Division the clustering is done, each head cluster sends a signal to these
Multiple Access (CDMA) technique too. With completion of sensors. And with these signals the sensors specify which
initialization phase, steady-state phase start. In this phase, cluster is appropriate to manage. And with the hypothesis of
nodes in determining time slot gathering data and sending to network they choose some of the cluster to in order to manage
the cluster head node. Meanwhile gathering of data is them. And each closer is being managed just by one of these
periodically. sensors. After establishing the network the role of these sensors
as gateways between head clusters and central stations, by the
B. SEP Protocol hypothesis network chooses some of clusters to manage. And
SEP protocol was improved of LEACH protocol. Main aim each cluster is being controlled by just one of the sensors. After
of it was used heterogeneous sensor in wireless sensor establishing the network, the sensors have the role of a gateway
networks. This protocol have operation like LEACH but with between central stations and head clusters. To be attentive that
this difference that, in SEP protocol sensors have two different head clusters to transmit to central stations and data assembling
level of energy. Therefore sensors are not homogeneous. In this and calculating in protocol consume a great deal of energy. All
protocol with suppose of some sensors have high energy the responsibility of head cluster is given over to joint cluster
therefore probability of these sensors as cluster head will sensors or Gateway. Then after receiving data from its joint
increased. But in SEP and LEACH, cluster heads aren’t choose nodes without any calculating delivers them to gateway. And
base of energy level and their position. This is main problem of its gateway that transmits them to base station after doing
these methods, so their operations are static. necessary works and calculations. This method can be used in
two ways. One that we spread high-energy sensors beside other
III. PROPOSED METHOD sensors. And another practical way is to put them between root
These methods because of their route detecting and finding station and head clusters. In both aspects both network lifetime
optimum steps in relation with central station have head load. increases and extra load eliminates from head clusters and also
In addition, they will have extra load on nodes that are located failure probability decreases.
around central station, so most of the traffic will be from them.
That other cluster heads don’t have connection with Sink
station. And this connection is accomplished via Gateway and
these nodes with high-energy contain the rule of Gateway. And
these Gateways to lifetime termination managing same cluster
heads. But similar to LEACH algorithm in any time period the
cluster head is changing. When the cluster node is changing,
the cluster head tell to gateway via a signal. This protocol is
resumed to end of lifetime.
IV. SIMULATION RESULTS
We stimulated a wireless sensor network in a 100*100
space and with an equal distribution of 100 sensors randomly
by using MATLAB software. In this simulation the central
node at the end of area with the co ordinations has been put.
And we spread 4 sensors with high power in network. The
primary energy of typical sensors is 0.5 J and sensors with
high-energy are 1.0 J. we adjust the execution of the simulation
for 1000 cycle and also consumption energy is evaluated based
on table number 1.
TABLE 1: USED RADIO CHARACTERISTICS IN OUR SIMULATIONS
Figure 4: Multi-gateway clustered sensor network
To avoid this extra load and unstable consumption of Operation Energy Dissipated
Transmitter/Receiver Electronics Eelec=50nJ/bit
energy some of the nodes have been expanded with a high-
Data Aggregation EDA=5nJ/bit/signal
energy called Gateway [2] sensors are used as head clusters due Transmit Amplifier Єƒs=10pJ/bit/m2
to decrease the failure probability of head clusters. And this if dmaxtoBS ≤ d0
increases the lifetime of the network but since this method Transmit Amplifier єmp=0.0013pJ/bit/m4
takes a lot of expenditure so in this article we just use these if dmaxtoBS ≥ d0
sensors as manager for a number of head clusters.
75 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 1, 2010
[5] S. Singh, M. Woo and C. S. Raghavendra, "Power-Aware Routing in
Mobile Ad Hoc Networks", Proc. of ACM MOBICOM'98, Dallas,
The results of simulation show that new method in Texas, October 1998
comparison with LEACH and SEP acts better and also
[6] D. Estrin, R. Govindan, J. Heidemann, and S. Kumar. "Scalable
increases the networks lifetime significantly. coordination in sensor networks" Proc. of ACM/IEEE MobiCom 1999,
Seattle, Washington, August 1999.
We test this protocol and LEACH and SEP with different
sensors (50,100,200,300,400,500) and as seen in figure 5 the [7] Georgios Smaragdakis Ibrahim Matta Azer Bestavros” SEP: A Stable
Election Protocol for clustered heterogeneous wireless sensor networks”
results show that the new method is better than exist methods. Technical Report BUCS-TR-2004
And the lifetime of the network is more than the same lifetime [8] Piraeus Tillapart, Sanguan Thammarojsakul, Thanachai
in LEACH and SEP. both LEACH and SEP die with 100 Thumthawatworn, Pratit Santiprabhob”An Approach to Hybrid
sensors when they see the first sensor and live for another 200 Clustering and Routing in Wireless Sensor Networks” 2005 IEEE.
time. While in the proposed protocol after observing the first
died sensor that itself observes later than LEACH and then
lives for another 300 times.
1400
1300
Network Lifetime
1200
1100
?
1000
900
800
10 100 200 300 400 500
No.Node
NEW Protocol SEP LEACH
Figure 5: Comparing proposed algorithm with others
V. CONCLUSION AND FUTURE WORKS
The node of Gateway with a high-energy through the
sensors is used as a central manager is just a step away from
the central station. Ultimately after simulating we found out
that proposed protocol plays an indispensable role in increasing
network lifetime and could have been increased the lifetime in
comparison with SEP and LEACH.
In this article it is supposed that sensor nodes and gateways
are fixed and motionless. On the other program we will
research the mobile gateways.
REFERENCE
[1] Kazem Sohraby, Daniel Minoli, Taieb Znati "Wireless Sensor Networks
Technology, Protocols, and Applications" Published by John Wiley &
Sons, Inc., Hoboken, New Jersey. Published simultaneously in Canada.
2007.
[2] Gaurav Gupta, Mohamed Younis "Fault-Tolerant Clustering of Wireless
Sensor Networks" 2003 IEEE
[3] Yongxuan Lai, Hong Chen "Energy-Efficient Fault-Tolerant Mechanism
for Clustered Wireless Sensor Networks". 2007 IEEE. This work is
supported by the National Natural Science Foundation of China under
Grant.
[4] Ameer Ahmed Abbasi, Mohamed Younis, Saudi Arabia "A survey on
clustering algorithms for wireless sensor networks" Computer
Communications 30(2007)2826-2841 WWW.ScienceDirect.com
76 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Comments on “Routh Stability Criterion”
T.D.Roopamala S.K.Katti
Assistant Professor Professor
Sri Jayachamarajendra college of Engineering Sri Jayachamarajendra college of Engineering
. .
λ4 +1 = 0 (1)
Abstract— In this note, we have shown special case on Routh
stability criterion, which is not discussed, in previous literature.
This idea can be useful in computer science applications. Applying Routh criterion to above polynomial, we get
Keywords- Routh stability criterion, Routh array, Hurwitz criterion, λ4 1 0 1
stability.
λ 3
∈ ∈ ∈
I. INTRODUCTION λ2 -1 0 0 (2)
The Routh stability criterion [1] is an analytical procedure λ1 ∈ ∈ 0
for determining if all the roots of a polynomial have negative λ0 1 0 0
real parts, and it is used in the stability analysis of linear time-
invariants systems [6]. This stability criterion is useful in
various engineering applications [7-8]. There are various In above problem, first row of the Routh’s array does not
special cases discussed in various literature based on Routh posses all non-zero elements, and the immediate second row
criterion [2, 5]. In this small note, one special case based on has all the elements zeros and hence the problem considered in
Routh criterion is considered which is not dealt by the previous this note is different from the other existing cases. Now
authors, to the best of our knowledge. Replacing all the elements in the second row by ∈ , as shown
in (2), where ∈ is a small positive number. Then, we apply
Routh method to remaining array formulation. So, in the first
column of the Routh array, there exist two changes in sign and
II. ROUTH STABILITY CRITERION hence, this polynomial has complex conjugate eigenvalues
In order to ascertain the stability of a linear time-invariant with positive real parts.
system, it is necessary to determine if any of the roots of its
characteristics equation lie in the right half of the s-plane. A. The actual roots of a polynomial are
Hurwitz and E. J. Routh independently published the method
of investigating the sufficient conditions of stability of a λ1,2 = −0.7171 ± 0.7071 j,
(3)
system [1]. The Hurwitz criterion is in terms of determinants λ3,4 = 0.7171 ± 0.7071 j
and the Routh criterion is in terms of array formulation. A
necessary and sufficient condition for stability is that all of the
elements in the first column of the Routh array be positive. If
this condition is not met, the system is unstable, and the
ACKNOWLEDGMENT
number of sign changes in the elements of the first column of
the Routh array corresponds to the number of roots of the We are thankful to Dr. Yogesh V. Hote for suggestion in
characteristics equation in the right half of the s-plane. writing this paper.
However, the standard procedure fails if we encounter any of
the following situations in the formulation of the array [4].
[1] A row of all zeros appears
REFERENCES
[2] First element of a row, appearing in first column of the
array is zero, but the entire row is not all zeros. [1] E. J. Routh, A Treatise on the Stability of motion, London, U. K.:
Macmillan, 1877.
[2] K. Khatwani, “On Routh Hurwitz criterion,” IEEE Transactions on
Automatic Control, vol. 26, no. 2, pp. 483-582, 1981.
[3] M. V. C. Rao and P. V. Rao, “Some More Comments on “ On the
III. PROPOSED SPECIAL CASE ON ROUTH CRITERION Routh Hurwitz Criterion,” IEEE Transactions On automatic Control, pp.
Consider the following polynomial 714-716, 1975.
77 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[4] A. Lepschy, “Comments on Polynomial Factorization using Routh [6] M. Gopal, Control Systems Principles and Design, Tata McGraw Hill,
Criterion,” IEEE Proceedings, 1972. Second edition, 2000.
[5] R. N. Clark, “The Routh-Hurwitz stability criterion, revisited,” IEEE [7] K. Dekker, “ Formula Manipulation in ALGOL 68 and application to
Control system magazine, pp. 119-120, Jun. 1992. Routh’s Algorihm,” Computing, Vol. 26, pp. 167-187, 1981.
[8] A. P. Liyaw, “ Hgram patterns of Routh Stability zones in linear
systems,” International Journal of Mathematical Education in Science
and Technology, vol. 28, no. 2, pp. 225-241, 1997.
78 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Concurrent Approach to Flynn’s SPMD Classification
Through Java
Bala Dhandayuthapani Veerasamy
Department of Computing
Mekelle University
Mekelle, Ethiopia
.
Abstract—Parallel programming models exist as an abstraction of some of the tasks can be executed concurrently. In some
hardware and memory architectures. There are several parallel situations, doing more work over the same time period is not
programming models in commonly use; they are shared memory the goal. Rather, simplifying the programming solution is the
model, thread model, message passing model, data parallel goal. Sometimes it makes more sense to think of the solution
model, hybrid model, Flynn’s models, embarrassingly parallel to the problem as a set of concurrently executed tasks. This
computations model, pipelined computations model. These technique is used in the parallel computer architectures.
models are not specific to a particular type of machine or
memory architecture. This paper focuses the concurrent Java is just a computer language [5] that has secure,
approach to Flynn’s SPMD classification in single processing portable, object-oriented, multithreaded [3] [4] [6], interpreted,
environment through java program. byte-coded, garbage-collected, language with a strongly typed
exception-handling mechanism for writing distributed
Keywords-Concurren; Flynn’s Taxonomy; Single processor programs [4]. Java is an object-oriented programming
Environment; Java Development Ki; Parallel; language, which added the new features such as overriding,
interface and etc. Java supports multithreaded programming,
which allows you to do many things simultaneously on the
same time interval. Java enables the creation of cross-platform
I. INTRODUCTION programs by compiling into an intermediate representation
Parallel programming and distributed programming [1] are called java byte code. JVM (Java Virtual Machine) is an
two basic approaches for achieving concurrency with a piece interpreter for java. Java is designed for the distributed
of software. They are two different programming paradigms environment on the Internet. Java has technology called RMI
that sometimes intersect. In the past programming life, we (Remote Method Invocation) that brings unparalleled level of
were mostly using sequential programming. But, today’s life abstraction to client / server programming. Byte code is a
style is going with more faster than the past decades. Also, highly optimized set of instructions designed to be executed
solving problems on the computers are enormous. Parallel by the java run-time system, which is called Java Virtual
computer [1] can executes two or more job within a same Machine (JVM). Java handles de-allocation for you
period of time. automatically, this technique called garbage collection. The
Java Developers Kit (JDK) is a set of command-line tools that
Two events are said to be concurrent if they occur within
can be used to create Java programs. The current release of the
the same time interval. Two or more tasks executing over the
JDK is version 1.6.
same time interval are said to execute concurrently. Tasks that
exist at the same time and perform in the same time period are
concurrent. Concurrent tasks can execute in a single or II. FLYNN’S CLASSICAL TAXONOMY
multiprocessing environment [2]. In a single processing Parallel computers can be divided into two main categories
environment, concurrent tasks exist at the same time and of control flow and data flow. Control-flow parallel computers
execute within the same time period by context switching. In a are essentially based on the same principles as the sequential
multiprocessor environment, if enough processors are free, or von Neumann computer, except that multiple instructions
concurrent tasks may execute at the same instant over the can be executed at any given time. Data-flow parallel
same time period. The determining factor for what makes an computers sometimes referred to as “non-von Neumann,” is
acceptable time period for concurrency is relative to the completely different in that they have no pointer to active
application. instruction(s) or a locus of control. The control is totally
Concurrency techniques [3] [6] are used to allow a distributed, with the availability of operands triggering the
computer program to do more work over the same time period activation of instructions. In what follows, we will focus
or time interval. Rather than designing the program to do one exclusively on control-flow parallel computers.
task at a time, the program is broken down in such a way that
79 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
There are different ways to classify parallel computers. each task can be executing the same or different program as
One of the more widely used classifications, in use since 1966, other tasks. All tasks may use different data.
is called Flynn's Taxonomy [2]. The Flynn’s taxonomy
distinguishes multi-processor computer architectures III. FLYNN’S SPMD IMPLEMENTATION
according to how they can be classified along the two
independent dimensions of Instruction and Data. Each of these SPMD is actually a "high level" programming model that
dimensions can have only one of two possible states called can be built upon any combination of the parallel
Single or Multiple. There are four possible classifications programming models. A single program can have multiple
according to Flynn’s that is shown in Figure 1. tasks, which can be executed simultaneously. At any moment
in time, tasks can be executing the same or different
instructions within the same program. SPMD programs
usually have the necessary logic programmed into them to
allow different tasks to branch or conditionally execute only
those parts of the program they are designed to execute. That
is, tasks do not necessarily have to execute the entire program
- perhaps only a portion of it. Here all tasks may use different
data.
Single processing environment can have concurrent tasks
exist at the same time and execute within the same time period
by context switching (time limits). This paper only focuses on
Flynn’s SPMD classification in single processing environment
using concurrent approach.
Program 1. A Sample program for Flynn’s SPMD
Figure 1. Flynn’s Taxonomy
class SPMD implements Runnable{
SPSD is simplest type of computer performs one
instruction per cycle, with only one set of data or operand. Thread t;
SPSD is serial computer architecture. Such a system is called a String name;
scalar computer. SPSD will have one program and one set of int a,b,sum;
data. Single instruction: only one instruction stream is being
acted on by the CPU during any one clock cycle. Single data: SPMD(String str, int val1,int val2){
only one data stream is being used as input during any one t=new Thread(this,str);
clock cycle. It will execute by only one processor as a name=str;
sequential manner. Hence it is not a parallel programming a=val1;
model rather it is a sequential programming model. It can be b=val2;
executed by a single processor based system by sequential t.start(); }
way.
MPSD [7] is a single data stream is fed into multiple public void run(){
processing units. Each processing unit operates on the data try{
independently via independent instruction streams. Few actual
examples of this class of parallel computer have ever existed. sum=a+b; // single operation
MPSD will have more than one program with same values will System.out.println("the sum is "+ sum + " produced
be used by all the programs. All the programs will execute in by " + name +" thread");
different processors with the same values. If all task or threads t.sleep(200);
are executed in different processor means, it will take the same
values. }catch(Exception e){}
SPMD is actually have a single program is executed by all }
tasks simultaneously. At any moment in time, tasks can be
executing the same or different instructions within the same public static void main(String BDP[]){
program. SPMD programs usually have the necessary logic
programmed into them to allow different tasks to branch or SPMD b1=new SPMD("task1",1,1); // value 1
conditionally execute only those parts of the program they are SPMD b2=new SPMD("task2",5,5); // value 2
designed to execute. That is, tasks do not necessarily have to SPMD b3=new SPMD("task3",10,10); // value 3
execute the entire program perhaps only a portion of it. Here SPMD b4=new SPMD("task4",1,5); // value 4
all tasks may use different data.
MPMD [8] is actually a "high level" programming model. }}
MPMD applications typically have multiple executable object
files (programs). While the application is being run in parallel,
80 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
IV. RESULTS AND DISCUSSION Concurrent approaches can execute multiple tasks using
Sequential programming also called serial programming. It context switching in single processor environments. It enabled
is normally a computer programs, which involves consecutive to execute Flynn’s SPMD classification in single processing
process or sequential process. It can uses only single environment. This finding also initiated to have high
processing environment. There are drawbacks in sequential performance and throughput on single processing
programming. It can be executed in a sequential manner. It environment. Hence, this paper recommending you to have
will take more time for execution because instruction will concurrent execution of single program with multiple values
execute by the processor one after another. It will have less on single processing environment.
clock speed. Biggest problems cannot be solved. The
concurrent programming is also a computer program, which REFERENCES
involves more than one process within the same time interval. [1] Tobias Wittwer, An Introduction to Parallel Programming, VSSD, 2006.
Two or more tasks executing over the same time interval are [2] Hesham El-Rewini, Mostafa Abd-El-Barr, Advanced Computer
said to execute concurrently. Parallel and distributed Architecture and Parallel, A John Wiley & Sons, Inc Publication, 2005.
programmings are two approaches for achieving concurrency. [3] Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes,
Doug Lea, Java Concurrency in Practice, Addison Wesley Professional,
Java provides Thread class to create concurrent execution 2006.
of tasks. Thread class has constructors and methods, which are [4] Charles W. Kann, Creating Components: Object Oriented, Concurrent,
helping to create concurrent execution of tasks. The Program 1 and Distributed Computing in Java, Auerbach Publications, 2004.
developed to execute in a single processing environment using [5] Peter Norton & Wiliam Stanek, Java Programming, Sams Publishing,
Flynn’s classification with SPMD. In this program, SPMD 1996.
(String str, int val1, int val2) constructor has an argument with [6] Stephen J. Hartley, Concurrent Programming Using Java, Oxford
“String str” will receive name of the task, “int val1, val2” will University Press, 1998.
receive values for addition, subtraction, multiplication and [7] Bala Dhandayuthapani Veerasamy, Concurrent Approach to Flynn’s
division. In the main function b1, b2, b3, b4 are objects; once MPSD Classification through Java, International Journal of Computer
Science and Network Security, Vol. 10 No. 1 pp. 126-129, January
it has created constructor will be automatically called. The 2010.
t=new Thread(this, str) creates tasks such as “Task1”, [8] Bala Dhandayuthapani Veerasamy, Concurrent Approach to Flynn’s
“Task2”, “Task3” and “Task4”. The t.start() method has been MPMD Classification through Java, International Journal of Computer
starting all the tasks. After starting the tasks, it will be Science and Network Security, Vol. 7 No. 2, February 2010.
automatically called run() method. The run() method will
execute all the tasks concurrently by using t.sleep(200)
method (context switching). The t.sleep(200) method pause AUTHORS PROFILE
any task for 200 milliseconds during execution and it will Bala Dhandayuthapani Veerasamy was
allow to execute waiting of any other task. Until completing born in Tamil Nadu, India in the year 1979. The
all the tasks, run() method permitted to execute tasks author was awarded his first masters degree M.S
in Information Technology from Bharathidasan
concurrently using sleep() method and it enabled to exploit the University in 2002 and his second masters degree
processor idle time. Here all the tasks will use same operation M.Tech in Information Technology from
with sum=a+b as the same program but it will use different Allahabad Agricultural Institute of Deemed
data as "task1" uses 1,1; "task2" uses 5,5; "task3" uses 10,10; University in 2005. He has published more than
fifteen peer reviewed technical papers on various
"task4" uses 1,5; Finally, this program will produce the international journals and conferences. He has
following result. managed as technical chairperson of an
international conference. He has an active participation as a program
the sum is 2 produced by task1 thread committee member as well as an editorial review board member in
international conferences. He is also a member of an editorial review board in
the sum is 10 produced by task2 thread international journals.
He has offered courses to Computer Science and Engineering,
the sum is 20 produced by task3 thread Information Systems and Technology, since 8 years in the academic field. His
academic career started in reputed engineering colleges in India. At present,
the sum is 6 produced by task4 thread he is working as a Lecturer in the Department of Computing, College of
Engineering, Mekelle University, Ethiopia. His teaching interest focuses on
Hence, this research finding introduced to use for Flynn’s Parallel and Distributed Computing, Object Oriented Programming, Web
Technologies and Multimedia Systems. His research interest includes Parallel
SPMD classification to execute on the single processing and Distributed Computing, Multimedia and Wireless Computing. He has
environment using concurrent approach. prepared teaching material for various courses that he has handled. At present,
his textbook on “An Introduction to Parallel and Distributed Computing
through java” is under review and is expected to be published shortly. He has
V. CONCLUSION the life membership of ISTE (Indian Society of Technical Education).
Flynn’s classical taxonomy has four classifications, except
the first classification all other classification will utilize
multiprocessing environment. While executing a single
program over processor, it executes one task at a time.
81 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Multi-objective Geometric
Programming Problem with Weighted Mean Method
A. K. Ojha K. K. Biswal
School of Basic Sciences Department of Mathematics
IIT Bhubaneswar C.T.T.C, Bhubaneswar
Orissa, Pin-751013, India Orissa, India-751024
. .
Abstract-Geometric programming is an important class of functions. In this case, it is not suitable to use any single-
optimization problems that enable practitioners to model a objective programming to find an optimal compromise
large variety of real-world applications, mostly in the field of solution. Biswal[4] has studied the optimal compromise
engineering design. In many real life optimization problem solution of multi-objective programming problem by using
multi-objective programming plays a vital role in socio fuzzy programming technique [20, 21]. In a recent paper
economical and industrial optimizing problems. In this paper
we have discussed the basic concepts and principle of multiple
Islam and Ray[8] find the Pareto optimal solution by
objective optimization problems and developed geometric considering a multi-objective entropy transportation
programming (GP) technique to solve this optimization problem with an additional restriction with generalized
problem using weighted method to obtain the non-inferior fuzzy number cost.
solutions. In this paper we have developed the method to find the
compromise optimal solution of certain multi-objective
Keywords- Geometric programming, optimization, weighted geometric programming problem by using weighting
method, duality theory, non-inferior solutions. method. First of all the multiple objective functions
transformed to a single objective by considering it as the
1 INTRODUCTION linear combination of the multiple objectives along with
suitable constants called weights. By changing the weights
Geometric Programming(GP) problems have wide range of the most compromise optimal solution has been arrived by
application in production planning, location, distribution, using GP techniques.
risk managements, chemical process designs and other The organization of the paper is as follows: Following the
engineer design situations. GP problem is an excellent introduction, Formulation of multi-objective GP and
method when decision variable interact in a non-linear, corresponding weighting method have been discussed in
especially, in an exponential fashion. Most of these GP Section 2 and 3. The duality theory has been discussed at
applications are posynomial type with zero or few degrees Section 4 to find the optimal value of the objective function
of difficulty. GP problem whose parameters, except for and the illustrative examples have been incorporated at
exponents, are all positive are called posynomial problems, Section 5 to understand the problem. Finally, at Section 6
where as GP problems with some negative parameters are some conclusions are drawn from the discussion.
refereed to as signomial problems. The degree of difficulty
is defined as the number of terms minus the number of 2 FORMULATION OF MULTI-OBJECTIVE
variables minus one, and is equal to the dimension of the GEOMETRIC PROGRAMMING
dual problem. When the degree of difficulty is zero, the
problem can be solved analytically. For such posynomial A multi-objective geometric programming problem can be defined
problems, GP techniques find global optimal solutions. as:
If the degree of difficulty is positive, then the dual feasible Find x = ( x1 , x 2 ,...., xn ) T
region must be searched to maximize the dual objective,
so as to
while if the degree of difficulty is negative, the dual Tk 0 n
constraints may be inconsistent. For detail discussions of
min : g k 0 ( x) = ∑ C k 0t ∏ x j k 0 tj , k = 1,2,..., p
a
(2.1)
various algorithms and computational aspects for both
t =1 j =1
posynomial and signomial GP refers to Beightler et al.[2],
subject to
Duffin et al.[6], Ecker[7] and Phillips et al.[13]. From early
Ti n
g i ( x) = ∑ Cit ∏ x j itj ≤ 1, i = 1,2,..., m
1960 a lot of research work have been done on these GP d
(2.2)
problems [3, 5, 9, 11, 14, 16, 17, 18]. Mainly, we use GP
t =1 j =1
technique to solve some optimal engineering design
problems[1] where we minimize cost and/or weight, x j > 0 , j = 1,2,..., n (2.3)
maximize volume and/or efficiency etc. Generally, an
where Ck0t for all k and t are positive real numbers and ditj
engineering design problem has multiple objective and ak0tj are real numbers for all i,k, t, j.
82 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Tk0 = number of terms present in the kth objective function. 4.DUAL FORM OF GPP
Ti= number of terms present in the ith constraint. The model given by (3.2), (3.3) and (3.4) is a conventional
In the above multi-objective geometric program there are p geometric programming problem and it can be solved
number of minimization type objective function, m number directly by using primal based algorithm for non linear
of inequality type constraints and n number of strictly primal problem or dual programming [12]. Methods due to
positive decision variables. Rajgopal and Bricker [15], Beightler and Phillips[1] and
Duffin et al.[6] projected in their analysis that the dual
3 WEIGHTING METHOD OF MULTI-OBJECTIVE problem has the desirable features of being linearly
FUNCTIONS: constrained and having an objective function with structural
properties with suitable solution.
The weighting method is the simplest multi-objective According to Duffin et al.[6] the model given by (3.3) can
optimization which has been widely applied to find the non- be transformed to the corresponding dual geometric
inferior optimal solution of multi-objective function within program as:
the convex objective space. w0 t wit
T0
⎛w C ⎞ m
⎛ wi 0 C
Ti
⎞ Ti
max ∏ ⎜ k k 0t ∏∏ ⎜ w it ∏ λ (w
If f1(x), f2(x),… ,fn(x) are n objective functions for any
⎜ w ⎟
⎟ ⎜ ⎟
⎟ ) λ ( wit )
vector x = ( x1 , x 2 ,...., x n ) then we can define weighting
T it
t =1 ⎝ ⎠ i =1 t =1 ⎝ ⎠
w
0t it t =1
method for their optimal solution as defined below: (4.1)
⎧ n ⎫ T0
Let W = ⎨w : w ∈ R , wi > 0,
n
∑w j = 1⎬ to be the set of subject to ∑w 0t =1
⎩ j =1 ⎭ t =1
non-negative weights. The weighted objective function for m Ti m Ti
the multiple objective function defined above can be defined ∑∑ ai =1 t =1
itj wit + ∑∑ d itj wit = 0 , j=1,2,…,n
i =1 t =1
n
as P(w) where P ( w) = min
x∈X
∑w
j =1
j f j ( x) (3.1) wit ≥ 0 ∀ t , j
p
It must be made clear, however, that if the objective space
of the original problem is non-convex, then the weighting ∑w
k =1
k = 1, wk > 0, k = 1,2,..., p
method may not be capable of generating the efficient Since it is a usual dual problem then it can be solved using
solutions on the non-convex part of the efficient frontier. It method relating to the dual theory.
must also be noted that the optimal solution of a weighting
problem should not be used as the best compromise 5 NUMERICAL EXAMPLES
solution, if the weights do not reflect the decision maker's
preferences or if the decision maker does not accept the For illustration we consider the following examples.
assumption of a linear utility function. For more detail about Example: 1
the weighted method refer[10]. Find x1, x2, x3, x4 so as to
Based on the importance of the p number of objective
functions defined in (2.1) the weights w1,w2,…,wp are min : g10 ( x) = 4 x1 + 10 x2 + 4 x3 + 2 x4 (5.1)
assigned to define a new min type objective function Z(w) max : g 20 ( x) = x1 x2 x3 (5.2)
which can be defined as 2 2
x x
+ ≤1
p 1 2
min : Z ( x) = ∑ wk g k 0 ( x)
subject to 2 2
(5.3)
x 4 x 4
k =1
100
p
⎛ Tk 0 n ⎞ ≤1 (5.4)
wk ⎜ ∑ C k 0t ∏ x j k 0 tj
∑ ⎜ t =1 ⎟
a
=
⎟ (3.2) x1 x2 x3
k =1 ⎝ j =1 ⎠ x1 , x2 , x3 , x4 > 0
p Tk 0 n
∑∑ w C ∏ x Now the problem can be rewritten as
ak 0 tj
=
min : g10 ( x) = 4 x1 + 10 x2 + 4 x3 + 2 x4
k k 0t j
k =1 t =1 j =1 (5.5)
−1 −1 −1
Ti n
min : g ( x) = x x x
/
∑ Cit ∏ x j itj ≤ 1 , i = 1,2,..., m
d 20 1 2 3 (5.6)
subject to (3.3)
2 −2 −2
t =1 j =1 Subject to x x 1 4+ x x ≤1 2
2 4 (5.7)
x j > 0, j = 1,2,..., n 100 x x x ≤ 1 −1 −1
1 2
−1
3 (5.8)
p
x1 , x2 , x3 , x4 > 0 (5.9)
where ∑w
k =1
k = 1, wk > 0, k = 1,2,..., p (3.4)
83 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Introducing weights for the above objective functions a new w05 w11 w12 w21 Z
objective function is formulated as 0.0010217 0.051051 0.014213 0.3319702 8.80776
− −
Z ( x) = w1 (4 x1 + 10 x2 + 4 x3 + 2 x4 ) + w2 ( x1−1 x2 1 x3 1 ) 0.0004543 0.051080 0.014221 0.3319701 17.60555
(5.10) 0.000265092 0.05109 0.0142237 0.3329799 26.40333
2 −2 −2
subject to x x 1 4+ x x ≤1
2
2 4 (5.11) 0.000170424 0.051095 0. 014225 0.3331061 35.201110.
−1 −1 −1
100 x x x ≤ 1
1 2 3 (5.12) 0.000113614 0.051098 0.0142259 0.3331818 43.99888
x1 , x2 , x3 , x4 > 0
Using primal dual relationship the corresponding primal
where w1 + w2 = 1, w1 , w2 > 0 (5.13) solution are given in the following Table.
This problem is having degree of difficulty 3. The problem Table-2
is solved via the dual programming [6]. Primal solution:
The corresponding dual program is: w1 w1 x1 x2 x3 x4 Z
w01 w02 w03 w04 0.1 0.9 5.084055 2.682555 7.332315 5.748367 8.80776
⎛ 4w ⎞ ⎛ 10w1 ⎞ ⎛ 4w1 ⎞ ⎛ 2w1 ⎞
max : V ( w) = ⎜ 1 ⎟
⎜w ⎟ ⎜
⎜ w ⎟ ⎟ ⎜
⎜w ⎟ ⎟ ⎜
⎜w ⎟ ⎟
0.2 0.8 5.084055 2.682555 7.332315 5.748367 17.60555
w
⎝ 01 ⎠ ⎝ 02 ⎠ ⎝ 03 ⎠ ⎝ 04 ⎠ 0.3 0.7 5.084055 2.682555 7.332315 5.748367 26.40333
w05 w11 w12
⎛ w2 ⎞ ⎛ 1 ⎞ ⎛ 1 ⎞ 0.4 0.6 5.084055 2.682555 7.332315 5.748367 35.20111
⎜
⎜w ⎟ ⎟ ⎜w ⎟
⎜ ⎟ ⎜
⎜w ⎟ ⎟ (w11 + w12 )(w 11 + w12 )
100 w21 0.5 0.5 5.084055 2.682555 7.332315 5.748367 43.99888
⎝ 05 ⎠ ⎝ 11 ⎠ ⎝ 12 ⎠
(5.14)
subject to w01 + w02 + w03 + w04 + w05 = 1 where the minimum values of g10 = 87.98776 and g20 = 0.01
w01 − w05 + 2w11 − w21 = 0 Example: 2
Find x1, x2, x3, x4 in order to
w02 − w05 − 2 w12 − w21 = 0 − −
min : f1 ( x) = x1−1 x2 1 x3 1 (5.15)
w03 − w05 − w21 = 0 − − −
min : f 2 ( x) = x1−1 x2 3 x3 5 + x1−1 x2 1 (5.16)
w04 − 2w11 − 2w12 = 0
subject to x x x + x 2 x3 ≤ 6
2
1 2 3 (5.17)
w1 + w2 = 1 x1 x3 ≤ 1 (5.18)
w01 , w02 , w03 , w04 , w05 , w11 , w12 , w21 ≥ 0 x1 , x2 , x3 > 0 (5.19)
Using the weights the above objective function can be
w1 , w2 > 0 reduced to the new objective function as:
By considering different values of w1 and w2 the dual
− − − − −
Z ( x) = w1 ( x1−1 x2 1 x3 1 ) + w2 ( x1−1 x2 3 x3 5 + x1−1 x 2 1 )
variables, corresponding maximum value of dual objective (5.20)
are given in the following Table. x x x + x 2 x3 ≤ 6
2
1 2 3 (5.21)
Table-1 x1 x3 ≤ 1 (5.22)
Dual solution: x1 , x2 , x3 > 0 (5.23)
w1 w2 w01 w02 w03 w04 where w1 + w2 = 1 w1 , w2 > 0 (5.24)
0.1 0.9 0.2308894 0.3045667 0.3329927 0.1305293 In this problem the degree of difficulty is 2 and it can be
0.2 0.8 0.2310206 0.3044397 0.3331819 0.1306035 solved by using duality theory as given by
w01 w02 w03
0.3 0.7 0.2310643 0.3047974 0.3332450 0.1306282 ⎛w ⎞ ⎛ w2 ⎞ ⎛ w2 ⎞
0.4 0.6 0.2310862 0.3048263 0.3332765 0.1306406
max : V ( w) = ⎜ 1 ⎟
⎜w ⎟ ⎜
⎜w ⎟ ⎟ ⎜w ⎟
⎜ ⎟
w
⎝ 01 ⎠ ⎝ 02 ⎠ ⎝ 03 ⎠
0.5 0.5 0.2310993 0.3048436 0.3332955 0.1306480 (5.25)
w11 w12
⎛ 1 ⎞ ⎛ 1 ⎞
⎜ 6 w ⎟ ⎜ 6 w ⎟ (w11 + w12 )
( w11 + w12 )
⎜ ⎟ ⎜ ⎟
⎝ 11 ⎠ ⎝ 12 ⎠
subject to w01 + w02 + w03 = 1
84 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
− w01 − w02 − w03 + w11 + w21 = 0 6 CONCLUSIONS
− w01 − 3w02 − w03 + w11 + w12 = 0 By using weighted method we can solve a multi-objective
GPP as a vector minimum problem. A vector-maximum
− 2w01 − 5w02 + 2w11 + w12 + w21 = 0 problem can be transformed as a vector minimization
problem. If any of the objective function and/or constraint
w01 , w02 , w03 , w11 , w12 , w21 ≥ 0 does not satisfy the property of a posynomial after the
transformation, then we use any of the general purpose non-
w1 , w2 > 0 linear programming algorithm to solve the problem. We can
also use this technique to solve a multi-objective signomial
For different values of w1, w2 the dual variables and the geometric programming problem. However, if a GPP has
corresponding maximum values of dual objective is either a higher degree of difficulty or a negative degree of
obtained as given in the Table difficulty, then we can use any of the general purpose non-
linear programming algorithm instead of a GP algorithm.
Table-3
Dual solution: REFERENCES
w1 w2 w01 w02 w03 [1] C.S.Beightler and D.T.Phillips: Applied Geometric programming,
0.1 0.9 0.2085711 0.5276192 0.2638096 John wiley and Sons, New York., 1976.
[2] C.S.Beightler and D.T.Phillip, D.J.Wilde: Foundations of
0.2 0.8 0.3640122 0. 4239919 0.2119959 optimization, Prentice-Hall, New Jersy, 1979.
0.3 0.7 0.4952513 0.3364992 0. 1682496 [3] H.P.Bensonand, G.M. Boger: Multiplicative programming problems
analysis and efficient point search heuristic, Journal of optimization
0.4 0.6 0.604162 0.2638920 0. 1319460 theory and applications 94, 487-510, 1997.
[4] M.P. Biswal: Fuzzy Programming technique to solve multi-objective
0.5 0.5 0.6959958 0. 2026694 0. 1013347 geometric programming problem, Fuzzy sets and systems 51,67-71,
1992.
[5] C.Chu and D.F.Wong: VLSI Circuit performance optimization by
w11 w12 w21 Z geometric programming, Annals of Operations Resarch 105, 37-60,
1.00 1.055235 0 0.1642316 2001.
[6] R.J.Duffin, E.L.Peterson and C.M.Zener: Geometric Programming
0.9239919 0.9239918 0.076008 0.1831441 Theory and Application, Wiely, New York , 1967.
[7] J.G.Ecker: Geometric programming Methods, computations and
0.8364992 0.8364992 0.1635008 0.2019177 applications. SIAM Review 22, 338-362, 1980.
0.7638920 0.7638920 0.2361080 0.2206914 [8] S.Islam and T.K.Ray: A new fuzzy multi-objective programming:
Entropy based geometric programming and its applications of
0. 7026695 0.7026694 0.2973305 0.2394650 transportation problems, Europian Journal of Operational Research,
173, 387-404, 2006.
[9] C. Kao and S.T.Liu: Predicting bank performance with financial
forecasts:A case of Taiwan commercial banks, Journal of Banking
The corresponding primal solution is given in the following and Finance 28, 2353-2368 , 2004.
Table: [10] G.P.Liu, J.B.Yang and Whidborne: Multi-objective optimization and
Table-4 contral, PHI, EEE, 2006.
Primal Solution [11] S.T.Liu: Geometric Programming with parametric uncertainty,
w1 w1 x1 x2 x3 Z Europian Journal of Operation Research 168, 345-353, 2006.
[12] E.L.Peterson: The fundamental relations between geometric
0.1 0.9 2.527860 8.217575 0.3748833 0.1642316 programming duality, Parametric programming duality, and ordinary
0.2 0.8 2.620746 7.862237 0.3815708 0.1831441 Lagrangian duality, Annals of Operations Research 105,109-153,
2001.
0.3 0.7 2.620745 7.862236 0.3815709 0.2019177 [13] D.T.Phllips, C.S.Beightler: A technical state of the art survey.AIIE
Transactions 5, 97-112, 1973.
0.4 0.6 2.620747 7.862240 0.3815707 0.2206914 [14] J.Rajgopal D.L Bricker: Posynomial geometric programming as a
special case of semi-infinite linear programming, Journal of
0.5 0.5 2.620747 7.862242 0.3815705 0.2394650 Optimization Theory and Applications 66, 455-475, 1990.
[15] J.Rajgopal and D.L.Bricker: Solving Posynomial geometric
programming problems via generalised linear programming,
Ideal solution of the two objective functions are given Computational Optimization and Applications 21, 95-109,2002.
below: [16] C.H.Scott and T.R.Jefferson: Allocation of resources in project
f1 = 0.33333; x1 = 236.9322; x2 = 710.7964; x3 = 0.0042206 management, International Journal of Systems Science 26, 413-420,
and f2 = 0.1421595; x1 = 2.148558; x2 = 9.82199; 1995.
x3=0.3490711. [17] H.D.Sherali: Global Optimization of nonconvex polynomial
programming problems having rational exponents, Journal of global
Optimization 12, 267-283, 1998.
[18] S.B.Sinha, A.Biswas and M.P.Biswal: Geometric Programming
problem with negative degrees of difficulty, Europian Journal of
Operations Research 28, 101-103, 1987.
85 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[19] B.M.Worrall, M.A.Hall: The analysis of an inventry central model
using posynomial geometric programming, International Journal of
Production Research 20, 657-667, 1982.
K.K.Biswal: Mr.K.K.Biswal received M.Sc.(Mathematics)
[20] H.J.Zimmermann : Fuzzy programming and linear programming with
from Utkal University in 1996. Currently he is a lecturer in
several objective functions, Fuzzy sets and systems 1, 46-55, 1978. Mathematics at CTTC, Bhubaneswar, India. He is
[21] H.J.Zimmermann: Fuzzy set theory and its applications, 2nd ed. performing research works in Geometric Programming. He
Kluwer Academic publishers, Dordrecht-Boston, 1990. is served more than 7 years in different colleges in the state
of Orissa. He has published 2 research papers in different
AUTHORS PROFILE journals.
Dr.A.K.Ojha: Dr.A.K.Ojha received a Ph.D(mathematics)
from Utkal University in 1997. Currently he is an Asst.Prof.
in Mathematics at I.I.T. Bhubaneswar, India. He is
performing research in Nural Network, Geometric
Programming, Genetical Algorithem, and Particle Swarm
Optimization. He has served more than 27 years in different
Govt. colleges in the state of Orissa. He has published 22
research papers in different journals and 7 books for degree
students such as: Fortran 77 Programming, A text book of
modern algebra, Fundamentals of Numerical Analysis etc.
86 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
Use of Service Curve for Resource Reservation in
Wired-cum-Wireless Scenario
Nitul Dutta Iti Saha Misra
Sikkim Manipal Institute of Technology, Computer Jadavpur University, Electronics &
Science & Engg. Deptt., India Telecommunication Engineering
. Department, India
.
Abstract- In a network, arrival process is converted into of amount of data which may be handled by different
departure process through network elements. The departure network elements preserving the QoS to the ongoing traffic.
process suffer propagation delay in the link, processing delay at Rest of the paper is organized as follows. There are
the network elements like router and data loss due to buffer a lot of research work carried out on network calculus and
overflow or congestion. For providing guaranteed service
resources need to be reserved before conversation takes place.
its application in performance measure of network
To reserve such resources estimation of them are indispensable. architecture. Section II is a discussion of few of such works
The idea of service curve gives beforehand deterministic value with the motivation. Mathematical overviews of the
of these parameters. In this paper, we aim to minimum and network calculus along with a few definitions are found in
maximum buffer space required in the router, minimum link section III which will help readers to have a clear
capacity required to guarantee a pre-specified end-to-end delay understanding of the rest of the paper. The concept of
for an ongoing session in a wired-cum-wireless scenario by service curve and its application to measure various
analyzing minimum and maximum service curve. We assume resource requirements for providing guaranteed service is
that the network we are analyzing is an IP based mobile elaborated in section IV. The wired-cum-wireless scenario
network. The findings of the work are presented in the form of
tables which can be used for resource reservation to offer
for which we have carried out the various service curve
quality service to end-users. analysis is briefly explained in section V. Findings of this
work are presented in a tabulated form in section VI along
Key words: Service Curve, Network Calculus, Convolution Operator, with a brief discussion of various parameters used for
Causal Process calculation. Finally, paper is concluded in section VII.
I. INTRODUCTION II. RELATED WORK AND MOTIVATION
Proper analysis using network engineering A concise discussion on some of the research work
techniques enhance the strength of any network architecture related to network calculus and its application is presented
for world wide deployment. This analysis may be done in this section. The work of [1] presents a non-probabilistic
either by probabilistic or deterministic method. In this work approach for bursty data is modeled for deterministic
we want to study the behavior of traffic flow in a mobile IP bound through network calculus. The calculus they have
based wired cum wireless scenario by means of developed gives a measure of bounds on delay and buffer
deterministic method for an intrinsically stochastic stream requirement in a packet switched network under a fixed
source to provide guaranteed service. Network calculus has routing strategy. Another similar research presented in [2],
undergone a lot of development as a sophisticated tool for have analyzed a conceptual framework for flow of data in
performance analysis in traffic engineering. This tool can be integrated services network model and analyzed the
used to engineering networks with worst case performance behavior of open loop, rate based flow control protocols, as
guarantees in presence of variety of network elements like well as closed loop, window based flow control protocols.
shapers, multiplexer and propagation delay. Here, emphasis They have modeled links, propagation delays, schedulers,
is given to evaluate the performance of the network taking regulators, and window based throttles by using lower and
into account the minimum and maximum service curve so upper service curve. Finally, a measure of end-to-end delay
that a measure of minimum and maximum end-to-end delay, bounds and maximum buffer requirement is measured
requirement of buffer and link capacity for a wired-cum using service curves. The paper provides a good
wireless scenario can be made in advance to provide quality understanding of service curve for performance analysis
of service (QoS) guarantee in the network. Minimum service with examples. Lot of propositions are proposed and
curve gives a measure of minimum data required at a proved in the paper which may be used as a basis for other
network element (say router) for efficient utilization of the research work. The objective of [3, 4] is to introduce
service rate and the upper service curve provides a measure stochastic network calculus as an evolving new
This work is supported by All India Council For Technical Education
(AICTE), New Delhi, India under Research Promotion Scheme (RPS)
F.No. 8032/BOR/RID/RPS-234/2008-09.
.
87 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
methodology for backlog and delay analysis of networks Definition 1. Process: A process A ( t ), t ∈ ℜ is defined as
that can account for statistical multiplexing gain. They a non-decreasing and right continuous function of time
promote the advances of stochastic network calculus by which could count the amount of data arriving or departing
deriving a network service curve, which expresses the to or from some network element [12,13].
service given to a flow by the network as a whole in terms A(t) is a mapping from the real number in to the
of a probabilistic bound. Through the presented network extended nonnegative real numbers which is
service curve a calculation of statistical end-to-end delay mathematically represented as A : ℜ → ℜ + ∪ { +∞ }
and backlog bounds for broad classes of arrival and service
distributions are measured. The benefits of the derived Definition 2. Causal process: A process A(t ), t ∈ ℜ is said
service curve are illustrated for the exponentially bounded to be causal if it has the property A ( t ) = 0 for t<0 [12].
burstiness (EBB) traffic model. Their work deals with the A causal process will be identically zero for all
traffic flow through a series of network elements from negative times. For example if A(t) is a causal process
source to destination and shows that end-to-end representing the amount of traffic fed to an agent, then A(t)
performance measures computed through a network service is the amount of data (in bits ) arriving to the agent in the
curve are bounded by O(HlogH), where H is the number of interval ( −∞ , t ] .
network elements traversed by the flow. Using currently Definition 3. Supremum: Let S is a subset of real number
available techniques, which compute end-to-end bounds by
ℜ such that ∃b ∈ ℜ , and ∀ s ∈ S , s ≤ b . Then subset S is
adding single node results, the corresponding performance
measures are bounded by O(H3). Their work is inclined said to be bounded above. In such case it can be proved
towards statistical approach rather than deterministic that there is a number u and i) ∀ s ∈ S , s ≤ u and ii) For
approach, which describes arrival process and offered every b, b upper bounds S, u ≤ b . The number u is the least
service probabilistically while preserving the elegance and upper bound of S and called supremum or sup of set S. It is
expressiveness of the original framework. denoted as u = sup{ s : s ∈ S } [12 ].
In wired-cum-wireless networks, resources in the Supremum is the smallest real number that is
wireless part is more precious as compared to that in the greater than or equal to every number in S. A real number
wired part. The situation becomes more complicated when is said to have the completeness property and for this
wireless nodes are mobile. There are plenty of network property every non-empty subset of real number that is
layer protocols to support communication efficiency in bounded above has a supremum that is also a real number.
such wireless environment. Mobile IPv6 (MIPv6) [5] and
Hierarchical mobile IPv6 (HMIPv6) [6] are two widely Definition 4. Infimum: Let S is a subset of real number
used protocols with seamless mobility and best effort ℜ such that ∃a ∈ ℜ , and ∀ a ∈ S , a ≤ s . Then subset S
service. But in most of the cases guaranteed service is quite
is said to be bounded below. Then there is a greatest lower
demanding rather than a best effort service. Many authors
bound l which is called the infimum of S and is denoted by
have proposed the use of Integrated Services (IntServ) [7]
l = inf{ s : s ∈ S }. [12 ].
with Resource Reservation Protocol (RSVP) [8, 9, 10] to
provide guaranteed service when MIPv6 or HMIPv6 Infimum is the biggest real number that is smaller
protocols are used. But while using RSVP, measurement of or equal to every real number in S. If no such number
resource requirement for any traffic flow is a complicated exists, then inf(S) = -∞ and if S is empty then inf(s) = ∞.
task. Especially in wireless environment the situation is
worst. In such a situation network calculus is supposed to Definition 5. Convolution operation (*): If A (t ) and
be the best method to estimate the amount of resource B (t ), t ∈ ℜ , are non negative non decreasing causal
requirement for guaranteed service under various traffic functions then, convolution of these two functions is defined
conditions. This fact motivated us to do this research in a as ( A * B )( t ) := inf ( A (τ ) + B (τ − t )) [4,12 ].
mobile IPv6 based wired-cum wireless scenario to make τ ∈ℜ
use of RSVP protocol. Convolution operation produces a third function
from any two functions and may be viewed as modified
III. MATHEMATICAL MODELING version of one of the original functions.
Service curve specifies how the arriving stream of Definition 6. Identity element δ(t) is defined as a process
packets is converting into a departing process. Service such that δ ( t ) = 0 for t<0 and ∞ otherwise and satisfies
curve can model a variety of network elements like router, the equality δ d (t ) = δ ( t − d ) [12]. For any causal process
link capacity etc. Before we proceed further, some
definitions are presented here for clarity of the reader. A(t), ( A * δ d )( t ) = A ( t )
These definitions are used in the subsequent sections in the
paper.
.
88 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
IV. SERVICE CURVE CONCEPT non-decreasing causal functions. If D(t ) ≥ A(t ) * S (t ) , then
−
Service curve scientifically and mathematically S(t) is a lower service curve and if D ( t ) ≤ A ( t ) * S ( t ) , then
−
justifies the theoretical utilization and efficiency based on S (t ) is called upper service curve. The operator * is the
the incoming traffic to any network system. Service curve −
may be either lower or upper. The lower service curve convolution operation. If S ( t ) = S ( t ) then, S is called
deterministically evaluates amount of network traffic which service curve[12 ].
is must to proper utilization of the service of the
multiplexer. On the other side, the upper service curves V. THE NETWORK SCENARIO
gives a deterministic measure of maximum allowable data
which could be fed to the multiplexer without degrading In Figure 2, a sample network scenario is depicted
the end-to-end QoS. Both the upper and the lower service for which various performance parameters are analyzed in
curve are dependent on the traffic arrival rate, service rate accordance with the service curve. Different components of
or processing rate of the multiplexer and bandwidth of the the scenario are discussed below.
outgoing line in the multiplexer. To understand the concept
clearly, let us consider Figure 1.
A(t) S D(t) CN
S-
Figure 1: Service curve of a network element
In a network multiplexer, A(t) is the amount of traffic AR
arrived at a duration of time t which is passed through the
link with the capacity C bps and D(t) is the amount of data
which is being departed within time t. Let us assume that
the source data generates in minimum r bytes per sec and
delivers to the multiplexer as a packet of Lmax bytes which MN
is transmitted through the multiplexer. If data is not Figure 2: Example Wired-cum-Wireless scenario
regulated by the source before delivering it to the channel
for transmission, then any byte may be delayed by at most A mobile node (MN) is connected to Access
L max unit time. At time t - L max , arrived traffic is less Router (AR). AR serves MNs within a specified region
r r called cell. All MNs in the cell communicate with the
than the traffic that could be departed from the system. So, Correspondent Node (CN) via same AR. We are intended
L max (1) to study delay suffered by packets from MN to CN, buffer
D (t ) ≥ A (t − )
r space required at AR to store access data so that guaranteed
From the definition of identity element δ(t) and convolution service can be offered by reserving resources beforehand.
operation of identity element with A(t), we can rewrite A measure of minimum bandwidth required to support
equation (1) as guaranteed service with a pre specified delay is also made
L in the analysis. Observation is made by splitting the entire
A ( t − max ) = ( A * δ L max )( t )
r r scenario into two parts; wireless and wired segment. First
i.e we calculate the minimum and maximum delay of packets
D ( t ) ≥ ( A * δ Lmax )( t ) from MN to AR and then from AR to CN. We assume that
r (2) several audio sessions are connected to CN from MN and
traffic to wireless channel is injected by an envelope of (σ,
∂ Lmax ∂ Lmax ρ). There is no such regulator maintained at AR and data is
Hence, is the lower service curve. If is very
r r allowed to pass to the wired link as long as bandwidth is
small, service rate of the multiplexer is under-utilized. available and buffered otherwise. A measure of minimum
Again, if the source generates data in such a speed that bandwidth required to maintain a pre specified end-to-end
before time t - L max the amount of data exceeds the data delay is also made for the scenario.
r Under an AR there may be a group of MNs. The
that the multiplexer could server, hence backlog will arrival process A(t) is influenced by the traffic of MNs
generate. under the coverage of the AR. As the number of MNs
Let us now define lower and upper service curves which are distributed under different ARs increases, the
− A(t) increases. The service rate of the AR remains constant.
mathematically. Let S(t) and S (t ) are two non-negative, This is also true for departure process D(t) which may vary
.
89 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
depending upon A(t) as long as it does not exceed the total d max = inf{d : d ≥ 0, E * δ d max ≤ S}
capacity of the outgoing line of the AR. Once the arrival (5)
process exceeds the capacity of the outgoing link or the and
−
service rate of the AR is not sufficient to attend the arrival d min = sup{ t : s ( t )} = 0
process, backlog is generated. A fixed length buffer is (6)
assumed to be maintained in each of the AR to minimize
data loss. Hence, if the buffer is full the data will be B. Buffer requirement
dropped and performance of the network is said to be
degraded. As a result, to maintain desired quality of Buffer requirement is another important parameter to
services to the network traffic, either we have to restrict the adjust for providing guaranteed service to end users. Too
total number of MNs under an AR or session should be large buffer space introduces high end to end delay. For
stopped at the connection establishment phase. traffic with high temporal dependencies, such long delay
In the next subsection we will discuss delay, buffer results in data delivery which is of no use to the end users.
space and link capacity with respect to the above network These data unnecessarily consume network bandwidth. If
scenario so that a measure could be made to provide buffer space is too small more number of packets is
preferential treatment to certain traffic in the network. dropped. In case of stream traffic, around 2-5% of packet
drop is acceptable to end users [1]. But for elastic traffic
A. Delay analysis even a single packet loss is unacceptable and needs
retransmission of the packet. These retransmitted packets
Delay experienced by traffic passing through any consume considerable amount of bandwidth. In this
network element is either upper and lower bounded by dmax subsection buffer requirement for traffic session is analyzed
and dmin respectively. If delay exceeds dmax then the packet in terms of arrival and departure process and service curve.
is of no use to the end. If dmin is very low and end user Maximum buffer requirement may be expressed as,
cannot consume the data at the rate with which it arrives, A(t ) − D(t ) ≤ bmax (7)
buffer overflow will occur in the destination. If more i.e. when amount of data arrived is larger than the data that
packets are lost due to buffer overflow, end system may not could be departed from the system than backlog is
make use of the arrived data properly. To support generated. In terms of envelop E and service curve S
guaranteed service to end users, the values of dmax and dmin
should be within the range such that end users can tolerate
the delay or can make the other alternative (like buffer) to E (t ) ≤ bmax + S (t ) (8)
adjust the delay. Again, let us examine the delay bound in a From the definition of envelop and service curve
traffic flow with arrival process A(t) and departure process
D(t). From the definition of A(t) and D(t) and value of dmin A(t ) − D(t ) ≤ A * (bmax + S (t )) − A * S (t )
and dmax we can have
A(t ) − D(t ) ≤ A * bmax + A * S (t ) − A * S (t )
A(t − d max ) ≤ D (t ) ≤ A(t − d min ) (3)
A(t ) − D(t ) ≤ A * bmax
It implies that amount of packets arrived till the time t-dmax Or b max = sup{ E ( t ) − S ( t ) : t ∈ ℜ }
cannot exceed the amount of traffic departed from the (9)
system but the amount of traffic arrived at time t-dmin may C. Link Capacity
exceed the amount departed from the system at time t.
To provide guaranteed service to end users these two Every physical device in the network is connected
parameters must be selected carefully taking both the via communication link of fixed capacity which is known
characteristics of the A(t) and D(t) into account. Using the as topology. The maximum transmission capacity or simply
shift operator and its definition δ d (t ) = δ (t − d ) where, the capacity of a link is measured in bits per second or bps.
δd is the shift operator and for any process A*δd (t) = A(t −d) . This link capacity also has direct influence on the
performance of the network and hence on the quality of
Hence, equation (3) may be rewritten as service to be offered to a particular flow. So link capacity
A * δ d max (t ) ≤ D(t ) ≤ A * δ d min (t ) (4) can also be modeled as a service curve element with
maximum allowable transmission capacity in terms of bps.
Let us assume that the capacity of the link under
Comparing equation (4) with minimum and maximum observation is C bps. It implies that for any instance of time
service curve definition, it could be stated that the delay t, it can transmit only C(t) amount of data through it. In
element is a service curve element with minimum value terms of departure process D(t), it holds the inequality,
δdmin and maximum value δdmax. Mathematically,
.
90 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
D(t ) ≤ C (t ) A network session which allow maximum delay of T,
⎛ E ( t ) − Ct ⎞
also for any τ ≤ T, we can have sup t ≥ 0 ⎜ ⎟≤T
⎝ C ⎠
D(t) − D(τ ) ≤ C(t −τ ) Here C=Cmin, and hence
⎛ E (t ) − C t ⎞
⎜ ⎟ ≤ T
D(t ) ≤ A(t ) , so
min
Since we have mentioned that sup t≥0 ⎜ ⎟
⎝ C min ⎠
D(t) ≤ A(τ ) + C(t −τ ) E (t ) − C min t ≤ C min T
Or ⎛ E (t ) ⎞
or C min ≥ sup t≥0 ⎜ ⎟.
⎝T + t ⎠
D ≤ A*C (12) Strict inequality cannot hold in this case. So,
In the above expression, C is the amount of data which is
E (t )
passed through the link and denoted by Ct for t≥0 and 0 C min = (16)
otherwise. It is worthwhile to mention that when a single T +t
link is shared by number of different sessions, then the total
capacity of the link is not dedicated to a single flow. To VI. RESULTS AND DISCUSSIONS
provide QoS to end users an amount of the capacity needs
to be reserved in advance. Results are discussed with respect to wired-cum-
For the arrival process, A(t) passes through the link wireless scenario depicted in Figure 2. To realize the traffic
with lower service curve S(t)=Ct, we can find the minimum flow we have considered that several traffic sessions exist
link capacity required to suffer a maximum delay of T by from a mobile node (MN) to a correspondent node (CN)
any traffic flow [12]. Source generating data at a rate r, has via the Access Router (AR). Each of the MN may have
envelop E= rt. If the flow is regulated through (σ,ρ) multiple number of ongoing sessions and maintains an
process, the envelop E(t)=min(rt,( σ+ρt)). Equation (5) envelope of (σ, ρ) where σ=5kb and ρ=200kbps. Different
may be rewritten as parameters like end-to-end delay, buffer requirements and
link capacity are observed for various wireless link
d max = inf{ d : E * δ d ≤ S } (13) capacities of 64kbps, 128kbps and 256kbps through which
MNs are connected to the AR with a propagation delay of
This may be shown graphically as below [12],
20ms. AR serves incoming packets at a rate of 400kbps and
E(t) takes a processing delay of 10ms. AR is connected to the
C .t CN via a wired T1 link of capacity 1.2mbps and packet
suffers a propagation delay of 25ms. To simplify our
rt analysis we have segmented the entire architecture of
σ (r − C ) Figure 2 into two parts: wireless and wired and examined
σ (r − ρ ) the parameters separately. Then we combined these
parameters to evaluate the resources required to provide
guaranteed service for the whole architecture.
dmax t Wireless Link Access Router
Figure 3: Representation of maximum delay and buffer size Service Service Processing
Delay Rate .Delay
Depending on dmax the envelop may fall below or exceed Rate
service curve S(t). To minimize the backlog in the system,
Figure 4: Service curve elements in Wireless segment
dmax should be shifted to left such that it falls below S(t). In
such case, With this example scenario, now we will examine the
performance of the network in terms of service curve
σ (r − C ) elements end-to-end delay and buffer requirement and
b max = (14)
C (r − ρ ) bandwidth required so that a guaranteed service could be
provided by reserving such resources. Stated scenario may
If r>ρ, link capacity decreases and bmax changes from 0 to be represented by a series of service curve element as given
σ . If C< ρ, it leads to infinite buffer build up. In terms of in figure 4.
C
Envelop and A(t) E(t) : envelope of the incoming traffic
S1(t): service rate of wireless link
⎛ E ( t ) − Ct ⎞ S2(t): propagation delay suffered by packet in the
d max = sup t ≥ 0 ⎜ ⎟ (15)
⎝ C ⎠ wireless segment
.
91 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
S3(t): rate of service offered by AR propagation delay in the wireless network. Similarly, the
S4(t): service rate of wired link total processing delay in the system is for the service curve
S5(t): propagation delay suffered in wired link k
element S3(t) and it is denoted by φ = ∑φi = 10ms where k
E (t ) = 5 kb + 200 kbps .t (17)
i =1
s ( t ) = 64 kbps .t (18)
1 is the number of service curve elements that introduces
s 2 (t ) = δ 20 ms (t ) = 20 ms .t (19) processing delay in the network. Using envelop of the
source σ=5kb and ρ=200kbps. There is only one router
s 3 ( t ) = − 0 . 4 kb + 400 kbps .t (20)
(AR) that forwards the packet with a service rate of 400
s 4 ( t ) = 1 . 2 mbps .t (21) kbps and it is the total service rate of the system denoted by
s 5 (t ) = δ 25 ms ( t ) = 25 ms .t (22) p, i.e. p=400 kbps. From the above discussions the
Based on discussion in section V we have represented the following parameters are derived and given in Table -I:
characteristics of different elements of example parameters
in terms of service curve. Inclusion of t in all the equations Minimum delay = θ=20 ms,
is to represent them as causal process of time. Equation Maximum delay = θ+σ/r=20ms+12.5ms=32.5ms
(17) represents the envelop maintained by the source with Maximum buffer size = σ+ρθ=5kb+9kb=14kb
parameters σ=5kb and ρ=200kbps and only the rate (ρ) of TABLE I :: DELAY AND BUFFER REQUIREMENT
injecting data in to the network is dependent on the time.
Equation (18) and (20) is the service curve of wireless and Wireless Minimum Maximum Buffer
Bandwidth Delay Delay Size
wired link capacity respectively, whereas, the delay for (kbps) (ms) (ms) (kb)
both the links are represented by equation (19) and (22). 64 20 32.5078125 14
Equation (22) models the service of AR. All though AR has 128 14 38.039062 56
a service rate of 400 kbps, in reality actual service rate is 256 12 35.019531 100
lower than 400kbps because of the processing time of the
AR. The negative component of the equation (22) reflects Consider an example of a voice coder emitting 10ms
the processing delay of the AR in is service curve. speech and 10 bytes per frame. The rate of injecting data to
Now from the service curve representation of the channel is 8kbps. In the Table-II, we have shown the
individual network elements, the maximum and minimum minimum bandwidth required by the application and
service curve for the wireless segment is represented by number of such sessions that can exhaust the link capacity.
equation (23) and (25) respectively. Substituting values for TABLE II : DELAY FOR VOICE DATA
parameters in the equations (25) and (26) and expanding as
Wireless Acceptable Buffer Space Sessions
in [2], equation (24) and (26) is derived. Bandwidth Delay Required (kb) Supported
−
(kbps) (ms)
s = s1 * s 2 (23) 64 35.078125 130 8
and calculated as, 128 35.039062 250 16
− 256 35.019531 500 32
s = − 72 . 8 kb + 64 kb / st (24)
Data shown in Table–II represents maximum
tolerable delay by each of the session, total session that can
Similarly, minimum service curve is given by
exhaust entire bandwidth of a wireless link and the buffer
s = s1 * s 2 * s3 (25) space required to cope up with the delay by the end
application. Recorded data shows that maximum end-to-
and calculated as
end delay and buffer space required per session decreases
s = − 26 .4 kb + 64 kb / s.t (26) when link capacity increases. On the other hand, total
sessions supported are more if channel capacity is large.
Now, we will make a measure of different resources Increased supported session increases the buffer space
required for providing guaranteed service to end users required to provide guaranteed service at the AR of the
[12,2,3]. Consider that θ i , φi ri and pi are the propagation wired-cum-wireless scenario. The AR is connected to the
delay, processing delay, transmission rate and service rate destination via T1 link of capacity 1.2mbps. Next follows a
respectively at i-th service curve element. So, from S1(t), calculation of the above observed parameters for wired part
r = min 1≤i ≤k ri is the minimum service rate of the wireless of the network. Assumption is made that AR does not
k
maintain any regulator and allows passing data as and when
segment. Again, from S2(t), θ = ∑θ i = 20ms where k is the channel is free. For the AR, the following parameters are
i =1 assumed
number of service curve elements that introduces φ: processing delay of AR = 10ms
.
92 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
International Journal of Computer Science and Information Security (IJCSIS),
Vol.7, No.2, February 2010
C : capacity of outgoing T1 link = 1.2 Mbps aim of this paper is to measure end-to-end delay suffered
Lmax : size of a packet = 8kb by each of the flow in such scenario and buffer requirement
Propagation Delay = L max = 8 kbps = 6 . 67 ms to cope up with the end-to-end delay and minimum
C 1 . 2 Mbps bandwidth required by end applications so that a
guaranteed service can be provided to the end user. All the
It adds another delay to the outgoing data packets as
service curve elements that contributed to the flow are
processing delay of AR and propagation delay of wired link
identified first and their influences to maintain a minimum
(10ms and 6.67ms). The link capacity consumed (Ccon) by
and maximum service curve is analyzed. With the help of
the session is calculated as
examples the parameters like maximum and minimum
C
C con = delay suffered by a packet and the total buffer requirement
Loff is also shown in this paper. The process can be extended to
where Loff is the offered load and C is the link capacity. any number of nodes related to the wireless environments.
Applying data from Table II and assuming there are With the growing world of wireless users in this day,
sufficiently large number of MNs available to exhaust the guaranteed QoS is a major concern. This paper shows a
total capacity of the wireless link during transmission of way to calculate the QoS parameters in a wired-cum-
data to AR. For the first case with wireless link capacity wireless scenario.
64kbps, there are eight numbers of sessions that
continuously sending data to the AR. So, number of REFERENCES
sessions that can exhaust the entire wired bandwidth is
calculated as, [1] Rene L. Cruz et. al., “A Calculus for Network Delay Part I: Network
Element in Isolation”, IEEE Transactions On Information Theory , Vol.
1 . 2 Mbps 37, No. 1, June 1991.
C con = = 18 . 75 ≈ 18
64 Kbps [2] R. Agarwal et. al, “Performance Bounds for Flow Control Protocols”,
IEEE/ACM Transactions On Networking, Vol. 7, No. 3, June 1999.
Approximately 18 numbers of MNs can be supported by [3] Florin Ciucu, “A Network Service Curve Approach for the Stochastic
Analysis of Networks”, SIGMETRICS’05, June 6–10, 2005, Banff,
the AR distributed over various parts of the cell offering Alberta, Canada 2005 ACM.
eight sessions per MN. Similarly, in Table – III, we have [4] Florin Ciucu et al,, “Scaling Properties of Statistical End-to-End
noted down the number of supported MNs for wireless link Bounds in the Network Calculus”, IEEE Transactions On Information
of various capacity. Theory, Vol. 52, No. 6, June 2006.
[5] Johnson and C. Perkins, "Mobility support in IPv6," IETF draft,
TABLE III :: MN SUPPORTED IN THE SCENARIO draftietf-mobileip-ipv6-15.txt, July 2001.
Wireless Number of MNs Session [6] H. Soliman et al. Hierarchical mobile IPv6 mobility management
Bandwidth supported supported (HMIPv6)”. Internet draft, 4(1), 2003.
(Kbps) [7] R. Braden , D. Clark , S. Shenker, “Integrated Services in the Internet
64 18 8 Architecture: An Overview”, RFC Editor, 1994
128 9 16 [8] R. Braden,et al ,“Resource ReSerVation Protocol (RSVP)”, RFC 2205,
256 4 32 September 1997.
[9] Nen-Fu Huang1 and Whai-En Chen ,“RSVP Extensions for Real-
Time Services in Hierarchical Mobile IPv6 Mobile Networks and
Data given in the table-III provides a measure of Applications”, Springer Netherlands, Volume 8, Number 6 / December,
various parameters like total allowable sessions per mobile 2003.
node in a sample wired-cum-wireless scenario. In such [10] Architecture Zheng Wan, Xuezeng Pan, and Lingdi Ping , “QoS
Provisioning in an Enhanced FMIPv6”, ICCSA 2005, LNCS 3481, pp.
scenario we have measured the buffer requirement and link 704 – 713, 2005.
capacity required to meet a pre-specified end-to-end delay. [11] Nitul Dutta, ,Iti Saha Misra, “Handoff Latency and Packet Dropping
The measured quantities can be used to provide guaranteed Probability In Layered Mipv6: A Mathematical Analysis”, IACSIT
service to end-users by reserving different resources before International Conference On Computer Ad Network Technology (ICCNT
2009), July 24-26, 2009, Chennai, India.
starting the conversation. We can make use of the well
[12] Anurag Kumar, D. Manjunath, Joy Kuri, Communication Networking
known Resource Reservation Protocol (RSVP) [10] of An analytical Approach, Morgan Kaufmann Publisher, Elsevier, ISBN 81-
Integrated services (IntServ) for reserving resources. The 8147-593-3, 2005.
calculations and data presented here provide a mechanism [13] Julian Eckert et al. “Worst-Case Performance Analysis of Web
Service Workflows” , Proceedings of iiWAS 2007.
to use network calculus to compute resource requirements
to apply Integrated Services in wired-cum-wireless
environment where resources are very precious.
VII. CONCLUSION
In this paper, an analysis is made for different
sessions in a wired cum wireless environment. The main
.
93 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Analysis, Modification, and Implementation(AMI) of
Scheduling Algorithm for the IEEE 802.116e (Mobile
WiMAX)
C. Ravichandiran1, Dr. C. Pethuru Raj2, Dr. V. Vaidhyanathan3,
1
IT Leader, Zagro Singapore Pte Ltd, Singapore.
2
Lead Architect, CR Division of Robert Bosch, Bangalore, India.
3
Professor and HOD, Dept. of IT, SASTRA University, India.
Abstract— Mobile WiMAX (Worldwide Interoperability for Orthogonal Frequency Division Multiple Access
Microwave Access) is being touted as the most promising and (OFDMA) for improved multipath performance in non-line-of-
potential broadband wireless technology. And the popularity rate sight (NLOS) environments and high flexibility in allocating
has been surging to newer heights as the knowledge-backed resources to users with different data rate requirements. The
service era unfolds steadily. Especially Mobile WiMAX is being fundamental premise of the IEEE 802.16e media access control
projected as a real and strategic boon for developing counties (MAC) architecture is QoS. Mobile WiMAX QoS features
such as India due to its wireless coverage acreage is enable operators to optimize network performance depending
phenomenally high. Mobile WiMAX has spurred tremendous on the service type (e.g., voice, video, and gaming) and the
interest from operators seeking to deploy high-performance yet user’s service level. In wireless communication the task of
cost-effective broadband wireless networks. The IEEE 802.16e taking care of resources being utilized falls into Radio
standard based Mobile WiMAX system will be investigated for Resource Management (RRM). RRM, in general, is
the purpose of Quality of Service provisioning. As a technical responsible for the improvement of efficiency and reliability of
challenge, radio resource management will be primarily radio links, but in particular it enables many specific operations
considered and main is the costly spectrum and the increasingly are below:
more demanding applications with ever growing number of
subscribers. It is necessary to provide Quality of Service (QoS) Rate control: To be capable of utilizing the bandwidth more
guaranteed with different characteristics. As a possible solution efficiently and maintain the quality of the radio links Adaptive
the scheduling algorithms will be taken into main consideration Modulation and Coding (AMC) technique is used in wireless
and the present well known algorithms will be described. communication. Channel assignment: Mapping the most
efficient subcarriers to their corresponding symbol times is
In this paper, we have highlighted the following critical issues for done with the help of the information provided trough RRM
Mobile WiMAX technologies. This paper specifically discussed Subcarrier permutation: Mainly there are two types of
about the below mentioned in detail. subcarrier permutation: Distributed Subcarrier Permutation:
where frequency subcarriers are spread along the whole
• QoS Requirements For IEEE 802.16 Service Classes, allocated transmission band pseudo‐randomly.
Achieving efficient radio resource management
Scheduling System: Scheduling makes up an important part
of the communication systems since it is chiefly the process of
• Deficit Round Robin (DRR) Scheduling algorithm
sharing the bandwidth. Therefore, has a significant effect on:
The time taken by a packet to travel from one OSI (Open
• Modified Deficit Round Robin (MDRR) scheduling System Interconnection) stack layer to its corresponding peer
algorithm’s attributes, properties and architecture layer. Jitter: The inter‐packet arrival time difference. Packet
Loss: The amount of packet being dropped on both the Uplink
• System Model And Scenarios Using OPNET Modeler (UL) and Downlink (DL). Throughput: The number of
Software successful bits/packets per second arriving at the receiver [1].
• Simulation Limitations And Constraints
II. IEEE 802.16E ( MOBILE WIMAX)
Keywords- IEEE 802.16, Mobile WiMAX (802.16e), QoS, PHY, Mobile WiMAX is expected to deliver significant
MAC, OFDM, OFDMA, OPNET improvements over Fixed WiMAX which makes it even more
attractive for fixed deployments. In wireless environments, link
I. INTRODUCTION budget (measured in dB) and spectral efficiency are the two
primary parameters used for evaluating system performance
“Mobile WiMAX” refers to a rapidly growing broadband [22]. Mobile WiMAX) standard amendment as the
wireless access solution built upon the IEEE 802.16e-2005 air investigation host for the discussed scheduling algorithms, thus
interface standard. It is equally applicable to fixed, portable and from now on any mentioned technology will be those which
mobile applications. The Mobile WiMAX air interface utilizes are valid for the Mobile WiMAX. For instance, the multiple
94 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
access technique considered will be Orthogonal Frequency thee OFDMA symbol time(s). Figure 2 could be modified to
Division Multiple Access (OFDMA) rather than the previously show Subchannelization for OFDMA, as illustrated in Figure 3:
utilized Orthogonal Frequency Division Multiplexing (OFDM)
technique.
Since the packet scheduling theme is mainly done in the MAC
layer of the OSI protocol stack, the main task will be to present Figure3: Subchannelization in OFDM
a brief background overview on the scheduling procedure Note that different colours mean different users. Unlike
related MAC entities; as it will also briefly explain the OFDM, here in OFDMA data streams from different users are
WiMAX Physical (PHY) Layer inter related functionalities multiplexed, rather than using the whole band for a single user
which are involved in the scheduling process[2]. per one symbol frame. Note also that the subcarriers are not
adjacently grouped, but in a random manner. This introduces
A. IEEE 802.16E PHY Layer frequency diversity which is specifically rewarding in the case
The WiMAX physical layer is based on orthogonal of mobile communications (since the channel tends to vary the
frequency division multiplexing. OFDM is the transmission most among other cases). Adding to that, it allows a better
scheme of choice to enable high-speed data, Big files, video, application of fairness between the users since the probability
Deficit Round Robin (DRR), and multimedia file and is used of a user experiencing bad channel impulse response will be
by a variety of commercial broadband systems, including DSL, less.
Wireless, Digital Video Broadcast-Handheld (DVB-H), and
MediaFLO, besides WiMAX[22]. B. IEEE 802.16e MAC Layer
Basically, OFDM subdivides the channel to multiple IEEE 802.16 MAC was designed for point-to-multipoint
subcarriers, where each subcarrier is orthogonal to the other. broadband wireless access applications. The primary task of the
There are three types of subcarriers: WiMAX MAC layer is to provide an interface between the
higher transport layers and the physical layer. The 802.16
• Null Subcarrier: used as guard band or DC carriers. MAC is based on collision sense multiple access with collision
• Pilot Subcarrier: used for channel estimation and avoidance (CSMA/CA). The MAC incorporates several
channel tracking. features suitable for a broad range of applications at different
• Data Subcarrier: carrying the data information. mobility rates, as mentioned below[21][7]:
• Broadcast and multicast support.
Figure 2 illustrates the types of the subcarriers in a 10 MHz • Manageability primitives.
channel bandwidth.
• High-speed handover and mobility management
primitives.
• Three power management levels, normal operation,
sleep and idle.
• Header suppression, packing and fragmentation for
efficient use of spectrum.
• Five service classes, unsolicited grant service (UGS),
real-time polling service (rtPS), non-real-time polling
service (nrtPS), best effort (BE) and Extended real-
time variable rate (ERT-VR) service.
III. SCHEDULING ALGORITHMS: ANAYSIS AND MODIFICATION
Figure 2: OFDM Sub carrier Structure
A. Scheduling Algorithms
Fundamentally, OFDMA is OFDM with the application of
Subchannelization and Time Division Multiple Access Packet Switching (PS) networks came into existence, need
(TDMA). Subchannelization basically means to group multiple was recognized to differentiate between different types of
subcarriers and allocate them to a single user over one, two or packets. Since then packet scheduling has been a hot research
subject and its still being investigated at many
95 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
institutions/company. This is basically because scheduling Fairness: Fairness can be defined such that: “If two flows are
means bandwidth sharing. backlogged, difference between their weighted throughputs is
bounded.” Since mobile subscriber stations are considered
Traditionally, the First Come First Served (FCFS) scheme equal regardless their location, distance from the BS and
had been used for packet scheduling. Packets coming from all channel quality, a scheduling algorithm should be able to
the input links were enqueued into a First In First Out (FIFO) recompense users with poor channel quality and it is based on
memory stack, then they were dequeued one by one on to the the “Max‐min fair share”.
output link. This is shown in Figure 4‐(a). Since unlike packets
were mixed and treated equally, packets requiring urgent Flexibility: A scheduling algorithm should be capable of
delivery could not be achieved. So there is no scheduling action accommodating users with different QoS requirements.
taking place in this case.
Link Utilization: Maximizing the link utilization, especially in
In the present time different queues are specified to non the case of wireless communications, is of great significance to
similar packets for achieving packet classification. In this case service providers. Since the produced income is directly
scheduling should be done. The main task of the embedded proportional to this criteria.
scheduling algorithm is to choose the next packet to be
dequeued from the available multi queues and forwarded onto Protection: A scheduling algorithm is required to protect well‐
the output link. This is illustrated in Figure 4‐ (b) shown below. behaving users from the misbehaving users. Well‐behaving
users are those who stick to the Service Level Agreements
(SLA), while the misbehaving users are those who do not
comply with the SLA at all times and thus causes
unpredictability in the network.
IV. FUNDAMENTAL SCHEDULING ALGORITHM
In the coming subsections the fundamental scheduling
algorithms will be briefly described. These basic algorithms
make up the foundation of target scheduling algorithm, the
Modified Deficit Round Robin (MDRR). Afterwards, a
detailed investigation of MDRR will be carried out,
emphasizing the modifications made to adjust the algorithm.
A. Round Robin(RR)
Round‐Robin as a scheduling algorithm is considered the
most basic and the least complex scheduling algorithm.
B. Scheduling Algorithm Aim Basically the algorithm services the backlogged queues in a
round robin fashion. Each time the scheduler pointer stop at a
The main aims behind the concept of packet scheduling particular queue, one packet is dequeued from that queue and
could be simply defined by four points: then the scheduler pointer goes to the next queue. This is
shown in Figure 5.
• The first and foremost goal of a scheduling algorithm is to
be able to share the total system bandwidth fairly.
• The algorithm should be able to guarantee the minimum
bandwidth per SS. This consequently leads to the
separation of different demanding SSs.
• To be capable of meeting packet drop guarantees.
• To be able to assure latency guarantees.
• To be capable of reducing latency variation.
C. Scheduling Algorithm Criterions
On the other hand, metrics on which scheduling algorithms
will be compared are as follows:
Simplicity: This criterion in particular is of significant
importance to the high‐speed networks available in the present
time since a simply implemented algorithm directly leads to a
faster operation and thus lower packet latency. In addition, a
less complex algorithm may also mean a lower implementation
cost. Furthermore, simplicity of the algorithm would also
benefit mobile devices that possess a limited power resource.
96 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Note that in this case all packets are of same length. deficit counter is deducted by the amount of information being
However, for instance an MPEG video application may have served on each pass of the scheduler to the queue. Queues are
variable size packet lengths. This case is shown in Figure 6. served only if the amount of quantum added to the remaining
deficit counter amount from previous round is greater tan zero.
Otherwise, the quantum is added only and that particular queue
is held till it is served in the next round.
On the other hand, when packets of a backlog queue are
completely served then any remaining credit in the deficit
counter will be set to zero, as the accumulation of credit
without being utilized will result in unfairness [3].
// qI = Quantum for Queue i;
// dcI = Deficit Counter for Queue i;
// n = Maximum Packet Size;
// pI = Packets in Queue i;
// noP = Number of Packets;
// pS = Packet Size;
for(int i = 1; i <= n; i++)
{
if(pI > 0)
It is assumed that queues Q2‐Q5 have constant packet size of {
50 bytes and Q1 have a packet size of 100 bytes. Note that in dcI = dcI + qI;
Figure 6, unlike Figure 5, Q1 has superior throughput than the
if(dcI > 0)
other queues.
{
• Previously Q1 was transmitting 3x50 bytes per X interval do
= 150 bytes/X interval {
• Now Q1 is transmitting 2x100 bytes per X interval = 200 // [Serve Packet]
bytes/X interval dcI = dcI – pS;
This was caused by transmitting longer packet lengths. Hence, }while(dcI >=0 && noP > 0);
we can deduce that the round robin scheduling algorithm does }
not convey fairness in systems with variable packet lengths, if(dcI >= 0 && noP ==0) // for fairness issues
since RR tends to serve flows with longer packets more[4]. {
dcI = 0; // the dcI is reset
B. Weighted Round Robin(WRR) }
}
Weighted round robin was designed to differentiate flows }
or queues to enable various service rates. It operates on the Table1: DRR scheduling algorithm
same bases of RR scheduling. However, unlike RR, WRR
assigns a weight to each queue. The weight of an individual Usually the quantum is set to the maximum packet size. This is
queue is equal to the relative share of the available system done in order to make sure that at least one packet per flow per
bandwidth. This means that, the number of packets dequeued non‐empty queue is served.
from a queue varies according to the weight assigned to that
queue. Consequently, this differentiation enables prioritization
among the queues, and thus the SSs. Nevertheless, the V. MODIFIED DEFICIT ROUND-ROBIN (MDRR)
downside of a WRR scheduler, just like an RR scheduler is MDRR scheduling is an extension of the previously mentioned
that, different packet lengths being used by SSes would lead to DRR scheduling scheme. There may be different
the loss of its fairness criterion. modifications of the DRR scheme and yet share the name is
MDRR. Nevertheless, MDRR is mainly used as a scheduling
C. Deficit Round Robin (DRR) scheme for the 12000 Cisco routers.
The DRR scheduling algorithm was designed to overcome
the unfairness characteristic of the previous RR and WRR The algorithm depends on the DRR scheduling fundaments to
algorithms. In DRR scheduling, every queue is accompanied a great extent, however, in MDRR the quantum value given to
by a deficit counter which is initially set to the quantum of the
the queues is based on the weight associated with them, as
queue. A quantum is a configurable amount of credits (in
bits/bytes) given to a queue whenever it is served. Quantum indicated in Equation 1.
should represent the idle amount of bits/bytes a queue may
require. Adding quantum is proportional to assigning weight to
a queue.
The deficit counter is increased by one quantum on every
visit of the scheduler, except when the queue is empty; the
97 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
According to the mode of serving the Priority Queue, there
// q = Quantum; are mainly two types of MDRR schemes:
// w = Weight;
// mtu = Maximum Tranmission Unit; • Alternate Mode: In this mode the high priority queue is
serviced in between every other queue. For instance the
q = mtu + 512 * w; scheduling sequence may be as follows: {PQ, Q1, PQ,
Q2, PQ, Q3, PQ, and Q4}.
Table 2: MDRR Equation (1).
• Strict Priority Mode: here the high priority queue is
Maximum Transmission Unit (MTU) is the maximum packet served whenever there is backlog. After completely
size that a queue may deliver. Note that, since the MTU is a transmitting all its packets then the other queues are
constant number for a given system, quantum value and served. However, as soon as packets are backlogged again
weight are therefore directly proportional and hereafter could in the high priority queue, the scheduler transmits the
be used interchangeably. packet currently being served and moves back to the high
priority queue.
The reason of including the MTU parameter in equation 1 is to
ensure that the quantum to be delivered to the intended queue VI. MDRR ADJUSTMENTS
at least enables the queue to transmit one packet. Since if no Priority queuing technique could be applied to classes of
packet was transmitted in a round this results in the increase of queues rather than the queues themselves individually. The
the operational complexity. Except cases where the deficit intensive high‐priority‐queue scheduling idea instead could be
counter is below zero. achieved by assigning distinct and special weights to particular
queues possessing large backlogs. For example, this could be
In Equation 1 the weight is assigned to be equal to a shown as in Figure 8.
percentage ratio and its indicated as shown in Equation (2).
// w = Weight;
// mtmr = Multi Transmit Multi Receive;
// sps = Symbol Per Second;
// tsc = Total System Capacity
w = mtmr(sps)/tsc(sps)*100;
Table 3: MDRR Equation (2).
The Cisco MDRR scheduling scheme adds a Priority Queue
(PQ) into consideration with DRR. A Priority Queuing scheme
isolates high demanding flows from the rest of the other flows
for the reason of better quality of service provisioning. This is
illustrated as shown in Figure 7.
As indicated in Figure 8, the priority queuing scheduler gives
precedence to the queues Q3, Q4, Q5 and Q6 which are
scheduled by the high priority MDRR scheduler. After the
high priority queues on the right hand side are completely
served and no packet is found to be waiting in the buffers, then
the PQ scheduler switches to the low priority class and serves
the queues Q1 and Q2 in a MDRR scheduling scheme[6].
Changing the order of scheduling according to class priority,
in other words, means to change the frequency of the
scheduler serving a particular queue. This eventually leads to
changing the throughput, latency, jitter and packet overflow at
the queues. UGS and ertPS scheduling services are usually
utilized for voice traffic and as it was mentioned before the
requirements of thee scheduling services possess their own
98 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
grant time period and polling time period, respectively. Thus quality measurements, measured by the SS, to the BS. The
to provide QoS, these strict constraints must be applied and parameter sent over this channel is the CINR value. For the
there is not much scheduling flexibility. However, in this work purpose of adjusting the weight of the channel, CINR will be
it will be shown that rtPS may also carry voice traffic incorporated into the design as indicated in Equation (3)
according to the voice related criteria. On the other hand, rtPS below.
and nrtPS scheduling mechanisms are used for data traffic. In // w = Weight;
OPNET “Modeler Software – WiMAX Module”/Other // mtmr = Multi Transmit Multi Receive;
Software MDRR can use for polling services (rtPS and nrtPS) // sps = Symbol Per Second;
while RR is used for BE services. Then priority queuing is // tsc = Total System Capacity;
//cinr = Carrier to Interference and Noise Ratio;
applied between the two classes of queues. The high priority is
//int cinrInt;
given to the rtPS and nrtPS queues since they possess QoS
constraints. Unlike rtPS and nrtPS, BE services do not have cinrInt = (cinr-12/22) * 3.5;
any QoS constraints and thus they are assigned as a low w = (mtmr(sps)/tsc(sps) * 100) + cinrInt * 3;
priority queue class[5]. Table 4: MDRR Equation (3).
Considering the case of using AMC in conjunction with the The numbers associated with the CINR portion of Equation
discussed MDRR scheduling scheme is the central idea of this (3) is designed after intensive experimentation. Basically, the
paper. As it was mentioned before AMC adaptively changes right hand portion is an additional amount of weight given to
the modulation and coding for the BS and MS according to the those mobile stations with considerable CINR values. The
channel quality that the MS experiences. When a mobile is CINR values noticed from experiment results range from 15
initiated communication with the BS while it is configured to dB to 30 dB. Equation (3) will be incorporated into the
operate in the AMC mode, it makes use of the most robust OPNET MDRR scheduler and then results will be examined
burst profile, which in the case of Mobile WiMAX it is QPSK with taking the CINR part into account in implementation
½. This makes sure that even if the MS is at its furthest work using software.
distance from the BS, it is still capable of establishing initial
communication. Since QPSK ½ mode is used then the Symbol VII. SYSTEM MODEL AND SCENARIOS
Per Second (SPS) value of the MTMR is equal to the Bit Per
A. Evaluation Methodology
Second (BPS) value of the MTMR. According to the Equation
1, having the lowest modulation burst profile leads to gaining There are three main methods to evaluate a Scheduling
the greatest weight. Thus in brief, all AMC operating mobile algorithm: Deterministic modeling: Different algorithms are
terminal start with the most robust modulation and coding tested against a predetermined workload. Then the
profile and are assigned the highest weight [13-16]. performance results are compared. Queuing models: Random
backlogs are studied by analytically – in a mathematical way.
This is determined to be as such because there is a probability Implementation/Simulation: The most versatile method of
that any mobile station may move away from the BS, then testing scheduling algorithms is to actually simulate the
according to AMC, more robust modulation and coding shall designed algorithm with real life data and conditions.
be used. Consequently, this means only low bit rates will be
available at the mobile terminal. So here, as a reimbursement, B. OPNET Modeler
the mobile terminal is assigned more weight to compensate for
Indeed trying to analyze and simulate a part of the total system
its low data rate experience. Otherwise, it would be unfair to
would still need the fully simulated and accurate system
give distant mobile stations less data rate or bandwidth.
beforehand. This is supported by the fact that, any other
However, the main point of this paper is that, mobile stations
cooperating system entity may totally or in part change the
near the base station can actually have better data rates and
outcome of a simple scenario. Therefore, as many nodes and
without ignoring the fairness criteria. This idea originates from
sub‐nodes, with their correct attributes, should be incorporated
the fact that mobile stations near the BS are changing their
into the system model. However, this is not an easy task at all.
modulation format and coding rate as soon as they establish
Even a very small portion of the whole system model would
communication with the BS. The change in modulation and
need weeks to get it to behave like the original real life
coding scheme will be towards a higher modulation format
system. It should also be mentioned that, lacking a fully
and a lower coding rate. This is valid, since mobile stations
simulated system model, usually causes researchers to fail at
near the base station experience very good channel impulse
some point during their study to get feasible results.
responses. As a result, these mobile stations consume less
bandwidth than the distant mobile stations. Thus, in order not
It is true that commonly used soft wares like C, C++, Java,
to waste the bandwidth allocated to the mobile stations near
MATLAB and many other programming languages are strong
the base station, it is suggested that the more weight should be
and performing languages; however, these programmes do not
given to mobile stations near the BS.
come with a model of a specific system. Thus for the sake of
In Mobile WiMAX, the channel called Channel Quality
accuracy accompanied by an almost complete WiMAX system
Indicator Channel (CQICH) is dedicated to return channel
99 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
model simulation OPNET Modeler was researched to be one
of the best candidates. OPNET Modeler is a product of the
OPNET Technologies Inc. It is a Discrete Event Simulation
(DES) programme: events are handled in a chronological
manner. It has a Graphical User Interface (GUI) with a “user
friendly” sense. It has an enormous library at the service of the
user. On request, OPNET Technologies can provide ready‐to‐
use models. For the research to be done in this project,
“OPNET Modeller Wireless Suite” was provided with an
accompanying “WiMAX Model”[16].
OPNET Modeller is made up of 4 main editors: Project
editor: This is where the wireless network is laid out. The
network comprises of the network nodes and connections.
Node editor: Nodes can be edited with the node editor. Nodes
are made up of sub‐modules, which carry out the functions of
the node. The functions are in the form of processes. Process
Figure 9: WiMAX Base Station Parameters
editor: Processes function as a Finite State Machine (FSM).
Code editor: Each state in the FSM is coded in either C or C+
+ or Java programming language. The code is actually the
tasks that the node does.
C. System Mode
In the following scenarios 6 mobile stations are configured in
operate in the AMC mode. The load on the network mobile
stations is 96 Kbps, originally 64Kbps, but with header and
control information it adds up to 96 Kbps. The parameters of
the mobile stations, Base station, WiMAX Configuration
Node are as shown in Figure 8, Figure 9, Figure 10, and
Figure 11.
Figure 10: WiMAX Configuration Node Parameters
Figure 8: WiMAX Mobile Station Parameters
Figure 11: WiMAX Configuration Node Parameters
D. Simulated Scenario
In the following scenarios the parameters for the Mobile
Station, Base Station and the WiMAX configuration nodes
100 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
were set as they were previously shown in Figures 8, 9, 10 and
11.
In this scenario equation (3) was set into the MDRR
scheduling C code and the following graphs were obtained
after simulating for 1 minute and 40 seconds. Figure 12 shows
the CINR gotten as a feed back from the mobile station to the
base station.
Figure 14: The effect of MTMR on UL throughput
Considering delays that the mobile stations possess, Figure 15
shows the how much delay each mobile station is
Figure 12: Mobile Station CINR Values experiencing.
Figure 12 indicates that, MS_0 has the highest CINR value
and MS has the lowest CINR value.
Figure 15: Mobile Station Delay
As was expected Mobile station 4,1 and 0 (green, pink and
red) are at the bottom, meaning that they own the lowest
Figure 13: WiMAX UL MS Throughput delays. This may have been the result of the weighting
process. In other words, when great weights were assigned to
It is shown in Figure 13 that all the Mobile station UL mobile stations with good channel quality, then the MDRR
connections do transmit the work load applied on them. This scheme have served them more than the others; Causing the
may indicate that the weights assigned to the queues were other queues to wait till they get some deficit. Moreover, the
affecting the dequeuing process enough to eventually lower Figure also indicates that on average very low delays have
the throughputs of the corresponding mobile stations. been achieved. This is a very good indication, which might
qualify the scheduler to be utilized for voice applications as
On the other hand, polling the queues might have had more well. Nevertheless, further simulations are required to approve
effect on the throughput rather than the assigned weights. that the algorithm is capable of handling large amounts of
Since however the weight may be still polling the SS has a users.
superior act on servicing that SS. This was justified when the E. Resulted Simulation Limitations and Constraints
MTMR (which polling period is dependent on) of MS_2 was
set to be higher than the other queue. The result, as shown in OPNET Modeler Software is still immature. There are many
Figure 14, indicate that MTMR indeed have raised the bugs in the WiMAX Model which took a lot of time of study.
throughput of the corresponding queue[16]. Furthermore, the software is quite complicated, requiring that
the user is already a professional C programmer to be able to
change the code within, which eventually blocked the way to
give complete simulation set. Some of the basic mistakes
were encountered regarding the position of the mobile
stations. For instance, a mobile station at a distance 1 Km
from the BS in one direction does not have the CINR as in
101 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
another direction, knowing that the antenna is an omni antenna [6] M. Katevenis, S. Sidiropoulos and C. Courcoubetis, "Weighted round‐
robin cell multiplexing in a general‐purpose ATM switch chip",
and the position should be a problem if the distance was is Selected Areas in Communications, IEEE Journal on 9(8), pp. 1265‐
same. 1279, 1991.
[7] S. Belenki, "Traffic management in QoS networks: Overview and
suggested improvements," Tech. Rep., 2000.
[8] M.Shreedhar and G.Varghese, "Efficient Fair Queuing using Deficit
Round Robin," IEEE/ACM Transactions on Networking, vol. 1, pp.
375‐385, June 1996.
[9] T. Al‐Khasib, H. Alnuweiri, H. Fattah and V. C. M. Leung, "Mini round
robin: An enhanced frame‐based scheduling algorithm for multimedia
networks", IEEE Communications, IEEE International Conference on
ICC, pp. 363‐368 Vol. 1, 2005.
[10] Nortel Networks, "Introduction to quality of service (QoS)," Nortel
Networks Website, 2003. Accessed on 1st of September 2008.
[11] X. Zhu, J. Huo, S. Zhao, Z. Zeng, and W. Ding, “An adaptive resource
allocation scheme in OFDMA based multiservice WiMAX systems,” in
IEEE International Conference on Advanced Communication
Technology,2008, pp. 593–597.
Figure 16: An OPNET bug
[12] Jia-Ming Liang, Jen-Jee, “Priority-Based Scheduling Algorithm for
Downlink Traffics in IEEE 802.16 Networks” , Nationa Chiao_Tung
It is noticed here (Yellow & Orange color), when the Mobile University, Taiwan.
Station “MS” moves, it gets dropped off exactly right after [13] Dr. Pethuru Raj, C. Ravichandiran, “A Comparative Study on High-
that the software produces an error, which should not happen. Performing WLAN Mesh Network Solutions”, Sambharam Academy of
Management Studies (SMRITI), April 2007.
This means that the software itself also has some bugs yet to
[14] Lars Staalhagen,"Introduction to OPNET modeler", Networks
be corrected. Eventually, after re‐simulating the programme a Competence Area, COM • DTU, 24th of August, 2007.
couple of times, the bug unexpectedly disappeared. Many [15] Han‐Seok Kim, "Introduction to WiBro (mobile WiMAX)," Samsung El
other bugs were noticed and took a lot of time for the software ectronics Co., Ltd., 2005.
to get back to normal. Another simulation limitation as that [16] OPNET Technologies, OPNET modeler. Software Package. Available at
Modeler sets the path taken by the uplink to be the same as the : http://www.opnet.com
path taken by the downlink for CINR measurements, where [17] T. Al- Khasib, H. Alnuweiri, H. Fattah and V. C. M. Leung, "Mini round
robin: An enhanced frame‐based scheduling algorithm for multimedia
this is almost always not the case, but rather the paths take networks", IEEE Communications, IEEE International Conference on
different channel quality values. ICC, pp. 363‐368 Vol. 1., 2005.
[18] Xiaojing Meng "An Efficient Scheduling for Diverse QoS Requirements
CONCLUSION in WiMAX" A thesis presented to the University of Waterloo. Waterloo,
Being one of the hottest current research issues and as Ontario, Canada, 2007.
indicated by Samsung: designing a scheduler that is less [19] Dr. Vaithiyanathan, C. Ravichandiran, “An Incisive SWOT Analysis of
Wi-Fi, Wireless Mesh, WiMAX and Mobile WiMAX Technologies”,
complex, more efficient and provides a superior Quality IEEE (ICETC 2009), Singapore, 2009.
of Service is of great importance to mobile WiMAX [20] Seungwoon Kim and Ikjun Yeom, “TCP-aware Uplimk scheduling for
systems. In this paper, a comprehensive, yet brief, IEEE 802.16”. IEEE Communication Letter, Feb 2007.
introduction was given for the IEEE 802.16e [21] Chingyao Huang, Hung‐Hui Juan, Meng‐Shiang Lin and Chung‐Ju
commercially known as Mobile WiMAX Systems. Chang, "Radio resource management of heterogeneous services in
mobile WiMAX systems [Radio Resource Management and Protocol
Modified DRR scheduling algorithm has been studied in depth Engineering for IEEE 802.16]," IEEE Wireless Communications, vol.
and implemented in OPNET Modeler Software. After that it 14, pp. 20‐26, 2007.
was attempted to enhance the throughput of the system [22] J. G. Andrews, Ph. D and R. Muhamed, Fundamentals of WiMAX :
with regard to the channel quality if the subscriber Understanding Broadband Wireless Networking. Upper Saddle River,
stations while taking fairness into consideration. NJ: Prentice Hall, 2007.
REFERENCES AUTHORS PROFILE
[1] F. Hsieh, F. Wang, and A. Ghosh, “Link Performance of WiMAX C. Ravichandiran received the MCA from the Madurai Kamaraj University,
PUSC,” IEEE WCNC, Apr. 2008. India, in 1999. He received the M. Tech degree in Software Engineering from
[2] Pratik Dhrona, "A Performance Study of Uplink Scheduling Algorithms IASE University, India. And currently pursuing PhD degree in Computer
in Point to Multipoint WiMAX Networks," 2007. Science from SASTRA University, India. His fields of interest are Computer
Networks, Network Security, Wireless and Mobile Communication, Database.
[3] B. Lannoo et al., “Business scenarios for a WiMAX deployment in He has more than 9 publications to his credit in international journals and
Belgium”, in Proceedings of IEEE Mobile WiMAX 2007 conference, conferences. He is a life member of the International Association of Computer
Orlando, USA., Mar. 2007. Proceeding IEEE Mobile WiMAX Science and Information Technology (IACSIT), International Journal of
Symposium, Orlando, 2007. Electronic Business (IJEB), and International Association of Engineers
[4] R. Jain, lecture notes, "A Survey of Scheduling Methods", University of (IAENG).
Ohio, 2007.
[5] Mark Handley, lecture notes, "Scheduling and queue management", Dr. C. Pethuru Raj (www.peterindia.net) has been working as a lead
University College of London, 2006. architect in the corporate research (CR) division of Robert Bosch. The
previous assignment was with Wipro Technologies as senior consultant and
was focusing on some of the strategic technologies such as SOA, EDA, and
102 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Cloud Computing for three years. Before that, he worked in a couple of of Computing, SASTRA University, and Thanjavur, India. He has more than
research assignments in leading Japanese universities for 3.5 years. He has 8 19 years of experience in teaching and research. He has been guiding more
years of IT industry experiences after the successful completion of his UGC- than 25 M.Tech Projects, 5 PhD and thesis. His fields of interests are various
sponsored PhD in formal language theory / fine automata in the year 1997. He techniques in Image Processing, Computer vision for shape identification,
worked as a CSIR research associate in the department of computer science Reconstruction, noise removal, online correction of an image by developing
and automation (CSA), Indian institute of science (IISc), Bangalore for 14 software and in the area of cryptography. Various applications of soft computing
memorable months. He has been authoring research papers for leading techniques for object identifications. He has more than 40 publications to his
journals and is currently involved in writing a comprehensive and informative credit in international journals and conferences. He has visited many
book on Next-Generation Service Oriented Architecture (SOA). universities in India.
Dr. V. Vaidhyanathan received the PhD degree from the Alagappa
University, Karaikudi, India. He is currently Professor and HOD-IT in School
103 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Current Conveyor Based Multifunction Filter
Manish Kumar M.C. Srivastava Umesh Kumar
Electronics and Communication Electronics and Communication Electrical Engineering Department
Engineering Department Engineering Department Indian Institute of Technology
Jaypee Institute of Information Jaypee Institute of Information Delhi, India
Technology Technology .
Noida, India Noida, India
. .
Abstract—The paper presents a current conveyor based band-pass) employing three positive type current conveyor and
multifunction filter. The proposed circuit can be realized as low five passive components. The circuit proposes high output
pass, high pass, band pass and elliptical notch filter. The circuit impedance.
employs two balanced output current conveyors, four resistors
and two grounded capacitors, ideal for integration. It has only In this paper a circuit employing two balanced output
one output terminal and the number of input terminals may be current conveyors, four resistors and two grounded capacitors
used. Further, there is no requirement for component matching is proposed. This circuit has one output terminal and four input
in the circuit. The parameter resonance frequency (ω0) and terminals. All the basic filters (low pass, high pass, band pass
bandwidth (ω0 /Q) enjoy orthogonal tuning. The complementary and notch filter) may be realized by selecting appropriate input
metal oxide semiconductor (CMOS) realization of the current terminals of the circuit.
conveyor is given for the simulation of the proposed circuit. A
HSPICE simulation of circuit is also studied for the verification The following section presents circuit description of the
of theoretical results. The non-ideal analysis of CCII is also balanced output current conveyor. The sensitivity analysis,
studied. (Abstract) nonideal analysis of balanced output current conveyors,
simulation results and conclusion are discussed in the
Keywords- Active filters, Current Conveyor, Voltage- mode. subsequent sections.
I. INTRODUCTION (HEADING 1) II. CIRCUIT DESCRIPTION
Active filters are widely used in the signal processing and The balanced output current conveyor is shown in fig 1
instrumentation area. The well known advantage of current with its symbol, characterized by the port relations as given by
mode operation, such as better linearity, simple circuitry, low “(1)”
power consumption and greater bandwidth becomes more
attractive as compared to voltage-mode counterpart with
introduction of Current Conveyor II(CCII). The application and
advantages in the realization of various active filters using
current conveyors has received considerable attention [1]-[5].
Some voltage mode multifunction filter using current
conveyors have also been proposed. In 1995 Soliman [1]
proposed Kerwin-Huelsman-Newcomb (KHN) biquad with
single input and three outputs, which realizes low-pass, band-
pass and high-pass filter. The circuit employs five current
conveyor (CCII), two capacitors and six resistors. In 1997
Higahimura et al. [2] proposed a universal voltage-mode filter
that can realize low-pass, high-pass, band-pass, all-pass and
notch filter using seven current conveyors, two capacitors and
eight resistors. Ozoguz et. al. [3] realized high-pass, low-pass
and band-pass filter using three positive current conveyor and
five passive components. In 1999 Chang and Lee [4] proposed Figure 1. Symbol of balanced output current Conveyor
voltage mode low-pass, band-pass and high-pass filter with
single input and three outputs employing only current
conveyors, two grounded capacitors and three resistors. Toker
et. al. [5] realized high output impedance transadmittance type
continuous time multifunction filter (low-pass, high-pass and
104 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
⎡ Vx ⎤ ⎡ 0 B 0 0⎤ ⎡ I x ⎤ R1 + R6
ω0 = (4)
⎢I ⎥ ⎢ 0
⎢ y⎥=⎢ 0 0 0⎥ ⎢ V y ⎥
⎥⎢ ⎥
R1R4 R6C2C 5
(1)
⎢I z + ⎥ ⎢ K 0 0 0⎥ ⎢Vz + ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥
⎣ I z − ⎦ ⎣− K 0 0 0⎦ ⎣Vz − ⎦ ω0 1
= (5)
Q R2C3
TABLE 1 VARIOUS FILTER RESPONSES
Filter\Input V1 V2 V3 V4
Low-pass 1 0 0 1
High-pass 0 1 0 0
Band-pass 0 0 1 0
Notch 1 1 0 1
C2 ( R1 + R6 )
Q = R3 (6)
R1R4 R6C5
It can be seen from a perusal of “(4)” - “(6)” that both the
center frequency and quality factor are independent. An
Figure 2. Proposed Voltage Mode Multifunction Filter inspection of “(4) and “(5)” shows that ω0 and ω0/Q can be
orthogonally tuned through R6 and /or C5 and R3 and /or C2 in
that order.
The values of B and K are frequency dependent and ideally
B=1 and K=1. III. SENSITIVITY ANALYSIS
The sensitivity analysis of the proposed circuit is presented
The proposed circuit shown in fig 2 employs only two in terms of the sensitivity of ω0 and Q with respect to the
balanced output current conveyor, four resistor and two variation in the passive components as follows:
capacitors. The grounded capacitors are particularly very
attractive for the integrated circuit implementation.
ω 1
S C20,C5 , R4 = − (7)
⎡ R3 R6 ⎤ 2
2 ⎢ s 2C C V1 + R1R3 R4 R6V2 ⎥
s C2C5 ⎢ 2 5
⎥
Vout = (2)
D( s) ⎢ R1R4 R6 R1R3 ⎥ ω
S R10 = −
R61
⎢+ sC V3 + s 2C C V4 ⎥ 2( R1 + R6 )
(8)
⎣ 2 2 5 ⎦
Where
ω R1
S R60 = − (9)
D( s ) = s 2C2C5 R1R3 R4 R6 + sC 5R1R4 R6 + ( R1R3 + R3 R6 ) 2( R1 + R6 )
(3)
Thus by using “(2)” we can realize low-pass, band-pass, S R3 = 1
Q
(10)
high-pass and notch filter responses at the single output
terminal by applying proper inputs at different node as shown
in table1.
1
The denominators for the all filter responses are same. The SC 2 =
Q
(11)
filtering parameter ωo, ωo/Q and Q are given by 2
1
S R4 , C 5 = −
Q
(12)
2
105 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
R61 1
S R1 = −
Q
(13) S B1, B 2, K 1, K 2 = −
Q
(21)
2( R1 + R6 ) 2
The ω0 and Q sensitivities with respect to passive
components are same in case of ideal balanced output current
R1
S R6 = −
Q
(14) conveyor.
2( R1 + R6 ) TABLE 2 TRANSISTOR ASPECT RATIOS FOR BALANCED OUTPUT CCII
Transistor W(µm)/L(µm)
As per these expressions, both the ω0 and Q sensitivities are M1, M2 20/1
M3 50/2.5
less than ± ½ with a maximum value of S R3 = 1 .
Q
M4, M6, M8 80/2.5
M5 100/2.5
M7,M9 50/2.5
IV. NONIDEAL ANALYSIS
Practically B and K are frequency dependent with dominant
poles and therefore intended to nonideal. The non ideal V. SIMULATION RESULT
behavior of the output Vout may be expressed by “(15)". The HSPICE simulation with 0.5µm CMOS transistor
model provided by MOSIS has been carried out for the
realization of balanced output current conveyor as shown in fig
⎡ R3 R6 ⎤ (3). Table 2 list the dimension on NMOS and PMOS transistor
2 ⎢ s 2C C V1 + K1K 2 B2 R1R3 R4 R6V2 ⎥ of this circuit. Figure 4 displays the simulation result for the
s C2C5 ⎢ 2 5
⎥ (15) proposed filter. The circuit is designed for ω0 = 14.14 KHz and
Vout =
D( s ) ⎢ K1K 2 B2 R1R4 R6 R1R3 ⎥ Q=2 by considering R1 = R4 = R6 = 10KΩ, C2 = C5 = 10nF and
⎢+ V3 + 2
s C2C5 ⎦
V4 ⎥ R3 = 14KΩ. The theoretical results have been verified to match
⎣ sC2 with simulation result.
Where
D ( s ) = K1K 2 B1B2 ( s 2C2C5 R1R3 R4 R6 + sC5 R1
(16)
R4 R6 ) + ( R1R3 + R3 R6 )
R1 + R6
ω0 = (17)
K1K 2 B1B2 R1R4 R6C2C5
ω0 1 Figure 3. CMOS Circuit for Balanced Current Conveyor II
= (18)
Q C2 R3
C2 ( R1 + R6 )
Q = R3 (19)
K1K 2 B1B2 R1R4 R6C2C5
It can be observed that the effect of non ideality behavior
on cutoff frequency (ω0) and Q will be negligible and
bandwidth will not be affected. The sensitivity analysis of
cutoff frequency and the quality factor with respect to K1, K2,
B1 and B2 are as follows:
ω 1
S B10, B2 , K1 , K 2 = − (20)
2 Figure 4. Multifunction Filter Responce
106 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
VI. CONCLUSION [5] A. Toker, O. Çiçekoglu, S. Özcan and H. Kuntman ,” High-output-
impedance transadmittance type continuous-time multifunction filter
The circuit proposed by Hong et al. and Chang et. al. uses with minimum active elements,” International Journal of Electronics,
more active and passive components. Whereas the circuit Volume 88, Number 10, pp. 1085-1091, 1 October 2001.
proposed in this paper generates low-pass, high-pass, band-pass [6] A. M. Soliman, “Current mode universal filters using current conveyors:
and notch filter using two balanced output current conveyors, classfication and review,” Circuits Syst Signal Process, vol. 27, pp. 405-
427, 2008.
four resistors and two capacitors. The circuit provides more
number of filter realizations at the single output terminal using [7] P. V. Anada Mohan, Current Mode VLSI Analog Filters, Birkhauser,
Boston, 2003.
two current conveyors. In addition of this proposed circuit does
not have any matching constraint/cancellation condition. The
circuit employs’ grounded capacitor, suitable for IC
fabrication. The circuit enjoys the othogonality between the AUTHORS PROFILE
cutoff frequency and the bandwidth. It has low sensitivities Authors Profile …
figure of both active and passive components.
Manish Kumar was born in India in 1977. He
REFERENCES received his B.E. in electronics
[1] A. M. Soliman, “Kerwin–Huelsman–Newcomb circuit using current engineering from S.R.T.M.U. Nanded in 1999
conveyors,” Electron. Lett., vol. 30, no. 24, pp. 2019–2020, Nov. 1994. and M.E. degree from Indian Institute of
[2] M. Higasimura and Y. Fukui, “Universal filter using plus-type CCII’s,” Science, Bangalore in 2003. He is perusing is
Electron. Lett. vol. 32, no. 9, pp. 810-811, Apr. 1996. Ph.D. He is working as faculty in Electronics
and Communication Engineering Department of
[3] S. Ozoguz, A. Toker and O. Cicekoglu, “High output impedance
Jaypee Institute of Information Technology,
current-mode multifunction filter with minimum number of active and
reduced number of passive elements,” Electronics Letters, vol. 34, no Noida He is the author of 10 papers published in
19, pp. 1807-1809, 1998 scientific journals and conference proceedings.
His current area of research interests includes
[4] Chun-Ming Chang and Ming- Jye Lee, “Voltage mode multifunction analogue circuits, active filters and fuzzy logic.
filter with single input and three outputs using two compound current
conveyors,” IEEE Trans. On Circuits and Systems-I: vol. 46, no. 11,
pp.1364-1365, 1999.
M. C. Srivastava received his B.E. degree
from Roorkee University (now IIT Roorkee),
M.Tech. from Indian Institute of Technology,
Mumbai and Ph.D from Indian Institute of
Technology, Delhi in 1974. He was
associated with I.T. BHU, Birla Institute of
Technology and Science Pilani, Birla Institute
of Technology Ranchi, and ECE Dept. JIIT
Sector-62 Noida. He has published about 60
research paper. His area of research is
signal processing and communications. He
was awarded with Maghnad Saha Award for
his research paper.
Umesh Kumar is a senior member, IEEE. He
received B.Tech and Ph.D degree from IIT Delhi.
He has published about 100 research papers in
various journals and conferences. He is working
as faculty in Electrical Engineering Department,
IIT Delhi.
107 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. VII , No. II, FEB2010 .
A Secure Hash Function MD-192 With Modified
Message Expansion
Harshvardhan Tiwari Dr. Krishna Asawa
Student, CSE Department Asst. Prof., CSE/IT Department
JIIT JIIT
Noida, India Noida, India
tiwari.harshvardhan@gmail.com krishna.asawa@jiit.ac.in
Abstract—Cryptographic hash functions play a central role in size. In the past few years, there have been significant research
cryptography. Hash functions were introduced in cryptology to advances in the analysis of hash functions and it was shown
provide message integrity and authentication. MD5, SHA1 and that none of the hash algorithm is secure enough for critical
RIPEMD are among the most commonly used message digest purposes. The structure of proposed hash function, MD-192, is
algorithm. Recently proposed attacks on well known and widely based on SHA-1. There are six chaining variables in suggested
used hash functions motivate a design of new stronger hash hash function. The extra 32 bit chaining variable makes the
function. In this paper a new approach is presented that produces algorithm more secure against the brute force attack. The
192 bit message digest and uses a modified message expansion randomness of the bits in the working variables is not more
mechanism which generates more bit difference in each working
when the original SHA-0 and SHA-1 codes were considered,
variable to make the algorithm more secure. This hash function is
collision resistant and assures a good compression and preimage
because of this both SHA-0 and SHA-1 are totally broken
resistance. using the differential attack by Wang[3,5,6]. Wang attacked on
the poor message expansion of the hash function’s compression
Keywords-Cryptology,Hashfunction,MD5,SHA1,RIPEMD, function. In the suggested hash function a modified expansion
Message Integrity and Authentication,Message expansion. mechanism is used, based on the modification to the standard
SHA-1 hash function’s message expansion proposed by Jutla
and Patthak [11], in such a way that the minimum distance
I. INTRODUCTION
between the similar words is greater compared with SHA-0 and
Function of hash algorithms is to convert arbitrary length SHA-1. Because of the additional conditions in between the
data into fixed length data hash value and they are used in steps 16 and 79 there will be an additional security against the
cryptographic operations such as integrity checking and user differential attack. Some other changes like, shifting of
authentication. For the cryptographic hash function following variables and addition of variables, have been made in order to
properties are required: make the algorithm more secure. The design goal of this
algorithm is that, it should have performance as competitive as
• Preimage resistance: It is computationally infeasible
that of SHA-2 family.
to find any input which hashes to any prespecified
output.
II. PREVIOUS WORKS
• Second preimage resistance: It is computationally
infeasible to find any second input which has the same In this section we discuss about SHA hash functions and
output as any specified input. their weaknesses. The original design of the hash function SHA
was designed by NSA (National Security Agency) and
• Collision resistance: It is computationally infeasible to published by NIST in 1993. It was withdrawn in 1995 and
find a collision, i.e. two distinct inputs that hash to the replaced by SHA-1. Both SHA-0 and SHA-1 are based on the
same result. principle of MD5 [4] and are mainly used in digital signature
schemes. They hash onto 160 bits and use Merkle-Damgard
For an ideal hash function with an m-bit output, finding a construction [1] from 160 x 512 → 160 compression function.
preimage or a second preimage requires about 2m operations At CRYPTO’98 Chabaud and Joux [9] proposed a theoretical
and the fastest way to find a collision is a birthday attack which attack on the full SHA-0 with the complexity of 261. In 2004,
needs approximately 2m/2 operations [1]. Biham and Chen [10] presented an algorithm to produce near
The three SHA (Secure Hash Algorithms) algorithms [2, 7] collisions. In 2005 Biham et al. presented optimization to the
SHA-0, SHA-1 and SHA-2 have different structures. The attack but the main improvement came from Wang. Both these
SHA-2 family uses an identical algorithm with a variable digest algorithm (SHA-0 and SHA-1) generate a message digest of
1
108 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. VII , No. II, FEB2010
length 160 bits by accepting a message of maximum length Step 3: Divide the input into 512bit blocks Divide the input
264 – 1 bits. In each of these hash function, message M is message into blocks, each of length 512bits, i.e. cut M into
divided into r-blocks each of length 512bits such that, M= (m1, sequence of 512 bit blocks M1,M2…..MN Each of Mi parsed
m2, m3………. mr).Then each block is further divided into sixteen into sixteen 32bit wordsMi0,Mi1……...Mi15.
32 bit words such that mi= w1, w2……….w16, for
1≤i≤r. These 32 bit words are then linearly expanded into Step 4: Initialize chaining variables H0 = IV, a fixed initial
eighty 32 bit words wt: value. The hash is 192 bits used to hold the intermediate and
final results. Hash can be represented as six 32 bit word
wt = wt-3 wt-8 wt-14 wt-16, for16≤t≤79 registers, A,B,C,D,E,F. Initial values of these chaining
variables are:
the only difference is that the SHA-1 uses a single bitwise
rotation in the message schedule in its compression function A = 01234567
where as SHA-0 does not. Both hash functions use an update
function for processing each message block. This update B = 89ABCDEF
function consists of eighty steps divided into four rounds. C = FEDCBA98
A,B,C,D,E are five 32 bit registers used as buffer for updating
the contents. For each of the eighty rounds the registers are D = 76543210
updated with a new 32 bit value. The starting value of these E = C3D2E1F0
registers is known as initial value represented as
IV0 = (A0 , B0 , C0 , D0 , E0). In general, IVt = (At, Bt , Ct , Dt , F = 1F83D9AB
Et) for 0≤t≤79. For step t the value wt is used to update the The compression function maps 192 bit value
whole registers. Each step uses a fixed constant kt and a bitwise H=(A,B,C,D,E,F) and 512 bit block Mi into 192 bit value. The
Boolean operation F which depends on the specific round, shifting of some of the chaining variables by 15 bits in each
IF B THEN C ELSE D in first round, B XOR C XOR D in round will increase the randomness in bit change in the next
second and fourth round, MAJ(B,C,D) in third round. The successive routines. If the minimum distance of the similar
process can be formally represented as: words in the sequence is raised then the randomness will
(At, Bt , Ct , Dt , Et) = ((wt-1+ At-1<<5+F(Bt -1 , Ct-1 , Dt-1)+ Et-1+ significantly raises. A different message expansion is employed
kt-1), At-1, (Bt-1<<30), Ct-1, Dt-1) in this hash function in such a way that the minimum distance
between the similar words is greater compared with existing
In 2002 NIST developed three new hash functions SHA- hash functions.
256,384 and 512 [2] whose hash value sizes are 256,384 and
512 bits respectively. These hash functions are standardized Step 5: Processing After preprocessing is completed
with SHA-1 as SHS(Secure Hash Standard),and a 224-bit hash each message block is processed in order using following steps:
function, SHA-224, based on SHA-256,was added to SHS in I) For i = 1 to N prepare the message schedule.
2004 but moving to other members of the SHA family may not
be a good solution, so efforts are underway to develop Mit , 0≤t≤15
improved alternatives. Wt = Wt-3 Wt-8 Wt-14 Wt-16
III. DESCRIPTION OF MD-192 (( Wt-1 Wt-2 Wt-15 )<<<1) ,
The new dedicated hash function is algorithmically similar to 16≤t<20
SHA-1. The word size and the number of rounds are same as Wt-3 Wt-8 Wt-14 Wt-16
that of SHA-1.In order to increase the security aspects of the
algorithm the number of chaining variables is increased by one ((Wt-1 Wt-2 Wt-15 Wt-20) <<<1),
(six working variables) to give a message digest of length 192 20≤t≤63
bits. Also a different message expansion is used in such a way
that, the message expansion becomes stronger by generating Wt-3 Wt-8 Wt-14 Wt-16
more bit difference in each chaining variable. The extended
((Wt-1 Wt-2 Wt-15 Wt-20) <<< 13),
sixteen 32 bit into eighty 32 bit words are given as input to the
round function and some changes have been done in shifting of 64≤t≤79
bits in chaining variables. Steps of algorithm are as follows:
Step 1: Padding The first step in MD-192 is to add padding Figure1. Expansion of Message words
bits to the original message. The aim of this step is to make the
length of the original message equal to a value, which is 64 bits II) Initialize the six working variables A,B,C,D,E,F
less than an exact multiple of 512. We pad message M with one with (i-1)st hash value.
bit equal to 1, followed by a variable number of zero bits.
Step 2: Append length After padding bits are added, length
of the original message is calculated and expressed as 64 bit
value and 64bits are appended to the end of the original
message + padding.
2
109 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. VII , No. II, FEB2010
III) For t = 0 to 79
Function SHA-1 SHA-256 MD-192
{
Block
P = ROTL5 (A) + F1 (B,C,D) + E + Kt +Wt length 512 512 512
5
(bits)
Q = ROTL (A) + F1 (B,C,D) + E + F + Kt +Wt
Message
F=P Digest
160 256 192
Length
E = ROTL15(D) (bits)
D=C Rounds 80 64 80
C = ROTL30(B) Collision
B=A complexity 280 2128 296
(bits)
A=Q
} Table2. Comparison among SHA-1, SHA-256 and MD-192
Where Kt is a constant defined by a Table 1,F1 is a bitwise
Boolean function, for different rounds defined by,
A B C D E F
F1(B,C,D) = IF B THEN C ELSE D
F1(B,C,D) = B XOR C XOR D
F1(B,C,D) = MAJORITY(B,C,D) F1 +
F1(B,C,D) = B XOR C XOR D
Where the “ IF….THEN……ELSE “ function is defined by
<<5 +
IF B THEN C ELSE D = (BΛC)V((¬B) ΛD)
and “ MAJORITY “ function is defined by <<30 <<15
MAJ (B,C,D) = (BΛC)V(CΛD)V(DΛB) + Wt
Also, ROTL is the bit wise rotation to the left by a number of
positions specified as a superscript.
IV) H0(i) = A + H0(i-1) + Kt
H1(i) = B+ H1(i-1)
H2(i) = C + H2(i-1)
+
H3(i) = D + H3(i-1)
H4(i) = E + H4(i-1)
H5(i) = F + H5(i-1) A B C D E F
Rounds Steps F1 Kt
Figure2. Proposed MD-192 step function
1 0-19 IF 5a827999
2 20-39 XOR 6ed6eba1 IV. PERFORMANCE
We have presented a new dedicated hash function based on
3 40-59 MAJ 8fabbcdc Davies-Meyer scheme that satisfied Merkle-Damgard
condition. Security of this algorithm is higher than
4 60-79 XOR ca62c1d6 SHA-1.Sophesticated message modification techniques
were applied. This scheme is 192 bits and need 296 bits for
birthday paradox and is strong enough to preimage and
Table1. Coefficients of each round in algorithm
second preimage attack. The performance of MD-192 is
compared with SHA-1. The performance comparison is
accomplished using Pentium IV, 2.8 GHz, 512MB RAM/
Microsoft Windows XP Professional v.2002. Simulation
3
110 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. VII , No. II, FEB2010
results of text data indicate that suggested algorithm needs V. CONCLUSION AND FUTURE WORK
more time to generate a message digest when compared In this paper We proposed a new message digest algorithm
with SHA-1 because in proposed algorithm there is an extra basis on the previous algorithm that can be used in any
32 bit chaining variable and additional conditions in message integrity or signing application. Future work can
between the steps 16 and 79 in message expansion be made on this to optimize time delay.
mechanism. It produces message digest of length 192 bits
longer than the SHA-1. From the simulation results of text
data we have analyzed that strength of MD-192 is more REFERENCES
than SHA-1. Even with the small change in the input [1] Ilya Mironov, “Hash Functions : Theory, attacks and applications”,
algorithm produces greater change in the output. (Pub Nov 2005) J. Clerk Maxwell, A Treatise on Electricity and
Magnetism, 3rd ed., vol. 2. Oxford: Clarendon, 1892, pp.68–73.
[2] NIST, “Secure Hash Standars“,FIPS PUB 180-2,(Pub Aug 2002)
Message SHA-1 MD-192 [3] X. Wang, X. D. Feng, X. Lai and H.Yu, “Collisions for Hash Functions
“” da39a3ee 0fadadef MD4, MD5, HAVAL-128 and RIPEMD, (Pub Aug 2004) Available:
5e6b4b0d c0ef131b http://eprint.iacr.org/2004/199/
3255bfef 93aa5854 [4] R.L. Rivest. The MD5 Message Digest Algorithm. RFC 1321, 1992
95601890 a29a0b50 [5] X. Wang, H. Yu and Y.L. Yin, “Efficient Colision Search Attacks on
SHA-0”,(Pub 2005)
afd80709 6769fd32
[6] K. Matusiewicz and J. Pieprzyk, “Finding good differential patterns
a6c90def attacks on SHA-1”, (Pub 2004),Available:
“a” 86f7e437 4bd559a1 http://eprint.iacr.org/2004/364.pdf
faa5a7fc 31498fcf [7] NIST, “Secure Hash Standar“,FIPS PUB 180-1,(Pub Apr 1995)
e15d1ddc 07d06b2b [8] William Stallings, “Cryptography and Network Security: Principles and
b9eaeaea f6ab8c4c Practice. Third edition, Prentice Hall.2003.
377667b8 cff1f5b3 [9] Florent Chabaud, Antoine Joux, “Differential collisions in SHA-0,”
c4dce3c8 Advances in Cryptology-CRYPTO’98, LNCS 1462, Springer-Verlag,
1998.
“abc” a9993e36 b6a3a4d1
[10] Eli Biham, Rafi Chen, Antoine Joux, Patrick Carribault, Christophe
4706816a a96e22d7 Lemuet, William Jalby, “Collision in SHA-0 and Reduced SHA-1,”
ba3e2571 95c4f6db Advances in Cryptology-EUROCRYPT 2005, LNCS 3494, Springer-
7850c26c 7d72607e Verlag,2005.
9cd0d89d ea6d72fb [11] C.S. Jutla and A.C.Patthak, “Provably Good Codes for Hash Function
Dessign, (Pub Jan 2009)
7a440960
“ABCDE 80256f39 69791d61
FGHIJ a9d30865 98d7d65d
KLMNO 0ac90d9b 264e5f39
PQRST e9a72a95 a2bd426a
UVWXYZ” 62454574 341eb5df
d3aec5a8
“abcdef 32d10c7b 86c4ef2b
ghijklm 8cf96570 05f8080b
nopqrstuv ca04ce37 b041635a
wxyz” f2a19d84 ae7e0c60
240d3a89 cf17bf1a
6254ae8d
“a1b2c3d4 df7175ff 034c641b
e5f6g7h8 3caef476 b987efd9
i9j10” c05c9bf0 1c6a7322
648e186e 1c9da9de
a119cce7 d649fddf
a0986905
“A1B2C3D4 28b083ed 76c68675
E5F6G7H8 69254a83 83b9e4ef
I9J10” 04f287ae aa6bdd35
fe8d9129 0f6d5270
5625beb0 31c567db
5a557a32
“1020304050 2604f26a 5677b63d
60708090100 46188584 33afb999
100908070 8f54ce3b 63e98e6d
60504030 411bac69 9705d49f
20101098765 c31c140d 327b90e7
4321123456 ca2e1216
78910” 4
111 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Table3. Message digest for certain messages
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Integration of Rule Based Expert Systems and Case
Based Reasoning in an Acute Bacterial Meningitis
Clinical Decision Support System
Mariana Maceiras Cabrera Ernesto Ocampo Edye
Departamento de Informática y Ciencias de la Departamento de Informática y Ciencias de la
Computación Computación
Universidad Católica del Uruguay Universidad Católica del Uruguay
Montevideo, Uruguay Montevideo, Uruguay
.
Abstract—This article presents the results of the research carried This research is focused on the development of an Acute
out on the development of a medical diagnostic system applied to Bacterial Meningitis MDS integrating Case Based Reasoning
the Acute Bacterial Meningitis, using the Case Based Reasoning (hereafter CBR) with Rule Based Expert Systems (hereafter
methodology. The research was focused on the implementation of RBR).
the adaptation stage, from the integration of Case Based
Reasoning and Rule Based Expert Systems. In this adaptation This document is organized in the following way: in
stage we use a higher level RBC that stores and allows reutilizing Section 2 is presented the case study used in the research:
change experiences, combined with a classic rule-based inference Diagnosis of Acute Bacterial Meningitis, followed in section 3
engine. In order to take into account the most evident clinical by the presentation of the addressed problem. Section 4
situation, a pre-diagnosis stage is implemented using a rule
engine that, given an evident situation, emits the corresponding
presents a brief summary of state-of-the-art techniques and
diagnosis and avoids the complete process. referred applications. Afterwards, section 5 describes the
proposed computer solution in detail, while in section 6 is
Keywords-Case-Based Reasoning; Medical Diagnosis; Expert described the composition of the knowledge base, which
Systems; Acute Bacterial Meningitis represents reality and is used in simulations, and the way it
was built. Section 7 presents the results of the system’s
performance assessment and section 8 outlines the conclusions
I. INTRODUCTION of this work.
Clinical Decision Support Systems (hereafter CDSSs) have II. CASE STUDY: DIAGNOSIS OF ACUTE BACTERIAL
become paramount in the medical environment, providing MENINGITIS
support to the clinical expert in the diagnosing process, mainly
assisting the analysis and synthesis of bulk information in little The medical diagnosing task consists in “translating” the
time. These systems enable the reduction of the intrinsic degree relation between a set of signs and symptoms found in a
of uncertainty that any decision-making process in the medical patient, and the possible pathologies she or he might suffer
environment entails. [1], [2] from. [3], [1] This work addresses the medical diagnosis of
the disease known as Acute Bacterial Meningitis (hereafter
Several aspects related to a specific kind of CDSS, Medical ABM).
Diagnostic Systems (hereafter MDSs), will be addressed
throughout this document. From a set of symptoms and signs ABM is an infectious disease caused by bacteria that attack
shown by the patient, the MDS are capable of suggesting a set the meninges (a membrane system that covers the Central
of differential diagnoses, possibly with a certainty degree Nervous System – brain and spinal cord). The meningitis is an
associated to each of them. [1], [3] inflammatory process of the leptomeninges (pia mater and
arachnoid mater), and the cerebrospinal fluid (CSF) contained
While developing MDSs, either in their construction and inside them [5]. The Meningitis poses a great threat to optical,
application, several problems arise: 1) Representation of the facial and auditory nerves, and other kinds of neurologic
domain knowledge; 2) Processing of such knowledge; 3) sequels.
Obtaining results that are accurate enough and 4) Presentation
of the results to the user, and their explanation. Each of these In this research we have taken as a reference a subset of the
problems is solved in a particular way, depending on the typical signs and symptoms of this disease – a total of 81
method applied to the development of the system. In this symptoms have been considered - which are: convulsions,
document is presented an alternative way to solve these depression, fever, hypertense fontanelle, nape stiffness, trunk
problems using Case Based Reasoning. [1], [4] stiffness, skin purpuric syndrome, vomits, somnolence,
112 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
irritability, facial paralysis, cervical adenopathies, The rule based reasoning is one of the most used techniques
haemocultivation with bacteria, bacteria in CSF, muscular [16], [17], and in recent years case-based reasoning has gained
hypotonicity, cloudy aspect CSF, clear aspect CSF, much importance in this field [18], [19], [20], [4].
hydrocephaly in ecography, tumors in tomography, among
many others. [6], [7] B. Case-Based Reasoning (CBR)
Case Based Reasoning is a methodology for problem
The combination of the presence of several of these solving that focuses on the reutilization of past experience. It is
symptoms allows identifying the disease under study, but it based on solutions, information and knowledge available in
could also be indicative, to a greater or lesser extent, of other similar problems previously solved. The implementation of this
diseases identified as “differential diagnoses”. The relevant method requires the existence of a knowledge base that
differential diagnoses in the case of ABM are: Acute Viral contains the cases that contain previous experience. It is also
Meningitis, Tuberculous Meningitis, Encephalitis, Brain necessary to count with a mechanism that allows us to infer, for
Abscess, Meningism, Meningeal reaction to nearby a new case, the solution based on foregoing cases. CBR’s basic
inflammation, Meningeal Haemorrhage and Brain Tumor. [7]. principle is that similar problems will have similar solutions.
The task of the doctor is to diagnose accurately the disease [19], [20], [21], [4], [18]
within these alternatives.
In CBR the structures handled are known as cases. A case
III. PROBLEM OUTLINE represents a problem situation. It could be more formally
This research focuses on the development of an MDS for defined as contextualized knowledge that represents past
the disease known as ABM, integrating the CBR and RBR experience, and implies an important teaching to accomplish
methods, making special emphasis on the implementation of the objectives of a rational agent. [19], [20], [18], [22]
the adaptation of the CBR cycle stage. This stage is In Figure 1 is presented the CBR cycle. It can be observed
fundamental in a case-based MDS, given that once recovered the presence of 4 sub-processes or stages (“Retrieve”, “Reuse”,
the most similar case, it is highly probable to find differences in “Revise” and “Retain”) that explicate the operation of this
the descriptions of the problems. This could then indicate methodology.
differences in the solutions, which entails a possible error in the
diagnosis.
On the other hand, the adaptation capabilities of a CBR
system applied to a CDSS allow its usage by not so
experienced physicians. This fosters its utility as a support tool
also in the medical learning and practice.
IV. THEORETICAL FRAMEWORK
A. Clinical Decision Support Systems
A Clinical Decision Support System (CDSS) is an expert
system that provides support to certain reasoning tasks, in the
context of a clinical decision. [1]
A medical diagnostic decision support system – MDS - is
defined as a computer algorithm aimed at assisting the doctor
in one or more stages that comprise the medical diagnostic
process. [1]
One of the first CDSS that appeared in the marketplace is Figure 1. CBR Cycle
MYCIN, a system developed at Stanford University. This
system was designed to diagnose and recommend treatments First, when a new problem is posed to the system, it
for blood infections. [8], [9] proceeds to identify correctly the current case, and retrieve the
Other systems of interest are: IMAGECREEK – image most similar cases from the knowledge base.
analysis - [10], CADI – medicine students’ tutorial - [11], Once the cases have been obtained, the information and
SCINA – diagnosis of cardiac diseases - [12], CARE- knowledge contained in them is reused to solve the new
PARTNER – diagnosis and treatment scheduling of stem cells problem, from which a solution to propose to the user is
transplant - [13], AUGUSTE – diagnosis and scheduling of reached. This stage might possibly entail an adaptation process
Alzheimer treatment - [14], T-IDDM – treatment scheduling of of the solution of the retrieved case, considering the differences
diabetes - [15]. between both problematic situations.
There are many computer techniques and methods – Also, these systems include a stage of proposed solution
especially in the Artificial Intelligence field – that have been assessment, and a later learning from this case. Then, after the
applied in the last 30 years or more in the development of reusage stage it proceeds to the proposed solution revision
systems of this nature: pattern analysis, neural networks, expert process, which is assessed and repaired if it fails, obtaining a
systems and Bayesian networks, among others. confirmed or revised solution.
113 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
After that, the learning stage takes place. In this stage the Deja Vu [32], is a system dedicated to the automatic
information and knowledge obtained with the solution of the programming of machinery in a control plant. In this
new case is retained, so as to be useful to solve future system, its adaptation guided retrieval approach is
problems. This stage implicates a modification of the fundamental.
knowledge base, or of the methods to retrieve and reuse cases
from such base. D. Rule Based Expert Systems (RBR)
An RBR system has an inference engine that uses rules to
These systems progressively enlarge their knowledge bases reach conclusions based on premises and a certain context
with new cases while new problems are solved, gradually state. These systems are comprised of three main parts:
widening the range of situations in which the system is inference engine, rule base, and working memory (auxiliary
applicable and the accuracy of the proposed solutions. Once space in the memory to be used during the reasoning). [16],
finalized the retention the cycle can start all over again. [19], [17]
[20]
An example of a rule based CDSS is MYCIN, one of the
Regarding the reutilization or adaptation methods – main first systems to appear in the marketplace. This system counts
objectives of this research -, it is necessary to consider [19]: with a knowledge base composed by IF-THEN rules, which are
Determine the differences between the new case and associated a certainty factor. Through these factors it can be
the previous case recovered. given each rule different weights so as to determine their
influence. [8], [9]
Determine the aspects of previous cases that can be
reutilized without changes. Another example of a rule based CDSS is CASEY, which
is an hybrid system that combines CBR and RBR. CASEY is a
Determine how to adapt a solution of a previous case medical diagnostic system that offers a causal explanation of
based on the differences observed with the new case. the patient’s pathology. It is applied to heart failures diagnose.
The adaptation arises from: 1) the description of the new This system outstands by its use of rules, in both retrieving and
problem, 2) the solution provided for a similar problem, and reusing steps. [33]
optionally 3) the description of the corresponding similar V. PROPOSED SOLUTION
problem. [18]
A hybrid system has been developed, that combines CBR
The adaptation process must take into account two key and RBR methodologies: SEDMAS-RBC-Adapt, whose
issues: 1) How to identify what has to be adapted (identifying operation is depicted in Figure 2.
the adaptation need) and 2) how to choose an appropriate
method to carry out a required adaptation. This last issue also
implicates: identifying what must be changed, finding an
appropriate adaptation technique or strategy, and choosing
among a set of adequate strategies. [18], [4].
The most relevant adaptation techniques can be classified in
three main groups: a) Substitution methods: null adaptation,
re-instantiation, parameter adjustment, adjustment based on a
fuzzy decision structure, local search, query memory,
specialized search, case based substitution, restriction based
substitution, user feedback based substitution; b)
Transformation methods: common-sense transformation,
model guided transformation and c) Other methods:
adaptation and repairment with specific purposes, derivational
replay, general framework for adaptations through substitution,
case based adaptation, hierarchy based adaptation,
compositional adaptation. [18], [20], [23], [22], [21], [24], [4],
[25].
Each of these techniques or methods differ in complexity
taking into account two issues: what is to be changed in the
previous solution, and how will that change be achieved [21],
[26]
C. CBR Systems Examples
DIAL [27], [28], [29], [30], [31], is a planning system
for the recovery from disasters that stands out for its
adaptation stage, that uses a combination of CBR and
rules. It also implements the adaptation guided
retrieval. Figure 2. Explanatory image of the developed system
114 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
This system receives as input the symptoms shown by the receives as input the differences between the present symptoms
patient. This framework is initially applied to the pre-diagnosis in the retrieved case and the current one, as well as the solution
stage. This stage uses a set of basic diagnostic rules so as to offered by the recovered case. From this input, this process
identify situations in which a certain set of symptoms indicate offers an adapted solution to the new problem. This solution is
the presence of a disease without a shadow of a doubt. the same as the one of the retrieved case, to which some
changes were made according to the differences between the
The aim of this stage is to increase the system’s problematic situations.
performance – it by-passes the complete inference process.
Moreover, this is a key stage when the knowledge base is Firstly, a CBR process is carried out to obtain the desired
incipient – extremely small – and there is no representative solution, reusing previous change knowledge. For this purpose
evidence of any of the differential diagnoses in it. adaptation cases are used. These consist of two components:
description of the case and its solution.
The pre-diagnosis rules have the following structure,
As shown in Figure 3, the difference between the
IF CSF presents Cloudy aspect THEN ABM descriptions of the problematic situation, applied to an S1
in which it is stated that, if the patient presents “cloudy solution produces an S2 solution. This solution is the product
aspect in the cerebrospinal fluid”, then the unquestionable of adapting S1 according to difference ΔP.
existence of Acute Bacterial Meningitis can be affirmed.
The pre-diagnostic rules, as well as the adaptation rules
presented later, were developed based on a knowledge
engineering work carried out with a physician experienced in
the diagnosis of these kinds of diseases.
If the pre-diagnosis stage is successful, then there is a
solution to the problem which is presented to the user, offering
the possibility of repairing the new case.
Once repaired, successful or not, the possibility of retaining
the solved problematic situation as a new case in the system is
offered. In this way is implemented the learning process of the
diagnostic experience.
If the case is not obvious or simple, the pre-diagnosis is not
applicable and the system proceeds to process the case using
the CBR method. Figure 3. Adaptation cases structure
A new query is built from the symptoms of the new case,
and the most similar cases are retrieved from the case base – The adaptation case description consists of two parts:
the system retrieves the three most similar cases, and the user a) a set of attributes that represent the differences between
can select the one she or he believes more adequate to be the problem descriptions (ΔP). There is one attribute for each
reutilized-. considered symptom, which will indicate the following
The case representation used consists of three components: situations: 1) equality between the occurrence of symptoms –
a description of the problematic situation, the solution to such with respect to the presence or absence of the symptom in the
situation, and an indicator of success of the solution. The current and the retrieved case (present or absent in both cases) -
description is comprised of logical attributes (true or false), that ; 2) presence of the symptom in the current case and absence in
indicate the presence or absence of each of the symptoms the previous; and finally, 3) absence of the symptom in the
considered for the diagnosis. The solution is represented by a current case and presence in the retrieved one.
group of three diagnoses: a primary one and two differential b) the solution to the retrieved case, consisting of three
ones. possible diagnoses (S1).
The retrieval is implemented by the nearest neighbor The solution (S2) to the adaptation case consists of the three
method using the 81 considered symptoms. The local similarity diagnoses to which the system arrived once made the pertinent
between symptoms is determined by equality. changes to the original solution.
After the retrieval, the system evaluates how similar the Following a CBR standard process, the first step in the
current case and the selected one are; if the similarity degree adaptation process consists in the retrieval of the most similar
exceeds a certain threshold, then the solution to the retrieved adaptation case. For this purpose is used the nearest neighbor
case can be reused directly. Otherwise, an adaptation process method, with equality functions for the calculation of local
that integrates CBR with RBR has to be applied. similarity. This similarity function only considers those
This process consists of a set of rules that allow carrying symptoms that, through the process of adaptation knowledge
out transformations to the solutions. Also, using CBR it is survey carried out with the physicians, were considered as
possible to store and reuse change experiences. The process more influential or important to the adaptation process. The
115 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
symptoms that were not considered for this process are not The next step is the retention stage, in which the user is
relevant enough to have an impact in the diagnosis. asked if she or he wishes to retain the new case. Moreover, if
an adaptation process has been performed, then the user is
Once the most similar adaptation case has been selected, given the option of storing the adaptation knowledge, which
the associated similarity degree is assessed, once again, based will be available after the new experience. A new adaptation
on a set threshold. If this threshold is exceeded, the reutilization case can be learned either from the reutilization of a previous
of the adaptation case is made directly – a null adaptation is adaptation case or from the successive application of rules.
done – the adapted solution coincides with the solution of the This type of adaptation process allows, at the beginning, the
retrieved case. This is due to the fact that the application adaptation to be mostly based in the set of surveyed rules.
context of the retrieved experience and the current context are However, when the system gains experience the reusability of
virtually identical. If the retrieved adaptation case is not similar adaptation cases increases, and the system turns less dependent
enough, the system proceeds to adapt based in rules contained on the rule set.
in the knowledge base. As well as in the case of the pre-
diagnosis stage rules, the domain problem was investigated If the system makes any mistakes when adapting, the user
with the collaboration of an expert doctor. Two main categories has the possibility of indicating such situation and specifying
of situations have been determined: the correct solution. In this way, the system is able to learn a
new adaptation case from the user himself. If this user is a
a) Situations in which the differential presence of a physician with vast experience in this field, this feature is key
symptom allows excluding a certain differential to the learning of new experiences.
diagnosis. For instance,
IF Koch’s Bacillus THEN Discard ABM VI. GENERATION OF THE DIAGNOSIS CASE BASE
One of the main points in the construction of the system
This rule indicates that if the current case (P2) shows consists in obtaining a set of diagnoses large enough – to test
“Koch’s Bacillus”, but the retrieved case (P1) did not, the performance of the system – relevant, and representative of
the differential diagnosis of Acute Bacterial real world population.
Meningitis is discarded. If such diagnosis was given
in the solution of the previous case (S1) then it can be In previous works of the research group (development of a
removed, and it will not be contained in the solution diagnostic expert system of Acute Bacterial Meningitis based
of the current case. (S2). on a Bayesian inference engine [7]), a database of occurrence
b) Situations in which, under the intuition of a given probabilities of the disease under study (ABM) and its
diagnosis and given a difference in the present differential diagnoses, based on 10000 medical visits, was
symptoms another diagnosis is sensed; or its certainty available. Likewise, for each disease the corresponding
level is modified. For example, probability of presenting the symptoms under study is
available.
IF ABM primary AND Crystalline aspect THEN
ABM Differential Based on these diseases and symptoms probabilities and
using the Montecarlo method (assuming normal and uniform
This rule indicates that if the solution to the previous distributions in each case) several simulations were performed
case (S1) presents ABM as a primary diagnosis, but the to obtain a set of virtual “cases”.
cases differ in that the current (P2) presents
“Crystalline aspect in the cerebrospinal fluid” and the This initial set was subject to several steps of revision: in
previous case (P1) does not, then in the current first place, the cases with clearly abnormal or extremely
solution (S2) such disease has to be considered as a improbable situations were removed; and then each of the cases
differential diagnosis, not primary. was validated by medical experts. The result is an initial
“cured” database that is representative of the real population –
The different rules modify the facts in the working memory it is based on probabilities extracted from the population, and
of the inference engine in such way that at the end of the the combinations obtained have been validated by field experts.
processing the set of resulting diagnoses is retained in it.
Besides the validation process, the expert provided the real
The successive application of rules has a correspondence to diagnosis for each of the cases in the base, for which it can be
each of the transformations or adaptations carried out on the considered as a set of real cases.
original solution, when there is a difference between
symptoms. VII. ASSESSMENT OF THE SYSTEM’S PERFORMANCE
Once the solution has been obtained (either by the The system’s performance has been assessed considering
reutilization of the diagnostic case or by its adaptation), it is three indicators: accuracy, robustness before partial
presented to the user and the system requires her judgment or information, and learning capacity.
assessment – success or failure – as for the correction of the A. Accuracy
suggested diagnosis. If the case fails, the system offers the user
the possibility of repairing it, setting the appropriate diagnosis In the context of this research, accuracy has been defined as
(primary and differentials) – the case is then assumed as the amount of successful hits the system reached. For this
successful-. experiment, a 30-case sample extraction was made (size of the
sample calculated according to the population size, based on
116 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
traditional statistic methods of experiment design). Each case C. Learning capacity
was then presented to the system to obtain the corresponding This metric indicates the system’s capacity of incorporating
diagnosis. This diagnosis was later compared to the one knowledge. SEDMAS-RBC-Adapt has important learning
provided by the expert to determine whether the system hit or capacities. As any CBR system, there is the possibility of
failed. This experiment shown an accuracy of 97%. retaining new diagnosis cases in the retention stage. Besides,
B. Robustness in presence of partial information this system has the additional ability to learn new adaptation
cases, retaining change experiences.
This metric intends to assess the system’s flexibility when
faced to the heterogeneity of the expert users. The potential VIII. CONCLUSIONS
users of systems of this kind (physicians, students, other
The integration of the CBR and RBR methods in the
specialists in the field of human health) use to have different
development of a medical diagnosis CDSS has proven to be
levels of experience, which implies different capacities in the
appropriate and convenient. The approach developed not only
detection of the symptoms involved. Some symptoms are more
presents excellent results for its precision, robustness before
difficult to identify than others, and this identification is often
partial information and learning capacity, but it is also an
related with the experience of the physician. That is to say, in
example of how to take full advantage of each of the used
some cases it may happen that the medical user, with short
techniques.
experience in this specific field, might not be able to detect the
presence of a certain symptom, even when it is present. The Through the survey of a set of basic rules of pre-diagnosis,
robustness indicator intends to assess how the system behaves the simplest cases to diagnose are detected. Such survey is
when faced to different levels of experience. fairly simple as it is knowledge that doctors handle constantly.
For less simple cases in which the diagnosis is not so direct,
The experiment consists in performing a series of cycles,
the system allows resorting to past experience.
measuring in each one the accuracy of the system, - in the way
described above -, but removing from the knowledge base In this way, we can take the best out of CBR and RBR.
some symptoms in each cycle – symptoms that have been
identified as those whose detection is more dependent on the Also, the approach of the adaptation process is paramount
experience of the physician-. The removal of symptoms implies for the system to learn to adapt throughout the time, being able
that a certain symptom that used to be considered present is to gather knowledge indirectly from the medical expert. Such
now considered absent, which would coincide with the case approach allows reutilizing the system’s adaptation
entry done by a less experienced doctor. knowledge, while maintaining the capacity to adapt in
exceptional cases.
REFERENCES
[1] R.A. Miller and A. Geissbuhler. "Clinical diagnostic decision support
systems - an overview.". [1], pp. 3-34, 1996.
[2] P. Szolovits. "Uncertainty and decisions in medical informatics.".
Methods of Information in Medicine, [34], pp. 111-121, 1995.
[3] A. Chohra, N. Kanaoui, and K. Madani. "Hybrid intelligent diagnosis
systems.". 2007. IEEE.
[4] D.B. Leake. "CBR in context: the present and future.". [1], pp. 1-35,
1996.
[5] C.G. Prober. "Infecciones del sistema nervioso central.". vol. 15[169],
pp. 885-894, 1997. McGraw-Hill Interamericana.
[6] C. Maurente, E. Ocampo Edye, S. Herrera Delgado, and D. Rodriguez
Figure 4. Results obtained in the experiment of robustness before partial Garcia. "Evaluation of case based reasoning for clinical decision support
information systems applied to acute meningitis diagnose.". 2008.
[7] E. Ocampo Edye, S. Herrera Delgado, F. Machado Piriz, and A. Ruibal
In Figure 4 we can see how the accuracy degrades as we Laborda. "Diseño y construcción de sistema experto de diagnóstico de
meningitis aguda supurada, basado en máquina de inferencia
remove symptoms. However, it is important to notice that, even bayesiana.". 2002.
though the accuracy of the system decreases, it keeps a [8] B.G. Buchanan and E.H. Shortliffe. "Rule-based expert systems: The
constant accuracy of 80% after the fifth iteration, which implies MYCIN experiments of the Standford heuristic programming project".
an interesting and desirable result. This behavior has been 1984.
compared to previous versions developed in the research group [9] E.H. Shortliffe. "Mycin: a rule-based computer program for advising
using other techniques of intelligent systems (Bayesian physicians regarding antimicrobial therapy selection". 1975.
inference, CBR without adaptation and without RBR), having [10] M. Grimnes and A. Aamodt. "A two layer case based reasoning
obtained better results. [6], [7] architecture for medical image understanding". Proceedings of
EWCBR'96, 1996.
[11] KD. Fenstermacher. "An Application of Case-based Instruction in
Medical Domains". AAAI Press/MIT Press, 1996.
117 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
[12] M. Haddad, KP. Adlassnig, and G. Porenta. "Feasibility analysis of a [23] Wilke Wolfgang and Bergmann Ralph. "Techniques and knowledge
case-based reasoning system for automated detection of coronary heart used for adaptation during case-Based problem solving". 1998.
disease from myocardial scintigrams". Artificial Intelligence in [24] S. Manzoni, F. Sartori, and G. Vizzari. "Towards a general framework
Medicine, vol. 9[1], pp. 61-78, 1997. for substitutional adaptation in case-based reasoning". 2005.
[13] I. Bichindaritz, E. Kansu, and Sullivan KM. "Case-Based Reasoning in [25] R. Bergmann and W. Wilke. "On the role of abstraction in case-based
CARE-PARTNER: Gathering Evidence for Evidence-Based Medical reasoning.". 1996.
Practice". 1998.
[26] P. Cunningham, D. Finn, and S. Slattery. "Knowledge engineering
[14] C. Marling and P. Whitehouse. "Case-based reasoning in the Care of requirements in derivational analogy.". Topics in Case-Based Reasoning,
Alzheimer's Disease Patients". 2001. pp. 234-245, 1994.
[15] S. Montani, R. Bellazzi, L. Portinale, and M. Stefanelli. "A Multi-Modal [27] D.B. Leake, A. Kinley, and D.C. Wilson. "Acquiring case adaptation
Reasoning Methodology for Managing IDDM Patients". International knowledge: a hybrid approach.". AAAI Press/MIT Press, 1996.
Journal of Medical Informatics, 2002.
[28] D.B. Leake, A. Kinley, and D.C. Wilson. "Multistrategy learning to
[16] E. Friedman-Hill. "Jess in action.". 2003. Manning. apply cases for case-based reasoning.". AAAI Press/MIT Press, 1996.
[17] E. Morales and L.E. Sucar. "Representación de conocimiento.". 1999. [29] D.B. Leake, A. Kinley, and D.C. Wilson. "Linking adaptation and
[18] J. Kolodner. "Case-based reasoning.". 1993. Morgan Kaufmann similarity learning.". 1996.
Publishers, Inc. [30] D.B. Leake. "Combining rules and cases to learn case adaptation.".
[19] A. Aamodt and E. Plaza. "Case-based reasoning: foundational issues, 1995.
methodological variations, and system approaches.". AI [31] D.B. Leake. "Becoming an expert case-based reasoner: learning to adapt
Communications, vol. 7[1], pp. 39-59, 1994. prior cases.". 1995.
[20] S.K. Pal and S.C.K. Shiu. "Foundations of soft case-based reasoning.". [32] K. Doi, Y. Kamigane, M. Ito, and Y. Uehara. "Software generation
2004. John Wiley & Sons, Inc. system for mill operation". Hitachi Review, vol. 42[4], pp. 175-178,
[21] R. Lopez de Mantaras, D. McSherry, D. Bridge, D.B. Leake, B. Smyth, 1993.
S. Craw, B. Faltings, M.L. Maher, M.T. Cox, K. Forbus, M. Keane, A. [33] P. Koton. "Using experience in learning and problem solving.". 1989.
Aamodt, and I. Watson. "Retrieval, reuse, revision, and retention in case-
based reasoning.". 2006.
[22] I. Watson. "Applying case-based reasoning: techniques for enterprise
systems.". 1997. Morgan Kaufmann Publishers, *Inc.
118 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Formal Concept Analysis for Information Retrieval
Abderrahim El Qadi*,‡ Driss Aboutajdine‡ Yassine Ennouary‡
‡ ‡
*Department of Computer Science GSCM-LRIT, Unité associée au GSCM-LRIT, Unité associée au CNRST,
EST, University of Moulay Ismaïl, CNRST, URAC 29, Faculty of Science, URAC 29, Faculty of Science, University
Meknes, Morocco University of Mohammed V, of Mohammed V,
elqadi_a@yahoo.com Rabat-Agdal, Morocco Rabat-Agdal, Morocco
Abstract—In this paper we describe a mechanism to improve less interesting. This redundancy of information due to is made
Information Retrieval (IR) on the web. The method is based on that the properties are showed as independent, and the possible
Formal Concepts Analysis (FCA) that it is makes semantical existence of the semantic relations between the properties is not
relations during the queries, and allows a reorganizing, in the taken into account. On the other hand, the semantic relations
shape of a lattice of concepts, the answers provided by a search between the properties can exist. So it proves to be useful to
engine. We proposed for the IR an incremental algorithm based use ontology or taxonomy of field. In order to make correspond
on Galois lattice. This algorithm allows a formal clustering of the as well as possible the relevance of the user and the relevance
data sources, and the results which it turns over are classified by of the system, we used a stage of query reformulation. The
order of relevance. The control of relevance is exploited in initial query is treated like a test to find information. The
clustering, we improved the result by using ontology in field of documents initially presented are examined and a formulation
image processing, and reformulating the user queries which
improved of the query is built from ontology, in hope to find
make it possible to give more relevant documents.
more relevant documents. The query reformulation is done in
Keywords-FCA; Galois lattice; IR; Ontology; Query two principal stages: to find terms; extension to the initial
Reformulation) query, and to add these terms in the new query.
The paper is organized as follows: Section 2 introduces the
I. INTRODUCTION Ontology (taxonomy), and in section 3 we presented the kinds
The World Wide Web (WWW) has become the most of query reformulation used. In section 4 we illustrate FCA.
popular information source for people today. One of the major Section 5, report the procedures and describe the system
problems to be solved is related to the efficient access to this implemented for building concepts lattice and IR, and we show
information that is retrieved by human actors or robots the results obtained. Section 6 offers some conclusions related
(agents). Our work falls under this context. We propose a to this work.
solution to seek the relevant sources within sight of a query
user. The data sources which we consider are the research tasks II. ONTOLOGY
of laboratory LRIT1 of the Faculty of Science Rabat Morocco. The concept of ontology became a key component in a
Facing such a problem, we seek in this work to analyze more whole range of application calling upon knowledge. Ontology
precisely inter-connected themes between the authors, the is defined like the conceptualization of the objects recognized
publications and sets of themes of LRIT laboratory. like existing in a field, their properties and relations
There was some interest in the use of lattices for connecting them. Their structure makes it possible to represent
information retrieval by [1, 2]. These systems build the concept knowledge of a field under a data-processing format in order
lattice associated with a document/term relation and then to make them usable for various applications.
employ various methods to access the relevant information, An ontology can be constructed in two ways: domain-
including the possibility for the user to search only those terms dependent or generic. Generic ontologies are definitions of
that has specified. Building the Galois (concept) lattice can be concepts in general; such as WordNet [5], which defines the
considered as a conceptual clustering method since it results in meaning and interrelationships of English words. A domain-
a concept hierarchy [3, 4]. This form of clustering constitutes dependent ontology generally provides concepts in a specific
one of the motivations of the concept’s application lattice for domain, which focuses on the knowledge in the limited area,
IR. This comes owing to the fact that clustering out of lattice while generic ontologies provide concepts more
makes it possible to combine research by query and research by comprehensively.
navigation.
The implementation of ontology is generally taxonomy of
Consequently the concept lattice generated from unit objects concepts and corresponding relations [6]. In ontology,
represents, in an exhaustive way, the possible clustering concepts are the fundamental units for specification, and
between these objects. Each cluster corresponding to a concept. provide a foundation for information description. In general,
Some of these concepts bring redundant information and are each concept has three basic components: terms, attributes and
relations. Terms are the names used to refer to a specific
1
http://www.fsr.ac.ma/GSCM/id19.htm
119 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
concept, and can include a set of synonyms that specify the approach is that users are often required to place a bound on
same concepts. Attributes are features of a concept that the number of documents retrieved as their query may be too
describe the concept in more detail. Finally relations are used general, and hence, retrieve too many irrelevant documents.
to represent relationships among different concepts and to
provide a general structure to the ontology. Figure 1 is an An alternative approach that has gained in interest recently
example of a simple ontology about the organization of is to apply the FCAs [9]. The advantage of this approach is
concepts used in image processing. that users can refine their query by browsing through well
defined clusters in the form of a graph. The principal idea of
In this ontology example, every node is a concept defined the re-injection of relevance is to select the important terms
in image processing field. For each concept, there should be a belonging to the documents considered to be relevant by user,
set of attributes used to specify the corresponding concept. For and to reinforce importance of these terms in the new query
instance, for the concept “Segmentation”, the attributes of formulation. This method has double advantage a simplicity
name and type are shown, and help explain the corresponding run for user who s' doesn’t occupy of the details of
concept. reformulation, and a better control of the process of research
by increasing the weight of the important terms and by
The relations between different concepts are also decreasing that of the non important terms. In the case of
simplified. In a real application, several types of concept automatic reformulation, user does’ not intervene. Extension
relations are used. of the query can be carried out to leave a thesaurus or an
ontology, which defines the relations between the various
Image processing terms and makes it possible to select new terms to be added to
the initial query.
Rehaussement Transmission Compression Segmentation
In this work, to hold account the semantic relations
- name
between the concepts; we used an ontology presented in figure
- type 1. This ontology will be used for query reformulation, which
Segmentation by
Seuillage
Filter approach (area) we used two types of modes respectively reflect reformulation
Histogram
Segmentation by Segmentation by by generalization and reformulation by specialization:
approach (border) clustering or
No seuillage
Equalization Linear linear - Reformulation by generalization: consists in locating the
histogram filter filter Detection of
contour top c of T (tree) corresponding to one of the properties
appearing in the query. Then traversing the way of c until the
Pass-bas
filter Pass-haut Pass-band
KNN
filter
SNN
filter Canny root and adding to the query the tops met.
filter filter filter
- Reformulation by specialization: consists also in locating
Figure 1. An example of ontology in field of image processing the top c corresponding to one of the properties appearing in
the query. But this time traversing under T which has like root
c and then extracting all the tops, sheets from under tree and
III. QUERY REFORMULATION adding them to the query.
However, it is often difficult for user to formulate exact his
requirement in information. Consequently, the results which IV. FORMAL CONCEPT ANALYSIS
the SRI provides them are not appropriate. To find relevant
information by using the only initial query is always difficult, Among the mathematical theories recently found with
and this because of inaccuracy of the query. In order to make important applications in computer science, lattice theory has
correspond as well as possible the relevance of the user and the a specific place for data organization, information engineering,
relevance of the system, a stage of query reformulation is often and data mining. It may be considered as the mathematical
used. tool that unifies data and knowledge or information retrieval
[2, 3, 10, 11, 12].
The query reformulation can be interactive or automatic
[7]. The interactive query reformulation is the strategy of A. Formal Context
reformulation of the most popular query. It is named
commonly re-injection of the relevance or "relevance A context is a triplet (G, M, I) which G and M are units
feedback". In a cycle of re-injection of relevance, one presents and I ⊆ G×M is a relationℜ. The elements of G are called the
to user a list of documents considered to be relevant by the objects, M a finite set of elements called properties and R is a
system like answer to the initial query. After examined them, binary relation defined between G and M. The notation gIm
user indicates how he considers them relevant. This system means that "formal object g verifies property m in relation R".
allows users to expand or refine their query through the use of Example: Let G = {s1, s2, s3, s4}, be a set of source and M
relevance feedback [8]. The typical scenario begins with a user = {p1, p2, p3, p4, p5} be a set of the properties (table 1). The
indicating which documents retrieved from a query are most mathematical structure which is used to describe formally this
relevant. The system then tries to extract terms which co-exist table is called a formal context (or briefly a context) [4, 9, 10,
in these documents and adds them to the original query to 13].
retrieve more documents. This process can be repeated as
many times as desired. However, the limitation of this
120 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
B. Galois (Concept) lattice V. IMPLEMENTATION AND RESULTS
The family of the entire formal context ordinate by the
relation ≥ is called Galois (or concepts) lattice. It consists in A. Building concepts lattice
associating properties with sources, and organizing the sources (i) Data sources
according to these properties. Each such pair (G, M) is called a The data used for test were extracted from titles of a subset
formal concept (or briefly a concept) of the given context. The of documents from the LRIT (Research laboratory in computer
set G is called the extent, the set M the intent of the concept science and Telecommunications). The laboratory LRIT
(G, M). Between the concepts of a given context there is a consists of several research groups, their activities are based
natural hierarchical order, the "subconcept-superconcept" on the interaction between the contents (audio, image, text,
relation. In general, a concept c is a subconcept of a concept d video. Consequently there are several publications in several
(and d is called a superconcept of c) if the extent of c is a fields (image processing, signal processing, data mining, data
subset of the extent of d (or equivalently: if the intent of c is a engineering, information retrieval …), it there has also other
superset of the intent of d). An efficient algorithm for publications heterogeneous, which requires a system that
extracting the set of all concepts of a given context is Ganter's makes it possible to determine the interconnections between
`Next Closure' algorithm [11]. The algorithm can efficiently work of the various members to make emerge and understand
compute all concepts C (G, M, I) from a context (G,M,I). The the orientations of principal research in the team and also in
concept lattice corresponds to the formal context of table 1 is laboratory LRIT, and thus to provide explanations on the
presented in figure 2 (Hasse diagram). A line diagram consists research task.
of circles, lines names of all objects and all attributes of the
given context. The circles represent the concepts. For efficient purposes, the data that was extracted from the
documents were stored in XML database file; which is used
for the extraction of the properties or to post the results with
TABLE I. AN EXAMPLE OF FORMAL CONTEXT the users. Each publication (or source) is represented by two
G×M p1 P2 p3 p4 p5 tags <document...> and </document>. It has an attribute
s1 1 1 0 1 0 number with value 1 and two child elements author and title,
s2 0 0 1 0 1 there is also the possibility to add of extra information
s3 1 1 1 0 1 concerning the publications in these XML file. Figure 3 shows
s4 1 1 1 1 0 the listing of document 1, 2 and 3 from data set. Each
document in the collection has a corresponding title, author’s,
and but not necessarily an abstract.
<?xml version=″1.0″ encoding=″ UTF-8″?>
<documents>
<document nom=″dcument_1″>
<auteur>Amine A</auteur>
<auteur>Elakadi A></auteur>
<auteur>Rziza M</auteur>
<auteur>Aboutajdine D</auteur>
<title>ga-svm and mutual information based frequency feature selection for
face recognition</titre>
</document>
<document nom=″dcument_2″>
<auteur>El Fkihi S</auteur>
<auteur>Daoudi M></auteur>
<auteur>Aboutajdine D</auteur>
<title>the mixture of k-optimal-spanning-trees based probability
approximation: application to skin detection image and vision computing</titre>
</document>
<document nom=″dcument_3″>
Figure 2. Galois2 lattice corresponding to formal context (table 1) <auteur>El Hassouni M</auteur>
<auteur>Cherifi H></auteur>
<auteur>Aboutajdine D</auteur>
The lattice provides a visualization of the concept <title>hos-based image sequence noise renoval</titre>
relationships that are implicit in the data. The attributes p1, p2, </document>
and p3 describe a subconcept of the concept of the propriety
p3. The extent of this subconcept consists of the properties p1,
Figure 3. XML file
and p2.
Document term frequency was computed for each term
extracted after applying the following techniques from the
“classic blueprint for automatic indexing” [14]:
2
It is a lattice of heritage which a node inherits the properties the nodes which subsume
them and the individuals of the nodes which are subsumed to him
121 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
− Segmentation: this is the process of selecting distinct
terms from the individual documents in the collection. For our
Concepts Re-Build Update
implementations, we broke hyphenated terms into their Context and Lattice with
Lattice.txt
constituents, as well as ignoring punctuation and case. Lattice Query
− Stop wording: this is the process of removing
frequently occurring terms such as ‘is’, and ‘of’ which make
little discrimination between documents. Figure 5. Query Insertion
(ii) Lattice construction
The problem of calculation of the concepts lattice from a (iv) Document Ranking
formal context made object of several research tasks. Many Documents were ranked based on the number of edges
algorithms have been proposed for generating the Galois away from the concept in which the query had mapped in the
lattice from a binary relation [2, 4, 9, 13, 15, 16]. A augmented lattice. Formal concepts in the lattice were
comparison of the performances of the algorithms proposed considered for ranking only when its attribute set intersects
for the generation of the lattices and their corresponding Hasse with those of the query and that it is neither the supremum nor
diagrams are presented in algorithm Add Intent [10]. Among the infimum. Documents that were equally distant from the
the algorithms proposed, some have specificity to perform an query would achieve the same rank. The lattice traversal
incremental building of concepts lattices starting from formal implementation was simply done using a breadth-first search.
contexts [2, 4, 10]. This aspect is particularly interesting for
the application of concepts lattices to our problem of research B. Discussion of Results
in the publications of the LRIT. Indeed, the queries users can − In first let us assume that we have an example of
be inserted in the lattice representing the documents (or context for 5 documents and 6 properties (table 2). The lattice
publications). Following this insertion, it is possible to corresponding is presented in the figure 6.
determine the most relevant documents guarantors with the
criteria expressed by user in his query.
TABLE II. AN EXAMPLE OF FORMAL CONTEXT FROM DATABASE SOURCE
Our procedure for implementation FCA’s, concept lattice
M\G d1 d2 d3 d4 d5
involves three stages : constructing a matrix of document-term
image 1 1 1 0 0
relations using data stored from XML file ; concept extraction detection 0 0 0 1 1
using Add Intent algorithm; and partial ordering of formal Segmentation 1 1 0 1 0
concepts. The resulting internal data structure is ten written Classification 0 0 1 0 0
out to a file where it may be later used for querying (figure 4). vision 0 0 0 0 1
probability 1 0 0 1 0
Term The Galois lattice establishes a clustering of the data
Docs. Segmen- Stop - Context.
frequency sources. Each formal concept of the lattice represents in fact a
xml tation word txt
class. For example, the concept ({d1, d4}, {probability,
segmentation}) puts in the same class the data sources d1 and
Extract
Recovery
d4. These two sources are in this class because they are the
Concepts Build Concepts and only ones to share the properties probability, segmentation.
Lattice relation of of the
Lattice.txt The lattice establishes also a hierarchy between the classes.
subsumptions
context One can read that there formal concept is ({d1, d4},
{probability, segmentation}) more particular than ({d1, d2,
Figure 4. Process of building of concepts lattice d4}, {segmentation}) in the direction where it has more
properties it is what results in the fact that {d1, d2} included
(iii) Query Insertion {d1, d2, d4}. We note that this hierarchy is with double
Our idea is to consider the user query as a new source directions, i.e., the lattice is a kind of “tree structure” with two
whose properties are the terms of the query. This source will “roots”: ({d1, d2, d3, d4, d5}, {}) and ({}, {classification,
be added to the lattice Li produced by I first objects of the detection, image, probability, segmentation, vision}) that we
context in ways incremental using the algorithm Add Intent will respectively call top and bottom. Displacement towards
[10]. This addition will transform the lattice Li; new nodes top corresponds to generalization and that towards bottom to
will be added and others will be modified. It is necessary all specialization.
the same to notice the appearance of a new concept which has
like intention exactly the terms of the query.
122 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
1 - d5
It is noticed that, indeed, the turned over sources are all
relevant in the direction where they have at least a property
desired by the user and which they were provided in
decreasing order relevance.
- In second step, we built the concept lattice (figure 8)
based on a formal context of 7 documents containing the
properties used in ontology presented in figure 1.
In query insertion, let us suppose that we formulate the
following query: `detection of contour' (shortened by dc.).
This query will be represented as follows:
P= ({Query}, {dc.}). It can be connected with a new Query
Figure 6. Trellis of concepts associated to table 2 source which has the properties: `detection of contour'. The
lattice, after addition of the query, will change like below
Let us suppose that the user formulates the following figure 9.
query: detection, segmentation. This query will be represented
as follows: ({Query}, {detection, segmentation}). It can be
connected with a new query source which has the properties:
detection, segmentation. And the lattice, after the addition of
the query, will change as it is illustrated in the figure 7.
Figure 8. Concept lattice associated to 7 documents containing the concepts
used in figure 1
Figure 7. Trellis of concepts after query insertion
In our example (figure 7), the user query will generate the
following answers: On the first level of the node ({Query, d4},
{detection, segmentation}), the extension part comprises the
d4 source. What means that d4 is the most relevant source for
this query in the lattice and thus one will attribute him the
rank=0. On the second level, the provided answers will be the
d1 sources, d2, and d5 and attributes their consequently the
rank=1. The d1 sources and d2 in common have with the
query the property `segmentation', whereas the source d5
division the property `detection' with the query. And thus the
result will be presented like continuation:
0 - d4
Figure 9. Concept lattice after query insertion
1 - d1
1 - d2
123 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
In our example (figure 9), the user query will generate the
following answers:
On the first level of the node ({Query, d3, d4, d7}, {dc.}),
the extension part comprises the d3 sources, d4, and d7. What
means that the latter are the most relevant sources for this
query in the lattice and thus one their will attribute their
rank=0. On the second level there is the top concept
consequently it is necessary to stop. The result will be
presented like continuation:
0-d3
0-d4
0-d7
On the other hand, using the semantic relations between
the properties in ontology in field of image processing (figure
2). The query reformulation by specialization gives: {dc. Figure 11. Concept lattice after query reformulation by generalization
Canny filter}. After the insertion of this new query in the
lattice (figure 10) the result turning over is as follows: We saw that this ontology enables us to take into account
the semantic relations between the properties. Moreover, the
0-d3 possibility of making a research by specialization or
0-d4 generalization has an advantage of having more relevant
sources to add to the initial result. The choice of reformulation
0-d7 depends on the user. It is a reformulation by generalization,
the added source can be very general and consequently not
1-d1
very precise compared to what is wished by user. And it is a
Query reformulation by generalization gives: {dc. reformulation by specialization; the added source can cover
segmentation by approach (border) (shortened by SAF), with many details only one small portion of what user asks.
segmentation}. After the insertion of this one in the lattice one But in no case an added source cannot be completely isolated
has like result: compared to what is wished by user.
0-d3
VI. CONCLUSION
0-d4
1-d7 We presented in this paper an proposal in the Information
Retrieval (IR), using Formal Concepts Analysis (FCA). The
The result did not change because the properties of the new concept lattice evolves during the process of IR; the user is not
query (after reformulation by generalization) division the same more restricted with a static structure calculated once for all,
sources (figure 11). and the system is domain independent and operates without
resorting to thesauruses or other predefined sets of indexing
terms. The system implemented allows the user to navigate in
hierarchy of concepts to research the relevance documents to
his query. To perform the IR we established ontology in field
of image processing that enables us to take into account the
semantic relations between the properties. Moreover, we also
improved the results by using two steps for query
reformulation, reformulation by generalization, and by
specialization, which show the more relevant documents
returned by system to the user query.
REFERENCES
[1] Carpineto, C., Romano, G., “Information retrieval through hybrid
navigation of lattice representations”, International Journal of Human-
Computer Studies, 1996,45, pp. 553-578.
[2] Carpineto, C., Romano, G., “Exploiting the Potential of Concept Lattices
for Information Retrieval with CREDO”, Journal of Universal Computer
Science, vol. 10, n°8, 2004, pp. 985-1013.
[3] Emmanuel Nauer et Yannick Toussaint, « Classication dynamique par
treillis de concepts pour la recherche d'information sur le web », LORIA
Figure 10. Concept lattice after query reformulation by specialization
124 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
– UMR 7503. B.P. 239, F-54506 Vandoeuvre-les-Nancy cedex, France, [11] Messai, N., M.-D. Devignes, A. Napoli, et M. Smail-Tabbone,
2008. « Correction et complétude d’un algorithme de recherche d’information
[4] Godin, R., Missaoui, R., Alaoui H., « Incremental Concept Formation par treillis de concepts », RNTI, Inria-00187116, version1, 2007.
Algorithms Based on Galois Lattices.», Computation Intelligence 11, [12] Cole R. and Eklund P., “Browsing semi-structured web texts using
1995, pp. 246-267. formal concept analysis”. In Proceedings of the 9th International
[5] B. McBride, A. Seaborne, and J. Carroll. Jena, “tutorial for release 1.4.0. Conference on Conceptual Structures, Stanford, CA, USA, 2001, pp.
Technical report”, Hewlett-Packard Laboratories, Bristol, UK, 2002. 319-332,.
[6] Ontologies: Silver Bullet for Knowledge Management and Electronic [13] Wille, R., “Restructuring Lattice Theory: An Approach Based on
Commerce. Springer-Verlag, 2001. Hierarchies of Concepts”, In Rival, I., ed.: Ordered Sets. Reidel,
Dordrecht–Boston, 1982, pp. 445–470.
[7] Lobna HLAOUA, « Reformulation de Requêtes par Réinjection de
Pertinence dans les Documents Semi-Structurés », Thèse Doctorat de [14] Salton, G., “A blueprint for automatic indexing”, SIGIR Forum 31(1):
l'Université Paul Sabatier, Toulouse, 2007. 23-36, 1997. URL: http//doi.acm.org/10.1145/263868.263871.
[8] Salton, G., Fox, E. and Voorhees E., “Advanced feedback methods in [15] Messai, N., M.-D. Devignes, A. Napoli, et M. Smail-Tabbone, “
information retrieval”, Journal of the American Society for Information Querying a bioinformatic data sources registry with concept lattices”, In
Science 36:, 1985, pp. 200-210. G. S. F. Dau, M.-L. Mugnier (Ed.), ICCS'05, LNAI 2005, pp. 323-336.
Springer-Verlag Berlin Heidelberg.
[9] Ganter, B., Wille, R., “Formal Concept Analysis”, Mathematical
Foundations. Springer-Verlag, Berlin Heidelberg New York, 1999. [16] Norris, E. “An Algorithm for Computing the Maximal Rectangles in a
Binary Relation”, Revue Roumaine de Mathematiques Pures et
[10] Merwe, D. V. D., S. A. Obiedkov, et D. G. Kourie, “AddIntent: A New Appliquées 23, 1978, pp. 243–250.
Incremental Algorithm for Constructing Concept Lattices”, In P. W.
Eklund (Ed.), ICFCA Concept Lattices, Sydney, Australia, February 23-
26, Proceedings, Volume 2961, Springer, 2004, pp. 372-385.
125 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Creating A Model HTTP Server Program
Using java
Bala Dhandayuthapani Veerasamy
Department of Computing
Mekelle University
Mekelle, Ethiopia
Abstract— HTTP Server is a computer programs that serves Servers on behalf of the user. Web documents are written in a
webpage content to clients. A webpage is a document or resource text formatting language called Hypertext Mark-up Language
of information that is suitable for the World Wide Web and can (HTML) [3]. The HTML is used to create hypertext
be accessed through a web browser and displayed on a computer documents that can be accessed on the web. Basically it is a
screen. This information is usually in HTML format, and may set of ‘mark-up’ tags or codes inserted in a web file that tells
provide navigation to other webpage’s via hypertext links. the web browser how to display a web page for the user.
WebPages may be retrieved from a local computer or from a
remote HTTP Server. WebPages are requested and served from The Hypertext Transfer Protocol (HTTP) [2] is a set of
HTTP Servers using Hypertext Transfer Protocol (HTTP). rules for exchanging hypermedia documents on the World
WebPages may consist of files of static or dynamic text stored Wide Web. Hypermedia [3] simply combines hypertext and
within the HTTP Server's file system. Client-side scripting can multimedia. Multimedia is any mixture of text, graphics, art,
make WebPages more responsive to user input once in the client sound, animation and video with links and tools that let the
browser. This paper encompasses the creation of HTTP server person navigate, interact, and communicate with the computer.
program using java language, which is basically supporting for The web browser is an HTTP client, sending requests to server
HTML and JavaScript. machines. When a user requests for a file through web
browser by typing a Uniform Resource Locator then browser
Keywords- HTTP Server; Hyper Text Trasfer Protocol; Hyper sends HTTP request that the destination server machine
Text Markup Language; WebPage; receives the request and, after any necessary processing, the
requested file is returned to the client web browser.
I. INTRODUCTION
The URL [3] is a compact string representation for a
The Client-server [1] architecture is based on the principle resource available on the Internet. URLs contain all of the
where the ‘client’ program installed on the user’s computer information needed for the client to find and retrieve a HTML
communicates with the ‘server’ program installed on the host document such as protocol, domain name or IP address and
computer to exchange information through the network. The webpage. Every HTTP Server has an IP address and usually a
client program is loaded on the PCs of users hooked to the domain name, e.g. www.mu.edu.et. Server software runs
Internet where as the server program is loaded on to the ‘host’ exclusively on server machines, handling the storage and
that may be located at a remote place. The concept of client- transmission of documents. In contrast, client software such
server computing has particular importance on the Internet as, Netscape, Internet Explorer, etc. runs on the end-user’s
because most of the programs are built using this design. The computer accessing, translating and displaying documents.
most important concepts and underlying mechanism that make
the web works are Web Browser, Universal Resource Locators A server is a computer system that is accessed by other
(URLs)[2], Hypertext Transfer Protocol (HTTP)[2], Hypertext computers and / or workstations at remote locations. A web
Mark-up Language (HTML) [3] and Web Server [3]. server [3] is a software or program that process HTML
documents for viewing by web browsers such as IIS, Apache
Web browsers [3] are the applications that allow a user to HTTP Server [5] and WebLogic Server [6]. The server enables
view WebPages from a computer connected to the Internet. users on other sites to access document and it sends the
Web browser can read files created with WebPages and document requested back to the requesting client. The client
display them to the user. There are two important graphical interprets and presents the document. The client is responsible
browsers available for browsing WebPages [3], are Microsoft for document presentation. The language that web clients and
Internet Explorer [3] and Netscape Navigator. Most of the servers use to communicate with each other is called the
browser can be downloaded at without charge. The basic HTTP. All web clients and servers must be able to
capabilities of a browser are to retrieve documents from the communicate HTTP in order to send and receive hypermedia
web, jump to links specified in the retrieved document, save, documents. For this reason, web servers are often called HTTP
print the retrieved documents, find text on the document, and servers.
send information over the Internet. A web browser is a client
program that uses the HTTP to make requests to the HTTP
126 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
II. HYPER TEXT MARKUP LANGUAGE There are several number of tags avail for developing a
The term HTML is an acronym that stands for Hypertext webpage. Here few important tags are discussed. Headings are
Markup Language [3]. You can apply this markup language to used to divide sections of text, like in any document. They are
your pages to display text, images, sound and movie files, and used to designate the logical hierarchy of the HTML
almost any other type of electronic information. You use the document. There are currently six levels of headings defined.
language to format documents and link them together, The number indicates heading levels (<H1> to <H6>). Each
regardless of the type of computer with which the file was heading will have closing tags. When it displayed in a
originally created. browser, will display differently. We can use paragraph tag
<P> to indicate a paragraph. A browser ignores any
HTML is written as plain text that any Web browser can indentations or blank lines in the source text. Without a <P>
read. The software does this by identifying specific elements tag, the document becomes one large paragraph. The
of a document (such as heading, body, and footer), and then paragraph tag indicates a plain text paragraph. However, many
defining the way those elements should behave. These browsers expect the opening paragraph tag to indicate the end
elements, called tags, are created by the World Wide Web of a paragraph. The horizontal rule tag, <HR>, has no closing
Consortium (W3C). Most HTML tags come in pairs. You use tag and no text associated with it. The <HR> tag creates a
the first tag in the pair (for example, <html>) to tell the horizontal line on the page. It is excellent for visually
computer to start applying the format. The second tag (for separating sections on your web page. It is often seen at the
example, </html>) requires a slash in front of the tag name end of text on web pages and before the address information.
that tells the computer to stop applying the format. The first For example see program 1.
tag is usually referred to by the name within the bracket (for
example, HTML). You can refer to the second tag as the end, Program 1. HTML program
or the close, tag (for example, end HTML).
<!—index.html -->
HTML is a plain text file and needs a simple text editor to <HTML>
create the tags. However, it is important that all HTML
documents have the extension .html or .htm which is three / <HEAD>
four letter extension. Windows ‘Notepad’ may be used as an <TITLE>HTTP Server</TITLE>
editor for writing the HTML files. Every HTML document
should contain certain standard HTML tags. These tags </HEAD>
describe the overall structure of a document, identify the
document to browsers and provide simple information about <BODY>
the document. These structure tags do not affect its appearance <HR>
and they are essential for tools that interpret HTML files.
These structural elements are: <H1 align=center> Welcome to HTTP
Server</H1>
<HTML>
<H3 align=center> Using Java</H3>
<HEAD>
<HR>
<TITLE>Creating model HTTP Server</TITLE>
<H5 align=center> Developed by Bala
</HEAD>
Dhandayuthapani Veerasamy</H5>
<BODY>
</BODY>
. . . the document . . .
</HTML>
</BODY>
The above program can be saved as index.html, it can be
</HTML> produced the result on local computer web browser as the
The <HTML> tag indicates that the content of the file is following Fig.1.
in the HTML language. All the text and commands in a
document should go within the beginning and ending HTML
tags. The <HEAD> tag specifies a limited amount of
bibliographic data related to the document. It is the second
item in the document. This element does not contain any text
that displays in the browser except for the title that appears in
the title bar of the browser. Each HTML document needs a
title to describe the content of the document. The title is used
by the browser to display it in its title bar. The <BODY> tag
follows the HEAD tag. It contains all parts of the document to
be displayed in the browser.
Figure 1. Output of the HTML
127 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
III. USING JAVA NETWORKING CONCEPT ServerSocket takes the port number to listen for
TCP and IP [2] together manage the flow of data, both in connections on and the amount of time to listen. The most
and out, over a network. TCP is a standard protocol with STD important method in the ServerSocket class is accept(). This
number 7. TCP is described by RFC 793 – Transmission method blocks the calling thread until a connection is
Control Protocol. Its status is standard, and in practice, every received. A Socket object is returned representing this new
TCP/IP implementation that is not used exclusively for routing connection. The close() method tells the operating system to
will include TCP. TCP provides considerably more facilities stop listening for requests on the socket.
for applications than UDP. Specifically, this includes error
recovery, flow control, and reliability. TCP is a connection- IV. A MODEL HTTP SERVER PROGRAM
oriented protocol, unlike UDP, which is connectionless. UDP There are several HTTP Servers are available to access the
is a standard protocol with STD number 6. UDP is described webpage such as Personal Web Server, Internet Information
by RFC 768 – User Datagram Protocol. Its status is standard Server, Apache HTTP Server and etc. The program 2 created
and almost every TCP/IP implementation intended for small listening 8080 port to access WebPages on present working
data units transfer or those which can afford to lose a little folder. Obviously present folder will act like www folder. The
amount of data will include UDP. program 1 will have to store in the present folder, where we
saving the following HTTPServer.java program. This HTTP
The Java networking package [7], also known as java.net, Server program will support HTML and JavaScript, because
contains classes that allow you to perform a wide range of both of them can be default understood by any web browser
network communications. The networking package includes without having additional library.
specific support for URLs, TCP sockets, IP addresses, and Program 2. HTTP Server
UDP sockets. The Java networking classes make it easy and
straightforward to implement client/server Internet solutions in //HttpServer.java
Java. The java networking package included web interface import java.net.*;
classes, raw network interface classes and extension classes. import java.io.*;
This study focuses on raw networking class such as Socket, import java.util.*;
ServerSocket, DatagramSocket, and InetAddress. These
classes are providing access to plain, bare-bones networking class HttpRequest
facilities. {
private Socket ClientConn;
A Socket class is the Java representation of a TCP public HttpRequest(Socket ClientConn) throws Exception
connection. When a Socket is created, a connection is opened {
to the specified destination. Stream objects can be obtained to this.ClientConn=ClientConn;
send and receive data to the other end. Socket class }
constructors take two arguments: the name (or IP address) of public void process() throws Exception
the host to connect to, and the port number on that host to {
connect to. The host name can be given as either a String or as DataInputStream din=new
an InetAddress object. In either case, the port number is DataInputStream(ClientConn.getInputStream());
specified as an integer. OutputStream ot=ClientConn.getOutputStream();
BufferedOutputStream out=new
Socket( String host, int port ) BufferedOutputStream(ot);
Here, Socket constructor takes the hostname as IP address
of the destination machine and port as the destination port to String request=din.readLine().trim();
StringTokenizer st=new StringTokenizer(request);
contact. The two most important methods in the Socket class
String header=st.nextToken();
are getInputStream() and getOutputStream(), which return
stream objects that can be used to communicate through the if(header.equals("GET"))
socket. A close() method is provided to tell the underlying {
operating system to terminate the connection. String name=st.nextToken();
A ServerSocket class represents a listening TCP int len=name.length();
connection. Once an incoming connection is requested, the String fileName=name.substring(1,len);
ServerSocket object returns a Socket object representing the
connection. In normal use, another thread is spawned to FileInputStream fin=null;
boolean fileExist=true;
handle the connection. The ServerSocket object is then free to
listen for the next connection request. The constructors for this if(fileName.equals(""))
class take as an argument the local port number to listen to for fileName="index.html";
connection requests and it also takes the maximum time to
wait for a connection as a second argument. try
ServerSocket( int port,int count ) {
128 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
fin=new FileInputStream(fileName);
} ServerSocket soc=new ServerSocket(80);
catch(Exception ex) { fileExist=false; }
while(true)
String ServerLine="Simple HTTP Server"; {
String StatusLine=null; Socket inSoc=soc.accept();
String ContentTypeLine=null; HttpRequest request=new HttpRequest(inSoc);
String ContentLengthLine=null; request.process();
String ContentBody=null; }
}
if(fileExist) }
{
StatusLine="HTTP/1.0 200 OK"; V. SETTING UP CONNECTIONS
ContentTypeLine="Content-type: When most people think of a firewall [8], they think of a
text/html"; device that resides on the network and controls the traffic that
passes between network segments. However, firewalls can
ContentLengthLine="Content-Length: "+ also be implemented on systems themselves, such as with
(new Integer(fin.available()).toString()); Microsoft Internet Connection Firewall (ICF), in which case
they are known as host-based firewalls. Fundamentally, both
types of firewalls have the same objective: to provide a
int temp=0;
byte[] buffer = new byte[1024] ; method of enforcing an access control policy. Indeed, at the
int bytes = 0 ; simplest definition, firewalls are nothing more than access
while ((bytes = fin.read(buffer)) != -1 ) control policy enforcement points. Firewalls enable you to
{ define an access control requirement and ensure that only
out.write(buffer, 0, bytes); traffic or data that meets that requirement can traverse the
for(int iCount=0;iCount<bytes;iCount++) firewall or access the protected system. Firewalls need to be
{ able to manage and control network traffic, authenticate
temp=buffer[iCount]; access, act as an intermediary, protect resources, record and
} report on events. The first and most fundamental functionality
} that all firewalls must perform is to manage and control the
fin.close(); network traffic that is allowed to access the protected network
} or host. Firewalls typically do so by inspecting the packets and
else monitoring the connections that are being made, and then
{ filtering connections based on the packet-inspection results
StatusLine = "HTTP/1.0 200 OK"; and connections that are observed. While executing HTTP
ContentTypeLine="Content-type: server program first time, the firewall security alert will appear
text/html"; in that we should unblock. This is shown in the figure 2.
ContentBody = "<HTML>"
+ "<HEAD><TITLE>404 Not Found</TITLE> </HEAD>"
+ "<BODY><center><h1>404: The file "
+ fileName +" is not found" + "</h1></center> </BODY>
</HTML>" ;
out.write(ContentBody.getBytes());
}
out.close();
ClientConn.close();
} Figure 2. Firewall Settings
}
} To compile the HTTP server program, use javac
class HttpServer HttpServer.java and to execute the HTTP server program at
{ the server computer, use java HttpServer. After executing the
public static void main(String args[]) throws Exception program one console window will appear, this is ready to
{ share web document. We can press Ctrl+C to close the HTTP
System.out.println("\n\n\t\tThe HTTP Server is running.."); server. (See figure 3).
System.out.println("\n\n\t\tStop server using Ctrl + C");
129 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
VII. CONCLUSION
HTTP Server is a computer programs, written by using java
language. It just serves HTML WebPages with static content
only to any client over any network. It also support for client-
side scripting that can make WebPages more receptive to user
input on the client browser; the client side scripting can mostly
understood by any web browsers. This paper emphasizes how
to create a new HTTP server using java language. It brought
basic idea, wherein researchers may enhance further more
developments to support for the already available server side
Figure 3. Running HTTP Server scripting or may think on producing library to support
innovative server side scripting in future.
VI. RESULT AND DISCUSSION
REFERENCES
As you know, this model HTTP Server is created using java. [1] Steve Steinke, Network Tutorial, Fifth Edition, CMP Books, 2003
First of all we needed to install JDK 1.4 [9] or later version [2] Libor Dostálek, Alena Kabelová, Understanding TCP/IP,Packt
and JCreator 3.50 [10], before compiling and executing this Publishing, 2006.
program. This program complied and executed by JCreator [3] Deidre Hayes, Sams Teach Yourself HTML in 10 Minutes, Fourth
3.50 software, which is the tool enabling us to write program, Edition, Sams, 2006.
compile and execute easily. HTTPServer.java has been tested [4] Palmer W. Agnew, Anne S. Kellerman, Fundamentals of Multimedia,
IGI Global, 2008.
only in window operating system under the Local Area
[5] Apache HTTP Server, http://www.apache.org/
Network in Mekelle University. Here I have used a HTTP
[6] BEA WebLogic Server, http://www.bea.com/
server with the IP of http://10.128.40.145; hence we should
[7] Elliotte Rusty Harold, Java Network Programming, O' Reilly, 2000.
access WebPages only through this IP. The following figure 4
[8] Wes Noonan, Ido Dubrawsky, Firewall Fundamentals, Cisco Press, 2006
is a sample result, which I got on network client. This server
brought the index.html page by default. The index.html has [9] Herbert Schildt, Java™ 2: The Complete Reference, Fifth Edition,
McGraw-Hill, 2002.
been stored in the present working folder of HTTP server. [10] JCreator, http://www.jcreator.com/
I hope it will also support other operating system well,
because java is a platform independent language. Hyper Text AUTHORS PROFILE
Transfer Protocol views any webpage only by using port Bala Dhandayuthapani Veerasamy was
number 80. So this HTTP server created listening on port born in Tamil Nadu, India in the year 1979. The
number 80. Hence it can capable to access HTML and author was awarded his first masters degree M.S
JavaScript basically, which are defiantly understood by any in Information Technology from Bharathidasan
University in 2002 and his second masters degree
web browsers. HTML provides creating static WebPages and M.Tech in Information Technology from
JavaScript allowed to have client side scripting for any user Allahabad Agricultural Institute of Deemed
input validations. This HTTP Server would not support for University in 2005. He has published more than
fifteen peer reviewed technical papers on various
any server side scripting. In future, I do have a plan to develop international journals and conferences. He has
own library to support for the server side scripting. managed as technical chairperson of an
international conference. He has an active participation as a program
committee member as well as an editorial review board member in
international conferences. He is also a member of an editorial review board in
international journals.
He has offered courses to Computer Science and Engineering,
Information Systems and Technology, since 8 years in the academic field. His
academic career started in reputed engineering colleges in India. At present,
he is working as a Lecturer in the Department of Computing, College of
Engineering, Mekelle University, Ethiopia. His teaching interest focuses on
Parallel and Distributed Computing, Object Oriented Programming, Web
Technologies and Multimedia Systems. His research interest includes Parallel
and Distributed Computing, Multimedia and Wireless Computing. He has
prepared teaching material for various courses that he has handled. At present,
his textbook on “An Introduction to Parallel and Distributed Computing
through java” is under review and is expected to be published shortly. He has
the life membership of ISTE (Indian Society of Technical Education).
Figure 4. Trial Testing
130 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Evaluation of E-Learners Behaviour using Different
Fuzzy Clustering Models: A Comparative Study
Mofreh A. Hogo*
Dept. of Electrical Engineering Technology, Higher Institution of Technology Benha, Benha University, Egypt.
.
Abstract— This paper introduces an evaluation methodologies for [2]; these methods allow the discovery of new knowledge
the e-learners’ behaviour that will be a feedback to the decision based on students’ usage data. Subgroup discovery is a
makers in e-learning system. Learner's profile plays a crucial specific method for discovering descriptive rules [4,5].
role in the evaluation process to improve the e-learning process
performance. The work focuses on the clustering of the e-learners II. SURVEY ON E-LEARNING
based on their behaviour into specific categories that represent
the learner's profiles. The learners' classes named as regular, A. Clustering
workers, casual, bad, and absent. The work may answer the
question of how to return bad students to be regular ones. The The first application of clustering methods in e-learning [6], a
work presented the use of different fuzzy clustering techniques as network-based testing and diagnostic system was
fuzzy c-means and kernelized fuzzy c-means to find the learners’ implemented. It entails a multiple-criteria test-sheet-generating
categories and predict their profiles. The paper presents the main problem and a dynamic programming approach to generate
phases as data description, preparation, features selection, and
test sheets. The proposed approach employs fuzzy logic theory
the experiments design using different fuzzy clustering models.
Analysis of the obtained results and comparison with the real to determine the difficulty levels of test items according to the
world behavior of those learners proved that there is a match learning status and personal features of each student, and then
with percentage of 78%. Fuzzy clustering reflects the learners’ applies an Artificial Neural Network model: Fuzzy Adaptive
behavior more than crisp clustering. Comparison between FCM Resonance Theory (Fuzzy ART) [7] to cluster the test items
and KFCM proved that the KFCM is much better than FCM in into groups, as well as dynamic programming [8] for test sheet
predicting the learners’ behaviour.
construction. In [9], an in-depth study describing the usability
Keywords: E-Learning, Learner Profile, Fuzzy C-Means of Artificial Neural Networks and, more specifically, of
Clustering, Kernelized FCM. Kohonen’s Self-Organizing Maps (SOM) [10] for the
evaluation of students in a tutorial supervisor (TS) system, as
I. INTRODUCTION well as the ability of a fuzzy TS to adapt question difficulty in
the evaluation process, was carried out. An investigation on
The development of web-based education systems have grown
how Data Mining techniques could be successfully
exponentially in the last years [1]. These systems accumulate a
incorporated to e-learning environments, and how this could
great deal of information; which is very valuable in analyzing
improve the learning processes was presented in [11]. Here,
students’ behavior and assisting teachers in the detection of
data clustering is suggested as a means to promote group-
possible errors, shortcomings and improvements. However,
based collaborative learning and to provide incremental
due to the vast quantities of data these systems can generate
student diagnosis. In [12], user actions associated to students’
daily, it is very difficult to manage manually, and authors
Web usage were gathered and preprocessed as part of a Data
demand tools which assist them in this task, preferably on a
Mining process. The Expectation Maximization (EM)
continuous basis. The use of data mining is a promising area in
algorithm was then used to group the users into clusters
the achievement of this objective [2]. In the knowledge
according to their behaviors. These results could be used by
discovery in databases (KDD) process, the data mining step
teachers to provide specialized advice to students belonging to
consists of the automatic extraction of implicit and interesting
each cluster. The simplifying assumption that students
patterns from large data collections. A list of data mining
belonging to each cluster should share Web usage behavior
techniques or tasks includes statistics, clustering,
makes personalization strategies more scalable. The system
classification, outlier detection, association rule mining,
administrators could also benefit from this acquired
sequential pattern mining, text mining, or subgroup discovery,
knowledge by adjusting the e-learning environment they
among others [3]. In recent years, researchers have begun to
manage according to it. The EM algorithm was also the
investigate various data mining methods in order to help
method of choice in [13], where clustering was used to
teachers improve e-learning systems. A review can be seen in
discover user behavior patterns in collaborative activities in e-
.
131 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
learning applications. Some researchers [14-16], propose the learning courses, as well as to assess the relevance of the
use of clustering techniques to group similar course materials: attributes involved. In this approach, several Data Mining
An ontology-based tool, within a Web Semantics framework, methods were applied, including: Naïve Bayes, KNN, MLP
was implemented in [16] with the goal of helping e-learning Neural Network, C4.5, Logistic Regression, and Support
users to find and organize distributed courseware resources. Vector Machines. Rule extraction was also used in [20,21]
An element of this tool was the implementation of the with the emphasis on the discovery of interesting prediction
Bisection K-Means algorithm, used for the grouping of similar rules in student usage information, in order to use them to
learning materials. Kohonen’s well-known SOM algorithm improve adaptive Web courses. Graphical models and
was used in [14] to devise an intelligent searching tool to Bayesian methods have also been used in this context. Some
cluster similar learning material into classes, based on its models for the detection of atypical student behavior were also
semantic similarities. Clustering was proposed in [15] to group referenced in the section reviewing clustering applications
similar learning documents based on their topics and [17,19].
similarities. A Document Index Graph (DIG) for document
C. Fuzzy Logic-Based Methods
representation was introduced, and some classical clustering
algorithms (Hierarchical Agglomerative Clustering, Single These methods have only recently taken their first steps in the
Pass Clustering and k-NN) were implemented. Different e-learning field [26-28]. For example in, [28] a Neurofuzzy
variants of the Generative Topographic Mapping (GTM) model for the evaluation of students in an intelligent tutoring
model, a probabilistic alternative to SOM, were used in [17- system (ITS) was presented. Fuzzy theory was used to
19] for the clustering and visualization of multivariate data measure and transform the interaction between the student and
concerning the behavior of the students of a virtual course. the ITS into linguistic terms. Then, Artificial Neural Networks
More specifically, in [17, 18] a variant of GTM known to were trained to realize fuzzy relations operated with the max–
behave robustly in the presence of atypical data or outliers was min composition. These fuzzy relations represent the
used to successfully identify clusters of students with atypical estimation made by human tutors of the degree of association
learning behaviors. A different variant of GTM for feature between an observed response and a student characteristic. A
relevance determination was used in [19] to rank the available fuzzy group-decision approach to assist users and domain
data features according to their relevance for the definition of experts in the evaluation of educational Web sites was realized
student clusters. in the EWSE system, presented in [27]. In further work by
Hwang and colleagues [26,27], a fuzzy rules-based method for
B. Prediction Techniques eliciting and integrating system management knowledge was
The forecasting of students’ behavior and performance when proposed and served as the basis for the design of an
using e-learning systems bears the potential of facilitating the intelligent management system for monitoring educational
improvement of virtual courses as well as e-learning Web servers. This system is capable of predicting and
environments in general. A methodology to improve the handling possible failures of educational Web servers,
performance of developed courses through adaptation was improving their stability and reliability. It assists students’
presented in [20,21]. Course log-files stored in databases could self-assessment and provides them with suggestions based on
be mined by teachers using evolutionary algorithms to fuzzy reasoning techniques. A two-phase fuzzy mining and
discover important relationships and patterns, with the target learning algorithm was described in [27]. It integrates an
of discovering relationships between students’ knowledge association rule mining algorithm, called Apriori, with fuzzy
levels, e-learning system usage times and students’ scores. A set theory to find embedded information that could be fed back
system for the automatic analysis of user actions in Web-based to teachers for refining or reorganizing the teaching materials
learning environments, which could be used to make and tests. In a second phase, it uses an inductive learning
predictions on future uses of the learning environment, was algorithm of the AQ family: AQR, to find the concept
presented in [22]. It applies a C4.5 DT model for the analysis descriptions indicating the missing concepts during students’
of the data; (Note that this reference could also have been learning. The results of this phase could also be fed back to
included in the section reviewing classification methods). teachers for refining or reorganizing the learning path.
Some studies apply regression methods for prediction [23-25].
The rest of this paper is arranged in the following way:
In [24], a study that aimed to find the sources of error in the
Section 3 describes the problem and goal of the presented
prediction of students’ knowledge behavior was carried out.
work. Section 4 introduces the theoretical review of the
Stepwise regression was applied to assess what metrics help to
applied fuzzy clustering techniques. Section 5 introduces the
explain poor prediction of state exam scores. Linear regression
data sets and the preprocessing. Section 6 introduces the
was applied in [25] to predict whether the student’s next
experiments design and results analysis. Comparison between
response would be correct, and how long he or she would take
the different clustering techniques and the matching with the
to generate that response. In [25], a set of experiments was
real world e-learners behaviour and their marks are introduced
conducted in order to predict the students’ performance in e-
.
132 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
.
in section 7. The concluded suggestions and the categorized into agglomerative (bottom-up) and divisive (top-
recommendations are presented in section 8. Finally, the down). An agglomerative clustering starts with one-point
conclusion is outlined in section 9. (singleton) clusters and recursively merges two or more most
appropriate clusters. A divisive clustering starts with one
III. PROBLEMS AND GOALS cluster of all data points and recursively splits the most
appropriate cluster. The process continues until a stopping
A. Problems criterion (frequently, the requested number k of clusters) is
Web Data Challenges: Straightforward applications of data achieved. Data partitioning algorithms divide data into several
mining techniques on web using data face several challenges, subsets. Because checking all possible subset possibilities may
which make it difficult to use the statistical clustering be computationally very consumptive, certain heuristics are
techniques. Such challenges as following [29,30]: used in the form of iterative optimization. Unlike hierarchical
§ Data collected during users’ navigation are not numeric in methods, in which clusters are not revisited after being
nature as traditional data mining. constructed, relocation algorithms gradually improve clusters.
§ Noise and data incompleteness are important issues for user The next section describes the theoretical review for the
access data and there are no straightforward ways to handle different fuzzy clustering methods used.
them. A. Fuzzy C-Means
§ The structure and content of hypermedia systems, as well as Fuzzy clustering is a widely applied method for obtaining
additional data, like client-side information, registration data, fuzzy models from data. It has been applied successfully in
product-oriented user events, etc., often need to be taken into various fields. In classical cluster analysis each datum must be
consideration. Efficiency and scalability of data mining assigned to exactly one cluster. Fuzzy cluster analysis relaxes
algorithms is another issue of prime importance when this requirement by allowing gradual memberships, thus
mining access data, because of the very large scale of the offering the opportunity to deal with data that belong to more
problems. than one cluster at the same time. Most fuzzy clustering
§ Statistical measures, like frequency of accessed Web algorithms are objective function based. They determine an
documents, are too simple for extracting patterns of optimal classification by minimizing an objective function. In
browsing behavior. objective function based clustering usually each cluster is
§ The users on the Internet are very mobile on the web sites represented by a cluster prototype. This prototype consists of a
based on their needs and wants. cluster centre and maybe some additional information about
the size and the shape of the cluster. The size and shape
The statistical clustering methods are not suitable[29,30]: The parameters determine the extension of the cluster in different
statistical clustering provides only the crisp clustering; which directions of the underlying domain. The degrees of
does not match with the real world needs, (the real world membership to which a given data point belongs to the
applications do not consider the world as two halves black and different clusters are computed from the distances of the data
white only). point to the cluster centers with regard to the size and the
shape of the cluster as stated by the additional prototype
B. Goal of the Work
information. The closer a data point lies to the centre of a
The goal is the introducing of different fuzzy clustering cluster, the higher is its degree of membership to this cluster.
models, especially the kernelized one as well as the selection Hence the problem to divide a dataset into c clusters can be
of the best model that discovers the students’ behavior. stated as the task to minimize the distances of the data points
Another goal is to overcome the challenges of web usage data. to the cluster centers, since, of course, we want to maximize
the degrees of membership. Most analytical fuzzy clustering
IV. THEORETICAL REVIEW OF FUZZY CLUSTERING
algorithms are based on optimization of the basic c-means
One of the main tasks in data mining is the clustering. objective function, or some modification of it. The Fuzzy C-
Clustering is a division of data into groups of similar objects. means (FCM) algorithm proposed by Bezdek [31,32] aims to
Each group, called cluster, consists of objects that are similar find fuzzy partitioning of a given training set, by minimizing
between themselves and dissimilar to objects of other groups. of the basic c-means objective functional as n Eq. (1):
Representing data by fewer clusters necessarily loses certain c n 2
fine details, but achieves simplification. Clustering algorithms, f (u, c1,...., cc ) = ∑ ∑ uij m x j − ci (1)
in general, are divided into two categories: Hierarchical i =1 j =1
Methods (agglomerative algorithms, divisive algorithms), and Where uij values are between 0 and 1; ci is the cluster centre of
Partitioning Methods (probabilistic clustering, k-medoids fuzzy group i, and the parameter m is a weighting exponent on
methods, k-means methods). Hierarchical clustering builds a each fuzzy membership. In FCM, the membership matrix U is
cluster hierarchy; every cluster node contains child clusters; allowed to have not only 0 and 1 but also the elements with
sibling clusters partition the points covered by their common any values between 0 and 1, this matrix satisfying:
parent. Such an approach allows exploring data on different
levels of granularity. Hierarchical clustering methods are
133 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
.
c The cluster center ci can be obtained from:
∑ uij = 1, ∀j = 1,....., n (2) n
i =1 ∑ uij m K ( x j , ci )x j
Fuzzy partitioning is carried out through an iterative ci =
j =1
(8)
optimization of the objective function shown above, with the n
∑ uij m K ( x j , ci )
update of membership uij and the cluster centers ci by: j =1
n The proposed KFCM algorithm is almost identical to the
∑ uij m x j
j =1 FCM, except in step 2, Eq. (8) is used instead of Eq. (4) to
ci = (3)
n update the centers. In step 4, Eq. (7) is used instead of Eq. (3)
∑ uij m
j =1 to update the memberships. The proposed implemented fuzzy
1 clustering including both FCM and KFCM including the post
uij = − 2 /(m−1)
(4) processing technique is shown in Figure 2.
c x j − ci
∑ The implemented algorithm consists of two main parts the first
k =1 x j − ck
is the fuzzy clustering, and the second is the post processing.
The FCM clustering algorithm steps are illustrated in the The output of the first part will be the U matrix and the
following algorithm: cancroids Ci, and the outputs of the second part of the
Step 1: Initialize the membership matrix U with random values algorithm is the fuzzy clusters that consists of the following
between 0 and 1 such that the constraints in Equation (2) are satisfied. areas:
Step 2: Calculate fuzzy cluster centers ci ,i=1,.., c using Equation (3). 1. Area that represent the members in the clusters with high
Step 3: Compute the cost function (objective function) according to
membership values; which called Sure Area (i.e. those
Equation (1). Stop if either it is below a certain tolerance value or its
improvement over previous iteration is below a certain threshold. members are surly belong to that cluster).
Step 4: Compute a new membership matrix U using Equation (4). 2. The overlapping areas that represent the members; which
Step 5: Go to step 2. could not be assigned to any cluster, therefore it will be belong
The iterations stops when the difference between the fuzzy partition to two or more clusters, this overlapping area called the May
matrices in two following iterations is lower than ε . Be Areas. These areas may help in taking a decisions as; the
sure areas says that those elements are surly belong to those
B. Kernelized Fuzzy C-Means Method
clusters, as well as the May Be Areas also says that; those
The kernel methods [33, 34] are one of the most researched elements are not be essential in taking a decisions.
subjects within machine learning community in the recent few Another benefit of the overlapping areas is how to focus on
years and have widely been applied to pattern recognition and the overlapping areas between specific two clusters; that can
function approximation. The main motives of using the kernel help in the study of how to attract the students from one class
methods consist in: (1) inducing a class of robust non- to another.
Euclidean distance measures for the original data space to
derive new objective functions and thus clustering the non- V. DATA SETS AND DESIGN OF THE EXPERIMENT
Euclidean structures in data; (2) enhancing robustness of the
original clustering algorithms to noise and outliers, and (3) A. Log Files Description
still retaining computational simplicity. The algorithm is The data recorded in server logs reflects the access of a Web
realized by modifying the objective function in the site by multiple users. Web server-side data and client-side
conventional fuzzy c-means (FCM) algorithm using a kernel- data constitute the main sources of data for Web usage mining.
induced distance instead of Euclidean distance in the FCM, Web server access logs constitute the most widely used data
and thus the corresponding algorithm is derived and called as because it explicitly records the browsing behavior of site
the kernelized fuzzy c-means (KFCM) algorithm, which is visitors. For this reason, the term Web log mining is
more robust than FCM. Here, the kernel function K(x, c) is sometimes used. Web log mining should not be confused with
taken as the Gaussian radial basic function (GRBF) as follows: Web log analysis. An illustrative example for the log file is
2
− x− c
shown in Table 1.
K ( x, c) = exp , (5)
σ2 B. Data Set Description
Where σ: is an adjustable parameter. The objective function The data sets used in this study were obtained from web
is given by access logs for studying a two courses; the first is for teaching
c n
“data structures”; the course is offered in the second term of
fm = 2 ∑ ∑ uij m (1 − K ( x j , ci )) (6) the second year, at computing science programme at Saint
i =1 j =1 Mary's University. The second course is “Introduction to
The fuzzy membership matrix u can be obtained from: Computing Science and Programming”, for the first year.
(1 − K ( x j , ci ) )−1 /(m−1) Data were collected over 16 weeks (four months). The number
uij = (7) of students in these courses is described in details in Table 2.
∑ (1 − K ( x j , ci ))
c −1 /( m−1)
From the work presented in [29-30], the student's behavior
k =1
through teaching courses it proposed that, visits from
134 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
E – Course Decision Makers (Managers or Administrators)
Data Set Preparation, Cleaning,
Collect Web Usage Data Set Data Set Normalization, and Features Apply fuzzy
(Log Files) Selection Clustering Model
Data Set
Knowledge
Feedback Recommendations Post-Processing Stage
Results Analysis and Evaluation Stage
Figure1. The proposed applied data mining system
Start
Initial Membership Matrix U, error=1.00, m\ =2, tolerance <0.0001
No
Error > tolerance
Yes
Update Matrix U
Uold=Unew
Calculate Center Vi
Calculate Distance Dik
Calculate Membership µik
Error=max µ ik − µ ik
new old
For i=1..k: Is µik>=0.75
No Yes
Element is not surely member of this cluster: Element is surely member of this cluster:
Add the element to the overlapping Add the element to this cluster Ci
Construct all overlapping areas between the different
clusters with members having µik belonging to two or Construct all clusters with sure members
more clusters
Construct all areas (sure areas and overlapping areas)
Stop
Figure2. The proposed Clustering Models (FCM and KFCM) and the Post-processing Technique
5
135 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
-
students attending this course could fall into one of the the web site was public. The public portion consisted of
following five categories: viewing course information, a lab manual, class-notes, class
assignments, and lab assignments. If the users only accessed
1. Regular students: These learners download the current set
the public web site, their IDs would be unknown. Therefore,
of notes. Since they download a limited/current set of notes,
the web users were identified based on their IP address. This
they probably study class-notes on a regular basis.
also made sure that the user privacy was protected. A visit
2. Bad students: These learners download a large set of notes.
from an IP address started when the first request was made
This indicates that they have stayed away from the class-notes
from the IP address. The visit continued as long as the
for a long period of time. They are planning for pretest
consecutive requests from the IP address had sufficiently small
cramming.
delay. The web logs were preprocessed to create an
3. Worker students: These visitors are mostly working on
appropriate representation of each user corresponding to a
class or lab assignments or accessing the discussion board.
visit.
4. Casual students: those students who did not interact with
the course material and if they visit the web course, they do 2. Data Abstraction and Normalization:The abstract
not download any documents. representation of a web user is a critical step; that requires a
5. Absent students: those students who are absent during the good knowledge of the application domain. Previous personal
teaching course. experience with the students in the course suggested that some
Where after many experiments we found that the casual of the students print preliminary notes before a class and an
students and the absent students do not affect the study of updated copy after the class. Some students view the notes on-
learner's profiles because the paper focuses on the learners line on a regular basis. Some students print all the notes
profiles based on number of hits, downloaded documents, time around important dates such as midterm and final
of accessing the web course, and day of accessing the course examinations. In addition, there are many accesses on
materials. Tuesdays and Thursdays, when the in-laboratory assignments
are due. On and Off-campus points of access can also provide
C. Data Preparation and Cleaning some indication of a user's objectives for the visit. Based on
Data quality is one of the fundamental issues in data mining. some of these observations, it was decided to use the
Poor quality of data always leads to poor quality of results. following attributes for representing each visitor:
Sometimes poor quality data results in interesting, or a. On campus/Off campus access (binary values 0 or 1).
unexpected results. Therefore data preparation is a crucial step b. Day time/Night time access: 8 a.m. to 8 p.m. were
before applying data mining algorithms. In this work data considered to be the Daytime (day/night).
preparation; consists of two phases, data cleaning, and data c. Access during lab/class days or non-lab/class days: All the
abstraction and normalization. labs and classes were held on Tuesdays and Thursdays. The
1. Data cleaning process:Data cleaning process consists of visitors on these days are more likely to be Worker Students.
two steps Hits cleaning and Visits cleaning as following: d. Number of hits (decimal values).
e. Number of class-notes downloads (decimal values).
• Hits Cleaning: To remove the hits from search engines and The first three attributes had binary values of 0 or 1. The
other robots. In the second data set; the cleaning step reduced last two values were normalized. The distribution of the
the log files data set by 3.5%, the number of hits was reduced number of hits and the number of class-notes was analyzed for
from 40152 before cleaning to 36005 after cleaning. determining appropriate weight factors. The numbers of hits
• Visits cleaning: To clean the data from those visits, which were set to be in the range [0, 10]. Since the class-notes were
didn't download any class-notes, were eliminated, since these the focus of the clustering, the last variable was assigned
visits correspond to casual visitors. The total visits were 4248; higher importance, where the values ranged from 0 to 15.
after visits cleaning the visits were reduced to 1287 as shown Even though the weight for class-notes seems high, the study
in Table 3. of actual distributions showed that 99% of visits had values
less than 15 for the data set.
• Remove the Casual and absent classes from the data sets:
where those two cleaning steps were not interested in studying VI. EXPERIMENTS DESIGN AND RESULTS ANALYSIS
the learners who did not download any Byte, as well as the
It was possible to classify the learners using the two fuzzy
casual learners.
clustering techniques into five clusters as regular students,
• Data privacy and learners security: It is required for the worker students, bad students, casual students, and absent
identification of web visits; it is done using Linux commands. students using both of fuzzy c-means, kernelized c-means, and
Certain areas of the web site were protected, and the users KFCM Method. But the problem here is that the absent
could only access them using their IDs and passwords. The students were not found in the data sets as the absent student is
activities in the restricted parts of the web site consisted of characterized by the casual interaction with the web course,
submitting a user profile, changing a password, submission of they did not download any materials documentation related to
assignments, viewing the submissions, accessing the the course when they visited the web site.
discussion board, and viewing current class marks. The rest of
136 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Table 1: Common Log File Format .
EXAMPLE: 24.138.46.172--[09/AUG/2001:20:52:07-0300] GET/~CSC226/PROJECT 1.HTMHTTP/1.1 200 4662
FIELD IN THE LOG FILE RECORD VALUE
Client IP address or hostname (if DNS lookups are performed) 24.138.46.172
Client’s username (if a login was required), or “--“ if anonymous --
Access Date 09/AUG/2001
Access Time 20:52:07-0300
HTTP request method (GET, POST, HEAD.) GET
Path of the resource on the Web server (identifying the URL) ~C SC226/PROJECT 1HTM
The protocol used for the transmission (HTTP/1.0, HTTP/1.1) HTTP/1.1
Service status code returned by the server (200 for OK, and 404 not found) 200
Number of bytes transmitted 4662
Table 2: Historical Description of the Courses
Course Description
The initial number of students in the course was 180. The number changed over the course of the semester to
Introduction to Computing
130 to 140 students. Students in the course come from a wide variety of backgrounds, such as Computing
Science and Programming for
Science major hopefuls, students taking the course as a required science course, and students taking the
First year in First term
course as a science or general elective.
Data structures Second year in The number of students in this course was around 25 students and the number changed to 23 students. This
second term course was more difficult but the students were more stable in this course.
Table 3: Data Sets Before and After Preprocessing
Data Set Hits Hits After Cleaning Visits Visits After Cleaning
First Course Data Set 361609 343000 23754 7673
Second Course Data Set 40152 36005 4248 1287
Table 4: FCM Results for 1st Data Set Table 5: KFCM Results for 1st Data Set
Class Behavior of each Class Class Behavior of each Class
Size Size
Name Camp. Time Lab Hits Req. Name Camp. Time Lab Hits Req.
Regular 0.002 0.65 0.34 0.49 0.70 1904 Regular 0.006 0.58 0.44 0.38 0.77 1870
Workers 0.98 0.92 0.66 0.98 1.2 2550 Workers 1 0.78 0.59 1 1.4 2430
Bad 0.67 0.732 0.45 3.23 6 396 Bad 0.7 0.65 0.35 4 6.5 416
R&W 0.22 0.68 0.42 0.53 0.8 2600 R&W 0.3 0.53 0.49 0.8 0.9 2654
R&B 0.3 0.68 0.38 2 2.8 98 R&B 0.39 0.49 0.22 2 3 78
W&B 0.77 0.81 0.53 1.03 1.01 125 W&B 0.82 0.72 0.28 3 0.9 225
R&W&B 0.45 0.72 0.39 0.37 0.99 98 R&W&B 0.47 0.59 0.37 0.3 1.22 78
Table 7: KFCM Results for 2 nd Data Set
Table 6: FCM Results for 2 nd Data Set
Class Behavior of each Class Class Behavior of each Class
Size Size
Name Camp. Time Lab Hits Req. Name Camp. Time Lab Hits Req.
Regular 0.48 0.65 0.31 2.08 3.99 161 Regular 0.42 0.55 0.39 2.3 3 168
Workers 0.54 0.70 0.42 2.40 2.75 1000 Workers 0.64 0.74 0.46 2.7 2.2 977
Bad 0.57 0.55 0.45 2.24 4.84 25 Bad 0.68 0.6 0.33 3.1 4.3 49
R&W 0.54 0.75 0.51 0.90 2.9 54 R&W 0.50 0.75 0.51 0.90 0.58 50
R&B 0.58 0.74 0.51 0.94 4 47 R&B 0.54 0.74 0.51 0.94 0.74 43
W&B - - - - - 0 W&B - - - - - 0
R&W&B - - - - - 0 R&W&B - - - - - 0
137 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
Table 8: Comparison Between Results of FCM and KFCM
Workers Ratio Between Size of Clusters and Real
1904 2600 2550 Results
Regular Data
Model
Set Regular Worker / Bad
98 /Real Real /Real
125 1st FCM 81% 88% 90%
1st KFCM 87.5 91% 93%
Bad 396 nd
2 FCM 88% 90% 96%
2nd KFCM 88.07 90.9% 98%
Table 9: Questionnaires Results for the Second Course
(a) FCM for the 1st data set
Students % Students’ Opinion
Regular 21.739% Accept online only as interactive method
17.39% Refused on-line as a method not usual
1870 2430 30.43% Hybrid of on-line and printed document
2654
21.739% Refused on-line (not used to work with it)
Workers
6.69% Refused on line (due to practical reasons)
78
225
Therefore we have decided to re-cluster the data sets into three
clusters only as regular, workers, and bad students; and
416
neglect both the absent and casual students classes. The results
Bad were good enough to reflect the learner's behaviour on the e-
course. Table 6 and Table 7 show details of clusters for the
(b) KFCM for the 1st data set 2nd data set. Each cluster is characterized by the following:
1. The number of Bad Students was significantly less than
the numbers of Worker Students and Regular Students
visitors, and Bad Students class was identified by the high
Workers
54 1000 number of hits and document-downloads.
161
Regular 2. The size of the Worker Students class was the biggest one,
and identified by the lowest number of hits and document-
47
downloads.
25
3. The size of the Regular Students class was moderate
smaller than Worker Students and larger than Bad Students,
identified by the moderate number of hits and document-
downloads, and regularity of downloading behaviour.
Bad The interpretation of the results obtained from this phase is as
same as the interpretation for the results of the first data set
(c) FCM for the 2nd data set
shown in Table 4, and Table 5. The fuzzy representation of the
clustering results for the different clusters and their
overlapping are presented in Figure3.
Workers
168 50 977 VII. COMPARISON ANALYSIS BETWEEN FCM & KFCM
Regular
Both FCM and KFCM were able to cluster the data sets as
43
shown in Tables 4,5,6,7 and Figure3 (a), (b), (c), (d), with
moderate accuracy. Moreover, the results obtained from
49
KFCM were better when compared with the real marks of the
students and the ratios of the students with different grades,
the calculations were done as a ratio, for example the majority
Bad of the grades were grad B+ that can fit with workers students,
(d) KFCM for the 2 nd data set the next large grade was the A that match with the class
regular, finally the minority that has grade C and fall in the
course (grade D) was matched with the Bad student class.
Figure3. Fuzzy Clusters Representation: a and b for the Table 8 illustrates the matching between the obtained results
1st Data Set, and c and d for the 2 nd Data Set
-
138 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
.
from FCM and KFCM for the two data sets, and the real server size, network traffic distribution, etc.), have measures
marks and grades of the students. The comparison concludes about how to better organize institutional resources (human
that both of the two methods were good enough; moreover the and material) and their educational offer, enhance educational
KFCM was better and its performance from the points of programs offer and determine effectiveness of the new
matching with the real marks and the speed was high. computer mediated distance learning approach. There are
many general data mining tools that provide mining
algorithms, filtering and visualization techniques. Some
VIII. SUGGESTIONS AND RECOMMENDATIONS examples of commercial and academic tool are DBMiner,
Clementine, Intelligent Miner, Weka, etc. As a total
A. Student feedback conclusion, the suggestions and the recommendations from
Feedback from students on the second course indicates that; this work are focused on: the educators’ behavior obtained
there are some concerns over accessing, reading internet from both fuzzy clustering models.
pages, and downloading different materials as shown in Table
9. From the table we conclude some points as following: IX. CONCLUSIONS
1. Due to practical reasons such as eye strain, portability, The work presented in this paper focuses on how to find good
navigation and the process of developing understanding by models for the evaluation for E-learning systems. The paper
adding notes. introduces the use of two different fuzzy clustering techniques,
2. Students have opinions that the materials were difficult and the FCM and the KFCM, where the clustering is one of the
not have more explanations, others said that the course itself is most important models in data mining. Both of FCM and
more difficult to follow on-line; they thought that it is a KFCM clustering were able to find the clusters for the learners
difficulty added to the course itself. and the results were matched with the real marks of the
3. Students suggested that the combination of online and students with high percentage. Moreover the KFCM results
printed versions of materials would be better. have high matching percentage with the real marks than the
4. Students were satisfied using on-line more than the off- FCM. The suggestion and the recommendations were
line; as it gives the feeling of the classroom environment. constructed based on the clustering results and the questioners
5. Students raise the need to make it easier to obtain print obtained from the students that represent the learners’ profiles
versions for easier handling process because of their usual (not and reflect their behavior during the teaching of the e-course.
because it is difficult but because they did not used to). Finally the paper proved that the ability of fuzzy clustering
B. The Suggestions and Recommendations: generally and KFCM was better in predicting the e-learners
behaviour.
1. Formative evaluation: It is the evaluation of an educational
program while it is still in development, and with the purpose REFERENCES
of continually improving the program. Examining how [1] Romero, et al., Herrera Evolutionary algorithms for subgroup discovery
students use the system is one way to evaluate the instructional in e-learning: A practical application using Moodle data Expert Systems
design in a formative manner and it may help the educator to with Applications, 36, pp.1632–1644, (2009).
improve the instructional materials. [2] Romero, C., & Ventura, S., Educational data mining: A survey from
1995 to 2005. Expert Systems with Applications, 33(1), pp.135–146,
2. Oriented towards students: The objective is to recommend
(2007).
to learners activities, resources and learning tasks that would [3] Klosgen, W., & Zytkow, J., Handbook of data mining and knowledge
favor and improve their learning, suggest good learning discovery. NY: Oxford University Press, (2002).
experiences for the students, suggest path pruning and [4] Klosgen, W., Explora: A multipattern and multistrategy discovery
shortening or simply links to follow, based on the tasks assistant, In U. Fayyad, G. Piatetsky-Shapiro, P. Smyth, & R.
already done by the learner and their successes, and on tasks Uthurusamy (Eds.), Advances in knowledge discovery and data mining,
pp. 249–271, (1996).
made by other similar learners, etc. [5] Wrobel, S., An algorithm for multi-relational discovery of subgroups. In
3. Oriented towards educators: The objective is to get more Proceedings of conference principles of data mining and knowledge
objective feedback for instruction, evaluate the structure of the discovery, pp. 78–87, (1997).
course content and its effectiveness on the learning process, [6] Hwang, G.J., A Test-Sheet-Generating Algorithm for Multiple
classify learners into groups based on their needs in guidance Assessment Requirements, IEEE Transactions on Education 46(3),
pp.329–337, (2003).
and monitoring, find learning learner’s regular as well as
[7] Carpenter, G., et al., Fuzzy ART: Fast Stable Learning and
irregular patterns, find the most frequently made mistakes, Categorization of Analog Patterns by an Adaptive Resonance System,
find activities that are more effective, discover information to Neural Networks 4, pp.759–771, (1991).
improve the adaptation and customization of the courses, [8] Jantke, K., et al., Adaptation to the Learners’ Needs and Desires by
restructure sites to better personalize courseware, organize the Induction and Negotiation of Hypotheses. In: Auer, M.E., Auer, U.
(eds.): International Conference on Interactive Computer Aided
contents efficiently to the progress of the learner and Learning, ICL 2004, (2004).
adaptively constructing instructional plans, etc. [9] Mullier, D., et al., A Neural-Network System for Automatically
4. Oriented towards academics responsible and administrators: Assessing Students, In: Kommers, P., Richards, G. (eds.): World
The objective is to have parameters about how to improve site Conference on Educational Multimedia, Hypermedia and
Telecommunications, pp.1366–1371, (2001).
efficiency and adapt it to the behavior of their users (optimal
139 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, 2010
.
[10] Kohonen, T., Self-Organizing Maps. 3rd edition, Springer, Berlin [28] Stathacopoulou, G., Grigoriadou, M.: Neural Network-Based Fuzzy
Heidelberg New York, (2000). Modeling of the Student in Intelligent Tutoring Systems, In:
[11] Tang, C., et al., Personalized Courseware Construction Based on Web International Joint Conference on Neural Networks. Washington,
Data Mining. In: The First international Conference on Web information pp.3517–3521, (1999).
Systems Engineering, WISE’00. IEEE Computer Society. June 19–20, [29] Lingras, P., Hogo, M., Snorek, M., 2004. Interval Set Clustering of Web
Washington, USA,pp.204–211, (2000). Users using Modified Kohonen Self-Organizing Maps based on the
[12] Tang, T.Y.&McCalla, G., Smart Recommendation for an Evolving e- Properties of Rough Sets, Web Intelligence and Agent Systems: An
Learning System: Architecture and Experiment. International Journal on International Journal, Vol. 2, No. 3, pp. 217-230
e-Learning 4(1), pp.105–129, (2005). [30] Mofreh Hogo, Miroslav Snorek. “Temporal web usage mining using the
[13] Talavera, L.&Gaudioso, E., Mining Student Data to Characterize Similar modified Kohonen SOM”, international journal of NNW (neural
Behavior Groups in Unstructured Collaboration Spaces. In: Workshop in network world) volume 13 number 4, 2003 ISSN 1210-0552.
Artificial Intelligence in Computer Supported Collaborative Learning in [31] Bezdek J., Pattern Recognition with Fuzzy Objective Function, Plenum,
conjunction with 16th European Conference on Artificial Intelligence, New York, (1981).
ECAI’2003. Valencia, Spain, pp.17–22, (2004). [32] Bezdek J. Some, non-standard clustering algorithms, In: Legendre, P. &
[14] Castro, F., et al., Finding Relevant Features to Characterize Student Legendre, L. Developments in Numerical Ecology. NATO ASI Series,
Behavior on an e-Learning System. In: Hamid, R.A. (ed.): Proceedings Vol. G14. Springer-Verlag, (1987).
of the International Conference on Frontiers in Education: Computer [33] Muller KR., Mika S., et al., An introduction to kernel-based learning
Science and Computer Engineering, FECS’05. Las Vegas, USA, algorithms, IEEE Trans Neural Networks, 12(2), pp.181—202, (2001).
pp.210–216, (2005).
[34] Carl G. A., fuzzy clustering and fuzzy merging algorithm, Technical
[15] Hammouda, K. & Kamel, M., Data Mining in e-Learning. In: Pierre, S. Report, CS-UNR-101, (1999).
(ed.): e-Learning Networked Environments and Architectures: A
[35] Hwang, G., A Knowledge-Based System as an Intelligent Learning
Knowledge Processing Perspective, Springer, Berlin Heidelberg New
Advisor on Computer Networks, J. Systems, Man, and Cybernetics 2,
York, (2005).
pp. 153–158, (1999).
[16] Tane, J., et al., Semantic Resource Management for the Web: An e-
Learning Application, In: Fieldman, S., Uretsky, M. (eds.): The 13th
World Wide Web Conference 2004, WWW2004. ACM, New York, pp.
1–10, (2004).
[17] Castro, F., et al., Detecting Atypical Student Behaviour on an e-Learning Mofreh A. Hogo is a lecturer at Benha
System, In: VI Congreso Nacional de Informática Educativa, Simposio University, Egypt. He is a lecturer of Computer
Nacional de Tecnologías de la Información y las Comunicaciones en la Science and Engineering. Dr. Hogo holds a PhD
Educación, SINTICE’2005. September 14–16, Granada, Spain, pp.153– in Informatics Technology from Czech
160, (2005). Technical University in Prague, Computer
[18] Drigas, A.&Vrettaros, J., An Intelligent Tool for Building e-Learning Science and Engineering Dept. 2004. He is the
Contend-Material Using Natural Language in Digital Libraries, WSEAS author of over 40 papers that have been
Transactions on Information Science and Applications 5(1), pp.1197– published in refereed international Journals
1205, (2004). (Information Sciences, Elsiver, UBICC, IJICIS,
[19] Trella, M., et al., An Open Service-Based Learning Platform for IJCSIS, IJPRAI, ESWA, IJEL, Web Intelligence
Developing Intelligent Educational Systems for the Web, In: The 12th and Agent Systems, Intelligent Systems,
International Conference on Artificial Intelligence in Education. July international journal of NNW, IJAIT Journal of Artificial Intelligence Tools,
18–22, Amsterdam, pp. 27–34, (2005). IJCI) and Book chapters (Neural Networks Applications in Information
[20] Romero, C.,et al., Discovering Prediction Rules in AHA! Courses. In: Technology and Web Engineering Book, Encyclopedia of Data Warehousing
User Modelling Conference. June 2003, Johnstown, Pennsylvania, pp. and Mining, and Lecture Notes in Artificial Intelligence Series), and
35–44, (2003). international conferences (Systemics, Cybernetics and Informatics
Information Systems Management, IEEE/WIC, IEEE/WIC/ACM, ICEIS). His
[21] Romero, C., et al., Knowledge Discovery with Genetic Programming for
areas of interest include Digital Image Processing, Multimedia Networks,
Providing Feedback to Courseware. User Modeling and User-Adapted
Intrusion detection, Data Mining, Data Clustering and classification, pattern
Interaction 14(5), pp. 425–464, (2004).
Recognition, character recognition, fuzzy clustering, artificial Neural
[22] Muehlenbrock, M., Automatic Action Analysis in an Interactive Networks, Expert systems, Software Engineering.
Learning Environment. In: The 12th International Conference on
Artificial Intelligence in Education, AIED 2005. July 18, Amsterdam,
The Netherlands, pp. 73–80, (2005).
[23] Beck, J., Woolf, B., High-Level Student Modeling with Machine
Learning. In: Gauthier, G., et al. (eds.): Intelligent Tutoring Systems,
ITS 2000. Lecture Notes in Computer Science, Vol. 1839. Springer,
Berlin Heidelberg New York, pp. 584–593, (2000).
[24] Feng, M., et al., Looking for Sources of Error in Predicting Student’s
Knowledge, In: The Twentieth National Conference on Artificial
Intelligence by the American Association for Artificial Intelligence,
AAAI’05, Workshop on Educational Data Mining, pp. 54–61, (2005).
[25] Kotsiantis, S., et al., Predicting Students’ Performance in Distance
Learning Using Machine Learning Techniques. Applied Artificial
Intelligence 18(5), pp. 411–426, (2004).
[26] Hwang, G., A Group-Decision Approach for Evaluating Educational
Web Sites, Computers & Education, pp. 42 65–86, (2004).
[27] Hwang, G. et al., Development of an Intelligent Management System for
Monitoring Educational Web Servers. In: The 10th Pacific Asia
Conference on Information Systems, PACIS 2004, pp.2334–2340,
(2004).
140 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Hierarchical Approach for Online Mining –Emphasis towards Software Metrics
M .V.VIJAYA SARADHI B.R.SASTRY P.SATISH
Dept. of Comp. Sc & Eng. Director Dept. of CSE
ASTRA ASTRA VIE
Hyderabad, India. Hyderabad, India Hyderabad, India
Abstract ----Several multi-pass algorithms have database, based on a pre- defined frequency threshold
been proposed for Association Rule Mining from minsupport. Phase II of the problem involves
static repositories. However, such algorithms are generating the association rules from the frequent
incapable of online processing of transaction item sets found in Phase I. Typically, the reported
streams. In this paper we introduce an efficient approaches in Phase I re- quire multiple passes over
single-pass algorithm for mining association rules, the transaction database to determine the frequent
given a hierarchical classification amongest items. item sets of deferent lengths [1, 2, 3]. All these
Processing efficiency is achieved by utilizing two approaches assume that a static database is available,
optimizations, hierarchy aware counting and so that multiple scans can be made over it. With
transaction reduction, which become possible in online systems, it is desirable to make decisions on
the context of hierarchical classification. the fly, processing data-streams in- stead of stored
databases.
This paper considers the problem of
integrating constraints that are Boolean In this paper, we aim at a online algorithm,
expression over the presence or absence of items capable of processing online streams of transactions.
into the association discovery algorithm. This Assume that the algorithm has computed its result up
paper present three integrated algorithms for to and including the first n transactions. A true online
mining association rules with item constraints and algorithm should be capable of updating the result for
discuss their tradeoffs. It is concluded that the the (n + 1). The transaction, without requiring a re-
variation of complexity depends on the measure of scan over the past n transactions. In this way such an
DIT (Depth of Inheritance Tree) and NOC algorithm can handle transaction streams. In fact it is
(Number of Children) in the context of true that items in an online shopping mart or a
Hierarchical Classification. supermarket are categorized into sub-classes, which
in turn make up classes at a higher level, and so on.
Keywords: Frequent item sets; Association Besides the usual rules that involve individual items,
Rules; Time stamps; DIT; NOC; Software Metrics; learning association rules at a particular sub- class or
Complexity; Measurement class level is also of much potential use and
significance, e.g. an item-specific rule such as
I. INTRODUCTION Customers buying Brand A sports shoes tend to buy
Brand B tee- shirts" may be of less practical use than
a more general rule such as Customers buying sports
The aim of Association Rule Mining is to find shoes tend to buy tee-shirts". With this aim, we can
latent associations among data entities in database be made of commonly employed hierarchical
repositories, a typical example of which is the classification of items to devise a simple and efficient
transaction database maintained by a supermarket. rule mining algorithm. [2] Proposes a single-pass
An association rule is an implication of the form algorithm for hierarchical online association rule
A=> B, which conveys that customers buying set of mining.
items A would also with a high probability buy set of
items B. The concept of association rule mining was In this paper, we refer to this algorithm as
first introduced in [4]. Typically the problem is HORM. The present work carries forward the idea of
decomposed into two phases. Phase I of the problem [1], and proposes an efficient algorithm for Phase I.
involves in finding the frequent item sets in the The present work also looks at Phase II, i.e. the
141 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
generation of association rules. [9] Proposes an
algorithm to generate non-redundant rules. We
present a modified algorithm for Phase II that better
suits the need to mine hierarchical association rules. Clothes Footwear
For example, they may only want rules that contain a
specific item or rules that contain children of a
specific item in a hierarchy. While such constraints Outer wear Shirts Shoes Hiking Boots
can be applied as a post processing step, integrating
them into the mining algorithm can dramatically
reduce the execution time. In practice, users are often
interested only in a sub set of associations, for Jackets Ski Phants
instance, those containing at least one item from a
user-defined subset of items. When taxonomies are Figure 1. Example for taxonomy
present, this set of items may be specified using the
taxonomy, e.g. all descendants of a given item. While For example,(Jacket A Shoes) V (descendants
the output of current algorithms can be filtered out in (Clothes) A7 ancestors (Hiking Boots)) expresses the
a post-processing step, it is much more efficient to constraint that we want any rules that either (a)
incorporate such constraints into the association’s contain both Jackets and Shoes, or (b) contain
discovery algorithm. Clothes or any descendants of clothes and do not
contain Hiking Boots or Footwear.
Design choices on the hierarchy employed to
represent the application are essentially choices about II. THEORY
restricting or expanding the scope of properties of the
classes of objects in the application. Two design A. Basic Concepts and Problem Formulation
decisions which relate to the inheritance hierarchy
can be defined [11]. They are depth of inheritance Hierarchical classification of data means that the
(DIT) of a class and the number of children of the items which make up a transaction are categorized
class (NOC).Depth of Inheritance of the class is the into Classes, sub-classes, and so on. While doing
DIT metric for the class. The DIT (Depth of Hierarchical Classification of data, some measures to
Inheritance Tree) will be the maximum length from be consider. Design of a class involves decisions on
the node to the root of the tree. The deeper a class is the scope of the methods declared within the class.
in the hierarchy, the greater the number of methods it We have to consider four major features in the
is likely to inherit, making it more complex to predict Hierarchical classification of data in terms of
its behavior. The Deeper trees constitute greater Classification tree 1.Identification of
design complexity. The deeper a particular class is in classes.2.Identify the semantics of classes.3.Identify
the hierarchy, the greater the potential reuse of relations between classes.4.Implementation of
inherited methods. The inheritance hierarchy is a classes. Using several metrics can help designers,
directed acyclic graph, which can be described as a who may be unable to review design complexity for
tree structure with classes as nodes, leaves and a root. the entire application [11]. The Depth of inheritance
Tree (DIT) and Number of children (NOC) metrics
The NOC (Number of Children) is the number of check whether the application is getting too heavy
immediate subclasses subordinated to a class in the (i.e .too many classes at the root level declaring many
class hierarchy. It is a measure of how many methods).Classes with high values of DIT tend to
subclasses are going to inherit the methods of the complex classes. Evidently it is possible to mine for
parent class. The number of children gives an idea of two types of rules: an item-specific rule such as
the potential influence a class has on the design. If a Customers buying soap of brand A tend to buy
class has a large number of children, it may require canned soup of brand B", or a more general Rule
more testing of the methods in that class. The Greater such as Customers buying soaps tend buy canned
the number of children (NOC), greater the likelihood soup". The latter is an association on classes or sub-
of improper abstraction of the parent class. If a class classes, rather than on individual items. Let I be the
has a large number of children; it may be a case of set of all items stored in, say, a typical supermarket.
misuse of sub classing. In this paper, we consider
constraints that are boolean expressions over the
presence or absence of items in the rules. When
taxonomies are present, we allow the elements of the
boolean expression to be of the form ancestors (item)
or descendants (item) rather than just a single item.
142 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Find all frequent item sets (item sets whose
support is greater than minimum support) that satisfy
the boolean expression B. Recall that there are two
types of operations used for this problem: candidate
generation and counting support. The techniques for
counting the support of candidates remain
unchanged. However, as mentioned above, the A
priori candidate generation procedure will no longer
Figure 2. Example of Classification Tree generate all the potentially frequent itemsets as
candidates when item constraints are present. We
We suppose that, at each level of classification, a consider three different approaches to this problem.
fixed number M of classes, sub-classes or items are
present. At the root level we have classes C1; C2; • Generate a set of selected items S such that
C3: CM. At the next level, for a class Ck, we will any Item sets that satisfy B will contain at
have the M sub-classes Ck1;Ck2 : : :CkM. For jIj = least one selected item.
20000, and with M = 12, for example, we will need
four levels of classification; the last level will contain • Modify the candidate generation procedure
individual items stored in transaction, which will be to only count candidates that contain
coded as Cjklm, i.e. one index for each level of selected items.
classification. A hierarchical association rule is an
implication of the type X => Y where X; Y are • Discard frequent item sets that do not satisfy
disjoint subsets of the sub-classes of some Cα, the B. The third approach, “Direct” directly uses
parent class of X and Y . As usual, support for the boolean expression B to modify the
association rule X =>Y is defined as the fraction of candidate generation procedure so that only
transactions in the transaction database which contain candidates that satisfy B are counted
X=>Y ; confidence of the rule is defined as the (Section 4.2).
fraction of transactions containing X which also
contain Y . We denote the support and confidence of Phase 2:
rule X => Y as supp(X=> Y ) and conf(X => Y )
respectively. To generate rules from these frequent itemsets, we
also need to find the support of all subsets of frequent
We may also write XY to represent X => Y. itemsets that do not satisfy?. Recall that to generate a
Subsets of sub-classes of class C are elements of the rule AI3, we need the support of AB to find the
power-set of the set of sub-classes of C. For a given confidence of the rule. However, AB may not satisfy
class C, the counts of all subsets occurring in the B and hence may not have been counted in Phase 1.
transaction database are stored in an integer array, So we generate all subsets of the frequent itemsets
called count array, of size 2M. The natural bitmap found in Phase 1, and then make an extra pass over
representation of a subset can be used directly as the the dataset to count the support of those subsets that
index of the corresponding cell in the count array. are not present in the output of Phase 1.
Phase 3:
Generate rules from the frequent item sets found in
Phase 1, using the frequent item sets found in Phases
1 and 2 to compute confidences, as in the A priori
algorithm. We discuss next the techniques for finding
frequent item sets that satisfy Z? (Phase 1). The
algorithms use the notation in Figure 2.
Figure 3: Item set Lattice
B. Approaches using Selected Items
Phase 1:
143 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
Generating Selected Items Recall the boolean This data mining approach undertakes rule
expression Z? = D1 V D2 V . . . V D,,,,, where Di = association analysis between two input domain
ail A Q~Z A u . e A ain; and each element oij is classes and their subclasses in the mining ontology.
either lij or dij, for some Zij E C. We want to Standard rule association mining looks for frequently
generate a set of items S such that any item set that occurring associations between input values that meet
satisfies Z? will contain at least one item from S. For the minimal criteria of user defined interestingness,
example, let the set of items {l,2,3,4,5}. such as confidence (the probability of one value
occurring given another) and Support (the probability
Consider B=(lA2)V3.The sets (1, 3}, {2, 3) and (1, of two values occurring together). The Chrono Miner
2, 3, 4, 5) all have the property that any (non-empty) algorithm extends this standard approach by also
item set that satisfies B will contain an item from this examining the occurrence of different temporal
set. If B = (1 A 2) V 73, the set (1, 2, 4, 5) has this relationships between the time stamps of those
property. Note that the inverse does not hold: there values.
are many itemsets that contain an item from S but do
not satisfy B. For a given expression B, there may be
many different sets S such that any itemsets that
satisfies B contains an item from S. We would like to
choose a set of items for S so that the sum of the
supports of items in S is minimized. The intuition is
that the sum of the supports of the items is correlated
with the sum of the supports of the frequent itemsets
that contain these items, which is correlated with the
execution time. We now show that we can generate S
by choosing one element oij from each disjunct 0; in
B, and adding either lij or all the elements in .C -
{Zij} to S, based on .whether oij is lij or li.j
respectively
C. Hierarchical representation:
The traditional model of a relational database is a
set of relations, which cannot directly encode
hierarchical properties among data, such as the is-a
relationship. To address this issue, we represented
both theses relational and hierarchical properties of
data explicitly within a mining ontology. Each
domain class in the ontology, called a Node,
corresponds to a relation in the database. The
subclass hierarchy under Node encodes an “is-a”
relationship among domain classes. Each class has
properties that contain string values mapping to the
column names of the database table that stores the
instances for that class. The use of Ontology to
encode an explicit representation of data allows reuse Temporal Association Rule algorithm
of the mining method with different database
schemas and domains, since such encoded knowledge Using the mining ontology, the search for temporal
can be easily modified. The mining ontology serves associations involves partial or complete traversal of
as a bridge between the database and the mining the hierarchical structure starting from each input
algorithm, and guides the hierarchical search of the class, proceeding through top-down induction as
latter across multiple tables within the former. described in the pseudo code presented in Figure 4.
A.HORM Algorithm
III. Mining Algorithm
144 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 7, No. 2, February 2010
From the classes and sub-classes which make up current transaction T be
the classification tree, the user selects a set of classes {A1Q6;A2P6;B2Q6;B1Q7;A2P7;B2P7}. While T is
of interest [4], to be denoted here as SIC. Association being checked against A***, the algorithm in fact
rules to be mined are of the type X => Y where X and traverses through the items of T and finds the sub-
Y are disjoint subsets of a class or sub-class of transaction T=A*** = {A1Q6;A2P6;A2P7}, which
interest. The problem of hierarchical association rule may be called the projection of class A*** on T.
mining is now defined as: Find all association rules Clearly T=A*** does not contain any items that
of the type X => Y, within each class of interest in belong to B***, because the sub-classes of A*** and
SIC, which have a specified minimum support and B*** are disjoint. Thus we can remove T=A*** from
confidence in the transaction database or stream. To T and pass the remaining items T1 = T ¡ T=A*** to
find associations within a class or sub-class of match against B***. Thus the part of a transaction
interest, we need to maintain counts for all its that is a projection of a class can be removed to
subsets. For the class A***, with M = 4, for example, obtain a reduced transaction to match against disjoint
we need to count the occurrences in the transaction classes. We call this second enhancement transaction
database of all the subsets of reduction.
{A1***A2*** A3***A4***}. Clearly there are 2M ¡
1 non-empty subset combinations for a sub-class with C. Non-Redundant Rule Generation
M elements. Therefore a count array of size 2M ¡1
needs to be maintained for each class or sub-class of The version implemented
Get documents about "