of 453

International Journal of Computer Science Issues

Published on March 2017 | Categories: Documents | Downloads: 16 | Comments: 0
210 views

Comments

Content

 
 
 
 
 
 
 
 
 

IJCSI

 
 
 
 
 

 

International Journal of
Computer Science Issues

Volume 7, Issue 5, September 2010
ISSN (Online): 1694-0814

© IJCSI PUBLICATION
www.IJCSI.org

IJCSI proceedings are currently indexed by:

© IJCSI PUBLICATION 2010
www.IJCSI.org

IJCSI Publicity Board 2010

Dr. Borislav D Dimitrov
Department of General Practice, Royal College of Surgeons in Ireland
Dublin, Ireland

Dr. Vishal Goyal
Department of Computer Science, Punjabi University
Patiala, India

Mr. Nehinbe Joshua
University of Essex
Colchester, Essex, UK

Mr. Vassilis Papataxiarhis
Department of Informatics and Telecommunications
National and Kapodistrian University of Athens, Athens, Greece

EDITORIAL
In this fifth edition of 2010, we bring forward issues from various dynamic computer science
fields ranging from system performance, computer vision, artificial intelligence, software
engineering, multimedia, pattern recognition, information retrieval, databases, security and
networking among others.
Considering the growing interest of academics worldwide to publish in IJCSI, we invite
universities and institutions to partner with us to further encourage open-access publications.
As always we thank all our reviewers for providing constructive comments on papers sent to
them for review. This helps enormously in improving the quality of papers published in this
issue.
Google Scholar reported a large amount of cited papers published in IJCSI. We will continue to
encourage the readers, authors and reviewers and the computer science scientific community and
interested authors to continue citing papers published by the journal.
Apart from availability of the full-texts from the journal website, all published papers are
deposited in open-access repositories to make access easier and ensure continuous availability of
its proceedings free of charge for all researchers.
We are pleased to present IJCSI Volume 7, Issue 5, September 2010 (IJCSI Vol. 7, Issue 5). Out
of the 198 paper submissions received, 59 papers were retained for publication. The acceptance
rate for this issue is 29.8%.

We wish you a happy reading!

IJCSI Editorial Board
September 2010 Issue
ISSN (Online): 1694-0814
© IJCSI Publications
www.IJCSI.org 

IJCSI Editorial Board 2010

Dr Tristan Vanrullen
Chief Editor
LPL, Laboratoire Parole et Langage - CNRS - Aix en Provence, France
LABRI, Laboratoire Bordelais de Recherche en Informatique - INRIA - Bordeaux, France
LEEE, Laboratoire d'Esthétique et Expérimentations de l'Espace - Université d'Auvergne, France

Dr Constantino Malagôn
Associate Professor
Nebrija University
Spain

Dr Lamia Fourati Chaari
Associate Professor
Multimedia and Informatics Higher Institute in SFAX
Tunisia

Dr Mokhtar Beldjehem
Professor
Sainte-Anne University
Halifax, NS, Canada

Dr Pascal Chatonnay
Assistant Professor
MaÎtre de Conférences
Laboratoire d'Informatique de l'Université de Franche-Comté
Université de Franche-Comté
France

Dr Karim Mohammed Rezaul
Centre for Applied Internet Research (CAIR)
Glyndwr University Wrexham,
United Kingdom

Dr Yee-Ming Chen
Professor
Department of Industrial Engineering and Management
Yuan Ze University
Taiwan

Dr Vishal Goyal
Assistant Professor
Department of Computer Science
Punjabi University
Patiala, India

Dr Dalbir Singh
Faculty of Information Science And Technology
National University of Malaysia
Malaysia

Dr Natarajan Meghanathan
Assistant Professor
REU Program Director
Department of Computer Science
Jackson State University
Jackson, USA

Dr Deepak Laxmi Narasimha
Department of Software Engineering,
Faculty of Computer Science and Information Technology,
University of Malaya,
Kuala Lumpur, Malaysia

Dr Navneet Agrawal
Assistant Professor
Department of ECE,
College of Technology & Engineering, MPUAT,
Udaipur 313001 Rajasthan, India

Dr Shishir Kumar
Department of Computer Science and Engineering,
Jaypee University of Engineering & Technology
Raghogarh, MP, India

Dr P. K. Suri
Professor
Department of Computer Science & Applications,
Kurukshetra University,
Kurukshetra, India

Dr Paramjeet Singh
Associate Professor
GZS College of Engineering & Technology,
India

Dr Shaveta Rani
Associate Professor
GZS College of Engineering & Technology,
India

Dr G. Ganesan
Professor
Department of Mathematics,
Adikavi Nannaya University,
Rajahmundry, A.P, India

Dr A. V. Senthil Kumar
Department of MCA,
Hindusthan College of Arts and Science,
Coimbatore, Tamilnadu, India

Dr T. V. Prasad
Professor Department of Computer Science and Engineering,
Lingaya's University Faridabad,
Haryana, India

Prof N. Jaisankar
Assistant Professor
School of Computing Sciences,
VIT University
Vellore, Tamilnadu, India

IJCSI Reviewers Committee 2010
 Mr. Markus Schatten, University of Zagreb, Faculty of Organization and Informatics, Croatia
 Mr. Vassilis Papataxiarhis, Department of Informatics and Telecommunications, National and
Kapodistrian University of Athens, Athens, Greece
 Dr Modestos Stavrakis, University of the Aegean, Greece
 Dr Fadi KHALIL, LAAS -- CNRS Laboratory, France
 Dr Dimitar Trajanov, Faculty of Electrical Engineering and Information technologies, ss. Cyril and
Methodius Univesity - Skopje, Macedonia
 Dr Jinping Yuan, College of Information System and Management,National Univ. of Defense Tech.,
China
 Dr Alexis Lazanas, Ministry of Education, Greece
 Dr Stavroula Mougiakakou, University of Bern, ARTORG Center for Biomedical Engineering
Research, Switzerland
 Dr Cyril de Runz, CReSTIC-SIC, IUT de Reims, University of Reims, France
 Mr. Pramodkumar P. Gupta, Dept of Bioinformatics, Dr D Y Patil University, India
 Dr Alireza Fereidunian, School of ECE, University of Tehran, Iran
 Mr. Fred Viezens, Otto-Von-Guericke-University Magdeburg, Germany
 Dr. Richard G. Bush, Lawrence Technological University, United States
 Dr. Ola Osunkoya, Information Security Architect, USA
 Mr. Kotsokostas N.Antonios, TEI Piraeus, Hellas
 Prof Steven Totosy de Zepetnek, U of Halle-Wittenberg & Purdue U & National Sun Yat-sen U,
Germany, USA, Taiwan
 Mr. M Arif Siddiqui, Najran University, Saudi Arabia
 Ms. Ilknur Icke, The Graduate Center, City University of New York, USA
 Prof Miroslav Baca, Faculty of Organization and Informatics, University of Zagreb, Croatia
 Dr. Elvia Ruiz Beltrán, Instituto Tecnológico de Aguascalientes, Mexico
 Mr. Moustafa Banbouk, Engineer du Telecom, UAE
 Mr. Kevin P. Monaghan, Wayne State University, Detroit, Michigan, USA
 Ms. Moira Stephens, University of Sydney, Australia
 Ms. Maryam Feily, National Advanced IPv6 Centre of Excellence (NAV6) , Universiti Sains Malaysia
(USM), Malaysia
 Dr. Constantine YIALOURIS, Informatics Laboratory Agricultural University of Athens, Greece
 Mrs. Angeles Abella, U. de Montreal, Canada
 Dr. Patrizio Arrigo, CNR ISMAC, italy
 Mr. Anirban Mukhopadhyay, B.P.Poddar Institute of Management & Technology, India
 Mr. Dinesh Kumar, DAV Institute of Engineering & Technology, India
 Mr. Jorge L. Hernandez-Ardieta, INDRA SISTEMAS / University Carlos III of Madrid, Spain
 Mr. AliReza Shahrestani, University of Malaya (UM), National Advanced IPv6 Centre of Excellence
(NAv6), Malaysia
 Mr. Blagoj Ristevski, Faculty of Administration and Information Systems Management - Bitola,
Republic of Macedonia
 Mr. Mauricio Egidio Cantão, Department of Computer Science / University of São Paulo, Brazil
 Mr. Jules Ruis, Fractal Consultancy, The netherlands

 Mr. Mohammad Iftekhar Husain, University at Buffalo, USA
 Dr. Deepak Laxmi Narasimha, Department of Software Engineering, Faculty of Computer Science and
Information Technology, University of Malaya, Malaysia
 Dr. Paola Di Maio, DMEM University of Strathclyde, UK
 Dr. Bhanu Pratap Singh, Institute of Instrumentation Engineering, Kurukshetra University
Kurukshetra, India
 Mr. Sana Ullah, Inha University, South Korea
 Mr. Cornelis Pieter Pieters, Condast, The Netherlands
 Dr. Amogh Kavimandan, The MathWorks Inc., USA
 Dr. Zhinan Zhou, Samsung Telecommunications America, USA
 Mr. Alberto de Santos Sierra, Universidad Politécnica de Madrid, Spain
 Dr. Md. Atiqur Rahman Ahad, Department of Applied Physics, Electronics & Communication
Engineering (APECE), University of Dhaka, Bangladesh
 Dr. Charalampos Bratsas, Lab of Medical Informatics, Medical Faculty, Aristotle University,
Thessaloniki, Greece
 Ms. Alexia Dini Kounoudes, Cyprus University of Technology, Cyprus
 Dr. Jorge A. Ruiz-Vanoye, Universidad Juárez Autónoma de Tabasco, Mexico
 Dr. Alejandro Fuentes Penna, Universidad Popular Autónoma del Estado de Puebla, México
 Dr. Ocotlán Díaz-Parra, Universidad Juárez Autónoma de Tabasco, México
 Mrs. Nantia Iakovidou, Aristotle University of Thessaloniki, Greece
 Mr. Vinay Chopra, DAV Institute of Engineering & Technology, Jalandhar
 Ms. Carmen Lastres, Universidad Politécnica de Madrid - Centre for Smart Environments, Spain
 Dr. Sanja Lazarova-Molnar, United Arab Emirates University, UAE
 Mr. Srikrishna Nudurumati, Imaging & Printing Group R&D Hub, Hewlett-Packard, India
 Dr. Olivier Nocent, CReSTIC/SIC, University of Reims, France
 Mr. Burak Cizmeci, Isik University, Turkey
 Dr. Carlos Jaime Barrios Hernandez, LIG (Laboratory Of Informatics of Grenoble), France
 Mr. Md. Rabiul Islam, Rajshahi university of Engineering & Technology (RUET), Bangladesh
 Dr. LAKHOUA Mohamed Najeh, ISSAT - Laboratory of Analysis and Control of Systems, Tunisia
 Dr. Alessandro Lavacchi, Department of Chemistry - University of Firenze, Italy
 Mr. Mungwe, University of Oldenburg, Germany
 Mr. Somnath Tagore, Dr D Y Patil University, India
 Ms. Xueqin Wang, ATCS, USA
 Dr. Borislav D Dimitrov, Department of General Practice, Royal College of Surgeons in Ireland,
Dublin, Ireland
 Dr. Fondjo Fotou Franklin, Langston University, USA
 Dr. Vishal Goyal, Department of Computer Science, Punjabi University, Patiala, India
 Mr. Thomas J. Clancy, ACM, United States
 Dr. Ahmed Nabih Zaki Rashed, Dr. in Electronic Engineering, Faculty of Electronic Engineering,
menouf 32951, Electronics and Electrical Communication Engineering Department, Menoufia university,
EGYPT, EGYPT
 Dr. Rushed Kanawati, LIPN, France
 Mr. Koteshwar Rao, K G Reddy College Of ENGG.&TECH,CHILKUR, RR DIST.,AP, India
 Mr. M. Nagesh Kumar, Department of Electronics and Communication, J.S.S. research foundation,
Mysore University, Mysore-6, India

 Dr. Ibrahim Noha, Grenoble Informatics Laboratory, France
 Mr. Muhammad Yasir Qadri, University of Essex, UK
 Mr. Annadurai .P, KMCPGS, Lawspet, Pondicherry, India, (Aff. Pondicherry Univeristy, India
 Mr. E Munivel , CEDTI (Govt. of India), India
 Dr. Chitra Ganesh Desai, University of Pune, India
 Mr. Syed, Analytical Services & Materials, Inc., USA
 Mrs. Payal N. Raj, Veer South Gujarat University, India
 Mrs. Priti Maheshwary, Maulana Azad National Institute of Technology, Bhopal, India
 Mr. Mahesh Goyani, S.P. University, India, India
 Mr. Vinay Verma, Defence Avionics Research Establishment, DRDO, India
 Dr. George A. Papakostas, Democritus University of Thrace, Greece
 Mr. Abhijit Sanjiv Kulkarni, DARE, DRDO, India
 Mr. Kavi Kumar Khedo, University of Mauritius, Mauritius
 Dr. B. Sivaselvan, Indian Institute of Information Technology, Design & Manufacturing,
Kancheepuram, IIT Madras Campus, India
 Dr. Partha Pratim Bhattacharya, Greater Kolkata College of Engineering and Management, West
Bengal University of Technology, India
 Mr. Manish Maheshwari, Makhanlal C University of Journalism & Communication, India
 Dr. Siddhartha Kumar Khaitan, Iowa State University, USA
 Dr. Mandhapati Raju, General Motors Inc, USA
 Dr. M.Iqbal Saripan, Universiti Putra Malaysia, Malaysia
 Mr. Ahmad Shukri Mohd Noor, University Malaysia Terengganu, Malaysia
 Mr. Selvakuberan K, TATA Consultancy Services, India
 Dr. Smita Rajpal, Institute of Technology and Management, Gurgaon, India
 Mr. Rakesh Kachroo, Tata Consultancy Services, India
 Mr. Raman Kumar, National Institute of Technology, Jalandhar, Punjab., India
 Mr. Nitesh Sureja, S.P.University, India
 Dr. M. Emre Celebi, Louisiana State University, Shreveport, USA
 Dr. Aung Kyaw Oo, Defence Services Academy, Myanmar
 Mr. Sanjay P. Patel, Sankalchand Patel College of Engineering, Visnagar, Gujarat, India
 Dr. Pascal Fallavollita, Queens University, Canada
 Mr. Jitendra Agrawal, Rajiv Gandhi Technological University, Bhopal, MP, India
 Mr. Ismael Rafael Ponce Medellín, Cenidet (Centro Nacional de Investigación y Desarrollo
Tecnológico), Mexico
 Mr. Supheakmungkol SARIN, Waseda University, Japan
 Mr. Shoukat Ullah, Govt. Post Graduate College Bannu, Pakistan
 Dr. Vivian Augustine, Telecom Zimbabwe, Zimbabwe
 Mrs. Mutalli Vatila, Offshore Business Philipines, Philipines
 Mr. Pankaj Kumar, SAMA, India
 Dr. Himanshu Aggarwal, Punjabi University,Patiala, India
 Dr. Vauvert Guillaume, Europages, France
 Prof Yee Ming Chen, Department of Industrial Engineering and Management, Yuan Ze University,
Taiwan
 Dr. Constantino Malagón, Nebrija University, Spain
 Prof Kanwalvir Singh Dhindsa, B.B.S.B.Engg.College, Fatehgarh Sahib (Punjab), India

 Mr. Angkoon Phinyomark, Prince of Singkla University, Thailand
 Ms. Nital H. Mistry, Veer Narmad South Gujarat University, Surat, India
 Dr. M.R.Sumalatha, Anna University, India
 Mr. Somesh Kumar Dewangan, Disha Institute of Management and Technology, India
 Mr. Raman Maini, Punjabi University, Patiala(Punjab)-147002, India
 Dr. Abdelkader Outtagarts, Alcatel-Lucent Bell-Labs, France
 Prof Dr. Abdul Wahid, AKG Engg. College, Ghaziabad, India
 Mr. Prabu Mohandas, Anna University/Adhiyamaan College of Engineering, india
 Dr. Manish Kumar Jindal, Panjab University Regional Centre, Muktsar, India
 Prof Mydhili K Nair, M S Ramaiah Institute of Technnology, Bangalore, India
 Dr. C. Suresh Gnana Dhas, VelTech MultiTech Dr.Rangarajan Dr.Sagunthala Engineering
College,Chennai,Tamilnadu, India
 Prof Akash Rajak, Krishna Institute of Engineering and Technology, Ghaziabad, India
 Mr. Ajay Kumar Shrivastava, Krishna Institute of Engineering & Technology, Ghaziabad, India
 Mr. Deo Prakash, SMVD University, Kakryal(J&K), India
 Dr. Vu Thanh Nguyen, University of Information Technology HoChiMinh City, VietNam
 Prof Deo Prakash, SMVD University (A Technical University open on I.I.T. Pattern) Kakryal (J&K),
India
 Dr. Navneet Agrawal, Dept. of ECE, College of Technology & Engineering, MPUAT, Udaipur 313001
Rajasthan, India
 Mr. Sufal Das, Sikkim Manipal Institute of Technology, India
 Mr. Anil Kumar, Sikkim Manipal Institute of Technology, India
 Dr. B. Prasanalakshmi, King Saud University, Saudi Arabia.
 Dr. K D Verma, S.V. (P.G.) College, Aligarh, India
 Mr. Mohd Nazri Ismail, System and Networking Department, University of Kuala Lumpur (UniKL),
Malaysia
 Dr. Nguyen Tuan Dang, University of Information Technology, Vietnam National University Ho Chi
Minh city, Vietnam
 Dr. Abdul Aziz, University of Central Punjab, Pakistan
 Dr. P. Vasudeva Reddy, Andhra University, India
 Mrs. Savvas A. Chatzichristofis, Democritus University of Thrace, Greece
 Mr. Marcio Dorn, Federal University of Rio Grande do Sul - UFRGS Institute of Informatics, Brazil
 Mr. Luca Mazzola, University of Lugano, Switzerland
 Mr. Nadeem Mahmood, Department of Computer Science, University of Karachi, Pakistan
 Mr. Hafeez Ullah Amin, Kohat University of Science & Technology, Pakistan
 Dr. Professor Vikram Singh, Ch. Devi Lal University, Sirsa (Haryana), India
 Mr. M. Azath, Calicut/Mets School of Enginerring, India
 Dr. J. Hanumanthappa, DoS in CS, University of Mysore, India
 Dr. Shahanawaj Ahamad, Department of Computer Science, King Saud University, Saudi Arabia
 Dr. K. Duraiswamy, K. S. Rangasamy College of Technology, India
 Prof. Dr Mazlina Esa, Universiti Teknologi Malaysia, Malaysia
 Dr. P. Vasant, Power Control Optimization (Global), Malaysia
 Dr. Taner Tuncer, Firat University, Turkey
 Dr. Norrozila Sulaiman, University Malaysia Pahang, Malaysia
 Prof. S K Gupta, BCET, Guradspur, India

 Dr. Latha Parameswaran, Amrita Vishwa Vidyapeetham, India
 Mr. M. Azath, Anna University, India
 Dr. P. Suresh Varma, Adikavi Nannaya University, India
 Prof. V. N. Kamalesh, JSS Academy of Technical Education, India
 Dr. D Gunaseelan, Ibri College of Technology, Oman
 Mr. Sanjay Kumar Anand, CDAC, India
 Mr. Akshat Verma, CDAC, India
 Mrs. Fazeela Tunnisa, Najran University, Kingdom of Saudi Arabia
 Mr. Hasan Asil, Islamic Azad University Tabriz Branch (Azarshahr), Iran
 Prof. Dr Sajal Kabiraj, Fr. C Rodrigues Institute of Management Studies (Affiliated to University of
Mumbai, India), India
 Mr. Syed Fawad Mustafa, GAC Center, Shandong University, China
 Dr. Natarajan Meghanathan, Jackson State University, Jackson, MS, USA
 Prof. Selvakani Kandeeban, Francis Xavier Engineering College, India
 Mr. Tohid Sedghi, Urmia University, Iran
 Dr. S. Sasikumar, PSNA College of Engg and Tech, Dindigul, India
 Dr. Anupam Shukla, Indian Institute of Information Technology and Management Gwalior, India
 Mr. Rahul Kala, Indian Institute of Inforamtion Technology and Management Gwalior, India
 Dr. A V Nikolov, National University of Lesotho, Lesotho
 Mr. Kamal Sarkar, Department of Computer Science and Engineering, Jadavpur University, India
 Dr. Mokhled S. AlTarawneh, Computer Engineering Dept., Faculty of Engineering, Mutah University,
Jordan, Jordan
 Prof. Sattar J Aboud, Iraqi Council of Representatives, Iraq-Baghdad
 Dr. Prasant Kumar Pattnaik, Department of CSE, KIST, India
 Dr. Mohammed Amoon, King Saud University, Saudi Arabia
 Dr. Tsvetanka Georgieva, Department of Information Technologies, St. Cyril and St. Methodius
University of Veliko Tarnovo, Bulgaria
 Dr. Eva Volna, University of Ostrava, Czech Republic
 Mr. Ujjal Marjit, University of Kalyani, West-Bengal, India
 Dr. Prasant Kumar Pattnaik, KIST,Bhubaneswar,India, India
 Dr. Guezouri Mustapha, Department of Electronics, Faculty of Electrical Engineering, University of
Science and Technology (USTO), Oran, Algeria
 Mr. Maniyar Shiraz Ahmed, Najran University, Najran, Saudi Arabia
 Dr. Sreedhar Reddy, JNTU, SSIETW, Hyderabad, India
 Mr. Bala Dhandayuthapani Veerasamy, Mekelle University, Ethiopa
 Mr. Arash Habibi Lashkari, University of Malaya (UM), Malaysia
 Mr. Rajesh Prasad, LDC Institute of Technical Studies, Allahabad, India
 Ms. Habib Izadkhah, Tabriz University, Iran
 Dr. Lokesh Kumar Sharma, Chhattisgarh Swami Vivekanand Technical University Bhilai, India
 Mr. Kuldeep Yadav, IIIT Delhi, India
 Dr. Naoufel Kraiem, Institut Superieur d'Informatique, Tunisia
 Prof. Frank Ortmeier, Otto-von-Guericke-Universitaet Magdeburg, Germany
 Mr. Ashraf Aljammal, USM, Malaysia
 Mrs. Amandeep Kaur, Department of Computer Science, Punjabi University, Patiala, Punjab, India
 Mr. Babak Basharirad, University Technology of Malaysia, Malaysia

 Mr. Avinash singh, Kiet Ghaziabad, India
 Dr. Miguel Vargas-Lombardo, Technological University of Panama, Panama
 Dr. Tuncay Sevindik, Firat University, Turkey
 Ms. Pavai Kandavelu, Anna University Chennai, India
 Mr. Ravish Khichar, Global Institute of Technology, India
 Mr Aos Alaa Zaidan Ansaef, Multimedia University, Cyberjaya, Malaysia
 Dr. Awadhesh Kumar Sharma, Dept. of CSE, MMM Engg College, Gorakhpur-273010, UP, India
 Mr. Qasim Siddique, FUIEMS, Pakistan
 Dr. Le Hoang Thai, University of Science, Vietnam National University - Ho Chi Minh City, Vietnam
 Dr. Saravanan C, NIT, Durgapur, India
 Dr. Vijay Kumar Mago, DAV College, Jalandhar, India
 Dr. Do Van Nhon, University of Information Technology, Vietnam
 Mr. Georgios Kioumourtzis, University of Patras, Greece
 Mr. Amol D.Potgantwar, SITRC Nasik, India
 Mr. Lesedi Melton Masisi, Council for Scientific and Industrial Research, South Africa
 Dr. Karthik.S, Department of Computer Science & Engineering, SNS College of Technology, India
 Mr. Nafiz Imtiaz Bin Hamid, Department of Electrical and Electronic Engineering, Islamic University
of Technology (IUT), Bangladesh
 Mr. Muhammad Imran Khan, Universiti Teknologi PETRONAS, Malaysia
 Dr. Abdul Kareem M. Radhi, Information Engineering - Nahrin University, Iraq
 Dr. Mohd Nazri Ismail, University of Kuala Lumpur, Malaysia
 Dr. Manuj Darbari, BBDNITM, Institute of Technology, A-649, Indira Nagar, Lucknow 226016, India
 Ms. Izerrouken, INP-IRIT, France
 Mr. Nitin Ashokrao Naik, Dept. of Computer Science, Yeshwant Mahavidyalaya, Nanded, India
 Mr. Nikhil Raj, National Institute of Technology, Kurukshetra, India
 Prof. Maher Ben Jemaa, National School of Engineers of Sfax, Tunisia
 Prof. Rajeshwar Singh, BRCM College of Engineering and Technology, Bahal Bhiwani, Haryana,
India
 Mr. Gaurav Kumar, Department of Computer Applications, Chitkara Institute of Engineering and
Technology, Rajpura, Punjab, India
 Mr. Ajeet Kumar Pandey, Indian Institute of Technology, Kharagpur, India
 Mr. Rajiv Phougat, IBM Corporation, USA
 Mrs. Aysha V, College of Applied Science Pattuvam affiliated with Kannur University, India
 Dr. Debotosh Bhattacharjee, Department of Computer Science and Engineering, Jadavpur University,
Kolkata-700032, India
 Dr. Neelam Srivastava, Institute of engineering & Technology, Lucknow, India
 Prof. Sweta Verma, Galgotia's College of Engineering & Technology, Greater Noida, India
 Mr. Harminder Singh BIndra, MIMIT, INDIA
 Dr. Lokesh Kumar Sharma, Chhattisgarh Swami Vivekanand Technical University, Bhilai, India
 Mr. Tarun Kumar, U.P. Technical University/Radha Govinend Engg. College, India
 Mr. Tirthraj Rai, Jawahar Lal Nehru University, New Delhi, India
 Mr. Akhilesh Tiwari, Madhav Institute of Technology & Science, India
 Mr. Dakshina Ranjan Kisku, Dr. B. C. Roy Engineering College, WBUT, India
 Ms. Anu Suneja, Maharshi Markandeshwar University, Mullana, Haryana, India
 Mr. Munish Kumar Jindal, Punjabi University Regional Centre, Jaito (Faridkot), India

 Dr. Ashraf Bany Mohammed, Management Information Systems Department, Faculty of
Administrative and Financial Sciences, Petra University, Jordan
 Mrs. Jyoti Jain, R.G.P.V. Bhopal, India
 Dr. Lamia Chaari, SFAX University, Tunisia
 Mr. Akhter Raza Syed, Department of Computer Science, University of Karachi, Pakistan
 Prof. Khubaib Ahmed Qureshi, Information Technology Department, HIMS, Hamdard University,
Pakistan
 Prof. Boubker Sbihi, Ecole des Sciences de L'Information, Morocco
 Dr. S. M. Riazul Islam, Inha University, South Korea
 Prof. Lokhande S.N., S.R.T.M.University, Nanded (MH), India
 Dr. Vijay H Mankar, Dept. of Electronics, Govt. Polytechnic, Nagpur, India
 Dr. M. Sreedhar Reddy, JNTU, Hyderabad, SSIETW, India
 Mr. Ojesanmi Olusegun, Ajayi Crowther University, Oyo, Nigeria
 Ms. Mamta Juneja, RBIEBT, PTU, India
 Dr. Ekta Walia Bhullar, Maharishi Markandeshwar University, Mullana Ambala (Haryana), India
 Prof. Chandra Mohan, John Bosco Engineering College, India
 Mr. Nitin A. Naik, Yeshwant Mahavidyalaya, Nanded, India
 Mr. Sunil Kashibarao Nayak, Bahirji Smarak Mahavidyalaya, Basmathnagar Dist-Hingoli., India
 Prof. Rakesh.L, Vijetha Institute of Technology, Bangalore, India
 Mr B. M. Patil, Indian Institute of Technology, Roorkee, Uttarakhand, India
 Mr. Thipendra Pal Singh, Sharda University, K.P. III, Greater Noida, Uttar Pradesh, India
 Prof. Chandra Mohan, John Bosco Engg College, India
 Mr. Hadi Saboohi, University of Malaya - Faculty of Computer Science and Information Technology,
Malaysia
 Dr. R. Baskaran, Anna University, India
 Dr. Wichian Sittiprapaporn, Mahasarakham University College of Music, Thailand
 Mr. Lai Khin Wee, Universiti Teknologi Malaysia, Malaysia
 Dr. Kamaljit I. Lakhtaria, Atmiya Institute of Technology, India
 Mrs. Inderpreet Kaur, PTU, Jalandhar, India
 Mr. Iqbaldeep Kaur, PTU / RBIEBT, India
 Mrs. Vasudha Bahl, Maharaja Agrasen Institute of Technology, Delhi, India
 Prof. Vinay Uttamrao Kale, P.R.M. Institute of Technology & Research, Badnera, Amravati,
Maharashtra, India
 Mr. Suhas J Manangi, Microsoft, India
 Ms. Anna Kuzio, Adam Mickiewicz University, School of English, Poland
 Mr. Vikas Singla, Malout Institute of Management & Information Technology, Malout, Punjab, India,
India
 Dr. Dalbir Singh, Faculty of Information Science And Technology, National University of Malaysia,
Malaysia
 Dr. Saurabh Mukherjee, PIM, Jiwaji University, Gwalior, M.P, India
 Dr. Debojyoti Mitra, Sir Padampat Singhania University, India
 Prof. Rachit Garg, Department of Computer Science, L K College, India
 Dr. Arun Kumar Gupta, M.S. College, Saharanpur, India
 Dr. Todor Todorov, Institute of Mathematics and Informatics, Bulgarian Academy of Sciences,
Bulgaria

 Mr. Akhter Raza Syed, University of Karachi, Pakistan
 Mrs. Manjula K A, Kannur University, India
 Prof. M. Saleem Babu, Department of Computer Science and Engineering, Vel Tech University,
Chennai, India
 Dr. Rajesh Kumar Tiwari, GLA Institute of Technology, India
 Dr. V. Nagarajan, SMVEC, Pondicherry university, India
 Mr. Rakesh Kumar, Indian Institute of Technology Roorkee, India
 Prof. Amit Verma, PTU/RBIEBT, India
 Mr. Sohan Purohit, University of Massachusetts Lowell, USA
 Mr. Anand Kumar, AMC Engineering College, Bangalore, India
 Dr. Samir Abdelrahman, Computer Science Department, Cairo University, Egypt
 Dr. Rama Prasad V Vaddella, Sree Vidyanikethan Engineering College, India
 Prof. Jyoti Prakash Singh, Academy of Technology, India
 Mr. Peyman Taher, Oklahoma State University, USA
 Dr. S Srinivasan, PDM College of Engineering, India
 Mr. Muhammad Zakarya, CIIT, Pakistan
 Mr. Williamjeet Singh, Chitkara Institute of Engineering and Technology, India
 Mr. G.Jeyakumar, Amrita School of Engineering, India
 Mr. Harmunish Taneja, Maharishi Markandeshwar University, Mullana, Ambala, Haryana, India
 Dr. Sin-Ban Ho, Faculty of IT, Multimedia University, Malaysia
 Mrs. Doreen Hephzibah Miriam, Anna University, Chennai, India
 Mrs. Mitu Dhull, GNKITMS Yamuna Nagar Haryana, India
 Mr. Neetesh Gupta, Technocrats Inst. of Technology, Bhopal, India
 Ms. A. Lavanya, Manipal University, Karnataka, India
 Ms. D. Pravallika, Manipal University, Karnataka, India
 Prof. Ashutosh Kumar Dubey, Assistant Professor, India
 Mr. Ranjit Singh, Apeejay Institute of Management, Jalandhar, India
 Mr. Prasad S.Halgaonkar, MIT, Pune University, India
 Mr. Anand Sharma, MITS, Lakshmangarh, Sikar (Rajasthan), India
 Mr. Amit Kumar, Jaypee University of Engineering and Technology, India
 Prof. Vasavi Bande, Computer Science and Engneering, Hyderabad Institute of Technology and
Management, India
 Dr. Jagdish Lal Raheja, Central Electronics Engineering Research Institute, India
 Mr G. Appasami, Dept. of CSE, Dr. Pauls Engineering College, Anna University - Chennai, India
 Mr Vimal Mishra, U.P. Technical Education, Allahabad, India
 Dr. Arti Arya, PES School of Engineering, Bangalore (under VTU, Belgaum, Karnataka), India
 Mr. Pawan Jindal, J.U.E.T. Guna, M.P., India
 Dr. P. K. Suri, Department of Computer Science & Applications, Kurukshetra University, Kurukshetra,
India
 Dr. Syed Akhter Hossain, Daffodil International University, Bangladesh
 Mr. Nasim Qaisar, Federal Urdu Univetrsity of Arts , Science and Technology, Pakistan
 Mr. Mohit Jain, Maharaja Surajmal Institute of Technology (Affiliated to Guru Gobind Singh
Indraprastha University, New Delhi), India
 Dr. Shaveta Rani, GZS College of Engineering & Technology, India
 Dr. Paramjeet Singh, GZS College of Engineering & Technology, India

 Prof. T Venkat Narayana Rao, Department of CSE, Hyderabad Institute of Technology and
Management , India
 Mr. Vikas Gupta, CDLM Government Engineering College, Panniwala Mota, India
 Dr Juan José Martínez Castillo, University of Yacambu, Venezuela
 Mr Kunwar S. Vaisla, Department of Computer Science & Engineering, BCT Kumaon Engineering
College, India
 Prof. Manpreet Singh, M. M. Engg. College, M. M. University, Haryana, India
 Mr. Syed Imran, University College Cork, Ireland
 Dr. Namfon Assawamekin, University of the Thai Chamber of Commerce, Thailand
 Dr. Shahaboddin Shamshirband, Islamic Azad University, Iran
 Dr. Mohamed Ali Mahjoub, University of Monastir, Tunisia
 Mr. Adis Medic, Infosys ltd, Bosnia and Herzegovina
 Mr Swarup Roy, Department of Information Technology, North Eastern Hill University, Umshing,
Shillong 793022, Meghalaya, India

TABLE OF CONTENTS
1. Dynamic Shared Context Processing in an E-Collaborative Learning Environment
Jing Peng, Alain-Jérôme Fougères, Samuel Deniaud and Michel Ferney

Pg 1-9

2. Domain Specific Modeling Language for Early Warning System: Using IDEF0 for
Domain Analysis
Syed Imran, Franclin Foping, John Feehan and Ioannis M. Dokas

Pg 10-17

3. CETLs: Supporting Collaborative Activities Among Students and Teachers
Through the Use of Think- Pair-Share Techniques
N. A. Nik Azlina

Pg 18-29

4. Dynamic Clustering for QoS based Secure Multicast Key Distribution in Mobile Ad
Hoc Networks
Suganyadevi Devaraju and Ganapathi Padmavathi

Pg 30-37

5. A Theoretical Methodology and Prototype Implementation for Detection
Segmentation Classification of Digital Mammogram Tumor by Machine Learning and
Problem Solving Approach
Raman Valliappan, Sumari Putra and Rajeswari Mandava

Pg 38-44

6. Evaluation of Computer-aided Drug Delivery System with a Human Operator
Koji Kashihara and Yoshibumi Nakahara

Pg 45-50

7. Semantic Interoperability in Electronic Business
Juha Puustjärvi

Pg 51-63

8. Study of algorithms to optimize frequency assignment for autonomous IEEE 802.11
access points
Michael Finsterbusch and Patrick Schmidt

Pg 64-72

9. A Knowledge-Based Multi-Agent Approach for Initial Query Refinement in
Information Retrieval
Tatyana Ivanova and Ivan Momtchev

Pg 73-81

10. DEMAC: A Cluster-Based Topology Control for Ad Hoc Networks
Abhishek Majumder and Nityananda Sarma

Pg 82-88

11. Experimental Evaluation of Memory Effects on TCP Traffic in Congested
Networks
Kulvinder Singh and Anil Kumar

Pg 89-93

12. A Comparison Between Five Models Of Software Engineering
Nabil Mohammed Ali Munassar and A. Govardhan

Pg 94-101

13. Extracting Support Based k most Strongly Correlated Item Pairs in Large
Transaction Databases
Swarup Roy and Dhruba K. Bhattacharyya

Pg 102-111

14. The Use of Underwater Wireless Networks in Pisciculture at Amazon
Isadora Santos, Gleyson Souza and Mauro Margalho

Pg 112-116

15. Properties Based Simplification of 2D Urban Area Map Object
Jagdish Lal Raheja and Umesh Kumar

Pg 117-121

16. A proposed Ontology to support Modeling Diagrams
Nisreen Innab, Nidal Yousef and Mohammad Al-Fayoumi

Pg 122-127

17. Comparison between Conventional and Fuzzy Logic PID Controllers for
Controlling DC Motors
Essam Natsheh and Khalid A. Buragga

Pg 128-134

18. A Robust and Secure Methodology for Network Communications
Mayank Srivastava, Mohd. Qasim Rafiq and Rajesh Kumar Tiwari

Pg 135-141

19. A New Approach of Using Association Rule Mining in Customer Complaint
Management
Behrouz Minaei-Bidgoli and Elham Akhondzadeh

Pg 142-147

20. A Three Party Authentication for Key Distributed Protocol Using Classical and
Quantum Cryptography
Suganya Ranganathan, Nagarajan Ramasamy, Senthil Karthick Kumar
Arumugam, Balaji Dhanasekaran, Prabhu Ramalingam, Venkateswaran Radhakrishnan
and Ramesh Kumar Karpuppiah

Pg 148-152

21. Fault Tolerance Mobile Agent System Using Witness Agent in 2-Dimensional Mesh
Network
Ahmad Rostami, Hassan Rashidi and Majidreza Shams Zahraie

Pg 153-158

22. Securing Revocable Iris and Retinal Templates using Combined User and Soft
Biometric based Password Hardened Multimodal Fuzzy Vault
V. S. Meenakshi and Ganapathi Padmavathi

Pg 159-166

23. Interactive Guided Online/Off-line search using Google API and JSON
Kalyan Netti

Pg 167-174

24. Static Noise Margin Analysis of SRAM Cell for High Speed Application
Debasis Mukherjee, Hemanta Kr. Mondal and B. V. Ramana Reddy

Pg 175-180

25. A New Approach for Evaluation of Data Mining Techniques
Moawia Elfaki Yahia and Murtada El-mukashfi El-taher

Pg 181-186

26. Rule Based Selection of 2D Urban Area Map Objects
Jagdish Lal Raheja and Umesh Kumar

Pg 187-190

27. Design and Implementation of a System for Wireless Control of a Robot
Christian Hernández, Raciel Poot, Lizzie Narváez, Erika Llanes and Victor Chi

Pg 191-197

28. A Review of Supply Chain Management using Multi-Agent System
Vivek Kumar and S Srinivasan

Pg 198-205

29. Development of Ontology for Smart Hospital and Implementation using UML and
RDF
Sanjay Kumar Anand and Akshat Verma

Pg 206-212

30. Survey: Image Encryption Using Salsa20
Alireza Jolfaei and Abdolrasoul Mirghadri

Pg 213-220

31. Semantic layer based ontologies to reformulate the neurological queries in mobile
environment
Youssouf El Allioui and Omar El Beqqali

Pg 221-230

32. SMA and Mobile Agents Actors for Distributed Testing
Salma Azzouzi, Mohammed Benattou, My El Hassan Charaf and Jaafar Abouchabaka

Pg 231-238

33. Design Methodology of a Fuzzy Knowledgebase System to predict the risk of
Diabetic Nephropathy
E. RamaDevi and N. Nagaveni

Pg 239-247

34. Reengineering Of Education Institute And Coupling Measurement
Ashok Kumar, Anil Kumar and Kulvinder Singh

Pg 248-252

35. Design of Compressed Memory Model Based on AVC Standard for Robotics
Devaraj Verma C and VijayaKumar M.V

Pg 253-261

36. Iterative Refinement of Transformation Parameters for Image Registration
Jharna Majumdar, B. Vanathy and S. Lekshmi

Pg 262-267

37. Performance Analysis of FTTH at 10 Gbit/s by GEPON Architecture
Monika Gupta, Neeru Malhotra and A. N. Pathak

Pg 268-271

38. Modeling and design of evolutionary neural network for heart disease detection
K. S. Kavitha, K. V. Ramakrishnan and Manoj Kumar Singh

Pg 272-283

39. Human Tracking and Segmentation using Color Space Conversion
M. Sivabalakrishnan and D. Manjula

Pg 284-288

40. Character Recognition using RCS with Neural Network
C. Sureshkumar and T. Ravichandran

Pg 289-295

41. Performance Analysis of the Signaling Channels of OBS Switches
Hulusi-Yahyagil, A. Halim Zaim, M. Ali Aydin and Ö. Can Turna

Pg 296-301

42. A Color Image Digital Watermarking Scheme Based on SOFM
J. Anitha and S. Immanuel Alex Pandian

Pg 302-309

43. E-Government Challenges in Public Sector: A case study of Pakistan
Nasim Qaisar and Hafiz Ghufran Ali Khan

Pg 310-317

44. Novel Genetic Algorithm towards Implementing a Lining-Layout Optimization
Strategy
Ismadi Md Badarudin, Abu Bakar Md Sultan, Md Nasir Sulaiman, Ali Mamat
and Mahmud Tengku Muda Mohamed

Pg 318-326

45. Computational Analysis of Optical Neural Network Models to Weather
Forecasting
A. C. Subhajini and V. Joseph Raj

Pg 327-330

46. A Simple Modified Transmission Line Model for Inset Fed Antenna Design
M. Fawzi Bendahmane, Mehadji Abri, Fethi Tarik Bendimerad and Noureddine BoukliHacene

Pg 331-335

47. Optimum Multilevel Image Thresholding Based on Tsallis Entropy Method with
Bacterial Foraging Algorithm
P. D. Sathya and R. Kayalvizhi

Pg 336-343

48. A Lazy Ensemble Learning Method to Classification
Haleh Homayouni, Sattar Hashemi and Ali Hamzeh

Pg 344-349

49. Automated Test Data Generation Based On Individual Constraints and Boundary
Value
Hitesh Tahbildar and Bichitra Kalita

Pg 350-359

50. Quantum Multiplexer Designing and Optimization applying Genetic Algorithm
Debarka Mukhopadhyay and Amalendu Si

Pg 360-366

51. Hybrid Face Detection in Color Images
Mehrnaz Niazi and Shahram Jafari

Pg 367-373

52. An Evolvable-Clustering-Based Algorithm to Learn Distance Function for
Supervised Environment
Zeinab Khorshidpour, Sattar Hashemi and Ali Hamzeh

Pg 374-381

53. Product Lines' Feature-Oriented Engineering for Reuse: A Formal Approach
Marcel Fouda Ndjodo and Amougou Ngoumou

Pg 382-393

54. Ternary Tree and Clustering Based Huffman Coding Algorithm
Pushpa R. Suri and Madhu Goel

Pg 394-398

55. Risk Quantification Using EMV Analysis - A Strategic Case of Ready Mix
Concrete Plants
Roopdarshan Walke, Vinay Topkar and Sajal Kabiraj

Pg 399-408

56. Rule Based Machine Translation of Noun Phrases from Punjabi to English
Kamaljeet Kaur Batra and Gurpreet Singh Lehal

Pg 409-413

57. A Study Of Image Segmentation Algorithms For Different Types Of Images
Krishna Kant Singh and Akansha Singh

Pg 414-417

58. Software Architecture, Scenario and Patterns
R.V. Siva Balan and M. Punithavalli

Pg 418-423

59. Efficient 2.45 GHz Rectenna Design with high Harmonic Rejection for Wireless
Power Transmission
Zied Harouni, Lotfi Osman and Ali Gharsallah

Pg 424-427

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

1

Dynamic Shared Context Processing in an E-Collaborative
Learning Environment
Jing Peng1, Alain-Jérôme Fougères1, Samuel Deniaud1 and Michel Ferney1
1

M3M Laboratory, University of Technology of Belfort-Montbéliard
Belfort, France

Abstract
In this paper, we propose a dynamic shared context processing
method based on DSC (Dynamic Shared Context) model, applied
in an e-collaborative learning environment. Firstly, we present
the model. This is a way to measure the relevance between
events and roles in collaborative environments. With this method,
we can share the most appropriate event information for each
role instead of sharing all information to all roles in a
collaborative work environment. Then, we apply and verify this
method in our project with Google App supported e-learning
collaborative environment. During this experiment, we compared
DSC method measured relevance of events and roles to manual
measured relevance. And we describe the favorable points from
this comparison and our finding. Finally, we discuss our future
research of a hybrid DSC method to make dynamical information
shared more effective in a collaborative work environment.
Keywords: Dynamical Shared Context, Relevant Information
Sharing, Computer Supported Collaborative Learning, CSCW

1. Introduction
Everyone now recognizes that effective collaboration
requires that each member of the collaboration receives
relevant information on the activity of his partners. The
support of this relevant information sharing consists of
models for formalizing relevant information, processors
for measuring relevance, and indicators for presenting
relevant
information.
Various
concepts
and
implementations of relevant information models have been
presented in the areas of HCI and Ubiquitous Computing.
System Engineering (SE) is the application field of our
research activity. According to ISO/IEC 15288:2002
standard [1], designing a system-of-interest needs 25
processes which are grouped into technical process,
project processes, etc. The system life cycle stages are
described by 11 technical processes. The first ones are the
Stakeholder Requirements Definition Process, the
Requirements Analysis Process and the Architectural
Design Process. They correspond to the left side of the
well-known entity Vee cycle [2] which links the technical
processes of the development stage with the project cycle

(described by the ISO/IEC 26702:2007 standard [3]). The
system architect plays a significant role during the system
development. Despite description of different tasks he has
to realize, there is a risk of lack of understanding of his
activity and of supporting the results of his system
architecture design, in a collaborative manner.
Hence, to improve collaboration between system architects
and other designers, we have defined two scientific
objectives: 1) observing, studying and modeling the daily
activity of system architect in order to produce new
knowledge and to propose an activity model which
describe his critical activity, and 2) facilitating cooperative
activity of designers and system architects, in improving
the sharing of their work context [4].
Regarding the second objective, we conducted two
experiments in educational context (student projects for a
course in digital factory):
 For the first experiment during spring semester 2009,
we developed and implemented a computational model
of relevant shared information (0-1 static model),
based on an activity modelling using Activity Theory
[5, 6] and a pre-acquisition of student interests,
according to roles they would play in the proposed
project. Kaenampornpan and O’Neill [5] have built a
context classification model based on AT to define the
elements of context. Cassens and Kofod-Petersen [6]
have proposed the use of AT to model the context. By
extension of this work, we proposed a context model
consisting of subject context, object context, rule
context, community context, tool context and division
of labour context (Figure 1).
 For the second experiment, by repeating the same type
of project during spring semester 2010, based on
knowledge acquired from previous experience, we
developed and implemented a dynamic computational
model of relevant shared information (DSC model).

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

2

ISSN (Online): 1694-0814
www.IJCSI.org
Context

Division of labour

Task

Tool

Object

Role

Subject

Requirement

Community

Rule

Phase

Fig. 1: Context modeling based on Activity Theory

In this paper, we firstly present DSC methodology which
is a technique to measure the relevance between events
and roles. Then, we apply this method in our collaborative
environment project, and compare the related results with
the results of manual-analyzing of the relevance. At last,
we analyze the results of relevance measurement, and
propose a new research direction to further improve the
relevance of calculation of information sharing contexts.

2. Issue of this Research
Information technology has played an important role in the
higher education infrastructure, and E-learning systems
make the education more and more flexible and ubiquitous
[7, 8]. Since learning is considered as a collaborative
activity, a variety of CSCL (Computer Supported
Collaborative Learning) systems have been developed in
order to have a more effective study performance. With
CSCL systems, students and teachers can perform all their
activities in this virtual classroom environment, for
instance, shared resources, disseminating knowledge and
information, discussing, and following the project, etc.
In E-learning systems, sharing and disseminating
information among the students and the teachers are very
helpful and meaningful, such as learning resources,
questions, feed-backs, etc. However in most CSCW
(Computer Supported Collaborative Work) systems,
sharing and disseminating information may cause a
redundancy which has a bad influence on work and study
performance [9, 10]. In our project, it is found that the
redundant shared information will affect study motivation
and performance. Therefore the elimination of the
redundant shared and disseminated information becomes
more and more crucial and important [11].
Measuring the relevance between events and roles, such as
what the information retrieval does, when there is a query
[12, 13]. In present study, that measurement is the way to
do share more precisely, when an event occurs in the
collaborative learning environment. We need to find the
most appropriate roles or users to share this specific event
information. This problem is resolved in three steps:

firstly, how to capture and identify event attributes of an
event when it is generated in the collaborative learning
environment? Secondly, how to identify and evaluate a
role’s interest degree in the collaborative learning
environment, which means: what kinds of events will be
useful for him, and we can share these events information
to him? Thirdly, how to measure the relevance degree
between these roles and these events in the collaborative
environment? In the following section, these steps will be
explained in detail.

3. Method of Research
Our research has been carried out with two steps in two
years experiments:
 Step 1: Context Factor collection. During the first
experiment, we collected the context factors
according to our context model from all the
information of events.
 Step 2: Relevance measurement. During this
experiment, we calculate the relevance dynamically
through the context factor, which represent the
event attribute.
DSC is a generic extensible context awareness method,
which includes simple but powerful and lightweight
mechanisms for the generation of relevant shared
information to the appropriate users. The concept of DSC
is based on event attributes, roles’ interest degree, and
relevance measurement. Relevance has been studied for
the recent fifty years, and the general practice of relevance
analysis is to research or to analyze the relationships
between events or entities. The relevance measure or score
is a quantitative result of the relevance analysis [14, 15,
16]. In this paper, our method is based on context model
and relevance analysis (Figure 2). This method can be
descried in three parts from left to right:
 Part 1: Event capture and Role’s interests capture.
In this part, we suppose that events could be
presented by text and we gathered them during the
experiment. Then we used Natural Language
Processing tool to capture the key words as our
context factors. Similar demonstration can be made
for the role’s interest capture. By supposing that the
role’s interests could be presented by text, we
captured them during the ongoing of the experiment.
 Part 2: Relevance measurement. Details of this part
are illustrated in the following paragraph.
 Part 3: Relevantly shared information. The measured
information will be shared by relevance with
different role in order to reduce the redundancy of
information shared.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

3

ISSN (Online): 1694-0814
www.IJCSI.org

In this paper, we do not describe the first phase of this
methodology, to focus on treatments carried out on
knowledge (events and interests of roles). Simply put, the
automatic capture of events, during the cooperative
activity mediated by our environment, can be done
automatically by an agent-based system [17, 18]. Indeed,
agents can observe the work conducted in the environment
and can capture and record all events and their context of
appearance.
1

2

Event
capture
Role’s
Interests
capture

3

Event
Attributes
Context
model

Role’s
Interests
Degree

Relevance
measurement

Relevantly
shared
information

with E : total number of events in the corpus,

e : ci  e : number of events where ci appears.
With these IEF parameters of CF, event attributes and
role’s interest degree will be presented in following.

3.2. Event Attributes Modeling
For an event, we need a parameter to specify EA (Event
Attributes), which is a set of importance degree of CF in a
specific event. Firstly, we define CFF (Context Factor
Frequency) in equation (3) to present the probability of ci
in the total words appear in an event description or
presentation.

cffi 

ni



k

nk

(3)

Fig. 2: Methodology of modeling Dynamical Shared Context (DSC)

where ni is the number of occurrences of the considered ci
in an event (W is the sum of all the words in this event).

3.1. Context Modeling
In the presented model, contexts are used to cluster
information semantically. If we have a closer look at the
term context, Wang [19] defines a context as “any
information that can be used to characterize the situation
of entities in the collaborative space.” We propose a
conceptual model that classifies contextual information
into 7 categories as expressed in equation (1): Role
context, Task context, Object context, Tool context,
Requirement context, Community context and Event type
context [5, 6, 20, 21, 22].
Context = {Role, Object, Tool, Requirement, Community,
Event_type}
(1)
In each category, there are many terms to present this
context characteristic. We define these terms as CF
(Context Factor): ci which can be a word, or a sentence. A
CF is used to synthesize and describe an event attribute or
a role’s interest degree. In our case, CF is extracted by a
probability method from a specific collaborative learning
environment. We extract 60 CF from previous experiment,
and we will use these CF in the next section.
Inspired from TF-IDF (Term Frequency – Inverse
Document Frequency) method [23, 24, 25, 26], we define
IEF (Inverse Event Frequency) as a measure of general
importance of CF in a special corpus. Equation (2)
presents the general importance of ci (CF):

iefi  log

E
e : ci  e

(2)

Then, we define EW (Event Weight) of ci in equation (4),
which indicates the importance degree of ci in a specific
event.
ewi  cffi  ief i
(4)
Finally, EA is obtained as (5):

ea  ew1 , ew2 , ew3 ,...ewn 

(5)

3.3. Role Interest Degree Modeling
A parameter presenting the RID (Role’s Interest Degree),
which represents the interest degree of CF for a specific
role is needed. In the proposed method this can be
presented and evaluated by CF. Firstly, we define role’s
REF (Relevant Event Frequency) in equation (6) to
specify the probability of the events where ci appears in
the total number of events relevant with a role.

refi 

er : ci  er 
Er

(6)

with Er : total number of events in the corpus relative to

this role, er : ci  er  : number of events relative to this
role where ci appears.
Then, RW (Role Weight) of ci is defined in following
equation for a role, which specifies the importance degree
of ci for a specific role (7).
rwi  refi  iefi
(7)

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

4

ISSN (Online): 1694-0814
www.IJCSI.org

assemble the fourth sub-assembly (SA 4) and then creates
the final product.

Finally, RID is obtained as (8):

rid  rw1 , rw2 , rw3 ,...rwn 

(8)

3.4. Context Relevance Measurement
The relevance measurement is realized by cosine
similarity method [27, 28, 29] in (9). Relevant sharing is a
concept which describes the relevance of shared
information. It considers that the relevance of shared
information is a measurable and quantitative issue. In our
opinion, the relevance of sharing is the most essential
motive factor to share information in the collaborative
work. Our aim is to measure relevance between events and
roles.

v v
relevanceve , vr   cos  e r
ve vr

Product
SA 1
SA 2
SA 3

(9)

In practice, it is easier to calculate the cosine of the angle
between the vectors.  is the angle between event
attributes vector and role’s interest degree vector.
The event attributes vector for event e can be built from
equation (10):

ve  ew1,e , ew2,e , ew3,e ,...ewn,e 

As shown in table 1, the students are divided into 2 groups
of 15 persons. Each group aims at designing an assembly
system based on a concept which is different from the one
of the other group. The two different concepts of assembly
system are firstly given to students at the beginning of the
project. Then, each group is organized in 3 design teams:
two teams are in charge of one sub-assembly (SA 1, SA 2)
and the third one is in charge of the last sub-assembly
(SA 4) and the whole assembly of the product. The other
sub-assembly (SA 3) is assumed to be provided by an
external provider.

SA 4 +product

Table 1: Project organization
Group 1
Group 2
Team 1
Team 1
Team 2
Team 2
External
External
provider
provider
Team 3
Team 3

Layer
L2
L2
L2
L2 + L1

The following roles are defined and assigned to team
members respectively:
 Team manager (TM): Responsible of the planning
and costs;

(10)



Synthesis responsible (SR): Management of the
architecture and simulation of the assembly system;

The role’s interest degree vector for role r can be built
from equation (11):



Quality responsible (QR): Responsible of the
quality according to the requirement and standard;



Designer (DS), Common role to each team
member.

vr  rw1,r , rw2,r , rw3,r ,...rwn,r 

(11)

4. Experiment
In this section, we test the above method about calculating
the relevance degree between events and roles by an
example from our project. In practice, we apply this
method in our Google App collaborative learning where it
helps to send the email and announce to the appropriate
receivers instead of all members in the project (Figure 3).
The project given to the students aims at designing an
assembly system following the lean manufacturing
principles, using the e-collaborative learning environment
to manage cooperation in groups and project. The studied
product is a hydraulic motor composed of 4 subassemblies (SA). The inherent structure of this product
implies the use of the first three sub-assemblies to

According to the architectural Vee cycle [29], we
identified two architectural layers. The top layer (L1)
corresponds to the development of the whole assembly
system and the bottom layer (L2) corresponds to the
development of the three sub-assembly systems. Hence the
team in charge of the whole assembly of the product is
responsible of the top layer. From stakeholders’
requirements, it defines the design requirements and
architects the whole assembly system. Then it allocates to
the bottom layer a set of derived requirements – the subassembly systems must satisfy. Finally, the synthesis
responsible of the bottom layer provide the architectures
of the sub-assembly systems which are then integrated into
the whole assembly system by the synthesis responsible of
the top layer in order to provide a system which verifies
the synthesized stakeholders’ requirements.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Fig. 3: Illustration of the e-collaborative learning environment used by the students: here, the project leader of Group 11 is currently editing the work of item 6
(information will be forwarded by email to members of Group 11)

4.1. Context Modeling
In our case, we get 219 samples of recorded events, such as
email, message and question or notification. These context
factors are classified according to our context model, and
82 typical event examples are selected to measure the
relevance.
We take an example from Team1 of Group1 called Group
11. This event happened at the final step in the project
cycle (Event 80, illustrate in Figure 4). The Team1
Manager announced their team’s layout situation in digital
factory relative to the other 2 teams. Team1 Manager
shared this information usually only with his team
members, but this is not a relevant sharing by manual
analysis. In this part, we measure relevance between this
event and all the roles in Group1 and compare calculating
result of relevance with another model realized by a survey
and manual-analysis of relevance. Finally, we discuss the
meaning of results.
In this project, we calculated the IEF of all words in the
events samples by using equation (2), and we selected the
64 highest IEF as our CF according to context model
which are partially listed in table 2. The CF here was

selected with context knowledge, not only with calculate
results.
Table 2: Inverse Event Frequency
CF
IEF
1.4366926
1
0.83463261
2
0,46665582
3
0,95957134
4
…..
……
0,83463261
64

4.2. Event Attributes Modeling
In table 3, we present the number of each CF appeared in
original description of this event example. Then we can
calculate the CFF by dividing it by the total words in event
by equation (3). There are 289 words in this event
example.
Table 3: Context Factor Frequency
CF
CFF
0
1
0
2
0.00692042
3
0,00346021
4
…..
….
0
64

5

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

6

ISSN (Online): 1694-0814
www.IJCSI.org

We present the EW of these context factors in table 4
calculated by equation (4).

……
64

Sequentially, we use the obtained event attributes to make
the event attributes vector vE by equation (13)
(13)
vE = [0, 0, 0.0031, 0.0032,…… 0]

4.3. Role Interest Degree Modeling

Table 5: Team1’s roles Relevant Event Frequency
CF
REF
SR

DS1

DS2

1

0.15

0

0.1428

0

0

2

0.2

0,3333

0.1428

0

1

3

0.75

0,3333

0.7143

0.6667

0

4

0.4

0,3333

0.1428

0

0

……

……

……

......

……

……

64

0.5

0

0.1428

0

0

SR

DS1

DS2

0

0

0

0

0

2

0.1333

0,1111

0

0

0.5

3

0.2667

0,1111

0

0

0

4

0,0667

0

0

0

0

……

……

……

……

……

0,1333

0

0

0

0

Table 7: Team3’s roles Relevant Event Frequency
CF
REF
TM

QR

0

0

0,2155

0

0,2052

0

0

2

0,1669

0,4789

0,1192

0

0,8346

3

0,3500

0,2782

0,3333

0,3111

0

4

0,3838

0,1556

0,1370

0

0

……

……

......

……

......

0,4173

0

0,1192

0

0

64

SR

DS

1

0

0

0

0

2

0

0

0

0

3

0.1

0.125

0

0

4

0

0

0

0

SR

DS1

DS2

Table 9: Team2’s Role Weight
RW
TM

QR

SR

DS1

DS2

1

0

0

0

0

0

2

0,1915

0,0927

0

0

0,4173

3

0,2226

0,0927

0

0

0

4

0,6077

0

0

0

0

……

……

……

……

……

0,1113

0

0

0

0

……

CF

Table 10: Team3’s Role Weight
RW
TM

1

64

0.125

1

64

Table 6: Team2’s roles Relevant Event Frequency
CF
REF

……

0

QR

CF

The different roles’ REF calculated by equation (6) is listed
in tables 5-7.

QR

......

TM

……

TM

......

Table 8: Team1’s Role Weight
RW

CF

The event attributes can be obtained via equation (12):
ea=(0, 0, 0.0031, 0.0032,…… 0)
(12)

QR

......

The RW of these context factors calculated by equation (7)
is listed in tables 8-10.

Table 4: Event Weight
CF
EW
0
1
0
2
0,0031
3
0,0032
4
…..
….
0
64

TM

......

QR

SR

DS1

1

0

0

0

0

2

0

0

0

0

3

0,0467

0,0583

0

0

4

0

0

0

0

……

……

……

……

0

0,1043

0

0

……
64

The role Team1 Manager’s interest degree can be obtained
by (14):
(14)
ridT1M = (0.2155, 0.1669, 0.3500, …, 0.4173)
The Team1 Manager’s interest degree is sequentially used
to make the role interest degree vector by equation (15):
(15)
vT1M = [0.2155, 0.1669, 0.3500, …, 0.4173]
The same demonstration can be made to get other roles
interest degree vectors, which are expressed in equations
(16)-(28), respectively:
(16)
vT1QR = [0, 0.4789, 0.2782, 0.1556, …, 0]
vT1SR = [0.2052, 0.1192, 0.3333, 0.1370, …, 0.1192] (17)

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

7

ISSN (Online): 1694-0814
www.IJCSI.org

vT1DS1 =
vT1DS2 =
vT2M =
vT2QR =
vT2SR =
vT2DS1 =
vT2DS2 =
vT3M =
vT3QR =
vT3SR =
vT3DS =

[0, 0, 0.3111, 0, …, 0]
[0, 0.8346, 0, 0, …, 0]
[0, 0.1915, 0.2226, 0.6077, …, 0.1113]
[0, 0.0927, 0.0927, 0, …, 0]
[0, 0, 0, 0, …, 0]
[0, 0, 0, 0, …, 0]
[0, 0.4173, 0, 0, …, 0]
[0, 0, 0.0467, 0, …, 0]
[0, 0, 0.0583, 0, …, 0.1043]
[0, 0, 0, 0, …, 0]
[0, 0, 0, 0, …, 0]

(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)

Table 12: Team2’s roles Relevance
Team2 roles
T2M
T2QR
T2SR
T2DS1
0.4748
0.1224
0.1099
0.0551
High
Low
low
Low
12
5
8
5
High
Low
High
Low

With the above mentioned method, we developed a
simulator which can calculate the relevance degree
between this event and all the roles in this project. This
simulator uses DSC model and 0-1 model (mentioned in
the following). It can also show the highest relevance
members with this event sample in red, and this is a sharing
recommendation for the user, when they want to share
some information with others. The relevance measurement
results are listed in tables 11-13.
A student survey conducted at the end of the project
confirmed the interest and increasing relevance of
information they had received over the project progressed.
In this survey, we evaluated the students’ satisfaction of
relevance information shared recommended by our DSC
model. To further improve the relevance of information to
deliver, we now have to work on a hybrid model that
combines the advantages of both models (TF-IDF model
and 0-1 model): a previous knowledge acquisition (a priori
interests expressed by the different roles), and a dynamic
calculation based on events captured by the environment.
Our first action in this direction has been to develop a tool
to trace and compare the two approaches (Figure 4). This
tool allows one to follow step by step the evolution of the
dynamic calculation of relevance of information sharing
for different roles, and to establish where the dynamic
model TF-IDF is more efficient than the static model 0-1.
Table 11: Team1’s roles Relevance
Team1 roles
T1TM
T1QR
T1SR
T1DS1
0.7654
0.3141
0.4218
0.2456
High
High
High
Low
12
4
8
5
High
Low
High
Low

T1DS2
0.0405
Low
5
Low

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

No

T2DS2
0.0689
Low
6
Low

No

No

No

No

No

Yes

No

No

No

No

Table 13: Team1’s roles Relevance
Team3 roles
T3M
T3QR
T3SR
0.4129
0.2465
0.2424
DSC
Model
High
Low
Low
12
4
8
0-1 Model
Low
Low
High
Used to
No
No
No
sharing
Manual
Yes
No
No
analysis

Relevance

4.4. Context Relevance Measurement

Relevanc
e
DSC
Model
0-1
Model
Used to
sharing
Manual
analysis

Relevanc
e
DSC
Model
0-1
Model
Used to
sharing
Manual
analysis

T3DS
0.0912
Low
5
Low
No
No

From these results, we conclude that:
1. Relevance measured by DSC model shows that this
event has high relevance with T1M, T1QR, T1SR, T2M,
T3M, which are the same shared results by manual
analysis.
2. In results from 0-1 model, some roles’ relevance is not
coherent with the manual analysis shared situation, such
as T1QR.
3. In usually shared way, sharing information with which
person is not accurate. By this sharing way, some roles
have been missed, such as T2M and T3M; some roles
have been shared with redundancy, such as T1DS1 and
T1DS2.
Through this example, we find that DSC model can make a
reasonable relevance measurement between event and role
relative to the manual analysis of sharing, and this
application can make sharing more accurate and efficient.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

8

ISSN (Online): 1694-0814
www.IJCSI.org

To improve the relevance of information shared, we are
now working in two directions: 1) proposition of a hybrid
model, combining acquisition of interests as the roles of
actors, and dynamic capture of events occurring in the
course of a project, and 2) analysis of the relevance of a
model based on a hierarchy of CF. This hierarchy could be
established by an expert before start of collaborative
projects.

References
ISO/IEC 15288:2002, "Systems engineering – System life
cycle processes", ISO 2002.
[2] K. Forsberg, and H. Mooz, "The relationship of system
engineering to the project cycle", in Proc. of the NCOSE
conference, 1991, pp. 57-65.
[3] ISO/IEC 26702:2007, "Standard for Systems Engineering –
Application and management of the systems engineering
process", ISO 2007.
[4] J. Peng, A.-J. Fougères, S. Deniaud, and M. Ferney, "An ECollaborative Learning Environment Based on Dynamic
Workflow System", in Proc. of the 9th Int. Conf. on
Information Technology Based Higher Education and
Training (ITHET), Cappadocia, Turkey, 2010, pp.236-240.
[5] M. Kaenampornpan, and E. O’Neill, "Modelling context: an
activity theory approach", In Markopoulos, P., Eggen, B.,
Aarts, E., Croeley, J.L., eds.: Ambient Intelligence: Second
European Symposium on Ambient Intelligence, EUSAI 2004.
pp. 367–374, 2004.
[6] J. Cassens, and A. Kofod-Petersen, "Using activity theory to
model context awareness: a qualitative case study". In Proc.
of the 19th International Florida Artificial Intelligence
Research Society Conference, 2006, pp. 619-624.
[7] A. J. Cuthbert, "Designs for collaborative learning
environments: can specialization encourage knowledge
integration?", in Proc. of the 1999 conference on Computer
support for collaborative learning (CSCL '99), International
Society of the Learning Sciences, 1999.
[8] A. Dimitracopoulou, "Designing collaborative learning
systems: current trends & future research agenda", in Proc. of
the 2005 conference on Computer support for collaborative
learning (CSCL '05), International Society of the Learning
Sciences, 2005, pp. 115-124.
[9] L. Lipponen, "Exploring foundations for computer supported
collaborative learning", in Proc. of the Conf. on Computer
Support for Collaborative Learning (CSCL '02), International
Society of the Learning Sciences, 2002, pp.72-81.
[10] A. Weinberger, F. Fischer, and K. Stegmann, "Computer
supported collaborative learning in higher education: scripts
for argumentative knowledge construction in distributed
groups", in Proc. of the 2005 conference on Computer support
for collaborative learning (CSCL '05), International Society
of the Learning Sciences, 2005, pp. 717-726.
[11] T. Gross, and W. Prinz, "Modelling shared contexts in
cooperative environments: concept, implementation, and
evaluation", Computer Supported Cooperative Work 13,
[1]

Fig. 4: Tool for tracking and calculating relevance of information to share

5. Conclusion
E-collaborative learning systems have been developed to
support collaborative learning activity, which makes the
study more and more effective. Now we think that learning
activity will have a better performance and effectiveness if
we can eliminate the redundant shared information in the ecollaborative system. Therefore, we proposed an
implementation of DSC method supported by an ecollaborative learning system environment. This
environment can supply pertinent useful resources, propose
appropriate workflow to realize project, share and
disseminate relevant information.
We have described an original methodology of DSC model
to address the problem of shared redundancy in
collaborative learning environments. In this method,
context model are applied for preparing the DSC modeling.
A collective activity analysis approach (Activity Theory)
allows us to build this context model. This phase is critical,
since the dynamic shared context model depends on this
context model to obtain satisfying context factors.
After describing our methodology we presented an
illustration in an e-collaborative learning context. In this
illustration, we selected 82 typical events from the project,
and measured the relevance between these events and roles
by using the tool Relevance Processing V_0.1. From the
results of relevance, we got a useful advice to share the
information in a collaborative environment.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010

9

ISSN (Online): 1694-0814
www.IJCSI.org

Kluwer Academic Publishers, Netherlands, 2004, pp. 283303.
[12] J. L. Dessalles, La pertinence et ses origines cognitives,
Nouvelles théories, Hermes-Science Publications, Paris, 2008.
[13] R. Johnson, S. Harizopoulos, N. Hardavellas, K. Sabirli, I.
Pandis, A. Ailamaki, N. G. Mancheril, and B. Falsafi, "To
share or not to share?", in Proc. of the 33rd international
conference on Very large data bases, Vienna, Austria, 2007,
pp. 23-27.
[14] J. Mesmer-Magnus, and L. DeChurch, "Information sharing
and team performance: A meta-analysis", Journal of Applied
Psychology, Vol. 94, No. 2, 2009, pp. 535–546.
[15] M. Zhong, Y. Hu, L. Liu, and R. Lu, "A practical approach
for relevance measure of inter-sentence", In Proc. of the 2008
Fifth international Conference on Fuzzy Systems and
Knowledge Discovery, Vol. 4, 2008, pp. 140-144.
[16] W. B. Croft, and D. J. Harper, "Using probabilistic models
of document retrieval without relevance information", Journal
of documentation, Vol. 35, 1979, pp. 285-295.
[17] A.-J. Fougères, "Agents to cooperate in distributed design
process", IEEE International Conference on Systems, Man
and Cybernetics, (SMC’04), The Hague, Netherlands, 2004,
pp.2629-2634.
[18] A.-J. Fougères, "Agent-Based µ-Tools Integrated into a CoDesign Platform", Int. J. of Computer Science Issues, Vol. 7,
Issue 3-8, 2010, pp. 1-10.
[19] G. Wang, J. Jiang, and M. Shi, "Modeling contexts in
collaborative environment: A new approach", Computer
Supported Cooperative Work in Design III, 2007, pp 23-32.
[20] J. J. Jung, "Shared context for knowledge distribution: A
case study of collaborative taggings", In Proc. of the 21st int.
conference on Industrial, Engineering and Other Applications
of Applied Intelligent Systems, New Frontiers in Applied
Artificial Intelligence, Wrocław, Poland, 2008, pp. 641-648.
[21] A. Dey, D. Salber, and G. Abowd, "A conceptual framework
and a toolkit for supporting the rapid prototyping of contextaware applications", Human-Computer Interaction Journal,
Vol. 16 , No. 2-4, 2001, pp. 97-166.
[22] P. J. Brezillon, "Explaining for developing a shared context
in collaborative design", in Proc. of the13th Int. Conf. on
Computer Supported Cooperative Work in Design, 2009,
pp.72-77.
[23] H. C. Wu, R. W. Luk, K. F. Wong, and , K. L. Kwok,
"Interpreting TF-IDF term weights as making relevance
decisions", ACM Trans. on Information System, Vol. 26, No.
3, 2008, pp. 1-37.
[24] T. Roelleke, and J. Wang, "TF-IDF uncovered: a study of
theories and probabilities", In Proc. of the 31st Annual int.
ACM Conf. on Research and Development in Information
Retrieval (SIGIR '08), ACM, NY, 2008, pp. 435-442.

[25] K. Church, and W. Gale, "Inverse document frequency (idf):

A measure of deviation from poisson", in Proc. of the third
workshop on very large corpora, 1995, pp. 121-130.
[26] S. Tata, and J. M. Patel, "Estimating the selectivity of tf-idf
based cosine similarity predicates". SIGMOD Rec. New
York, Vol. 36, No. 2, 2007, pp. 7-12.
[27] M. Esteva, and H. Bi, "Inferring intra-organizational
collaboration from cosine similarity distributions in text
documents". In Proc. of the 9th ACM/IEEE-CS Joint Conf. on
Digital Libraries, JCDL '09. ACM, New York, 2009, pp. 385386.
[28] S. Yuan, and J. Sun, "Ontology-Based Structured Cosine
Similarity in Speech Document Summarization", in Proc. of
the 2004 IEEE/WIC/ACM int. Conf. on Web intelligence,
IEEE Computer Society, Washington, 2004, pp. 508-513.
[29] K. Forsberg, H. Mooz, and H. Cotterman, Visualizing
project management, models and frameworks for mastering
complex systems, 3rd edition, John Wiley & Sons, 2005.
Jing Peng is Computer Engineer from University of Technology of
Troyes (UTT). She is preparing PhD in Computer Science &
System Engineering in the Laboratory of M3M at University of
Technology of Belfort-Montbéliard (UTBM). Her research focus on
context modeling, dynamical context shared and relevant
information sharing.
Alain-Jérôme Fougères is Computer Engineer and PhD in
Artificial Intelligence from University of Technology of Compiègne
(UTC). He is currently member of the Laboratory of Mecatronics3M
(M3M) at University of Technology of Belfort – Montbéliard (UTBM),
where he conducts research on cooperation in design. His areas of
interests and scientific contributions concern: the natural language
processing, the knowledge representation, the multi-agent system
design (architecture, interactions, communication and co-operation
problems). In recent years, his research has focused on the context
of co-operative work (mediation of cooperation and context
sharing), mainly in the field of mechanical systems co-design.
Samuel Deniaud, Mechanical Engineer and holder of a PhD from
the University of Franche-Comté, is presently Assistant Professor in
the Mechatronic3M laboratory at the University of Technology of
Belfort-Montbéliard (UTBM) since 2001. He conducts research
activities in the field of system engineering, more particularly on the
activities, methods and tools for designing system architecture from
functional and dysfunctional points of view. He is currently applying
his results on the architectural design activity of vehicles, and their
associated production systems by using digital factory tools.
Michel Ferney, holder of a Ph.D. from the University of FrancheComté (UFC), is presently Head Professor in the Laboratory of
Mecatronics3M (M3M) at the University of Technology of Belfort –
Montbéliard (UTBM). His research field of interest covers
mechatronic product design and modeling, production systems
modeling and soft computing.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Domain Specific Modeling Language for Early Warning System:
Using IDEF0 for Domain Analysis
Syed Imran, Franclin Foping, John Feehan and Ioannis M. Dokas
Cork Constraint Computation Centre, University College Cork
Western Gateway Building, Cork, Ireland

Abstract
Domain analysis plays a significant role in the design phase of
domain specific modeling languages (DSML). The Integration
Definition for Function Modeling (IDEF0) is proposed as a
method for domain analysis. We implemented IDEF0 and
managed to specify reusable domain specific language artifacts
in a case study on water treatment plants safety. The
observations suggest that IDEF0 not only examines the technical
aspects of the domain but considers also its socio-technical
aspects; a characteristic listed as DSML requirement in the case
study.
Keywords: Domain Analysis, Domain Specific Modeling,
IDEF0, Reusable Domain Models, Early Warning Systems.

1. Introduction
The objective of our research is to develop a graphical
language able to represent concepts related to the domain
of water treatment plants operations and safety. The
graphical language will be an integrated component of an
Early Warning System (EWS). The models specified by
the graphical language will represent different facets of
the domain and executable code will be generated
automatically. In short, the objective of our research is to
develop a Domain Specific Modeling Language (DSML)
for EWS.
The first phase in the development of any DSML is to
gather and process the required information and to define
reusable language artifacts. This phase is known as
domain analysis [1]. The idea of reusable artifacts is of
importance. It forces the definition of filters based on
which commonalities and variabilities of the domain
become discernible.
During domain analysis, knowledge about the domain is
acquired from various sources such as experts, technical
documents, procedures, regulations and other materials.
The purpose of this phase is to produce domain models.
Domain models consist of concepts, relations, terminology

and semantics representing the overall knowledge of the
domain and hence revealing important properties that
affect the design of the DSML [2].
The problem is that there are not any lucid guidelines or
standards on how to gather and process the information of
the domain when developing a DSML [2,3]. Formal
analysis techniques such as the Feature-Oriented Domain
Analysis (FODA) [4], Family-Oriented Abstractions,
Specification and Translation (FAST) [5], Domain
Analysis and Reuse Environment (DARE) [6] have been
proposed in domain engineering. These approaches aren't
so popular among developers of DSML. An explanation
for this is that domain engineering is strong on its main
focus -finding and extracting domain terminology,
architecture and components- but gives little help in
designing, constructing and introducing languages for the
engineered domain [7].
In this paper we propose the use of Integration Definition
for Function Modeling (IDEF0) as part of a domain
analysis method for a DSML. The DSML is developed to
become integrated component of an EWS. A case study
taken from water treatment plant operations and safety
domain demonstrates its usefulness.
The remainder of the paper is structured as follows: In
Section 2, the IDEF0 method is briefly described followed
by a description of the steps taken to curry out the domain
analysis in the case study. In Section 3, we demonstrate
first the implementation of IDEF0 in defining the entities
and processes of the Water Treatment Plant (WTP) and
subsequently in identifying the social factors that affect
the operations of WTP. In Section 4, the reusable domain
model is briefly described followed by the conclusions.

10

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

11

2. Methods
Some of the characteristics of IDEF0 are [9]:

2.1 IDEF0
IDEF0 is designed to model the activities, processes and
actions of an organization or system [8]. It is an
engineering technique for performing and managing needs
analysis, benefits analysis, requirements definition,
functional analysis, systems design, maintenance, and
baselines for continuous improvement [9]. It enhances the
domain expert involvement by through simplified
graphical representation.
With IDEF0 one can specify five elements: the activities,
input, output, constraints or control and mechanisms or
resources of a system (see Fig. 1). The activities are
receiving certain inputs that need to be processed by
means of some mechanism, and are subject to certain
control such as guidelines, policies, before being
transformed into output. The activities can be
instantaneous or can happen over a period of time.
IDEF0 diagrams are organized in hierarchical structure,
which allows the problem domain to be easily refined into
greater details until the model is descriptive as necessary.
The first level of the hierarchical structure represents a
single high level activity, which then can be decomposed
to lower levels that represent the processes of the system,
the resources and the information that passed between
them in more detail.


It
provides
comprehensiveness
and
expressiveness in graphically representing a wide
variety of business, manufacturing and other types of
enterprise operations to any level of detail;

It provide concise details in order to facilitate its
understanding, consensus and validation;

It is a coherent and simple language and
promotes consistency of usage and interpretation;

It enhances communication between system
analysts, developers and users through ease of learning
and its emphasis on hierarchical exposition of detail.
IDEF0 has been extensively used for structured analysis
and design of systems, covering functional modeling in
describing the system graphically by means of providing
better understanding. It has also been used for many
reasons such as for designing and specification of
methodologies in which progressively decomposing a
system from a high level was found to effective for
methodology development [10]. It is widely used also in
modeling manufacturing systems in which knowledge
based system approach is used [11].

2.2 Steps of Domain Analysis and Case Study
During the domain analysis phase we visited the Inniscarra
WTP in County Cork, Ireland on several occasions for
over a three month period. The Inniscarra plant serves the
population of about 100,000 consumers and is distributing
about 21,000 m3 /day of treated drinking water. It is
considered as one of the largest WTP in Ireland. With the
help and guidance of the domain experts it was possible to
gain enough information for the analysis and to build
IDEF0 models.
The requirements of the overall modeling were agreed
over a series of meetings with domain experts. Once
gathered, the requirements were documented and validated
to insure that there is no inconsistency or obscureness.
Some of the key requirements are briefly described below.

Fig. 1 IDEF0 Language model.


Systematic profiling should be included as a
feature of the DSML. With the term “systematic
profiling” we mean the modeling and representation of
physical entities that constitute a WTP in a categorized
way. For example, many physical objects are involved
in each purification phase of raw water such as
flocculation, coagulation. The goal of the systematic
profiling is to provide detail information of these
objects, categorized by purification phase in which

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

they belong. The profiling process guides us to
understand what exists in a WTP providing basic
information of its capacity and capability to perform
specific purification tasks. For example, if a WTP has
an ozone generator in its profile we can assume that
the plant design to perform “Ozonation” process to
disinfect the water, to reduce color and odor by
oxidizing the organic substances in the water.

The DSML has to have a hazard/vulnerability
component permitting its users to represent their
mental models about the threats and vulnerabilities of
the WTP, providing thus an explanation on how
unwanted events may happen during WTP operations.

Users should be able to define early warning
signals. There are two categories of warning signals;
namely weak and sound warning signals. For example,
sensors monitoring the water for the presence of
chemical radiological or biological hazards are able to
provide sound warning signals. Weak signals are those
which indicate the presence of latent conditions in a
WTP. In short, are indications of how much a WTP is
vulnerable to the variability of the environment. For
example, if a WTP is constructed close to the banks of
a river, then its location may be considered as a latent
condition which makes it vulnerable to river floods
incidents. Usually, latent conditions are detected by the
personnel or by the auditors of the WTP.

12

Fig. 2 illustrates an overall view for developing the
reusable domain models. A profiling process performed
first to list the physical entities and processes of WTP. In
this step we made extensive use of IDEF0. It is the step
where this paper is focusing at. In a second step, hazards,
vulnerabilities and early warning signals together with the
social factors that affect the safety health of WTP were
defined based on system safety engineering approaches.
Unexpectedly, as it is shown in Subsection 3.1, during the
first step we found out that IDEF0 helped us in identifying
important social factors that effected WTP operations. We
then mapped the concepts derived from both, the first and
the second steps and defined their relations and
constraints. Finally we specified the reusable artifacts that
constitute the DSML of the EWS.

3. IDEF0 model of WTP
The high level view of the WTP is illustrated in Fig. 3.
The model describes the entire WTP as an activity in
which raw water is taken as an input. The activity is
executed using different resources such as chemicals,
treatment mechanisms and labour. Controls ensure that all
WTP activities accord with legislations and standards. The
output of the activity is the treated water.


Users should be able to define socio-technical
factors that may affect the safety of WTP. By sociotechnical factors we mean the social and organizational
features that may affect WTP operations.

Fig. 3 High level IDEF0 view of the WTP.
Fig. 2 Reusable domain models for EWS in WTP.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Water purification consists of several stages such as water
intake and screening, flocculation, coagulation, filtration,
pre and post chemical treatment and disinfection. The
IDEF0 model represents these steps through hierarchical
decomposition. A part of the lower level view is shown in
Fig. 4 where the higher level activity of the “WTP
process” is broken down into several lower level activities
resulting to better understanding of water purification
processes.
The first activity in Fig. 4 is the “Intake & Storage
Process”. Raw water intake is the input of this activity.
The raw water is then handled by mechanisms such as
penstock, intake pumps, metal screens. Furthermore, the
activity is performed under some controls such as setting

13

the penstock selection level, regulating the intake pumps,
checking of raw water quality parameters before allowing
the raw water to be passed into next process called “PreFiltration Process”. The sequence of the water flow is
from left to right and each activity is decomposed further
to several lower levels so as to provide the obscure
understanding of the WTP treatment processes.
As result, with the IDEF0 analysis of the WTP we
identified 21 activities in 4 decomposition levels. In the
last decomposition level we identified 27 mechanisms and
25 controls. This indicates the usefulness of IDEF0 in:

Gaining comprehensive information on the
process involved in WTP;

Fig. 4 IDEF0 model for A0 activity in WTP treatment

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

14

Table 1: Socio-technical factors from IDEF0 Analysis


Identifying the output flows between activities
which are integral to understanding critical elements
for safety and security;

Identifying critical concepts;

Listing the physical objects of WTP.

3.1 Socio-technical factors
Several social factors such as the availability of funds, the
regulations of the governance body on different standards,
the strategic actions taken in case of flooding or other
natural disasters, may affect the water treatment process.
Table 1 illustrates how IDEF0 facilitate in understanding
these factors. It lists some of the socio-technical factors
associated with the mechanism “Intake pumps” of activity
A0-1 (see Fig. 4). The table provides the information
regarding the technical and socio-technical factors that can
affect the operation of the water pumps in supplying water
to the specific process of the WTP. It also provides us
with the information on how socio-technical factors relate
to some of the technical factors that could lead in affecting
the entire water intake and storage process. For example,
when the demand of the drinking water is higher than the
original water treatment capacity of the plant, the social
factors plays the major role in deciding how to manage the
situation rather to allocate additional resource of water
supply or the funds to expand or to upgrade the whole or
part of the water treatment facility or in case the funds are
not accessible the additional burden is put on the treatment
process hence effecting the operation of water intake
pumps, storage tank level, raw water quality parameters.

4. Reusable Domain Model
The reusable domain model is specified using a
metamodel. The metamodel is often defined as a model of
a model that is the language in which the models are
defined and they themselves also needs to be expressed in
some language, for this purpose we have used modelbased Eclipse Modeling Framework (EMF) technology
[12]. The EMF is originally based upon a subset of the
Object Management Group standard Meta Object Facility
2.0 (MOF) called Essential MOF (EMOF) [13]. The
development of metamodel has been assisted by the
information obtain from the IDEF0 model. During the
development phase, as a part of prerequisite the
information obtained from the IDEF0 is categorized
according to the commonalties and variabilities, where
commonalties define the set of features that are common
to several WTP activities and variabilities are what makes
activities different from each other.

IDEF0 model highlighting technical and sociotechnical factors in regulating raw water intake
pumps.
Activity: A0-1
Name: Intake and Storage process
Mechanism: Intake pumps
Control: Pump control
Description: The raw water intake pumps takes
water from a lake and supplies it to the raw water
reservoir in WTP. This activity involves control
measures, which are influenced by different technical
and subsequently socio-technical factors.
Technical:
1. Feedback from activity A5 (Treated water
outlet), information of the treated water level from
treated drinking water reservoirs.
2. Raw water quality parameters.
3. Raw water intake level.
4. Raw water storage tank level.
5. Maintenance and other technical reasons.

Socio-technical:
 The treated water supply demand should be kept
in consideration to the WTP capacity. If the demand
of drinking water is more than the treatment capacity
of WTP then the technical factor “1” will be affected
as the level of drinking water reservoir will mostly
be low and would ultimately effect the pump control
action in regulating raw water intake pumps.
 Raw water quality parameters are set by national
and EU standards and legislation.
 Raw water intake level is determined not only by
the water resource but also depends on the level of
water in the lake. As in our case study, the lake water
level up to which limit the water can be taken into
WTP is set by Water Services Authority. There is
hydroelectric plant downstream from our water
intake, which requires subsequent amount of water to
be fully functional.
 Raw water storage tank level depends on many
factors such as, the availability of water and the
demand of treated water in supply. In some cases raw
water storage tanks are not available because of
financial limitations.



Funds allocated to run water treatment utilities
may have significant effects on their performance.
Maintenance, periodical inspections and audits are
required.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

15

Table 1: Commonalities and Variabilities using IDEF0 model

Activity

Intake

Sequence Subsequence
No
No.

A0-1

A1

Mechanisms
Commonalities

Controls

Variabilities

Commonalities

1. Flow meter

1. Penstock

1. Pumps Control

2. Tanks

2. Metal Screens

2. Manual Inspection

3. Sampling test
laboratory

3. Intake pumps

3. Maintenance

Variabilities

1. Penstock selection
level.
2. Raw water quality
parameters

4. Sampling for
cryptosporidium test and
laboratory test.

The mapping from IDEF0 to metamodel is illustrated in
Fig. 5. During the mapping process, all the activities are
defined as separate class each, which also act as superclass
to their subclasses defined for their sub activities. For
example, the first activity of our IDEF0 model is “Intake
and Storage Proc” which has been mapped to class

Fig. 5 IDEF0 model for A0 activity in WTP treatment process.

“Intake” and it is also act as a superclass to the subactivities specified at its in its lower decomposition level
that are “Raw Water Intake Proc.” and “Raw Water
Storage Proc.”.
The classes are also specified for “mechanisms” and

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

“controls”,
each
having
subsequent
subclasses
representing
their
“variabilities”.
Moreover,
“commonalities” are defined in a separate class. It is also
to be noticed that commonality can be define as an
attribute of variabilities but the vice versa is not allowed.
For example, the class “Penstock” which is categorized as
a variability of a mechanism in an “Intake” activity can
have an attribute class “Sensor” but the other way around
is not possible.
Once the required classes are defined they are referenced
to each other accordingly as defined by the IDEF0 model.
A class with subsequence number A1 is to be a referred by
class with a sequence number A0-1 as it is the sub activity
of A1. The “sensor” class is referred by the “mechanism”
class which is further referenced by the “category” class.
Here the sensor is defined as commonality because it is
repeated in many sub activities that belong into a lower
hierarchy level of the “Intake and Process” shown in Fig 4.
The activities in the lower hierarchy levels made use of
different types of sensors. Given this repetition we defined
the “sensor” concept as commonality. Fig 4 shows the
2nd level of the IDEF0 analysis to demonstrate the result
of IDEF0 method. In reality we developed a series of
hierarchical IDEF0 models that describe each activity box
shown in Fig 4 in more detail. All classes are referred by
the “Map” class in our case. In EMF‘s ecore metamodel
the class “Map” is considered as a starting point or
mapping point to rest of the metamodel. The class “Map”
itself does not take part directly in modeling of domain
concepts but it is used as a point where the whole
architecture of the metamodel is initially mapped as
referenced. In the case of “controls”, we used a declarative
language in a metamodel level, the object constraint
language, and also specify separate “control” class, to
define their constraints.

5. Conclusions
This paper presents the use of IDEF0 as domain analysis
approach for the development of a DSML. The case study
demonstrated that IDEF0 contributed in identifying the
reusable building blocks of a DSML and proved very
useful in collecting, organizing and representing the
relevant domain information.
On the other hand, it was observed that IDEF0 models can
become so concise that it can cause comprehension
difficulties and only domain experts can understand it
fully. Difficulties can also arise in communicating various
domain concerns between different domain experts.
Furthermore, it has been noticed that the domain
information can change during the course of time such as

16

due to advancement of technology or other issues; in this
case there will always be a need to update and validate
such changes in IDEF0 model. We clearly understand the
limitations of using IDEF0 model for socio-technical
aspects as it does not allow us to model the interactions
between social factors. However, it guides us to identify
parameters which are more influenced by it.
There is no standard methodology for domain analysis that
fits all domains due to conflicting goals and objectives.
Therefore, there is always a need to understand which
approach for domain analysis fits the needs and best
matches with the specifications. This paper demonstrated
that IDEF0 is advantageous in defining the physical
objects and the processes in a complex system but also
contributed in identifying other social factors that affect
the performance of the system. These characteristics are of
importance for any EWS. In short, IDEF0 should be
considered as a reliable alternative approach for the
development of a DSML in EWS.
Acknowledgments
This work is supported by the research project SCEWA
(Grant No 2007-DRP-2-S5), funded by the Irish
Environmental Protection Agency under the DERP grand
scheme.  We would also like to express special thanks to
Mr. Pat Murphy, the plant managers from Inniscarra
Water Treatment Plant for his cooperation and assistance.

References
[1] J. M. Neighbors, “Software construction using
components”, doctoral dissertation, Univ of California,
Irvine, 1981.
[2] R. Tairas, M. Mernik, and J. Gray, “Using ontologies in the
Domain Analysis of Domain Specific languages” Models
in Software Engineering. Vol. 5421, 2009, pp. 332-342.
[3] M. Mernik, and J. Heering, and A.M. Sloane, “When and
how to develop domain-specific languages”, ACM
Computing Surveys (CSUR), Vol. 37, 2005, pp. 316-344.
[4] K. Kang, S. Cohen, J. Hess, W. Nowak, S. Peterson,
“ Feature-Oriented Domain Analysis (FODA) Feasibility
Study”, Technical Report CMU/SEI-90-TR-21, Software
Engineering Institute, Carnegie Mellon University,
Pittsburgh, PA, 1990.
[5] D. M. Weiss, C. T. R. Lai, “Software Product-Line
Engineering: A Family Based Software Development
Process”, Addison-Wesley Longman Publishing Co., Inc.
Boston, MA, USA, 1999.
[6] W. Frakes, R. Prieto-Diaz, C. Fox, “DARE: Domain
Analysis and Reuse Environment”, Annals of Software
Engineering, Vol. 5, 1998, pp. 125-151.
[7] J.-P. Tolvanen, “Keeping it in the family”, Application
Development Advisor, 2002.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[8] P.S. DeWitte, R.J. Mayer, and M.K. Painter, “IDEF family
of methods for concurrent engineering and business reengineering applications”, Knowledge Based Systems.
College Station, TX, USA, 1992.
[9] FIPS, “Integeration Definatin of Functional Modeling
(IDEF0)”, Federal Information Processing Standards.
Publication 183, Springfield, VA, USA, 1992.
[10] A. Presley, and D. Liles, “The Use of IDEF0 for the
Design and Specification of Methodologies”, Proceedings
of the 4th Industrial Engineering Research Conference,
Nashville, USA, 1995.
[11] C. L. Ang, R. K. Gay, L. P. Khoo, and M. Luo, “A
knowledge-based Approach to the Generation of IDEF0
Models”, International Journal of Production Research,
Vol. 35, 1997, pp. 1385-1412.
[12] Eclipse
Modeling
Framework
(EMF),
http://www.eclipse.org/emf
[13] Essential MOF (EMOF) as part of the OMG MOF 2.0
specification,
http://www.omg.org/docs/formal/06-0101.pdf.

Syed Imran is a postgraduate student at University College Cork,
Ireland. His research is focused on the development of a Domain
Specific Modeling language for Early Warning Systems. He has
masters in computer science from Technical University
Braunschweig, Germany and bachelors in engineering from
Voronezh State University, Russia. He has a working experience
of more than 7 years as a software engineer.
Dr. loannis M. Dokas has diploma in civil engineering and PhD in
expert systems. He has been awarded with EU Marie Currie
Fellowships two times, during which he conducted post doctoral
research in Germany and Ireland. Currently he is the leader of a
research team working on early warning systems at the Cork
Constraint Computation Centre. His current research is funded by
the Irish EPA. His research interests are in the fields of systems
safety, environmental engineering, and artificial intelligence.
John Feehan is a graduate of the Sligo Institute of Technology,
Sligo, Ireland where he completed an Honours Degree in
Environmental Science and Technology in 1990. Upon graduation
he worked as an Environmental Manager in the Pharmaceutical
Industry for five years before joining the newly established
Environmental Protection Agency (EPA) in 1995. In the EPA, he
has worked on strategic management, policy development,
licensing, enforcement, surface water, wastewater and drinking
water. John is also a graduate of University College Cork, Ireland
where he was awarded a first class honours Masters Degree in
Environmental Analytical Chemistry in 1996. He is Member of the
Royal Society of Chemistry, the Chartered Institution of Water and
Environmental Management and the Institution of Engineers of
Ireland. He is a Chartered Chemist, Chartered Water &
Environmental Manager, Chartered Scientist and a Chartered
Environmentalist.
Franclin Foping is currently undertaking a Ph.D. in Computer
Science at the University College Cork in the Republic of Ireland.
The bulk of his thesis is to deploy an early warning service over
the Internet. He also holds an MSc in Computer Graphics
Programming from the University of Hull in England. Franclin was
a finalist of the Microsoft Imagine Cup Software Design in March
2007 in England. He is a Linux and open source enthusiast with an
experience of over 10 years in the field. In his spare time, Franclin
enjoys travelling, reading, watching soccer and tennis games.

17

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

CETLs : Supporting Collaborative Activities Among
Students and Teachers Through the Use of ThinkPair-Share Techniques
N. A. Nik Azlina
Software Engineering Department, Malaysian Institute of Information Technology
Universiti Kuala Lumpur
Jalan Sultan Ismail
50250 Kuala Lumpur, Malaysia

Abstract
Collaborative system is currently underway to many
organizations of the fact that it is not just a catch
phrase or fad, but it is truly an essential shift in the
way technology delivers value to various businesses
nature. Schools are the place for handling information
and knowledge and, in most developed countries,
Internet has been a source of information as well as a
tool for teaching and learning. Thus, it is crucial to
have a transformation in our education field to allow
new generations to become competent in the
technology use. The purpose of this paper is to find
out the technique that is able to enhance the
collaborative learning process which is known as
Think-Pair-Share. This study also aims at proposing a
collaborative system that will apply the Think-PairShare technique to ease the collaborative process
among teacher and students. The CETLs project is
meant to address the support for collaborative learning
and the establishment of shared understanding among
students and teachers. This paper also introduces a
collaborative framework for CETLs which adapt the
use of Think-Pair-Share in a collaborative
environment.

Keywords: CETLs, educational system, collaborative
environment, collaborative learning
collaborative system, Think-Pair-Share.

1.

technique,

Introduction

Computer use is deemed increasingly important
in modern societies. Computers and the Internet
have introduced dramatic changes to work
processes and to the organization of corporate
structures over the past decade [1]. In the field of
education, the Internet has become one of the
major sources for students to obtain information
easily. The facilities and tools such as search
engines, forums, bulletin boards, electronic mail,
and messenger service (chatting) are widely used
by students to get information. Online tools have

provided the educator with a variety of ways of
communication with their students and for
students to communicate with each other. The
role of the Internet is not just for transmitting
information but as a tool for teaching and
learning which one can educate or learn without
the restrictions of time [2]. Collaborative
environments promote and enhance the ability of
learners to participate in knowledge building
communities
through
synchronous
and
asynchronous collaborative communication and
interaction. The gradual shift from traditional
way to the web-based style of teaching does not
offer only advantages of time and place, but also
of flexibility of information exchange and
options
for
electronic
communication.
Communication
within
communities
of
education like students, teachers or instructors
can be facilitated by the use of online
educational system which supports variety of
communication styles such as instant messaging,
newsgroup, discussion forum, e-mail and
bulletin board.
In order to support the teaching process or
specifically the collaborative process, this
research has come out with a Web-based
collaborative system named CETLs which stands
for Collaborative Environment for Teaching and
Learning (system). CETLs is mainly designed to
be used by teachers and students in secondary
schools. In order to support the collaborative
activities, CETLs applies Think-Pair-Share
technique and it has the responsibility of
preparing students for corresponding, cooperating, working and enjoying themselves
when using it.

18

19

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

2.

Related Research

2.1

Collaborative Activities

Collaborative activities are democratic by nature,
which makes group members more flexible and
eventually replaceable as a group and a learning
community that shares knowledge and
experiences. It is a learning method that uses
social interaction where the virtual learning
community that provides support and sharing
among its members can be built through the
integration of online communication tools and
course activities and sustained through effective
instructor [3].
The current society is rapidly changing with
technological advancements and therefore the
schools cannot be left behind. The traditional
learning that takes place works, but a change is
needed. A change in the school system is needed
to parallelly follow the changes in the society
[4]. It allows students to work on authentic,

meaningful, and challenging problems, to
interact with data in ways that allow studentdirected learning; to build knowledge
collaboratively; and to interact with teacher in
the field. Technologies also can be used to
promote the development of higher-order
thinking skills and allow opportunities for
teachers to act as facilitators or guides and often
as a co-learner with the students. This any time,
anywhere, access is changing how students
communicate with each other and how
instructors
structure
their
classes
[5].
Collaborative learning (CL) provides an
environment to enliven and enrich the learning
process. Introducing interactive partners into an
educational system creates more realistic social
contexts, thereby increasing the effectiveness of
the system [6]. Fig. 1 which is taken from
reference [6] shows the interaction between
educator (teacher) and the students in order for
them to collaborate together for the learning
purposes.

Individual student
Educator as Collaborative
Facilitator

Individual student
Individual student

Social interaction occurs between the
collaborative students which enhances
knowledge acquisition

Collaborative Learning
occurs among student
within groups both in
and outside class.
Groups work as a team

Fig. 1 Collaborative Learning

CL deals with instructional methods that seek to
promote learning through collaborative efforts
among students working on a given learning
task. Hence, collaborative learning inspires
students to work as a group and therefore they
require a medium for communication.
When creating a community that supports CL
approach, the community builders must consider
variety of factors related to people, group
processes and technology. In order to allow a
proper communication and interaction among
peers during the collaborative learning, the CL
features must focus on the synchronous and
asynchronous tools, where, synchronous means
‘at the same time’, which involves interaction in
real time. Inversely, asynchronous brings the

meaning of ‘not at the same time’. Asynchronous
activity allows the user to complete the tasks on
his own time and schedule, without real time
interaction with anybody else. In addition, the
document management should be considered as
well. In accordance with the above discussion,
the following Table 1 outlines the features of
collaborative learning [7] :

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
Table 1: Collaborative Learning Features

CL Features

2.2

Supporting Tools

Synchronous
Tools

- Audio conferencing
- Video Conferencing
- Instant Messaging

.- Web conferencing
.- Chat
- Whiteboards

Asynchronous
Tools

- Discussion boards
- Links
- E-mail

.- Calendar
.- Group Announcements
- Surveys and Polls

Document
Management

- Resource Library

- Upload / Download

Collaborative Process

The process for collaborative learning in the
literature mostly aims to describe the activitychain of collaborative learning activities or serve
as a basis for the design of computer support for
the activities of collaborative learning. The
process of the computer supported collaborative
learning includes four steps [8]:
 The first step is initiated by the moderator
(teacher or coordinator) preparing the task
and workspace for the students and teacher to
do their activities in a collaborative class, i.e.
prepare the groups, course structure and add
any learning contents into the system.
 Secondly, the teacher and students will work
on their own material. For the teacher, the
process of elaborating, editing and exporting
the material and knowledge will be the
primary task.
These activities involved
navigating, copying and searching.
 Thirdly, the students do their activities that
have been instructed by the teacher. The
students will interact with the teacher to work
with the learning materials that been
uploaded by the teacher.
 Fourthly, the teacher and students can
collaborate by discussion and negotiation.
The students will ask questions to the
teacher. The teacher will discuss and come
out with solution.

2.3

Collaborative Techniques

In order to perform the collaborative activities, a
proper collaborative technique should be set and
followed by all the users (collaborators). There
are many collaborative learning techniques
which are available such as:

2.3.1 Fishbowl
This technique has a team of three or four
students to work on a problem or exercise. At the
same time, other teams of three or four observe
the first team. In particular, the first teams work
on seeking other points-of-view, listening to and
paraphrasing ideas, and other communication
skills while solving the given problem. The
second teams focus their attention on the team
dynamic and make sure they are prepared to
discuss how well or poorly the first teams
worked together to solve the problem. After the
given duration of time, the class discusses what
had and had not happen during the activity [9].

2.3.2 Jigsaw
The Jigsaw technique begins with pairs
preparation, where each pair has a subject to
study. The students must read and summarize
their material and plan how to teach it to the rest
of their own initial group. Then, new pairs of
students are formed. Typically one student
listens the material presented by the other and
suggests improvements. Then, the roles are
interchanged. The cooperative goal is that all
students know all parts of the educational
material, where all of the students must teach and
learn. While students work, the teacher moves
from group to group. Her job is to observe the
work and assist the students in their processes.
At the end of the session, students’ learning must
be evaluated using an individual test on all
lesson topics [10].

2.3.3 Paired Annotations
Students pair up to review or learn the same
article, chapter or content area and exchange
double-entry journals for reading and reflection.
Students will then discuss key points and look
for divergent and convergent thinking and ideas.
The pair (group) discusses the key points of the
reading and looks for areas of agreement and

20

21

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

disagreement. Together students prepare a
composite annotation that summarizes the
article, chapter, or concept. Finally, the group
prepares a composite annotation that summarizes
the article, chapter, or concept and presents it to
the teacher [11].

2.4

Existing CSCL Tools

Research is done by comparing five existing
collaborative systems. WebICL [13], CoVis [14],
VLE [15], CoMMIT [16], and GREWPtool [17]
are the examples of the collaborative
applications which concern on the learners
collaborations. After studying and investigating
the five collaborative systems, the comparisons
have been made in accordance with the CL
features discussed earlier in Section 2.1 (Table
1). Therefore a comparison table, which is Table
2 has been produced to represent the details.

2.3.4 Think-Pair-Share
This technique involves sharing with a partner
which enables students to assess new ideas and if
necessary, clarify or rearrange them before
presenting them to the larger group [12]. Detail
explication about the Think-Pair-Share technique
will be discussed in Section 4.

Table 2: Comparing the Five Existing Systems with Collaborative Learning Features

CL Features

User
(Student)
(Teacher)

System
Functionality
Member
Login

WebICL

CoVis





















Group formations
Group
Joining
Group
Activity

VLE

CoMMIT

GREWP
tool













Audio Conferencing
Synchronous
tools to support
communications



Video conferencing





Chat
Instant Messaging

Discussion Boards /
Forums





Whiteboards / Editor











Calendar
Asynchronous
tools to support
communications

Links /Search Engine
Group Announcements
(Bulletin Boards)



E-mail







Surveys/Polls
Document
Management
Collaborative
Technique

Resource Library



Upload / Download







N/A

N/A

N/A

-

N/A

Paired
Annotatio
ns

N /A= Cannot be determined
Table 2 places the CL Features (Refer Table 1)
on the leftmost column. The ‘System
Functionality’ column lists all the functions
which are supposed to be in the collaborative
system. The rest of the column heading labeled
as WebICL, CoVis, VLE, CoMMIT, and

GREWPtool are the five similar systems use for
comparison. It can be concluded that none of the
systems fulfill all the CL features. However, the
best system is CoVis since it is provided with the
member login function, group formation by
teacher, group joining by students, as well as

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

group activity. The synchronous communication
is done through the use of video conferencing as
well as a shared editor, while asynchronous
communication is supported with the use of four
tools which are forums, search engine, bulletin
boards, and e-mail. The document management
is handled with the use of upload and download
tool, as well as the resource library, where all the
documents are accessed with the permissionbase. Having a supervision tool for the
teacher/instructor, CoVis also provides a
working space for all the learners [18]. However,
the collaborative technique used for CoVis
cannot be determined. Most of the reviewed
systems do not mention the name of the
collaborative technique applied in their system.
However, based on the study and analysis made,
it is obvious that none of the reviewed system
uses Think-Pair-Share technique for the
collaborative activity. However, the researcher
finds that Think-Pair-Share is useful to be as an
alternative to the collaborative teaching due to its
several advantages.

3.

What is CETLs

CETLs stands for Collaborative Environment for
Teaching and Learning (system). It is an
educational system which is purposely
developed for schools to support collaborative
activities among teacher and students. In order to
realize the collaborative process, CETLs applies
Think-Pair-Share technique for the teaching and
learning process.
The major role of the teacher in CETLs is to
support collaborative activities, by providing
contents and assigning Think-Pair-Share group
as well as Think-Pair-Share activities to students.
Teacher also responsible to evaluate student
works during and after the Think-Pair-Share
process. Teacher can also communicate with the
students through the use of real-time messaging
in the chatroom, bulletin board and e-mail.
CETLs support the students’ group activities,
where the students are able to communicate
among themselves, to discuss the academic
matters. Through the system, the student can also
conduct their activities such as accomplish their
assignments, upload and download notes,
communicate with all collaborators using email,
and answer the questions that have been posted
by the teacher in the collaborative class.

Since
CETLs
applies
Think-Pair-Share
technique, it allows the students to think
individually, interact with their pair and share
the information with all the students and their
teacher. This technique helps students to
improve and enhance their knowledge by sharing
all the information, ideas and skills [19]. It
educates the student to be more active and
participate during the learning process rather
than to be a passive learner. Implementing
CETLs at school will ease the work of
organizing the students’ and teachers’ activities
such as uploading and downloading the
assignment, distributing quizzes, marks and
comments, as well as helping the teacher in
terms of their time management since all the
work and activities can be done online.

3.1

Why Do You Need CETLs

Software plays a central role in almost all aspects
of daily life, whether in government, banking
and finance, education, transportation and
entertainment. It is undeniable that the software
products have helped us to be more efficient and
productive in terms of problem solving, and they
are able to provide us with an environment for
work and play that is often safer, more flexible,
and less confining. Because of those reason, the
educational technology need to be introduced to
school. The researcher thinks that improving and
enhancing the teaching and learning process in
education fields is always the primary task of
educational organizations in order to make the
teaching and learning become more effective.
Thus, the idea to develop this research with the
development of a collaborative system arose for
few reasons which are :

3.1.1 Lack of Computer Use in School
There is limited usage of computers in schools
currently. Each school is provided with only a
number of computers which are placed in the
laboratory and the students are only allowed to
enter the laboratory during the specific hours.
Since technology is the most excellent tools for
information processing, new generations need to
become competent in their use, therefore they
should acquire the necessary skills, and this
require access to computers during their school
life. Therefore, the development of this online
collaborative system is intentionally to increase
the use of computers in school.

22

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

3.1.2 To
enhance
Technology

Learning

With

While some students enjoy playing games and
do any clicks on the computer, however some of
them still feel like a strange to hold a computer.
Most of the teenagers seem the computer as a
medium for communication and entertainment,
but they do not really realize that it can also be as
a teaching or education tool as well. The current
society is rapidly changing with technological
advancements and therefore the schools cannot
be left behind [4]. Schools do not only play the
role as the plain-learning institutions, but as a
place to explore and discover new things.
Therefore, by introducing the computer-based
learning, it is hoped that both teachers and
students will have better exposure to the use of
computers with frequent use.

3.1.3 Introducing
Approach

Students-centered

The traditional process of teaching is more to
teacher-oriented mode. The development of this
collaborative system is to introduce and
encourage the students-centered approach, where
the students are given the priority to plan, solve,
and communicate by themselves before asking
for teacher’s help. Teacher will be in the system
as a facilitator, helping students with contents,
ideas, assessment, and in final discussion. This
online collaborative process will encourage
group activity, thus allow students to be more
courageous, since the system allows students to
give opinions and ideas in an open discussion.
Usually a bright student loves to study and have
no problem to learn individually. But, an
average student who has less interest in studying
will easily to get bored when they study by
themselves. They will learn effectively in groups
where by they can have discussions and are able
to share the ideas among themselves. The
learners must interact in some particular ways,
engaging with each other and course materials
which
lead
toward
negotiation
and
internalization of knowledge rather than just
memorizing of knowledge [20]. Having group
activities frequently in learning process will help
students understand their course subjects.
Students can help each other and provide such
solutions together.

3.1.4 Time Management
In face-to-face learning process, students have to
follow the provided schedule in order to perform
their learning routines; which include

assignments and quizzes. However, with some
reason such as sickness, students fail to come to
the class to perform their activities which will
cause them to lose their marks. The flexibility of
time and space can be a virtual one in which
work is done by individuals who are distributed
in place and time [21]. This will ease and give
flexibility for the students to manage their own
time, where they can organize their activities
such as upload/download the assignments and
notes without any disturbance.

4. Think-Pair-Share: A Collaborative
Technique For CETLs
After reviewed some common collaborative
techniques in Section 2.3, Think-Pair-Share
technique is chosen to be applied in CETLs due
to some reasons. Think-Pair-Share is a cooperative learning technique which is said as a
multi-mode discussion cycle in which students
listen to a question or presentation, have time to
think individually, talk with each other in pairs,
and finally share responses with the larger group
[22]. It is a learning technique that provides
processing time and builds in wait-time which
enhances the depth and breadth of thinking [23].
Using a Think-Pair-Share technique, students
think of rules that they share with partners and
then with classmates in a group [22]. The general
idea of the think-pair-share is having the students
independently think or solve a problem quietly,
then pair up and share their thoughts or solution
with someone nearby. Every student should be
prepared for the collaborative activities; working
with pair, brainstorming ideas, and share their
thoughts or solution with the rest of the
collaborators. Obliquely, this technique let the
team learns from each other. When applying this
technique, there will be a wait time period for the
students [24]. The use of timer gives all students
the opportunity to discuss their ideas. At this
knowledge construction stage, the students will
find out what they do and do not know which is
very valuable for them. Normally this active
process is not widely practice during traditional
lectures. Teachers had time to think as well and
they were more likely to encourage elaboration
of original answers and to ask more complex
questions [25]. The Think-Pair-Share technique
also enhances the student's oral communication
skills as they have ample time to discuss their
ideas with the one another and therefore, the
responses received are often more intellectually
concise since students have had a chance to

23

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

reflect on their ideas. And there will be positive
shifts in comprehension levels, awareness and
use of comprehension strategies, aspects of oral
language and attitudes [26]. Therefore, it is
pertinent to apply this collaborative technique in
CETLs.

The ideas of Think-Pair-Share technique
are concluded based on the study made from
Reference [22] and Reference [23], which is
summarized in the following Table 3:

Table 3: Summary of the Think-Pair-Share

DESCRIPTION
What?
Why?

Think-Pair-Share; a collaborative learning technique
To increase participation by allowing a group of collaborators to interact and share ideas, which
can lead to the knowledge building among them.
Consist of three stages:
Think – Individually
Each participant thinks about the given task. They will be given time to jot down their own ideas
or response before discussing it with their pair. Then, the response should be submitted to the
supervisor/ teacher before continue working with their pair on the next (Pair) stage.

How?

Pair – With partner
The learners need to form pairs. The supervisor / teacher need to cue students to share their
response with their partner. Each pair of students will then discuss their ideas about the task, and
their previous ideas. According to their discussion, each pair will conclude and produce the final
answer. Then they need to move to the next (Share) stage.
Share – To the whole class / collaborators
The supervisor / teacher asks pairs to share their response with the rest of the class. Here, the large
discussion will happen, where each pair will facilitate class discussion in order to find similarities
or differences towards the response or opinions from various pairs.

5.

How CETLs is Developed

5.1

The CETLs Framework

CETLs is developed in accordance to
the CL Features (Table 1) as well as the
collaborative process suggested by Reference
[8]. CETLs applies the Think-Pair-Share
technique to support the collaborative process

between students and teachers, and its
development is done according to the following
framework (Fig. 2). The framework, which is
named as ‘Adjusted System Framework’
(adapted from Reference [27]) shows that
collaborative learning process requires both
students and a supervisor/teacher to get involve.

Fig. 2 Adjusted System Framework for Think-Pair-Share

24

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

This framework particularly focuses on the
process happen in the collaborative activity and
interaction happens between users and the
system; where the users can be either students or
teacher. The collaborative activities might
happen between teacher and students, or between
a pair of students. Students, who act as
collaborator in pair-basis, will perform specific

tasks and actions by having a teacher as an
observer or supervisor.

5.2

The CETLs Use Case Diagram

The conceptual design of CETLs is shown in the
Fig. 3 which involves a coordinator, teacher and
student. CETLs provides a platform for teaching
and learning whereby a technique called ThinkPair-Share is used.

Fig. 3 Use Case Diagram for CETLs

25

26

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

5.3

CETLs Interfaces

A CSCL tool which supports the
collaborative activities among teachers and
students was developed, and it is named as
CETLs; Collaborative Environment for Teaching

and Learning (system). CETLs applied the
Think-Pair-Share technique which allows the
users (both teacher and students) to communicate
and collaborate together, using the three stages
of the selected collaborative technique; think,
pair and share.

Fig. 4 The Think-Pair-Share (Collaborative Class) in CETLs

The above Fig. 4 shows the most
important part of the CETLs system; the
collaborative class, which applies the ThinkPair-Share technique to perform the collaborative
activities among the students. This collaborative
activity requires supervision from a teacher. The

students are provided with one or more
collaborative activities (i.e Task 4: Atmosphere)
and everyone in the collaborative class is able to
join each activity by clicking on each icon
(Think, Pair, or Share).

Individual working
space (Think)

Fig. 5 The Think Stage in CETLs

The Think stage requires student to silently think
by themselves, thus CETLs provide a working

space, where each student can jot down their
ideas, as shown in Fig. 5.

27

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Write message to your
pair in the text box
provided

Pop-up window to
display conversation
between pair
Fig. 6 The Pair Stage in CETLs

Entering the second stage, the student needs to
pair up. Here, the conversation may take place,
and that is why CETLs is endowed with an
instant messaging function; to allow two students

(pair) to discuss together. Here, the collaborative
activity happens between two students (pair).
Refer Fig. 6.

Public area – display the
chat messages by all users.
Logged Users
Type the Chat
Message here

Fig. 7 The Share Stage in CETLs

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

The last stage as shown in Fig. 7
involves a large group discussion, to allow
collaboration among all collaborators, and this
function is supported by a chatroom (to be used
by all students and teachers in the current active

class). The purpose of this chatroom is to allow
the students to share their solutions and thoughts
with the rest of the class, while acquiring the real
solution from the teacher with direct
conversation.

To fulfill the concept of Think-PairShare, all of the three stages of think, pair, and
share is provided with a ‘timer’, where the
supervisor/teacher is able to set the time for each
task, while the learner need to conclude their
answers within the specified time. To further
enhance this educational system, CETLs does
not only offer the think, pair, and share features,
but some other learning features to support the
teaching and learning activities. The features
include the class management, assignment
management, notes/assignment upload and
download as well as e-mail.

Computer-supported
collaborative
learning
environment is a good opportunity for learning
communities to leverage new technology. Thus,

this research has reported a collaborative
approach used for teaching and learning on the
Web. Approaches to collaborative teaching and
learning include positioning the teacher as
supervisor, joint class discussion by supervisor
and students, and the use of a group project.
Several CSCL tools have been reviewed and
comparisons are made accordingly. A
collaborative learning technique; Think-PairShare, is summarized, and a CSCL system which
applied this technique is developed. The CSCL
system is named as CETLs, which is hoped to
improve the process of teaching and learning,
thus to enhance the students’ performance in
schools. CETLs is believed as a learning
mechanism that is able to provide better
transformation not only to the teacher and
students, but to the whole community as well.

REFERENCES

[6]

T. S. Roberts, “Online Collaborative Learning:
Theory and Practice, 2003 [e-book]”, Hershey,
PA, USA: Idea Group Inc. in ebrary (OUM
Digital Collection) [accessed 18 November
2009].

[7]

S. Kaplan, “Building Communities - Strategies
for Collaborative Learning”. ASTD Source for
E-Learning, Learning Circuits, 2002.

[8]

A. Kienle, “Integration of knowledge
management and collaborative learning by
technical
supported
communication
processes”, Education and Information
Technologies, Vol. 11, Issue 2, 2006, pp. 161 –
185.

[9]

W. J. Leonard, R. J. Dufresne, W. J. Gerace, J.
P. Mestre, “Collaborative Group Techniques”,
A discussion of teaching via small-group
cooperative learning work, 1999.

[10]

T. Gallardo, L. A. Guerrero, C. Collazos, A. P.
José, S. Ochoa, “Supporting JIGSAW-type
Collaborative Learning” Department of
Computer Science, Universidad de Chile,
Blanco Encalada, 2003.

6.

[1]

[2]

[3]

[4]

[5]

Conclusions

A. Lindbeck, and D. Snower, “Multitask
Learning and the Reorganization of Work:
From Tayloristic to Holistic Organization”,
Journal of Labor Economics, Vol.18, Issue 3,
2000, pp. 353-376.
A. J. Romiszowski, and R. Mason, “Computer
Mediated Communication”, Handbook of
Research for Educational Communication and
Technology, 1996, pp. 438-456.
S. Williams, and T. S. Roberts, “ComputerSupported Collaborative Learning: Strengths
and weaknesses”, Computers in Education.
International Conference on 3-6 Dec, 2002,
Vol. 1, pp. 328 – 331.
M. Neill, “Computers, Thinking, and Schools
in the: New World Economic Order.
Composing Cyberspace”, McGraw Hill,
Boston, 1998, pp. 415-426.
R. Marion, “Influence of Technological
Change on Teaching and Learning in the
Academy” Journal of Physical Therapy
Education, Vol.16, Issue 3, 2002, pp. 23-30.

28

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[11]

[12]

[13]

[14]

[15]

L. Brown and V. Lara, “Professional
Development Module on Collaborative
Learning”, Texas Collaborative for Teaching
Excellence, El Paso Community College,
2007.
D. W. Whitehead, “Research-Based Criteria
for the Design and Selection of Literacy and
Thinking Tool”, Literacy Learning: The
Middle Years Journal, Vol. 15, Issue 2, 2007,
pp. 280-310.
Z. Jianhua, L. Kedong, K. Akahori, “Modeling
and System Design for Web-Based
Collaborative Learning”, The United Nations
University, Institute of Advanced Studies,
South China Normal University, Educational
Technology Institute, Tokyo Institute of
Technology, 2000.
Gomez, R. D. Pea, D. C. Edelson, B. J.
Fishman, “Learning Through Collaborative
Visualization. The CoVis Project”, School of
Education & Social Policy, Northwestern
University, 1998.
C. Y. Y. Cheng, J. Yen, “Virtual Learning
Environment
(VLE):
a
Web-based
Collaborative Learning System”, System
Sciences, Proceedings of the Thirty-First
Hawaii International Conference, 1998, Vol. 1,
pp. 480-491.

online group discourse processes”, ProQuest
Education Journals, Vol. 28, Issue 3, 2007, pp.
281-297.
[21]

P. Resta and T. Laferrière, “Technology in
Support
of
Collaborative
Learning”
Educational Psychology Review Journal, Vol.
19, Issue 1, 2007, pp. 65-83.

[22] J. McTighe and F. T. Lyman, Jr., “Cueing
Thinking in the Classroom: The Promise of
Theory-Embedded
Tools”,
Educational
Leadership, 1988, Vol. 45, pp. 18-24.
[23] T. Yerigan, “Getting Active In The Classroom.”,
Journal of College Teaching and Learning,
Vol. 5, Issue 6, 2008, pp. 19-24.
[24] A. K. Banikowski, and T. A. Mehring, “Strategies
to Enhance Memory Based on BrainResearch” Focus on Exceptional Children,
Vol. 32, Issue 2, 1999, pp. 1-17.
[25] M. B. Rowe, “Wait Time: Slowing Down May
Be a Way of Speeding Up”, Journal of Teacher
Education, Vol. 37, Issue 1, 1986, pp. 43-50.
[26] D. W. Whitehead, “Research-based Criteria for
the Design and Selection of Literacy and
Thinking Tools”, Literacy Learning: The
Middle Years Journal, Vol. 15, Issue 2, 2007,
pp. 280-310.

[16]

G. E. Lautenbacher, J. D. Campbell, B. B.
Sorrows, D. E. Mahling, “Supporting
Collaborative,
Problem-Based
Learning
Through Information System Technology”,
Frontiers in Education Conference, 27th
Annual Conference. Teaching and Learning in
an Era of Change. Proceedings 1997, vol. 3,
pp.1252-1256.

[27] A. Dimitracopoulou, “Designing Collaborative
Learning Systems: Current Trends & Future
Research Agenda”, Proceedings of the 2005
Conference on Computer Support for
Collaborative Learning Technology &
Educational Engineering Laboratory, 2005, pp.
115-124.

[17]

S. Taneva, R. Alterman, T. Hickey,
“Collaborative
Learning:
Collaborative
Depth”, Proceedings of the 27th Annual
Cognitive Science Conference, 2005, pp. 21562161.

[18]

R. D. Pea, “The Collaborative Visualization
Project”,
Technology
in
Education.
Communications of the ACM, Vol. 36, Issue 5,
1993, pp. 60-63.

[19]

S. Ledlow, “Using Think-Pair-Share in the
College Classroom”, Center for Learning and
Teaching
Excellence,
Arizona
State
University, 2001.

N.A. Nik Azlina was graduated from Multimedia
University, Cyberjaya, Malaysia in 2004 with a degree
in Software Engineering. She completed a Master of
Software Engineering from the University of Malaya in
2008. For several years Nik Azlina worked as a lecturer
at International University College of Technology
Twintech before expanding her career to University of
Kuala Lumpur, Malaysia, lecturing in Software
Engineering Department. She has carried out
considerable research in the area of CSCL and
collaborative learning. Her current research interests
encompass the field of Requirements Engineering
which focuses on the RE process and its relation with
Activity Theory.

[20]

P. V. Dennen and K. Wieland, “From
Interaction to Intersubjectivity: Facilitating

29

30

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Dynamic Clustering for QoS based Secure Multicast Key Distribution
in Mobile Ad Hoc Networks
Suganyadevi Devaraju1, Padmavathi Ganapathi2
1

Department of Computer Applications,
SNR SONS College (Autonomous)
Coimbatore, Tamil Nadu , India
2
Department of Computer Science,
Avinashilingam Deemed University ,
Coimbatore, Tamil Nadu , India

Abstract
Many emerging applications in mobile ad hoc networks involve
group-oriented communication. Multicast is an efficient way of
supporting group oriented applications, mainly in mobile
environment with limited bandwidth and limited power. For
using such applications in an adversarial environment as military,
it is necessary to provide secure multicast communication. Key
management is the fundamental challenge in designing secure
multicast communications. Multicast key distribution has to
overcome the challenging element of “1 affects n” phenomenon.
To overcome this problem, multicast group clustering is the best
solution. This paper proposes an efficient dynamic clustering
approach for QoS based secure multicast key distribution in
mobile ad hoc networks. Simulation results shows the
demonstration of Dynamic clustering approach have better
system performance in terms of QoS performance metrics such
as end to end delay, energy consumption, key delivery ratio and
packet loss rate under varying network conditions.
Keywords: Mobile Ad hoc Networks, Multicast, Secure
Multicast Communication, QOS Metrics.

1. Introduction
A MANET (Mobile Ad Hoc Network) is an autonomous
collection of mobile users that offers infrastructure-free
architecture for communication over a shared wireless
medium. It is formed spontaneously without any
preplanning.
Multicasting
is
a
fundamental
communication
paradigm
for
group-oriented
communications such as video conferencing, discussion
forums, frequent stock updates, video on demand (VoD),
pay per view programs, and advertising. The combination
of an ad hoc environment with multicast services [1, 2, 3]
induces new challenges towards the security
infrastructure. In order to secure multicast communication,
security services such as authentication, data integrity,
access control and group confidentiality are required.
Among which group confidentiality is the most important

service for several applications [4]. These security services
can be facilitated if group members share a common
secret, which in turn makes key management [5, 6] a
fundamental challenge in designing secure multicast and
reliable
group
communication
systems.
Group
confidentiality requires that only valid users could decrypt
the multicast data.
Most of these security services rely generally on
encryption using Traffic Encryption Keys (TEKs) and reencryption uses Key Encryption Keys (KEKs) [7]. The
Key management includes creating, distributing and
updating the keys then it constitutes a basic block for
secure multicast communication applications. In a secure
multicast communication, each member holds a key to
encrypt and decrypt the multicast data. When a member
joins and leaves a group, the key has to be updated and
distributed to all group members in order to meet the
multicast key management requirements. Efficient key
management protocols should be taken into consideration
for miscellaneous requirements [8]. Figure 1 summarizes
these requirements.

Figure 1. Multicast Key Management Requirements

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Security requirements:
Forward secrecy: In this case, users left the group should
not have access to any future key. This ensures that a
member cannot decrypt data after it leaves the group.
Backward secrecy: A new user who joins the session
should not have access to any old key. This ensures that a
member cannot decrypt data sent before it joins the group.
Non-group confidentiality: Users that are never part of the
group should not have access to any key that can decrypt
any multicast data sent to the group.
Collusion freedom: Any set of fraudulent users should not
be able to deduce the currently used key.
The process of updating the keys and distributing them to
the group members is called rekeying operation. A critical
problem with any rekey technique is scalability. The rekey
process should be done after each membership change,
and if the membership changes are frequent, key
management will require a large number of key exchanges
per unit time in order to maintain both forward and
backward secrecies. The number of TEK update messages
in the case of frequent join and leave operations induces
several QOS characteristics as follows:
Reliability:
Packet Drop Rate: The number of TEK update messages
in the case of frequent join and leave operations induces
high packet loss rates and reduces key delivery ratio which
makes unreliable.
Quality of service requirements:
1-affects-n: If a single membership changes in the group,
it affects all the other group members. This happens
typically when a single membership change requires that
all group members commit to a new TEK.
Energy consumption: This induces minimization of
number of transmissions for forwarding messages to all
the group members.
End to end delay: Many applications that are built over the
multicast services are sensitive to average delay in key
delivery. Therefore, any key distribution scheme should
take this into consideration and hence minimizes the
impact of key distribution on the delay of key delivery.
Key Delivery Ratio: This induces number of successful
key transmission to all group members without any loss of
packet during multicast key distribution.
Thus a QOS based secure multicast key distribution in
mobile ad hoc environment should focus on security,
reliability and QOS characteristics.
To overcome these problems, several approaches propose
a multicast group clustering [9, 10, and 11]. Clustering is

31

dividing the multicast group into several sub-groups.
Local Controller (LC) manages each subgroup, which is
responsible for local key management within the cluster.
Thus, after Join or Leave procedures, only members
within the concerned cluster are affected by rekeying
process, and the local dynamics of a cluster does not affect
the other clusters of the group and hence it overcomes 1affects-n phenomenon.
Moreover, few solutions for multicast clustering such as
dynamic clustering did consider the QOS requirements to
achieve an efficient key distribution process in ad hoc
environments.
This Paper proposes an efficient cluster-based multicast
tree (CBMT) algorithm for secure multicast key
distribution in mobile ad hoc networks. Thus this new
efficient CBMT approach is a dynamic clustering scheme
with Mobility Aware Multicast version of Destination
Sequenced Distance Vector (Mobility Aware MDSDV)
routing protocol, which becomes easy to elect the local
controllers of the clusters and updates periodically as the
node joins and leaves the cluster.
The main objective of the thesis is to present a new
approach of clustering algorithm for efficient multicast
key distribution in mobile ad hoc network by overcoming
issues of multicast key management requirements.
Extensive simulation results in NS2 show the analysis of
the CBMT algorithm for multicast key distribution based
on the performance of QOS characteristics.
Hence, this proposed scheme overcomes 1-affects-n
phenomenon, reduces average latency and energy
consumption and achieves reliability, while exhibiting low
packet drop rate with high key delivery ratio compared
with the existing scheme under varying network
conditions.
The remainder of this Paper is structured as follows;
Section 2 presents the related works about Key
management and multicast clustering approaches. Section
3 describes the proposed the four phases for efficient
CBMT for secure multicast key distribution. Section 4
evaluates the performance characteristics of efficient
CBMT with simulation environment for the proposed
algorithm and discusses the analysis of the simulation
results and Finally, Section 5 concludes the paper.

2. Related Work
Key management approaches can be classified into three
classes: centralized, distributed or decentralized. Figure 2
illustrates this classification.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

32

Logical key hierarchy was proposed independently in
[14]. The key server maintains a tree with subgroup keys
in the intermediate nodes and the individual keys in the
leaves. Apart from the individual keys shared with the key
server, each node knows all keys on the path to the root. In
root, the group key is stored. As the depth of the balanced
binary tree is logarithmical in the number of the leaves,
each member stores a logarithmical number of keys, and
the number of rekey messages is also logarithmic in the
number of group members instead of linear, as in
previously described approaches.
Figure 2: Classification of key management Approaches

2.1 Centralized Approaches
In centralized approaches, a designated entity (e.g., the
group leader or a key server) is responsible for calculation
and distribution of the group key to all the participants.
Centralized protocols are further classified into three subcategories namely Pairwise key approach; Secure locks
and Hierarchy of keys approach.

One-way function trees (OFT) [15] enables the group
members to calculate the new keys based on the previous
keys using a one-way function, which further reduces the
number of rekey messages. Thus the pair wise key
approach exhibits linear complexity. Secure lock, although
most efficient in number of messages, poses serious load
on the server and can be used only for small groups. All
tree-based protocols have logarithmic communication and
storage complexity at the members, and linear storage
complexity at the key server.

2.2 Distributed Key-Agreement Approaches
Pairwise key approach: In this approach, the key server
shared pairwise keys with each participant. For example,
in GKMP [12], apart from pairwise keys and the group
key, all current group participants know a group key
encryption key (gKEK). If a new participant joins the
group, the server generates a new group key and a new
gKEK. These keys are sent to the new member using the
key it shares with key server, and to the old group member
using the old gKEK.
Secure Locks: Chiou and Chen [13] proposed Secure
Lock; a key management protocol where the key server
requires only a single broadcast to establish the group key
or to re-key the entire group in case of a leave. This
protocol minimizes the number of re-key messages.
However, it increases the computation at the server due to
the Chinese Remainder calculations before sending each
message to the group.
Hierarchy of Keys Approach: Most efficient approach to
rekeying in the centralized case is the hierarchy of keys
approach. Here, the key server shares keys with subgroups
of the participants, in addition to the pair wise keys. Thus,
the hierarchical approach trades off storage for number of
transmitted messages. The simulations are conducted and
the performance is compared for CBMT and OMCT with
varying density of cluster and network surface. This
comparison is done in terms of end to end delay, energy
consumption, key delivery ratio and packet drop ratio.

With distributed or contributory key-agreement protocols,
the group members cooperate to establish a group key.
This improves the reliability of the overall system and
reduces the bottlenecks in the network in comparison to
the centralized approach. The protocols of this category
are classified into three sub-categories namely Ring based
cooperation, Hierarchical based cooperation and Broadcast
based cooperation depending on the virtual topology
created by the members for cooperation.
Ring-Based Cooperation: In some protocols, members
are organized in a ring. The CLIQUES protocol suite [9] is
an example of ring-based cooperation. This protocol
arranges group members as (M1, Mn) and Mn as controller.
It specifies a role of the controller that collects
contributions of other group members, adds own
contribution, and broadcasts information that allows all
members to compute the group key.
The choice of the controller depends on the dynamic
event and the current structure. In additive events new
members are appended to the end of the list CLIQUES do
not provide verifiable trust relationship, because no other
member can check whether values forwarded by Mi, or the
set broadcasted by the controller are correctly built.
Hierarchical Based Cooperation: In the hierarchical
GKA protocols, the members are organized according to

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

some structure. STR protocol [16] uses the linear binary
tree for cooperation and provides communication efficient
protocols with especially efficient join and merges
operations. STR defines the role of the sponsor
temporarily and it can be assigned to different members on
dynamic events depending on the current tree structure.
The sponsor reduces the communication overhead as it
performed some operations on behalf of the group. The
sponsor is not a central authority. STR provides verifiable
trust relationship because every broadcasted public key
can be verified by at least one other participant.
Broadcast based Cooperation:
Broadcast based
protocols have constant number of rounds. For example,
in three-round Burmester-Desmedt (BD) protocol [17]
each participant broadcasts intermediate values to all other
participants in each round. The communication and
computational load is shared equally between all parties.
This protocol does not provide verifiable trust
relationship, since no other group member can verify the
correctness of the broadcasted values.

2.3 Decentralized Approaches
The decentralized approach divides the multicast group
into subgroups or clusters, each sub-group is managed by
a LC (Local Controller) responsible for security
management of members and its subgroup. Two kinds of
decentralized protocols are distinguished as static
clustering and dynamic clustering. In Static clustering
approach, the multicast group is initially divided into
several subgroups. Each subgroup shares a local session
key managed by LC.
Example: IOLUS [18] and DEP [11] belong to the
categories, which are more scalable than centralized
protocol. Dynamic clustering approach aims to solve the
“1 affect n” phenomenon. This approach starts a multicast
session with centralized key management and divides the
group dynamically. Example: AKMP [10], SAKM [19]
belong to this approach and are dedicated to wired
networks. Enhanced BAAL [20] and OMCT [21,22]
proposes dynamic clustering scheme for multicast key
distribution in ad hoc networks.
OMCT [21,22] (Optimized Multicast Cluster Tree) is a
dynamic clustering scheme for multicast key distribution
dedicated to operate in ad hoc networks. This scheme
optimizes energy consumption and latency for key
delivery. Its main idea is to elect the local controllers of
the created clusters [21,22]. OMCT needs the
geographical location information of all group members in
the construction of the key distribution tree. Once the
clusters are created within the multicast group, the new LC

33

becomes responsible for the local key management and
distribution to their local members, and also for the
maintenance of the strongly correlated cluster property.
The election of local controllers is done according to the
localization and GPS (Global Positioning System)
information of the group members, which does not reflect
the true connectivity between nodes.
Based on the literature reviewed, OMCT is the efficient
dynamic clustering approach for secure multicast
distribution in mobile ad hoc networks. To enhance its
efficiency, it is necessary to overcome the criteria, as
OMCT needs geographical location information in the
construction of key distribution tree by reflecting true
connectivity between nodes.
To overcome the above limitations another method called
Optimized Multicast Cluster Tree with Multipoint Relays
(OMCT with MPR) [23] is introduced which uses the
information of Optimized Link State Routing Protocol
(OLSR) to elect the LCs of the created clusters. OMCT
with MPRs assumes that routing control messages have
been exchanged before the key distribution. It does not
acknowledge the transmission and results in
retransmission which consumes more energy and
unreliable key distribution due to high packet drop rate for
mobile ad hoc networks.
Destination Sequenced Distance Vector (DSDV) [24] is a
table driven proactive routing protocol designed for
mobile ad hoc networks. This protocol maintains routing
table as a permanent storage. Routes are maintained
through periodically and event triggered exchanges the
routing table as the node join and leave.
Route selection is based on optimization of distance
vector. It avoids routing loops and each node has a unique
sequence number which updates periodically. It is mainly
used for intra cluster routing. It allows fast reaction to
topology changes. Improvement of DSDV (IDSDV) [25,
26], improves the delivery ratio of Destination-Sequenced
Distance Vector (DSDV) routing protocol in mobile ad
hoc networks with high mobility. It uses message
exchange scheme for its invalid route reconstruction but
does have multicast connectivity between nodes.
The proposal of this paper is to present a new efficient
Cluster Based Multicast Tree (CBMT) using Mobility
Aware Multicast version of DSDV for secure multicast
key distribution. Mobility aware MDSDV have multicast
connectivity between nodes. It sends acknowledgement
for each transmission in order to reduce the
retransmission. The LCs are elected easily with periodic
updates of node join and leave information using multicast

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

34

tree. This overcomes the issues of end to end delay,
unreliability with high packet drop rate and low key
delivery ratio. The efficient CBMT algorithm is simulated
with network simulator NS-allinone-2.33 and the
performance is studied based on the QOS characteristics in
multicast key distribution.

3. Proposed Methodology
The methodology of efficient CBMT is proposed in order
to assure reliable QOS based secure multicast key
distribution for mobile ad hoc networks. The specific
contributions are structured in four Phases.
Phase I : Integration of OMCT with DSDV [27]
 Makes easy election of LC
 Improves key delivery ratio
Phase II : Enhancement of OMCT with DSDV[28]
 Reduces end to end delay
 Consumes less energy
Phase III : CBMT with MDSDV[29]
 Improves reliability
 Reduces packet drop rate
Phase IV: Efficient CBMT
 Improves Key Delivery Ratio
 Consumes Less Energy
 Reduces end to end delay
 Reduces Packet Drop Rate

3.1 Integration of OMCT with DSDV [27]
The main idea of this phase is to integrate OMCT
clustering algorithm with DSDV routing protocol to elect
the local controllers of the created clusters. The principle
of this clustering scheme is to start with the group source
GC, to collect its 1-hop neighbors by DSDV, and to elect
LCs which are group members and which have child
group members (the LC belongs to the unicast path
between the source and the child group members).
The selected nodes will be elected as local controllers as
shown in figure 3. In the example shown in figure 3, the
group source GC 0 collects its 1-hop neighbors by DSDV,
and elects LCs node 1 and 7, which are group members
and which have child group members as 2, 3,4,5,6 and 8,
9,10,11,12 respectively. The selected nodes will be elected
as local controllers.
According to the step 3 in the algorithm, if a new member
13 joins the group then the member do not belong to
formed clusters. This approach chooses from these
remaining group members the nodes that have the
maximum reachability to the others nodes in one hop.

Figure 3. OMCT with DSDV

This reachability information is collected through the
DSDV routing protocol, consolidated through OMCT
signaling and attached the created cluster. If the created
clusters do not cover group members then the node is
selected as local controller for the remaining group
members. Thus this phase makes easy to elect the local
controllers and also increases the key delivery ratio in
multicast transmission.

3.2 Enhancement of OMCT with DSDV [28]
The Integration of OMCT with DSDV approach is further
enhanced by sending acknowledgement for each
transmission using the DSDV routing protocol in order to
reduce retransmission. Thus in this phase, it reduces the
end to end delay and consumes less energy which makes
this approach as an energy efficient.

3.3 Cluster based Multicast Tree with MDSDV [29]
Cluster based multicast tree (CBMT) with MDSDV
algorithm is a new reliable version of OMCT with DSDV
for secure multicast key distribution in mobile ad hoc
networks. It includes key tree engine and forms tree
structure based on authentication.
Multicast version of DSDV routing protocol is used to
form multicast tree among the group members. Thus this
phase proposes a reliable dynamic clustering approach by
reducing the packet drop rate and increasing the key
delivery ratio.

3.4 Efficient CBMT with Mobility Aware MDSDV
More frequent membership dynamism causes node failure,
link failure, power failure which leads to time delay in
multicast transmission. Node fails due to movement of

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

node out of coverage area. Failure of node is easily
identified by reachability information of Mobility Aware
MDSDV. When a LC fails, it leads to clusterization. Thus
this phase proposes an efficient CBMT with Mobility
aware MDSDV which improves the performance of QoS
metrics.

4. Performance Evaluation and Analysis of
Results
The performance of CBMT for multicast key distribution
is evaluated in terms of QoS characteristics as metrics and
simulated using NS2 version ns-allinone-2.33 [30].

4.1 Performance Metrics
The QOS metrics are namely end to end delay in key
distribution, energy consumption, Key delivery ratio and
packet drop rate of multicast key distribution.
 Key Delivery Ratio is defined as the number of
received keys divided by number of sent keys. This
metrics allows evaluating the reliability of the
protocol in terms of key delivery ratio in key
transmission from the source to the group members.
 Energy Consumption is defined as the sum of units
required to the keys transmission throughout the
duration of simulation.
 End to end Delay: The average latency or end to
end delay of keys transmission from the source to the
receivers. This metrics allows evaluating the average
delay to forward a key from a LC to its cluster
members.
 Packet Loss Rate: is obtained as subtracting number
of packets received at the destination from number
of packets send to destination. This metrics allows in
evaluating the reliability of the protocol in terms of
packet loss rate in key transmission from the source
to the group members.

35

The density of
members
Network surface

group 7, 13, 28 and 50 nodes

The maximal speed
The pause time
The simulation duration
Physical/Mac layer
Mobility model
Routing protocol

(1000m*1000m,
1500m*1500m,
2000m *2000m).
10km/h (2.77m/sec)
20 seconds
200 seconds
IEEE 802.11
Random waypoint model
Mobility Aware MDSDV

4.3 Analysis of Simulation Results
This section presents analysis of simulation results to
compare the performance of efficient CBMT with
Mobility aware MDSDV and CBMT in varying density of
nodes and network surface. This simulation results shows
that the efficiency is improved by efficient CBMT
approach of multicast key distribution in terms of end to
end delay of key distribution, energy consumption, key
delivery ratio and packet loss rate compared to the OMCT.
The simulation results illustrate the comparison of
efficient CBMT with Mobility aware MDSDV and OMCT
as shown in fig.4a – 4d. Indeed, this approach of CBMT
divides the multicast group with the effective connectivity
between nodes. It allows fast reaction to topology
changes.

4.2 Simulation Environment
The proposed CBMT using MDSDV is simulated under
Linux Fedora, using the network simulator NS2 version
ns-allinone-2.33. This simulation environment is defined
by the following parameters as shown in table I.
The simulations are conducted and the performance is
compared for CBMT and OMCT with varying density of
cluster and network surface. This comparison is done in
terms of end to end delay, energy consumption, key
delivery ratio and packet drop ratio.
Table 1: Simulation Metrics

Figure 4 a Average End to end Delay

Figure 4a and 4b illustrates that the average delay of key
distribution and the energy consumption are better with
this approach of efficient CBMT with mobility aware
MDSDV than OMCT. This is due to the fact that it sends
acknowledgement for each transmission in order to reduce
the retransmission. Hence it reduces average end to end

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

delay and energy consumption of multicast
distribution in efficient CBMT compared to OMCT.

key

36

From the figure 4c and 4d, it can be observed that
Efficient CBMT gives better performance and achieves
reliability in terms of key delivery ratio and reduces packet
loss rate compared to the OMCT algorithm under varying
network conditions.

5. Conclusion

Figure 4 b Energy Consumption

Secure multicast communication is a significant
requirement in emerging applications in adhoc
environments like military or public emergency network
applications. Membership dynamism is a major challenge
in providing complete security in such networks. Some of
the existing algorithms like OMCT address the critical
problems using clustering approach like 1-affects-n
phenomenon and delay issues. Therefore an attempt is
made to improve the performance in terms of QoS metrics
as node increases by using an approach of efficient Cluster
Based Multicast Tree algorithm for secure multicast
communication. This algorithm uses Mobility aware
Multicast version of DSDV routing protocol for electing
LCs. The proposed efficient CBMT is tested and the entire
experiments are conducted in a simulation environment
using network simulator NS2. The results are formed to be
desirable and the proposed method is efficient and more
suitable for secure multicast communication dedicated to
operate in MANETs.

References

Figure 4 c Key Delivery Ratio

Figure 4 d Packet Loss Rate

[1] T. Chiang and Y. Huang, “Group keys and the multicast
security in ad hoc networks”, Proc. IEEE International
Conference on Parallel Processing, IEEE press, pp 385390, Oct 2003.
[2] T. Kaya, G. Lin, G. Noubir, and A. Yilmaz, “Secure
multicast groups on ad hoc networks”. Proc. 1st ACM
workshop on security of ad hoc and sensor networks,
ACM Press, pp 94-102.2003.
[3] L. Lazos and R. Poovendram, “Energy-Aware Secure
Multicast
Communication in Ad Hoc Networks Using
Geographical
Location Information”. Proc.IEEE
International Conference on
Acoustics Speech and
Signal Processing, pp 201-204, Apr 2003.
[4] H. Bettahar, A. Bouabdallah, and M. Alkubeily, “Efficient
Key Management Scheme for Secure Application level”,
IEEE sym. On Computers and Communications, pp 489497, July 2007.
[5] G.Valle, R.Cardenas, “Overview the Key Management in
Adhoc Networks”, LCNS 3563, pp 397-406, Aug 2005.
[6] D.Huang, D.Medhi, “A Secure Group Key Management
scheme for Hierarchical Mobile Adhoc Networks”, Adhoc
Networks, pp 560-577, June 2008.
[7] B.Kim, H.Cho, J. Lee, “Efficient Key Distribution
Protocol for secure Multicast Communication”, LCNS
3043, pp 1007-1016, Apr 2004.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[8] Y. Challal, H. Seba, “Group Key Management Protocols:
A novel Taxonomy”, International Journal of Information
Technology pp 105-118, 2005.
[9] L. Dondeti, S. Mukherjee, and A. Samal, “Secure one-to
many group communication sing dual encryption”, IEEE
sym. On Computers and Communications, pp 1-25, Jul
1999.
[10] H. Bettahar, A. Bouabdallah, and Y. Challal, “An adaptive
key management protocol for secure multicast”, Proc.IEEE
International Conference on Computer Communications
and Networks, pp 190-195, Oct 2002.
[11] M. Bouassida, I. Chrisment, and O. Festor, “An Enhanced
Hybrid Key Management Protocol for Secure Multicast in
Ad Hoc Networks”. LCNS 3042, pp 725-742, Apr 2004.
[12] H. Harney and C. Muckenhirn. Group key management
protocol (gkmp) specification. RFC2093, 1997.
[13] G. H. Chiou and W. T. Chen. Secure Broadcast using
Secure Lock. IEEE Transactions on Software Engineering,
August 1989.
[14] Chung KeiWong, Mohamed Gouda, and Simon S. Lam.
Secure group communications using key graphs.
IEEE/ACM Trans.2000.
[15] Alan T. Sherman and David A. McGrew. Key
establishment in large dynamic groups using one-way
function trees. 2003.
[16] Yongdae Kim, Adrian Perrig, and Gene Tsudik. Treebased group key agreement. ACM Trans. Inf. Syst. Secur.,
2004.
[17] Mike Burmester and Yvo Desmedt. A secure and scalable
group key exchange system. Information Processing
Letters, May 2005.
[18] S. Mittra. Iolus: A framework for scalable secure
multicasting. In SIGCOMM, pages 277–288, 1997.
[19] Y. Challal, H. Bettahar, and A. Bouabdallah. SAKM: A
Scalable and Adaptive Key Management Approach for
Multicast Communications. ACM SIGCOMM, April 2004.
[20] M. Bouassida, I. Chrisment, and O. Festor. An Enhanced
Hybrid Key Management Protocol for Secure Multicast in
Ad Hoc Networks. In Networking 2004, Greece, May
2004.
[21] M. Bouassida, I. Chrisment, and O. Festor. Efficient
Clustering for Multicast Key Distribution in MANETs. In
Networking 2005, Waterloo, CANADA, May 2005.
[22] M.S. Bouassida, I. Chrisment and O.Feastor. Group Key
Management in MANETs, May 2006.
[23] M. Bouassida, I. Chrisment, and O. Festor: Efficient Group
Key Management Protocol in MANETs using the
Multipoint Relaying Technique. International Conference
on Mobile Communications 2006.
[24] http://en.wikipedia.org/wiki/
DestinationSequenced_
Distance_Vector_routing.
[25] T. Liu & K. Liu, Improvement on DSDV in Mobile Ad
Hoc Networks, IEEE, China, 2007, pp.1637-1640
[26] A H A Rahman, Z A Zukarnain, “ Performance
Comparison of AODV, DSDV and I-DSDV routing
protocols in Mobile Adhoc Networks”, European Journal
of scientific Research, pp 566-576, 2009.
[27] D.Suganyadevi, G.Padmavathi, “A Reliable Secure
Multicast Key Distribution Scheme for Mobile Adhoc

37

Networks”, World Academy of Science, Engineering and
Technology, Vol. 56, 2009, pp 321-326.
[28] D.SuganyaDevi., G. Padmavathi, "Performance Efficient
EOMCT Algorithm for Secure Multicast Key Distribution
for Mobile Adhoc Networks," in International Conference
on Advances in Recent Technologies in Communication
and Computing, 2009, pp.934-938.
[29] D.SuganyaDevi., G. Padmavathi, "Cluster Based
Multicast Tree for Secure Multicast Key Distribution in
Mobile Adhoc Networks," International Journal of
Computer Science and Network Security, Vol. 9, No. 9,
2009, pp. 64-69.
[30] The Network Simulator NS-2 tutorial homepage,
http://www.isi.edu/nsnam/ns/tutorial/index.html

SuganyaDevi Devaraju received her B.Sc
(Chemistry)
and
MCA
from
PSGR
Krishnammal College for Women, Coimbatore
in 1996 and 1999 respectively. And, she
received her M.Phil degree in Computer
Science in the year of 2003 from
Manonmaniam
Sundaranar
University,
Thirunelveli. She is pursuing her PhD at
Avinashilingam University for Women. She is currently working as
an Assistant Professor in the Department of computer
Applications, SNR Sons College, Coimbatore. She has 11 years of
teaching experience. She has presented 15 papers in various
national and international conferences. She has 6 publications in
various international journals. Her research interests Multicast
Communication, MANET and Network Security.
Dr. Padmavathi Ganapathi is the professor
and head of Department of Computer Science,
Avinashilingam
University
for
Women,
Coimbatore. She has 22 years of teaching
experience and one year Industrial experience.
Her areas of interest include Network security
and
Cryptography
and
real
time
communication. She has more than 120
publications at national and International level.
She is a life member of many professional organizations like CSI,
ISTE, AACE, WSEAS, ISCA, and UWA.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

A Theoretical Methodology and Prototype Implementation for
Detection Segmentation Classification of Digital Mammogram
Tumor by Machine Learning and Problem Solving Approach
*VALLIAPPAN Raman 1, PUTRA Sumari 2 and MANDAVA Rajeswari 3
1

School of Computer Science, University Sains Malaysia,
George town, Penang 11800, Malaysia

2

School of Computer Science, University Sains Malaysia,
George town, Penang 11800, Malaysia

3

School of Computer Science, University Sains Malaysia,
George town, Penang 11800, Malaysia

Abstract
Breast cancer continues to be a significant public health
problem in the world. Early detection is the key for
improving breast cancer prognosis. The CAD systems can
provide such help and they are important and necessary
for breast cancer control. Microcalcifications and masses
are the two most important indicators of malignancy, and
their automated detection is very valuable for early breast
cancer diagnosis. The main objective of this paper is to
detect, segment and classify the tumor from mammogram
images that helps to provide support for the clinical
decision to perform biopsy of the breast. In this paper, a
classification system for the analysis of mammographic
tumor using machine learning techniques is presented.
CBR uses a similar philosophy to that which humans
sometimes use: it tries to solve new cases of a problem by
using old previously solved cases. The paper focus on
segmentation and classification by machine learning and
problem solving approach, theoretical review have been
undergone with more explanations. The paper also
describes the theoretical methods of weighting the feature
relevance in case base reasoning system.
Key words: Digital Mammogram, Segmentation, Feature
Extraction and Classification.

1. Introduction
Breast cancer is the most common cancer of western
women and is the leading cause of cancer-related death
among women aged 15-54 [14]. Survival from breast
cancer is directly related to the stage at diagnosis. Earlier

the detection, higher chances of successful treatments. In
an attempt to improve early detection, a study has been
undertaken to process the screening mammograms of
breast cancer patients in order to analyze the
mass/microcalcifications features that help to differentiate
benign from malignant cases.
In this paper we propose the selected shape-based features
in order to classify clustered masses between benign and
malignant [15]. The computerized analysis of
mammographic masses performed in this work can be
divided into four stages: 1) digitization of mammograms
and enhancement of images; 2) detection of suspicious
areas; 3) extraction of features for every segmented tumors
in the digitized mammogram; and 4) analysis of the
features using Case Based Reasoning techniques. A CaseBased Reasoning algorithm is used for classifying these
cases into benign or malignant cases. We have to be aware
that Case-based Reasoning means using previous
experience in form of cases to understand and solve new
problems [13].
The main objective of this paper is to focus on the
segmentation and theoretical review for classification of
tumor by case base reasoning approach and how to apply
weights to the features, and improve the accuracy rate.
The paper is organized as follows: In Section 2, it clearly
explains the existing works of mammography detection,
then machine learning technique is explained in section 3,
Next in section 4 problem solving capabilities are
explained, next experimental results are shown in Section
5. Section 6 discusses the shown experimental results.
Finally conclusion and future works are specified in

38

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

section 6.

2. Existing Research Works
The problem of image processing has been divided into
several research areas and medical research has been quite
receptive of image processing in applications like x ray,
computer aided tomography, ultrasound and magnetic
resonance [8]. There are several existing approaches were
made to detect the abnormal tissues in breast images and
to detect the cancer earlier.
Zhang et al. [3] noted that the presence of spiculated
lesions led to changes in the local mammographic texture.
They proposed that such a change could be detected in the
Hough domain, which is computed using the Hough
transform. They partitioned an image into overlapping
ROIs and computed the Hough transform for each ROI.
The Hough domain of each ROI was thresholded to detect
local changes in mammographic texture and to determine
the presence or absence of a spiculated mass.
Brzakovic et al. [4] use a two stage multi-resolution
approach for detection of masses. First they identified
suspicious ROIs using Gaussian pyramids and a pyramid
linking technique, based on the intensity of edge links.
Edges were linked across various levels of resolution. This
was followed by a classification stage, where the ROI
were classified as malignant, benign or normal based on
features like shape descriptors, edge descriptors and area

39

round malignant masses. However, some malignant
masses are shaped irregularly.
The above methods show less than five false positives per
image with a true positive detection rate of approximately
90%.It is difficult to compare the performance of these
methods because their databases are different.

3. Machine Learning Approach
Compare to all the existing works; we developed
mammographic tumor segmentation by region growing
approach and classification using case base reasoning
approach [15]. In this paper there are two stages; first
stage includes machine learning approach such as
digitizing the images, preprocessing and segmentation.
Tumor segmentation classified as two types: Mass and
Microclacification.It is more difficult to detect masses than
microcalcifications because their features can be obscured
or similar to normal breast parenchyma. Masses are quite
subtle, and often occurred in the dense areas of the breast
tissue, have smoother boundaries than microcalcifications,
and have many shapes such as circumscribed, speculated
lobulated or ill-defined. Second stage is the problem
solving approach using Case Base Reasoning method; new
cases are solved by previous solved old cases, which is the
main focus of the paper. Figure 1 illustrates the overall
block diagram of tumor Classification method.
Digitizing Mammogram

Petrick et al. [5] developed a two-stage algorithm for the
enhancement of suspicious objects. In the first stage they
proposed an adaptive density weighted contrast
enhancement filter (DWCE) to enhance objects and
suppress background structures. The central idea of this
filtering technique was that it used the density value of
each pixel to weight its local contrast. In the first stage the
DWCE filter and a simple edge detector (Laplacian of
Gaussian) was used to extract ROIs containing potential
masses. In the second stage the DWCE was re-applied to
the ROI. Finally, to reduce the number of false positives,
they used a set of texture features for classifying detected
objects as masses or normal. They further improved the
detection algorithm by adding an object-based regiongrowing algorithm to it.
Lai [6] made an approach based on a multiresolution
Markov random field model detect mass lesions. Its initial
window size for segmentation influences the sensitivity of
detection. Li [7] proposed a method on iris filter was
developed to detect mass lesions of rounded convex
regions with low contrast. The iris filter enhances most

Machine Learning
Approach
Image Preprocessing

Image Segmentation

Feature Extraction and Selection
Problem Solving
Approach
Classification

Case Base Reasoning
Method

Fig 1 illustrates the overall block diagram of Mass Classification
method

3.1 Digitization
First, the X-ray mammograms are digitized with an
image resolution of 100 × 100 μm2 and 12 bits per pixel by
a laser film digitizer. To detect microcalcifications on the
mammogram, the X-ray film is digitized with a high
resolution. Because small masses are usually larger than
3mm in diameter, the digitized mammograms are
decimated with a resolution of 400 × 400 mm 2 by

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

averaging 4 × 4 pixels into one pixel in order to save the
computation time.

Fig 2 illustrates original image [16] by reducing image dimension in
averaging of 8×8 Matrix

3.2 Preprocessing
Preprocessing is an important issue in low-level image
processing. The underlying principle of preprocessing is to
enlarge the intensity difference between objects and
background and to produce reliable representations of
breast tissue structures. An effective method for
mammogram enhancement must aim to enhance the
texture and features of tumors. The reasons are: (1) lowcontrast of mammographic images; (2) hard to read
masses in mammogram because it is highly connected to
surrounding tissues; the enhancement methods are
grouped as global histogram modification approach and
local processing approach. Current work is carried out in
global histogram modification approach.
Preprocessing
Approach

Description

Advantage

Global Histogram
Modification
Approach

Re-assign the
intensity values of
pixels to make the
new distribution
of the intensities
uniform to the
utmost extent

Effective in
enhancing the entire
image with low
contrast

Local Approach

Feature-based or
using nonlinear
mapping locally

Effective in local
texture enhancement

Table 1 illustrates the preprocessing approach

3.3 Segmentation
After preprocessing, next stage is to separate the
suspicious regions that may contain masses from the
background parenchyma, that is to partition the
mammogram into several non-overlapping regions, then
extract regions of interests (ROIs), and locate the
suspicious mass candidates from ROIs. The suspicious
area is an area that is brighter than its surroundings, has
almost uniform density, has a regular shape with varying
size, and has fuzzy boundaries. The Segmentation
methods do not need to be excruciating in finding mass
locations but the result for segmentation is supposed to

include the regions containing all masses even with some
false positives (FP). FPs will be removed at a later stage.
We chose region growing process for segmentation of a
mammographic tumor.
The basic idea of the algorithm is to find a set of seed
pixels in the image first, and then to grow iteratively and
aggregate with the pixels that have similar properties. If
the region is not growing any more, then the grown region
and surrounding region are obtained. Region growing may
be applied globally or locally. If the grown region of a
seed has an average intensity greater than that of the
surrounding, the region is classified as the parenchyma, or
fat, tissue.The accuracy reaches 70% for classifying the
tissue patterns. The key issue of region growing is to find
a criterion that checks whether the gray level values of its
neighbors are within a specified deviation from the seed.
The performance of the algorithm depends on the
enhancement method; therefore the algorithm will get a
better result if a better enhancement method is applied.
Global histogram Modification Enhancement method was
applied to enhance the images before region growing.
Second issue of region growing is to find the suitable
seeds. An automatic seed selection was applied. There are
three parts in mammograms: a fat region, a fatty and
glandular region, and a dense region. According to the
intensity values and local contrast between a seed pixel
and its neighbors in the three partitions, three sets of seed
pixels are selected from the partitioned regions.
The region growing process starts from seed pixels. The
gray level mapping shows local valleys at the boundary of
two neighboring regions. The local peak just after the
local valley in the gray level mapping gives a sign of the
switch between the absorption of pixels in the boundary of
the current region and the absorption of pixels in the
neighboring region. When the grown region size is equal
to or greater than a minimum region size with the stopping
condition such as speckle noise, touching previous region,
new adjacent region, contrast limitation. Once the
stopping condition is achieved, region growing is applied
and the masses are segmented. Below algorithm
summarizes the region growing procedures for segmenting
the masses.
Algorithm
1. Pull the top item from the growth list.
2. Mark this pixel in the output image - it is part of the
region.
3. Examine each neighboring pixel. For each pixel, if it
has not already been visited and it fits the growth criteria,
mark it as visited and add it to the growth list.
4. Go back to step 1 and repeat until there are no more
items in the growth list and extract the part of tumor.

40

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

41

5. Case Base Reasoning Approach
4. Feature Extraction
After segmenting the tumors in mammogram, The ROI
hunter provides the “regions of interest” without giving
further information [12]. To this purpose suitable features
should be selected so that a decision making system can
correctly classify possible pathological regions from
healthy ones. Feature extraction plays a fundamental role
in many pattern recognition tasks. In this paper twelve
features (global and local features) are extracted from the
segmented tumors. Below table illustrates the features.
Feature of Selection

Description

 g (i, j)  g (i, j)

Skewness

3

N 1

1

i , j 0

N

 g (i, j)  g (i, j)
 g (i, j )  g (i, j )
 g (i, j )  g (i, j )

3

N 1

i , j 0

Kurtosis

Retrieved Case

4

N 1

1

Case-Based Reasoning (CBR) integrates in one system
two different characteristics: machine learning capabilities
and problem solving capabilities. CBR uses a similar
philosophy to that which humans sometimes use: it tries to
solve new cases (examples) of a problem by using old
previously solved cases. The process of solving new cases
contributes with new information and new knowledge to
the system. This new information can be used for solving
other future cases. The basic method can be easily
described in terms of its four phases .The first phase
retrieves old solved cases similar to the new one. In the
second phase, the system tries to reuse the solutions of the
previously retrieved cases for solving the new case. The
third phase revises the proposed solution. Finally, the
fourth phase retains the useful information obtained when
solving the new case. In a Case-Based Classifier System, it
is possible to simplify the reuse phase. Classifying the new
case with the same class as the most similar retrieved case
can do reuse [13].
Elaborate a New Case

New case

i , j 0

N

N 1

Acquired Case

4

New case

Problem

i , j 0

Reuse Acquired Case

A1
A

Circularity

Compactness

Domain Knowledge

Revised case

P2
A

Retain Problem

P1  P2
P1

Contrast

Standard deviation

2
g (i, j )  1 / N i , j 0 g (i, j )
N 1

Intensity

tumor area

Area
Length

True Length of Mass

Breadth

True Breadth of Mass

Convex Perimeter
Roughness

Solved Case

Case Base

Perimeter of the convex hull of the mass
Perimeter/Convex Perimeter

Table 2 illustrates the Local and Global Features

Fig 3 illustrates the Case Base Reasoning Approach

The kernel in a Case-Based Reasoning system is the
retrieval phase (phase 1). Phase 1 retrieves the most
similar case or cases to the new case. Obviously, the
meaning of most similar will be a key concept in the
whole system. Similarity between two cases is computed
using different similarity functions. For our purpose in this
paper, we use the similarity functions based on the
distance concept. The most used similarity function is the
Nearest Neighbor algorithm, which computes the
similarity between two cases using a global similarity
measure. The future practical implementation (used in our
system) of this function is based on the Minkowski’s
metric.
Minkowski’s metric is defined as:

SimilarityCase _ x, Case _ y   r

F


i 1

Wi  xi  yi

r

42

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

(1)
Where Case_x, Case_y are two cases, whose similarity is
computed; F is the number of features that describes the
case; xi y i represent the value of the ith feature of case
Case_x and Case_y respectively; and wi is the weight of
the ith feature. In this study we test the Minkowsky’s
metric for three different values of r: Hamming distance (r
= 1), Euclidean distance (r = 2), and Cubic distance (r =
3). This similarity function needs to compute the feature
relevance ( wi ) for each problem to be solved. Assuming
an accurate weight setting, a case-based reasoning system
can increase their prediction accuracy rate. We use also
the Clark’s and the Cosine distance, both are based on
distance concept and also use weighting features.
Sometimes human experts can not adjust the feature
relevance, automatic method can solve this limitation.
5.1 Feature Selection Based on Rough Set theory
This paper presents a review on weighting method based
on the Rough Sets theory introduced by Pawlak [10]. It is
a single weighting method (RSWeight) that computes the
feature weights from the initial set of train cases in the
CBR system. We also introduce a weighting method that
computes the Sample Correlation among the features and
the classes that the cases may belong to. The idea of the
rough set consists of the approximation of a set by a pair
of sets, called the lower and the upper approximation of
this set. In fact, these approximations are inner and closure
operations in a certain topology generated by the available
data about elements of the set. The main research trends in
Rough Sets theory which try to extends the capabilities of
reasoning systems are: (1) the treatment of incomplete
knowledge; (2) the management of inconsistent pieces of
information; (3) the manipulation of various levels of
representation, moving from refined universes of
discourse to coarser ones and conversely .
We compute from our universe (finite set of objects that
describe our problem, the case memory) the concepts
(objects or cases) that form partitions of that Universe.
The union of all the concepts made the entire Universe.
Using all the concepts we can describe all the equivalence
relations (R) over the universe. Let an equivalence relation
be a set of features that describe a specific concept. The
universe and the relations form the knowledge base,
defined as KB = (U; R). Every relation over the universe
is an elementary concept in the knowledge base [10].
All the concepts are formed by a set of equivalence
relations that describe them. So we search for the
minimum set of equivalence relations that define the same
concept as the initial set. The set of minimum equivalence

relations is called reduct. A reduct is the essential part,
which suffices to define the basic concepts occurring in
the knowledge. The core is the set of all indispensable
equivalence relations over the universe, in a certain sense
the most important part of the knowledge. The core is
defined as the intersection of all the reducts. Reducts
contain the dependencies from the knowledge. We can use
this information to weigh the relevance of each feature in
the system [10]. An attribute that does not appear in the
reduct has a feature weight value of 0.0, whereas an
attribute that appears in the core has a feature weight value
of 1.0. The rest has a feature weight value depending on
the proportional appearance in the reducts. This is the
weight feature information that we use in the case-based
classifier system.
5.2 Sample Correlation
Sample Correlation computes the weights wi computing
the sample correlation which exists between each feature
xi and the class z [10].
The Sample Correlation is defined as:

Sample_ Correlation xi , z  

1 N

N  1 j 1

 xijxi

 Sx
 i

 z j z 


 S z 


(2)

Where N is the number of cases; xij is the value of ith
feature for the case j; z j is the class which belong to the
case j. i is the mean of the ith feature;| is the mean if the
classes; S xi is the standard deviation of the feature xi ; and

S z is the standard deviation of class z.
Therefore weighting feature method needs a huge amount
of cases to develop a good weighting feature selection
during the retrieval phase.
If the system accuracy rate increases, then there is enough
information in the system to develop a good weighting
policy

6. Experimental Results
Currently the project is in the initial stage (prototype)
and first phase of implementations are done in matlab.
Therefore there are forty six X-ray mammograms taken
for testing the method. The mammograms were taken from
the patient files in the Free Mammogram Database
(MIAS). In addition, 10 mammograms were used for
training of the classifier. The 46 mammograms include 15

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

malignant and 10 benign masses that are in dense regions
with glandular tissues, various breast areas involving
ducts, breast boundaries, blood vessels, and/or glandular
tissues. After segmentation, feature extraction and
classification need to performed and tested. The below
results show the various stages of mammogram
segmentation. Feature extraction and Classification need
to be refined and implemented in future works.

43

Fig 7 illustrates the results of segmented benign tumors

The efficiency and complexity of this system
was improving than other systems presented in
literature. The performance of the algorithm on the
training set was a TP rate of 62% with 0.4 FP per
image. The algorithm was tested using a set of 46
images, consisting of 15 malignant cases and 10
benign cases. Performance of the algorithm on the
testing set was a TP of 60% and average of 0.5 false
clusters per image. Table 2 shows that average
accuracy of detecting benign and malignant ranges in
60% -70%.
Discussion

Fig 4 illustrates the original image from MIAS database
[16].Preprocessing the Image, Hunting for ROI, Histogram of
Original Image and segmenting the tumor.
Experiment
Segmentation Result
Accuracy
Experiment 1
Benign
63.3%
Experiment 2
Malignant
73.7%
Experiment 3
Benign
68.6%
Table 2 illustrates the results of Benign and Malignant tumors

Fig 5 illustrates the original mammogram image [16], segmentation
tumor for malignant cases and benign cases using region growing
method.

Fig 6 illustrates the results of segmented malignant tumors

The tests were divided into 2 stages. The first
part concerns subjective tests of the initial detection
of masses and another one focused on the
classification using the selected feature sets. The
subjective tests were performed by image processing
and experts in radiology. Radiologist’s suggestions
were used regarding mass shapes and their
occurrence terms. The initial detection of mass was
optimized with regard to influence of image preprocessing, size and shape of structuring element in
global histogram modification approach, whereas to
re-assign the intensity values of pixels to make the
new distribution of the intensities uniform to the
atmost extent. After that region growing
segmentation is applied to detect and segment the
tumor. On the segmented tumor part, features are
selected for classification. Therefore an m1×12 real
valued matrix is obtained for each mammography,
which contains as many rows (m) as the number of
masses are analyzed in the image, while the number
of columns (12) is related to the computed shape
features for every mass. In order to feed this
information to the system of case base classification,
the matrix is flattened into a vector. This process is
achieved computing the mean value of each feature
of the mass present in the image. Therefore, an image
can be reduced to a real-valued vector with 12
features. The human experts also decided which
training and test sets must be used. The training set
contained 10 samples, while the test set had 36
samples. The intial results were evaluated comparing
the result of this classification with the diagnosis

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

given by the biopsies. Currently the classification of
benign and malignant was identified with accuracy
range of 60-70%.

Conclusion
The paper provides the methodology with partial
results of segmentation and explains theoretically how
mammogram tumor classification is performed through
case base reasoning method. First stage of mammogram
mass segmentation result is shown in this paper, second
stage is under implementation, so the conceptual
framework of classification method is described on the
paper. Info structure presented in this paper when
successfully implemented would have an immense impact
in the area of computer-aided diagnosis system. In future
the methodology can be applied in a variety of medical
image applications
Acknowledgments
I would like to thank School of Computer Science and
Institute of Post graduate Studies, University Sains
Malaysia for supporting to progress my research activities.

References
[1] Kohonen T, “Self Organization and Associative Memory”,
Spring-Verlag, Hidelbarg, (1998)
[2] Hall EL, “Computer Image Processing and Recognition “,
Academic Press, New York, (1978).
[3] Woods R.E, “Digital Image Processing”, Adisson Welsely,
Reading, (1992).
[4] Kapur T, “Model based Three Dimensional Medical Image
Segmentation”, MIT, (1992).
[5] Sheshadri HS, Kandaswamy A.,” Detection of breast cancer
by mammogram image segmentation“. JCRT journal, Page
no 232-234(2005).
[6] S.M. Lai, X. Li, and W.F. Bischof, On techniques for
detecting circum- scribed masses in mammograms, IEEE
Trans Med Imaging 8, 377– 386 (1989).
[7] H.D. Li, M. Kallergi, L.P. Clarke, V.K. Jain, and R.A. Clark,
Markov random field for tumor detection in digital
mammography, IEEE Trans Med Imaging 14,
565– 576,
(1995).
[8] H. Kobatake, M. Murakami, H. Takeo, and S. Nawano,
Computerized detection of malignant tumors on digital
mammograms, IEEE Trans Med Imaging 18, 369–378,
(1999).
[9] N. Otsu, A threshold selection method from gray-level
histograms, IEEE Trans System Man Cybernet SMC-9, 62–
66 (1979).
[10] Z.Pawalak, Rough Sets: Thoertical Aspects of Reasoning
Data, Kluwer Academic Publication (1991).
[11] Jiang, Y., R.M. Nishikawa and J. Papaioannou,
"Requirement of Microcalcification Detection for

Computerized Classification of Malignant and Benign
Clustered Microcalcifications" In Proceedings of the SPIE
Conference on Image Processing, vol. 3338,pp. 313-317. San
Diego (USA), (1998).
[12] Dhawan, A.P., and Y. Chitre,"Analysis of Mammographic
Microcalcifications using Gray-level Image Structure
Features" IEEE Transactions of Medical
Imaging, (15)
pp.246-259,(1996).
[13] Aamodt, A., and E. Plaza, “Case-based reasoning:
Foundations issues, methodological variations, and system
approaches”. AI Communications, 7: 39-59, (1994).
[14] Fajardo, L.J., and M.B. Williams ,” The Clinical Potential of
Digital Mammography”, In Proceedings of the 3rd
International Workshop on Digital Mammography, pp. 43-52.
Chicago (USA), (1996).
[15] Raman Valliappan and Putra Sumari “Digital Mammogram
Segmentation: An Initial Stage “in 4th IASTED International
conference on Advanced Computing Science and
Technology, Langawi, Malaysia, (2008).
[16] Mammogram Image Analysis Database, UK.
Valliappan Raman is currently doing his PhD in mammogram
tumor segmentation and classification at University Sains
Malaysia. He has completed his Masters Degree in 2005 at
University Sains Malaysia and completed his Bachelor of
Engineering in Computer Science in 2002 at Madurai Kamaraj
University. He has been working as lecturer for past four years in
well established university. He have undergone various research
projects under major government grants and published papers,
articles and journals. His research interest is in medical imaging,
watermarking and health informatics.
Putra Sumari, is currently an Associate professor in School of
Computer Science, University Sains Malaysia. He has undergone
various research projects under government and university grants.
He has supervised many postgraduate and undergraduate
students. His research areas are in applied informatics, multimedia
and image processing. He has published many papers in highly
repuatated journal and conferences.
Mandava Rajeswari is currently an Associate Professor in School
of Computer Science, University Sains Malaysia. His research
areas are in computer vision and medical imaging.

44

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

45

Evaluation of Computer-aided Drug Delivery System
with a Human Operator
Koji Kashihara1 and Yoshibumi Nakahara2
1

Graduate School of Information Science, Nagoya University,
Furo-cho, Chikusa-ku, Nagoya, Aichi 464-8601, Japan

2

Graduate School of Human Ecology, Wayo Women's University
2-3-1, Konodai, Ichikawa, Chiba 272-8533, Japan

Abstract
To assist the judgment of human operators, a computer-aided
drug delivery system with adaptive predictive control is
suggested. The assisting system can predict future responses of a
patient to drug infusions, calculate optimal inputs, and present
those values on a monitor. Regardless of sudden disturbance such
as bleeding, human operators of the computer-aided system were
able to control arterial blood pressure. To improve the computeraided system, future studies will be required to consider the
method for emergency warning or correspondence to multiple
drug infusions.
Keywords: Adaptive Predictive Control, Computer-aided
System, Neural Networks, Arterial Blood Pressure, System
Evaluation

1. Introduction

accomplished physicians. For example, it is difficult for
beginners to appropriately grasp the characteristics of drug
responses reflecting the history of past inputs and outputs
or to correspond to an acute emergency such as bleeding.
Therefore, the effectiveness of intelligent control systems
may be applied to the quick decision making of
inexperienced beginners.
A computer-aided drug delivery system using adaptive
predictive control with NN was suggested in this study;
effectiveness was evaluated in human operators. 1) In
blood pressure control using a single drug, the learning
effect of the assistant system on beginners without
pharmacological knowledge was investigated. 2) The
accuracy of correspondence to an unknown and acute
emergency was assessed using the assistant system.

Shortage of anesthesiologists is a serious social problem
especially in local areas of Japan [1]. Under such a
condition, a constant effect of medical treatment is desired,
regardless of degree of advancement in system operators.
As a possible solution, the effects of automated therapy
systems without human operations have been expected [2].
However, to make these practicable, further improvement
is needed. To widely advance automated systems, many
issues such as their approval as medical instruments and
responsibility for medical accidents must be resolved.
Accordingly, a computer-aided system to assist in
decision-making by an operator rather than by automated
systems may become effective.

2. Control System

As an effective method for automatic control of biological
information, the application of intelligent control systems
has been studied. For instance, automated drug infusion
systems with neural networks (NN) and fuzzy theory for
blood pressure control have been developed and evaluated
[3]-[7]. In particular, the significant differences exist
between the abilities of residents and those of

The APC-NN is a control system where the NN
recursively learns the characteristics of mean BP responses
and determines predicted future outputs. In the closed loop
controls, the NN initially learned about BP response every
10 s (“Learning Loop”). The learned BPNN response was
used for the prediction of future outputs by the NN

2.1 Adaptive Predictive Control with NN
Figure 1A shows a block diagram of an adaptive predictive
control with NN (APC-NN) and a human operator.
Predicted future outputs to drug inputs were displayed (Fig.
1B), by using the APC-NN to emulate arterial blood
pressure (BP) response. A system operator can determine
the appropriate inputs, referencing the predicted values
(green circles in Fig. 1B) calculated by a computer as well
as personal experience in arterial pressure control.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

(“Prediction Loop”). A human operator determined final
infusion rates, referencing the predicted outputs.
A

Computer-aided system

Target
value, r
+
- e(t+i)

2. Predictive Loop
Optimal value

Delay

1. Learning Loop
Human
operator

BPNN(t+i)

u(t)

BPNN Learning algorithm

BP(t)

u(t)

Infusion
pump

Patient

+



1 2 1
    [BP  BPNN ] 2
2
2

(2)

Sensor

BP(t)
Model response

B

adjusted to decrease the error function by the
backpropagation learning rule based on the gradient
descent method.
The BPNN predicted by NN was compared with the
observed BP; its error was calculated by the following
function.

BPNN(t+i)
Neural
Network

Delay

46

Blood
pressure
Target values

ε shows the difference between actual BP as a supervised
signal and BPNN predicted by the NN before update of the
connection weights. The error is back propagated through
the network. The connection weight is updated by the
gradient descent of E as a function of the weights.

w *  w  Kn  w

Predictive response
by NN

(3)

where
Determined
infusion rates

Calculated
optimal input

w 
Operation
panel for inputs

Fig. 1 Drug delivery system with APC-NN. A: Block diagram of a
controller. B: Example of a control display.

BPNN
E
 ε 
w
w

w and w* are the weights of each connection before and
after update, respectively. Δw is the modified weight and
Kn is the learning rate. The backpropagation algorithm
was performed in the following order: output, second
hidden, and first hidden layers. The total number of
weights was 120.

2.2 NN Output

2.4 Initial Weights in NN

To assess the BP response, a multilayer feed-forward NN
with two hidden layers was used. The NN structure was a
nonlinear autoregressive moving average model [8] as
follows: ΔBPNN(t) is the BP change estimated by the NN.

To determine the initial weights, the NN learned the BP
model response. The weights before learning were
randomly assigned between -1 and 1. The infusion rate of
NE (-4 to 6 µg/kg/min) was randomly assigned; learning
calls were replicated 300,000 times. Normalization was
performed by dividing all outputs by 50. The learning rate,
Kn, was 0.01.

ΔBPNN(t) = f (ΔBP(t-1), u(t-1), …, u(t-6))

(1)

The input layer in the NN is composed of past input and
output. ΔBP(t-1) is the actual BP change induced by
norepinephrine (NE) infusion before one sampling interval.
The duration of past infusion rates determined by a human
operator (u) was set to 1 min. The input values were sent
through the first and second hidden layers and the output
layer. When the NN calculated output, the hyperbolic
tangent function was applied 14 times (seven times in each
hidden layer).

2.3 Backpropagation Algorithm
To identify the BP response and determine the initial
weights, NN was trained using the output of the model
response to random inputs. The backpropagation algorithm
was used in the online mode. All connection weights were

NN learning resulted in an absolute error of approximately
0.9 mmHg compared with the model response. The trained
NN was used in the system evaluation with the learning
rate set to Kn = 0.1 to quickly converge target values.

2.5 Cost Function
The APC-NN calculated the optimal infusion rate that
minimized the cost function:
Np

Q (t )   r (t  i )  BPNN (t  i )

2

(4)

i 1

Np is a prediction horizon, r(t+i) is a prescribed target
value of BP control at time point t+i, and BPNN(t+i) is the

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

BP predicted by NN. Future output can be estimated by
BPNN(t) derived from the backpropagation algorithm. Q
contained the predicted output after Np steps to suppress
sudden changes in infusion rate. Np was set to 5 in this
study. The cost function was minimized by a downhill
Simplex method for a quadratic function [7].

47

u is the infusion rate (µg/kg/min) and g is the unit impulse
response (mmHg) calculated from the derivative values of
the step response of Eq. (5). ΔT is a sampling rate; Nm is
the finite number of terms in the model for the unit
impulse response. K, T, and L are the same as in Eq. (5).
Parameters were set to ΔT = 10, Nm = 30, K = 20/3, T = 49,
and L = 10. Randomized noises (±1 mmHg) were added to
outputs.

3. System Evaluation
(a) Step response

25

3.1 Participants

20

3.2 Simulation Task

15
MAP(t)=K(1-exp(-(t-L)/T))

10

BP (mmHg)

Participants were fourteen healthy volunteers. They were
divided into two groups: computer-aided group using
APC-NN (assist group; n = 7, 27.4 ± 5.0 years) and nonassist group (n = 7, 26.6 ± 3.4 years). All participants had
no experience with drug delivery or specific
pharmacological knowledge. The condition of the
participants was verified before the experiment. Informed
consent was obtained from all participants after a complete
description of the experiment.

5
0
(b) Unit impuluse response
1.5
1.0
g(t)*T=(K/T)*exp(-(t-L)/T)
0.5

(A) Modeling of blood pressure response
To make a model for BP response to a drug infusion, the
average step response changed from baseline during a 5min NE infusion (3 µg/kg/min) in anesthetized rabbits (n =
3) was used (Fig. 2) [5]. NE is generally used for the
increase in blood pressure. The BP response (10-Hz
sampling rate) was averaged every 10 s. The step response
of BP was approximated by the first-order delay system
with a pure time delay:











BP(t )  K  1  exp 

t  L  

T  

(t  L)

(5)

K is a proportional gain [mmHg/(µg/kg/min)], T is a time
constant (s), and L is a pure time delay (s). If t < L, then
ΔBP(t) = 0. K = 20, T = 49, and L = 10 were derived from
approximation of the averaged step response.
The BP response as a model was calculated by the
convolution integral in the discrete-time domain:
Nm

BPmodel (t )   g ( τ )  T  u (t  τ )
τ 0

where

(6)

0

0

60

120

180

240

300

Time (s)
Fig. 2 The average step response changed from baseline during a 5-min
NE infusion (a) and the unit impulse response (b).

(B) BP control
Using the model response and the suggested control
system, the BP control tasks were performed. The
objectives of the first and second tasks were to study the
effect of initial learning of beginners on BP control. Target
values were set to two steps: +20 mmHg (60-400 s) and
+10 mmHg (410-720 s). Although the actual control time
was 720 s, the single trial in this study was performed in
an abridged form: 288 s (4 s × 72 times) meaning total
thinking time for selection of drug infusion rates.
The purpose of the third task was to study the accuracy of
correspondence to an unexpected emergency (e.g., the
sudden change induced by bleeding). Target values were
the same as those in the first and second tasks. A large
disturbance of -30 mmHg was added to the BP response in
the last half of the task (360-720 s).

3.3 Procedures
g (t ) 

K
 t L
 exp 

T
 T 

Immediately before the control tests, all participants were
instructed to regulate BP responses to the target values,
controlling drug infusion rates as correctly as possible.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

determining optimal drug inputs based on the predicted
response by the NN. In correspondence to a sudden
emergency, the automatic control was able to perform the
appropriate BP regulation while neatly avoiding
undershoot because of the online-learning of the NN.
40

3) Third trial. In both groups, the ability of
correspondence to a sudden emergency (disturbance
of -30 mmHg) was evaluated. For all participants, the
existence of the large disturbance was never instructed.
Predictive responses and optimal inputs were
continuously displayed in the assist group.

3.4 Data Analysis

10
3rd

-10

Infusion rate
(g/kg/min)

8
6
4

3rd

2

1st,2nd

0
0

120

240

360
Time (s)

480

600

720

Fig. 3 BP control based on APC-NN. The third trial had an acute and
unknown disturbance of -30 mmHg.

40
BP (mmHg)

2) Second trial. In the non-assist group, the same task as
the first was performed with no instructions; the
learning effect of the experience of first trial was
evaluated. In the assist group, computed optimal
inputs and future BP responses were newly displayed.
Before this trial, the experimenter instructed that the
green circles on a screen meant predicted values and
optimal inputs calculated by the computer. No other
concrete instructions or practice was given.

1st,2nd

20

0

Each participant performed the following control tasks.
1) First trial. For all participants of both groups, the
ability to regulate BP as beginners was evaluated,
using the model response.

Disturbance of -30 mmHg (3rd trial)

30

BP (mmHg)

Although the experimenter also instructed that the drug
infusion rate correlated with the BP increase, other
instructions for properties of the drug response were not
given. The participants were required to carefully maintain
BP values within the limited values (-30 to +50 mmHg).
When the time reached 4 s, the time limit for considering
drug infusion rate, the BP response after 10 s to the
determined input value was automatically output. Input
values could be easily controlled by operation of two
cursor keys: “←” and “→” indicating decrease and
increase of drug infusion rate. The participants
experienced the moving speed of input values using the
cursor keys before the experiment.

48

-30 mmHg (3rd trial)

1st

30

2nd

20



10
0
3rd

-10
8
Infusion rate
(g/kg/min)

Selected drug infusion rates and BP responses were
recorded for later analysis. The average absolute value
between actual BP and target values and the maximum
negative response were calculated for each participant.
The ground averages among all participants were then
calculated. All data were presented as mean ± SD.
Unpaired t tests were applied for comparison of intergroup
differences. Statistical significance was assigned to
differences with p < 0.05.

1st
3rd

6
2nd

4



2
0

4. Results
The results for automatic control based on APC-NN are
shown in Fig. 3. An overshoot was observed in an initial
adjustment of BP to the target value of +20 mmHg;
however, BP outputs totally converged on the target values,

0

120

240

360
Time (s)

480

600

Fig. 4 Typical example of BP control in the non-assist group.

720

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

An example of BP control in the non-assist group is shown
in Figure 4. Because of the same task as the first one, the
second trial showed sufficient learning effects; however, in
the third trial, correspondence to an unexpected and
sudden disturbance was delayed, resulting in induction of
a great undershoot.
An example of BP control in the assist group is shown in
Figure 5. The second trial incorporated predicted outputs
and optimal inputs as new information. A learning effect
of the assistant system as well as experience from the first
trial was indicated. In the assist group, the undershoot
during the acute disturbance was inhibited, compared with
the non-assist group.
40

-30 mmHg (3rd trial)
1st

MAP (mmHg)

Table 1: Average of the absolute value between actual BP responses and
targets in each subject (mmHg).

Subjects
No.

Non-assist group

Assist group

1st

2nd

3rd

1st

2nd

3rd

1

3.53

2.99

4.93

3.93

3.65

2.98

2

3.88

2.34

4.02

4.47

2.39

3.38

3

3.06

1.39

2.18

4.62

3.03

1.97

4

4.79

4.09

3.71

2.15

2.69

2.60

5

3.94

3.18

4.33

2.98

2.75

2.43

6

2.32

2.45

3.10

2.06

3.30

2.83

7

2.16

2.42

3.68

5.38

4.34

4.24

3.38
(0.94)

2.70
(0.84)

3.71
(0.88)

3.66
(1.29)

3.17
(0.67)

2.92
(0.73)

Average
(SD)

30

49

20
2nd

10

5. Discussion
3rd

0
-10

Infusion rate
(g/kg/min)

8

2nd
3rd

6
1st

4
2
0
0

120

240

360

480

600

720

Time (s)
Fig. 5 Typical example of BP control in the computer-aided group.

Table 1 shows the average of absolute values between
actual BP responses and targets in each control task.
Especially, the third control trial in the assist group had the
effectiveness of the assistant system: In the change of
absolute values from the second trial to the third, the
unpaired t test showed a significant difference between the
non-assist and assist groups: 1.01 ± 0.77 versus -0.25 ±
0.64 mmHg; p < 0.01 in the one-tailed test. In addition, the
maximum negative responses from the target value in both
groups were assessed. In the change of maximum negative
response between the second and third trials, the unpaired t
test showed a significant difference: -9.11 ± 2.63 versus 5.50 ± 4.13 mmHg in the non-assist and assist groups; p <
0.05 in the one-tailed test.

The computer-aided drug delivery system in this study
made it possible for beginners to work on blood pressure
control. In particular, the effect of the assist system on
unexpected or acute emergency is expected. During a long
constant state, humans regulating drug infusion rates may
take a long time to recognize the emergency and respond
with the correct treatment. Such delayed therapy may
induce serious problems. In contrast, computers can
quickly detect acute response changes and correctly
regulate drug infusion rates, referencing the history of
inputs and responses. Accordingly, an assistant system that
can quickly communicate with the operator will be
required under such emergencies. Furthermore, by
predicting the conditions that humans make mistakes,
presentation of some answers and a warning may become
effective.
On the other hand, drug treatment based on a computer
may induce a hunting phenomenon during acute and great
changes in BP response; however, the system operator has
a possibility of modifying the response changes well. For
example, in the third trial of the assist group (Fig. 5), the
operator was able to sufficiently converge to target values,
avoiding the hunting phenomenon. Furthermore, compared
with automated control (Fig. 3), system operators inhibited
the initial overshoot. Accordingly, effective fusion in
higher cognitive ability in humans as well as the merits of
a computer will produce a better assistant system.
Because of the repeated tasks (first and second trials), the
non-assist group gained sufficient learning about BP
control, based on their experience in the first trial.
Regardless of the unfamiliar assist system and easy

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

instructions immediately before the second trial, the assist
group also had effective results. Accordingly, it is
expected that the suggested system can be used as an
assistant tool for beginners to easily make decisions about
drug therapy.

6. Conclusion
The effectiveness of a computer-aided drug delivery
system based on APC-NN was assessed from the
viewpoint of the cognitive and learning abilities of
beginners. A positive effect of the computer-aided system
was observed in the case of an acute disturbance. In future
studies, the assistant system will need effective fusion of
the ability of quick searching for optimal inputs in
computers with careful and delicate control in humans.
Acknowledgment
This study was funded by a Grant-in-Aid for Young
Scientists (B) from the Ministry of Education, Culture,
Sports, Science and Technology of Japan (KAKENHI,
22700466).

References
[1] T. Suzuki, and T. Konishi, JJSCA, Vol. 29, No. 4, pp. 406406, 2009.
[2] A. M. Fields, K. M. Fields, and J. W. Cannon, “Closed-loop
systems for drug delivery,” Curr Opin Anaesthesiol, Vol. 21,
No. 4, 2008, pp. 446-451.

50

[3] C. T. Chen, W. L. Lin, T. S. Kuo, and C. Y. Wang, “Adaptive
control of arterial blood pressure with a learning controller
based on multilayer neural networks,” IEEE Trans. Biomed.
Eng, Vol. 44, 1997, pp. 601-609.
[4] J. W. Huang, and R. J. Roy, “Multiple-drug hemodynamic
control using fuzzy decision theory,” IEEE Trans. Biomed.
Eng, Vol. 45, 1998, pp. 213-228.
[5] K. Kashihara, T. Kawada, K. Uemura, M. Sugimachi, and K.
Sunagawa, “Adaptive predictive control of arterial blood
pressure based on a neural network during acute hypotension,”
Ann Biomed Eng, Vol. 32, 2004, pp. 1365-1383.
[6] K. Kashihara, “Automatic regulation of hemodynamic
variables in acute heart failure by a multiple adaptive
predictive controller based on neural networks,” Ann Biomed
Eng, Vol. 34, 2006, pp. 1846-1869.
[7] Y. Takahashi, “Adaptive predictive control of nonlinear timevarying system using neural network,” IEEE International
conference on neural networks, Vol. 3, 1993, pp. 1464-1468.
[8] Z. Trajanoski, and P. Wach, “Neural predictive controller for
insulin delivery using the subcutaneous route,” IEEE Trans.
Biomed. Eng, Vol. 45, 1998, pp. 1122-1134.
Koji Kashihara is a researcher at Nagoya University. He
received PhD (Eng.) degree in 2001 from Tokyo Institute of
Technology. He belonged to National Cardiovascular Center
Research Institute, RIKEN, University of Sydney, etc. His
research interests are human brain activities and autonomic
nervous system.
Yoshibumi Nakahara (PhD) is a professor (Dean) of graduate
school of human ecology at Wayo Women's University. He is
also an honorary professor at Tokyo Institute of Technology.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

51

Semantic Interoperability in Electronic Business
Juha Puustjärvi1
1

Aalto University
Espoo, Finland

Abstract
E-business refers to the utilization of information and
communication technologies (ICT) in support of all the activities
of business. The standards developed for e-business help to
facilitate the deployment of e-business. In particular, several
organizations in e-business sector have produced standards and
representation forms using XML. It serves as an interchange
format for exchanging data between communicating applications.
However, XML says nothing about the semantics of the used
tags. XML is merely a standard notation for markup languages,
which provides a means for structuring documents. Therefore the
XML-based e-business software is developed by hard-coding.
Hard-coding is proven to be a valuable and powerful way for
exchanging structured and persistent business documents.
However, if we use hard-coding in the case of non- persistent
documents and non-static environments we will encounter
problems in deploying new document types as it requires a long
lasting standardization process. Replacing existing hard-coded ebusiness systems by open systems that support semantic
interoperability, and which are easily extensible, is the topic of
this article. We first consider XML-based technologies and
standards developed for B2B interoperation. Then, we consider
electronic auctions, which represent a form of e-business. In
particular, we represent how semantic interoperability can be
achieved in electronic auctions.
Keywords: B2B, Open Systems, Electronic Auctions, Semantic
Interoperability, Web Services, Ontologies.

1. Introduction
Electronic business, or shortly e-business, refers to a wide
range of online business activities for products and
services. It is usually associated with buying and selling
over the Internet, or conducting any transaction involving
the transfer of ownership or rights to use goods or services
through a computer-mediated network.
Business-to-business (B2B) is a form of e-business. It
describes commerce transactions between businesses, such
as between a manufacturer and a wholesaler, or between a
wholesaler and a retailer. Other forms of e-business are
business-to-consumer (B2C) and business-to-government
(B2G). The volume of B2B transactions is much higher
than the volume of B2C transactions [1].

Automating interoperation is crucial for B2B. By
interoperation we refer to the creation of coordination
among discrete business activities conducted by different
organizations or different groups within an organization,
so that a unified business process is formed. It can be
implemented at various levels of automation, ranging from
partially to fully automated interoperation. The first B2B
interoperations were partial point-to-point interoperations
and they were not based on any standards. As an example
of a fully automated implementation in the case of
inventory replenishment, a system can automatically order
products from partners, based on current stock levels
going below the reorder point. Also, as we will present,
the interoperation within electronic auctions can be fully
automated.
In B2B all the trading partners must have a shared
understanding about how to work together. In particular
trading partners must have shared understanding of the




exchanged business documents,
business processes, and
messaging mechanism.

To exchange documents trading partners need a common
language through which to exchange documents between
their computer systems. HTML, the first-generation
language of the Internet, is not suited for this task as it
defines only the formatting of information, not its meaning.
Instead XML is rapidly becoming the key standard for
data representation and transportation. In XML [2] the
tags can define the structure of the information, enabling
computer tools to use that information directly. However,
as XML-documents themselves do not capture any
semantics, the introduction of XML-messaging in
exchanging business documents requires hard-coding.
By hard-coding we refer to the software development
practice of embedding the semantics input-messages into
the application program, instead of obtaining the
semantics from external sources. Hard-coding is proven to
be a valuable and powerful way for exchanging structured

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

and persistent business documents. However, if we use
hard-coding in the case of non- persistent documents and
non-static environments we will encounter problems in
deploying new document types and extending the systems
into new domains, e.g., on electronic auctions.
A more flexible way for achieving consensus on
exchanged messages is to develop appropriate domain
ontology [3], and use it as a vocabulary in exchanging
business documents. Essentially the developed ontology
must be shared and consensual terminology among the
communicating parties as it is used for information sharing
and exchange.
Deploying open ontology based interoperable systems for
e-business is a challenging problem. In this article, we
focus on this problem in the context of Service Oriented
Architecture [4]. To begin with, we first characterize the
terms integration and interoperability. Then we consider
open information systems from autonomy, heterogeneity
and dynamicity point of views. After that, we give a short
overview of the state of the art with respect to
interoperation in B2B by considering the major
standardization efforts of e-business. In particular, we give
an overview of EDI, ebXML and RosettaNet. Then we
consider XML and RDF based messaging from semantics’
point of view. In addition, to illustrate semantic
interoperation in e-business, we represent a way for
implementing semantic interoperation in electronic auction
system. After that we shortly discuss the future and
emerging trends of semantic interoperability in e-business.
Finally, we conclude the article by discussing the
advantages and disadvantages of the deployment of
semantic interoperability in B2B.

2. Integration and Interoperability
The problem of integrating and interoperability of
heterogeneous data sources is not new: the rapid
deployment of heterogeneous distributed databases after
the 1980s led to the need to share or merge heterogeneous
local databases [5]. This required solving the structural
and semantic heterogeneity of local databases. Structural
heterogeneity caused by the diversity of the data models of
the integrated local database systems (e.g., relational and
hierarchical data models) as well for the independent
design of local databases (e.g., address can be an attribute
in a schema and an entity set in another schema) [6].
The integration of data sources means that the data sources
are pulled together into one logical data source with a
single global schema [7]. Semantic integration means that
a new ontology is derived from existing ontologies such

52

that the new ontology facilitates the interoperability of the
systems. Nowadays integration is usually not appropriate
because it violates the autonomy of the integrated systems.
Moreover the problems related to the maintainability of
integrated systems make integration undesirable and the
interoperability of autonomous systems more appropriate.
The issues related to interoperability are discussed in
many articles including [8, 9, 10, 11]. Unfortunately in the
literature the terms integration and interoperation is often
used interchangeably. The interoperability of two systems
means that the systems are able to work together by
exchanging information and using the exchanged
information. That is, interoperation refers to making
applications work together by sharing the appropriate
messages but without any single conceptual integration.
As e-business frameworks enable the sharing of
appropriate messages, but do not usually enable
integration, we use the term B2B interoperation though
the term e-business integration is commonly used in the
literature.
We also make the difference between the terms syntactic
interoperability and semantic interoperability. Syntactic
interoperability means that the communicating systems are
able to exchange structured data such as XML documents.
This requires the detection of syntactic errors. In the case
of such errors receiving system usually request the sending
system to resending the incorrect message.
Beyond the requirements of syntactic interoperability
semantic interoperability means that after data were
transmitted from a sender system to a receiver, all
implications made by one party had to hold and be
provable by the other.
There are two thoroughly different approaches for
achieving semantic interoperability: hard-coding and
semantic messaging.


By hard-coding we refer to the software
development practice of embedding the semantics
input-messages into the application program,
instead of obtaining the semantics from external
sources.
Hard-coding requires that the
developers of the communicating applications are
familiar with the used conceptual scheme
(vocabulary) and use that information in
developing the communicating applications.
Hence, hard-coded systems are able to understand
each other as long as they exchange persistent
types of documents as the semantics of the
messages (exchanged documents) cannot be
interpreted by the machines just based on the

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

message and the conceptual schema. However,
hard-coding is proven to be a valuable and
powerful way for exchanging structured and
persistent business documents. In contrast, if we
use hard-coding in the case of non- persistent
documents and non-static environments we will
encounter problems in deploying new document
types and extending the system by new
participants. Therefore it does not satisfy the
goals of open, extensible information systems
that support semantic interoperability


By semantic messaging we refer to the practice of
including the semantics of the exchanged
document in a machine understandable form in
the messages. For semantic interoperability it is
necessary to provide standardized ways to
describe the meanings of the exchanged
documents. Exchanging semantic messages
represents an open, easily maintainable and
extensible way for developing interoperable open
systems.

In this article our analysis of semantic interoperability in
the context of electronic auctions is restricted to semantic
messaging.

3. Open Systems and Web Services
Open information systems have components that cross
organizational boundaries and in this sense are open. This
implies that the components in open systems are
autonomous and heterogeneous. Further the configuration
of the open system can change dynamically. For example,
if a component fails, then the failed component can be
easily replaced by another component.
Fundamentally components´ autonomy means that they
function under their own control, and each component can
locally decide how to proceed in its interaction with others.
The reason for this is that the components reflect the
autonomy of the organization interests that they represent.
In addition, there may be technical reasons for the
autonomy, e.g., as a result of a hardware failure or error in
a software.
In open systems heterogeneity can arise in a variety of
formats, e.g., in networking protocols, in encoding
information, and in used data models. Heterogeneity may
also arise at semantic levels, e.g., the same concept is used
for different meanings, or two different concepts are used
for the same meaning. The reason for heterogeneity is
historical: the components may have arisen out of legacy

53

systems that are initially developed for local uses, but are
eventually expanded to participate in open environments.
Developing open systems is challenging as the system
should cope with the scale of the number of participant
and preserve the autonomy of local heterogeneous systems
while maintaining coordination over these systems.
Web services [12] provide a methodology that supports
open, distributed systems. They are frequently application
programming interfaces (API) or web APIs that can be
accessed over a network, such as the Internet, and
executed on a remote system hosting the requested
services. Technically Web services are self-describing
modular applications that can be published, located and
invoked across the Web. Once a service is deployed, other
applications can invoke the deployed service.
There are two ways of using Web services: the RPCcentric view (Remote Procedure Call–centric) and the
document-centric view [13]. The RPC-centric view treats
services as offering a set of methods to be invoked
remotely while the document–centric view treats Webservices as exchanging documents with one another.
Although in both approaches transmitted messages are
XML-documents, there is a conceptual difference between
these two views.
In the RPC-centric view the application determines what
functionality the service will support, and the documents
are only business documents on which the computation
takes place. Instead the document-centric view considers
documents as the main representation and purpose of the
distributed computing: each component of the
communicating system reads, produces, stores, and
transmits documents. The documents to be processed
determine the functionality of the service. Therefore,
document centric view corresponds better with our goal of
applying services in open environments.

4. E-Business Frameworks
The standards developed for B2B interoperation, which
are also called e-business frameworks, guide the
development B2B implementations by specifying the
details for business processes, exchanged business
documents, and secure messaging.
Even though the interoperation in B2B is nowadays
usually based on Web services, it is useful to make a
classification of the interoperation/integration approaches
[14].

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org



In Information-oriented approaches applications
interoperate through a database or knowledge
base. If the database developed by integrating
existing databases, then this approach represent
B2B integration.



In Process-oriented (also called workflow–
oriented) approach the interoperation is
controlled through a process model that binds
processes and information within many systems.



In Service-oriented interoperation applications
share methods (e.g., through Web service
interface) by providing the infrastructure for such
method sharing.



In Portal-oriented application integration a
multitude of systems can be viewed through a
single user interface, i.e., the interfaces of a
multitude of systems are captured in a portal that
user access by their browsers.

4.1 EDI
Electronic Data Interchange (EDI) [15, 16] refers to the
transmission
of
electronic
documents
between
organizations by electronic means. These documents
generally contain the same information that would
normally be found in a paper document used for the same
organizational function. However, EDI is not confined to
just business data but encompasses all fields including
medicine, transport, engineering and construction.
The first B2B implementations were bilateral private
message-oriented solutions which were not based on any
standard. The need of common B2B standards
strengthened as the amount of private point-to-point
solutions that the companies had to maintain increased.
The development of EDI (Electronic Data Interchange)
standards for B2B began in 1970’s. The first EDI
standards versions (X12) were published in 1983. It is
most commonly used EDI syntax in North America. The
next EDI standard (EDIFACT) originated in 1985. It is
dominant EDI standard outside North America.
In the 1970’s, when the development of the EDI standards
began, messaging information was expensive. Therefore
the EDI syntax is very compact in size, which in turn gives
rise that EDI documents are hard to read and maintain.
However, EDI has advantages over manual business
interactions as it reduce paper consumption, eliminates
data entry errors, and speed up the transfer of business
documents. Newer XML/EDIFACT is an EDI- format

54

that allows EDIFACT message types to be used by XML
systems.
Organizations that send or receive documents between
each other agree on the specific information to be
transmitted and how it should be used. This is done in
human readable specifications (also called Message
Implementation Guidelines). The EDI standards prescribe
the formats, character sets, and data elements used in the
exchanged business documents. The complete Document
List includes all major business documents, e.g., such as
purchase order. The standard says which pieces of
information are mandatory for a particular document,
which pieces are optional and give the rules for the
structure of the document. However, it does not give any
semantics for the documents.

4.2 ebXML
The goal of ebXML is to provide an open XML-based
infrastructure enabling the global use of electronic
business information in an interoperable, secure and
consistent manner by all parties [17]. The objective of
ebXML is to be a global standard for governmental and
commercial organizations of all sizes to find business
partners and interact with them.
The development of the ebXML started at 1999 and it was
sponsored by UN/CEFACT (United Nations centre for
Trade Facilitation and Electronic Business) and OASIS
(Organization for the Advancement of Structured
Information Standards).
The ebXML standard is comprised of a set of
specifications designed to meet the common business
requirements and conditions for e-business [13]. The CC
(Core Components) provides the way business information
is encoded in the exchanged business documents. The
BPSS (Business Process Specification Schema) is an
XML-based specification language that can be used in
defining the collaboration of the communicating business
partners. However, BPSS is quite limited in that it can
only express simple request-response protocols. In
addition, BPSS lacks formal semantics, and thereby it
cannot be ensured that both communicating parties have
the same interpretation of the exchanged documents.
The vocabulary that is used for an ebXML specification
consists of a Process-Specification Document, a
Collaboration Protocol Profile (CPP), and a Collaborative
Partner
Agreement
(CPA).
Process-Specification
Document describes the activities of the parties in an
ebXML interaction. It is expressed in BPSS. CPP
describes the business processes that the organization

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

55

supports. CPA is technical agreement between two or
more partners, and it may have legal bindings. All
specifications are stored in ebXML registry.

applications RDF and OWL, which are the key
technologies in Semantic web, and hence also the key
technologies in implementing semantic interoperability.

4.3 RosettaNet

5.1 XML – Extensible Markup Language

RosettaNet [18] is an industry-driven consortium of
information technology, semiconductor manufacturing,
and telecommunications companies [19].
Mostly
addressed is the supply chain area, but also manufacturing,
product and material data and service processes are in
scope [19].

XML (Extensible Mark-up Language) is a metalanguage
for defining markup languages. By a metalanguage we
refer to a language used to make statements about
statements in another language, which is called the object
language [2]. There are also XML-based query languages
such as XPath, XQuery and XML-DMQL developed for
querying XML documents [20, 21].

RosettaNet develops open e-business process standards,
which are based on XML. It defines message guidelines,
business processes interface and implementation
frameworks for interactions between companies. Its main
standardized components are PIPs (Partner Interface
Processes), directories and the RNIF (RosettaNet
Implementation Framework).
The PIPs are divided into eight clusters noted by numbers.
The clusters are further divided into segments noted by
letters. For example, 3A4 is for Purchase Order and
acknowledgement. Each PIP defines the process of
exchanging messages between two partners. However,
after a message departs a partner´s computer system, it is
not possible to find out whether it was received and
correctly processed by the other partner organization.
RosettaNet only offers a fixed time-out for the
confirmation of each message. In the case that the message
is not confirmed in this time, the original partner resends
the message.
RosettaNet uses UML diagrams to describe PIPs and
relationships among the messages exchanged as part of the
PIPs. However, the meaning of the UML diagrams is
informal, and hence no direct machine interpretation is
possible.
RNIF concerns the messaging. It specifies the business
message that contains the business documents specified in
PIP, and the necessary headers and security features
needed to process the message. RNIF also contains
exception-handling mechanism and makes sure that the
delivery is non-repudiated.

5. XML-Based Technologies and E-Business
Frameworks
We now give a short overview of the key technologies that
are required for implementing semantic interoperability in
B2B. In particular, we give an overview of XML and its

In XML there is no fixed collection of markup tags such
as in HTML. In XML one can define own tags, which is
tailored for the information one wish to present. Hence,
each XML language (i.e., XML application) is targeted at
a particular application domain. However, the languages
use the same basic markup syntax, and they all benefit
from a common set of generic tools for processing XMLdocuments.
As a matter of fact, the name “extensible markup
language” is misleading in the sense that XML is not a
single markup language that can be extended but rather it
is a common notation that markup languages can build on
[21]. XML is merely a standard notation for markup
languages. It serves as an interchange format for
exchanging data between communicating applications.
XML says nothing about the semantics of the used tags.
Hence, by just presenting exchanged documents in XML
does not mean that the applications understand each other.
It just provides a means for structuring documents.

5.2 OWL and RDF
The term ontology originates from philosophy, where it is
used as the name of a subfield of philosophy, namely, the
study of the nature of existence. In such a context it
represents a branch of metaphysics [22].
In the context of information technology ontology tries to
capture the meaning of a particular subject domain that
corresponds to what a human being knows about that
domain [23]. It also tries to characterize that meaning in
terms of concepts and their relationships. Ontology is
typically represented as classes, properties attributes and
values [24]. These elements comprise the vocabulary for
the exchanged messages.
An ontology language is a formal language used to encode
the ontology [3]. There are a number of such languages

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

including OWL (Web Ontology Language) as well as
earlier developed ontology languages such as OIL, DAML
and DAML+OIL [22, 25].
OWL is a language for making ontological statements,
developed as a follow-on from RDF (Resource
Description Framework) [24]. It is intended to be used
over the World Wide Web, and all its elements (classes,
properties and individuals) are defined as RDF resources,
and identified by URIs. However, by generalizing the
concept of a Web resource, it can also be used to represent
information about things that can be identified on the Web,
even when they cannot be directly retrieved on the Web,
e.g., items and their prices that are available from on-line
shops.
RDF is a language for representing information about
resources in the World Wide Web [22]. It is intended for
situations in which this information needs to be processed
by applications, rather than being only displayed to people.
RDF provides a common framework for expressing this
information, and so it can be exchanged between
applications without loss of meaning. The ability to
exchange information between different applications
means that the information represented in RDF may be
made available to applications other than those for which
it was originally created.
RDF defines a language for describing relationships
among resources in terms of named properties and values.
The relationship of XML and RDF is that XML provides a
way to express RDF-statements. In other words, RDF is an
application of XML.
OWL has more facilities for expressing meaning and
semantics than XML and RDF, and thus OWL goes
beyond these languages in its ability to represent machine
interpretable content of the ontology. In particular, it adds
more semantics for describing properties and classes, for
example relations between classes, cardinality of
relationships, and equality of classes and instances of the
ontology.

6. Electronic Auctions
In e-business buyers and sellers should be able to
interoperate inside an architecture that is easy to use and
maintain [26, 27]. Electronic auctions (e-auctions)
represent one approach to achieve this goal by bringing
together business in the web [28, 29, 30].
E-auction is a system for accepting bids from bidders and
computing a set of trades based on the offers according to

56

a well defined policy [31]. Technically, an e-auction is a
software system that resides somewhere in the Internet [32,
33].Such systems can provide several types of business
processes [34] depending upon their target audience.
Online auctions have turned out to be popular and
effective mediums for producing goods and services in
both B2B and B2C. The well known auction houses such
as eBay, Amazon and Priceline conduct many different
types of auctions. The most popular auction types are
English, Dutch, first-price sealed bid and second price
sealed bid.
In an English auction, the auctioneer begins with the
lowest acceptable price and bidders are free to raise their
bids successively until there are no more offers to raise the
bid or until the end of the auction is reached if there is a
time limit . A Dutch auction is the opposite of an English
auction in that the auctioneer starts with an initial high
price, which is then lowered progressively until there is an
offer from a bidder to claim the item.
In sealed auction each bidder (buyer or seller) is given just
one chance to bid, and where he or she does not know the
amount of other bids. In second-price auction bids are
sealed and sent to an auctioneer, and like in sealed auction
the highest bidder wins, but the price the winner pays is
the price that the second highest bidder has bid.
At the moment most e-auction software is targeted only to
B2B procurement. However, there is also a growing
interest on new auction formats such as on combinatorial
auctions and on multi-attribute auctions. In combinatorial
auctions bidders can place offers on sets of items. In
multi-attribute auction price is not the only negotiable
parameter [35, 36].
Further, in classifying auctions, we can make the
distinction between human oriented e-auctions and
automated e-electronic auctions. In human oriented eauctions the auction system communicates with the
humans (buyers and sellers) in carrying out the auction. In
automated e-auctions buyers’ and sellers’ software
modules (auction agents) communicate with the auction
system [37], and auction agents make offers based on the
predefined rules. These rules can be classified into three
classes [38]: rules that control the admission of bids, rules
that control the information revealed by the auction, and
rules that control how the auction computes trades.
By automating e-auctions both buyers and sellers can
benefit in many ways. For example, they can achieve cost
reductions and shorten the duration of the auction
processes [39]. The key point in automating e-auctions is
that both buyers and sellers have shared understanding of

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

the auction process as well the semantics of the exchanged
messages [40]. Shared understanding of the auction
processes can be achieved by modeling the auction by
process models. For example, we can use BPMN
(Business Process Modeling Notation) [41, 42], BPEL [43]
or UML activity diagram [44] for representing the flow of
activities in auctions.
In e-auction processes bidding and announcing the current
state of the auction requires messaging. In early auction
systems, the participant received the state information
either through text-based e-mail or by checking the Web
site of the auction system [33]. However, such solutions
are appropriate only in human oriented electronic auctions.
The automation of e-auctions requires that when the
auction information changes the auction system sends the
information to the auction agents that participate to the
auction. Understanding this information in a consistent
way is crucial because auction agents make their decision
based on this information. This in turn requires the
introduction of auction ontologies.

7. Auction Ontologies
A feature of ontologies is that depending on the generality
level of conceptualization, different types of ontologies are
needed. Each type of ontology has a specific role in
information sharing and exchange. For example, the
purpose of the auction ontology is to describe the concepts
of the domain in which auction take place.
An auction ontology describes the concepts and their
relationships related to a variety of auction types, e.g., on
English auction, combinatorial auction, second-price
auction, sealed auction, and multi-attribute auction. To
illustrate this, a simple auction ontology is graphically
presented in Figure 1. This graphical representation is
simplified in the sense that it does not specify cardinalities
such as whether an offer may concern one or more items.
Neither does it specify the properties of classes such as the
identification of a bidder, the type of an auction, or the
price of an offer.

Auction

participates

has_placed

Bidder

concerns

Offer

Item

Fig. 1. A Simple auction ontology.

By the term auction instance ontology we refer to the
auction ontology supplemented by instances of the
ontology. To illustrate this, a simple auction instance
ontology is presented in Figure 2. It describes an auction
(having ID e254), where B2B-Corpotation has set the

57

offer of $ 85on item p12, and ARGO-Corporation has set
the offer of $87 on the same item.
e254

participates

type

Auction

type

e254

type

B2B‐
Corporation
type

participates

type

Bidder

type

participates

ARGO‐
Corporation

has_placed
type

has_placed

type

has_placed

$85

type

concerns
type

concerns

Offer

type

$87

type

concerns

p12
type

Item

type

p12

Fig. 2. A simple auction instance ontology.

Depending on the auction types the information
concerning the state of the auction process is shared and
exchanged. For example, in a sealed auction only the
auction system (marketplace) knows all the bids while
bidders only know their own bids and the highest bid, and
so B2B-Corporation cannot see the bids of ARGOCorporation, and vice versa. B2B-Corporation’s instance
ontology includes the value of the highest bid but not any
information about its bidder while marketplace’s instance
ontology includes all the information concerning the state
of the auction.

8. Software Architecture
By software architecture we refer to the structure, which
comprises software components, the externally visible
properties of those components, and the relationships
between them [45]. The main goal of the auction software
architecture is to allow the reconsideration and redesign of
auction processes. This goal is important because the
marketplace may be forced to rapidly change the existing
auction processes or to develop new ones to better utilize
the new information technology. In order to facilitate the
changes of the auction processes we can use workflowtechnology [46] in implementing the auction engine,
which coordinates the auction processes.
The auction system has three types of users: buyers, sellers
and the auction system administrator. Figure 3 illustrates
the communication structure between the users and the
system as well as the communication between the
components of the system.
The Ontology managers are implemented by Knowledge
Management Systems which are computer based systems
for managing knowledge (ontologies) in organizations.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

They include a knowledge base, which is a special kind of
database for knowledge management. It provides the
means for the computerized collection, organization, and
retrieval of knowledge for various applications. The
BPEL-engine runs Internet-based workflows. They
deviate from traditional workflows in that their tasks
corresponds the execution of Web services.
Buyer

Buyer

Bidder

Bidder
Auction agent

Ontology
manager

Auction agent

WS‐interface

WS‐interface

Ontology
manager

WS‐interface
Ontology
manager

Auction engine
(BPEL‐engine)

System 
administrator

Marketplace
Seller

Fig. 3. The components of the system.

System administrator is a person (or a role) who maintains
the auction system. In reverse auction (i.e., in procurement)
a buyer is the auction initiator, and in other forms of
auction seller is the auction initiator.
Basically, there are two approaches how companies can
integrate their system with the Auction agent: A company
communicates with the Auction agent through a Web
service interface, or a company integrates its content
management system with the Auction agent. The gain of
the first approach is that it has minimal initial costs but has
high operational cost as it requires duplication of content
management effort. In the second approach the costs are
other way around. However this approach is extremely
fascinating as it allows (through a Web service) the
integration of the ERP-system (Enterprise Resource
Planning system) with the Auction agent. In particular,
this approach nicely matches with the third wave ERPsystems, which are based on the use of Web services.

9. Auction Processes
We model auctions as business processes. A business
process is a series of tasks from one to the next over time
[13]. Depending on the specific business process, its tasks

58

can be some combination of services that correspond to
queries
business
transactions,
applications
and
administrative activities. Further, these services may
themselves be composite, i.e., they may also be
implemented as business processes.
Process description languages [47] have a number of
technical requirements. First, they must be able to model
process, incorporating the correctness of the execution
with respect to the constraint of the real world. Second,
the process must be interfaced to underlying
functionalities. For example, in the case of Web services,
the process must be adapted to the interfaces provided by
the Web services.

9.1 Using BPMN for Specifying Auction Processes
The BPMN (Business Process Modeling Notation) is a
process description language developed for modeling
business process flows and the coordination of Web
services. The primary goal of BPMN is to provide a
standard notation that is readily understandable by all
business stakeholders such as the business analysts, who
create and refine the processes, the technical developers
responsible for implementing the processes, and the
business managers who monitor and manage the processes.
Hence, BPMN is intended to serve as common language to
bridge the communication gap that frequently occurs
between business process design and implementation.
Currently there are several competing standards for
BPMN used by modeling tools and processes. From
presentation point of view BPMN and the UML 2.0
Activity Diagram from the OMG [47] are quite similar.
However, the latter has not adequate graphical
presentation of parallel and interleaved processes, which
are typical in workflow specifications.
The BPMN defines a Business Process Diagram (BPD),
which is based on a flowcharting technique tailored for
creating graphical models of business process operations.
These elements enable the easy development of simple
diagrams that will look familiar to most analysts.
In BPD there are tree Flow Objects: Event, Activity and
Gateway: An Event is represented by a circle and it
represents something that happens during the business
process, and usually has a cause or impact. An Activity is
represented by a rounded corner rectangle and it is a
generic term for a task that is performed in companies.
The types of tasks are Task and Sub-Process. So, activities
can be presented as hierarchical structures. In particular,
we use activities in representing the scope of transactional
constraints. A Gateway is represented by a diamond shape,

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

and it is used for controlling the divergence and
convergence of sequence flow.
In BPD there are also three kind of connecting objects:
Sequence Flow, Message Flow and Association. A
Sequence Flow is represented by a solid line with a solid
arrowhead. A Message Flow is represented by a dashed
line with an open arrowhead and it is used to show the
flow of messages between two separate process
participants. An Association is represented by a dotted line
with a line arrowhead, and it used to associate data and
text with flow objects. We use Association in specifying
the selectivity and the criterion of the isolation constraints.
In addition BPMN allows an easy way to connect
documents and other artifacts to flow objects, and so
narrows the gap between process models and conceptual
models. In particular, this feature allows us to incorporate
the transactional requirements to BPD-diagrams. Also, a
notable gain of BPMN specification is that it can be used
for generating executable WS-BPEL code.
Similar to many process modeling methodologies also
BPMN utilizes the concept of swimlanes as a mechanism
to organize activities into separate visual categories in
order to illustrate different functional capabilities or
responsibilities.
BPMN supports swimlanes with two main constructions.
The two types of BPD swimlane objects are pool and lane.
A pool represents a participant in a process. It also acts as
a graphical container for partitioning a set of activities
from other pools, usually in the context of B2B situations.
A lane is a sub-partition within a pool and will extend the
entire length of the pool, either vertically or horizontally.
In Figure 4, the message exchange between the
marketplace and buyer is presented by two pools. A
sequence flow is represented by s solid line, and it is used
to show the order that activities will be performed in the
auction process. A message flow is represented by a
dashed line and is used to show the flow of messages
between two separate process participants that send and
receive them.

ec
la
tp
ek
r
a
M

r
ey
u
B

59

Sendoffer
request

Receive
offer

Sendbest
offer

Send
offer

Receive
bestoffer

Receive
Initiation
request

Receiveoffer
request

Fig. 4. Using swimlanes for presenting an auction.

9.2 Coordinating Auction Processes
Orchestration is a way of coordinating processes by
combining simple Web services to create complex,
sequence driven tasks. It views processes from the
perspective of one orchestration engine, and so it implies a
centralized control mechanism. The orchestration engine
itself can also be a Web service.
Orchestration involves creating business logic to maintain
conversation between multiple Web services [48, 49]. It
can occur between an application and multiple Web
services, or multiple Web services can be chained into a
workflow, so that they can communicate with one another.
Hence, orchestration as a process specification method
suits well for workflows coordination.
A workflow specification describes business process tasks
and their dependencies, and the requirements these tasks
impose on information system functionality and human
skills [50]. Hence, auction processes may be realized
through workflows. In addition the workflow specification
represented by BPD diagrams can be automatically
translated into executable WS-BPEL code. In the context
of electronic auctions the WS-BPEL code specifies the
order in which participating Web services (Buyers and
Sellers) are invoked. With WS-BPEL we can also specify
conditional behaviors (e.g., whether the offer of B2B
Corporation is higher than the offer of ARGOCorporation).

10. Exchanging Messages
We next illustrate how the ontology managers (located at
each site) are able to unambiguously interpret the elements
of the exchanged messages, and thus maintain their
instance ontologies. First we consider the case where
exchanged messages are XML-coded message, and then
we consider semantic interoperation where exchanged

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

messages are XML-coded RDF-statements, i.e., RDFstatements are presented by XML-documents.

10.1 XML-based Messaging
Although XML-documents are commonly used for
information exchange they do not provide any means of
talking about the semantics of data. Instead, it is up to the
applications that receive the XML-messages to interpret
the nesting of the tags, i.e., the semantics of the messages
is hard-coded in communicating applications.
Even if there is a conceptual schema or ontology [2]
having the same naming (e.g., classes “offer” and “bidder”)
as the tags in the XML-message, it is up to the application
to interpret the nesting of tags. To illustrate this consider
the statement:
“B2B-Corporation has placed offer, which id is OF44 and
value is $ 85, on item p12”.
We can present this sentence by XML e.g., by the
following two nesting ways:
<offer id =”OF44”>
<value> $85 </value>
<bidder> B2B-Corporation </bidder>
<item> p12 </item>
</offer>
<offer >
<id> OF44</id>
<value> $85 </value>
<bidder> B2B-Corporation </bidder>
<item> p12 </item>
</offer>
However, the complex element offer does not provide any
semantics for the tag nesting. Further, we can present id as
an attribute or as an element. That is, there is no standard
way of assigning meaning to tag nesting. Therefore the
semantics of the messages must be specified by binding
the message to an ontology, e.g., to the ontology presented
in Figure 1. Such a binding can be done in RDF.

10.2 RDF-based Messaging
Using semantics in information exchange requires that the
terms in the ontology are globally unique. This
requirement is easily achieved by storing the ontology in
the Web and identify it by its address, i.e., by its URL
(Uniform Resource Locator) [2]. Hence the ontology can
be identified for example by the URL:

60

http://www.it.lut.fi/ontologies/auction_ontology.
Using this URL as the prefix of an XML-element we can
give globally unique names for auction models and their
elements. For convenience, however, it is useful to specify
an abbreviation for the URL, e.g., ao. This can be
specified as follows:
<xmlns:
ao=”http://www.it.lut.fi/ontologies/auction_ontology” >
Now, for example, the element <ao:bidder> is a globally
unique name of a class of the auction ontology. Hence,
for example the previous natural language sentence can be
bind to an ontology and presented in RDF as follows:
<rdf:RDF
xmlns:rdf=
”http://www.w3.org/1999/02/22-rdf-syntax-ns#”
xmlns : xsd=
”http://www.w3.org/2001/XMLSchema#”
xmlns: ao=
“http://www.lut.fi/ontologies/auction_ontology#”>
<rdf:Description rdf:about=”OF44”>
<rdf:type rdf:resource=“&ao;offer”/>
<ao:value rdf:datatype=”xsd;integer”>
85
</ao:value>
<ao:item rdf:resource=”p12”/>
<ao:bidder rdf:resource=”B2B-Corporation”/>
</rdf : Description>
</rdf:RDF>
Now, semantic interoperation can be carried out by
including this RDF description in the body part of a SOAP
message, and by sending the offer to the Web service of
the marketplace.

11. Future Research Directions
Most e-business frameworks suffer from expressiveness
and the lack of semantics. E-business frameworks are
typically limited to simple request-response protocols.
However, many business protocols are quite complex and
long lived. Automating such business processes requires
that complex interactions can be modeled in business
processes. Further, many business processes require that
they are executed in an atomic way. For example, assume
that a business process (composed Web service) is
composed of Flight reservation Web service and Hotel
Web service. In this case the success of the hotel
reservation may be useless if the flight reservation fails.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

The atomicity protocols and transaction models developed
for composing Web services tolerate semantic failures
(also called logical failures) but not system and
communication failures. That is, if a composed Web
service fails as a result of fully booked hotel (a semantic
failure), then neither the flight will be reserved. However,
if the coordinator or the participant of the protocol does
not receive a protocol message as a result of
communication or system failure, then the execution of the
composed Web service will become blocked, i.e., will
not terminate (commit or abort).
A way to coordinate the activities of Web services in an
atomic way is to provide a Web service which function is
to do the coordination. In order to alleviate the
development of such coordinators WS-Coordination [13]
provides a specification that can be utilized in developing
the coordinator. However, such a coordination tolerates
only logical failures (e.g., reservation of a hotel room fails
logically, if the hotel is fully booked), but it does not
tolerates system and communication failures. Recovery
from communication and system failures requires the
deployment of termination protocols, which are activated
when the coordinator or a participant of the commitment
protocols fail to receive an anticipated message.
In addition, with respect to semantics, current Web
services suffer from the lack of formal semantics. The
WSDL (Web Service Definition Language) can only be
used for specifying syntactic interoperability, i.e., it does
not provide any means for machine understandable
description of a Web service. Instead by introducing
semantic Web services machines can understand the
description of the Web services. Semantic Web Services
comprise an ontology layer on the Web services in the
layered semantic Web stack. There are multiple
standardization efforts (e.g., DAML-S, OWL-S, WSMO
and WSDL-S), which aim to define languages for
describing relevant aspects of semantic Web services. It is
assumed that the deployment of semantic Web Services
will reduce the implementations of interoperable B2B
processes from months to some minutes.

12. Conclusions
The sophistication of information technology and
communications is changing our society and economy.
Computers and other electronic devices increasingly
communicate and interact directly with other devices over
the Internet. Businesses have been particularly quick to
recognize the potential and realize the benefits of adopting
new computer-enabled networks. Businesses use networks
even more extensively to conduct and re-engineer

production
processes.

61

processes

and

streamline

procurement

In order to automate B2B trading partners need a common
language through which to exchange documents between
their computer systems. Although XML is rapidly
becoming the key standard for data representation and
transportation XML-documents themselves do not capture
any semantics. Therefore the introduction of XMLmessaging in exchanging business documents requires
hard-coding, which fights against the principles of open
B2B networks. Instead exchanging semantic messages
represents an open, easily maintainable and extensible way
for developing interoperable B2B systems.
In this article, we have considered how to exploit semantic
web technologies in developing open interoperable B2B
systems. A challenging situation for the businesses is also
the introduction of new technologies. The introduction of
the semantic interoperation in B2B is challenging as it
incorporate semantic web technologies into many tasks in
organizations,
including
information
production,
presentation, and processing. The introduction of these
technologies also changes the daily duties of the many
ICT-employees of the organization. Therefore the most
challenging aspect will not be the technology but rather
changing the mind-set of the ICT-employees and the
training of the new technology.
The introduction of a new technology for B2B is also an
investment. The investment includes a variety of costs
including software, hardware and training costs. Training
the staff on new technology is of prime importance as the
incorrect usage and implementation of a new technology,
due to lack of proper training, might turn out to be
expensive in the long run.
The corner stone of our developed solution is the auction
ontology on which the communicating parties have to
commit in their mutual communication, i.e., the used
ontology must be shared and consensual terminology as it
is used for information sharing and exchange. It, however,
does not suppose the introduction of a universal ontology
for B2B. This situation is analogous with natural
languages: a company, or any business organization, may
communicate in French with authorities and in English
with business companies. Just as there is no universal
natural language, so there is no universal ontology.

References
[1] Turban, E., King, D., Viehland, D., and Lee, J. (2006).
Electronic commerce. PrenticeHall.
[2] Harold, E. and Scott Means, W. (2002). XML in a Nutshell.
O’Reilly & Associates.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[3] Gruber, M. and Thomas R. (1993).Toward principles for
the design of ontologies used for knowledge sharing. Padua
workshop on Formal Ontology.
[4] Singh, M.P. (2004). Practical Handbook of Internet
Computing, Chapman Hall & CRC Press.
[5] Ullman, J. and Widom, J. (1998). Principles of Database
Systems. New Jersey: Prentice Hall.
[6] Baeza-Yates, R.and Ribeiro-Neto, B.(1999).Modern
Information Retrieval. New York: Addison Wesley.
[7] Garcia-Molina, H., Ullman, J. and Widom, J. (2000).
Database System Implementation. New Jersey: Prentice
Hall.
[8] Natalya F. N. (2004). Semantic integration: a survey of
ontology-based approaches, ACM SIGMOD Record,
Vol.3, No. 6.
[9] Cruz I. F. and H. Xiao, X. (2005). The Role of Ontologies
in Data Integration , Journal of Engineering Intelligent
Systems 13(4). pp. 245-52.
[10] Mayo, E. and Steinberg, T. (2007).The Power of
Information: an Independent Review. Available at:
http://www.opsi.gov.uk/advice/poi/power-of-informationreview.pdf
[11] Stasinopoulou , T., Bountouri, L., Kakali, C., Lourdi, C.,
Papatheodorou, C.,
Doerr M. and Gergatsoulis, M.
(2007).
Ontology-based metadata integration in the
cultural heritage domain. In: D.H.-L. Goh et al. (eds),
Lecture Notes in Computer Science, ICADL 4822
(Springer, Berlin/ Heidelberg, 2007) 165-75.
[12] Newcomer E. (2002). Understanding Web Services.
Addison-Wesley.
[13] Singh, M.P. and Huhns, M.N. (2005). Service-OrientedComputing, Jon Wiley & Sons.
[14] Lithicum, D. (2004). Next Generation Application
Integration. Boston: Addison-Wesley.
[15] Foxvog, D. and Bussler, C. (2006). Ontologizing EDI
Semantics. ER 2006 Workshop on Ontologising Industrial
Standards (OIS), pp. 301-311.
[16] Iacovou, C. L., Benbasat, I. and Dexter, A. S. (1995).
Electronic Data Interchange and Small Organizations:
Adoption and Impact of Technology. MIS Quarterly, Vol.
19(4), pp. 465-485.
[17] Dogac, A., Tambag, Y., Pembecioglu, P., Pektas, S.,
Laleci, G. B. , Kurt, G., Toprak, S. and Kabak, Y. (2002).
An ebXML infrastructure implementation through UDDI
registries and RosettaNet PIPs. ACM Sigmod International
Conference on Management of Data. pp. 512-523.
[18] RosettaNet consortium, Rosettanet Homepage, URL:
http://www.rosettanet.org/, Accesses 8/12, 2009.
[19] Damodaran, S. (2004). B2B integration over the Internet
with XML: RosettaNet successes and challenges, 13th
International Wold Wide Web conference on Alternatr
track papers & posters. pp. 188-195.
[20] Feng, L. and Dilon T. (2005). An XML-enabled data
mining query language: XML-DMQL. Int. J. Business
Intelligence and Data Mining, Vol. 1, No.1, pp. 22-41.
[21] Moller, A. and Schwartzbach, M. (2006). An Introduction
to XML and Web Technologies. Addison Wesley.
[22] Antoniou, G. and F. Harmelen, F. (2004). A semantic
web primer. The MIT Press.

62

[23] Berners-Lee, T., Hendler, J. and Lassila, O. (2001). The
Semantic Web. Scientific American. Vol. 284(5), pp 34-43.
[24] Davies, J., Fensel, D. and Harmelen, F. (2002). Towards
the semantic web: ontology driven knowledge
management. John Wiley & Sons.
[25] Daconta, M. Obrst, L. and K. Smith K. (2003). The
semantic web. John Wiley & Sons.
[26] Siddiqui, B. (2002). UDDI-based electronic marketplace,
in Web Services Business strategies and architectures’. Ed.
Flechter, P and Waterhouse, M., Expert Press.
[27] Sashi, C. M. and O’Leary B. (2002).The Role of Internet
Auctions in the Expansionof B2B Markets. Industrial
Marketing Management.
[28] Elliot, A. C. (2000). Getting Started in Internet Auctions.
John Wiley & Sons.
[29] Klein, S. and Keefe, R. (1999). The Impact of Web on
Auctions. International Journal of Electronic Commerce,
Vol. 3, No. 3.
[30] Krishna, V. (2002). Auction Theory. Academic Press.
[31] Rothkopf, M. H. and Park S. (2001). An Elementary
Introduction to Auctions’ Interfaces. Interfaces, Vol. 31,
No. 6, pp. 83-97.
[32] Esmahi, L. and Bernand, J. C. (2000). MIAMAP: A
Virtual Marketplace for Intelligent Agents. Proceedings of
the 33rd HICSS.
[33] Wurman, P. (2005). Online Auction Site Management.
http://www.csc.ncsu.edu/faculty/wurman/Papers/Wurmanarticle.pdf.
[34] Grigoria, D., Casatib, F. et al. (2004). Business Process
intelligence. Computers in Industry, Vol. 53, pp. 321-343.
[35] Nisan, N. (2000). Bidding and allocation in combinatorial
auction. In proc of the Second ACM Conference on
Electronic Commerce.
[36] Hoos, H. and Boutlier, C. (2001). Bidding Languages for
Combinatorial Auctions.
Proceedings of the 17th
International Joint Conference on Artificial Intelligence.
[37] Esmahi, L. and Bernand, J. C. (2000). MIAMAP: A
Virtual Marketplace for Intelligent Agents. Proceedings of
the 33rd HICSS.
[38] Wurman, P. Wellman, P. M. and Walsh, W (2005).
Specifying
Rules
for
Electronic
Auctions.
http://www.csc.ncsu.edu/faculty/wurman/Papers/Wurmanarticle.pdf.
[39] Wurman, P. Wellman, P and Walsh, W. (2001). A
parametrization of the auction design space. Games and
Economic Behavior. Vol. 35, No. 1-2.
[40] Puustjärvi, J. (2005). Coordinating electronic auctions by
workflow systems. Proceedings of the IADIS International
Conference WWW/Internet, pp. 139-142.
[41] BPMN (2004) Business Process Modeling Notation
(BPMN), http://www.bpmn.org/.
[42] Smith, H. and Fingar, P. (2003). Business Process
Management (BPM): The Third Wave, Meghan-Kiffer
Press.
[43] BPEL (2002) Business Process Execution Language for
Web
Services,
http://www.ibm.com/developerworks/library/specification/
ws-bpel/.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[44] UML (2007). Introduction to OMG’s Unified Modeling
Language.
http://www.omg.org/gettingstarted/what_is_uml.htm
[45] Chalmeta, R.; Campos, C. and Grangel, L. (2001).
Reference Architectures for Enterprise Integration. Journal
of Systems and Software, Vol. 57(3), pp. 175-191.
[46] Marinescu, D. C. (2002). Internet-Based Workflow
Management, John Wiley & Sons.
[47] Sommerville, I. (2004). Software Engineering. Addison
Wesley.
[48] Cardoso, J. and Sheth, A. (2003). Semantic e-workflow
composition. Journal of Intelligent Information Systems
(JIIS), Vol. 21, No. 3, pp 191-225.
[49] Cardoso, J., Miller J. et al. (2004). Modeling quality of
service for workflows and web service processes. Web
Semantics: Science, Services and Agents on the World
Wide Web Journal, Vol. 1, No. 3, pp. 281-308.
[50] Cardoso, J. Lenic, M. (2006). ‘Web process and workflow
path mining using the Multimethod approach. Int. J.
Business Intelligence and Data Mining, Vol. 1, No.3, pp.
304-328.

Juha Puustjärvi obtained his B.Sc. and M.Sc degree in computer
science in 1985 and 1990, respectively, and his PhD degree in
computer science in 1999, all from the University of Helsinki,
Finland. Since 2003 he has been the professor of information
society technologies at Lappeenranta University of Technology.
Currently he is an adjunct professor of eBussines technologies at
the Aalto University, and an adjunct professor of computer science
at the University of Helsinki. His research interests include
eLearning, eHealth, eBussines, knowledge management, semantic
web and databases.

63

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Study of algorithms to optimize frequency assignment for
autonomous IEEE 802.11 access points
Michael Finsterbusch and Patrick Schmidt
Dept. of Communication and Computer Science, Hochschule für Telekommunikation Leipzig (FH),
University of Applied Sciences (HfTL)
Leipzig, Saxony, Germany

Abstract
This study points to an automatic channel assignment for
unadministrated, chaotic WLANs to take advantage on the given
capacity of the IEEE 802.11 frequency spectrum and to enhance
the quality of the entire WLAN sphere.
This paper determines four public channel assignment algorithms
for IEEE 802.11 networks. We show the problem of channel
assignment in unadministrated WLANs and describe each
algorithms functional principles. We implemented each one and
simulated them on a huge amount of random topologies. The
results show the timing behavior, the used iterations and the error
statistics. Based on these data we determined problems in each
algorithm and found graphs were they failed to find a collision
free solution. We also implemented some improvements and
finally a modified algorithm is presented that shows best results.
Keywords: Wireless LAN, Channel Selection, Heuristic,
Optimization.

gathering information from its environment and choosing
its channel configuration with respect to other APs within
reach. A centralized algorithm collects information about
the whole network topology and the disturbing
environment from all APs in its domain. Then one node in
the domain calculates the best channel assignment for the
whole topology and distributes the results to all APs in its
domain.
This paper is organized as follows. First we shortly
describe the problematic nature of channel use and
channel access in 802.11. Then we describe the aims of
automatic channel assignment. In section four the different
channel assignment algorithms are presented, in section
five the performance of the several algorithms is compared.
We summarize our research findings in section six.

2. Principles of IEEE 802.11 data exchange
1. Introduction
The use of IEEE 802.11 wireless LANs (WLAN) has
been grown rapidly for the last ten years, promoted by
inexpensive IEEE 802.11 capable PDAs, mobile phones,
laptops and WLAN routers. WLAN is used for business
and private networks. In the early days of 802.11 WLANs
were mainly installed and administrated by experts.
Today's WLANs are often operated by end users
regardless of their possible influence on other wireless
networks in immediate vicinity. In urban areas often exist
up to 30 WLANs in a place. Mostly they use factory
default settings with the same channel and maximum
transmit power. That results in a bunch of badly working
wireless networks.
To increase the performance of WLANs in such an
environment, automatic lerning and self organized
algorithms are needed to optimize the channel load and
take action on changing network topologies.
This study deals with two kinds of algorithms, that
we classify into distributed and centralized algorithms. A
distributed algorithm runs on any single Access Point (AP),

The air interface in IEEE 802.11 networks is a shared
medium. Both data- and control-frames and up- and downlink share the same channel, in contrast to other wireless
networks like GSM, EDGE or UMTS. Furthermore the
IEEE 802.11 frequencies are license free, so everyone can
provide its own WLAN network.
The next paragraphs show in short the channel
division and the channel access method.

2.1 Channels in IEEE 802.11
IEEE 802.11 wireless LANs can use two different
frequency ranges in 2.4GHz (IEEE 802.11b/g) and 5GHz
(IEEE 802.11a/h) [1]. The frequency ranges are split into
different channels. Every channel has a bandwidth of
20MHz. Between the center frequencies of neighboring
channels is a frequency gap of 5MHz. Channels 1 to 11 in
the 2.4GHz range may be used in the USA, whereas in
most parts of Europe channels 1 to 13 are available. This
means there are only three non-overlapping channels
within 2.4GHz range. The 5GHz band ranges from

64

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

5.0GHz to 5.725GHz. The first available channel in
Europe is channel 36 (5180MHz), the last is channel 140.
In 5GHz range only channel numbers that are a multiple of
four (e.g. 36, 40, 44) may be used. This means all
available channels in 5GHz band are non-overlapping.
Nevertheless the 2.4GHz range (IEEE 802.11b/g) is used
mostly.

2.2 Access to the wireless network
The access to the wireless interface in IEEE 802.11 is
coordinated by the Carrier Sense Multiple Access with
Collision Avoidance (CSMA/CA) protocol. Any
transceiver must sense for some microseconds (backoff
time) for a free channel. This avoids simultaneous access
to a channel. The backoff time is calculate before a frame
will be sent. The backoff time is a multiple of a time slot
and a random number within the range of 0 to Contention
Window (CW). The contention window ranges from

CWmin  CW  CWmax

(1)

At startup, CW is initialized with CWmin . After
collision CW will be increased by a power of 2, but with
maximum of CWmax :

CW  min(2init  collisions  1, CWmax )

(2)

If a frame was send successfully CW is reset to
CWmin . Default values for CWmin and CWmax are 31
and 1023. A time slot is 9µs or 20µs long, depending on
modulation used [1]. Overall the CSMA/CA algorithm
shares the medium fair between all transmitting stations.
Therefore high channel load, collisions and
interferences decrease the throughput per channel and
increase the latency.

3. Aims of optimized frequency assignment
An optimized frequency assignment improves the
exploitation of the air interface. This decreases the
interference, between neighboring wireless stations,
channel load and collisions. So the overall quality
(throughput, delay and packet loss) of the entire IEEE
802.11 environment will increase. An automatic frequency
assignment has the additional advantage that it can be used
also in non-administrative domains ('chaotic' networks).
Therefore, an optimal channel assignment algorithm
for 802.11 networks will find a channel configuration for
each node and each radio device of each node in such a

65

way that a minimum of radio interference occurs during
communication.

4. Algorithms
4.1 Channel selection in chaotic wireless networks
Matthias Ihmig and Peter Steenkiste have published a
channel selection method [7] discussed in this section.
Their method tends to optimize the channel selection in
chaotic wireless networks. Chaotic wireless networks are a
group of single WLAN Access Points including its clients
(wireless stations), within different administration
domains and without coordination between those. Due to
this scenario this method depends only on locally
measurements and without communication. We will call
this method CHAOTIC afterwards.
The CHAOTIC channel selection procedure is
divided in three modules: monitoring module, evaluation
module and channel switching module.
The monitoring module permanently collects
information about the channel load on a single dedicated
channel. The AP collects data for at least t hold seconds.
Then it switches to the next channel if it is necessary. For
t hold Ihmig et al proposed a 10 seconds interval. To
determine the channel load the so called MAC delay is
used as metric in [7]. During the measurement the channel
load can fluctuate significantly, so they use an
exponentially weighted moving average to smooth the
measured load value:

xk  xk 1  (1   ) xk ,



n
n 1

(3)

For each channel the weighted channel load value is
saved in the load table.
The evaluation module takes the decision of channel
switching. This is done by comparing the current channel
load against a threshold threshcurrent . On startup

threshcurrent is set to minimum threshold threshmin .
Ihmig et al used a value of 50% channel load for
threshmin . In the case the channel load is higher than the
threshold
determined
for
that
channel
( channelcurrent  threshcurrent ), the channel switch is
triggered. The flow chart in figure 1 shows the algorithm
of the evaluation module.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

n

channel

way AP1 detects AP2's and AP3's high channel load (and
maybe of AP0 also, when AP1 and AP0 startup
simultaneously) and switches to channel 1. The updated
threshmin, AP1  threshcurrent is up to two or three times

> thresh

current

current

higher than threshold threshmin, AP 0 of AP0. After that the

y

Select channel with
smallest entry

thresh

y

66

n

all table entries up-to-date?

= second
smallest
entry

thresh

current

CHAOTIC algorithm remains in a deadlock situation. This
is not the optimal channel assignment (figure 2), but AP0
and AP1 will not switch to another channel any more.
Both AP's have an threshold value that will not be
overcalled from channelcurrent . The evaluation algorithm

Select channel with
oldest entry

= thresh

current

min

just loop in the comparison of the current channel load and
the threshold (see figure 3), but it will never break the
loop to switch to another channel.

Trigger Channel Switch

Stay for thold seconds

Fig. 1 Program flow chart of channel selection [7].
n

The channel switching module's job is to switch to
the assigned channel together with all connected wireless
stations.
Rating of the CHAOTIC algorithm
The CHAOTIC algorithm seems easy to implement. The
simulation results in the paper of Matthias Ihmig and Peter
Steenkiste showed that at least 95% of the throughput
compared to hand-optimized can be reached.
However the CHAOTIC algorithm has a
disadvantage that we have pointed out during
implementation and testing. There exist topology scenarios
for that the algorithm fails. Demonstrating that behavior
on a minimal setting (figure 2), assume 4 APs that use the
same channel (channel 0) on
initial state

step 1
2

2

0

0

1

3

1

3

Channel 1
Channel 2

Fig. 2 Example graph on error condition.

startup. AP1 is able to detect all other AP's, whereas AP0,
AP2 and AP3 just detect the load of AP1. We assume all
APs generate equal channel load, that is higher than
threshmin . After startup AP0 scans its environment. Due
to detected to high load, AP0 switches to channel 1 and
sets its threshmin, AP 0 to threshcurrent , AP 0 . In the same

channel

> thresh

current

current

y

Select channel with
smallest entry

thresh

y

all table entries up-to-date?

= second
smallest
entry

n

Select channel with
oldest entry

thresh

current

= thresh

current

min

Trigger Channel Switch

Stay for thold seconds

Fig. 3 Program flow chart of channel selection [7] in error condition - the
algorithm locks in a loop.

Modified CHAOTIC algorithm
We modified the CHAOTIC algorithm to overcome its
disadvantages. The modified CHAOTIC at startup scans
all channels to update the whole load table. So the AP can
choose its best channel. Additionally we add a channel
aging. In case of an outdated current channel and
interferences with other APs, channel switching is forced.
This way reaction to changes in the topology is better and
it breaks possible deadlock constellations.
Our simulation results of the CHAOTIC algorithm
and the modified CHAOTIC algorithm are given in
section 5.

4.2 Channel assignment with a central heuristic
K. Leung and B. Kim published a centralized
heuristic to optimize channel load with a better channel
assignment in [6]. The heuristic uses a greedy step to
speed up the algorithm. Greedy algorithms generate good
results, step by step, by splitting the whole problem in

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

many particular problems to generate a good solution
(local minima/maxima) for the partial problems. But it is
not guaranteed that they produce the optimal solution for
the whole problem. Often greedy algorithms generate
good results in a comparatively short time.
The aim of this heuristic is to minimize the channel
load of the 'bottleneck'. The bottleneck means the AP with
the most neighbor APs using the same channel. By
optimizing the bottleneck, the flow in the whole set is
optimized.
The heuristic algorithm contains of 6 steps [6]:

67

force to find a better channel assignment. This algorithm
scales exponential. So it is not applicable on huge
networks with normal APs that consists usually of low
power embedded devices. The unsuccessful test by Leung
and Kim with the network consist of 111 APs, took about
9 minutes on a SUN Sparc workstation. Therefore it can
not take action to changes in the environment or the
network topology in an adequate time.
But aside from the bad scaling, the central heuristic
fails on a number of network topologies. We determined
during implementation and testing that the algorithms fails
on ring topologies (see figure 4). The main problem is that

1) Generate a random, initial channel assignment.

step 1

initial state
2) Choose the bottleneck (with channel utilization V). If
there are several bottlenecks choose one randomly.
3) Identify bottleneck's assigned channel k. For each
and
available channel n from 1 to N with n  k
neighbor AP j, temporarily modify the channel
assignment by reassigning only AP j with
channel
n. Save the minimum channel utilization W of all
iterations.
4)

V=2, Wmin=2

V=2
0

1

bottleneck

3

2

random (4.b)

step 2

If W  V , then replace V by W – a greedy step.
Continue with step 2.
b) If W  V , then with a pre-defined probability δ
replace, V by W. Continue with step 2.
c) If W  V , a local optimum has been reached.
Continue with step 5.

6) Test if condition (5) for all APs is satisfied for the
final assignment. If so, the final assignment is
feasible. Otherwise, it is considered that no feasible
solution exists for the network under consideration.
This heuristic was used by Leung and Kim [6] to
calculate the channel assignment for two different
networks, one with 21 APs and one with 111 APs. The
optimized channel assignment was known in advance. The
heuristic was not able to produce the optimal channel
assignment for the second network with 111 APs.
Rating of the central heuristic
This heuristic is only useful for offline network design,
because it is too slow or needs to much computing power,
respectively. Steps 3 and 5 of the algorithm use brute-

2

3

a)

5) Repeat steps 1 to 4 with a number of random, initial
assignments. The final solution is chosen to be the
best according to (4), among the local suboptimal
assignments.

1

0

V=2, Wmin=1
0

1

3

2

bottleneck

channel 1
channel 2
.........

Fig. 4 Central heuristic on error condition.

in step 3 of the algorithm, only one neighbor AP will be
changed. Afterwards will be the next bottleneck chosen to
optimize. In the ring topology, all APs have an utilization
Vector V of 2 - the direct neighbors in the ring. The
reduction of utilization Vector V optimize the local
utilization, but the overall utilization vector W stays at 2.
This failure occurs on ring topologies with even-numbered
amount of nodes and with odd-numbered nodes in line
topology.
Furthermore the algorithm has another problem, it
can not handle incoherent topologies.
Our simulation results for the centralized heuristic are
shown in section 5.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

4.3 Distributed heuristic for multi radio mesh
networks
The channel selection algorithm discussed in this
section was published by Bong-Ju Ko et. al. in [2]. It is a
full distributed online greedy algorithm which optimizes
the channel constellation based on local node information.
They developed and tested the algorithm in an
experimental multi radio mesh environment to improve the
overall throughput performance. In our experiments we
used it to optimize the channel constellation in chaotic
networks. For shorter naming we call this algorithm DH in
this paper.
The algorithm is based on two basic facts. At first an
interference cost function f ( a, b) which measures the
spectral overlapping between channels a and b. The
function is defined in such a way that f ( a, b)  0 and

f (a, b)  f (b, a) . If the value goes to 0
( f ( a, b)  0 ) channels a and b don't overlap and a
higher value means they overlap. The algorithm works
with every cost function which reflects these requirements
and in our study we simply use f ( a, b)  0 which
means that different channels don't overlap. The second
basic fact is the interference set S. The interference set S j
of node j is a list of all nodes whose transmissions will
interfered by transmissions of j. A accurate determining of
the interference sets is very complex in real life
environments and therefore we assumed the interference
set contains all neighbors of node j.
The algorithm itself is defined by the following
pseudo code:
procedure ChannelSelection(node i)
Input:

Si :
cj :

interference list of i

ci :

i's current channel

actual channel list for each

begin

F (ci ) :

 f (c , c )
jS i

i

for k:=1 to K do
begin

F (k ) :

j

 f (k , c )
j S i

if

j

F (ci )  F (k ) then

begin

F (ci ) : F (k )
ci : k
end
end

j  Si

68

end

As we could see the algorithm minimizes the sum of
channel interferences in each iteration. At first step the
actual interference sum is calculated. To do this the actual
channel ci is combined with every channel c j and the
each calculated cost f (ci , c j ) is added up to the sum

F (ci ) . In the next step the loop calculates the cost sum
Fk in each iteration and compares it to F (ci ) . If Fk is
smaller than F (ci ) a better channel is found because the
interference costs are decreasing when using this channel.
Rating of the DH algorithm
The algorithm in [2] is very small, very fast and easy to
implement. Because of the very greedy sequence it
converges to a stable solution in only a few steps but also
comes to many incorrect solutions. One example graph
were the algorithm fails to find a collision free solution is
presented in figure5.
initial state

2
0

step1

2

3
1

3

0

1

channel 1
channel 2

Fig. 5 Example graph where DH fails to find optimal solution.

The graph shows four nodes with two available
channels at all. The node numbers show the order in which
each AP runs the DH algorithm. At first node 0 changes it's
channel to 1 because this one is free of interferences. After
that AP 1 does the same thing and causes the locking
situation. Because the nodes 0 and 1 doesn't interfere each
other they will never change their channel anymore and
nodes 2 and 3 can't find the optimal result.
Optimizing of the DH algorithm
To optimize the algorithm we tried to use two different
strategies of changing this behavior. At first we tried to
run the algorithm in a randomized node order and we also
sorted the nodes based on node weight to determine the
right running order, but we couldn't optimize the fault
rates significantly.

4.4 Communication Free Learning algorithm
The Communication Free Learning algorithm (CFL)
was published by D.J. Leith, P. Clifford and D.W.Malone
in [4] and [5]. It is a node coloring instruction which was

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

developed and tested by the authors for automatic channel
configuration of unadministrated AP's. It is very simple
and doesn't need any communication or synchronization
between the AP's. The algorithm's channel selection is
based on vector pi , which contains a selection probability
for each available channel. The algorithm updates pi for

69

0

n

each channel i following this description:

channel 1

1) Initialize p  [1 / c,1 / c,...,1 / c ]

channel 2

2) Toss a weighted coin to select a channel i with a
probability of pi . Sense channel i's quality. If it is
acceptable hop to this channel and goto step 3, if not
goto step 4.

Fig. 6 General graph where CFL doesn't find optimal solution.

cannot choose this channel and we got a lock situation
where the optimal solution cannot be found anymore.
Figure 6 corresponds to figure 5 and is the generalized
graph of this.

3) On successful change to channel i, update pi as
follows:
a) pi  1
b)

5. Comparison of algorithms

pi  0, j  i

4) If no channel change, update pi like this:
a)

pi  (1  b)  pi

b)

pi  (1  b)  pi 

b
, j  i
c 1

5) Go back to step 2.
The parameter b is called Learning Parameter and
influences the speed of channel changes. In our simulation
we always used b  0.1 according to statements in [5].
Leith et. al. used a measurement of MACAcknowledgements to measure the channel quality, we
used a simple binary decision. A channel is always good if
no other neighbor is using the same one.
Rating of CFL-Algorithm
The CFL is also very easy to implement and always
converges to a stable solution. On the other hand it deals
with a lot more iterations than a greedy algorithm e.g. the
one presented in section 4.3. This is because the selection
decision is based on probabilities which are updated in
every step in dependence to b (Learning Parameter).
Another thing we found out is that there are some
general graphs or subgraphs which cannot be handled
correctly by the CFL under special circumstances.
Figure 6 shows one general graph with two available
channels where the CFL fails to calculate a correct
solution. If the edge nodes are using the same channel i the
probability pi is set to pi  1 according to step 3a and
will never change again. The nodes in the middle therefore

To compare the channel assignment algorithms
described in section 4 objectively, we implemented all
algorithms in the C programming language. To determine
accuracy, disadvantages and performance of this
algorithms, we let they compute channel assignments for
various random generated graphs.
To generate the test graphs, we use an algorithm that
use a weighted random metric. In fact this means that at
startup an empty adjacency matrix for n nodes is created.
With a probability of δ the edge between two nodes is set
in the adjacency matrix. That means this nodes can
interfere with each other. Additionally, it prohibits single,
isolated nodes.
The algorithm test is performed in the following way.
At startup of every test run, a random graph is generated.
Overall we tested the algorithms with graphs of 4 to 24
nodes and 100.000 random graphs for every amount of
nodes. The probability of interferences between two nodes
δ was set to 20%. After graph generation, we determined
the minimal needed amount of channels for a interference
free channel assignment with the DSATUR algorithm. The
well known algorithm DSATUR (Degree of Saturation)
was developed and published by Brèlaz in [3].
Then the graph is initialized with a random channel
assignment. If the random channel assignment is already a
collision free (valid) assignment the graph is reinitialized
until the assignment is not valid. With this setting, every
algorithm described in section 4 had to compute the
channel assignment. Then the result was checked for
validity and additionally we saved the runtime and
iterations needed. The minimal needed amount of channels
- calculated with DSATUR algorithm - was the maximal
number of channels to use. The test run was performed on

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

a desktop workstation (Intel® Pentium® 4 CPU 3.00GHz
with 512MB RAM, Linux Kernel 2.6.22).

5.1 Measurement results

70

that of the CHAOTIC algorithm. A particular feature of
this algorithm is that it needs just one or two iterations
(figure 14). This algorithm is relative fast, but it has a very
high error rate (see figure 18).

The figures 7 and 9 shows the time needed by the
CHAOTIC and the modified CHAOTIC algorithm,
respectively. The better timing behavior of the modified
CHAOTIC algorithm is perfectly clear. The modified
CHAOTIC needs also distinctly fewer iterations (figures 8
and 10), as well. But the root square mean execution time
in figure 10 shows that the modified CHAOTIC algorithm
needs also many iterations for some graphs, but overall it
is much faster.

Fig. 9 Runtime of modified CHAOTIC alogrithm.

Fig. 7 Runtime of CHAOTIC algorithm.

Fig. 10 Iterations of modified CHAOTIC algorithm.

Fig. 8 Iterations of CHAOTIC algorithm.

Figure 11 shows the worst, exponential time
consumption of the central heuristic. The reasons for that
was explained in section 4.2. The bad scaling of the
algorithm reflects also in the iteration diagram (figure 12)
and in the comparison of all algorithms in figure 17.
Figure 13 shows the timing behavior of the
distributed heuristic algorithm. It is approximately equal to

Fig. 11 Runtime of central heuristic algorithm.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

71

Figure 15 shows the timing behavior of CFL
algorithm. We see, the time consumption increases rapidly.
It needs already a half second average to calculate a
channel assignment for 24 nodes. Test runs with invalid
results were not counted.

Fig. 12 Iterations of central heuristic algorithm.

Fig. 15 Runtime of CFL algorithm.

Figure 16 shows the iterations needed to compute a
valid channel assignment.

Fig. 13 Runtime of distributed heuristic algorithm.

Fig. 16 Iterations of CFL algorithm.

Fig. 14 Iterations of distributed heuristic algorithm.

Figure 17 summarizes our findings of the time
consumption for all algorithms, including DSATUR. It
shows that CFL and central heuristic scale badly for
networks with more nodes. The modified CHAOTIC
scales at best of all determined algorithms. But DSATUR
seems to be the fastest algorithm in our simulation. But the
DSATUR algorithm has an exponential scale as a last
resort and also needs the complete topology for calculation
(centralized).
Figure 18 shows the amount of invalid channel
assignments for the entire algorithms. Only the modified
CHAOTIC is free of errors. All other algorithms can not

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

be used in real world applications because of their high
error rate.

72

all used radio interfaces. We could use our simulation
results to choose the right algorithm for channel
configuration of the backbone's ingress access points.

References

Fig. 17 Runtime comparison of all algorithms.

[1] IEEE Standard for Information technology –
Telecommunications and information exchange between
systems – Local and metropolitan area networks – Specific
requirements — Part 11: Wireless LAN Medium Access
Control (MAC) and Physical Layer (PHY) Specifications.
IEEE Std 802.11TM-2007.
[2] B.J.Ko, V.Misra, J.Padhye, and D.Rubenstein. Distributed
channel assignment in multi-radio 802.11 mesh networks.
Columbia University, Technical Report, 2005.
[3] Brèlaz. New methods to color the vertices of a graph.
Communications of the Assoc. of Comput. Machinery 22,
1979.
[4] D.J.Leith and P.Clifford. Channel dependent interference and
decentralized colouring. Proc. International Conference on
Network Control and Optimization, Avignon, 2007.
[5] D.J.Leith, P.Clifford, and D.W.Malone. Wlan channel
selection without communication. Proc. IEEE Dyspan, 2007.
[6] K. Leung and B. Kim. Frequency assignment for ieee 802.11
wireless networks. Proc. 58th IEEE Vehicular Technology
Conference, 2003.
[7] M.Ihmig and P.Steenkiste. Distributed dynamic channel
selection in chaotic wireless networks. 13th European
Wireless Conference, Paris, 2007.

Patrick Schmidt studied computer science in Leipzig at Telekom
University of Applied Sciences (HfTL) and received his Diploma in
2006 for inventing a secure and mobile architecture for mobile
vehicles. His Master of Engineering at Telekom University of
Applied Sciences in Leipzig in 2009 was on research for WLAN
backbone optimization. His current projects cover WLAN and
WLAN backbone optimization, network traffic management, deep
packet inspection and high availability.
Fig. 18 Comparison of invalid assignments.

6. Conclusion
In this paper we compared four different algorithms
for channel assignment in IEEE 802.11 networks. These
algorithms are from different publications and are using
different strategies to solve the problem. We implemented
them in C programming language and simulated all
algorithms on a huge amount of random graphs. We
determined weaknesses/problems in every single one and
could therefore not recommend to use one of these in real
world networks with a higher amount of nodes.
The best results achieved the modified CHAOTIC
algorithm. For practical usage this one would be the best
when regarding its performance and robustness.
Or future goal is to develop a WLAN backbone
architecture with a self organizing channel assignment for

Michael Finsterbusch studied computer science in Leipzig at
Telekom University of Applied Sciences (HfTL) and received his
Diploma in 2006 for implementing a Diameter server and client to
gain a AAA-infrastructure for a secure and mobile architecture for
mobile vehicles. His Master of Engineering at Telekom University
of Applied Sciences in Leipzig in 2009 was on research for WLAN
mobility. His current projects cover WLAN optimization, WLAN
mobility, network traffic management, deep packet inspection and
high availability.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

73

A Knowledge-Based Multi-Agent Approach for Initial
Query Refinement in Information Retrieval
Tatyana Ivanova1, Ivan Momtchev2
1

College of Energy and Electronics, Technical University – Sofia,
Botevgrad, 2140, Bulgaria
2

Technical University -Sofia,
Blvd. Kl. Ohridski 8, Sofia 1000, Bulgaria

Abstract
Query refinement is one of the main approaches for overcoming
natural language lexical ambiguity and improving the quality of
search results in Information Retrieval. In this paper we propose
a knowledge–rich personalized approach for iterative query reformulation before sending it to search engines and entropybased approach for refinement quality estimation. The underling
hypothesis is that the query reformulation entropy is a valuable
characteristic of the refinement quality. We use multi-agent architecture to implement our approach. Experimental results confirm that there is a trend for significant improvement in the quality of search results for large values of entropy.
Keywords: semantic search, multi-agent system, query refinement, query refinement entropy

based methods for query disambiguation are essential for
obtaining high-quality-results. Query refinement is a complicated tack, performed in dynamic Web environment and
closely depending from unpredictable changing user interests. That is why we believe, that multi-agent architecture
is the best one for personalized query refinement.

2. State Of The Art
There are two main research areas, closely related to query
disambiguation: Query Refinement (QR, or Query Expansion, QE) and Word Sense Disambiguation (WSD).

2.1. Query Refinement Research

1. Introduction
In general, the quality of returned from search engine results heavily depends on the quality of the sending query.
Because of natural language ambiguity (such as polysemy
and synonymy) it is very difficult to formulate unambiguous query even for experts in the search domain. That is
why techniques to assist the user in perspicuous formulating a search query are needed for improving the performance of the search engines.
Query refinement is a well-known method for improving
precision and recall in information retrieval. Query improvement may be made before it is sent to the search engines, or after returning the first results. In the first case
the active user involvement and knowledge rich resources
are needed. Therefore, this approach is the most effective
only for expert users. For non-expert user automatic query
expansion, based on statistical analysis of returned results
is more successful. In all cases, the quality of the initial
query is crucial for obtaining relevant results, since the
query reformulation (automatic or iterative) everything is
made on the basis of these results. Therefore, knowledge-

Query Refinement (or expansion) is a process of supplementing a query with additional terms (or general reformulation in some cases), as the initial user query usually is
incomplete or inadequate representation of the user’s information needs. Query expansion techniques can be classified in two categories (Fig. 1): those based on the retrieved results and those that are based on knowledge. The
former group of techniques depends on the search process,
uses user relevance feedback in an earlier iteration of
search and statistical algorithms (as Local Context Analysis (LCA), Global Analysis [20], and Relevance Feedback
techniques) to identify the query expansion terms. Query
reformulation is made after initial query sending on the
base of the all returned results or using only the first N results automatically (as shown on Fig.2, road (3)) or by little user participation (Relevance feedback, road (4) on the
Fig.2). Only the first few of the most frequently used in returned documents terms are used in query refinement
process.
Global analysis techniques for query expansion usually select the most frequently used terms in all returned documents. They are based on the association hypothesis,

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

which states that specific domain terms tend to co-occur in
the documents of that domain. Term Clustering, Dimensionality Reduction (LSI, SVD) and Phrasefinder [21]
techniques are used for specific term extraction and categorization. While global techniques rely on analysis of a
whole collection to discover word relationships, local
techniques emphasize analysis of the top-ranked documents retrieved for a query.
Query expansion
approaches

Interactive

Refinements, based on
retrieved results

Knowledgebased refine-

Thesaurus
based

Ontology
based

RDFbased

Combined

Automatic

Phrase
finder

Local approaches

Global approaches

Dimensionality
Term
reduction
Clustering

Feedback Ranking
based
based

Relevance
feedback

Figure 1: Classification of Query expansion approaches

Local
LCA
feedback

RTQ

Local analysis techniques use local selection strategy
Thesaurus

Query
reformulation

Initial
query

Profile
ontology

(2)

(1)

Topic
Query
reformula(4) tion
Ranked
documents

Domain
ontology

(4)

Query
reformulation

(3)

Search engine indexes

(3)

Figure 2: Query refinement paradigms

(usually relation-based) from some group of returned documents. They have shown to be more effective than global
techniques when initial query is clear and unambiguous,
but they are not robust and can seriously hurt retrieval
when few of the retrieved documents are relevant [22].
Experiments on a number of collections, both English and
non-English, show that local context analysis offers more
effective and consistent retrieval results than global term
extraction and categorization techniques [21]. Feedback

74

based approaches use marked from the user as relevant
documents for additional term extraction. Relevance feedback [5], [3] is used to refine a query using knowledge of
whether documents retrieved by this query are relevant.
The Knowledge-based query refinement approaches [13],
[10] are independent of the search process and additional
query terms are derived from thesauruses [6], [7] gazetteers, domain ontologies [18], [9], [19], [17] user profile
ontologies or other knowledge resources. They use linguistic methods to analyze initial query and provide many
possible query expansion terms and rely on the user to select the appropriate ones.
These approaches are usually domain-dependent [18], [6],
[9], and are applicable only in domains where the knowledge can be machine-processed. They are applicable in all
search stages, but are very useful for initial query refinement, as retrieved document approaches are not applicable
in this stage.

2.2. Word Sense Disambiguation
Most Internet searchers tend to use only one or two words
in a query [4]. These queries (and often not only they) are
unclear and ambiguous. For example the average number
of different meanings of common nouns in WordNet is
about 7-8. On the other hand, search results are only as
good as the posed queries and usually even minimal
change in the query leads to significant changes in the results. That is why techniques for word sense disambiguation are of great importance for web search tack.
Word Sense Disambiguation (WSD) is defined as the
problem of computationally determining which “sense” of
a word is activated by the use of the word in a particular
context. The main source of information for the specified
word meaning is the context. In general, word sense disambiguation involves the association of a given word in a
text with a definition or meaning (sense). The task involves two steps: (1) the determination of all the different
senses for the word; and (2) a means to assign each occurrence of a word to the appropriate sense.
There are two main WSD approaches: knowledge-based
and corpus-based. Knowledge-based approaches rely primarily on dictionaries, thesauri, lexical knowledge bases,
ontologies, without using any textual corpus. They use the
definitions from dictionaries, tesauruses, calculate semantic similarity measures using relations from tezauruses or
ontologies, or mutual disambiguation algorithms (such as
the Lesk method). Corpus-based methods are classification
or clustering methods, using tagged or untagged textual
corpus and mashine-learning algorithms. These methods
are not applicable for initial query disambiguation because
of the very little or missing context information in the queries.

75

Table 1: differences in the results for similar queries - yahoo and hakia

1) abscissa
2) abscissa +axis
average

Identical returned results (%)

1) tiger
2) tiger +wood
1) snake
2) snakes
1)negative+integer
2) negative+integer
+number
1) dog
2) dog +animal

Identical returned results

1) trigonometry
2) trigonometry +
mathematics

All returned results

1) insect
2) insects
1) pelican
2) pelican +bird

Identical returned results (%)

queries

Identical returned results

Search
engines

hakia

All returned results

yahoo

1000

88

8,8 %

100

11

11,0 %

1000

31

3,1 %

100

2

2,0 %

1000 233 23,3 % 102

13

12,7 %

998

161

0

0,0 %

996

135 13,6 % 142

52

36,6 %

988

372 37,7%

100

19

19,0 %

995

24

100

3

3,0 %

994

268 27,0 % 100

9

9,0 %

2

0,2 %

2,4 %

14,5 %

11,7 %

Table 2: differences in the results for similar queries - clusty and ask

clusty

ask

Identical returned results (%)

200

83

41,5% 198

34 17,2%

176

11

6,3%

196

12

6,1%

1) trigonometry
2) trigonometry +
mathematics

196

39

19,9% 224

10

4,5%

1) tiger
2) tiger +wood

200

6

3,0%

4

2,1%

175

84

48,0% 216

30 13,9%

179

73

40,8% 200

63 31,5%

198

6

3,0%

0

179

37

20,7% 199

1) snake
2) snakes
1)negative+integer
2) negtive+integer
+number
1) dog
2) dog +animal
1) abscissa
2) abscissa +axis
average

22,9%

195

198

Identical returned results

1) insect
2) insects
1) pelican
2) pelican +bird

queries

All returned results

Identical returned results

Our experience in Web searching shows that little semantic changes in the query lead to major changes in the returned results. We will call this query property “query volatility”. We have made a lot of experiments, sending
groups of two semantically very close queries to four
search engines: yahoo, hakia, clusty and ask and counting
the number of the URLs, returned from the two queries in
every group. Some of the results are shown in table 1 for

Search
engines

All returned results

3. Our Approach for Interactive Query
Refinement

Identical returned results (%)

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

0,0%

28 14,1%
11,2%

yahoo and hakia, and in table 2 for clusty and ask.
For example, on the first row in the table 1, number of all
results, results, whose URLs are returned from both queries “insect” and “insects” from yahoo, hakia, clusty, ask
and their percentage are shown.
The results shows that even when queries are nearly semantically and syntactically the same (as “insect” and “insects” for example) there is significant difference in returned URSs. Because of the query volatility sending as
accurate as possible queries is of great importance not only
for obtaining good results but for the successful implementation of all query refinement methods, based on the returned results. That is why methods to assist the searcher
in query formulation are of great importance for effective
search. We propose an approach for interactive query refinement before sending it to search engines.
The conceptual schema of our approach is shown on Fig.3.
The approach is knowledge-based and interactive. It heavily relies on the availability of sufficient appropriate
sources of knowledge and active participation of the
searcher. The process of the initial query refinement is

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

performed in three stages: (1) Query analysis; (2) Generating query suggestions; (3) Formulating and sending the refined query.
(1). Query analysis. The main aim in this stage is finding
the meaning of the query. The system performs syntactic
and lexical analysis as searcher type, the query using
WordNet. If this analysis fails (WordNet doesn’t contain
proper nouns, compound domain terms), another knowledge resources as gazetteers, domain ontology or specialized annotated corpus may be used. Many of them may be
downloaded from internet (manually or automatically, using “Search web resources module” (Fig. 3).

Corpus

Initial
query

Gazetteers

Linguistic
query
analysis
Query interpretations

Top
ic
Refined
query

Thesaurus
Domain
ontology
Profile
ontology

Search web
resources
module

Profile
generation
module

Search
engines

Ranked
documents
Figure 3. The conceptual schema of the proposed initial
query refinement

Search queries usually contain rather keywords than
grammatically correct text. This makes linguistic query
analysis more difficult and ambiguous than natural language text analysis. For example, when user type only one
word, it is often impossible to determine if it is noun or
verb, and which among the many possible meanings is in
the searcher's account. Using two or more words in the
query user rare define clear context and usually the query
remains ambiguous. Therefore, even excellent linguistic
analysis seldom could find the meaning of the query. That
is why a lot of possible query interpretations may be generated as a result of the query analysis.
(2). Generating query suggestions. This stage involves selecting some most appropriate among the possible interpretations and proposing them to the user. The main problem in this stage is making appropriate evaluation of every
possible interpretation to restrict the number of proposed
interpretations when they are too many. Word sense disambiguation (WSD) techniques are used for restricting
possible interpretations. The use of context-based WSD
methods is very limited because of missing or incomplete
word context in search queries. Reasoning, based on do-

76

main ontology, profile ontology (if corresponding system
is personalized) or WordNet hierarchy is very useful in
this stage.
(3). Formulating and sending the refined query. In this
stage the searcher selects an appropriate query reformulation, or formulates the new query if suggestions are inadequate. This is an interactive phase in which the user gives
meaning of the suggestions and takes full responsibility for
the final query formulation. All the suggestions help him
in sending appropriate query, expressing its goals.
The proposed approach helps the user to express more
clearly the meaning of the query. The question always
arises if adding words, specifying the meaning always
came to improving the quality of results. Our experiments
have shown that this was not always so. In the next section
we propose an approach for estimating the quality of the
query refinement, independent of semantics and the subject area of the query.

4. Entropy-Based Approach for Refinement
Quality Estimation
Formulating his query, the searcher has in mind a clearly
defined semantic. In practice, it appears that the search engines found many semantics, which could lie behind the
particular query and returned results are relevant to these
semantics. This leads to many irrelevant (for the searcher
intense) results, which decreases the precision. It indirectly
reduces the actual recall, since some possibly relevant results are shifting from those related to other semantics (and
irrelevant in this case). Query refinement leads to narrowing the scope of the search, and thus reducing the total
number of hits. Our hypothesis is that there is clear dependence between search engine hits change and quality of
semantic query refinement. We assume that the rate of the
hits change in the process of query reformulation is the
valuable measure for the refinement quality.
Definition: Query refinement entropy (or shortly entropy)
is called the quotient of the refined query hits and initial
query hits.
Our hypothesis is that the greater is the query refinement
entropy, the more significant is the improvement in the
quality of the returned results.
Query enrichment should be flexible and able to cope with
query ambiguity and react adequately to user information.
That is why we propose a multi-agent architecture for implementation of our approach and testing our hypothesis
(Fig.4).

77

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Q

Query
linguistic
analysis agent

User interface

WordNet

Search
engine

Coordination
agent

Ontologybased enrichment agent
Thesaurusbased enrichment agent
Corpus-based
enrichment
agent
Hits
agent

Domain
ontologies
Thesauruses
Profile
ontology

Profile
information
agent

Figure 5 – sequence diagram of QR when some
ven’t been found in WordNet

keywords ha-

Figure 4 – the multi-agent architecture for query enrichment

The Query Linguistic Analysis Agent (QLAA) analyzes the
sending by the User Interface (UI) query, using WordNet,
and sends proposed initial query refinement variants to
Coordination Agent (CA). CA then proposes various strategies for further query refinement, depending from initial
QR proposals, system resources and user profile. It sends
request to Hits Agent (HA) for delivery hits of existing variants, and asks Ontology-Based Enrichment Agent
(OBEA), Thesaurus-Based Enrichment Agent (TBEA) and
Corpus-Based Enrichment Agent (CBEA) about additional
query refinement proposals. They send his proposals back
to coordination agent that asks Hits agent for needed from
search engine hits, and evaluation of query refinement (using refinement entropy) is returned results to the Coordination agent. Coordination agent returns estimated proposals
(and its estimations) to the user for choosing the best one.
This will help the searcher in clear and unambiguous expression of it information needs. This is only a general
ideology of the MAS functionalities. In each real situation
the system functioning is determined by the specifics of
the query, entered by the user, and can be shown explicitly
by using interagent communication diagrams. On the diagram on Fig.5 the query refinement process in case when
some of query keywords haven’t been found in WordNet
is shown; On the diagram on fig.6 the query refinement
process by using only WordNet is shown. This may be the
whole QR, or the first it phase, when user specify that proposed refinement isn’t correct enrichment of his query. In
this case, the second QR phase is shown on Fig.7. On Fig.
8 the sequence diagram of QR without using textual corpus is shown, and on Fig 8 – QR when initial information
about query domain, represented by ontology is available.
In our subsequent experiments we use mathematical, biological and computer science domain ontologies and don’t
include thesauruses. Our queries are concept – oriented
and implemented in coordination agent strategies are static. This is because of our first aim is to estimate the

Q

Figure 6 – sequence diagram of QR by using WordNet only

Q

Figure 7 - second QR phase after incorrect enrichment, using
WordNet

Q

Figure 8 – QR without using textual corpus

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Q

Figure 9 - QR by using WordNet and domain ontology

Q

Figure 10 - QR using only domain ontology

valuability of the proposed entropy-based measure. The
full capabilities of the proposed multiagent system are object of future research.

5. Experimental Results
To verify experimentally our hypothesis we have selected
190 search queries, having entropy between 1 and 40400.
A key objective in query selection was to provide many
different values of entropy, to investigate the relationship
between the magnitude of the entropy and returned result’s
quality. We have manually evaluated relevance of the first
70 results of each sent query and its semantically refined
ones by opening and reviewing each of them, received by
the original and it semantically refined query. The evaluation is based on adopted common five-level relevance criteria: 4 points for every high-quality result (including high
quality relevant to the topic information, represented in a
perfect form, including needed hyperlinks to related top-

78

ics), 3 points for these, lacked some visual representation
or links, 2 points for uncompleted information, 1 point for
short description of only one of several meanings of the
concept, or partially erroneous information, and 0 points
for fully irrelevant results. For example, when we send
query “tiger”, searching information about an animal, we
assign:
 4 points to wikipedia’s comprehensive hyperlinked and illustrative material
http://en.wikipedia.org/wiki/Tiger;
 3 points to http://www.knowledgerush.com/kr/
encyclopedia/Tiger/;
 2 points to http://www.bbc.co.uk/nature/ species/Tiger;
 1 point to http://wordnetweb.princeton.edu/
perl/webwn?s=tiger;
 0 points to: http://www.apple.com/macosx/;
http://www.bbc.co.uk/nature/species/Tiger;
http://sports.yahoo.com/golf/pga/players/147,
http://www.jobtiger.bg/, as fully irrelevant to the animal’s topic.
We group the results according to the entropy value in five
groups (for achieving clear visual representation): first
group with entropy between 1 and 3 (first two diagrams on
Fig. 11 and Fig. 12), second group having entropy, greater
than 3 and non greater than 8 (second two diagrams on
Fig. 11 and Fig. 12 ), third group having entropy, greater
than 8 and non greater than 20 (third two diagrams on Fig.
11), forth group, having entropy, greater than 20 and non
greater than 100 (forth two diagrams on Fig. 11 and Fig.
12 ), and the last group, having entropy, greater than 100
(the last two diagrams on Fig. 11 and Fig. 12).We call the
sum of the points of the first 70 received results of the initial and refined query five-level-precision and show it values on the left group of charts. On the right group of
charts we show the dependency between entropy and fivelevel-precision rates of change, as well as polynomial or
logarithmic approximation of this dependency. We think
five-level-precision is a good results evaluation measure,
because usually relevant results are of varying quality and
no one of frequently used result’s relevance measures
(precision, recall, f-measure and so on) takes note of this
fact

79

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
180

40

Poly. (precision changing rate)

30
20
10
0
-10

initial query
refined query

precision changing rate

1

1,5

2

2,5

160

five-level precision ….

precision changing rate(%)…

50

140
120
100
80
60

3

entropy
40

entropy

-20

1

1,5

2

2,5

initial query

120

precision changing rate
Log. (precision changing rate)

130

3

refined query

100

80
30
-20 3

3,5

4

4,5

5

5,5

6

6,5

7

-70

7,5
8
entropy

five-level precision
.

precision changing rate (%)…

180

80
60
40
20

entropy

0
3

600

precision changing rate
Log. (precision changing rate)

500

five-level precision ….

precision changing rate (%),,,

-120

400
300
200
100

entropy

0
8

9

10

11

12

13

14

15

16

17

18

19

20

3,5

4

4,5

5

5,5

200
180
160
140
120
100
80
60
40
20
0

6

6,5

initial query

8

9

10

11

12

13

14

15

16

L o g . (p rec is io n  c h an g in g  rate)

1200
1000
800
600
400

five-level precision…...

precision changing rate (%). .

p rec is io n  c h an g in g  rate

1400

refined query

17

18 19 20
ентропия

120
100
80
60
40

entropy

20

entropy

0

0
20

40

60

80

20

100

30

40

1400
1200

precision changing rate
Log. (precision changing rate)

1000
800

five-level precision …..

180

1600

50

60

70

80

90

100

initial query
refined query

200

1800
precision changing rate (%)….

8

140

1600

200

7,5

initial query
refined query

160

1800

7

160
140
120
100
80
60
40
20
0

600
100

entropy

1000

10000

100000

Figure 11. Graphical representation of experimentally evaluated
dependency between precision and entropy

100

entropy

1000

10000

100000

Figure 12. Graphical representation of experimentally evaluated
dependency between precision and entropy

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

80

6. Conclusion

References

In this paper we propose a knowledge–rich approach for
interactive query disambiguation before sending it to
search engines and entropy-based approach for refinement
quality estimation. Our studies are aimed at exploratory
search of textual web resources. The literature review has
shown that a large variety of knowledge-based sources and
methods may be used to help the user in the web query
sense disambiguation. To achieve the best results combined use of many of them is needed. We propose a multiagent architecture for flexible dynamic combination of
various query analyzing and disambiguation methods and
algorithms. Having in mind the prevailing web search engine’s syntactic keyword-based searching and indexing
approaches, our main goal was to find the answer of the
question whether (always) the semantic query refinement
leads to better search results. For our experiments we implement above approaches, using Jade-based Multi-agent
system. The experimental results have shown that semantic query refinement not always leads to results improvement. When the entropy is not larger than 3, returned from
the refined query relevant results in the group of first 70
usually are more, but some of the very good ones (returned
by the initial query) are no longer among the first 70 and
as a result the overall quality of the results in many cases
is not better. With the increase of entropy the expectations
for better results are greater, but even for large values of
entropy there are isolated cases of worsening quality of results. There is a trend for significant improvement in the
quality of search results for large values of entropy.
Despite the clear tendency to increase the quality of results
as a result of the increasing entropy, there is a large deviation from this trend in both directions. This means that in
case when entropies are slightly different each-other, in
some cases query disambiguation leads to much better results than other ones. Our future research will be directed
to search other dependencies (apart from the values of entropy) between the query refinement and the quality of returned results and experiment various strategies for query
disambiguation, using various knowledge-based resources.
As experiments show, query entropy is a valuable measure
for query-refinement quality and it should be used for calculating of expected refinement effect of various manually
or automatically added disambiguation words. Complexity
and indeterminism of query disambiguation methods, as
well as unpredictability and dynamism of web environment and user needs make appropriate use of multiagent
architecture for implementing query-refinement tack. The
query entropy is one of the valuable criteria for choosing
of appropriate query refinement interactively from the user
or automatically from Query enrichment evaluation agent.
Practical realization of query refinement heavily depends
from coordination agent’s strategies. These strategies are
important field of future research.

[1] E. Agirre, et al., “Semeval-2007 Task 02: Evaluating Word
Sense Induction and Discrimination Systems”, 2007,
http://acl.ldc.upenn.edu/W/W07/W07-2002.pdf
[2] E. Agirre, P. Edmonds, “Word Sense Disambiguation: Algorithms and Applications”, 2007
[3] N.J. Belkin, et al., “Relevance Feedback versus Local Context Analysis as Term Suggestion Devices”, Rutgers’
TREC−8 Interactive Track, 2000
[4] M. K. Bergman, “Guide to Effective Searching of the Internet”, tutorial, 2005
[5] B. Billerbeck, and J. Zobel, “Techniques for Efficient Query
Expansion”,
2004,
http://citeseerx.ist.psu.edu/viewdoc/
download?doi=10.1.1.63.8466&rep=rep1&type=pdf
[6] D. Buscaldi, et al., “A WordNet-based Query Expansion method for Geographical Information Retrieval”, 2005,
http://clef-campaign.org/2005/working_notes/workingnotes
2005/buscaldi05.pdf.
[7] P.A. Chirita, et al., “ Personalized Query Expansion for the
Web”, in proceedings of the 30th annual international ACM
SIGIR conference on Research and development in information retrieval, 2007
[8] H. Dang, “The Role of Semantic Roles in Disambiguating
Verb Senses”, 2005, http://acl.ldc.upenn.edu/P/p05/P051006.pdf
[9] F. Gaihua, et al., “Ontology-based Spatial Query Expansion
in
Information
Retrieval”,
2006,
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.61.
940&rep=rep1&type=pdf
[10] F.A. Grootjen, “Conceptual query expansion”, Data &
Knowledge
Engineering,
2006,
http://www.cs.mun.ca/~hoeber/download/2005_awic.pdf
[11] B. Katz, et al., “Word Sense Disambiguation for Information
Retrieval”, 1999, http://aaaipress.org/Papers/AAAI/1999/
AAAI99-192.pdf
[12] S. Liu, “Word Sense Disambiguation in Queries”, 2005,
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.89.
973&rep=rep1&type=pdf
[13] A.P. Natsev, et al., “Semantic Concept-Based Query Expansion and Re-ranking for Multimedia Retrieval. A Comparative Review and New Approaches”, 2007,
www.aquaphoenix.com/publications/mm2007_semantics.pdf
[14] Pitler, E., et al., (2009), “Using Word-Sense Disambiguation
Methods to Classify Web Queries by Intent”,
http://140.116.245.248/ACL-IJCNLP2009/EMNLP/pdf/EMNLP148.pdf
[15] W. Ryen, G. Marchionini, “Examining the Effectiveness of
Real-Time
Query
Expansion”,
2009,
http://cchen1.csie.ntust.edu.tw/students/2009/Examining%20
the%20Effectiveness%20of%20RealTime%20Query%20Expansion.pdf
[16] A. Sanfilippo, et al., “Word Domain Disambiguation via
Word Sense Disambiguation”, 2006, http://acl.ldc.upenn.edu
/N/n06/N06-2036.pdf
[17] G. Solskinnsbak, “Ontology-Driven Query Reformulation
in Semantic Search”, 2007, http://daim.idi.ntnu.no/ masteroppgaver/IME/IDI/2007/3523/masteroppgave.pdf
[18] N. Stokes, et al., “Exploring criteria for successful query expansion
in
the
genomic
domain”,
2009,
http://csserver.ucd.ie/~nstokes/publications/nstokes_IR_SI_T
REC09.pdf

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[19] S. Tomassen, “Research on Ontology-Driven Information
Retrieval”, 2006, http://citeseerx.ist.psu.edu/viewdoc/ download?doi=10.1.1.106.4952&rep=rep1&type=pdf
[20] J. Xu, and W. B. Croft., “Query expansion using local and
global document analysis”, In Proceedings of the 19th annual
international ACM SIGIR conference on Research and
development in information retrieval, ACM Press, 1996,
http://www.iro.umontreal.ca/~nie/IFT6255/xu-croft.pdf
[21] J. Xu, and W.B. Croft, “Improving the Effectiveness of Information Retrieval with Local Context Analysis”, ACM
Transactions
on
Information
Systems,
2000
http://www.ir.iit.edu/~dagr/IRCourse/Fall2000/Presentation/
OriginalPapers/TOISLocalContextAnalysis.pdf
[22] X. Xu, “A Comparison of Local Analysis, Global Analysis
and Ontology-based Query Expansion Strategies for Biomedical
Literature
Search”,
2006,
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.13
1.6402&rep=rep1&type=pdf

D-r Tatyana Ivanova, 2009, is an assistant-professor in College
of Energy and Electronics (CEE), Technical University of
Sofia, from 2000.
Assoc prof. d-r Ivan Momtchev is a dean of French Language
Faculty of Electrical Engineering, Technical University of
Sofia, from 2005.

81

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

DEMAC: A Cluster-Based Topology Control for Ad Hoc
Networks
Abhishek Majumder1 and Nityananda Sarma2
1

Department of Information Technology, Assam University
Silchar, 788011, Assam, India

2

Department of Computer Science and Engineering, Tezpur University
Tezpur, 784028, Assam, India

Abstract
The presence of transient network links, mobility and limited
battery power of mobile nodes in MANETs poses a hefty
challenge for such networks to scale and perform efficiently
when subjected to varying network condition. Most of the
topology control algorithms proposed have high control overhead
to discover and maintain route from source to destination. They
also have very high topology maintenance cost. To minimize
routing overhead and topology maintenance cost CBRP (Cluster
Based Routing Protocol) was developed. It performs better than
other approaches in most of the cases.
In this paper, an energy and mobility aware clustering approach
is presented. The clustering approach is incorporated in a DSR
like protocol for routing in MANET to evaluate the performance
improvement gained due to clustering using proposed approach.
Rate of cluster head changes, throughput of the network, delay
and routing overhead is evaluated using NS2. Simulation results
reveal that proposed approach has better performance in
comparison with CBRP.
Keyword: Mobile Ad-Hoc Networks, Topology Control,
Clustering

1. Introduction
A mobile ad-hoc network (MANET) is a collection of
mobile nodes that form a wireless network without the
existence of a fixed infrastructure or centralized
administrative. This type of network can survive without
any infrastructure and can work in an autonomous manner.
Hosts forming an ad-hoc network take equal responsibility
in maintaining the network. Every host provides routing
service for other hosts to deliver messages to the remote
destinations. As such network does not require any fixed
infrastructure; it makes them best for deployment in
volatile environment such as battle field and disaster relief
situations. Some of the constraints

in MANETs are - limited bandwidth, low battery power of
nodes and frequent link breaks due to mobility of the
nodes. These constraints should be taken into
consideration while maintaining the connectivity among
the nodes.
Topology control plays an important role in solving such
problems. Topology control is the problem of computing
and maintaining connected topology among the network
nodes. The major goals of topology control are
connectivity with energy efficiency, high throughput and
robustness to mobility etc. A number of algorithms for
topology control are already proposed in the literature [14]. These algorithms are mainly of two types: Centralized
and Distributed algorithms. Centralized algorithms rely on
global topology information to make adaptive decisions
where as distributed algorithms rely on partial link state
information such as neighbor counts to maintain network
connectivity. Centralized algorithms have the problem of
high connectivity overhead and scalability. Therefore,
distributed topology control algorithms are generally
preferred over centralized topology control algorithms.
The main idea behind the energy efficient topology control
algorithm is that allow nodes in the network to
communicate in its neighborhood to form small groups of
nodes which are called clusters. In CBRP, the cluster head
election is based on the ID of the nodes and the node with
the lowest ID among its neighbors is selected as cluster
head. Because of mobility of nodes in ad hoc network this
is probable that elected cluster head to be too mobile.
Therefore, the lowest ID nodes will be consuming extra
battery power for performing functionalities of a cluster
head. This will lead to election of inactive or poor energy
node as cluster head. The selected lower energy nodes will
result in performance degradation in the network and more

82

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

energy will be consumed indirectly as a result of frequent
change of cluster head. Motivation behind introducing
degree, energy and mobility aware clustering scheme is to
find an alternative efficient way for clustering of MANET
that improves the performance of the ad-hoc network and
reduces the frequency of change of cluster heads.
This paper proposes a clustering scheme for MANET. The
scheme named Degree Energy Mobility Aware Clustering
Scheme (DEMAC) is a degree, energy and mobility aware
clustering approach.

2. Related Works
Various topology control algorithms are available for
mobile ad-hoc networks that try to utilize battery power of
mobile nodes in an efficient way. This section briefly
reviews some the prior works on topology control.
Local Information No Topology (LINT) proposed by
Ramanathan et al. [5] uses locally available neighbor
information collected by routing protocols to keep the
degree of neighbors bound. All network nodes are
configured with three parameters, the desired node degree
dd, a high threshold of the node degree dh and a low
threshold of node degree dl. A node periodically checks
the number of its active neighbors. If the degree is greater
than dd, the node reduces its operational power. If the
degree is less than dd the node increases its operational
power. If neither is true then no action is taken.
On the other hand, selective backbone construction for
topology control [6] is a backbone based approach. In this
approach a chain of connected nodes are constructed. All
the other nodes in MANET should be neighbor of a node
that participates in construction of the backbone. The
backbone construction in SBC starts from a small number
of seed nodes and propagates outwards to sweep the
network. When a node selects its neighbors to include in
the backbone, it also transfers the topology information it
knows so far to these neighbors. Thus, the neighbors can
make more intelligent coordinator selection decisions
based upon more topology information and avoid
redundancy. When choosing coordinators, SBC
simultaneously considers the energy requirement,
movement and location of nodes to maximize energy
conservation, and ability to maintain good networking
performance. The problem with this scheme is its high
topology maintenance cost.
In this paper Cluster Based Routing Protocol (CBRP) [5]
will be given more emphasis because the protocol divides
the nodes of the ad hoc network into a number clusters. By

83

clustering nodes into groups, the protocol efficiently
minimizes the flooding traffic during route discovery and
speeds up this process as well. Major advantage of this
protocol is its low topology maintenance cost.

3. CBRP Overview
Cluster Based Routing Protocol (CBRP) [7-9] is a routing
protocol designed
for use in mobile ad hoc networks.
The protocol divides the nodes of
the ad hoc network
into a number of overlapping or disjoint 2-hop-diameter
clusters in a distributed manner. A cluster head is elected
for each cluster to maintain cluster membership
information. Inter-cluster routes are discovered
dynamically using the cluster
membership information
kept at each cluster head. By clustering nodes into groups,
the protocol efficiently minimizes the flooding traffic
during route discovery and speeds up this process as well
[10]. Furthermore, the protocol takes into consideration
the existence of uni-directional links and uses these links
for both intra-cluster and inter-cluster routing.

3.1 Types of nodes
In CBRP network nodes are categorized as cluster head,
cluster member and gateway nodes. A cluster head for
each cluster is elected in the cluster formation process for
each cluster. A cluster head will have complete knowledge
about group membership and link state information in the
cluster. All nodes within a cluster except the cluster head
are called members of this cluster. Any node a cluster head
may use to communicate with an adjacent cluster is called
a gateway node.

3.2 Data structures
Each node maintains neighbor table, cluster adjacency
table and two-hop database for routing of packets from
source to destination nodes. Neighbor table keeps track of
the neighbor ID, neighbor status and link status with the
neighbor of a node. Cluster adjacency table keeps
information about adjacent clusters. Two hop topology
databases contain information about the two hop
neighbors of a node.

3.3 Cluster formation
The goal of Cluster Formation is to impose some kind of
structure or hierarchy in the otherwise completely
disorganized ad hoc network. Apart from the states of
cluster member and cluster head, a transitional state called
cluster undeclared is also defined for smoother operation
of cluster formation. "Undecided" means that a node is

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

still in search of its host cluster. Initially all the nodes’
status is undeclared.
Each node transmits some packets named “Hello message”
to announce its presence to its neighbor nodes. Upon
receiving a hello message, each node updates its neighbor
tables. Each node enters the network in the “undecided”
state. Every node upon receiving hello message from its
neighbors compares its own ID with its neighbor’s. If a
node distinguishes that its own ID is the lowest ID
between its neighbors, this node declares itself as cluster
head. Every node that has a bi-directional link to this
cluster head will be a member of this cluster
Clusters are identified by their respective cluster heads,
which means that the cluster head must change as
infrequently as possible. The algorithm is therefore not a
strict “lowest-ID” clustering algorithm. A non-cluster head
never challenges the status of an existing cluster head.
Only when two cluster-heads move next to each other, one
of them loses its role as cluster head.

3.4 Routing
Routing in CBRP is based on source routing. RREQ is
flooded in the network to discover the route. Due to the
clustering approach very few nodes are disturbed, only the
cluster heads are flooded. If node S seeks a route to node
R, node S will send out a RREQ, with a recorded source
route listing only itself initially. Any node forwarding this
packet will add its own ID in this RREQ. Each node
forwards a RREQ only once and it never forwards it to
node that already appears in the recorded route. The
source unicasts the RREQ to its cluster head. Each clusterhead unicasts the RREQ to each of its bi-directionally
linked neighboring clusters, which has not already
appeared in the recorded route through the corresponding
gateway. This procedure continues until the target is found
or another node can supply the route. When the RREQ
reaches the target, the target may choose to memorize the
reversed route to the source. It then copies the recorded
route to a Route Reply packet and sends it back to the
source.

4. Degree Energy Mobility Aware Clustering
Scheme: DEMAC
In MANET absence of any fixed infrastructure makes
network topology more unstable. Random movement of
the MANET nodes makes the selection of cluster head in
hierarchical algorithm, such as CBRP, very much
important. If the cluster head selection is not proper
overall performance of the network will be degraded.
Therefore, wise cluster head selection can lead to a well
performing routing protocol. In CBRP the node having

84

lowest ID among its neighboring nodes will be the cluster
head. Obviously, neither the node’s residual energy nor
the mobility of the node is taken under consideration. As
mentioned earlier, in hierarchical cluster-based MANET,
cluster heads play the main role in maintaining the cluster
structure and standing against the destructive factors
namely mobility. In the degree, mobility and energy based
approach proposed in this paper, cluster formation
mechanism is considered with respect to node speed,
residual energy and degree of the node. With this scheme,
a node with the highest F-value will be named cluster
head.

4.1 Priority function (F)
The algorithm considers three factors for selection of
cluster head namely- node speed, residual energy and
degree of node. The node speed is important for selection
of a cluster head. This is because, if a highly mobile node
is elected as cluster head, there is a higher possibility of
the cluster head to move out of the neighborhood of the
respective cluster which lead to election of a new cluster
head. Similarly, the energy is taken into consideration
because if a poor energy node is elected as cluster head,
the node will be dead shortly and an initiation of cluster
head election process will take place more frequently.
Degree of the node is taken into consideration so that a
cluster contains good number of nodes as member node.
Our algorithm uses a function of these three factors to
assign a priority level to a node for election of cluster
head. The function used for estimation of priority level for
cluster head election is given asF= (residual energy * degree)/2α*speed

(1)

Where α is a constant which represents the degree by
which the speed effects the priority. With large α, nodes
moving at low speed would be preferred to be selected as
cluster heads.

4.2 Hello message and neighbor table
To keep track of neighborhood each node maintains a
neighbor table having fields for ID of the neighboring
nodes, link status, and role of neighboring nodes and value
of F. Continuous updating of the neighbor table is done by
periodic transmission and reception of the hello message
to and from the neighborhood of a node. Hello message
will carry important information regarding the sender such
as nodes ID, node status, neighbor table, cluster adjacency
table and value of F.

4.3. Methodology

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

85

In order to use the priority given in Eq.(1) for clustering, a
two step clustering algorithm is proposed which uses the
priority as a basis for cluster head selection. In DEMAC
all the nodes send (receive) hello message to (from) their
neighbors. On receiving the hello message from its
neighbors a node will count number of neighbors it has.
Then it calculates the value of F using Eq.(1). All the
nodes start in Cluster-Undeclared state. Every node
broadcasts its priority in a “hello” message to its 1-hop
neighbors, once in every Broadcast Interval (BI) period. If
the node is not already in the neighbor table of each
neighboring node, it will be stored in the neighbor table of
them along with a timeout period (TP) seconds as new
neighbor. Otherwise neighboring node’s entry in neighbor
table is updated. Fig. 1 shows the algorithm in details.
The algorithm is distributed. Thus, a node receives the Fvalue from its neighbor then compares them with its own.
If a node has highest value of F among all its neighbors, it
assumes that it has status of cluster head. Then the node
broadcasts “hello” packet to introduce itself as cluster
head. In case, the priority of two nodes are same, the
cluster head selection is base on the lowest ID algorithm,
the node with the lowest ID gets the status of cluster head.
If a node with cluster member or cluster undecided status
moves into the range of another cluster head node with
higher mobility, a clustering process will not be triggered
because this decreases the stability of the network and
overhead for topology control increases.

Fig. 1 Cluster formation algorithm for DEMAC

A node x receives a “hello” packet from y:
x searches its neighbor table;
if (y is already in the neighbor table of x) then
-calculate the F-value of node x using (1);
-update neighbor table’s field of node x for node y;
-update the cluster adjacency table of node x;
-update 2-hop database of node x;
-update the number of cluster head related to x;
if (x is a cluster head in proximity of other cluster head)
then
if (F-value of x is greater than node y) then
-node x remains cluster head;
-node y gives up cluster head role and becomes a
member node of x;
-return;
else if (F-value of node x is equal to node y) then
if (x has a lower ID) then
-x remains cluster head;
-y becomes a member of x;
-return;
else
- x is member of neighbor cluster head;
-return;

In DEMAC, each node transmits some packets named
“Hello message” to announce its presence to its neighbor
nodes. In the example when node 1 receives a hello
message from its neighbor node 2 it updates its neighbor
table’s entry corresponding to node 2. Node 1 also updates
its cluster adjacency table and 2-hop neighbor database.
Upon receiving a hello message, node 1 counts the number
of neighbor nodes. It also measures its speed and residual
energy. Then it computes its F-value using Eq.(1) and
compares it with F-value of its neighbors. Let node 1 has
highest value of F among its neighbors nodes (2, 3, 4, 5)
and none of its neighbor is cluster head, it declares itself a
cluster head and sends a hello message to its neighbors.
Nodes 2,3,4,5 will become the member of the cluster
whose cluster head is node 1. Node 2 is also the member
of cluster 6. Therefore, in the example node 2 is a gateway
node. Node 3 and 9 maintains connectivity between

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

cluster 1 and 8. Therefore node 3 and 9 are also gateway
nodes. Similarly node 7 and 11 are also gateway nodes.

86

The simulation has been run for 100 seconds. The results
are averaged over 5 randomly generated nodal topologies.
The performance of DEMAC is compared with CBRP
considering number of cluster head changes, throughput,
delay and routing overhead with respect to maximum
speed of the node.

Fig. 2 Example of DEMAC

5. Simulation and Performance Analysis
Fig. 3 Number of Cluster Head Changed vs. Speed

The proposed protocol is simulated in NS-2.31 network
simulator [11]. The mobility scenarios were randomly
generated using the random waypoint mobility model with
input parameters such as maximum speed, number of
nodes, area size, etc. NS-2 CBR generator is used to
generate traffic. There are simultaneously 10 CBR traffic
flows associated with randomly selected disjoint source
and destination node. Packet size is 512 bytes. The CBR
rate in the network is taken as 8 pkts/s. The initial energy
of each node is 500 Joules. Each Node will consume 0.002
w for transmission, 0.00175 w for reception, 0.00005
while idling. CMUPriQueue is used for implementing the
interface queue. Size of the buffer is set to 50. DEMAC is
implemented by doing the required modification on the
implementation of CBRP in ns-2 environment. The
Simulation parameters are listed in table(1).
Table1. Simulation Parameters

Parameter
N

Meaning
Number of
Nodes

Value
50

mxn

Size of
the scenario

500 x 500

Max Speed

Maximum
Speed

5,10,15,20,25 (m/s)

Tx

Transmission
Range

90 m

P.T

Pause Time

0.0 sec

Fig. 4 Throughput vs Speed

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

87

Normalized routing overhead is the percentage of routing
packets with respect to cbr packets. Fig.5 demonstrates the
results of the measured normalized overhead for CBRP
and DEMAC. It can be seen from Fig.5 that DEMAC
outperforms CBRP by average 39%. Average end-to-end
delay is the average time required for a packet to reach the
destination from source. It can be observed from Fig.6 that
though in low node speed the end-to-end delay of CBRP is
almost equal to that of DEMAC but when the node speed
increases the end-to-end delay of CBRP becomes more
than DEMAC. DEMAC outperforms CBRP by average
31.5%.

6. Conclusion and Future Work
Fig. 5 Normalized Routing Overhead vs Speed

In this paper DEMAC is proposed as a degree, energy,
mobility aware clustering scheme in MANET. Due to its
improved cluster head selection algorithm DEMAC
outperforms CBRP with respect to number of cluster head
changes, throughput, delay and routing overhead. From
the simulation results, it is observed that the proposed
method has up to 15.5% less number of cluster head
changes in comparison with CBRP. Similarly, considering
throughput a gain of 25% is recorded in DEMAC over
CBRP. Further DEMAC also have 39% less routing
overhead and 31.5% less average end-to-end delay as
compared to CBRP. Therefore it can be concluded that
DEMAC is more suitable than CBRP for MANET. Future
works remain for performance evaluation of DEMAC in
different network densities and different transmission
range keeping the mobility same.

Fig. 6 Average End-to-end Delay vs. Speed

In simulation a scenario with rate of 10 pkts/sec is used.
Maximum speed of the node has been considered 5, 10,
15, 20, 25 m/s. The scenario is tested for both CBRP and
DEMAC. Fig3 represents the effect of varying mobility on
the number of cluster head changes in the ad-hoc network
considering both DEMAC and CBRP. It can be seen from
Fig.3 that DEMAC outperforms CBRP by average 15.5%
improvement for cluster head changes. It is very clear that
DEMAC yields a very good gain over CBRP because it
has taken degree, residual energy and speed of the node.
From the cluster head changes vs mobility curve, it can be
said that DEMAC is more suitable for cluster formation
than CBRP.
Throughput is defined as the average number of data
packets received at destinations during simulation time.
Fig.4 demonstrates the results of the measured throughput
for CBRP and DEMAC. It can be seen from Fig.4 that
DEMAC outperforms CBRP by average 25%.

References
[1] Kenneth J. Supowit, “The relative neighbourhood graph
with application to minimum spannig trees”, Journal of
theACM, Vol. 30, No. 3, 1983, pp. 428-448.
[2] Ning Li, Jennifer C Hou and Lui Sha, “Design an Analysis
of an MSTBased Topology Control Algorithm”, in
INFOCOM, 2003.
[3] Nicos Christofides, Graph Theory : An Algorithmic
Approach, Academic press, 1975.
[4] Hu L, “Topology control for multihop packet radio
networks”, in Communications, IEEE Transactions on,
Vol. 41, Iss. 10, 1993, pp. 1474- 1481.
[5] Ramanathan R. and Rosales-Hain R., “Topology
control of multihop wireless networks using transmit
power adjustment,” in Proc. IEEE INFOCOM, 2000.
[6] Haitao Liu and Rajiv Gupta, “Selective Backbone
Construction for Topology Control in Ad Hoc Networks”,
IEEE, 2004, pp. 41-50.
[7] Chien-Chung Shen, Chavalit Srisathapornphat, Rui Liu,

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Zhuochuan Huang, Chaiporn Jaikaeo, Sand Errol L.
Lloyd, “CLTC: A Cluster-Based Topology Control
Framework for Ad Hoc Networks”, IEEE
TRANSACTIONS ON MOBILE COMPUTING,
Vol.3, Issue1, JANUARY-MARCH 2004, pp. 18-32
[8] P.Basu, N. Khan, and T.D.C. Little, “A Mobility Based
Metric for Clustering in Mobile Ad Hoc Networks”, MCL
Technical Report No. 01-15-2001
[9] M. Jiang, J. Li, and Y.C. Tay, “Cluster Based Routing
Protocol,” IETF Draft, August 1999.
[10] J. Mingliang, Y.C. Tay and P. Long, "CBRP: A Clusterbased Routing Protocol for Mobile Ad hoc Networks",
National University of Singapore.
http://www.comp.nus.edu.sg/~tayyc/cbrp/hon.ppt.
[11] Network simulator ns-2
http://sourceforge.net/projects/nsnam/files/allinone/nsallinone-2.31/ns-allinone-2.31.tar.gz

88

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

89

Experimental Evaluation of Memory Effects on TCP Traffic in
Congested Networks
Kulvinder Singh1, Anil Kumar2
1

Assistant Professor, Department of Comp. Sc. & Engg. Vaish College of Engineering,
Rohtak(Haryana), India

2

Assistant Professor, Department of Comp. Sc. & Engg. Vaish College of Engineering,
Rohtak(Haryana), India

Abstract
Today the Internet is a worldwide-interconnected computer
network that transmits data by packet switching based on the
TCP/IP protocol suite. Internet has TCP as the main protocol of
the transport layer. The performance of TCP is studied by many
researchers. They are trying to analytically characterizing the
throughput of TCP’s congestion control mechanism. Internet
routers were widely believed to need big memory spaces.
Commercial routers today have huge packet memory spaces,
often storing millions of packets, under the assumption that big
memory spaces lead to good statistical multiplexing and hence
efficient use of expensive long-haul links.
In this paper, we summarize the works and present the
experimental study result with big memory space size and give a
qualitative analysis of the result. Our conclusion is that the,
round-trip time (RTT) is not increased by linear, but by quadric
when the memory space size of the bottleneck is big enough. Our
goal is to estimate the average queue length of the memory space
size and develop a TCP model based on RTT and the average
queue length.

Keywords: Traffic management, Congestion control, congestion
mechanism, congestion model, memory size.

1. Introduction
The traffic across internet is increasing so congestion is
becoming an important issue in network applications.
When congestion is occurred the packet round trip time is
increased and probability is lost and decreased in the
throughput. Transport protocol must deal with this traffic
congestion in order to make best use of the capacity of
network. TCP adopt a window based congestion control
mechanism. Traditionally experimental study and
measurement have been the tools of choice for checking
the performance of various aspects of TCP. But the
amount of non-TCP traffic flows (such as multimedia
traffic) keep increasing in today’s Internet, non-TCP flows
should share the bandwidth with TCP flows “friendly”,

which means the throughout of the non-TCP flows
transport protocol should be approximately the same as the
TCP. In order to do that, we must analytically model the
TCP behavior and characterize the throughput of TCP’s
congestion control mechanism.
In this paper, we investigate is the behaviour of a single
TCP flow when using memory spaces with different size.
We summarize the TCP congestion control mechanism
and the method of analytically characterize the throughput
of TCP’s congestion control mechanism. We present the
experimental study result with big memory space size and
give a qualitative analysis of the result.

2. An overview of Different mechanisms of
TCP congestion control
We can distinguish two major kinds of congestion control
window-based such as TCP (Transmission Control
Protocol), and rate-based that for example regulates ATMABR [2] (Available Bit Rate service of an Asynchronous
Transfer Mode network) traffic. The window-based
congestion control model in the Internet attempts to solve
an optimization problem by decoupling the network
problem to that of individual source utility maximization
by assigning bit-marks.
We have a reliable protocol TCP window-based
acknowledgment clocked flow control protocol. The
sender control the sending rate by increasing or decreasing
the size of its congestion window according to the
acknowledgement received. The strategy used for
congestion window size adjustment is known as AIMD
(Additive Increase Multiplicative Decrease).

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

90

2.1. Slow Start and Congestion Avoidance

2.4. Fast Recovery

The slow start[8] and congestion avoidance algorithms
must be used by a TCP sender to control the amount of
outstanding data being injected into the network.
The congestion window (cwnd) is a sender-side limit on
the amount of data the sender can transmit into the
network before receiving an acknowledgment (ACK),
while the receiver's advertised window (rwnd) is a
receiver-side limit on the amount of outstanding data. The
minimum of cwnd and rwnd governs data transmission.
The variables threshold (ssthresh) is used to determine
whether the slow start or congestion avoidance algorithm
is used to control data transmission.
The slow start algorithm is used at the beginning of a
transfer, or after repairing loss detected by the
retransmission timer.

A TCP receiver should send an immediate duplicate ACK
when an out-of-order segment arrives. The purpose of this
ACK is to inform the sender that a segment was received
out-of-order and which sequence number is expected.
From the sender's perspective, duplicate ACKs can be
caused by a number of network problems. First, they can
be caused by dropped segments. In this case, all segments
after the dropped segment will trigger duplicate ACKs.
Second, duplicate ACKs can be caused by the re-ordering
of data segments by the network. Finally, duplicate ACKs
can be caused by replication of ACK or data segments by
the network. In addition, a TCP receiver should send an
immediate ACK when the incoming segment fills in all or
part of a gap in the sequence space. This will generate
more timely information for a sender recovering from a
loss through a retransmission timeout, a fast retransmit, or
an experimental loss recovery algorithm.

2.2. Congestion Avoidance
In congestion avoidance we deal with lost packets due to
traffic congestion. It is described in [4]. The assumption of
the algorithm is that packet loss caused by damage is very
small; therefore the loss of a packet signals congestion
somewhere in the network between the source and
destination. There are two indications of packet loss: a
timeout occurring and the receipt of duplicate ACKs.
Congestion avoidance and slow start are independent
algorithms with different objectives.
But when congestion occurs TCP must slow down its
transmission rate of packets into the network, and then
invoke slow start to get things going again.

2.3. Fast Retransmit
A TCP receiver should send an immediate duplicate ACK
when an out-of-order segment arrives. The purpose of this
ACK is to inform the sender that a segment was received
out-of-order and which sequence number is expected.
From the sender's perspective, duplicate ACKs can be
caused by a number of network problems. First, they can
be caused by dropped segments. In this case, all segments
after the dropped segment will trigger duplicate ACKs.
Second, duplicate ACKs can be caused by the re-ordering
of data segments by the network. Finally, duplicate ACKs
can be caused by replication of ACK or data segments by
the network.
The TCP sender should use the "fast retransmit" algorithm
to detect and repair loss, based on incoming duplicate
ACKs. The fast retransmit algorithm uses the arrival of 3
duplicate ACKs as an indication that a segment has been
lost. After receiving 3 duplicate ACKs, TCP performs a
retransmission of what appears to be the missing segment,
without waiting for the retransmission timer to expire.

3. Congestion Control and Sizing Router
Memory spaces
The goal of this research is to investigate the memory
space size that is required in order to provide full link
utilization given a used TCP congestion control algorithm.
We start by considering the case of a single TCP
connection.
We have seen that the standard TCP congestion control
algorithm is made of a probing phase that increases the
input rate up to fill the memory space and hit network
capacity [10]. At that point packets start to be lost and the
receiver sends duplicate acknowledgments. After the
reception of three duplicate acknowledgments, the sender
infers network congestion and reduces the congestion
window by half. TCP does not modify TCP behavior in
environments with high to mild congestion (typical of low
speed networks) [5]. In high bandwidth-delay networks in
which HighSpeed TCP sends bursts of large number of
packets, the amount of buffer available in the bottleneck
router is an important issue to keep the router highly
utilized during congestion periods. A large buffer
increases delay and delay variance which adversely affects
real-time applications (e.g., video games, device control
and video over IP applications.) It is therefore important to
investigate the effects of buffering on TCP performance
such as throughput, convergence to fairness and
interaction.

4. The Model for TCP Congestion Control
Traditionally, experimental study and implementation or
measurements have been the tools of choice for examining

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

the performance of various aspects of TCP. Recently,
there is a great interest in analyzing the performance of
TCP and TCP-like algorithms to quantify the notion of
"TCP-friendliness", which means connections that use
non-TCP transport protocol, should get a similar share of
bandwidth as TCP connections that share the same link
under the same conditions of loss, RTT etc.
In this model, the throughput of TCP's congestion control
mechanism is characterized as a function of packet loss
and round trip delay. [7]Consider a TCP flow starting at
time t=0. For any given time t, define Nt to be the number
of packets transmitted in the interval [0, t], and Bt = Nt/t,
the throughput on that interval. The steady state TCP
throughput B should be:

B  lim Bt  lim
t 

t 

Nt
t

A sample path of the evolution of congestion window size
is given in figure 1.

91

1 p
2  b


p
3b

B( p) 

RTT

 2  b 

 
6



8 (1  p )
 2  b 
 

3 bp
 3b 
2 b (1  p )
 2  b 
 

3 p
6



2

2

 1

which can be expressed as:
B ( p ) 

1
RTT

3
2 bp


 o 



1



p 

Extends this model to include the case where the TCP
sender times-out and the impact of window limitation of
receiver advertised window size, it can be derived that:




W

1

B( p)  min min2 
 RTT

 3bp 
2bp
 p(1  32 p 2 ) 

 To min 3
RTT



3
8 




where To - interval waiting for time out, Wmin - receiver
advertised window size.
W

W1

W2

W3

5. Experimental Work

TDP 1

A1

TDP 2

TDP 3

A2

A3

We are using here rate based congestion control protocols,
one of which is TFRC (TCP Friendly Rate Control
Protocol)[3]. The model assumes that the congestion
window size increase is linear during congestion
avoidance, which is not always true. When the memory
space size of the bottle-neck node is big enough, the
increase is sub-linear, which lead to the analytical result
will be higher than the actual result. We use QualNet
network simulator [6] to verify the assumption.

t

Figure 1 Triple Duplicate Period.

Between two triple duplicate ACKs loss indications, the
sender is in congestion avoidance phase. Define a TD
period (TDP) to be a period between two triple duplicate
ACKs loss indications. For the i-th TDP, define Yi to be
the number of packets sent in the period, Ai the duration
of the period, and Wi the window size at the end of the
period. Considering {Wi}i to be a Markov regenerative
process with rewards{Yi}i, it can be shown that
E [Y ]
B 
E[ A]
(1)
It can be derived that
E[Y] = l/p + E[W] - 1
=E[W]*(E[W]*3/2 - 1)*b/4 + E[W]/2
E[A] =(b*E[W]/2+1)*RTT

(2)

Table 1: Parameters used in the simulation.
Queue Size between R0 & R1

40~900

Delay between R0 & R1

35 ms

Bandwidth between R0 & R1

15 Mb

TCP window size

1000

Queue Algorithm

Drop Tail

Bandwidth of Branch

128 Mb

Delay of Branch

2 ms

We perform 4 experimental tests. Table 2 list the number
of connections in each simulation.

(3)

Where: p - loss probability, b – window increases by l/b
packets per ACK, RTT – round trip time.
From (I) (2) (3), we can get

Table 2: Number of connections in each simulation.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Experiment No.
TCP Connections

1
16

2
24

3
32

4
64

TFRC Connections

16

24

32

64

92

1.4
1.2
1
0.8

TCP
TFRC

0.6

In each simulation, we increase the memory space size of
RO and RI from 50 to 850 step by 100 and the result is
shown in figure 2 - figure 5. In each bar diagram, X axis is
memory space size and Y axis is the mean of bandwidth of
TCP connections and TFRC connections.

0.4
0.2
0
50

150

250

350

Figure 4

450

550

650

750

850

32 TCP & 32 TFRC

1.6
1.4
1.4

1.2
1.2

1
TCP

0.8

1

TFRC
0.8

0.6
0.4

0.6

0.2

0.4

0

TCP
TFRC

0.2

50

150

250

350

450

550

650

750

850
0
50

Figure 2

150

250

350

450

550

650

750

850

16 TCP & 16 TFRC
Figure 5

64 TCP & 64 TFRC

1.4
1.2

6. Analysis

1
0.8

TCP
TFRC

0.6
0.4
0.2
0
50

150

250

350

Figure 3

450

550

650

750

24 TCP & 24 TFRC

850

From the result of the experiments, we can find that when
the memory space size is much less than the
Bandwidth*Delay, the model result is quite close to the
actual result. However, as the memory space size
increases, the experimental study result show that the
TFRC connections get more bandwidth than the TCP
connections, which means the analytical result, is higher
than the actual result. We think it is because when the
memory space size is big enough, the congestion window
size increase is by sub-linear, not by linear.
Considering equation (3), this implies that the increase of
RTT is by linear in a TDP. In fact the increase of RTT is
not by linear.
We can find that the RTT will increase much more when
the congestion window is big than that when the
congestion window is small. When the memory space size
of the bottleneck node is small, the congestion window
can not be very big, so the RTT can be approximately
viewed as increases by linear. But when the memory space

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

size is big enough, the error between linear and quadric
curve can not be neglected. The actual time of TDP is
longer than the time estimated in the model when the
memory space size is big, so the actual throughput is
lower than the throughput estimated in the model.

7. Related Work
A survey on TCP performance in a heterogeneous network
is given in [1]. It considers the different characteristics of
a path crossed by TCP traffic, focusing on bandwidth
delay product, round trip time (RTT), on congestion
losses, and bandwidth asymmetry.
It presents the problems and the different proposed
solutions. The model used in this paper was proposed in
[7]. TFRC [3] use it to calculate the sending rate of the
sender. But only the experimental study result with small
memory size was given.

8. Conclusion and Future Work
In this paper, we summarize the TCP congestion control
mechanism and the analytical model. The model proposed
in [7] captures not only the behavior of TCP’s fast
retransmit mechanism, but also the effect of TCP’s
timeout mechanism on throughput. But with the big
memory space size, the model result does not fit the actual
result well. We suppose that it is because the increase of
RTT is not by linear when the congestion window is big.
We present the experimental study result and give a
qualitative analysis. There are a lot of work remain to do.
First, a quantitative analysis will help us to make the
model more precise. Second, the loss probability of the
packet plays an important role in the model. However, in
practice, it is hard to measure the loss probability
accurately. So, if we get the relation of memory space size
and the RTT, we can infer the queue length of the memory
space at the bottleneck node from RTT. In our future
work, we would also like to investigate the effects of
buffer size on the performance of other recently proposed
high-speed TCP variants, e.g. FAST TCP [9] which
changes its window according to buffer delay.
In this way, we can model the TCP congestion control
mechanism mainly based on the queue length of the
memory space and the RTT, which can be measured more
accurately than packet loss probability.

References
[l] Chadi Barakat, Eitan Altman, and Walid Dabbous, “On TCP
Performance in a Heterogeneous Network: A Survey”, IEEE
Communications Magazine, January 2000.

93

[2] D. M. Chiu and R. Jain, “Analysis of the increase and
decrease algorithms for congestion avoidance in computer
networks”, Computer Networks and ISDN Systems, Vol 17, pp.
1 - 14, June 1989.
[3] S.Floyd, M.Handley, J.Padhye, and J.Widmer. “EquationBased Congestion Control for Unicast Applications: the
Extended Version”, ICSI Technical Report TR-00-03, March
2000.
[4] V. Jacobson, “Congestion Avoidance and Control”,
Computer Communication Review, vol. 18, no. 4, pp. 314-329,
Aug. 1988.
[5] S. Floyd, “HighSpeed TCP for Large Congestion Windows,”
in RFC 3649, Experimental, December 2003.
[6] “The Network Simulator––QualNet”, Tech. rep., WebPage:
http://www.scalable-networks.com Version 5.02, July 2010.
[7] J.Padhye, V.Firoiu, D.Towsley, and J.Kurose, “Modeling
TCP throughput: A simple model and its empirical validation”,
Proceedings of SIGCOMM’98, 1998.
[8] W. Stevens. “TCP Slow Start, Congestion Avoidance, Fast
Retransmit, and Fast Recovery Algorithms”. RFC 2001, Jan
1997.
[9] C. Jin, D. X. Wei, and S. H. Low, “FAST TCP: Motivation,
Architecture, Algorithms, Performance,” in Proceedings of IEEE
INFOCOM’04, March 2004.
[10] Saverio Mascolo and Francesco Vacirca, ”TCP Congestion
Control & Memory Space Requirements” in Proceedings of the
44th IEEE Conference on Decision and Control, and the
European Control Conference 2005 Seville, Spain, December 1215, 2005.
Kulvinder Singh received the M.Tech.(CSE) degree in 2006 and
the M.Phil.(CS) degree in 2008 from Ch. Devi Lal University
Sirsa(Haryana), India. At present he is working as a Assistant
Professor in Vaish College of Engineering, Rohtak, India. He is a
member of IEC. He presents many research papers in national
and international conferences. His interest areas are Networking,
Web Security, Internet Congestion and Fuzzy Database.
Anil Kumar received his bachelor degree from Delhi University,
Delhi, India and Master degree from IGNOU, India and M.Tech in
Computer Science & Eng. From Kurukshetra University,
Kurukshetra, India in year 2002 and 2006. Currently he is pursuing
Ph.D in Computer Science from the Department of Computer
Science & Application – Kurukshetra University, Kurukshetra,
India. Currently is Asst. Professor in Computer Science &
Engineering Department in Vaish Engineering College, Rohtak,
Haryana, India since September, 2006. He had also worked in
software industries more than three years & being a lecture in
other engineering college more than two years. His research areas
include Software engineering, Reengineering, Software Metrics,
Object Oriented analysis and design, Reusability, Reliability.

94

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

A Comparison Between Five Models Of Software Engineering
Nabil Mohammed Ali Munassar1 and A. Govardhan2
1

Ph.D Student of Computer Science & Engineering

Jawahrlal Nehru Technological University
Kuktapally, Hyderabad- 500 085, Andhra Pradesh, India
2

Professor of Computer Science & Engineering
Principal JNTUH of Engineering College, Jagityal, Karimnagar (Dt), A.P., India

Abstract
This research deals with a vital and important issue in computer
world. It is concerned with the software management processes
that examine the area of software development through the
development models, which are known as software development
life cycle. It represents five of the development models namely,
waterfall, Iteration, V-shaped, spiral and Extreme programming.
These models have advantages and disadvantages as well.
Therefore, the main objective of this research is to represent
different models of software development and make a
comparison between them to show the features and defects of
each model.
Keywords: Software Management Processes, Software
Development, Development Models, Software Development Life
Cycle, Comparison between five models of Software Engineering.

increased recently which results in the difficulty of
enumerating such companies. During the previous four
decades, software has been developed from a tool used for
analyzing information or solving a problem to a product in
itself. However, the early programming stages have
created a number of problems turning software an
obstacle to software development particularly those
relying on computers. Software consists of documents and
programs that contain a collection that has been
established to be a part of software engineering
procedures. Moreover, the aim of software engineering is
to create a suitable work that construct programs of high
quality.

1. Introduction
Computer Science

No one can deny the importance of computer in our life,
especially during the present time. In fact, computer has
become indispensible in today's life as it is used in many
fields of life such as industry, medicine, commerce,
education and even agriculture. It has become an
important element in the industry and technology of
advanced as well as developing countries. Now a days,
organizations become more dependent on computer in
their works as a result of computer technology. Computer
is considered a time- saving device and its progress helps
in executing complex, long, repeated processes in a very
short time with a high speed. In addition to using
computer for work, people use it for fun and
entertainment. Noticeably, the number of companies that
produce software programs for the purpose of facilitating
works of offices, administrations, banks, etc, has

Theories

Computer Function

Client

Problems

The Software engineering

Tools and techniques to solve problems

Fig. 1 Explanation of software engineering conception.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

95

2. Software Process Models

concern.

A software process model is an abstract representation of a
process. It presents a description of a process from some
particular perspective as:

The pure waterfall lifecycle consists of several nonoverlapping stages, as shown in the following figure. The
model begins with establishing system requirements and
software requirements and continues with architectural
design, detailed design, coding, testing, and maintenance.
The waterfall model serves as a baseline for many other
lifecycle models.

1.
2.
3.
4.

Specification.
Design.
Validation.
Evolution.

General Software Process Models are
1. Waterfall model: Separate and distinct phases of
specification and development.
2. Prototype model.
3. Rapid application development model (RAD).
4. Evolutionary
development:
Specification,
development and validation are interleaved.
5. Incremental model.
6. Iterative model.
7. Spiral model.
8. Component-based software engineering : The system
is assembled from existing components.

System Requirements
Software Requirements

Architectural Design

Detailed Design

Coding

There are many variants of these models e.g. formal
development where a waterfall-like process is used, but
the specification is formal that is refined through several
stages to an implementable design[1].

Testing

Maintenance

Fig. 2 Waterfall Model[4].

3. Five Models
A Programming process model is an abstract
representation to describe the process from a particular
perspective. There are numbers of general models for
software processes, like: Waterfall model, Evolutionary
development, Formal systems development and Reusebased development, etc. This research will view the
following five models :
1. Waterfall model.
2. Iteration model.
3. V-shaped model.
4. Spiral model.
5. Extreme model.
These models are chosen because their features
correspond to most software development programs.

Requirements
Definition

System and
Software Design

Implementation
and Unit Testing

Integration and
System Testing

3.1 The Waterfall Model
The waterfall model is the classical model of software
engineering. This model is one of the oldest models and is
widely used in government projects and in many major
companies. As this model emphasizes planning in early
stages, it ensures design flaws before they develop. In
addition, its intensive document and planning make it
work well for projects in which quality control is a major

Operation and
Maintenance
Fig. 3 Waterfall model[2].

The following list details the steps for using the waterfall

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

model:
1 System requirements: Establishes the components
for building the system, including the hardware
requirements, software tools, and other necessary
components. Examples include decisions on
hardware, such as plug-in boards (number of
channels, acquisition speed, and so on), and decisions
on external pieces of software, such as databases or
libraries.
2

3

Software requirements: Establishes the expectations
for software functionality and identifies which system
requirements the software affects. Requirements
analysis includes determining interaction needed with
other applications and databases, performance
requirements, user interface requirements, and so on.
Architectural design: Determines the software
framework of a system to meet the specific
requirements. This design defines the major
components and the interaction of those components,
but it does not define the structure of each
component. The external interfaces and tools used in
the project can be determined by the designer.

4

Detailed design: Examines the software components
defined in the architectural design stage and produces
a specification for how each component is
implemented.

5

Coding:
Implements
specification.

6

7

the

detailed

starting coding. There is no overlap between stages. In
real-world development, however, one can discover issues
during the design or coding stages that point out errors or
gaps in the requirements.
The waterfall method does not prohibit returning to an
earlier phase, for example, returning from the design phase
to the requirements phase. However, this involves costly
rework. Each completed phase requires formal review and
extensive documentation development. Thus, oversights
made in the requirements phase are expensive to correct
later.
Because the actual development comes late in the process,
one does not see results for a long time. This delay can be
disconcerting to management and customers. Many people
also think that the amount of documentation is excessive
and inflexible.
Although the waterfall model has
instructive because it emphasizes
project development. Even if one
model, he must consider each of
relationship to his own project [4].

1.
2.
3.

design

Testing: Determines whether the software meets the
specified requirements and finds any errors present in
the code.
Maintenance: Addresses problems and enhancement
requests after the software releases.

In some organizations, a change control board maintains
the quality of the product by reviewing each change made
in the maintenance stage. Consider applying the full
waterfall development cycle model when correcting
problems or implementing these enhancement requests.
In each stage, documents that explain the objectives and
describe the requirements for that phase are created. At the
end of each stage, a review to determine whether the
project can proceed to the next stage is held. Your
prototyping can also be incorporated into any stage from
the architectural design and after.
Many people believe that this model cannot be applied to
all situations. For example, with the pure waterfall model,
the requirements must be stated before beginning the
design, and the complete design must be stated before

96

4.
5.
6.

1.
2.

4.
5.
6.
7.


its weaknesses, it is
important stages of
does not apply this
these stages and its

Advantages :
Easy to understand and implement.
Widely used and known (in theory!).
Reinforces good habits:
define-before- design,
design-before-code.
Identifies deliverables and milestones.
Document driven, URD, SRD, … etc. Published
documentation standards, e.g. PSS-05.
Works well on mature products and weak teams.
Disadvantages :
Idealized, doesn’t match reality well.
Doesn’t reflect iterative nature of exploratory
development.
3. Unrealistic to expect accurate requirements so
early in project.
Software is delivered late in project, delays discovery
of serious errors.
Difficult to integrate risk management.
Difficult and expensive to make changes to
documents, ”swimming upstream”.
Significant administrative overhead, costly for small
teams and projects [6].
Pure Waterfall

This is the classical system development model. It consists
of discontinuous phases:
1.
2.
3.

Concept.
Requirements.
Architectural design.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

4.
5.
6.

Detailed design.
Coding and development.
Testing and implementation.
Table 1: Strengths & Weaknesses of Pure Waterfall

Strengths





Minimizes planning
overhead since it can
be done up front.
Structure minimizes
wasted effort, so it
works well for
technically weak or
inexperienced staff.

Risk reduction spirals can be added to the top of the
waterfall to reduce risks prior to the waterfall phases. The
waterfall can be further modified using options such as
prototyping, JADs or CRC sessions or other methods of
requirements gathering done in overlapping phases [5].

Weaknesses

3.2 Iterative Development



Inflexible



Only the final phase
produces a nondocumentation
deliverable.



Backing up to
address mistakes is
difficult.

The problems with the Waterfall Model created a demand
for a new method of developing systems which could
provide faster results, require less up-front information,
and offer greater flexibility. With Iterative Development,
the project is divided into small parts. This allows the
development team to demonstrate results earlier on in the
process and obtain valuable feedback from system users.
Often, each iteration is actually a mini-Waterfall process
with the feedback from one phase providing vital
information for the design of the next phase. In a variation
of this model, the software products, which are produced
at the end of each step (or series of steps), can go into
production immediately as incremental releases.

 Pure Waterfall Summary
The pure waterfall model performs well for products with
clearly understood requirements or when working with
well understood technical tools, architectures and
infrastructures. Its weaknesses frequently make it
inadvisable when rapid development is needed. In those
cases, modified models may be more effective.


97

Modified Waterfall

The modified waterfall uses the same phases as the pure
waterfall, but is not based on a discontinuous basis. This
enables the phases to overlap when needed. The pure
waterfall can also split into subprojects at an appropriate
phase (such as after the architectural design or detailed
design).

Table 2: Strengths & Weaknesses of Modified Waterfall

Strengths








More flexible than the
pure waterfall model.
If there is personnel
continuity between the
phases, documentation
can be substantially
reduced.
Implementation of easy
areas does not need to
wait for the hard ones.

Weaknesses







Modified Waterfall Summary

Milestones are more
ambiguous than the
pure waterfall.
Activities performed
in parallel are subject
to miscommunication
and mistaken
assumptions.
Unforeseen
interdependencies can
create problems.

Fig. 4 Iterative Development.

3.3 V-Shaped Model
Just like the waterfall model, the V-Shaped life cycle is a
sequential path of execution of processes. Each phase
must be completed before the next phase begins. Testing
is emphasized in this model more than the waterfall
model. The testing procedures are developed early in the
life cycle before any coding is done, during each of the
phases preceding implementation. Requirements begin the
life cycle model just like the waterfall model. Before

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

development is started, a system test plan is created. The
test plan focuses on meeting the functionality specified in
requirements gathering.

98

Requirements

The high-level design phase focuses on system
architecture and design. An integration test plan is created
in this phase in order to test the pieces of the software
systems ability to work together. However, the low-level
design phase lies where the actual software components
are designed, and unit tests are created in this phase as
well.

System Test
Planning

High Level
Design

Low Level
Design

The implementation phase is, again, where all coding
takes place. Once coding is complete, the path of
execution continues up the right side of the V where the
test plans developed earlier are now put to use.


Advantages

1.
2.
3.

Simple and easy to use.
Each phase has specific deliverables.
Higher chance of success over the waterfall model
due to the early development of test plans during the
life cycle.
Works well for small projects where requirements are
easily understood.

4.

Integration
Test
Planning

Unit Test
Planning

System
Testing

Integration
Testing

Unit
Testing

Implementation

Fig. 6 V-Shaped Life Cycle Model[7].

3.4 Spiral Model
The spiral model is similar to the incremental model, with
more emphases placed on risk analysis. The spiral model
has four phases: Planning, Risk Analysis, Engineering and
Evaluation. A software project repeatedly passes through
these phases in iterations (called Spirals in this
model). The baseline spiral, starting in the planning
phase, requirements are gathered and risk is
assessed. Each subsequent spiral builds on the baseline
spiral. Requirements are gathered during the planning
phase. In the risk analysis phase, a process is undertaken
to identify risk and alternate solutions. A prototype is
produced at the end of the risk analysis phase. Software is
produced in the engineering phase, along with testing at
the end of the phase. The evaluation phase allows the
customer to evaluate the output of the project to date
before the project continues to the next spiral.
In the spiral model, the angular component represents
progress, and the radius of the spiral represents cost.

Fig. 5 V-Model [3]



Disadvantages

1.
2.

Very rigid like the waterfall model.
Little flexibility and adjusting scope is difficult and
expensive.
Software is developed during the implementation phase,
so no early prototypes of the software are produced.
This Model does not provide a clear path for problems
found during testing phases [7].

3.
4.


1.
2.
3.

Advantages
High amount of risk analysis.
Good for large and mission-critical projects.
Software is produced early in the software life cycle.


1.
2.
3.

Disadvantages
Can be a costly model to use.
Risk analysis requires highly specific expertise.
Project’s success is highly dependent on the risk
analysis phase.
Doesn’t work well for smaller projects [7].

4.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org


1.

Spiral model sectors
Objective setting :Specific objectives for the phase are
identified.
2. Risk assessment and reduction: Risks are assessed and
activities are put in place to reduce the key risks.
3. Development and validation: A development model
for the system is chosen which can be any of the
general models.
4. Planning: The project is reviewed and the next phase
of the spiral is planned [1].

99

under which the system would produce win-lose or loselose outcomes for some stakeholders.
3. Identify and Evaluate Alternatives: Solicit
suggestions from stakeholders, evaluate them with respect
to stakeholders' win conditions, synthesize and negotiate
candidate win-win alternatives, analyze, assess, resolve
win-lose or lose-lose risks, record commitments and areas
to be left flexible in the project's design record and life
cycle plans.
4. Cycle through the Spiral: Elaborate the win conditions
evaluate and screen alternatives, resolve risks, accumulate
appropriate commitments, and develop and execute
downstream plans [8].

3.5 Extreme Programming
An approach to development, based on the development
and delivery of very small increments of functionality. It
relies on constant code improvement, user involvement in
the development team and pair wise programming . It can
be difficult to keep the interest of customers who are
involved in the process. Team members may be unsuited
to the intense involvement that characterizes agile
methods. Prioritizing changes can be difficult where there
are multiple stakeholders. Maintaining simplicity requires
extra work. Contracts may be a problem as with other
approaches to iterative development.

Fig. 7 Spiral Model of the Software Process[1].

 WinWin Spiral Model
The original spiral model [Boehm 88] began each cycle of
the spiral by performing the next level of elaboration of
the prospective system's objectives, constraints and
alternatives. A primary difficulty in applying the spiral
model has been the lack of explicit process guidance in
determining these objectives, constraints, and alternatives.
The Win-Win Spiral Model [Boehm 94] uses the theory
W (win-win) approach [Boehm 89b] to converge on a
system's next-level objectives, constraints, and
alternatives. This Theory W approach involves identifying
the system's stakeholders and their win conditions, and
using negotiation processes to determine a mutually
satisfactory set of objectives, constraints, and alternatives
for the stakeholders. In particular, as illustrated in the
figure, the nine-step Theory W process translates into the
following spiral model extensions:
1. Determine Objectives: Identify the system life-cycle
stakeholders and their win conditions and establish initial
system boundaries and external interfaces.
2. Determine Constraints: Determine the conditions

Fig. 8 The XP Release Cycle

 Extreme Programming Practices
Incremental planning: Requirements are recorded on
Story Cards and the Stories to be included in a release are
determined by the time available and their relative priority.
The developers break these stories into development
"Tasks".
Small Releases: The minimal useful set of functionality
that provides business value is developed first. Releases of
the system are frequent and incrementally add
functionality to the first release.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Simple Design: Enough design is carried out to meet the
current requirements and no more.
Test first development: An automated unit test
framework is used to write tests for a new piece of
functionality before functionality itself is implemented.
Refactoring: All developers are expected to re-factor the
code continuously as soon as possible code improvements
are found. This keeps the code simple and maintainable.
Pair Programming: Developers work in pairs, checking
each other’s work and providing support to do a good job.
Collective Ownership: The pairs of developers work on
all areas of the system, so that no islands of expertise
develop and all the developers own all the code. Anyone
can change anything.
Continuous Integration: As soon as work on a task is
complete, it is integrated into the whole system. After any
such integration, all the unit tests in the system must pass.
Sustainable pace: Large amounts of over-time are not
considered acceptable as the net effect is often to reduce
code quality and medium term productivity.
On-site Customer: A representative of the end-user of the
system (the Customer) should be available full time for the
use of the XP team. In an extreme programming process,
the customer is a member of the development team and is
responsible for bringing system requirements to the team
for implementation.

1.
2.
3.

4.
5.

XP and agile principles
Incremental development is supported through small,
frequent system releases.
Customer involvement means full-time customer
engagement with the team.
People not process through pair programming,
collective ownership and a process that avoids long
working hours.
Change supported through regular system releases.
Maintaining simplicity through constant refactoring of
code [1].


1.
2.
3.
4.
5.

Advantages
Lightweight methods suit small-medium size projects.
Produces good team cohesion.
Emphasises final product.
Iterative.
Test based approach to requirements and quality
assurance.


1.

Disadvantages
Difficult to scale up to large projects where
documentation is essential.
Needs experience and skill if not to degenerate into
code-and-fix.
Programming pairs is costly.

2.
3.

4.

100

Test case construction is a difficult and specialized
skill [6].

4. Conclusion and Future Work
After completing this research , it is concluded that :
1. There are many existing models for developing
systems for different sizes of projects and
requirements.
2. These models were established between 1970 and
1999.
3. Waterfall model and spiral model are used commonly
in developing systems.
4. Each model has advantages and disadvantages for the
development of systems , so each model tries to
eliminate the disadvantages of the previous model
Finally, some topics can be suggested for future works:
1.

2.

3.

Suggesting a model to simulate advantages that are
found in different models to software process
management.
Making a comparison between the suggested model
and the previous software processes management
models.
Applying the suggested model to many projects to
ensure of its suitability and documentation to explain
its mechanical work.

REFERENCES
[1] Ian Sommerville, "Software Engineering", Addison
Wesley, 7th edition, 2004.
[2] CTG. MFA – 003, "A Survey of System Development
Process Models", Models for Action Project: Developing
Practical Approaches to Electronic Records Management
and Preservation, Center for Technology in Government
University at Albany / Suny,1998 .
[3] Steve Easterbrook, "Software Lifecycles", University
of Toronto Department of Computer Science, 2001.
[4] National Instruments Corporation, "Lifecycle Models",
2006 , http://zone.ni.com.
[5] JJ Kuhl, "Project Lifecycle Models: How They Differ
and When to Use Them",2002 www.businessesolutions.com.
[6] Karlm, "Software Lifecycle Models', KTH,2006 .
[7] Rlewallen, "Software Development Life Cycle
Models", 2005 ,http://codebeter.com.
[8] Barry Boehm, "Spiral Development: Experience,
Principles, and Refinements", edited by Wilfred J.
Hansen, 2000 .
Nabil Mohammed Ali Munassar was born in Jeddah, Saudi
Arabia in 1978. He studied Computer Science at University of
Science and Technology, Yemen from 1997 to 2001. In 2001 he

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
received the Bachelor degree. He studied Master of Information
Technology at Arab Academic, Yemen, from 2004 to 2007. Now
rd
he Ph.D. Student 3 year of CSE at Jawaharlal Nehru
Technological University (JNTU), Hyderabad, A. P., India. He is
working as Associate Professor in Computer Science &
Engineering College in University Of Science and Technology,
Yemen. His area of interest include Software Engineering, System
Analysis and Design, Databases and Object Oriented
Technologies.
Dr.A.Govardhan: received Ph.D. degree in Computer Science
and Engineering from Jawaharlal Nehru Technological University
in 2003, M.Tech. from Jawaharlal Nehru University in 1994 and
B.E. from Osmania University in 1992. He is Working as a
Principal of Jawaharlal Nehru Technological University, Jagitial. He
has published around 108 papers in various national and
international Journals/conferences. His research of interest
includes Databases, Data Warehousing & Mining, Information
Retrieval, Computer Networks, Image Processing, Software
Engineering, Search Engines and Object Oriented Technologies.

101

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Extracting Support Based k most Strongly Correlated Item
Pairs in Large Transaction Databases
S Roy1 and D K Bhattacharyya2
Department of Information Technology, North Eastern Hill University,
Umshing, Shillong 793022, Meghalaya, INDIA

1

2

Department of Computer Science & Engineering, Tezpur University,
Napaam, 784 028, Assam, INDIA

Abstract
Support confidence framework is misleading in finding
statistically meaningful relationships in market basket data. The
alternative is to find strongly correlated item pairs from the
basket data. However, strongly correlated pairs query suffered
from suitable threshold setting problem. To overcome that, top-k
pairs finding problem has been introduced. Most of the existing
techniques are multi-pass and computationally expensive. In this
work an efficient technique for finding k top most strongly and
correlated item pairs from transaction database, without
generating any candidate sets has been reported. The proposed
technique uses a correlogram matrix to compute support count of
all the 1- and 2-itemset in a single scan over the database. From
the correlogram matrix the positive correlation values of all the
item pairs are computed and top-k correlated pairs are extracted.
The simplified logic structure makes the implementation of the
proposed technique more attractive. We experimented with real
and synthetic transaction datasets and compared the performance
of the proposed technique with its other counterparts (TAPER,
TOP-COP and Tkcp) and found satisfactory.
Keywords: Association mining, correlation coefficient,
correlogram matrix, top-k correlated item pairs.

1. Introduction
Traditional support and confidence measures [17] are
insufficient at filtering out the uninteresting association
rules [1]. It has been well observed that item pairs with
high support value may not imply statistically highly
correlated. Similarly, a highly correlated item pair may
exhibit low support value. To tackle this weakness, a
correlation analysis can be used to provide an alternative
framework
for
finding
statistically
interesting
relationships. It also helps to improve the understanding of
meaning of some association rules. Xiong et. al.,
introduced the notion of strongly correlated item pairs in
their work TAPER [2,15], which retrieves all strongly
correlated item pairs from transaction database based on
user specified threshold . A number of techniques have
already been proposed [3, 12, 13, 15, 16] to handle this
problem. However, setting up an appropriate value for  is

the most challenging task, which requires a prior
knowledge about the data distribution. To address this
issue an alternative top-k correlated-pairs query problem
has been introduced recently to mine k topmost strongly
correlated pairs instead of computing all strongly
correlated pairs based on  [14]. Top-k query could play a
major role in answering how sales of a product is
associated to sales of other product which in turn may
help in designing sales promotions, catalog design and
store layout. Besides providing a statistical meaning to the
traditional association mining problem, top-k query could
be helpful in efficient finding of co-citation and term
occurrence during document analysis. Current research on
computational biology reveals that a simple pair-wise
correlation analysis may be helpful in finding new genegene relationship [8] which again in turns useful in
discovering gene regulatory pathways or gene interaction
network. Functional relationship [9, 10] between pairs of
genes based on gene expression profiles and their changes
in different diseases and conditions may be indicative in
determining disease mechanism for diseases like cancer.
Recently, a number of techniques have been proposed to
compute top-k correlated pairs. Existing techniques
require multi passes over the database which is too costly
for large transaction database. It would be more effective
if one can develop an algorithm, which extracts top-k
strongly correlated item pairs using single pass over the
database and without generating large tree or candidate
itemsets.
This paper presents a one pass technique k-SCOPE (kStrongly COrrelated item Pair Extraction) which extracts
top-k strongly correlated item pairs in only single scan
over the database and without generating any candidate
sets. A preliminary version of this work can be found in
[7]. k-SCOPE uses a correlogram matrix for capturing the
support of all the 1- and 2-itemsets. Later, it generates a
list of k top most strongly correlated item pairs from the
matrix. The performance of the proposed technique has

102

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

been found satisfactory in comparison to other
counterparts, in light of several real and synthetic
transaction datasets.
The rest of the paper is organized as follows: section 2
reports the background of the work and also discusses
some of the related works in section 3. The proposed
technique is described in section 4 & 5. Section 6 shows
the performance evaluation of the proposed technique and
finally in section 7, the concluding remarks are given.

2. Background
Association mining [1] is a well studied problem in data
mining. Starting from market basket data analysis, now it
spreads its spectrum of applications in different domains
like machine learning, soft-computing, computational
biology and so on. Standard association mining technique
is to extract all subsets of items satisfying minimum
support criteria. Unlike traditional association mining, the
all-pair-strongly correlated query is to find a statistical
relationship between pairs of items from transaction
database. The problem can be defined as follows.
Definition 1: Given a user-specified minimum correlation
threshold  and a market basket database with I={I1 I2,
I3,…. IN, } set of N distinct items and T transactions in
database D is a subset of I, a all-strong-pairs correlation
query finds collection of all item pairs (Ii, Ij) with 
correlations above the threshold . Formally, it can be
defined as:
SC ( D,  )  ( I i , I j ) | ( I i , I j )  I , I i  I j   ( I i , I j )    (1)

To determine appropriate value of , a prior knowledge
about data distribution is required. Without specific
knowledge about the target data, users will have
difficulties in setting the correlation threshold to obtain
their required results. If the correlation threshold is set too
large, there may be only a small number of results or even
no result. In which case, the user may have to guess a
smaller threshold and do the mining again, which may or
may not give a better result. If the threshold is too small,
there may be too many results for the users; too many
results can imply an exceedingly long time in the
computation, and also extra efforts to screen the answers.
An alternative solution to this problem could be to change
the task of mining correlated item pairs under prespecified threshold to mine top-k strongly correlated item
pairs, where k is the desired number of item pairs that have

103

largest correlation values. The problem of top-k
correlated- pairs query problem can be defined as follows:
Definition 2: Given a user-specified k and a market basket
database with I={I1 I2, I3,…. IN } set of N distinct items
and T transactions in database D is a subset of I, a top-k
correlated-pairs query finds the ordered list of k item pairs
with top most  correlations. Formally, it can be defined
as:

 ( I i , I j )...( I i  k , I j  k ) |  ( I i , I j )  ...  (2)
TK ( D , k )  

   ( I i  k , I j  k )   ( I i  k 1 , I j  k 1 ) 
Next we discuss Pearson correlation measure in order to
compute the correlation coefficient between each item pair.

2.1 Support based Correlation Coefficient 
In statistics, relationships among nominal variables can be
analyzed with nominal measures of association such as
Pearson's correlation coefficient and measures based on
Chi Square [5]. The correlation coefficient [5] is the
computational form of Pearson's correlation coefficient for
binary variables. An equivalent support measure based 
correlation coefficient computation technique has been
introduced in [2, 15] to find correlation of item pairs in a
transaction database based on their support count. For any
two items Ii and Ij in a transaction database, the support
based  correlation coefficient can be calculated as:

 (I i , I j ) 

Sup(I i , I j )  Sup(I i ) * Sup(I j )
Sup(I i ) * Sup(I j ) *(1 Sup(I i ))* (1 Sup(I j ))

(3)

where Sup(Ii), Sup(Ij) are the support of item Ii and Ij and
Sup(Ii, Ij) is the joint support count of (Ii, Ij).
Adopting the support measures, used in traditional
association mining technique for computing correlation
coefficient , the task of top-k correlated-pairs finding
from transactional database is to generate a sorted list of k
pairs in the order of  from the database. An illustration of
the top-k correlated-pairs query problem has been depicted
in Fig 1. The input to this problem is a market basket
database containing 8 transactions and 6 items. The value
of k is set to 7 as input. Since the database has six items,
there are 6C2 = 15 item pair for which correlation
coefficient  is to be calculated. To compute  (4,5) using
equation (3), we need the single element support
Sup(4)=4/8 and Sup(5)=3/8 and joint support
Sup(4,5)=3/8, in order to compute exact correlation
(4,5)=0.77. Finally the pairs are ordered based on the
value of  and a list of k sorted pairs are generated as
output of the problem.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Top-k Correlated-Pairs Query
Input:
a) Market Basket
TID

Items

1

1,2,4,5,6

2

2,4

3

2,3,6

4

1,2,4,5

5

1,3,6

6

2,3

7

1,3

8

1,2,3,4,5

Pair
{1,2}
{1,3}
{1,4}
{1,5}
{1,6}
{2,3}
{2,4}
{2,5}
{2,6}
{3,4}
{3,5}
{3,6}
{4,5}
{4,6}
{5,6}

Support
0.37
0.37
0.37
0.37
0.25
0.37
0.5
0.37
0.25
0.12
0.12
0.25
0.37
0.12
0.12

Corr
-0.44
-0.66
0.25
0.6
0.06
-0.44
0.57
0.44
-0.14
-0.77
-0.46
0.06
0.77
-0.25
-0.06

Output
{4,5}
{1,5}
{2,5}
{1,4}
{1,6}
{3,6}

Fig 1. Illustration of top-k correlated pairs query problem

Next we discuss and analyze few of the promising
techniques on top-k strongly correlated item pair findings.

3. Related Works
Extraction of top-k correlated-pair from large transaction
database has gained considerable interest very recently.
Top-k problem is basically an alternative solution for the
all-pair strongly correlated pairs query problem. A very
few techniques have been proposed so far to address the
problem of answering top-k strongly correlated pairs
query. A brief discussion on different key techniques has
been presented below.

3.1 TAPER
TAPER [15] is a candidate generation based technique for
finding all strongly correlated item pairs. It consists of two
steps: filtering and refinement. In filtering step, it applies
two pruning techniques. The first technique uses an upper
bound of the  correlation coefficient as a coarse filter.
The upper bound upper((X,Y)) of  correlation coefficient
for {X, Y} as follows:
Sup ( Y )
Sup ( X )

possible item pairs, TAPER applies second pruning
technique based on the conditional monotone property (1D) of the upper bound of the  correlation coefficient. For
an item pair {X,Y}, if upper bound is less than , then all
the item pairs involving item X and the rest target items
having support less than Y will also give upper bound less
than .

{2,4}

b) k =7

(X,Y) upper((X,Y))=

104

1  Sup ( X )
1  Sup ( Y )

If the upper bound of the  correlation coefficient for an
item pair is less than the user-specified correlation
threshold, right way the item pair is pruned. In order to
minimize the effort for computation of upper bound of all

In other way, for item pair {X,Y}, if sup(X)>sup(Y) and
fix item A, the upper bound upper((X,Y)), is monotone
decreasing with decreasing support of item Y. Based on
that 1-D monotone property, straightway one can avoid
such computation of upper bound for other items. In the
refinement step, TAPER computes the exact correlation
for each surviving pair and retrieves the pairs with
correlations above .
Discussion
TAPER is candidate generation based, all strongly
correlated item pair finding technique.
It is well
understood that TAPER in its original form cannot find
top-k item pairs. TAPER suffers from drawbacks of
candidate generation step. It is well known that, in
comparison to single element item sets, usually the two
element candidate sets are huge. The upper bound based
pruning technique is very effective in eliminating such
large number of item pairs during candidate generation
phase. However, when database contains large number of
items and transactions, even testing those remaining
candidate pairs is quite expensive.

3.2 TOP-COP
TOP-COP [11] is an upper bound based algorithm for
finding top-k strongly correlated item pairs and extended
version of TAPER. TOP-COP exploits a 2-D monotone
property of the upper bound of  correlation coefficient
for pruning non-potential item pairs i.e. pairs which do not
satisfy the correlation threshold . The 2-D monotone
property is as follows:
For a pair of items (X,Y), if Sup(X)>Sup(Y) and fix item
Y, the
upper((X,Y)) is monotone increasing with
decreasing support of item X. Based on the 2-D monotone
property a diagonal traversal technique, combined with a
refine-and filter strategy has been used to efficiently mine
top-k strongly correlated pairs.
Discussion
Like TAPER, TOP-COP is also a candidate generation
based technique. The 1-D monotony property, used in
TAPER provides a one dimensional pruning window for
eliminating non-potential item pairs. Moving one step
further, TOP-COP exploits the 2-D monotone property,

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

which helps further in eliminating non-potential pairs from
two dimensions instead of one dimension. Compare to 1-D
monotone based pruning, the 2-D pruning technique is
more effective in eliminating large number of item pairs
during candidate generation phase. Like TAPER, TOPCOP also starts with sorted list of items based on support
in non-increasing order, which need a scanning of the
database once for creating such list. Since it is candidate
generation based technique and having structural
similarity with TAPER, it also suffers from the drawbacks
of expensive testing of remaining candidates after pruning
and filtering steps.

3.3 Tkcp
Tkcp [14], an FP-tree [4] based technique, for finding topk strongly correlated item pair. The top-k strongly
correlated item pairs are generated without any candidate
generation. Tkcp includes two sub processes: (i)
construction of the FP-Tree, and (ii) computation of
correlation coefficient of each item pairs using the support
count from FP-tree and extraction of all the top-k strongly
correlated item pairs based on correlation coefficient value
. The efficiency of FP-Tree based algorithm can be
justified as follows: (i) FP-Tree is a compressed
representation of the original database, (ii) the algorithm
scans the database twice only and (iii) the support value of
all the item pairs is available in the FP-Tree.
Discussion
Although the algorithm is based on efficient FP-tree data
structure, yet it also suffers from the following two
significant disadvantages.
(i) Tkcp constructs the entire FP-tree with initial support
threshold zero. The time taken to construct such huge
FP-tree is quite large..
(ii) Moreover, it also requires large space to store the
entire FP-Tree in the memory; particularly when the
number of items is very large.
The techniques discussed above are either generates a
large number of candidates or generates large tree. They
also need multiple passes over the entire the database. It
will be more expensive when the database contains large
numbers of transactions or rows. The next section
discusses an efficient one pass top-k correlated pairs
extraction technique that addresses the shortcomings of
the algorithms reported above.

105

4. Correlogram matrix based technique
The problem of finding support based top-k strongly
correlated item pairs basically is a problem of computing
the support count of 1- and 2- element item sets and uses
the count to calculate  (correlation coefficient) of all the
item pairs and extracts the k most strongly correlated pairs.
A correlogram matrix based technique has been discussed
in this section for capturing frequency count of 1- and 2element item sets for finding support based top-k strongly
correlated item pairs from transaction database using
single scan over the entire database and without generating
any candidates.
Next we provide the background of the technique.

4.1 Correlogram Matrix
A co-occurrence frequency matrix of size: n(n+1)/2,
where, n is the number of items present in the database.
Each cell of the matrix contains the frequency of cooccurrence of item pairs. Item pairs are specified by row
index and column index of the cell. For example, to
specify the frequency of co-occurrence of item pair {4, 5},
corresponding to sample market basket dataset depicted in
Fig 2 (a), the content of the cell (4,5) in the matrix (see
Fig 2(b)) with an index of row 4 and column 5 will
indicate the co-occurrence frequency of the item pairs {4,
5}.
Transaction

1
2
3
4
5
6
7
8

1
2
2
1
1
2
1
1

2
4
3
2
3
3
3
2

4

5

6
4
6

5

3

4

Item

6

5

Fig 2. (a) Sample market basket

1
Frequency of
2
itemset {3}
3
4
5
6

1

2

3

4

5

6

5

3

3

3

3

2

6

3

4

3

2

5

1

1

2

4

3

1

3

1
3

Fig 2. (b) Sample correlogram matrix

Co-occurrence
frequency
of
item pair {4, 5}

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

On the other hand, the diagonal cells having same indices
i.e. row and column indices are same, specifies the
occurrence frequency of the 1- item set. In Fig 2.(b), the
cell (3, 3) indicates the occurrence frequency of the single
itemset {3}.

4.2 Construction Correlogram Matrix
To construct the correlogram matrix, we visualize the
situation as graph. All the items participated in a particular
transaction are considered as nodes. As the items are
appeared in the transaction in a lexicographical order, so
we can say that they form a directed graph involving all
those items as nodes of the graph. All the items are linked
by a single link or edge. Thus, there is only one directional
path exists between any two nodes. To illustrate the fact
let us consider the transaction number four in Fig 2.(a),
where item number 1, 2, 4 and 5 participated in the
transaction. To count the co-occurrence frequency of all
the item pairs participated in a particular transaction; we
count the links among all the pairs of nodes and
correspondingly increments the content of a cell in the
correlogram matrix with index from both the participating
nodes. Thus, if we consider the above example, we
increment the content of cell (1, 2), (1, 4), (1, 5), (2, 4), (2,
5) and so on. We also increment the count of first node of
a pair i.e. during increment of the count for pair (1, 2), we
also increment the content of the cell (1, 1). The intension
behind such increment is to keep track of the frequency of
occurrence of 1-itemset. Thus by following this procedure,
one can construct the correlogram matrix by scanning the
database once only.

4.3 Extracting top-k strongly correlated item pairs
From the correlogram matrix it is very simple to extract
the support of 1- and 2-itemsets. Using these support
counts, next we computed the correlation coefficient of all
the item pairs using equation (3) and created a sorted list
of top-k item pairs based on their correlation coefficient.
The advantages of this technique can be stated as:
 It is scalable in terms of number of database instance,
since it is one pass.
 No requirements for candidate generation;
 Unlike other techniques discussed so far, it requires only
one scan over the database;
 It gives a facility of interactive mining, i.e. compute the
correlogram matrix once and generate different top-k list
based on different k values.
 Since it is memory based, it can be found very fast, and
 Easy to implement due to its simplified logic structure.

106

5. k-SCOPE: The Algorithm
The stepwise algorithmic representation of the proposed
approach (see Fig 3) has been presented in this section.
The algorithm accepts the market-basket database i.e. D
and k as input and it generates list of top-k strongly
correlated item pairs, L, as output. Step 1 is dedicated to
the first phase of the approach, i.e. construction of the
correlogram matrix using single scan of the original
database. In step 2a, the correlation coefficient of each
item pair is computed and in step 2b, top most k correlated
item pairs are extracted and added to the top-k list. Top-k
list L is a sorted list (descending order) of item pairs based
on the correlation coefficient. For any pair whose
correlation coefficient less than the k-th pair’s correlation
coefficients are straightway pruned. Otherwise, it updates
the list by eliminating the k-th pair and inserting the new
pair in its appropriate position in the list. Finally, the
algorithm returns top-k list L.
Input : D // Transaction database
k
// No. of strongly correlated pairs
Output:
L // Sorted list of k most strongly correlated item pairs
k-SCOPE Algorithm:
L= 
1. Generate Correlogram Matrix from D
2. For each item pair (i, j)  D do
a. Compute Pearson Correlation coefficient,  (i, j) by
using support count from the correlogram matrix.
b. If | L | < k then
L = L  (i, j)
Else
i. Sort the list L in descending order based on 
of each pair.
ii. If  (i, j)  D such that  (i,j) ≥  (L[k]) then
Begin
L = L - L[k]
L = L  (i, j)
End
3. Return L
Fig 3. k-SCOPE Algorithm

5.1 Analysis of k-SCOPE algorithm
In this section, we analyze the proposed technique in terms
of completeness, correctness and the computation savings.
5.1.1 Completeness and Correctness
Lemma 1: k-SCOPE is complete i.e. k-SCOPE finds top-k
strongly correlated pairs.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Proof: Since k-SCOPE is based on exhaustive search and
computes correlation coefficients of all pairs without
pruning any item pair, so, k-SCOPE extracts k top most
strongly correlated item pairs based on the value . This
fact ensures that k-SCOPE is complete in all respects.
Lemma 2: k-SCOPE is correct i.e. correlation coefficients
of the extracted pairs are the k top most correlation
coefficients.
Proof: The correctness of k-SCOPE can be guaranteed by
the fact that, k-SCOPE calculates exact correlation of each
pair present in the database and creates a sorted list
(descending order) of item pairs based on the correlation
coefficient and discards all those pairs whose correlation
coefficient lower than the k-th pair’s correlation
coefficient.
5.1.2 Space Complexity
We have considered the modified version of TAPER to
generate top-k strongly correlated pairs, as TAPER in its
original form unable to do so.
TAPER and TOP-COP needs memory space for keeping
top-k list and support count of all items and also to store a
huge number of candidates item pairs, depending on the 
upper bound value. TOP-COP maintains a matrix for
keeping the pruning status of all item pairs out of n item,
which in turn occupies memory space of order (n2). Tkcp
creates an entire FP-tree in the memory with initial support
threshold zero (0), which is normally very huge when the
number of transactions as well as the dimensionality is
large and also depends on the number of unique patterns
of items in the database. Sometimes it is difficult to
construct such tree in the memory. However, k-SCOPE
always requires a fix memory of size, n*(n+1)/2, for n
dimensional market basket database to construct
correlogram matrix and array of size k to store top-k
strongly correlated item pairs. The total space requirement
could be:
Spacek-SCOPE = O(n*(n+1)/2)+O(k)
5.1.3 Time Complexity
The computational cost of k-SCOPE consists of two parts:
Correlogram matrix construction cost (CCM) and cost for
extraction of top-k strongly correlated item pairs (CEX).
(a) Construction of correlogram matrix: Let us
consider that the database contains T number of
transactions and maximum N number of items in each
transaction. So, to scan the database once it requires
(T*N) times. For storing and updating support count in
correlogram matrix with respect to each transaction it
requires to find out the all pairs of combinations of the
items present in that transaction. Thus, the time

107

requirement for updating the count is N2. The total time
complexity for construction of correlogram matrix could
be : CCM =O(T*N2) .
(b) Extraction of top-k strongly correlated item pairs:
Since for calculating the correlation of each pair, kSCOPE has to traverse the correlogram matrix once,
thus the time requirement for computing correlation
coefficient of all item pairs with n numbers of item, is
O (n*(n+1)/2)  O(n2 ). In order to create the top-k list,
for each item pair it compares the correlation
coefficient () of the new pair with (k-1)th pair in the
list. If  of new pair is greater than the k-th pair, then
the k-th pair is eliminated from the list and new pair is
inserted and placed in the list according to the
descending order of the . Thus, for placing a new pair
it requires at most k times comparison and swapping.
Since, the problem is to find k top most item pairs out
of n(n-1)/2 item pairs, thus considering worst case
scenario, the time requirement for creating list of top k
item pair can be denoted as:
CEX = O(n2 )+O(k*(n*(n-1))/2).
Thus the total cost incurred by k-SCOPE is:
COSTk-SCOPE = CCM + CEX
= O(T*N2)+ O(n2 )+ O(k*(n*(n-1))/2)
= O(T*N2)+ O(n2 )+ O(k*n2)
The computational cost of TOP-COP and TAPER
algorithms are almost similar, except the cost of
computing the exact correlations for remaining candidates,
which may be less in case of TOP-COP, as it prunes more
number of non-potential pairs based on 2-D monotone
property. The cost of TOP-COP algorithm includes
following parameters:
COSTTOP-COP = CSort +CBound +CExact + Ck-list
Where CSort, CBound, CExact and Ck-list are cost of creating
sorted list of items on non-increasing order of support,
cost of computing upper bounds, cost of computing exact
correlation of remaining pairs and k-top list maintenance
cost respectively. On elaborating and simplifying the
above cost parameters it could become:
COSTTOP-COP = O(n log n) +O(n2) + O(n2) + O(k2)
However, the above cost model, does not consider the cost
of scanning the database. It requires one scan for creating
the initial sorted itemlist and at least another whole scan
(when any hash based data structure is used) of the
database for computing exact correlation of existing pairs
after pruning. On incorporating such cost it would be:

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

COSTTOP-COP = O(T*N)+O(n log n) + O(T*N)+O(n2) +
O(n2) + O(k2)
 2*O(T*N)+O(n log n) + 2*O(n2) + O(k2)
Similarly the cost of Tkcp algorithm could be modeled as:
COST Tkcp = CSort +CD_Sort +CFP + Ck-list
= (O(T*N)+O(n log n)) +O(T*N2)+ (O(T*N)+
CFPTree) +(O(n)* CCond_base+O(P*k2))
where CSort is the cost of creating initial sorted list of items
based on support by one pass of the database, CD_Sort is the
cost incurred during sorting the database based on
descending order of item support and CFP is the total cost
of creating FP-tree. Creation of complete FP-tree requires
one complete scan over the database and cost of creating
pattern tree (CFP_Tree). Computing correlation of each pair
and for maintaining the k-top list it requires additional cost
CCond_base for creating of conditional pattern base (P) for
each item. As the cost of scanning a database is much
larger than the other computational parameters, the
computational savings of k-SCOPE will be quite large
(O(T*N)) when the number of records in a transaction
database is very high.

108

by the original author. Since performance of Tkcp highly
dependent on FP-tree implementation, we adopted third
party FP-tree implementation [6] to avoid implementation
bias.
Since, TAPER in its original form cannot generate top-k
list, we modified TAPER, so that it can generate such topk strongly correlated item pair list. As TAPER is
dependent on the correlation threshold , in order to
generate same result by modified TAPER we set the 
with the correlation coefficient of the k-th pair from the
top-k list generated by k-SCOPE. Ideal  values for
modified TAPER for different datasets are presented in
Table 3.
Table 1 : Synthetic Dataset
Data Set
T10I400D100K

No of
Transaction
100,000

No of
Items
400

Avg size of
transaction
10

No of
Patterns
20

T10I600D100K

100,000

600

10

20

T10I800D100K

100,000

800

10

20

T10I1000D100K

100,000

1000

10

20

T10P1000D100K

100,000

1000

10

1000

Table 2 : Real Dataset

6. Performance Evaluation
The performance of k-SCOPE is evaluated in comparison
to its other counterparts, and tested in light of synthetic as
well as real-life datasets. Several synthetic datasets
generated according to the specifications given in Table 1
for testing purpose. The synthetic datasets were created
with the data generator in ARMiner software
(http://www.cs.umb.edu/~laur/ARMiner/) which also
follows the basic spirit of well-known IBM synthetic data
generator for association rule mining. The size of the data
(i.e. number of transactions), the number of items, the
average size and number of unique patterns in transactions
are the major parameters in the synthesized data
generation.
We also used real life Mushroom dataset from UCI ML
repository(http://www.ics.uci.edu/~mlearn/MLRRepository.html
), Pumsb from IBM. Pumsb is often used as the
benchmark for evaluating the performance of association
mining algorithms on dense data sets. The Pumsb data set
corresponds to binarized versions of a census data set from
IBM (available at http://fimi.cs.helsinki.fi/data/) is used
for the experiments (see Table 2).
We used Java for implementation of k-SCOPE and
modified TAPER. We used code of TOP-COP as provided

Data Set
(Binarized)
Mushroom

No of
Transaction
8124

No of
Items
128

Source
UCI

Pumsb

49046

2113

IBM Almaden

Table 3: Suitable  value for different dataset

Next we present our experimental results over the
different real and synthetic datasets.

6.1 Experimental Results
Performances of all the algorithms were compared in
terms of execution time for different values of k. In case of
Tkcp, it consumes maximum time compared to other two
techniques, since Tkcp generates entire FP-Tree with
initial minimum support value zero. As a result it has been

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

found too time consuming to construct and parse the tree
in the memory, especially when the number of items is
large. It has been observed that Tkcp cannot perform when
number of items is more then 1000. In case of
T10P1000D100K dataset, Tkcp failed to mine, due to
large number of items and unique pattern. From the
performance graph it could be easily observed that
modified TAPER (TAPER in graph is represents the
modified TAPER) performs much better then TOP-COP,
even though TOP-COP is an improved and modified
version of TAPER. It happens because of use of efficient
hash data structure, which is lacking in original TOP-COP
implementation. This is further indicates that performance
of correlation mining algorithms could be improved
through efficient implementation. However, in all cases, kSCOPE exhibits comparatively better performance than
modified TAPER, TOP-COP and Tkcp (see Fig 4 & 5).
With the decrease in , the running time requirements of
modified TAPER also increases, since low  value
generates large number of candidate sets. Similarly, TOPCOP also exhibits an exponential performance graph in
increasing number of items. But k-SCOPE and Tkcp
maintains stable running time in different datasets, since
both algorithms are independent of . It further confirms
the fact that like Tkcp, k-SCOPE is also robust with
respect to input parameter k.

6.4 Scalability of k-SCOPE
The scalability of k-SCOPE algorithm with respect to the
number of transactions and number of items in the
databases is shown in Fig 6. In this experiment, we used
ARMiner to generate synthetic datasets. We generated
four data sets with the number of transactions ranges from
1,00,000 to 5,00,000, keeping number of items as 1000 to
test the scalability in terms of increasing number of
transactions. In order to test the scalability in terms of
number of items, we generated another five transaction
datasets with number of items ranges from 15000 to
10,000 keeping number of transaction equal to 1,00,000. It
has been observed that, the execution time increases
linearly with the increase of the number of transaction and
items at several different top-k values. Fig 6 reports the
scalability test results for k equals to 500 and 2500. From
the graph it is clear that the performance of k-SCOPE is
insensitive to different k values .Thus k-SCOPE is highly
robust in handling large transaction databases for different
values of k.

7. Conclusion
An efficient correlogram matrix based technique, kSCOPE, has been presented in this paper to extract top-k

109

strongly correlated item pairs from large transaction
database. The technique is capable to generate top k
strongly correlated item pairs just by scanning the
database once. It captures the support count of all the
items pairs and stored it in the correlogram matrix. Later,
stored support counts are used to compute correlation
coefficient all the item pairs and extract k most strongly
correlated pairs. Advantage of k-SCOPE is that, it also
supports interactive mining. Experiments have shown that
k-SCOPE is faster than other counter- parts.

References
[1] J Han and M. Kamber, Data mining Concepts and
Technique, Morgan Kaufmann Publishers, San Francisco,
CA, 2006.
[2] H Xiong, S Shekhar, S., P-N Tan, V Kumar, Exploiting a
Support-based Upper Bound of Pearson's Correlation
Coefficient for Efficiently Identifying Strongly Correlated
Pairs. Proceedings of SIGKDD’04, pp 334-343, 2004
[3] Z He, S Deng, and X Xu, An FP-Tree Based Approach for
Mining All Strongly Correlated Item Pairs, LNAI 3801, pp.
735 – 740, 2005
[4] Han, J., Pei, J., Yin, J, Mining Frequent Patterns without
Candidate Generation, Proceedings of SIGMOD’00, pp 1-12,
2000.
[5] T Henry, Reynolds. The Analysis of Cross-classifications.
The Free Press, New York, 1977
[6] C. Borgelt, An implementation of the fp-growth algorithm.
Workshop Open Source Data Mining Software (OSDM'05,
Chicago, IL), pp. 1-5, 2005.
[7] S Roy and D K Bhattacharyya, Efficient Mining of Top-K
Strongly Correlated Item Pairs using One Pass
Technique,Proc. of ADCOM,pp. 416-41, IEEE 2008.
[8] W P Kuo et.al, Functional Relationships Between Gene Pairs
in Oral Squamous Cell Carcinoma, Proc. of AMIA
Symposium, pp.371-375, 2003
[9] K Donna, Slonim, From patterns to pathways: gene
expression data analysis comes of age, Nature Genetics
Supplement, vol 32, pp. 502-508, 2002
[10] A.J. Butte & I S Kohane, Mutual information relevance
networks: functional genomic clustering using pairwise
entropy measurements, Pac. Symp. Bio-comput.418429,2000.
[11] H Xiong et.al, Top-k - Correlation Computation,
INFORMS Journal on Computing, Vol. 20, No. 4, pp.
539552,Fall 2008
[12] L Jiang et. al., Tight Correlated Item Sets and Their
Efficient Discovery, LNCS, Vol 4505, Springer Verlag 2007
[13] S Li, L Robert, L S Dong, Efficient mining of strongly
correlated item pairs, Proc. of SPIE, the International Society
for Optical Engineering,ISSN 0277-786X.
[14] Z He, X Xu, X Deng, Mining top-k strongly correlated item
pairs without minimum correlation threshold, Intl. Journal of
Knowledge-based and Intelligent Engineering Systems 10,
IOS Press, pp 105-112, 2006.
[15] H Xiong et.al.(2006), TAPER: A Two-Step Approach for
All-Strong-Pairs Correlation Query in Large Databases,
IEEE Trans. On Knowledge and Data Engineering, vol. 18
no. 4, pp. 493-508.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[16] S Roy and D K Bhattacharyya, SCOPE: An Efficient One
Pass Approach to find strongly Correlated Item Pairs, Proc.
of ICIT08,pp. 123-126, IEEE CS Press,2008.
[17] R Agrawal , T. Imielinski, A. N. Swami. 1993. Mining
association rules between sets of items in large databases.
Proc. ACM SIGMOD Internat. Conf. Management Data,
ACM Press, New York, 207–216.

Swarup Roy did his M.Tech. in Information Technology and
pursuing his Ph.D in Comp Sc & Engg. from Tezpur University.
Presently he is an Assistant Professor in the department of
Information Technology at North Eastern Hill University, Shillong.
He was awarded with gold medal for securing first potion in
M.Tech. His research interest includes Data mining and
Computational Biology. S Roy has published a number of papers
in different refereed Int’l. Conf. Proc. / Journal and also authored a
book. He is a reviewer of an international journal.
Dhruba K Bhattacharyya did his Ph D in Computer Science in the
field of Information security and Error Correction & Detection in
1999 from Tezpur University. Presently he is Professor and Head
in the department of Computer Science and Engineering of Tezpur
University. Prof Bhattacharyya has more than 100 research
publications in the Int'l. Journals and refereed Conference
Proceedings and also he has written/co-edited five books. His
research interests include Data Mining, Network Intrusion
Detection and Content based Image Retrievals. He is a
PC/Advisory Committee member of several International
Conferences.

110

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Fig 4: Execution time comparison on Synthetic dataset

Fig 5: Execution time comparison on Real dataset

Fig 6: Scalability of k-SCOPE algorithm.

111

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

The Use of Underwater Wireless Networks in Pisciculture at
Amazon
Isadora Santos1, Gleyson Souza2 and Mauro Margalho3
1,2,3

Centro de Ciências Exatas e Tecnologia, Universidade da Amazônia
Belém, Pará, Brazil

Abstract
The past decades have seen a growing interest in underwater
wireless communications researches, but this faces many
challenges, specially through physical processes that cause
impact in this communication technique.
Despite this, underwater wireless networks seems to be a good
solution for water quality monitoring in pisciculture tanks, since
this service requires a lot of time and manpower. The Amazon
region has many resources to increase pisciculture development
so the idea of making this service automatic is very promising.
In this paper we aim to analyze the performance of this network
by simulation, in order to check the viability of the underwater
wireless networks in pisciculture activity at Amazon.
Keywords: underwater wireless, Amazon, pisciculture, acoustic
network, simulation.

1. Introduction
The Amazon is known worldwide by its biodiversity and
water availability. The Amazon River basin is the largest
in the world, occupying an approximated area of
7.008.370 km2, with nearly 60% located in Brazil [1]. The
importance of these water resources is mainly for fishing
and navigation.
It’s estimated a range of three thousand species of fish in
this region [2] and a high rate of deforestation due to
conversion of forest to pasture lands and agriculture.
Nowadays these data are highly relevant because
of the high demand for alternative livelihood activities that
require little deforestation. One of these activities is the
fish farming or pisciculture, as it is called the fish
cultivation, mainly from fresh water, which may be
ornamental or sustainable and generate jobs and finances
to the population. This makes this activity a great social
and economical option for this region.
However, this activity needs supporting
technology, in order to have a water quality monitoring at
the farms, as it has a great influence on growth and
survival of fish [3] and it is too vulnerable to pollution
caused by industrial and urban waste, and the use of
pesticides and fertilizers.

There are many methods to monitor water
quality; many of these manuals use specific equipments
for each quality factor, as thermometers, Secchi disks, and
conductivity measurer, among others [3, 4]. But because
methods are manual they require much time and
manpower. So, a promising solution to this monitoring
activity and data collection would be through sensors
adjoined to underwater wireless networks technology or
underwater acoustic networks, as it called the underwater
data communication. It has been studied for decades and is
getting stronger due to tests that have been done.
The perspective of making this monitoring
service automatic will open a range of improvements and
growth possibilities for pisciculture activity, therefore it
constitutes an important motivation factor for this
research.
The purpose of this paper is to analyze by simulation the
performance of underwater wireless networks at
Amazonian fishing farm scenery in order to assess its
implementation viability.
As underwater acoustic networks researches are
not recent, many studies have expanded this knowledge,
its main features, disadvantages and challenges [5, 6, 7].
Recent developments about this theme led to studies of
sensor technologies [8, 9, 10] and simulations using many
tools that evaluate this technology performance [11, 12].
The main difference between surveyed papers and this one
is the simulation scenario and the motivation, because
there has not been found studies about this subject that had
been realized in Brazil with emphasis on Amazon, neither
with the same purpose.
Besides this session, this paper is divided into four more
sessions. The second session presents a study of the art
state of underwater wireless communications referencing
some related works. The third session presents the
simulation details. The fourth session will discuss the case
study, scenario and results analysis. And the fifth session
presents the conclusion of this research.

112

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

2. Underwater Acoustic Networks
An underwater wireless communication way, called
underwater acoustic network, is a research growing field
in the last decades. It occurs because of the growing need
of
ocean
security
applications
development,
oceanographic data collect, navigation assistance and
environmental monitoring [8].
Those networks are generally constituted establishing a
link between instruments such as autonomous underwater
vehicles or sensors that may connect to a surface station
which can further be connected to radio-frequency links.
This design creates an environment where scientists can
extract real-time information [6].
An example of an underwater wireless network
environment can be observed in Fig.1.

Figure 1. Example of an Underwater Acoustic Network environment.

One of the first uses of this technique occurred during
the II World War, in 1945, when the United States
developed a telephone which communicated with
submarines [8, 13].
The underwater wireless communication is provided
through acoustic waves, but this is not the only way of
transmitting underwater signal. The electromagnetic
waves suffer from high absorption in water and propagate
only at extremely low frequencies and elevated
transmission power [14]. The optical waves, instead,
suffer with high scattering. That fact makes the acoustic
transmission the best solution.
Despite this, the development of systems based on
wireless communication underwater faces significant
challenges due to the fact that the propagation
characteristics in the underwater environment are too
variable [7], in other words, different environments suffer
different physical processes, so, an application that works
effectively at an ambient may fail completely in other.
Other challenges faced by this network are the limited
bandwidth, delay propagation, high bit error rates and
connectivity loss in some areas [5, 6, 8].
But it is expected for those networks that it can provide
the control data exchange, video, images and voice. In

113

order to reach this aim a lot of researches are being
developed currently focused on efficient communication
algorithms, modulation schemes, appropriated protocols
for its characteristics and mobile underwater
communication techniques [13].

3. Performance Analysis by Simulation
Due to the cost, lack of equipments and difficulties to
perform tests at the ocean, simulations using suitable
softwares have been the most used option on researches
about underwater wireless networks.
The simulations allow a faster performance evaluation,
for various protocols, and get really close of real results,
besides that there are a lot of tools for this purpose.
The simulation tool used on this research was Network
Simulator (NS-2) also used at [12]. NS-2 has a great
acceptation level by international scientific community, it
is developed in C++ and TCL languages and it has an
open source, hence it is in constant development process
for seeking improvements. More information about this
tool can be found at [15].
Associated to NS-2 a patch for dynamic libraries use
has been installed. Among other features, it allows the use
of different modules in simulation without recompile NS
[16]. Also, it was installed NS-MIRACLE (MultiInteRfAce Cross-Layer Extension library for the Network
Simulator) which is a library package that increases the
functionalities of NS-2 and makes easier the simulations
of moderns communication systems because it permits the
coexistence of various modules at the same protocols
stack. The download can be done at the page [17]. The
dei80211mr library [18] which has also been installed
provides an 802.11 implementation for NS-2 and
aggregates too many features.
Those cited changes were necessary to enable the
underwatermiracle module installation, essential for this
paper. This ns-miracle module allows a detailed
simulation from underwater channel, with the
implementation of different MAC protocols and two PHY
layer models. The documentation and download about this
module are at [19].
All those tools were developed by SIGNET Lab of
Padovia University at Italy [20].

4. Case Study
4.1 Scenario Description
The used scenario in this simulation is based in a
pisciculture tank with 4.500m2 and 1,5m depth, since such
tanks can vary from a few square meters until many

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

hectares, and can be rectangular or square [21]. Normally
the small tanks (between 100m2 and 500m2) are used for
subsistence fishing farm, or domestic, the tanks with
hectares size are most difficult to manage, so they are
rarely used. And for commercial use, for big companies,
the tanks normally measure between 1.000m2 and
5.000m2. The depth varies between 0.5m and 2.0m.
The water quality monitoring is provided by three fixed
sensors located at the coordinates: node 1 (X=5m; Y=5m),
node 2 (X=5m; Y=35m) and node 3 (X=105m; Y=5m), as
shows Fig. 2. Those distances were configured so that
makes perceptible the performance difference according to
distance variation.

114

the viability of underwater acoustic communications for
pisciculture water monitoring.
The evaluated performance factors were: blocking
probability (Graphic 1), receiving power by distance
(Graphic 2), Signal-Noise ratio by distance (Graphic 3)
and throughput (Graphic 4).
From the graphic 1 in Fig. 3, blocking probability can
be calculated. This factor is obtained with the division
reason of the dropped packets number by the received
packet number. The worst efficiency was in node 3 with
approximated value of 5% of blocking probability, this is
considered so low that does not compromise the data
transmission required at the scenario.

Figure 2. Example of the simulated scenario.

The sensors capture data relative to factors such as pH,
temperature, dissolved oxygen, electric conductivity and
transparency and send them in broadcast, using Constant
Bit Rate (CBR) traffic. At this simulated scenario the
traffic begins at node 1, configured as the only
transmission node, and it is received by nodes 2 and 3.
After the informations are received, actions would be
taken to normalize the water quality, e.g. devices can be
activated to discharge chemical products in the water, or
alarms can sound.
Considering that those data require low bandwidth to
be sent, the power transmission was set at the band of
1.0x1010 and the packet send rate as 3.000 bytes, because
it was considered enough to send those data. The
frequency was set at the range of 8 KHz that is
characteristic of underwater wireless networks.
Those used values in simulation were configured to
this scenario believing that if good results are obtained,
certainly good results will be obtained for smallest
scenarios.
Title: The title should be centered across the top of the
first page and should have a distinctive font of 18 points
Century. It should be in a bold font and in lower case with
initial capitals.

4.2 Results
From the obtained simulation results, graphics were
generated to prove the model characteristics and analyze

Figure 3. Graphic 1 – Blocking Probability

Another evaluated factor was the reception power rate
related with the node distance, which can be observed at
the second graphic in Fig. 4. It was observed that
increasing the distance between the nodes decreases the
reception power rate. However, as this scenario size is
considered big in comparison with a normal pisciculture
environment, such as the distance between nodes, this
reduction of reception power rate is not enough to affect
negatively the data transmission quality.

Figure 4. Graphic 2 – Reception Power by distance

The Signal-Noise ratio (SNR) in reason of
distance, presented in graphic 3 at Fig. 5, shows that the
greater the distance between nodes, the smaller the signalnoise ratio.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Figure 5. Graphic 3 – Signal-Noise Ratio by distance

Finally, graphic 4 at Fig. 6 shows the throughput at the
two receptors nodes in the simulation instants. It could be
verified that on both nodes the throughput oscillated
between 3.000bps and 3.500bps, which is really close to
the 3.000 bytes rate established. At the second node,
which has the smallest distance, the throughput was
constant in almost all instants, what differs to the third
node, most distant, that obtained a biggest variation on
throughput. Even so, this rate is considered viable to this
application.

In a region like Amazon that has resources to
greatly increase the pisciculture development, the proposal
to automate this service is very promising, as it would
enhance fish production and would improve not only the
region’s economy but also the population livelihood that
depends of the activity.
With the growing interest in underwater wireless networks
by researchers, many improvements are still expected for
this technology, which will encourage, in the future,
applications even better, such as marine species
recognition, transmission by submarine pictures or video,
which would contribute not only to the pisciculture
activity but with other underwater applications.

References
[1]

[2]

[3]
[4]
[5]

[6]

[7]

[8]

[9]
Figure 6. Graphic 4 – Throughput
[10]

5. Conclusions
This paper presented a performance analysis for the
proposed use of underwater wireless networks at
pisciculture tanks for water quality monitoring.
The obtained results by simulation demonstrates
the viability of the proposal, since the used scenario has
dimensions considered large for this type of activity,
therefore in smallest scenarios, the results tend to be
better.
Because the data to be collected do not require
high transmission power and neither high bandwidth, the
proposal appears to be suitable for automation of water
monitoring in pisciculture activity, as it needs a lot of time
and manpower because the measurements are performed
more than once a day.

115

[11]
[12]
[13]
[14]

[15]

[16]

[17]

Ministério do Meio Ambiente, "Plano Nacional de Recursos
Hídricos." [Online]. Available: http://pnrh.cnrh-srh.gov.br/.
[Accessed: Apr. 11, 2010]
Ministério do Meio Ambiente, "Agência Nacional de Águas."
[Online].Available:http://www2.ana.gov.br/Paginas/portais/ba
cias/amazonica.aspx. [Accessed: May 11, 2010]
V.K. Silva, M.W. Ferreira, and P.V. Logato, "Qualidade da
água na Piscicultura.", unpliblished.
J.S. Vieira, J. Sampaio, G. Gomiero, P. Vieira, and R. Logato,
"Aspectos gerais da piscicultura," 1991.
M. Stojanovic, "Underwater wireless communications: current
achievements and research challenges," IEEE Oceanic
Engineering Society, 2006, pp. 2-7.
E. Sozer, M. Stojanovic, and J. Proakis, "Underwater acoustic
networks," IEEE Journal of oceanic engineering, vol. 25,
2000, pp. 72-83.
J. Preisig, "Acoustic Propagation Considerations for
Underwater
Acoustic
Communications
Network
Development," Society, 2006, pp. 1-5.
I. Akyildiz, D. Pompili, and T. Melodia, "Underwater acoustic
sensor networks: research challenges," Elsevier’s Ad Hoc
Networks, vol. 3, 2005.
I.F. Akyildiz, D. Pompili, and T. Melodia, "Challenges for
Efficient Communication in Underwater Acoustic Sensor
Networks.pdf," SIGBED Review.
J. Heidemann, W. Ye, J. Wills, A. Syed, and Y. Li, "Research
Challenges and Applications for Underwater Sensor
Networking," Information Sciences.
J. Han, J. Huang, and M. Ran, "Design and simulation of an
underwater acoustic network," Wireless, Mobile and Sensor
A.F. III and M. Zorzi, "Modeling the Underwater Acoustic
Channel in ns2," Work.
M. Stojanovic, "Underwater acoustic communications,"
ELECTRO-IEEE CONFERENCE-, 1995.
A.P. Miguens, "Noções sobre geração, transmissão,
propagação e recepção das ondas eletromagnéticas e
acústicas," Navegação: A Ciencia e a Arte, vol. III, 2000, pp.
1221-1264.
NS2,
"User
Information."
[Online].
Available:
http://nsnam.isi.edu/nsnam/index.php/User_Information.
[Accessed: May 12, 2010]
Università degli Studi di Padova, "A patch for effectively
using Dynamic Libraries in NS-2." [Online]. Available:
http://www.dei.unipd.it/wdyn/?IDsezione=3970.
[Accessed:
May 12, 2010]
Università degli Studi di Padova, "NS-MIRACLE: MultiInteRfAce Cross-Layer Extension library for the Network

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[18]

[19]

[20]

[21]

Simulator."
[Online].
Available:
http://www.dei.unipd.it/wdyn/?IDsezione=3966.
[Accessed:
Apr. 14, 2010]
Università degli Studi di Padova, "dei80211mr: a new 802.11
implementation
for
NS-2."
[Online].
Available:
http://www.dei.unipd.it/wdyn/?IDsezione=5090.
[Accessed:
Apr. 14, 2010]
Università
degli
Studi
di
Padova,
"Underwater
Communications."
[Online].
Available:
http://www.dei.unipd.it/wdyn/?IDsezione=5216.
[Accessed:
May 12, 2010]
Università degli Studi di Padova. Department of Information
Engeneering,
"SIGNET."
[Online]
Available:
http://telecom.dei.unipd.it/labs/read/3/. [Accessed: May 12,
2010]
E. Carballo, A.V. Eer, T.V. Schie, and A. Hilbrands,
Piscicultura de água doce em pequena escala, Agromisa
Foundation, 2008.

Isadora Mendes dos Santos is a student of Computer Science
Bachelor’s degree at the University of Amazônia, Brazil. She
participated in some research projects including the CODPON
networks (Continous Displacement Plan Oriented Network). Her
research interests include computer networks, underwater acoustic
networks, network performance evaluation.
Gleyson Correa de Souza is a student of Computer Science
Bachelor’s degree at University of Amazônia, Brazil. Research
interest: computer networks.
Mauro Margalho Coutinho is a lecturer and researcher in the
Center of Science and Technology, at University of Amazônia,
Brazil. Mauro Margalho is Msc in Computer Science (emphasis in
Network Computer) by Federal University of Pernambuco and PhD
in Electrical Engeneering (emphasis in Telecommunication
Systems) by Federal University of Pará. Currently holds the
position of coordinator of Computer Science Bachelor's degree
Course at the University of Amazon and member of the editorial
board of the TRAÇOS journal as well as the head of computer
network department from Assembléia Legislativa do Pará
(Legislative Power from Pará). Professor Mauro Margalho
participated in several research projects, highlighting the creation
of the CODPON networks (Continous Displacement Plan Oriented
Network) project. Areas of interest include digital TV, mobile
computing, computer networks and accessibility.

116

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

117

Properties Based Simplification of 2D Urban Area Map Object
Jagdish Lal Raheja and Umesh Kumar
Central Electronics Engineering Research Institute (CEERI)/ Council of Scientific and Industrial Research (CSIR), PilaniRajasthan, 333031, India

Abstract
For a long time, Geo-spatial information was printed on paper
maps whose contents were produced once for specific purposes
and scales. These maps are characterized by their portability,
good graphic quality, high image resolution and good placement
of their symbols and labels. These maps have been generated
manually by cartographers whose work was hard and fastidious.
Today, Computers are in use to generate the map as per
requirement called the cartographic generalization. The purpose
of cartographic generalization is to represent a particular
situation adapted to the needs of its users, with adequate
legibility of the real situation and its perceptional congruity with
the representation. Interesting are those situations which, to
some degree, vary from the real situation in nature. In this paper,
a simple approach is presented for the simplification of contour,
roads and building ground plans that are represented as 2D line,
square and polygon segments. As it is important to preserve the
overall characteristics of the buildings; the lines are
geometrically simplified with regard to geometric relations. It
also holds true for contour and road data. In this paper, an
appropriate transformation and visualization of contour and
building data is presented.

Keywords: Cartographic Generalization, GIS, Map, Object,
Simplification.

1. Introduction
In natural environment human senses perceive
globally, without details. Only when one has a particular
interest he or she observes details. It is a natural process;
otherwise abundance of details would lead to confusion.
For similar reasons, in the process of cartographic
generalization many details may be omitted which are of
least interest to the user at that context or these are merger
together for the sake of map space. The concept of
generalization is ubiquitous in nature and so similarly in
cartography. It is basically a process of compilation of
map content. The actual quantitative and qualitative basis
of cartographic generalization is determined by the map
purpose and scale, symbols, features of the represented
objects, and other factors. One of the applications of
cartographic
generalization
is
simplifying
and
representing map objects for display at low resolution
devices like mobile and GPS system.

Figure 1: (a) Elimination, (b) Simplification, (c) Aggregation, (d) Size
reduction, e) Typification, (f) Exaggeration, (g) Classification and
symbolisation, (h) Displacement, (i) Refinement.

The figure 1 shows different various operations involved
in cartographic generalization. In this paper, we focus
solely on simplification.

2. Cartographic Generalization and Some
Related Work
Cartography is a very old scientific discipline, and
cartographic generalization dates back to the times of the
first cartographic representation. It is a domain of active
research and consequently many techniques for
cartographic generalization have been developed:
pragmatic bottom-up approaches use specific algorithms
for different generalization tasks. Then there are more
holistic ideas, using top-down strategies, to strive at an
integrated solution of this complex task. For building
simplification, Staufenbiel [1] developed an algorithm by
deriving a set of rules of what to do with building facades
too small to be represented. He came up with a detailed
processing scheme which later was implemented in the
CHANGE software. Similar concepts are currently being
implemented in many GIS products. Similarly the
algorithm developed as part of the AGENT project aims at
a concurrent solution of several competing aims: squaring,
rectification, and enlargement of minimal narrow objects
inside the building. The approach presented there is
similar to methods used for the reconstruction of

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

parametric buildings in aerial images. The simple
simplification process simplify the object at a level after a
level it will not produce better level of simplification. The
basic simplification processes are effective only till a
certain level, after which further improvement in results
cannot be obtained, whereas the technique presented here
provides the user options to simplify the object at various
levels.

3. Multiple Representation v/s Cartographic
Generalization
Multilevel representation databases can quickly create
maps at different scales (from predefined representations).
However, they can not be considered an alternative to
cartographic generalization [2]. A major drawback of
multiple representation is that it often generates
voluminous databases and restricts the cartographic
products to the predefined scales. Many research projects
have addressed multiple representation in multi-scale
databases, in which every object has different
representations at different scales. In these databases, an
object has a detailed representation at a high scale, as well
as a simplified representation at a low scale. This
approach reduces the complexity of multiple
representation, but does not solve the problem completely.

4. Simplification
When a map is represented graphically and the
representation scale is reduced then some area features
will become too insignificant to be represented, i.e. the
object can be regularly or irregularly shaped. In this paper
a simple approach has been presented to simplify contour
lines and building plans to make the map more accurate
and understandable. In this paper simplification for
contour lines and buildings has been defined.
Vertex Simplification: Line simplification is also
referred to as vertex simplification. Often a vertex has too
much resolution for an application, such as visual displays
of geographic map boundaries or detailed animated
figures in games or movies. That is, the points on the
vertexes representing the object boundaries are too close
together for the resolution of the application. For example,
in a computer display, successive vertices of the vertex
may be displayed at the same screen pixel so that
successive edge segments start, stay at, and end at the
same displayed point. The whole figure may even have
all its vertices mapped to the same pixel, so that it appears
simply as a single point in the display. Different
algorithms for reducing the points in a vertex to

118

approximate the original within a specified tolerance have
been purposed. Most of the algorithms work in any
dimension since they only depend on computing the
distance between points and lines. Thus, they can be
applied to arbitrary 2D or 3D curves by sampling a
parametric curve at regular small intervals. Vertex
reduction is a brute-force algorithm for vertex
simplification. Here a vertex is discarded when its
distance from a prior initial vertex is less than some
minimum tolerance ε > 0. More Specifically, after fixing
an initial vertex V0, successive vertices Vi are tested and
rejected if they are less than ε away from V0. But, when a
vertex is found that is further away than ε, then it is
accepted as part of the new simplified vertex, and it also
becomes the new initial vertex for further steps of
simplification. Thus, the resulting edge segments between
accepted vertices are longer than the ε in length. This
procedure is easily visualized as follows: [3]


V4

V3


V5
V7

V6

V1
V0
V

V2
Keep Vertex

Original Polyline

Discard Vertex

Reduced Polyline

Figure 2: Vertex Reduction used for Simplification

This is a fast first order O(n) algorithm. It should be
implemented comparing squares of distances with the
squared tolerance to avoid expensive square root
calculations.
Here Douglas-Peucker (DP) approximation has
been used to simplify the vertex in the map. This
algorithm has O(nm) as worst case time, and O(nlogm)
expected time, where m is the size of the simplified
vertex. Note that this is an output dependent algorithm,
and will be very fast when m is small. The first stage of
the implementation does vertex reduction on the vertex
before invoking DP approximation. This results in the
well known vertex approximation/simplification algorithm
which not only provides high quality results but is also
very fast. Here the map information is provided by a
server and the tolerance value is input by the user. The
following steps are used to simplify the vertexes in the
map.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Algorithm:
Step [1]: Generate the Map.
Step [2]: Get the tolerance value from the user.
Step [3]: Calculate the number of objects or buildings on
the screen.
Step [4]: Call the DOUGLAS PEUKAR recursive
simplification routine to simplify the vertex.
Step [5]: Generate the simplified Map.
A sample contour data set from Survey of India (SoI)’s
stored in Open Geo-spatial Consortium (OGC)’s
Geography Markup Language (GML) format is used for
simplification of line and buildings. Using the following
step the map can be simplified for the level of tolerance.

119

The algorithm treats individual polygons one after the
other. It works locally, trying to replace polygon sides
which are shorter than the critical length. These sides are
substituted according to some given rules, depending on
the geometry of the adjacent building sides. This results in
a simple, but not necessarily correct model of the original
situation. Thus, in an adjustment process, the original
building shape is adjusted to the new building model. The
advantage of this procedure is the fact that the rules can be
simple.
Feature

Feature
Code

Major
Code

Minor
Code

Category

Condition

Road

RD

11

1100

Highway

Metalled

11

1300

Motorway

Metalled

11

5300

Motorway

Unmetalled

11

6100

Pack-track
plains

Unmetalled

11

6410

CartTrack
Plains

Unmetalled

11

6500

Foot-path
Plains

Unmetalled

15

3000

Motorway

Metalled

11

6300

Track
follows
Streambed

Unmetalled

37

2100

Residential

Block
Village/Town

37

1100

Residential

Hut
Temporary

37

1200

Residential

Hut
Permanent

37

1400

Residential

Hut Oblong
Permanent

37

3020

Religious

Chhatri

37

3040

Religious

Idgah

37

3100

Religious

Temple

Figure 3: Input for Vertex Simplification

Building

Ntdb:00
000001

Figure 4: Output file after Simplification process with tolerance value=5

Building Simplification: The main constraints involved
in the simplification of building ground plans are
preservation of right angles, co linearity and parallelism.
Apart from preservation, enhancement of the
characteristics may even be necessary. The deciding factor
in simplification is the minimal length of a façade that can
be represented at a certain scale. All the sides of building
smaller than critical lengths have to be replaced.

and coarse, as they yield only approximate values, which
are refined in the adjustment process. Furthermore,
additional parameters can also be introduced in the

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

adjustment, like the fact that the building size has to be
preserved.
The first step of the algorithm results in a
simplified ground plan, which is used as a model. This
model is described in terms of building parameter that is
in turn adjusted to the original ground plan in the
subsequent adjustment process. The decision of how to
substitute a short facade depends on the geometry of the
neighboring sides:

120

Step [15]: Generate the final simplified Map.
A sample contour data set from Survey of India (SoI)’s
stored in Open Geo-spatial Consortium (OGC)’s
Geography Markup Language (GML) format is used for
simplification of line and buildings. Using the following
step the map can be simplified for the level of tolerance.

Intrusion / extrusion: the angle between preceding and
subsequent side is approx. 180 Æ. The small side is just
set back to the level of the main facade.
Offset: the angle between preceding and subsequent side
is approx. 0 Æ. The longer one of the adjacent building
sides is extended, and the shorter side is dropped.
Corner: the angle between preceding and subsequent side
is approx. 90 Æ. The adjacent facades are intersected.
Following steps are to be followed for the simplification
of the complete map.
Step [1]: Send a request for the GML to the server.
Step [2]: Generate the Map.
Step [3]: Enter threshold value.
Step [4]: Calculate the number of objects or buildings on
the screen.
Step [5]: Take the first object and follow the following
steps for simplification.
Step [6]: OFFSET ANGLE – First rationalize the building
to remove any offset angle.
Step [7]: Working in clockwise direction, take 3
consecutive points of the building and find the angle
between them.
Step [8]: INTRUSION/EXTRUSION ANGLE – If the
angle is greater than 190 degrees, this indicates the
presence of either a protrusion or a corner in the building.
Step [9]: A decision is made to ascertain whether a corner
or a protrusion has been arrived at.
Step [10]: CORNER – If it’s a corner then we set the
point as the meeting point of the two consecutive edges.
Step [11]: PROTRUSION: we calculate its area and find
out whether it is greater than the threshold area or not. If
not, then the following steps are performed else the
building is left unaltered.
Step [12]: If it’s a protrusion then store all the points in a
temporary array till the angle formed by the 3 points is
180 degrees.
Step [13]: Follow the above steps from (7 to 12) till all the
points are traversed.
Step [14]: Follow the above steps from (6 to 13) till all the
objects are traversed.

Figure 5: Input for Vertex Simplification

Figure 6: Output for Vertex Simplification

Figure 7: Input Building map for simplification process

The above figure 5 is used as input map and output map
has been generated using different threshold values.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Figure 8: output map using threshold value =500

Figure 9: output map using threshold value=1000

4. Conclusion
There are many approaches proposed for the process of
vertex as well as polygon simplification. The technique
proposed here modifies the existing technique to arrive at
a more efficient model. The final map will be more
accurate and understandable.
Acknowledgments
This research is being carried out under the project
activity “Cartographic Generalization of Map Object’
sponsored by Department of Science & Technology
(DST), India. This project is currently underway at
Central Electronics Engineering Research Institute
(CEERI), Pilani, India. Authors would like to thank
Director, CEERI for his active encouragement and
support and DST for the financial support.

References
[1] Robert Weibel and Christopher B. Jones, “Computational
Perspective of Map Generalization”, GeoInformatica, vol. 2, pp
307-314, Springer Netherlands, November/December 1998.

121

[2] Brassel, K. E. and Robert Weibel, “A Review and
framework of Automated Map Generalization”, International
Journal of Geographical Information System, vol. 2, pp 229-224,
1988.
[3] M. Sester, ”Generalization Based on Least Squares
Adjustment” International Archive of Photogrammetry and
Remote Sensing, vol. 33, Netherland, 2000.
[4] Mathias Ortner, Xavier Descombes, and Josiane Zerubia,
“Building Outline Extraction from Digital Elevation Models
Using Marked Point Processes”, International Journal
Computer vision, Springer, vol. 72, pp: 107-132, 2007.
[5] P. Zingaretti, E. Frontoni, G. Forlani, C. Nardinocchi,
“Automatic extraction of LIDAR data classification rules”,
14th international conference on Image Analysis and
Processing, pp 273-278, 10-14 Sept.
[6] Anders, K.-H. & Sester, M. [2000], Parameter-Free Cluster
Detection in Spatial Databases and its Application to
Typification, in: ‘IAPRS’, Vol. 33, ISPRS, Amsterdam, Holland.
[7] Bobrich, J. [1996], Ein neuer Ansatz zur kartographischen
Verdr ¨ angung auf der Grundlage eines mechanischen Federmodells, Vol. C455, Deutsche Geod¨ atische Kommission, M¨
unchen.
[8] Bundy, G., Jones, C. & Furse, E. [1995], Holistic generalization
of large-scale cartographic data, Taylor & Francis, pp. 106–119.
[9] Burghardt, D. & Meier, S. [1997], Cartographic Displacement
Using the Snakes Concept, in: W. F¨ orstner & L. Pl ¨ umer, eds,
‘Smati ’97: SemanticModelling for the Acquisition of
Topographic Information fromImages andMaps’, Birkh¨ auser,
Basel, pp. 114–120.
[10] Douglas, D. & Peucker, T. [1973], ‘Algorithms for the
reduction of the number of points required to represent a
digitized line or its caricature’, The Canadian Cartographer
10(2), 112–122.
[11] Harrie, L. E. [1999], ‘The constraint method for solving spatial
conflicts in cartographic generalization’, Cartographicy and
Geographic Information Systems 26(1), 55–69.
[12] Hojholt, P. [1998], Solving Local and Global Space Conflicts in
Map Generalization Using a Finite Element Method Adapted
from Structural Mechanics, in: T. Poiker & N. Chrisman, eds,
‘Proceedings of the 8th International Symposium on Spatial
Data handling’, Vancouver, Canada, pp. 679–689.
[13] J¨ ager, E. [1990], Untersuchungen zur kartographischen
Symbolisierung und Verdr¨ angung im Rasterdatenformat, PhD
thesis, Fachrichtung Vermessungswesen, Universit¨ at Hannover.

Dr. J. L. Raheja has received his M.Tech from IIT
Kharagpur and PhD degree from Technical
University Munich, Germany. At present he is Sr.
Scientist in Central Electronics Engineering
Research Institute (CEERI), Pilani, Rajasthan, since
2000. His area of
interest is Cartographic
Generalisation, digital image processing and Human Computer
Interface.
Umesh Kumar has obtained M. Tech. from C-DAC
affiliated to GGSIPU New Delhi, India, he is a
Project Assistant in Digital Systems Group of Central
Electronic Engineering Research Institute, Pilani,
Rajasthan, India. His interested areas include
Cartographic Generalization,
Digital
Image
Processing, Human
Machine
Interaction
and
Speech
processing based application development.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

122

A proposed Ontology to support Modeling Diagrams
Nisreen Innab1, Nidal Yousef2, and Mohammad Al-Fayoumi3
1

Computer Information Systems, College of Business Administration
Jeddah ,KSA
2

Information Systems, Isra University
Amman, Jordan

3

Information Systems, King Abdul Aziz University
Jeddah ,KSA

Abstract
This paper investigates ontology. Ontology exhibits enormous
potential in making software more efficient, adaptive, and
intelligent. It is recognized as one of the areas which will bring
the next breakthrough in software development. Ontology
specifies a rich description of the terminology, concepts and
properties explicitly defining concepts. Since understanding
concepts and terms is one of the difficulties in modeling
diagrams, this paper suggests an ontology aiming to identify
some heavily used modelling diagrams concepts to make them
easier to perform
Keywords: Ontology, modeling, concept, requirement

1. Introduction
In systems engineering and software engineering,
requirements analysis encompasses all of the tasks that go
into the instigation, scoping and definition of a new or
altered system. Requirements analysis is an important part
of the system design process, whereby requirements
engineers and business analysts, along with systems
engineers or software developers, identify the needs or
requirements of a client. Once the client's requirements
have been identified, the system designers are then in a
position to design a solution [1].
The requirement phase based on robust conceptual models.
Ontologies are a promising means to achieve these
conceptual models, since they can serve as basis for
comprehensive
information
representation
and
communication.
During requirements stage many modelling can be used
for the similar or different systems. It depends on the
multiple views of the developers and the types of the
systems. Authors of requirements use different
terminology and hence the same term is applied to
different concepts and different terms are used to denote

the same entity. The same semantic of multi concepts may
use in different modelling. For example the concept entity
which is used in (entity) relationships modelling has a
close meaning to the concept (class) which has been used
in unified modelling language. The differences lead to
difficulties of understanding concepts during modelling
and confusion, and diminish exchange of knowledge between developers and domain experts.
Therefore we propose to suggest a framework that aims to
identify some important concepts that are heavily used at
different modelling diagrams, to be easier to perform.
In this paper, we introduce a framework for building and
using ontology for modelling diagrams in order to
standardize their different concepts. We can support
modelling by using ontology (meaning of things), which
helps the software developer and the user of the system to
define and understand the concepts and their definitions
easily.

2. The Proposed ontology
We propose framework that aims to identify some
important concepts that are heavily used at different
modelling diagrams, to be easier to perform.The
framework consist the following stages:We select some of
well-known modelling diagrams of requirements process.
Each selected modelling diagrams has its semantic and
standards (ontology) .We extract and refine the concepts
of those selected modelling diagrams. Then we arrange
each of the extracted concepts according to their frequency
of existing in all the selected modelling diagrams by using
specific program. We specify a collection of concepts that
have the highest frequency use in the selected modelling
diagrams

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Then we emphasize the importance of the thirty highest
frequencies concepts for our results in both approaches by
using percentage technique, which depends on the
proportion of how many concepts of the thirty highest
frequency concepts is part of each modelling diagram
concepts. We choose the first thirty highest frequency
concepts from our results in each approach in order to
limit our study where the frequency was increased steadily
for the first thirty highest frequency concepts. We use
Bunge–Wand–Weber (BWW) representation model for
evaluating, comparing our proposed ontology. BWW is a
well-known model that had been.

3. Reasons for using ontology with modelling
Modelling can be made easier by using ontology. The
reason is that the ontology provides the basic concepts and
their relations that is easy to grasp even for non-experts on
modelling.
Although the concept of ontology has been around for a
long time in philosophy, in recent years it has become
known in the computer world as a machine-readable
vocabulary that is specified with enough precision to allow
differing terms to be precisely related.An ontology defines
the common words and concepts (meanings) used to
describe and represent an area of knowledge. Ontologies
are used by people, databases, and applications that need
to share domain information (a domain is just a specific
subject or area of knowledge, like medicine,
counterterrorism, imagery, automobile repair, etc.)
Ontologies include computer-usable definitions of basic
concepts in a domain and the relationships among them.
Ontologies encode knowledge in a domain and also
knowledge that spans domains. In this way, they make that
knowledge reusable [2]. Ontology shows enormous
potential in making software more efficient, adaptive, and
intelligent. It is recognized as one of the areas which will
bring the next breakthrough in software development. The
idea of ontology has been welcomed by visionaries and
early adopters for example, ontology has been used in
medical informatics studies, and the community produced
popular tools such as Protégé ontology editor. However, it
has failed to appeal to the majority users of the
mainstream, at least until recently. It is said that the idea
was too mysterious for ordinary people to understand.
There is no standard way to do things with ontology, but
so many different proprietary ways. There were not
enough tools for programming ontologies and managing
various aspects of the life cycle of ontologies [3].
We make use of ontology with modelling diagram in this
paper because of its significant nowadays, its improvement
than the past, because there several applications which use
ontology, and the ontology specifies a rich description of
the terminology, concepts relevant to a particular domain

123

or area of interest. Ontologies might be important for
Software Engineers because they have to share their used
previously in systems analysis and design research.
conceptualizations with each other, and with their user
communities.
There are a number of problems ontology solves
particularly well, such as problems with information
integration, model transformation, translation, data
cleansing, search, navigation, text understanding,
document preparation, speech understanding, “active”
menus and forms, question-and-answer issues, etc.
Developers should consider whether there are other
innovative ways of using ontology for solving their
problems. Once developers are comfortable with the value
ontology brings in, they can go ahead and populate the
ontology for the solution.
One of the main difficulties in modelling diagrams
understands concepts and terms by the system developer
and users without complexity and conflicts. To solve
this problem this research proposes to build ontology
and use it during modelling to reduce ambiguity of
modelling diagram concepts.

4. The Framework for building the initial
ontology .
The purpose of this paper is to suggest a framework that
aims to identify some important concepts that are heavily
used at different modelling diagrams, to be easier to
perform. The framework consists of: selecting modelling
diagrams, extracting concepts, found relation between
each concept with all selected modelling diagrams.
Since there is a huge number of modelling diagrams
concepts, we intend to minimize those concepts on a small
number that are rigorously very important and have the
majority used in most of modelling diagrams. Therefore,
we use two approaches to emphasize the significance of
the results and strictly build our ontology on sturdy base.

4.1 Selecting modelling diagrams
In the field of software engineering in particular in
requirement phase, several and different modelling
diagrams are used. We selected 56 diagrams and collected
their definitions from multi recourses [4, 5, 6, 7, 8, 9, 10,
11]. Snapshot of the results of this step were as in table
(4,1)

4.2 Extracting Concepts
For each selected modelling diagram we extract most of
their concepts based on many references that explain,
define each modelling diagram, classify its concepts with

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
Diagram
Name

Diagram Definition

Depicts high-level business processes, including data flow,
or to model the logic of complex logic within a system.It
shows the overall flow of control.
The use-case diagram depicts a collection of use cases,
actors, their associations, and optionally a system
Use Case
boundary box. When modelling requirements a use case
Diagram
diagram can be used to model the context of your system,
indicating the major external entities that your system
interacts with.
A State Machine Diagram models the behaviour of a
single object, specifying the sequence of events that an
object goes through during its lifetime in response to
State
events. A State Machine diagram illustrates how an
Machine
element, often a class, can move between states classifying
Diagram
its behavior, according to transition triggers, constraining
guards, and other aspects of state machine diagrams that
depict and explain movement and behaviour
Table (4.1): Definition of Selected Modelling Techniques and Diagrams
Activity
Diagram

their notation, the relationship between those concepts,
their utilization and the modelling diagram itself [4, 5, 8,
9, 12,13, 14,15, 16, 17, 18, 19, 20]. In the following, we
show snapshot of the table that we construct from this
step.
Diagram

Concepts

Activities, Actions, Action Constraints, Control
Flow, Initial Node, Final Node, Objects and Object
Activity
Flows, data store, Decision and Merge Nodes, Fork
Diagram
and Join Nodes, Expansion Region, Exception
Handlers, Interruptible Activity Region, Partition.
Actors, Use Cases, Name and Description,
Use Case
Requirements, Constraints, Scenarios, Scenario
Diagram
Diagrams, Extending Use Cases, Extension Points,
System Boundary.
States, Initial and Final States, Transitions, State
Actions, Self-Transitions, Compound States, Entry
State Machine
Point, Trigger, Exit Point, Choice Pseudo-State,
Diagram
Junction Pseudo-State, Terminate Pseudo-State,
History States, Concurrent Regions.
Table (4.2): Snapshot for Each Modelling Diagram with its Concepts

Then we define each concept that we arrange in categories
as we show in the previous table without redundancy.
Table (4.3) shows snapshot of the concepts with their
descriptions that we extract from all the previous selected
modelling diagrams.
Concept

Concept Definition

A class that cannot be directly instantiated. A class
Abstract Class
which cannot instantiate objects; it must be
inherited
Activity Final
The end point of an activity diagram
Classification
The assignment of an object to a classifier
A classifier that requests a service from another
Client
classifier.
Person, place, thing. It is an object or concept about
Entity
which you want to store information.
Table (4.3): The Extracted Concepts with their Definitions

124

4.3 Relation between each concept with all selected
modelling diagrams
We found the relation between each concept with all
selected modelling diagrams definitions by using access
programme as a tool. Where we create two tables, the first
one contains the modelling diagrams definitions and the
second table contain all the concepts then, we create a
query to find the number of times (frequency) for each
concept in which it appears in all selected modelling
diagrams definitions.
We show some of the results in table (4.4) which contains
frequency column which indicates number of occurrence
for each concept in all selected modelling diagrams
definitions.
Concept
Frequency
Model
30
System
28
Diagram
25
Element
18
Action
15
Table (4.4): Concepts Relationship with Modelling Diagrams

We notice from the results that there is a different
frequency for each concept. Some have a high frequency
as: model, system, diagram, element, action, object, user,
class, interaction, etc. That means the concepts with high
frequencies are significant as they are related to many
modelling diagrams. Thus we can define it once and use it
in all the selected diagrams.

5. Ontological Analysis
We agree that ontological analysis and evaluation is one of
several approaches that should be used to improve the
modelling diagrams. We evaluate the
results by percentage technique that depends on the
frequency.
We choose the 30 highest frequencies of the results that
shown in table(4.4) to limit our study where the frequency
was increased steadily for the first thirty concepts.
To emphasize the importance of the thirty highest
frequencies concepts for our results we use percentage
technique as follows:
 Identify all the selected modelling diagrams.
 Classify the concepts for each modelling diagram in a
category.
 Then count the concepts for each category
 Demonstrate the thirty highest frequency concepts,
then find and remark if any of those concepts exist in
each category.
 Count remarked concepts for each category.
 Define the proportion.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

According to the results of Table (5.1), the highest
percentage for the frequency of the specific thirty concepts
rate to the number of the concepts of each modelling
diagram is 100% for domain model, dialogue model,
application model, object role modelling, and joint
application development. While the lowest percentage is
for block diagram, function block diagram, and mind map.
The table shows the moderate percentage (50%) is for
composite structure diagram, component diagram,
subsystem diagram, high-level petri nets, and timed petri
nets.
A central idea behind our approach is to identify common
significant modelling concepts by (1) breaking modelling
constructs and model elements down into ontologically
primitive concepts and (2) mapping each concept onto a
common ontology

Concepts (Con.)
Diagram

No.
All
Co
n.

Action

,Actor,

Constraint,

43

No.

Pro

100

30

po-

%

Co

rtio

n.

n

7

7:4

20.

3

6

10:

37.

27

0

Control Flow, Initial Node,
Final Node, Object and Object
Flow, Data Store, Division and
Merge Nodes, Fork and Join
Activity Diagram

Table (5.1) shows the results of the previous steps. For the
first diagram Activity diagram we identify in the third
column a collection of its important concepts as action,
actor, and constraint. Then we set in the fourth column
number of all its concepts that we identify in column three.
We use the category of the highest frequency concepts that
we outline in table (4.4), to search about those specific
concepts if they exist or not in the collection of the
Activity concepts that we show in column three. After
that, we count how many important concepts exist and
write the number in column five. The proportion between
the numbers of Activity concepts (column four) to the
number of specific existing concepts (column five) are
7:34, which present in column six. The proportion 7:34
indicates 20.6% which shows in the last column of the
table.
Indeed, the other modelling diagrams can be recognized in
the same way for Activity diagram.

BWW is a representation model that defines ontological
constructs for information systems. According to these

Nodes,

Expansion

Region,

Exception

Handlers,

Interruptible Activity Region,
Partition, Association, Class,
Association Class, Attribute,
Base Class, Branch,
Final

State,

Symbol,

State,

Transition,

Control,

Thread,

Rendezvous,

Swimlane

,Diagram, Activity, Data.
Actor,

Use

Case,

Description,

Name,

Requirement,

27

10

Constraint, Scenario, Scenario
Diagram, Extending, Extension
Use Case Diagram

 Number of how many concept of the 30 highest
frequency concepts exist in this category : Number of
all concepts for each category.
 Exchange the values of proportion to 100% percentage.

125

Points,

System

Visibility,
Component,

Boundary,

Class,

Property,

Core

Element,

Attribute , Operation , Type,
Description,

Association,

Extend,

Generalization,

Include,

Diagram, Element,

System.
Table (5.1): Evaluate the results by Percentage Technique

6. Comparison with BWW
Given the importance of using and the potential use of
ontologies over the past years, the principal question then
becomes: How do we compare and evaluate different
ontologies for determining their strengths and weaknesses
for the purpose required?
Only limited guidance is provided regarding the selection
and evaluation of ontologies. We use Bung- Wand-Weber
(BWW) model for evaluating, comparing our ontology.
BWW is a well-known model that had been used
previously in systems analysis and design research.

constructs the completeness and efficiency of a
modelling technique can be defined [21]. It defines five
fundamental constructs which are: things, property,
state, transformation, and stable state. A thing is the
existence of a thing in the world. Properties are relations
that map a thing to some values. A stable state is a state
in which a thing will remain unless forced to change by
an external event. Mapping between one state to anther
is called transformation.
The following Table (6.1) present comparison of BWW
constructs with the specific concepts of our results[22, 23,
24, 25, 26].

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Definition of BWW
concepts
The elementary unit in
the BWW ontological
model. The real world
is made up of things.
Things
possess
properties. A property
is modeled via a
function that maps the
thing into some value.
A set of things that can
be defined by their
possessing a particular
set of properties
TOTAL Concepts

BWW

Our
Ontology

Equivalent?

Thing

Object,
Entity

Yes

Property

Attribut
e

Yes

Class

Class

Yes

30

30

25

Table (6.1): Comparison with BWW Constructs

The results of the comparison between the most known
concepts of BWW representation model (30 concepts) and
the most important concepts of our result of our initial
ontology (30 concepts) shows that twenty five concepts
represent 83.33% have the same semantic.
One of the contributions of this comparison is to provide a
clear ontological definition of modelling diagrams
constructs. Our analysis shows that the ontology we are
constructing has some ontological strength as the results
identify the common core constructs of modelling
diagrams (for example, object, attribute, class). The
analysis and evaluation shows that many of our ontology
construct are well matched with the BWW-model, but also
we suggest several concrete improvements in future to our
ontology.

7. Conclusions
The purpose of this paper is to enhance the existing
modelling diagrams which are used during requirement
phase by building ontology which includes defining
terms and classifying them. In order to reduce ambiguity
of modelling diagram concepts, and to understand
concepts and terms by the system developer and users
without complexity and conflicts.
Many modelling can be implemented in various ways.
There are different concepts that the developers and the
customers must learn. The difference of modelling in the
real world splits the developers in different schools; each
one may focus on different aspects of the world and show
that developers understand the world differently. Ontology
can enhances the existing modelling techniques which are
used during requirement phase. In addition, ontology
includes definitions, classifications and formalization of
terms.

126

This paper concentrates on modelling in requirement
phase. Authors of requirements use different terminology
and hence the same term is applied to different concepts
and different terms are used to denote the same entity.
Therefore it leads to difficulties in the understanding of the
concepts and terms by the system developer and users
without complexity and conflicts. One way that provides
support to solve this problem is to build ontology and use
it during modelling.
We argue the constructs of modelling diagrams have to be
communicated using some commonly understood
“concepts.”
FUTURE WORK
In our future research, we recommend to apply the
framework of the proposed ontology with other software
development process. And apply these ideas with the
use of an Arabic ontology.

8.References
[1] Barry Boehm, “A view of 20th and 21st century software
engineering”, Proceedings of the 28th international
conference on Software engineering, Shanghai, 2006,
ISBN:1-59593-375-1, ACM, pp: 12 – 29
[2] Leo Obrst, “Ontologies for Semantically Interoperable
Systems”, CIKM’03, 2003.
[3] Milton, S.K., & Kazmierczak, E., "Enriching the Ontological
Foundations of Modelling in Information Systems",
Proceedings of Workshop on Information Systems
Foundations: Ontology, Semiotics, and Practice, (Ed,
Dampney, C.), 2000, pp: 55-65.
[4] Stephen J. Mellor, “A Comparison of the Booch Method and
Shlaer-Mellor OOA/RD”, by Project Technology, Inc, 1993.
[5] Recker, Jan C. and Indulska, Marta, “An Ontology-Based
Evaluation of Process Modeling with Petri Nets”, IBIS International Journal of Interoperability in Business
Information Systems Vol.2 No.1, 2007:pp. 45-64.
[6] Malcolm Shroff & Robert B. France, “Towards a
Formalization of UML Class Structures in Z”, Computer
Software and Applications Conference, 1997. COMPSAC
'97. Proceedings., pp:646 – 651.
[7] Johannes Koskinen , Jari Peltonen , Petri Selonen , Tarja Systa ,
Kai Koskimies, “Model processing tools in UML”, 23rd
International Conference on Software Engineering, 2001pp:819820.
[8]Yeol Song and Kristin Froehlich, "Entity-Relationship Modeling: A
Practical How-to Guide," IEEE Potentials, Vol. 13, No. 5, 19941995, pp. 29-34.
[9]
Kevin L.Mills, Hassan Gomaa, “Knowledge-Based
Automation of a Design Method of Current Systems”, IEEE
Transaction of Software Engineering, Vol.28. No.3, 2003.
[10] Federico Vazques, “Identification of complete data flow
diagrams “, ACM SIGSOFT Software Engineering Notes,
Vol. 19 , Issue 3, 1994, pp: 36 - 40 .
[11] luciano baresi, mauro pezz`e, “Formal Interpreters for
Diagram Notations”, ACM Transactions on Software

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Engineering and Methodology, Vol. 14, No. 1, 2005, Pages
42–84.
[12] Boris Litvak, “Behavioral Consistency Validation of UML
diagrams”, Proceedings of the First International Conference
on Software Engineering and Formal Methods 2003.
[13] R. Juric and Il-Yeol Song, "The Assessment of Objectoriented Modleing Elements of the UML 1.1" 3rd Biennial
World Conference. on Integrated Design and Process
Technology, 1998.
[14] UML Semantics Appendix M1- UML Glossary version
1.0, 13 January 1997
[15] David N. Jansen, Holger Hermanns, “QoS modelling and
analysis with UML-statecharts: the StoCharts approach”,
ACM SIGMETRICS Performance Evaluation Review,
Vol. 32, Issue 4 2005 pp. 28 – 33.
[16] Jose Galindo, Angelica Urrutia, Ramon A. Carrasco, and
Mario Piattini, “Relaxing Constraints in Enhanced
Entity-Relationship Models Using Fuzzy Quantifiers”,
IEEE Transactions On Fuzzy Systems, vol. 12, no. 6,
2004.
[17] Veda C. Storey, “Comparing Relationships in Conceptual
Modeling: Mapping to Semantic Classifications”, IEEE
Transactions On Knowledge And Data Engineering, vol.
17, no. 11, 2005.
[18] Swathi C . Solsi, Edward L. Jones, “Simple Yet Complete
Heuristics for Transforming Data Flow iagrams into
Booch Style Diagrams”, Ada Letters, Volume XI,
Number 2, 1991.
[19] Kevin L. Mills, Hassan Gomaa, “A Knowledge-Based
Method for Inferring Semantic Concepts from Visual
Models of System Behavior”, ACM Transactions on
Software Engineering and Methodology, Vol. 9, No. 3,
2000, pp. 306–337.
[20] Harald Storrle, “Structured nodes in UML 2.0 activities“,
Nordic Journal of Computing, Vol.11 , Issue 3 2004 pp.
279 – 302.
[21] Ahmad Kayed, Robert M.Colomb, “Using BWW Model
to Evaluate Building Ontologies in CGs Formalism",
Vol. 30, No.5, 2005,pp 379-398
[22] Michael Rosemann1, Jan Recker, Marta Indulska, Peter
Green, “How have Process Modeling Grammars
Developed over Time?”, Proceedings of the 18th
Conference on Advanced Information Systems
Engineering, 2006, pp. 447-464.
[23] Michael Rosemann, Jan Recker, Marta Indulska, Peter
Green, “How have Process Modeling Grammars
Developed over Time?”, Proceedings of the 18th
Conference on Advanced Information Systems
Engineering 2006, pp. 447-464.
[24] Michael Rosemann, Peter Green. “Integrating MultiPerspective Views Into Ontological Analysis”, ICIS 2000
pp. 618-627.
[25] Gretchen Irwin, Daniel Turk, “An Ontological Analysis of
Use Case Modeling Grammar”, Journal of the
Association for Information Systems Vol. 6 No.1,
2005.pp.1-36.
[26] Andreas L. Opdahl, Brian Henderson-Sellers,
“Ontological Evaluation of the UML Using the Bunge–

127
Wand–Weber Model”, Softw Syst Model, 2002 pp. 43–
67.

Nisreen Innab received her B.S. degree in 1997. In 2003,she
earned her High Diploma Degree in Computer Information
Systems, in 2004 she earned Master Degree in Computer
Information Systems. A Ph.D. was received in 2008 in Computer
Information System, she is employed
as full time lecturer, Assistant
Professor and MIS department
Chairperson at College of Buisness
Administration (CBA) in Saudi
Arabia, Jeddah from Oct. 2007 till
now. She published three papers in
International
Conferences.
Her
current research interests are: data
mining, machine learning, modeling
and simulation, ontology, modeling
diagrams.
Nidal Yousef received his B.S.
degree in 1997. In 2001, he earned
his Master degree in Computer
Information System. A Ph.D. was
received in 2008 in Computer
Information System. He joined King
Abdulaziz University, in KSA in
2009, as an Assistant Professor and
in 2010 he moved to Al- Esra
University in Jordan as Assistant
Professor
in the college of
Computing and Information Technology. He has published 4
research papers in international journals and conferences.
Mohammad Al-Fayoumi received his B.S. degree in 1974. In
1977, he earned his Master degree in mathematics, and a
postgraduate diploma in Computer Science was received in
1979. A Ph.D. was received in 1982 in the area of Computing
Science. The last two degrees
were awarded from Bucharest
University; he joined the Yarmouk
University, 1982 in Jordan, as an
Assistant Professor and a Head of
Computer Science Department. In
1986 he moved to Collage of
Business Studies in Kuwait and
then moved back to Jordan in
Applied Science University as
Associate Professor and a Head of
Computer Science Department. In
2005 he moved to the Middle East University for Graduate
Studies in Jordan as an Associate Professor and a Dean of
Information Technology Faculty, he promoted to a professor
rank in August, 2008. Currently, he is a professor and advisor of
graduate studies at King Abdulaziz University, Saudi Arabia. His
research interests include areas of information security,
computer simulation, systems development, e-commerce, elearning and internet security and algorithm analyzes and
design. He has supervised many PhD's and master’s degrees
research thesis and projects of diverse areas. He has published
more than 50 research papers in a multitude of international
journals and conferences, in addition to a nine books in the area
of computer sciences

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Comparison between Conventional and Fuzzy Logic PID
Controllers for Controlling DC Motors
Essam Natsheh1 and Khalid A. Buragga 2
1

Department of Management Information Systems, College of Applied Studies & Community Services, King Faisal University
Hofuf, Al-Hassa 31982, Saudi Arabia
2

Department of Information Systems, College of Computer Sciences & IT, King Faisal University
Hofuf, Al-Hassa 31982, Saudi Arabia


Abstract
Fuzzy logic and proportional-integral-derivative (PID)
controllers are compared for use in direct current (DC) motors
positioning system. A simulation study of the PID position
controller for the armature-controlled with fixed field and fieldcontrolled with fixed armature current DC motors is performed.
Fuzzy rules and the inferencing mechanism of the fuzzy logic
controller (FLC) are evaluated by using conventional rule-lookup
tables that encode the control knowledge in a rules form. The
performance assessment of the studied position controllers is
based on transient response and error integral criteria. The results
obtained from the FLC are not only superior in the rise time,
speed fluctuations, and percent overshoot but also much better in
the controller output signal structure, which is much remarkable
in terms of the hardware implementation.



Keywords: Three-term controller, PID controller, fuzzy systems,
fuzzy logic controller, DC Motors.

1. Introduction
Lotfi Zadeh, the father of fuzzy logic, claimed that many
sets in the world that surrounds us are defined by a nondistinct boundary. Zadeh decided to extend two-valued
logic, defined by the binary pair {0, 1}, to the whole
continuous interval [0, 1], thereby introducing a gradual
transition from falsehood to truth [1].
Fuzzy control is a control method based on fuzzy logic.
Just as fuzzy logic can be described simply as "computing
with words rather than numbers"; fuzzy control can be
described simply as "control with sentences rather than
equations". A fuzzy controller can include empirical rules,
and that is especially useful in operator controlled plants.
A comprehensive review of the classical design and
implementation of the fuzzy logic controller can be found
in the literature [2], [3], [4]. A fuzzy IF-THEN rule-based
system consists of the following modules [5], [6]:





Fuzzification: Converting crisp facts into fuzzy sets
described by linguistic expressions. Membership
functions can be flat on the top, piece-wise linear and
triangle shaped, rectangular, or ramps with horizontal
shoulders.
Inference: The fuzzy IF-THEN rule expresses a fuzzy
implication relation between the fuzzy sets of the
premise and the fuzzy sets of the conclusion. The
following steps describe this process:
1. Matching of the facts with the rule premises
(determination of the degree of firing DOF of the
facts to the rule premises).
2. If the rule contains logic connections between
several premises by fuzzy AND or fuzzy OR the
evaluation is performed by t-norms or t-conorms
(the result gives then the DOF of the facts to the
complete premise).
3. Implication: The next step is the determination of
the individual rule output. The DOF of a rule
interacts with its consequent to provide the output
of the rule. It will be a fuzzy subset over the output
universe.
Aggregation: This process aggregates the individual
rule outputs to obtain the overall system output. It will
be also a fuzzy subset over the output universe (a
union operation yields a global fuzzy set of the
output).
Defuzzification to obtain crisp output (various
defuzzification methods can be used, as, e.g., center
of gravity, bisector of area, and mean of maximum, to
obtain a crisp numerical output value).

A PID-like (proportional plus integral plus derivative,
PID) fuzzy logic controller (FLC), or simply PID-like
FLC, algorithms have been and continue to be a very
active and fruitful research field since Mamdani and
Assilian pioneering work on fuzzy controller in 1974 [3];
the controller is shown in Fig. 1. The impetus behind this

128

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

continuity of the subject lies largely in the fact the
conventional PID algorithms has been successfully used in
the process industries since 1940s [7] and remains the
most commonly used algorithm today, while numerous
application of fuzzy logic control (FLC) have immerged
covering a wide range of practical areas [8] and that many
software and hardware products for fuzzy control have
been commercialized during the last few years.

allows a novice to construct a set of membership functions
for a specific linguistic variable systematically.

2.1 Ideal PID-like FLC
A comprehensive review of the classical design and
implementation of the ideal PID-like FLC can be found in
[3], [6]. The control law can be realized by:
U (k) = F (e (k), se (k), de (k))

Z -1

e (kT)

+

T

+

Z

U (k)
se (kT)

-1



PID

+

1
T

FLC

de (kT)

Fig. 1 PID-like fuzzy logic controller.

Because designing methods of PID-like FLC emulates
human control strategy, their principles are easy to
understand for non-control specialists. During the last two
decades, designing methods of conventional PID-like
controller have been using more and more advanced
mathematical tools. This is needed in order to solve
difficult problems in a rigorous fashion. However, this
also results in fewer and fewer practical engineers who
can understand these design methods. Therefore, practical
engineers who are on the front line of designing consumer
products tend to use the approaches that are simple and
easy to understand. Design method of the PID-like FLC is
just such approaches. The objective of this paper is to
identify and study the designing method of the PID-like
FLC
The remaining of this paper is organized as follows:
Section 2 is presents the designing of the PID-like FLC.
Comparing the performance of conventional PID and PIDlike FLC design methods using second-order armaturecontrolled DC motor and third-order field-controlled DC
motor as a case studies are presented in section 3. Finally,
section 4 presents the conclusion.

2. Designing the PID-Like FLC
In the following section, we propose a design method for a
PID-like FLC. A simple mean for designating membership
functions for the PID-like FLC is presented. This method

129

(1)

where e (k), se (k) and de (k) are error, integral of error
and rate of change in error, respectively; U (k) is the
control action and the function F is the control law that is
described by a rule-base. The reasoning algorithm
translates the set of vague rules into a mapping:
U (k) = f (e (k), se (k), de (k))

U k   K P  e k   K i  se k   K d  de k 
that is similar to the ideal PID control algorithm:

(2)

3

The major problem to this design method is that it is
difficult to write rules for the integral action [9]. Another
problem is integrator windup. Windup occurs when the
actuator has limits, such as maximum speed for a motor.
When the actuator saturates, the control action stays
constant, but the error will continue to be integrated, the
integrator winds up. The integral term may become very
large and it will then take a long time to wind it down
when the error changes sign. Large overshoots may be the
consequence.

2.2 Rule-base Matrix of the PID-like FLC
In the following we shall discuss the nature of the rules
contained in the PID-like FLC rule-base. The typical
response of the second-order and third-order systems is
shown in Fig. 2.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
Fig. 2 The general response of the second-order and third-order systems.

According to the sign and magnitude of error e (k) and its
change de (k), the response plane is roughly divided into
five zones. The index used for identifying the response
zones is defined as [11], [12]:

130

maintained. The rules that belong to this zone
realize meta-rule 1.
To design PID-like FLC, we propose three-dimensional
rule-base matrix described in Table 2, where N, Z, and P
are the linguistic labels negative, zero, and positive of the
term sets error, change of the error, and sum of the error.
Table 2: Rule-base matrix of the PID-like FLC

Z2: e < 0 and de < 0,
Z1: e > 0 and de < 0,
Z4: e > 0 and de > 0,
Z3: e < 0 and de > 0,
Z5: e  0 and de  0.
So, we can identify five main homogenous zones in PIDlike FLC rule-base, as shown in Table 1, where N, Z, and
P are the linguistic labels negative, zero, and positive of
the term sets error, change of the error, and sum of the
error.

N

N

Change of the error
N
Z
Z
Z

P

Z2

N
Z
P

P

P

Z3
Z5

Z1
N

Z

Z4
P

N
Z
P
Sum of the error

N

Z

N
Z
P

N
N
N
Z
N

N
N
N
Z
Z

Change of the error
N Z Z Z P
N N N N Z
N Z Z Z P
Z P P P P
P N Z P N
Sum of the error

P
Z
P
P
Z

P
Z
P
P
P

2.3 Optimizing the Membership Functions

Table 1: State plane of the PID-like FLC rule-base

Error

Error

P

Tang and Mulholand [13] propose the following three
meta-rules:
MR1: If both e (k) and de (k) are zero, then maintain
present control setting.
MR2: If conditions are such that e (k) will go to
zero at a satisfactory rate, then maintain present
control setting.
MR3: If e (k) is not self-correcting, then control action
U(k) is not zero and depends on the sign and magnitude of
e (k) and de (k).
Yager and Filev [6] use these three meta-rules to analyze
the general rule-bases of the FLC as follows:
 In zone 1 and 3 the error is self-correcting and
U(k) is almost zero; that is, the control variable
remains at its present setting. The rules of these
zones realize meta-rule 2.
 In zone 2 and 4 the errors are not self-correcting
and consequently negative and positive,
respectively, control action U (k) applies. The
magnitude of U (k) changes with respect to the
magnitudes of e (k) and de (k). The rules
associated with these zones are related to metarule 3.
 In zone 5 both e (k) and de (k) are close to zero.
The system is in a steady state and U (k) is almost
zero, that is, the present control setting is

In real applications of FLC, the membership functions are
constructed by assembling knowledge from the experts
and then modified by laboriously surveying the control
response of the process. In most control cases, the FLC
cannot be effective without carefully arranging the
membership functions.
In the theoretical analysis of the FLC, the selection of
membership functions does not get much attention from
the majority of researchers. Most use isosceles triangular
functions with equal spans throughout the whole universe
of discourse as membership functions for their FLCs [11],
[12], [17]. The main advantage of choosing this type of
membership function is that it eases the difficulties in
analyzing the structure of the FLC. However, almost all
the applications of FLC adopt non-equal span membership
functions to cope with the real control problems.
Instinctively, the closer the control response to the setpoint
(or normal condition), the narrow the membership
function range should be. For some highly nonlinear
processes a FLC with equal-span triangular membership
function is not adequate to achieve a good control result.

 (x)
negative

zero

1

U x

K x

0

positive

Kx

Ux

x

Fig. 3 Membership functions for fuzzy variable x.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

For fuzzy variable x with universe of discourse [Ux, Ux]
and three fuzzy sets negative, zero, and positive we use the
membership functions shown in Fig. 3 to represent them.
The problem is simplified to be the determination of Kx
point in each fuzzy variable.
To accomplish a better performance and to devise a
systematic method to obtain optimal membership
functions, we propose the following algorithm:
Determine the universe of discourse Ux for each fuzzy
variable;
Initialize Kx value to each fuzzy variable to be Kx = Ux / 2;
Initialize IAE and ITAE to large values;
For i=1 to max number of epochs to refinement all Kx
For j=1 to min number of epochs to refinement one
Kx
Run the experiment and get new_IAE and
new_ITAE ;
If ((new_IAE < IAE) and (new_ITAE < ITAE))
IAE = new_IAE ;
ITAE = new_ITAE ;
Save Kx ;
End if
If ((new_IAE  IAE) and (new_ITAE  ITAE))
Kx = Kx  increase_ratio;
Else
Kx = Kx  decrease_ratio;
End if
End for
End for
We suggest using decrease_ratio and increase_ratio as 0.9
and 1.05 respectively. IAE and ITAE are defined as
follows:


Integral of the absolute of the error (IAE) defined by:


IAE   e t  dt

4

0



The integral of time multiplied by the absolute of
error (ITAE) defined by:


ITAE   t e t  dt

5

0

where e (t) is the measured error. The calculation in the
studies was implemented by substituting an algebraic sum
for the integrals [8]. IAE accounts mainly for error at the
beginning of the response and to a lesser degree for the
steady state duration. ITAE keeps account of errors at the
beginning but also emphasizes the steady state [10].

131

3. Performance Analysis of the PID-Like FLC
3.1 Introduction
Having designed a fuzzy PID-like controller, it is
important to validate its performance and compare it with
conventional PID controllers. Analyzing time responses
usually makes such evaluations. But simply examining the
behavior of a controller is not enough to validate its
performance or prove that it is better or worse than other
controllers are. In the next section, we suggest using two
performance measures with two simulated systems. The
objectives of the simulation are to demonstrate the
feasibility of the fuzzy PID-like design method when
applied to second order systems and third order systems.
Then we compare their performance with the performance
of conventional design method.
In the following section, we present the performance
measures that will be used during this study. In section
3.3, we present the applications that will be used in testing
and analyzing the performance. Section 3.4 presents
implementation technique for the PID-like FLC. The
simulation results of this controller will be presented in
section 3.5.

3.2 Performance Measures
To test our model, we choose to use two performance
measures. These measures will be used in analyzing the
performance of the PID-like FLC. They are:
1. Transient response: One of the most important
characteristics of control systems is their transient
response. The transient response is the response of a
system as a function of time. It can be described in
terms of two factors[18]:
 The swiftness of response, as represented by the
rise-time (Tr).
 The closeness of the response to the desired
response, as represented by the overshoot (Os)
and settling-time (Ts).
2. Error integral criteria: The performance was
evaluated by two frequently used error integral
criteria IAE and ITAE as was described in the
previous section.

3.3 Description of the Applications used in our Study
Two types of direct current (DC) motors are studied to
examine the performance correspond to various design
methods to design PID-like FLC.
DC motors are classified into several broad categories.
They are described in [24]. The DC motors have

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

separately excited-field, in which the field winding is
separate from the armature. They are either armaturecontrolled with fixed field or field-controlled with fixed
armature current [16], as shown in Fig. 4.

132

where Km is motor gain constant and Tm is motor time
constant. For simplicity, we assume that Km = 1 newtonm/amp and Tm = 1 second.

3.3.2 Field-controlled DC Motors
Separately excited-field
DC motors

Armature-controlled
DC motors

The transfer function between the output angular
displacement of this motor shaft  (t) and its input control
action U (t) is given by [16]:
Km
 s 

U s  s T f s  1 Tm s  1

Field-controlled
DC motors

Fig. 4 Separately excited-field DC motors.

DC motors whether armature-controlled or fieldcontrolled, are used in our simulation. The block diagram
of such systems is shown in Fig. 5. The control objective
for both types of DC motors is to reach a specified motor
position using an appropriate input drive voltage.
A zero-order holder device is used to keep a constant
controller output during each interval. The PID controller
inputs are defined as follows:
e kT   setpo int t   position t | t  kT

6

e kT   e  k  1 T 
T

7 

se kT   se  k  1T   T  e  k  1T 

8

de kT  

here T is sampling interval time; setpoint(t) and position(t)
are reference and process output that is the angular
displacement of the motor shaft.
Setpoint
+

e (t)

e*(t)

_

PID-like
FLC

U(t)

Zero-Order
Hold

U*(t)

DC
Motor

Output (t)

T

Fig. 5 DC Motor system with PID-like FLC.

3.3.1 Armature-controlled DC Motors
Ogata [16] gives the transfer function between the output
angular displacement of the motor shaft  (t) and the input
control action U (t):
Km
 s 

U s  s Tm s  1

9

10

where Km is motor gain constant, Tf is time constant of
field circuit and Tm is time constant of inertia-friction
element. For simplicity, we assume that Km = 1 rad/voltsec, Tf = 0.1 second and Tm = 1 second.

3.4 Implementation of the PID-like FLC
For simulating the design method of PID-like FLC, we
code the fuzzy inference system using C language; see
appendix A. In the implementation, MIN operator is
chosen as AND connective between the antecedents of the
rules of the FLC and as the fuzzy implication operation,
while MAX operator is chosen as OR connective between
the individual rules. Center of area (COA) is chosen as
defuzzification method [2], [14], which defined as:
U 

  x  x
  x 
i

i

i

i

11 

i

Here xi is a running point in a discrete universe, and  (xi)
is its membership value in the membership function.
Having defined the fuzzy linguistic control rules, the
membership functions corresponding to each element in
the linguistic set must be defined. We use optimal
membership functions method described in the previous
section to define the membership functions for e, de, se
and U linguistic variables. These membership functions
used for both DC motor systems types, have universe of
discourse of e, de, se and U as [-50 50], [-40 40], [-100
100], and [-40 40] respectively.
For designing PID-like FLC for both DC motor types, 50
radian were used as desired angular displacement of the
motor shaft and sampling interval time T were used as 1
second.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

133

3.5 Simulation Results
Comparisons between step responses of armaturecontrolled DC motor and field-controlled DC motor
systems using conventional PID controller and the PIDlike controller are shown in Fig. 6 and Fig. 7 respectively.
Table 3 and Table 4 compares the transient response and
error integral criteria of those two systems.

Fig. 7 Step response of field-controlled DC motor system using
conventional and fuzzy PID controllers.

Table 4: Performance comparison of field-controlled DC motor system

Fig. 6 Step response of armature-controlled DC motor system using
conventional and fuzzy PID controllers.

Table 3: Performance comparison of armature-controlled DC motor
system

Using
conventional
PID controller
Using PID-like
FLC

Tr

Ts

(Sec.)

(Sec.)

Os
(%)

IAE

Using
conventional
PID controller
Using PID-like
FLC

12

2.29

160.48

631.83

4

5

2.16

126.93

590.69

Throughout the experiments, we assumed the operating
condition for both controllers was fixed and there were no
motor parameters and motor load variations. From the
running results as shown in Fig. 6 and Fig. 7, the PID-like
FLC performed better than that of the conventional PID
controller.
Taking the conventional PID controller as a base system,
Table 5 shows the percentage of improvement of PID-like
FLC over conventional PID controller. From this table its
shown that using the PID-like FLC with armaturecontrolled DC motor, took about 58% less time than that
of conventional PID controller to reach the desired
position and 43% with field-controlled DC motor system.

Ts
(Sec.)

Os
(%)

IAE

ITAE

8

14

7.03

246.59

1490.1

5

8

4.95

178.29

856.61

Table 5: Percentage of improvement of PID-like FLC over conventional
PID controller

ITAE

7

Tr
(Sec.)

Armaturecontrolled DC
motor system
Fieldcontrolled DC
motor system

Tr

Ts

(Sec.)

(Sec.)

Os
(%)

IAE

ITAE

43%

58%

6%

21%

7%

38%

43%

30%

28%

43%

The simulation results for the system with PID-like FLC
shows a constant speed behavior in the steady state for
both cases aforementioned. Moreover, a very fast rise time
without a large overshoot and a very low percentage of
speed fluctuations are also observed in the step responses
when compared to the conventional PID controller cases.
When the voltages obtained by the PID-like FLC in both
cases are compared with the ones in conventional PID
control results, an almost constant steady state behavior is
observed. Indeed, a vigorous change in the controller
output to be used as an input voltage to the motor as in the
PID case is not realizable in a real time hardware
implementation. The reason for getting such a smooth

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

controller output in the PID-like FLC case is because of
the fact that PID-like FLC updates the controller output by
making comparison of the error and the change of error in
the angular displacement of the motor shaft. In this way, a
robust and a realizable controller output signal is obtained.
These observations, on the other hand, successfully
demonstrate that the PID-like FLC to regulate the angular
displacement of the motor shaft of a DC motors is one of
the best selections in the mechanism control area.

4. Conclusions
The design and implementation of armature-controlled and
field-controlled DC motor system using both conventional
PID and PID-like FLC have been presented. Comparisons
of experimental results of the conventional PID controller
and PID-like FLC show that the PID-like FLC is able to
perform better than the conventional PID controller.
Results indicate that even without knowing the detail of
the control plants, we were able to construct a well
performed fuzzy logic controller based on the experience
about the position controller.
Acknowledgments
The authors would like to express their appreciation to
Deanship of Scientific Research at King Faisal University
for supporting this research.

References
[1] J. Jantzen, "Tutorial on Fuzzy Logic", Technical University
of Denmark: Department of Automation, Technical report
number
98-E
868,
19
Aug
1998,
URL:
http://www.iau.dtu.dk/
[2] J. Jantzen, "Design of Fuzzy Controllers", Technical
University of Denmark: Department of Automation,
Technical report number 98-E 864, 19 Aug 1998, URL:
http://www.iau.dtu.dk/
[3] C. C. Lee, "Fuzzy Logic in Control Systems: Fuzzy Logic
Controller-Part I", IEEE Transactions on Systems, Man, and
Cybernetics, Vol. 20, No. 2, pp. 404-418, 1990.
[4] C. C. Lee, "Fuzzy Logic in Control Systems: Fuzzy Logic
Controller-Part II", IEEE Transactions on Systems, Man, and
Cybernetics, Vol. 20, No. 2, pp. 419-435, 1990.
[5] R. Isermann, "On Fuzzy Logic Applications for Automatic
Control, Supervision, and Fault Diagnosis", IEEE
Transactions on Systems, Man, and CyberneticsPart A:
Systems and Humans, Vol. SMC-28, No. 2, pp. 221-235,
1998.
[6] R. R. Yager and D. P. Filev, "Essentials of Fuzzy Modeling
and Control", John Wiley & Sons, 1994.
[7] T. E. Marlin, "Process Control: Designing Process and
Control Systems for Dynamic Performance", McGraw-Hill,
1995.

134

[8] J. Nie and D. A. Linkens, "Fuzzy-Neural Control: Principles,
algorithms and applications", Prentice Hall, 1995.
[9] J. Jantzen, "Tuning of Fuzzy PID Controllers", Technical
University of Denmark: Department of Automation,
Technical report number 98-H 871, 30 Sep 1998, URL:
http://www.iau.dtu.dk/
[10] H. X. Li and H. B. Gatland, "Conventional Fuzzy Control
and Its Enhancement", IEEE Transactions on Systems, Man,
and CyberneticsPart B: Cybernetics, Vol. SMC-26, No. 5,
pp. 791-797, 1996.
[11] C. Liaw and J. Wang, "Design and Implementation of a
Fuzzy Controller for a High Performance Induction Motor
Drive", IEEE Transactions on Systems, Man, and
Cybernetics, Vol. SMC-21, No. 4, pp. 921-929, 1991.
[12] H. X. Li and H. B. Gatland, "A New Methodology for
Designing a Fuzzy Logic Controller", IEEE Transactions on
Systems, Man, and Cybernetics, Vol. SMC-25, No. 3, pp.
505-512, 1995.
[13] K. L. Tang and R. J. Mulholland, "Comparing Fuzzy Logic
with Classical Controller Designs", IEEE Transactions on
Systems, Man, and Cybernetics, Vol. SMC-17, No. 6, pp.
1085-1087, 1987.
[14] J. Jantzen, H. Verbruggen and J. Ostergaard, "Fuzzy Control
in the Process Industry: Common Practice and Challenging
Perspectives", Technical University of Denmark: Department
of Automation, URL: http://www.iau.dtu.dk/
[15] B. C. Kuo, "Automatic Control Systems", Prentice-Hall,
1987.
[16] K. Ogata, "Modern Control Engineering", Prentice-Hall,
1970.
[17] Z. Zhao, M. Tomizuka and S. Isaka, "Fuzzy Gain
Scheduling of PID Controllers", IEEE Transactions on
Systems, Man, and Cybernetics, Vol. SMC-23, No. 5, pp.
1392-1398, 1993.
[18] R. Dorf and R. Bishop, "Modern Control Systems",
Addison-Wesley, 1995.

Essam F. Natsheh obtained his PhD in Communications and
Networks Engineering from University Putra Malaysia in 2006.
Currently, he is an Assistant Professor at the Management
Information Systems Department, College of Applied Studies and
Community Services, King Faisal University (Saudi Arabia). Essam
has more than 15 years of teaching and research experiences in
Malaysia and Saudi Arabia. Also, he has more than 20
publications in refereed journals at international level. His research
interest is mobile ad-hoc networks, in particular, the development
of a new routing algorithm for this type of networking.
Khalid A. Buragga received the B.Sc. in Computer Information
Systems (CIS) from King Faisal University, Saudi Arabia, and the
M.Sc. in CIS from University of Miami, USA, and the Ph.D. in
Information Technology from George Mason University, USA. He is
currently an assistant professor at college of Computer Sc. & IT,
King Faisal University. His general research interests span the
areas of software design, development, quality, and reliability;
business
process
re-engineering,
integrating
systems;
communications, networking and signal processing.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

135

A Robust and Secure Methodology for Network Communications
Mayank Srivastava1, Mohd. Qasim Rafiq 2 and Rajesh Kumar Tiwari3
1

2

Department of Computer Science, GLAITM
Mathura, U.P. 281406, India

Department of Computer Engg, Zakir Husain College of Engg. & Technology, AMU
Aligarh, U.P., India
3

Department of Computer Science, GLAITM
Mathura, U.P. 281406, India

Abstract
With the rapid development of a network multimedia
environment, digital data can now be distributed much faster and
easier. To maintain privacy and security cryptographic alone is
not enough. In recent years, steganography has become attractive
vicinity for network communications. In this paper, an attempt is
made to develop a methodology which calculate the variance of
secret message (which the sender wishes to send) and
accordingly create a carrier file. This carrier file can be sent in
any network (secure & unsecure) without giving any doubt in the
attackers mind. The practical implementation of this has been
done on Microsoft platform. Experimental results show the
feasibility of the proposed techniques.
.
Keywords: Steganography, Cryptography, Image file, Stego file.

1. Introduction
The growing use of Internet need to store, send and
receive personal information in a secured manner. For this,
we may adopt an approach that can transfer the data into
different forms so that their resultant data can be
understood if it can be returned back into its original form.
This technique is known as encryption. However, a major
disadvantage of this method is that the existence of data is
not hidden. If someone gives enough time then the
unreadable encrypted data may be converted into its
original form.
A solution to this problem has already been achieved by
using a technique named with the Greek word
“steganography” giving a meaning to it as ‘writing in
hiding’. The main purpose of steganography is to hide
data in a cover media so that other will not notice it [10]. 

Steganography has been used in various forms for last
2500 years. It has found use in variously in military,

diplomatic, personal and intellectual property applications.
There are examples from history that serve to illustrate the
desire to hide messages or some type of intelligence from
others. Histaiacus shaved the head of a messenger, wrote a
note encouraging Aristagoras of Miletus to revolt against
the king of Persia. After the messenger’s hair grew back,
the messenger was dispatched with the message.
Obviously, this message wasn’t especially time
constrained. Another human vector example includes
writing messages on silk, which would then be
compressed into a ball and covered with wax. The
messenger would swallow the wax ball. The
characteristics of the cover media depends on the amount
of secret data that can be hidden, the perceptibility of the
cover media and its robustness [4,5,6,7,10,18].
Publishing and broadcasting fields also require an
alternative solution for hiding information. Unauthorized
copying is hot issue in the area like music, film, book and
software. To overcome this problem some invisible
information can be embedded in the digital media in such
a way that no one can easily extract it [1,2,4].
Analogously, software industries have taken advantage of
another form of steganography, called watermarking,
which is used to establish ownership, identification, and
provenance [3,7].

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

2. Related Works
The most suitable cover media for Steganography is image
on which numerous methods have been designed. The
main reason is the large redundant space and the
possibility of hiding information in the image without
attracting attention to human visual system.
In this
respect, a number of techniques have been developed [1,7]
using features like




Substitution
Masking and Filtering
Transform Technique

The method of substitution generally does not increase the
size of the file. Depending on the size of the hidden image,
it can eventually cause a noticeable change from the
unmodified version of the image [4,6]. Least Significant
Bit (LSB) insertion technique is an approach for
embedding information in a cover image. In this case,
every least significant bit of some or all of the bytes inside
an image is changed to a bit of the sink image. When
using a 24-bit image, one bit of each of the primary color
components can be used for the above purpose.
The masking and filtering techniques starts with the
analysis of the image. Next, we find the significant areas,
where the hidden message will be more integrated to cover
the image and lastly we embed the data in that particular
area.
In addition to the above two techniques for message
hiding, transform techniques has also been employed in
embedding the message by modulating coefficients in a
transform domain. As an example, we may mention here
that Discrete Cosine Transform works by using
quantization on the least important parts of the image in
respect to the human visual capabilities.
The poor quality of recover image is the main drawback
with the proposed LSB algorithm by Anderson and
Petitcolas [11]. Raja et.al. [12] have proposed the least
significant bit-embedding algorithm where cover image
should always at least eight times larger than the sink
image. As a result of which it can be pointed out here that
a small image may not keep a large image. Marvel [6] has
proposed a spread spectrum image steganographic
technique for image carrier and able to conceal 5 kB of
secret data in 512 x 512 image size. Julio C. HernandezCastro [7] has given a concept for steganography in games
where the less robust technique saves only few parts of
total carrier files. Raja [8] concluded that three secret bits

136

can be embedded in one pixel. Amin [10] has given a
secured information hiding system which can only embed
60 kB message in 800 x 600 pixels image.
In conclusion, we can say that all of the above methods
used for embedding secret data works on the principle of
replacement of entire or some parts of the carrier file. Due
to this replacement policy, however, we are not able to
conceal high amount of secret data into the carrier file.
Further, the existence of carrier file gives a chance for
comparing and ultimately one tries to recover the hidden
data from the corresponding stego carrier file being
created. To overcome these problems, we have designed a
robust and secure methodology for network
communications. Here, based on the secret data we create
our own image file. Robustness, security and high capacity
are the major advantages with this methodology. For
practical implementation of the various steps of the
proposed methodology, we have framed an image creator
(IC) and secret data observer (SDO). The paper is
organized as follows. The proposed method is discussed in
Section 3. Section 4 describes the process of data retrieval.
Practical implementation and discussion about the
proposed method is given in Section 5 followed by
conclusion in Section 6.
provenance [3,7].

3. Proposed Methodology
It is the principle concept in steganography that one has to
take care to conceal the secret data in a carrier file such
that the combination of both the carrier and the
information embedded will never raise any doubt over it.
This carrier file can be sent in any communication media
for secured communication.
To achieve this, we propose here a model for
communication channel. The model is divided into two
parts. The first part (Sender Part) of the model takes the
secret data (which sender wish to send) make analysis and
accordingly creates an image file and sends to the receiver
end. The second part (Recipient Part) of the model
receives the image (stego image) and retrieves the secret
data and displays. The basic model of stego image file
creation is shown in Figure 1.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

137

Fig. 1 Basic Model.

3.1 Sender Part
Secret data, which the sender wishes to keep confidential,
is the original message or data that is fed into the
algorithm as input. Here, we start our process by analyzing
the secret data. Initially we calculate standard deviation of
the secret data by converting it into three different
combinations. In the first arrangement, we take the
original secret data (i.e. without changing lower case to
upper case or vice versa) and compute the standard
deviation. The second combination is made by changing
all secret data into lowercase characters. The last
combination converts the secret data into corresponding
uppercase characters. One can find the standard deviation
of an entire population (all secret characters) in cases
where every member of a population is sampled. In cases
where that cannot be done, the standard deviation Sk is
estimated by examining a random sample taken from the
population (Fig.2). Example is given below.

The above examples suggest that the second combination
is most suitable since the deviation is comparatively small.
Here, we combine three characters of the transmitting data
to make a single pixel of the cover shapes. So, the
deviation and corresponding ASCII values are the
parameters for deciding the pixels of cover image. We
then move to the next stage

3.1.1 Image File creation:
Digital images are commonly of two types
1.
2.

8-bit images
24-bit images.

These images can be logically divided into two parts
named as header part and body part. The header part
consists of all preliminary information like file name, file
type, compression type, etc. and the body part keeps the
information of pixels. The image editing software,
mathematical software and electrical and electronic circuit
designing software tools are the best source for generating
the header part and body part of the carrier image file. The
file header part does not play any primary role in data
embedding. We mainly concentrate on the body part of the
carrier image file to hide the transmitting data. Thus, some
part of the carrier image file can be constructed by
geometrical shapes, hand sketch objects, different curves,
etc. Generally, methods generating plain curves are useful

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

for creating 2D drawing for general proposes, but for the
purpose of engineering application methods for smooth
space curves are more suitable and provide more realistic
picture (image) of any real-world object. Again, the space
curves may be needed in many computer graphics
application for representing 3D and 2D objects. Realworld objects around us are mostly 3D and inherently
smooth. Our own vision system is best suited to observe
3D objects. The computer display of 3D objects made up
of curved surfaces is expected to look natural, reflecting
real-world qualities. Therefore, much of computer
graphics and manufacturing processes, data plotting,
artistic sketch and animation all need spatial smooth
curves for achieving accurate representation of real-world
objects. By selecting the pre-existing shapes and
generating the new objects, we can create the body part of
the carrier image file. MatLab, CircuitMaker,
Mathematica, Multisim, image editing software, etc. are
the software’s by which this can be achieved. This solves
our purpose by making the body part of the carrier image
(see e.g. Fig 3).

138

Fig. 4 A hand sketched image

Further, shading, image rendering, texturing are the tools
that can be used to make the image more realistic. Shaded
images with a high degree of visual realism create the
impression that the images are realistic. Once the image is
formed, we start with different image realistic work
involving shading the image surfaces and then analyze
from the viewer’s point of view. The method of texturing
also plays a vital role in adding value to a model as shown
in Figure 5.

Fig. 5. Image after certain effects

Fig. 3 Image file format

One of the major advantages of this new methodology is
independencies of the size of the carrier file, that is, based
on the size of the input transmitting data, we generate the
required image file. For just an illustration we have shown
a normal image in Fig. 4

The stego key is known as password, which is a protection
fence for this methodology. After the creation of carrier
image file, we start the analysis of the distribution place of
the carrier image file and the secret data. Here, we can
introduce another layer of protection securities by
applying the mathematical formula. The secret data
distribution process begins with the given mathematical
formula that calculates the next pixel address location for
the secret data.
Mj = i + (j – 1)*Y, j = 1, 2, 3
where Mj is the target location, i is the staring location
place, j gives the secret bit number and Y is the distance
between two consecutive location in carrier image file.
The series of location address for secret character can be
defined when i = 1 and Y = 10, as 1, 11, 21, 31, 41, 51….
For other requirements, we store the value of Mj in the
location buffer. This direct replacement of the pixel value
to the corresponding transmitting data character gives a
freedom to store three characters in one pixel, whereas,
the LSB methods require eight pixel to store same three
characters. Further, the extra advantage we can get here is

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

139

the size independency of the pre-existing carrier file. The
required pseudo code is given below.
Data Embedding
{
1DArray Cover_iamge = Load (“Cover image”, &length);
1D Array Stego_Image [ ];
1D Array Secret_data [ ];
1D Array ASCII_data [ ];
Integer L, I, J, K;
INPUT Secret_data;
/* Input the Data Store Position */
INPUT L;
For i= 0 to Length (Secret_data [ ])
ASCII_data [ I ] = Secret_data [ i];
End For;
/* Secret Data Storing */
If Length (Secret_data [ ]) > Length (Cover_image [ ])
Then
Print “Secret Data size is more, Select other
method“
Else Pixel_Place=L; J=1;
For I =L to Length (Secret_data [ ])
GetColorValue
(&K,
Cover_image
[Pixel_Place]);
K= Secret_data[J];
SetColorValue (Stego_image [Pixel_Place],
&K );
J=J+1;
End For ; End if;
SaveImage (Stego_image [])
RenameImage (Stego_image [ ], Cover_Image [ ] );
Remove Image (Stego_image [ ]);
}

3.1.3 Stego Image Coloring
After the secret data embedding process, we start the
colour filling procedure. Our algorithm initiates the first
step by the checking of the location buffer information and
in the next step, it selects the first pixel location and check
its presence in the location buffer. If the location buffer
values not match with the pixel address, the algorithm
changes the pixel intensities with the user supplied value.
We continue this process for the entire shape. Further, we
can add other shape, objects or text to make the embedded
carrier image to more realistic. Here, we have added an
extra text which makes the carrier image file into stego
image as shown in Fig.6.

Fig. 6. Stego Image

3.1.4 Image Transmission
At the end of the process the stego image can be
transmitted in any media (i.e. secure and none secure
both). Since we are creating a new image for each
transaction so any attacker cannot compare the stego file
with its original file this gives a good boost for sender and
receiver both.

3.2 Data retrieval
The embedded stego image can be retrieved back by using
the extraction algorithm. Generally, the extraction is the
reverse process of embedding the data into the image.
The received stego image is the primary input of the
model. The retrieval process takes the inputs of initial
pixel place, stego key and the mathematical formula by
which the transmitting data has been distributed. Based on
the next pixel location which is obtained by the
mathematical formula is generated and the corresponding
pixel ASCII value is converted into the characters. Finally,
with the aid of a grammar and dictionary, the transmitting
data is retrieved and fabricated as shown in Figure 8.
Following is the required pseudo code used for the
purpose of retrieval of the secret data.
Data_Extract ()
{
Array Stego_buffer=Load(“stego_image”, &Length)
String Secret_txt_buffer;
String Secret_buffer;

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Integer I, J, Y, A, L, M;
Integer Red, Blue, Green;
Input I, J, Y;
M=1;
For ( A=1; A <= L; A++ )
{
Z = i + (j – 1) *Y
IF ( Z== A) The
{
GetRGB (&Red, &Green, &Blue, Stego_buffer [A]);
Decode (Secret_buffer [M], Red);
Decode (Secret_buffer [M], Green);
Decode (Secret_buffer [M], Blue);
A=A+2;
M=M+1;
}
}

140

that can be hidden in the cover medium; security refers to
an eavesdropper’s inability to detect hidden information;
whereas, the robustness is referred to the amount of
modification that can be made such that the stego medium
can withstand before an adversary can destroy the hidden
information. In this proposed system, we maintain all
above three aspects.
5. Conclusion
Security in secret data transmission has become a very
critical aspect of modern internet and intranet systems. In
this paper we have designed a novel and secure
methodology which creates a new image file, embeds the
secret data and transmit the stego file. At the receiver end,
the recipient extracts the secret data using the reverse of
the embedding process. As this methodology does not
depends on the size of the secret data so any one can send
any amount of data using any network or media across the
world in a completely secured form. As the new
methodology maintains two layers of protection, it is hard
to detect the secret information by any unauthorized
individual.

For (A=1; A< =M; A++)
{
Secret_txt_buffer [A]= Secret_buffer [M];
}
}

4. Practical implementation and discussion
Based on the above methodology, we have designed IC
(image creator) and SDO (secret data observer) in
Microsoft platform and it may further be implemented in
other programming platform like JAVA and C. The initial
steps of IC start with the analysis of the secret data; based
on the secret data, we select the shapes and objects; and by
using some mathematical formula, we distribute it into the
carrier image file. The next optional step prompts to user
for selecting the colour, pattern and texture filling. Finally,
the program asks for any other text, or shape selection for
more realistic view of the canvas and at the end stego
image is generated. SDO is reciprocal of the IC. We select
the stego image and input stego key with the defined
mathematical formula. Finally, we get the secret data in
output panel.
The three different aspects considered in any
information hiding system: capacity, security and
robustness. Capacity refers to the amount of information

References
[1]. G. Sahoo and R.K. Tiwari “ Designing an Embedded
Algorithm for Data Hiding using Steganographic Technique by
File Hybridization”, IJCSNS International Journal of Computer
Science and Network Security, Vol. 8 No. 1 January 2008.
[2]. Donovan Artz “ Digital Steganography: Hiding Data within
Data”, IEEE Internet computing, pp.75-80 May –June 2001.
[3]. Mitchell D.Swanson, Bin Zhu and Ahmed H. Tewfik
“TRANSPARENT ROBUST IMAGE WATERMAKING” IEEE
0-7803-3258-x/96. 1996
[4]. M.M Amin, M. Salleh, S.Ibrahim, M.R. Katmin, and M.Z. I.
Shamsuddin “ Information hiding using Steganography” IEEE 07803-7773-March 7, 2003.
[5]. Lisa M. Marvel and Charles T. Retter, “A
METHODOLOGY FOR DATA HIDING USING IMAGES”,
IEEE 0-7803-4506-1/98, 1998
[6]. Bret Dunbar, “A Detailed Look at Steganography techniques
and their use in an Open Systems Environment “, January 18,
2002 SANS Institute.
[7]. C. Cachin, “An Information –Theoretic Model for
Steganography”, inn proceeding 2nd Information Hiding
Workshop, vol 1525, pp.303-318, 1998.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[8]. F.A.P
Peticolas, R.J. Anderson and M. G. Kuhn,
“Information Hiding –A Survey”, in proceeding of IEEE, pp.
1062-1078, July 1999.
[9] Venkatraman. S, Ajith Abraham, Marcin Paprzycki “
Significance of Steganography on Data Security “, IEEE 0-76952108-8, 2004.
[10]. N.F. Johnson and S Jajodia, “Exploring Steganography:
Seeing the Unseen “, Computer, vol31, no. 2, Feb 1998, pp. 2634.
[11] Ross J. Anderson and Fabien A.P. Petitcoals “ On the Limits
of Steganography”, IEEE Journal on Selected Areas in
Communications, Vol. 16 NO. 4 MAY 1998.
[12] K.B. Raja, C.R. Chowdary, Venugopal K R, L.M. Patnaik “
A Secure Image Steganography using LSB, DCT, and
Compression Techniques on Raw Images”, IEEE 0-7803-95883/05.
[13] S. Craver, On public-key steganography in the presence of
an active warden, In Second International Workshop on
Information Hiding, Springer- Verlag, 1998.
[14]. A. Allen, Roy (October 2001). "Chapter 12: Microsoft in
the 1980's". A History of the Personal Computer: The People and
the Technology (1st edition). Allan Publishing. pp. 12–13. ISBN
0-9689108-0-7.
http://www.retrocomputing.net/info/allan/eBook12.pdf.
[15]. Tsung-Yuan Liu and Wen-Hsiang Tsai, “A New
Steganographic Method for Data Hiding in Microsoft Word
Documents by a Change Tracking Technique”, Information
Forensics and Security, IEEE Transactions on Volume 2, No. 1,
March 2007 p.p 24 – 30.
[16]. Dekun Zou and Shi, Y.Q., “Formatted text document data
hiding robust to printing, copying and scanning”, Circuits and
Systems, IEEE International Symposium, Vol.5 , 2005 p.p- 4971
– 4974.
[17]. A Castiglione, A. De Santis, C. Soriente “Taking advantage
of a disadvantage: Digital forensics and steganography using
document metadata” The Journal of system and software 80
(2007) 750-764.
[18]. Sahoo, G. and Tiwari, R.K. (2010) ‘Some new
methodologies for secured data coding and transmission’, Int. J.
Electronic Security and Digital Forensics, Vol. 3, No. 2, pp.120–
137.

141

Mayank Srivastava completed his MCA from VBSPU in the year
2002 and currently pursuing M.Tech(Sequential) from GBTU,
Lucknow, Uttar Pradesh He is working as a Asst. prof. at GLA
Institute of Technology & Mgmt., Mathura, Uttar Pradesh since
2004.
Mohd. Qasim Rafiq completed his M.Tech in the year 1986 from
A.M.U, Aligarh, Uttar Pradesh. and Ph.d.in the field of parallel
processing in the year 1996 from University of Roorkee, Uttar
Pradesh. Currently he is the Chairman of the Department of
Computer Engg., ZHCET, AMU, Aligarh, Uttar Pradesh.
Rajesh Kumar Tiwari received his MCA from Nagpur University in
2002 and PhD in the field of Data Security form Birla Institute of
Technology, Ranchi in the year 2010. Currently, he is a Reader at
GLA Institute of Technology & Mgmt,, Mathura, Uttar Pradesh,
India. His research is focused on data security, network security,
cloud computing and database management system.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

A New Approach of Using Association Rule Mining in Customer
Complaint Management
Behrouz Minaei-Bidgoli, Elham Akhondzadeh
1

Department of computer engineering, University of Science and Technology
Tehran, Iran
2

Department of industrial engineering, Shahed University
Tehran, Iran

Abstract
A new approach of using data mining tools for customer
complaint management is presented in this paper. The association
rule mining technique is applied to discover the relationship
between different groups of citizens and different kinds of
complainers. The data refers to citizens' complaints from the
performance of municipality of Tehran, the capital of Iran.
Analyzing these rules, make it possible for the municipality
managers to find out the causes of complaints, so, it leads to
facilitate engineering changes accordingly. The idea of contrast
association rules is also applied to identify the attributes
characterizing patterns of complaints occurrence among various
groups of citizens. The results would enable the municipality to
optimize its services.
Keywords: association rule, customer complaint management,
e-government, data mining.

1. Introduction
With the advent of information and communications
technology (ICT), many governments have been
promoting using information systems to deliver services
and information to citizens effectively [1], [2]. Some
researchers have studied the adoption of IT and
technological innovations in public sector [3], [4], [5], [6],
[7], [8], [9], [10], [11], [12], [13]. Using such electronic
means in governments is defined as e-government that
facilitates providing services and helps governments to be
more citizen-oriented [1], [2].
One of the topics that is often included in this domain, is
the adoption of Customer Relationship Management
(CRM) in public sector. King (2007) [14] introduced CRM
as a key e-government enabler that uses ICT to collect and
store data which can then be used to discover valuable
knowledge about customers. Schellong (2005) [15]
introduced the concept of CiRM as a part of new
NewPublicManagement (NPM) that is included in the area

of e-government [13]. CiRM applies CRM in the private
sector focusing on citizens and uses IT to improve
relationship with them [1], [13], [15], [16], [17].
Call centers and citizens' voice databases are among the
common ways to connect between the government and
citizens [1], [13], [16]. Furthermore, the databases could
be analyzed in order to improve government policies [1].
One of the effective techniques that can be used in
analyzing the customer data is data mining that have been
widely used in this domain [18]. Many researchers have
focused on using data mining tools in CRM and according
to Ngai et al. (2009) [18], the research on it will increase
in the future.
In this paper, focusing on CiRM, we use data mining tools
to extract useful information from a citizens' complaints
database in Iran. Customer complaint management is one
of the elements of customer retention that is crucial for
successful management of customers' needs [18].
According to a survey research [18] on using data mining
techniques in CRM, only a few studies (two papers) have
examined the application of data mining tools in complaint
management. These two papers which were conducted by
Bae et al. (2005) [19] and LarivieRe and Poel (2005) [20],
discussed the use of clustering and sequence discovery
respectively. Compared to the other elements of customer
retention, the number of papers regarding the application
of data mining in complaint management (2 out of 54
papers) is low and further researches are needed to be
carried out on this field [18].
In this paper, a new approach of using data mining tools in
complaint management is presented by applying the
association rule techniques. The apriori algorithm is
implemented to discover the associations between
different variables and the type of complaints.
Several researchers believe that behavioral variables are
better predictors in comparing with the non-behavioral

142

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

variables [21], [22], [23]. Some kinds of these variables
such as demographic and cultural characteristics are also
considered in this study. Citizens are grouped according to
the variables and the idea of contrast association rule
mining is applied to compare the citizens' complaints
according to their behavioral characteristics.
The remaining of this paper is organized as follows: in
section 2, the association rule and the apriori algorithm is
discussed. The application of association rule and results
are shown in section 3. Finally, section 4 includes the
concluding remarks.

2. Methodology
In this section, we discuss the association rule and apriori
algorithm that are used in analyzing the customer data.

2.1. Association rule
The concept of association rule is originated from the
market basket analysis which aims to identify frequent
itemsets in a supermarket shopping [24], [25], [26].
The main idea is to find products that are frequently
bought together for improving marketing strategies [24].
Besides the market basket analysis, cross selling programs
are also introduced as another common use of association
rule mining. This technique is ranked after neural network
and decision tree among the data mining tools which have
been used for CRM [18].
An association rule is presented in the form A → B,
where A  B   . A is the antecedent of the rule and B is
its consequent. It means that when A occurs, B occurs with
certain probability. The strength of association rules is
often evaluated by means of the support and confidence
measures. These two measures are defined as follows:
[27].

143

threshold. At the second step, the minimum confidence
threshold is applied to select the rules [27].

2.3. Implementation of association rule mining in
complaint management
In this section, the mining process is described. Firstly, we
extract the association rules among the geographical
location in which citizen lives, time fields and the subject
of complaint in order to find out the correlation between
these fields and type of complaint. By analyzing these
associations, the municipality managers can find the
primary subjects and the causes of complaints in different
regions. The analyzing process will be more explained in
section 3.
Next, we apply the idea of contrast association rule mining
in the data in order to compare the type of complaints of
different citizen groups according to their demographical
and cultural characteristics. The idea of contrast
association rules was presented by Minaei-Bidgoli et al.
(2004) [29]. The main purpose of mining such rules is to
discover interesting differences between segments of a
population. In this study, citizens are categorized
according to gender and education as demographical
variables and cultural characteristics. For example, to find
out the impact of gender of citizens on the type of
complaint, the dataset is divided into male and female
subsets. After that, we try to find those rules with the same
antecedent and consequent but notable difference in
support and confidence measures. By investigating these
rules, we can thus understand similarities and conflicts
between the requirements of males and females.
Both of educational and cultural characteristics could be
examined in a similar manner using the same approach.
The dataset is divided into graduated and non-graduated
subsets in the case of education variable while it is
categorized into 9 groups according to experts' opinions in
the case of cultural characteristics.

Support ( A, B)  Count ( A, B) / The total number of records (1)
Confidence ( A  B )  Count ( A, B ) / Count ( A)

(2)

2-2- Apriori Algorithm
Apriori is one of the common tools [18] and the basic
algorithm for finding frequent itemsets [28]. This
algorithm was proposed by Agrawal and R. Srikant in
1994 [28] and is the first technique that controls the
exponential growth of candidate itemsets. It uses the
support for pruning candidate itemsets [27].
This algorithm is composed of two major steps, the
generating frequent itemsets and finding the association
rules from found frequent itemsets. At the first phase, it
finds the itemsets that have the minimum support

3. Case study
In this section, the association rule mining is applied to
discover the relationship between different citizens and the
type of their complaints in the case of Tehran
municipality.

3.1. Research data and preprocessing
The citizens' data of a call center system in Iran are
analyzed. The system belongs to the Tehran municipality.
Its mission is to evaluate the performance of municipality.
Citizens can call to this center and thank, criticize,
complaint or give their opinions about the performance of
managers, employees and different operating units of the
municipality.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

The data includes 190135 records of citizens' messages
from spring 2008 to spring 2010. An example of the data
is shown in table 1. Each row of this table provides
information of a particular message. The definition of
fields is represented in table 2. The initial analysis of the
data implies that 90 percent of the citizens' calls relate to
their complaints which we concentrate on in this study.
After handling the duplicate data, missing values and
outliers, the "season" feature was created.
Table 1: an example of data

Subjec
t ID
301
299
1040
1038

Message
Time
2008-11-25
15:38:50
2008-10-13
13:57:13
2009-10-20
08:40:00
2010-02-24
11:12:00

Citizen
Region
4

Citizen
Gender
Male

Citizen
Education
Master

22

Male

Bachelor

2

Female

Student

1

Male

Student

Table 2: the definitions of fields

ID
1
2
3

Attribute
Subject ID
Message Time
Citizen Region

4
5

Citizen Gender
Citizen Education

definition
The subject of citizen call
The time of citizen call
The geographical location of
where the citizen lives
Male or Female
The degree of citizen education
such as BSc, MSc, PhD.

144

Examples of the association rules are shown in table 3.
CR, Se and S in the antecedent and consequent
explanation stand for "citizen region", "season" and
"subject" respectively. The fourth and fifth columns show
the support and confidence metrics, respectively.
For example, the first three rules represent the occurrence
confidence of three kinds of complaints in region 10 which
are more important for citizens living in this region. The
first rule implies that more than 70% of citizens'
complaints in this region are against the urban service
management system of the municipality. The occurrence
confidence of this subject is more than 70% and can be
noted as the primary factor that causes complaints in this
region. The administrative-financial and delinquency of
employees and managers are detected as the second
priority subjects. The 7% remaining complaints refer to
other issues which have been occurred with a confidence
less than 5.
The next three rules state the occurrence confidence of
complaints in region 11. As shown in the rows 4 and 5,
most of the complaints are related to the administrativefinancial matters but with a little difference with the urban
service management system. 10% of the complaints refer
to the contractors of the municipality. Obviously, the 33%
remaining complaints occurred with a low confidence and
are not important for citizens in this region.
In a like manner, the rules 7-11 show the occurrence
confidence of different kinds of complaints in region 22 in
spring.
Table 3: the results of association rules between "citizen region",
"season" and "subject" attributes

ID

Antecedent

Consequent

1

CR = 10

2

CR = 10

3.2.1. Region, season and type of complaint

3

CR = 10

As discussed before, the association rules between 'citizen
region', 'season' and 'subject' have been extracted to find
out the correlation between geographical location, time
and the type of complaint. The confidence level is set to
5%. Choosing a very low minimum confidence make it
possible to find those kinds of complaints that occurred
with a low confidence. By comparing these rules with the
ones that have a high confidence, ranking the subjects
based on their importance is possible. Analyzing these
rules, we can find those kinds of subjects that cause
complaint more than the others or the ones that are not
important for citizens.
In analyzing the rules in the above manner, if a subject
occurred in a particular region with a confidence more
than 70%, it can be notable as the primary factors that
cause complaints in that region.

4

CR = 11

5

CR = 11

6
7

CR = 11
CR = 22
and Se =
spring
CR = 22
and Se =
spring
CR = 22
and Se =
spring
CR = 22
and Se =
spring

S = the urban servic
management system
S = AdministrativeFinancial matters
S = delinquency of
employees and managers
S = AdministrativeFinancial matters
S = the urban servic
management system
S = Contractors
S = AdministrativeFinancial matters

3.2. Association rule mining
In this section, we discuss the results of the presented
mining process.

8
9
10

S
(%)
70.7

C
(%)
7.77

12

1.32

10.3

1.14

30.8

0.73

27

0.62

10.3
50

0.24
0.18

S = delinquency of
employees and managers

25

0.1

S = Transportation and
traffic

8.3

0.03

S = ICT

8.3

0.03

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

3.2.2. Demographical characteristics and type of
complaints
In this section, we want to answer the question "is there
any conflict between males and females' complaints or
graduated and non-graduated citizens' complaints? As
described in section 2, we answer to this question using
contrast association rule mining.
Some of the rule which is obtained in this manner is
presented in table 4. SE in the antecedent explanation
stands for "citizen education". The other variables are
defined as before.
A minimum confidence of 5% was chosen to obtain as
many rules as possible.
Table 4: contrast rules in males and females

ID

Gender

Antecedent

Consequent

1

females

2

males

3

males

CR = 13 and
CE = BS
CR = 13 and
CE = BSc
CR = 22

4

females

CR = 22

S = socialcultural
S = socialcultural
S=
Transportation
and traffic
S=
Transportation
and traffic

S
(%)
1.4

C
(%)
80

0.31

15.6

1.2

43

1

9.6

The first two rules indicate that females with a Bachelor of
Science (BSc) education degree living in region 13
complain on the social-cultural subjects with a high
confidence, but males of this region with similar education
degree feel displeasure on this subject with a low
confidence. The support of the first rule is also more than
second one. These two rules imply that there is a close
correlation between gender and the complaints which
relate to social- cultural subjects.
Analyzing the third and fourth rules make it possible to
compare the importance of transportation and traffic
subjects between males and females.
These rules are not unexpected and can validate the results
to some extent.
In a like manner, the dataset has been divided into
graduated and non- graduated subsets and the contrast
rules have been extracted. Table 5 lists some of these
rules. CG stands for citizen gender. Other variables are
defined as before.
Based on the rules 1 and 2, there is a contrast between
graduated males and non-graduated males' complaints in
region 14. These rules show that the "delinquency
employees and managers" subject for graduated males is
more important than non-graduated males in this region,
with a notable difference.

145

Table 5: contrast rules in graduated and non-graduated citizens

ID

Education

1

Graduated

2

Nongraduated

3

Nongraduated

4

Graduated

Antecede
nt
CR = 14
and CG =
male
CR = 14
and CG =
male
CR = 12
and CG =
male
CR = 12
and CG =
male

Consequent
S = delinquency
of employees
and managers
S = delinquency
of employees
and managers
S = the urban
service
management
system
S = the urban
service
management
system

S
(%)
0.89

C
(%)
66.7

0.89

10.8

0.89

80

0.21

15

There is a high difference between confidences of the rules
3 and 4. Non-graduated males complaint on the
performance of urban service management system of
municipality with a high confidence, but graduated males
complaint with a lower confidence. This rule is neither
expected nor unexpected and should be investigated by
municipality experts.

3.2.3. Cultural variables and type of complaint
In order to investigate the correlation between cultural
characteristics and type of citizens' complaints, dataset is
segmented into 9 groups based on the experts' opinions.
The segmentation is done by dividing geographical regions
into different groups according to cultural characteristics.
Similar to the previous section, the association rules have
been extracted. These rules are illustrated in table 6.
Analyzing these rules give us an idea about the type of
complaints in different citizens' groups. For example rules
1-9 show that the most important subject for males with a
BSc education degree in segments 3, 4 and 1 is the
performance of urban service management system, while
males with a BSc education degree in other segments
complaint on this subject with a very low confidence.
More than 5000 contrast rules are obtained in this section.
With such a great number of rules and different kinds of
attributes, it is too difficult to check all the rules. But in the
case of males with a BSc education degree, we can say
that the occurrence patterns of different kinds of
complaints are alike in segments 3, 4 and 1 with a high
difference to other segments which are similar to each
other.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
Table 6: contrast rules in different citizens' groups

ID

Segment

1

3

2

4

3

1

49

2,5,6,7,8,9

Antecedent
CE = BSc
and CG =
male
CE = BSc
and CG =
male
CE = BSc
and CG =
male
CE = BSc
and CG =
male

Consequent
S = The urban
service
management
system
S = The urban
service
management
system
S = The urban
service
management
system
S = The urban
service
management
system

S
(%)

C
(%)

9.01

35

6.44

34.2

3.18
Very
low

21.4
Less
than
1

[2]

[3]

[4]

[5]

[6]

4. Conclusion
Using association rule mining in customer complaint
management is the main purpose of this paper. The data of
citizens' complaints on Tehran municipality were
analyzed. Using this technique made it possible to find the
primary factors that cause complaints in different
geographical regions in different seasons of the year.
The idea of contrast association rules was also applied to
discover the variables that influence complaints
occurrence. In order to accomplish this objective, citizens
were grouped according to the demographical and cultural
characteristics and the contrast association rules were
extracted.
The results show that there is a strong relationship between
citizen gender and education and patterns of complaints
occurrence. Given have been focused on cultural
characteristics, it is notable that some segments are alike,
while other segments are similar. Applying this approach
for CiRM shows an understandable way for clustering the
data using the feature impact on finding similar clusters.

Acknowledgments
We are thankful to our colleagues in Data Mining
Laboratory in Computer Engineering Department at Iran
University of Science and Technology for their
cooperation and support. This work is also partially
supported by Data and Text Mining Research Group at
Computer Research Center of Islamic Sciences, NOOR co.
Tehran, Iran.

References
[1]

T. Sasaki, , Y. A.Watanabe and K. Minamino,K, "An
Empirical Study on Citizen Relationship Management in

[7]

[8]

[9]

[10]

[11]

[12]

[13]

[14]

[15]

[16]

146

Japan", in PROC. PICMET conference of IEEE Xplore.,
2007, Portland, Oregon – USA.
SH. Paul, "A case study of E-governance initiatives in
India", The International Information & Library Review,
Vol.39, 2007, pp.176–184.
J. L. Brudney and S. C. Selden, "The adoption of innovation
by smaller local governments: The case of computer
technology", The American Review of Public,
Administration, Vol.25, No.1, 1995, pp.71−86.
J. L. Perry and K. L. Kraemer, Technological innovation in
American local governments: The case of computing, New
York: Pergamon Press, 1979.
D. Bugler and S. I. Bretschneider, Technology push or
program pull: Interest in new information technologies
within public organizations. In B. Bozeman (Ed.), Public
management: The state of the art, San Francisco: JosseyBass, 1993.
C. C. Hinnant and J. A. O'Looney, "Examining pre-adoption
interest in online innovations: An exploratory study of eservice personalization in the public sector", IEEE
Transactions on Engineering Management, Vol.50, No.4,
2003, pp.436−447.
N. Al-Qirim, "Personas of e-commerce adoption in small
businesses in New Zealand", Journal of Electronic
Commerce in Organizations, Vol.4, No.3, 2006, pp.17−45.
F. Damanpour, "Organizational innovation: A meta-analysis
of effects of determinants and moderators", Academy of
Management Journal, Vol.34, No.3, 1991, pp.555−590.
J. L. King, V. Gurbaxzni, K. L. Kraemer, F.W. McFarlan,
K. S. Raman and C. S. Yap, "Institutional factors in
information technology innovation", Information Systems
Research, Vol.5, No.2, 1994, pp.139−169.
K. Layne and J. Lee, "Developing fully function EGovernment: A four stage model", Government Information
Quarterly, Vol.18, No.1, 2001, pp.122−136.
L. G. Tornatsky and M. Fleischer, The process of
technological innovation, Lexington, MA: Lexington
Books, 1990.
M. M. Brown, "Understanding E-Government benefits",
American Review of Public Administration, Vol.37, No.2,
2007, pp.178−197.
C. G. Reddick, "The adoption of centralized customer
service systems: A survey of local governments",
Government Information Quarterly, Vol. 26, 2009, pp. 219–
226.
S. F. King, "Citizens as customers: Exploring the future of
CRM in UK local government", Government Information
Quarterly, Vol.24, 2007, pp. 47–63.
A. Schellong, "CRM in the public sector: Towards a
conceptual research framework", in Proceedings of the 2005
national conference on digital government research (Atlanta,
Georgia, May 15–18, 2005.
A. Schellong and T. Langenberg, "Managing citizen
relationships in disasters": Hurricane Wilma, 311 and
Miami-Dade County. In Proceedings of the 40th annual
Hawaii international conference on system sciences, January
03–06, 2007.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
[17] R. Silva and L. Batista, "Boosting government reputation

[18]

[19]

[20]

[21]

[22]

[23]

[24]

[25]

[26]

[27]
[28]

[29]

through CRM", The International Journal of Public Sector
Management, Vol. 20, No.7, 2007, pp.588-60.
E.W.T. Ngai, L. Xiu and D.C.K. Chau, "Application of data
mining techniques in customer relationship management: A
literature review and classification", journal of Expert
Systems with Applications, Vol. 36, 2009, pp. 2592–2602.
S. M. Bae, S. H. Ha and S. C. Park, "A web-based system
for analyzing the voices of call center customers in the
service industry", Expert Systems with Applications,
Vol.28, 2005, pp.29–41.
B. LarivieRe and D. V. D. Poel, "Investigating the postcomplaint period by means of survival analysis", Expert
Systems with Applications, Vol. 29, 2005, pp.667–677.
C. M. Heilman, F. Kaefer and S. D. Ramenofsky,
"Determining the appropriate amount of data for classifying
customers for direct marketing purposes", Journal of
Interactive Marketing, Vol.17, No.3, 2003, pp.5–28.
P. E. Rossi, R. E. McCulloch and G. M. Allenby, "The
value of purchase history data in target marketing",
Marketing Science, Vol.15, No.4, 1996.
A. Prinzie1, D.V.D. Poel, "Constrained optimization of
data-mining problems to improve model performance: A
direct-marketing application", Expert Systems with
Applications, Vol.29, 2005, pp.630-640.
J. Ahn and S. Young, "Customer pattern search for after
sails service in manufacturing", Journal of Expert Systems
with Applications, Vol.36, 2009, pp.5371–5375.
R. Agrawal, and R. Srikant, "Fast algorithm for mining
association rules", In Proceedings of the Twentieth
International Conference on Very Large Databases, 1994,
pp. 487–499.
Q. Yang, L. Tianyi, and K. wang, "Building AssociationRule Based Sequential Classifiers for Web-Document
Prediction", Data Mining and Knowledge Discovery, Vol.8,
2004, pp. 253–273.
P. Tan, M. Steinbach and V. Kumar, "Introduction to Data
Mining", Addison Wesley, ISBN: 0-321-32136-7, 2006.
J. Han and M. Kamber, Data Mining: "Concepts and
Techniques, Second Edition", Morgan Kaufman Publisher,
2006.
B. Minaei-Bidgoli, P. Tan and W. Punch, "Mining
interesting contrast rules for a web-based educational
system", In International conference on machine learning
applications, Los Angeles, California, 2004, pp.1–8.

Dr.Behrouz Minaei-Bidgoli obtained his Ph.D. degree from Michigan
State University, East Lansing, Michigan, USA, in the field of Data
Mining and Web-Based Educational Systems in Computer Science and
Engineering Department. He is working as an assistant professor in
Computer Engineering Department of Iran University of Science &
Technology, Tehran, Iran. He is also leading at a Data and Text Mining
research group in Computer Research Center of Islamic Sciences, NOOR
co. developing large scale NLP and Text Mining projects for Persian and
Arabic languages.
Elham Akhondzadeh received the M.Sc. degree in industrial
engineering from university of Shahed. She is interested in data mining

147

studies and its applications. Her current researches focus on using data
mining in citizen relationship management.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

A Three Party Authentication for Key Distributed Protocol Using
Classical and Quantum Cryptography
Suganya Ranganathan1, Nagarajan Ramasamy2 , Senthil Karthick Kumar Arumugam3, Balaji Dhanasekaran4, Prabhu
5
6
7
Ramalingam , Venkateswaran Radhakrishnan , and Ramesh Karpuppiah
Assistant Professor’s, Master Of Computer Applications, Bharathiar University, Nehru College Of Management
Coimbatore, Tamilnadu 641105, India.

Abstract
In the existing study of third party authentication, for
message transformation has less security against attacks
such as man-in-the-middle, efficiency and so on. In this
approach, we at hand give a Quantum Key Distribution
Protocol (QKDP) to safeguard the security in larger
networks, which uses the combination of merits of
classical cryptography and quantum cryptography. Two
three-party QKDPs, one implemented with implicit user
authentication and the other with explicit mutual
authentication, which include the following:
1.
2.
3.

Security against such attacks as the man-in-themiddle, eavesdropping and replay.
Efficiency is improved as the proposed protocols
contain the fewest number of communication
rounds among the existing QKDPs.
Two parties can share and use a long-term secret
(repeatedly).

To prove the security of the proposed schemes, this work
also presents a new primitive called the Unbiased-Chosen
Basis (UCB) assumption.
Keywords: .Third Party Authentication, QKDP, Preliminaries,
3AQKDP, Unbiased-Chosen Basis, Eavesdropping and Replay
Efficiency.

product over the WWW (World Wide Web), users
sometimes transmits their credit card numbers over the
network. This is a dangerous thing to do since it is easy
for a hacker to eavesdrop on the network and read all the
packets that fly by. Therefore, users sometimes want to
encrypt the messages they send, with the goal of keeping
anyone who is eavesdropping on the channel from being
able to read the contents of the message.
The idea of encryption is simple enough. The sender
applies an encryption functions to the original plain text
message, the resulting cipher text message is sent over the
network, and the receiver applies a reverse function
known as the decryption to recover the original plain text.
The encryption/decryption process generally depends on a
secret key shared between the sender and the receiver.
When a suitable combination of a key and an encryption
algorithm is used, it is sufficiently difficult for an
eavesdropper to break the cipher text, and the sender and
the receiver can rest assured that their communication is
secure. The familiar use of cryptography is designed to
ensure privacy-preventing the unauthorized release of
information and privacy. It also is used to support other
equally important services, including authentication
(verifying the identity of the remote participant) and
integrity (making sure that the message has not been
altered).

1. Introduction
Computer networks are typically a shared resource used
by many applications for many different purposes.
Sometimes the data transmitted between application
processes is confidential, and the applications would
prefer that others be unable to read it. For example, when
purchasing a

2. Key Distribution Protocol and Its
Mechanism with Classical & Quantum
Cryptography
Key distribution protocols are used to facilitate sharing
secret session keys between users on communication
networks. By using these shared session keys, secure

148

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

communication is possible on insecure public networks.
However, various security problems exist in poorly
designed key distribution protocols; for example, a
malicious attacker may derive the session key from the
key distribution process. A legitimate participant cannot
ensure that the received session key is correct or fresh and
a legitimate participant cannot confirm the identity of
other participant. Designing secure key distribution
protocols in communication security is a top priority. In
some key distribution protocols, two users obtain a shared
session key via a Trusted Centre (TC). Since three parties
(two users and one TC) are involved in session key
negotiations, these protocols are called third-party key
distribution protocols, as in contrast with two-party
protocols where only the sender and receiver are involved
in session key negotiations.

2.1 Classical Cryptography
In classical cryptography, three-party key distribution
protocols utilize challenge response mechanisms or
timestamps to prevent replay attacks. However, challenge
response mechanisms require at least two communication
rounds between the TC and participants, and the
timestamp approach needs the assumption of clock
synchronization which is not practical in distributed
systems (due to unpredictable nature of network delays
and potential hostile attacks). Furthermore, classical
cryptography cannot detect the existence of passive
attacks such as eavesdropping. On the contrary, a
quantum channel eliminates eavesdropping, and therefore,
replay attacks. This fact can then be used to reduce the
number of rounds of other protocols based on challengeresponse mechanism to a trusted center.

2.2 Quantum Cryptography
In quantum cryptography, Quantum Key Distribution
Protocols (QKDPs) employ quantum mechanisms to
distribute session keys and public discussions to check for
eavesdroppers and verify the corrective ness of a session
key. However, public discussions require additional
communication rounds between a sender and receiver and
cost precious qubits. By contrast, classical cryptography
provides convenient techniques that enable efficient key
verification and user authentication.
Previously proposed QKDPs are the theoretical design
security proof and the physical implementation. A threeparty QKDP proposed in requires that the TC and each
participant preshare a sequence of EPR pairs rather than a
secret key. Consequently, EPR pairs are measured and

149

consumed, and need to be reconstructed by the TC and a
participant after one QKDP execution.

3. QKDP’s Contributions
As mentioned, quantum cryptography easily resists replay
and passive attacks, where as classical cryptography
enables efficient key verification and user authentication.
By integrating the advantages of both classical and
quantum cryptography, this work presents 2 QKDPs with
the following contributions:

Man-in-the-middle attacks can be prevented,
eavesdropping can be detected, and replay attacks can be
avoided easily.

User authentication and session key verification
can be accomplished in one step without public
discussions between the sender and the receiver.

The secret key preshared by a TC and a user can
be long term which is repeatedly used.

The proposed schemes are first probably secure
QKDPs under the random oracle model.
In the proposed QKDPs, the TC and a participant
synchronize their polarization bases accordingly to a
preshared secret key. During the session key distribution,
the preshared secret key together with a random string
are used to produce another key encryption key to
encipher the session key. A recipient will not receive the
same polarization qubits even if an identical session key
is retransmitted. Consequently, the secrecy of the
preshared secret key can be preserved and, thus, this
preshared secret key can be long term and repeatedly
used between the TC and the participant. Due to the
combined use of classical cryptographic techniques with
the quantum channel, a recipient can authenticate user
identity, verify the correctness and freshness of the
session key, and detect the presence of eavesdroppers.
Accordingly, the proposed communication rounds among
existing QKDPs. The same idea can be extended to
design of other QKDPs with or without a TC.
The random oracle model is employed to show the
security of the proposed protocols. The theory behind the
random oracle model proof indicates that when the
adversary breaks the three-party QKDPs, then a
simulator can utilize the event to break the underlying
atomic primitives. Therefore, when the underlying

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

primitives are secure, then the proposed three-party
QKDPs are also secure.

4. The Preliminaries
Two interesting properties, quantum measurement and nocloning theorem on quantum physics, are introduced in
this section to provide the necessary background for the
discussion of QKDPs.

4.1 Quantum Measurement
Let Tom and Tin be two participants in a quantum
channel, where Tom is the sender of qubits and Tin is the
receiver. The R basis and the D basis are required to
produce or measure qubits. If Tom wants to send a
classical bit b, then she creates a qubit and sends it to Tin,
based on following rules.
 If b = 0 (1) and Tom chooses R basis, the qubit is
((|0)(|1)).


If b = 0 (1) and Tom chooses D basis, the qubit is
((⅟√2 (|0) + (|1)) (⅟√2 (|0) - (|1))).

When Tin receives the qubit, he randomly chooses an R
basis or D basis and measures the cubit to get the
measuring result љ. If Tin measures the qubit using the
same basis as Tom, then љ = b will always hold;
Otherwise, љ = b holds with a probability ½. Note that
Tin cannot simultaneously measure the qubit in an R basis
and D basis, and any eavesdropper activity identified be
measuring the qubit will disturb the polarization state of
that qubit.

4.2 No Cloning Theorem
One cannot duplicate an unknown quantum state. i.e., a
user cannot copy a qubit if he/she does not know the
polarization basis of the qubit. Bases on this no cloning
theorem, we propose the UCB assumption, in which one
can identify the polarization basis of an unknown
quantum state with a negligible probability to facilitate
security proof of the proposed QKDPs.

5. Three-Party Authenticated Quantum Key
Distribution Protocol (3AQKDP)
This section presents a 3AQKDP with implicit user
authentication, which ensures that confidentiality is only
possible for legitimate users and mutual authentication is

150

achieved only after secure communication using the
session key start. The proposed three-party QKDPs are
executed purely in the quantum channel and this work
does not consider errors caused by environmental noise.
The following describes the notation, the first proposed
3AQKDP and its security theorem.
The following are the notations, proposed 3AQKDP:
R: The rectilinear basis, polarized with two
orthogonal directions, (|0) and (|1).
D: The diagonal basis, polarized with two
orthogonal directions,
((⅟√2 (|0) + (|1)) and (⅟√2 (|0) - (|1))).
(1)
Ui: The k-bit identity of a participant.
In this paper, we denote UA as the identity of Tom, UB as
the identity of Tin and U as a non-fixed participant.
h(.): The one-way hash function. The mapping of
h(.) is {0,1}* → {0,1}m

(2)

rTU: An 1-bit random string chosen by the TC.6.
KTU: The n-bit secret key shared between the TC and a
participant, such that KTA is the secret key shared between
the TC and Tom. It should be noted that m = u + 2k.
Note that the bases R and D, the identity Ui, and the oneway hash function h(.) are publicly known parameters.

6. The Proposed 3AQKDP
6.1 Setup Phase
Let Tom and Tin be 2 users who would like to establish a
session key:
KTU is the secret key shared between TC and user U.
Bit sequence in KTU is treated as the measuring bases
between user U and the TC. If (KTU)i = 0, the basis D is
chosen; otherwise, the basis R. Note that (KTU)i denotes
the ith bit of secret key (KTU).
The following describes the 3AQKDP by using the
notations defined in previous sections. Here, we assume
that every participant shares a secret key with the TC in
advance either by direct contact or by other ways.
6.2 Key Distribution Phase
The following describes the details of key distribution
phase. Assume that the TC has been notified to start the
3AQKDP with Tom and Tin. TC and the users have to
perform the 3AQKDP as follows:

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

guessing attacks to guess the bases over the quantum
channel and thus, the secret key, KTA (or KTB) can be
repeatedly used.

6.2.1 TC
1.

The TC generates a random number rTA  and a session
key SK. TC then computes
RTA = h(KTA,rTA)  (SK||UA||UB)
for Tom and, similarly rTB and
RTB = h(KTB,rTB)  (SK||UB||UA)
for Tin.

2. The TC creates the qubits, QTA, based on (rTA ||RTA)i
and (KTA)i for Tom where
i = 1;2;……………..;n and (rTA ||RTA)i denotes the ith bit
of the concatenation rTA ||RTA.





If (rTA||RTA)i=0, (KTA)i= 0,
then (QTA)i is (1/√2(|0) + (|1)).

(3)

If (rTA||RTA)i=1, (KTA)i=0,
then (QTA)i is (1/2(|0) - (|1)).

(4)

If (rTA ||RTA)i = 0 , (KTA)i= 1,
then (QTA)i is (|0).

(5)

If (rTA ||RTA)i = 1 , (KTA)i= 1,
then (QTA)i is (|1).

151

In item 2 of users, only Tom (or Tin), with the secret key
KTA (or KTB) is able to obtain SK’||UA||UB (or SK’’|| UB||
UA) by measuring the qubits QTA (or QTB) and computing
h(KTA,r’TA)  R’TA (or h(KTB,r’TB)  R’TB). Hence, Tom
(or Tin) alone can verify the correctness of the ID
concatenation
UA||UB (or UB||UA)

7. Security Proof of 3AQKDP
This section presents a theorem to demonstrate the
security of 3AQKDP. A new primitive, Unbiased-Chosen
Basis (UCB) assumption, based on the non-cloning
theorem is used to facilitate the proof. The UCB
assumption describes that one can distinguish the
polarization basis of an unknown quantum state with only
a negligible probability.
Theorem

(6)

TC then sends QTA to Tom. TC creates qubits QTB in
the same way for Tin.

6.2.2 Users


Tom measures the received
QTA qubits
depending on KTA. If (KTA)i=0, then the qubit is
measured based on the basis D. otherwise, the
basis R. Similarly, Tin measures the receiving
qubits QTB depending on KTB.



Once Tom obtains the measuring results
r’TA||R’TA she then computes
SK’||UA||UB=h(KTA,r’TA)  R’TA
(7)

The session key SK’ can be obtained and the values UA
and UB can be verified. Similarly Tin gains r’TB||R’TB
then, Tin obtains the session key SK” and checks the
correctness of UB and UA. In item 1 of TC, the hash value,
h(KTA,rTA) (or h(KTB,rTB)), is used to encipher the
sequence SK||UA||UB (or SK||UB||UA). Therefore, a
recipient will not receive the same polarization qubits
even if an identical session key is retransmitted. This also
makes an eavesdropper not be able to perform offline



(A) be the advantage in breaking the
Let
AQKD security of 3AQKDP.



Let
(∆) be the advantage in breaking the
UCB assumption used in 3AQKDP.

If the adversary A breaks the AQKD security of 3AQKDP
after qini Initiate queries, qse Send queries and qh Hash
queries within time t, a UCB assumption attacker ∆ will
have an advantage to break the UCB security of ψ. That
is,
(A) ≤ 2(qini + qse)2/qini .

(∆)

Where t ≤ t + qini Trn: Trn is the time to generate a
random number.

8. Conclusion
This study proposed two three-party QKDPs to
demonstrate the advantages of combining classical
cryptography with quantum cryptography. Compared with
classical three-party key distribution protocols, the
proposed QKDPs easily resist replays and passive attacks.
This proposed scheme efficiently achieves key

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

verification and user authentication and preserves a long
term secret key between the TC and each user.
Additionally, the requirement of quantum channel can be
costly in practice, it may not be costly in the future,
Moreover, the proposed QKDPs have been shown secure
under the random oracle model. By combining the
advantages of classical cryptography with quantum
cryptography, this work presents a new direction in
designing QKDPs.

152

He has published and presented around 10 papers in National
level Seminars. His interest in research area includes Cloud
computing, Mobile computing (security).
R. Prabhu is pursuing his Ph.D. He received his professional
degree M.C.A, in Computer Applications and also completed his
B.Sc in Computer Science from Bharathiar University, Tamilnadu,
India. Previously he worked as Technical Recruiter for 2 years.
Currently working has as an Asst. Professor of Computer
Applications, Nehru College of Management, Coimbatore,
Tamilnadu, India from the year 2010. He presented & published
papers more than 5 papers in National level seminar. His area of
interest in research is Cryptography and Network Security,
Information Security, Software Engineering.

References
[1] G.Li “Efficient network authentication protocols: Lower bounds
and Optimal implementations”, Distributed computing, Vol 9, No. 3
pp.1995.
[2] J.T.Kohi, “The evolution of the Kerberros Authentication
Service” European conf. proc pp 295-313-1991. B.Nuemann and T.
Ts’o “Kerberros” An authentication service for computer networks”
IEEE comm., Vol 32, No.9 pp33-38 1994.
[3] W.Stallings, Cryptography and network security: principles and
practice, prentice hall 2003.
[4] N. Linden, S. Popescu, B. Schumacher, and M. Westmoreland,
"Reversibility of local transformations of multiparticle
entanglement",
quant-ph/9912039
W. Dür, J. I. Cirac, and R. Tarrach, "Separability and distillability of
multiparticle quantum systems", Phys. Rev. Lett. 83, 3562 (1999)
[5] Ll. Masanes, R. Renner, M. Christandl, A. Winter, and J. Barrett,
"Unconditional security of key distribution from causality
constraints", quant-ph/0606049
[6] C. H. Bennett, G. Brassard, C. Crépeau, and M.-H.
Skubiszewska, "Practical quantum oblivious transfer", Lecture Notes
in Computer Science 576, 351 (1991)
[7] C. H. Bennett, P. W. Shor, J. A. Smolin, and A. V. Thapliyal,
"Entanglement-assisted capacity of a quantum channel and the
reverse Shannon theorem", Phys. Rev. Lett. 83, 3081 (1999)
[8] P. W. Shor, "Equivalence of additivity questions in quantum
information theory", Commun. Math. Phys. 246, 453 (2004)
[9] M. B. Hastings, "A counterexample to additivity of minimum
output entropy", Nature Physics 5, 255 (2009)

Suganya Ranganathan is pursuing her Ph.D at Karpagam
University. She holds her MCA degree from Anna University,
Chennai. Also completed her B.Sc Computer Science degree
from Bharathiar University, Coimbatore. Being her research area
is in Software Testing she also has interest on Security Oriented
networks, Digital Image Processing and whole of Software
Engineering. She was working as a Software Engineer in USTGlobal for 2 years. And recently entered into academics with 1
year of teaching experience. Organized and also presented
papers in national level conferences.
A.Senthil Karthick Kumar is a Ph.D. Research Scholar. He
completed his B.Sc in Information Technology from Madurai
Kamaraj University in 2003. Did his MCA from Bharathiar
University in 2006; M.Phil in Computer Science in 2010. He is
Pursing MBA in Human Resource Management, from Bharathiar
University through DDE. Prior to joining in NCM he worked for 3
years as a Human Resource Technical Staffing Person in various
companies like (Perot Systems), Bangalore. Currently he is
working as an Assistant Professor in Nehru College of
Management, Coimbatore under Bharathiar University. He
enrolled his Life time Member ship with ISTE, and Member in CSI.

R. Nagarajan is pursuing his Ph.D. He completed his Post
graduate degree in MCA in computer Applications in
Bharathidasan University, and he completed his B.Sc in Applied
Science (Faculty of Engineering) from Bharathiar University. He
has 20 years of experience as Manager-Operations in Bannari
Amman Group. Currently working has as an Asst. Professor of
Computer Applications, Nehru College of Management,
Coimbatore, Tamilnadu, India from the year 2009.Currently He is
concentrating on Space Communications using Optic Techniques.
He presented & published papers more than 6 papers in National
level seminar. His area of interest in research is Cryptography and
Network Security, Information Security, Robotics.
Dr.D.Balaji presently working as a Director – Department of
Computer Applications, Nehru College of Management,
Coimbatore. He has graduated from Madura College, Madurai,
which was established in the year 1887. He has completed his
post graduation from the Computer centre, Madurai Kamaraj
University. He has also completed M.Phil, and M.B.A., from
Madurai Kamaraj University. He has completed Ph.D titled
“Project Based Organizational Teaching and Learning”. He is
having overall 13 years of academic experience. He has worked
for University of Bedfordshire, UK for 7 years and 1 year for ABB
India limited. He has published his research work in 2 international
journals, and presented 9 papers in the International conferences
and 14 papers in the national conferences. His area of
specialization is IT applications in Higher Education and
Programming Languages. He has visited many countries like
Romania, Jordan, Srilanka, Malaysia, etc., for his research work.
Venkateswaran Radhakrishnan pursing Ph.D currently in the
Karpagam Academy of higher Education, Karpagam University,
Tamilnadu, India, in the field of Cryptography and Network
Security. He received his professional degree M.C.A, in Computer
Applications and also completed his MBA (Information
Technology) from Bharathiar University, Tamilnadu, India, and he
received his M.Phil Degree in Computer Science from
Bharathidasan University, Tamilnadu, India. He has also worked
as an Asst. Professor of Computer Applications, Nehru College of
Management, Coimbatore, Tamilnadu, India from the year 2006.
He is the institution member of Computer Society of India. He
published papers in International Journals and Conferences and
also presented paper in more than 10 national seminars and
conferences. His research interest area in Cryptography and
Network Security, Information Security, Software Engineering, and
Relational database Management Systems.
Ramesh Kumar.K pursing M.B.A at M.S University, Tirunelveli.
Completed his B.E in Computer Science at Anna University. He
has experience in teaching for 2 yrs at NCM, Coimbatore and
Worked as Software Engineer and has 3yrs of experience in
Jayakailash group of companies and also 2 yrs of experience in
solid solutions. He has interest on Asp .net, C, C++, Java, Data

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
mining and Data Structures. He has also attended many
conferences and done certification courses which will support the
carrier growth.

153

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

153

Fault Tolerance Mobile Agent System Using Witness Agent in 2Dimensional Mesh Network
Ahmad Rostami1, Hassan Rashidi2, Majidreza Shams Zahraie3
1

2

Student of Faculty of Electrical, Computer, IT & Biomedical Engineering,
Qazvin Islamic Azad University, Qazvin, Iran

Assistant Professor of Faculty of Electrical, Computer, IT & Biomedical Engineering,
Qazvin Islamic Azad University, Qazvin, Iran
3

Student of Faculty of Electrical, Computer, IT & Biomedical Engineering,
Qazvin Islamic Azad University, Qazvin, Iran

Abstract
Mobile agents are computer programs that act autonomously on
behalf of a user or its owner and travel through a network of
heterogeneous machines. Fault tolerance is important in their
itinerary. In this paper, existent methods of fault tolerance in
mobile agents are described which they are considered in linear
network topology. In the methods three agents are used to fault
tolerance by cooperating to each others for detecting and
recovering server and agent failure. Three types of agents are:
actual agent which performs programs for its owner, witness
agent which monitors the actual agent and the witness agent after
itself, probe which is sent for recovery the actual agent or the
witness agent on the side of the witness agent. Communication
mechanism in the methods is message passing between these
agents. The methods are considered in linear network. We
introduce our witness agent approach for fault tolerance mobile
agent systems in Two Dimensional Mesh (2D-Mesh) Network.
Indeed Our approach minimizes Witness-Dependency in this
network and then represents its algorithm.
Keywords: mobile agent system, mesh network

1. Introduction
Mobile agents are autonomous objects capable of
migrating from one server to another server in a computer
network[1] . Mobile agent technology has been considered
for a variety of applications [2] , [3] , [4] such as systems
and network management [5] , [6] , mobile computing [7] ,
information retrieval [8] , and e-commerce [9] .
In the through mobile agent life cycle may happen failures
[10] . The failures in a mobile agent system, may lead to a
partial or complete loss of the agent. So the fault

tolerant mobile agent systems should be created. Failures
could be detected and recovered. Many of Methods exist
relative to fault tolerance in mobile agent systems that are
considered any of them.
Our approach is rooted from the approaches suggested
in[11] , [12] . In[11] two types of agents are distinguished.
The first type performs the required computation for the
user which is the actual agent. Another type is to detect
and recover the actual agent that is called the witness
agent. These two types of agents communicate by using a
peer-to-peer messages passing mechanism. In addition to
the introduction of the witness agent and the messages
passing mechanism, logging the actions performed by the
actual agent is needed, since when failures happen,
uncommitted actions must be aborted when rollback
recovery is performed[13] . Check-pointed data also is
used[14] to recover the lost agent.
During performing the actual agent, the witness agents are
increased by addition of the servers, meaning any witness
monitors the next witness and the actual agent[12] .
Our proposed scheme decreases the number of witness
agents when the mobile agent itinerates in 2D-Mesh
Network. The 2D-Mesh network properties are used to
decrease Witness-Dependency. The algorithm of the
approach is developed and simulated in C++ language.
The rest of the paper is structured as follows: Section 2
presents the method of fault tolerance in mobile agent
systems by using the witness agents and probe in linear
network topology. In Section 3, Mesh Network Topology
and 2D-Mesh network is considered shortly. In Section 4,
the proposed scheme and its method for decreasing of the

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

witness-dependency is described. An algorithmic view of
the new approach also is presented in Section 4 and,
finally, Section 5 is identified conclusion and future work.

2. Fault Tolerance in Mobile Agent Systems
by Using the Witness Agents in Linear
Network Topology
Recently, fault-tolerant mobile agent execution has been
very active field of research. There are different methods
in the literature based on linear network. Some of them are
introduced in the following below.

154

but not the least, the lost agent due to the failure should be
recovered when a server failure happens. However, an
agent has its internal data which may be lost due to the
failure. Therefore, we have to check-point the data of an
agent as well as rollback the computation when necessary.
A permanent storage to store the check-pointed data in the
server is required. Moreover, messages are logged in the
log of the server in order to perform rollback of
executions. The overall design of the server architecture is
shown in Fig. 1.

2.1 Related work
Many method exist for fault tolerance mobile agent
systems, for example primary-backup models [15] ,
exactly once model [16] , fault tolerant mobile agent
system based on the Agent-Dependent approach [17] ,
mobile agent fault tolerance by exception handling
approach [18] , Fault Tolerance in Mobile Agent Systems
by Cooperating the Witness Agents [11] and etc. The last
approach is explained in the next sub-section.

2.2 System Architecture and Protocol Design
In [11] , in order to detect the failures of an actual agent
as well as recover the failed actual agent, another types of
agent are designated, namely the witness agent, to monitor
whether the actual agent is alive or dead. In addition to the
witness agent, a communication mechanism between both
types of agents is designed. In this design, agents are
capable of sending messages to each other. This type of
messages is called the Direct Messages which are peer-topeer messages. Since a witness agent always lags behind
the actual agent, the actual agent can assume that the
witness agent is at the server that the actual agent just
previously visited. Moreover, the actual agent always
knows the address of the previously visited server.
Therefore, the peer-to-peer message passing mechanism
can be established.
There are cases that the actual agent cannot send a direct
message to a witness agent for several reasons, e.g., the
witness agent is on the way to the target server. Then,
there should be a mailbox at each server that keeps those
unattended messages. This type of messages is called the
Indirect Messages. These indirect messages will be kept in
the permanent storage of the target servers.
Every server has to log the actions performed by an agent.
The logging actions are invoked by the agent. The
information logged by the agent is vital for failure
detection as well as recovery. Also, the hosting servers
have to log which objects have been updated. This log file
is required when performing the rollback recovery. Last

Fig. 1 The server design

The protocol is based on message passing as well as
message logging to achieve failure detection. Assume that,
currently, the actual agent is at server Si while the witness
agent is at server Si-1. Both the actual agent and the witness
agent have just arrived at Si and Si-1, respectively. The
actual agent and the witness agent are labeled as α and Wi-1
, respectively.
The actual agent α plays an active role in the designed
protocol. After α has arrived at Si, it immediately logs a
message, log

i
arrive

, on the permanent storage in Si. The

purpose of this message is to let the coming witness agent
know that α has successfully landed on this server. Next, α
informs Wi-1 that it has arrived at Si safely by sending a
message, msg

i
arrive

, to Wi-1.

The actual agent α performs the computations delegated
by the owner on Si. When it finishes, it immediately
check-points its internal data to the permanent storage of
Si, then, it logs a message, log

i
leave

, in Si. The purpose of

this message is to let the coming witness agent know that
α has completed its computation and it is ready to travel to
the next server Si+1. In the next step, α sends Wi-1 a
message, msg

i
leave

, in order to inform Wi-1 that α is ready

to leave Si. At last, α leaves Si and travels to Si+1.
The witness agent is more passive than the actual agent in
this protocol. It will not send any messages to the actual
agent. Instead, it only listens to the messages coming from
the actual agent. It is assumed that the witness agent, Wi-1,
arrives at Si-1. Before Wi-1 can advance further in the
network, it waits for the messages stent from α. when Wi-1
is in Si-1, it expects receiving two messages: one is

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

msg

i
arrive

and another one is msg

are out-of-order, msg

i
leave

i
leave

. If the messages

will be kept in the permanent

storage of Si-1. That is msg

i

is considered as

leave

unattended, and becomes an indirect message until Wi-1
receives msg

msg

i
arrive

i

. When Wi-1 has received both

arrive

and msg

i
leave

, it spawns a new agent called

155

Wi-1 is monitoring α and Wi-2 is monitoring Wi-1. Assuming
the following failure sequence happen: Si-1 crushes and
then Si crushes. Since Si-1 crushes, Wi-1 is lost, hence no
one monitoring α. This is not desirable. Therefore, a
mechanism to monitor and to recover the failed witness
agents is needed. This is achieved by the preserving the
witness-dependency: the recovery of Wi-1 can be
performed by Wi-2, so that α can be recovered by Wi-1.
Fig.3 shows the witness agent failure scenario.

Wi. The reason of spawning a new agent instead of letting
Wi-1 migrate to Si is that originally Wi-1 is witnessing the
availability of α. If a server failure happens just before Wi-1
migrates to Si, then no one can guarantee the availability
of the actual agent. Note that the new witness agent knows
where to go, i.e. Si, because msg

i
arrive

or msg

i
leave

contains information about the location of Si where α has
just visited. Fig. 2 shows the flow of the protocol.

Fig. 3 The witness agent failure scenario

Note that there are other more complex scenarios, but as
long as the witness-dependency is preserved, agent failure
detection and recovery can always be achieved. In order to
preserve the witness- dependency, the witness agents that
are not monitoring the actual agent receive message from
the witness agent that is monitoring it. That is, Wi sends a
periodic message to Wi-1 in order to let Wi-1 knows that Wi
Fig. 2 Steps in the witness protocol

2.3 Creation of the Witness Agent
As it is mentioned in the previous sub-section, upon
receiving msg

i
leave

, Wi-1 spawns Wi , and Wi travels to

Si. The procedure goes on until α reaches the last
destination in its itinerary. The youngest (i.e., the most
recently created) witness agent is witnessing the actual
agent. On the other hand, the elder witness agents are
neither idle nor terminated; they have another important
responsibility: an earlier witness agent monitors the
witness agent that is just one server closer to the actual
agent in its itinerary. That is:
W0  W1  W2 … Wi-1  Wi  α
Where “” represents the monitoring relation. The above
dependency is named the Witness- Dependency. This
dependency cannot be broken. For instance, if α is in Si,

is alive. This message is labeled as msg

i
alive

. If Wi is

dead, Wi-1 will spawn a new witness agent, namely Wi, in
order to replace the lost witness agent in Si. When Wi
arrives at Si, it re-transmits the message msg

i
alive

to Wi-1.

In order to handle this failure series, the owner of the
actual agent can send a witness agent to the first server S0,
in the itinerary of the agent with a timeout mechanism.
The effect of sending this witness agent is similar to the
case when a witness agent, Wi, fails to receive msg

i 1
alive

.

This method can recover W0 and the witness-dependency
effectively with an appropriate timeout period.
This procedure consumes a lot of resources along the
itinerary of the actual agent. Then, the number of alivewitnesses should be decreased as far as possible and
minimize the witness-dependency.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

156

i, j

3. Mesh Network

as msg

In a mesh network, the nodes are arranged into a kdimensional lattice. Communication is allowed only
between neighboring nodes; hence interior nodes
communicate with 2k other nodes [19] . A k-dimensional
mesh has n1× n2× n3× …× nk, where ni is the size of ith
dimension. Fig. 4 illustrates a 4×4 2D-Mesh with 16
nodes.
In a mesh network, two nodes (x1, x2, x3…, xk) and (x'1,
x'2, x'3…, x'k) are connected by an edge if there exist i, j
such that |xi – x'i|=1 and xj=x'j for j≠i.

computing and check-pointing of data are finished and the

NewWitnessNumber

message log

i
leave

. This message is sent when

is logged, because of assuring that the

agent has finished its task and data stored on the stable
storage. When the owner receives the message, it checks
the new witness indices (i.e. new witness location in the
2D-Mesh is identified by using the number of row and
column) with the existing elements in the witnesses array
from the last to the first for finding its neighbor 1 . For
example assume a condition which there is a node that
W[e] is its indicator and this node is adjacent to the new
witness; the owner sends a message to the witness (No
new witness) to points to the new witness. This type of
message is denoted as msg

i, j
Po int NewWitness

.

Fig. 5 shows the movement path of an actual agent from
the position of (1,1) to (3,2).

Fig. 4 A 4×4 two dimensional Mesh

4. Proposed Scheme
In our scheme the assumptions are as follows:
 The network topology is 2D-Mesh. Each agents in
2D-Mesh network are shown as a pair (i, j), where i
is the number of row and j is the number of column.
 Agent itinerates dynamically in the network, i.e. it
doesn’t have any specified path list.
 No failure happens for the owner of the actual agent.
Replication can solve the problem.

4.1 Our Approach
The main objective of our approach is to decrease the
witness-dependency in 2D-Mesh. In this method, agents
are in the nodes of 2D-Mesh graph. The location of each
agent in the graph is shown as a pair (i, j). Assume that the
owner of the actual agent hold an array, W, for the location
of the witness agent. The W is empty at first and is filled
during the actual agent’s itinerary with the indices number
of each witness. When the actual agent travels to a new
server in the 2D-mesh network, it sends a message to
owner after computing and check-pointing the data. This
message contains the node indices which actual agent
currently resides on it. This type of message is denoted

Fig. 5 The movement of the actual agent

As it can be seen, if the adjacent of nodes are not
considered, then the witness-dependency is same as linear
method. In this case the witness-dependency is as below:
W1,1  W1,2  W1,3  W2,3  W2,2 W3,2… α
If the adjacent of nodes and the properties of 2D-Mesh are
considered for decreasing the witness-dependency in the
Fig. 5, the witness-dependency is decreased due to W1,2
and W2,2 which are adjacent to each other. In this case, the
witness-dependency is as below:
W1,1  W1,2  W2,2 W3,2… α
Fig. 6 shows the decreased witness-dependency on the
graph.

1 In the most case that is considered, the new witness agent was neighbor
with the last elements of array.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

157

If the above conditions are not true then Index decreases
by one (i.e. Index=index-1) and then pair (p, q) compares
with another element of array W. The procedure goes on
until all elements of array are compared. If none of the
array elements are adjacent with new witness, then the
location of new witness is added to the end of array list.
Index is succeeded by one (i.e. Index=index+1). The
pseudo code of the algorithm is shown in Fig.7.

Fig. 6 The decreased witness-dependency

The fault tolerance of sending and receiving of the
messages are considered in [11] . Hence, the messages

msg

i, j
NewWitnessNumber

and msg

lost eventually, they are like

i, j

Po int NewWitness are not
i
msg alive and they can be

recovered as same as recovery message methods which are
presented in [11] .

4.2 The Algorithm
As it is mentioned in sub-section 4.1, it is assumed that the
owner of the actual agent holds an array, W, for the
location of the witness agent, and Index is a pointer that
points to the position of youngest witness (i.e. Index
points to the last element in W). When actual agent α visits
a new node, it sends message msg

i, j
NewWitnessNumber

to

owner after computing and check-pointing the data. This
message contains the node indices of new witness agent.
For example, assume a condition that pair (p, q) is the new
witness indices. These indices compare with the existing
elements of array W. In 2D-Mesh, two nodes (xi, xj) and
(x'i, x'j) are connected by an edge, if |xi – x'i|=1 and xj=x'j
or |xj – x'j|=1 and xi=x'i. Hence pair (p, q) compares with
the value of W[Index-1]1. If they are adjacent then owner
send msg

i, j
Po int NewWitness

to the witness that W[Index-1]

is its indicator in the array W for pointing to the new
witness agent. Let the value of W[Index-1] is Wi,j . In this
case if each of the below conditions is true then they are
adjacent:
|i-p|=1 and j=q
Or
|j-q|=1 and i=p

1
Whereas W[Index] is adjacent with new visited node, the comparison
should be started from W[Index-1]

Fig.7 The pseudo code of the algorithm

5. Conclusions and Future Work
In this paper, at first, an existing fault tolerance method in
mobile agent systems in linear network topology is
considered. The existing procedure consumes a lot of
resources along the itinerary of the actual agent. Then, an
approach to enhance fault tolerance mobile agent systems
in 2D-Mesh is proposed. In this approach witnessdependency is decreased. With regard to length of witness
agent deduction, the cost of witness-dependency in 2DMesh network is less than linear network, because the
witness length is decreased. In fact, in this approach the
properties of 2D-Mesh network is used (i.e. nodes
adjacency) for decreasing of witness-dependency.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

In the Future work, the following assumptions can be
considered:
 3D-Mesh or k-Dimensional Mesh topology: Topology
of the proposed algorithm is 2D-Mesh and the algorithm
can be considered in 3D-Mesh or each K-Dimensional

Mesh network.
topology: The topology can be
considered in Hyper-Cube Networks.
 The topology can be considered without a
coordinator for holding the array. That is the array
can be part of agent’s data.
 Hyper-Cube

References
 
[1]

H.W. Chan, T.Y. Wong, K.M. Wong, and M. R. Lyu.
“Design, Implementation and Experimentation on Mobile
Agent Security for Electronic Commerce Applications.”
Proceedings of the International Conference on Parallel and
Distributed Processing Techniques and Applications.
pp.1871- 1878.
[2] D.Chess, B. Grosof, C. Harrison, D. Levine, C. Parris ,and
G.Tsudik, “Itinerant Agents for Mobile Computing,” IEEE
PersonalComm. Systems, vol. 2, no. 5, pp. 34-49, Oct.
1995.
[3] D. Chess, C.G. Harrison, and A. Kershenbaum, “Mobile
Agents:Are They a Good Idea?” Mobile Agents and
Security, G.Vigna, ed.,pp. 25-47, Springer Verlag, 1998.
[4] D.B. Lange and M. Oshima, “Seven Good Reasons for
Mobile Agents,” Comm. ACM, vol. 45, no. 3, pp. 88-89,
Mar. 1999.
[5] A. Bieszczad, B. Pagurek, and T.White, “Mobile Agents
for Network Management,” IEEE Comm. Surveys, Sept.
1998.
[6] T. Gschwind, M. Feridun, and S. Pleisch, “ADK—Building
MobileAgents for Network and Systems Management from
Reusable Components,” Proc. First Int’l Conf. Agent
Systems and Applications/ Mobile Agents (ASAMA ’99),
Oct. 1999.
[7] K. Takashio, G. Soeda, and H. Tokuda, “A Mobile Agent
Framework for Follow-Me Applications in Ubiquitous
Computing Environment,” Proc. Int’l Workshop Smart
Appliances and Wearable Computing (IWSAWC ’01), pp.
202-207, Apr. 2001.
[8] W. Theilmann and K. Rothermel, “Optimizing the
Dissemination of Mobile Agents for Distributed
Information Filtering,” IEEE Concurrency, pp. 53-61, Apr.
2000.
[9] P. Maes, R.H. Guttman, and A.G. Moukas, “Agents that
Buy and Sell,” Comm. ACM, vol. 42, no. 3, pp. 81-91,Mar.
1999.
[10] S. Pleisch, A. Schiper, “Fault-Tolerant Mobile Agent
Execution,” IEEE Transaction Computer, pages 209- 222,
Feb. 2003.
[11] T. Y. Wong , X. Chen, M. R. Lyu, “Design And Evalution
of A Fault Tolerant Mobile Agent System,”Computer
Science & Engineering Depatment the Chines University of
Hong Kong, Feb 2004.

158

[12] S. Beheshti , M. Ghiasabadi, M. Sharifnejad, A. Movaghar,
“Fault Tolerant Mobile Agent Systems by using Witness
Agents and Probes, “Proc. fourth Int’l Conf. Sciences of
Electronic,
Technologies
of
Information
and
Telecommunications (SETIT 2007- TUNISIA), March
2007.
[13] M. Strasser , K. Pothernel,” System Mechanisms for Partial
Rollback of Mobile Agent Execution.” Proceedings of 20th
International Conference on Distributed Computing
Systems 2000, pp.20-28.
[14] V. F. Nicola, “Check-pointing and the Modeling of
Program Execution Time.” Software Fault Tolerance, M.
Lyu (ed.), John Wiley & Sons, 1994, pp.167-188.
[15] N. Budhirja, K. Marzullo, F.B. Schneider, and S. Toueg,
“The Primary-Backup Approach,” Distributed Systems, S.
Mullender, ed., second ed., pp. 199-216, Reading, Mass.:
Addison-Wesley, 1993.
[16] Q. Xin, Y. Yu, Z. Qin, “Fault Tolerance Issues in Mobile
Agents,” Computer Science & Engineering Department
Univ. of California, San Diego, June 2000.
[17] S. Pleisch, A. Schiper, “FATOMAS – A fault-Tolerant
Mobile Agent System Based on the Agent-Dependent
approach,” IEEE Computer Society Press. To appear in
proceeding of the int’l Conference on Dependable Systems
and Networks, 2001.
[18] S. Pears, J. Xu, C. Boldyreff, “Mobile Agent Fault
Tolerance for Information Retrieval Application: An
Exception Handling Approach,” In proceeding of the Sixth
IEEE International Symposium on Autunomous
Decentralized systems (ISADS’03), 2003.
[19] M. J. Quinn, Designing Efficient Algorithms for Parallel
Computers, University of New Hampshire: McGraw-Hill,
1976.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

159

Securing Revocable Iris and Retinal Templates using Combined
User and Soft Biometric based Password Hardened Multimodal
Fuzzy Vault
V. S. Meenakshi1 and Dr G. Padmavathi2
1

2

Department of Computer Applications, S.N.R. Sons College
Coimbatore, Tamilnadu, India

Department of Computer Science, Avinashilingam Deeemed University for Women
Coimbatore, Tamilnadu, India

Abstract
Biometric systems are subjected to a variety of attacks. Stored
biometric template attack is very severe compared to all other
attacks. Providing security to biometric templates is an important
issue in building a reliable personal identification system. Multi
biometric systems are more resistive towards spoof attacks
compared to unibiometric counterpart. Soft biometric are
ancillary information about a person. This work provides
security and revocability to iris and retinal templates using
combined user and soft biometric based password hardened
multimodal biometric fuzzy vault. Password hardening provides
security and revocability to biometric templates. Eye biometrics
namely iris and retina have certain merits compared to
fingerprint. Iris and retina capturing cameras can be mounted on
a single device to improve user convenience. Security of the
vault is measured in terms of min-entropy.
Keywords: Biometric template security, min-entropy, fuzzy
vault, retina, iris, revocability, Soft Biometrics

are highly secure and use a stable physiological trait. They
are very difficult to spoof. Iris and retinal texture
are different for right and left eye. They are unique even
for identical twins. Retina is best suitable for high security
systems.

1.2 Soft Biometrics
Soft biometrics provides ancillary information about a
person (gender, ethnicity, age, height, weight, eye color
etc). They lack distinctiveness or permanence. Hence Soft
biometrics alone is not enough to differentiate two
individuals. Anyhow when combined with primary
biometrics (Fingerprint, Iris, Retina etc) soft biometrics
gives better results

1.3 Operation of Fuzzy Vault

1. Introduction
1.1 Merits of eye biometrics - Iris and Retina
Iris is the colored ring surrounding the pupil of the eye.
Retinal scan capture the pattern of blood vessels in the
eye. Retina and iris as biometric have certain merits
compared to other biometrics. They are very difficult to
spoof. More over retinal patterns do not change with age.
When a person is dead then the lens will not converge the
image that fall on the retina. Retina and iris are internal
organs and is less susceptible to either intentional or
unintentional modification unlike fingerprint. Retina is
located deep within ones eyes and is highly unlikely to be
altered by any environmental or temporal conditions. Both

Fuzzy vault is a cryptographic construct proposed by Juels
and Sudan [1,2]. This construct is more suitable for
applications where biometric authentication and
cryptography are combined together. Fuzzy vault
framework thus utilizes the advantages of both
cryptography and biometrics. Fuzzy vault eliminates the
key management problem as compared to other practical
cryptosystems.
In fuzzy vault framework, the secret key S is locked by G,
where G is an unordered set from the biometric sample. A
polynomial P is constructed by encoding the secret S. This
polynomial is evaluated by all the elements of the
unordered set G.
A vault V is constructed by the union of unordered set G
and chaff point set C which is not in G.
V=GUC

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

The union of the chaff point set hides the genuine point set
from the attacker. Hiding the genuine point set secures the
secret data S and user biometric template T. The vault is
unlocked with the query template T’. T’ is represented by
another unordered set U’. The user has to separate
sufficient number of points from the vault V by comparing
U’ with V. By using error correction method the
polynomial P can be successfully reconstructed if U’
overlaps with U and secret S gets decoded. If there is not
substantial overlapping between U and U’ secret key S is
not decoded. This construct is called fuzzy because the
vault will get decoded even for very near values of U and
U’ and the secret key S can be retrieved. Therefore fuzzy
vault construct become more suitable for biometric data
which show inherent fuzziness hence the name fuzzy vault
as proposed by Sudan [2]. The security of the fuzzy vault
depends on the infeasibility of the polynomial
reconstruction problem. The vault performance can be
improved by adding more number of chaff points C to the
vault.

160

vault. Therefore, security of the password is crucial. It is
very difficult for an attacker to compromise the biometric
template and the combined password at the same time.
The proposed method constructs a fuzzy vault using the
feature points extracted from iris and retina. The iris and
retinal multimodal biometric fuzzy vault is then hardened
using the password.
Steps in hardening scheme:
1. A combined user and soft biometric password is
generated.
2. A random transformation function is derived from
the combined password.
3. The password transformed function is applied to
the iris and retinal template.
4. Fuzzy vault frame work is constructed to secure the
transformed templates by using feature points from
iris and retina.
5. The key derived from the same password is used to
encrypt the vault.

1.4 Limitation of Fuzzy Vault Scheme
Fuzzy vault being a proven scheme has its own
limitations [5].
1. Compromised vault cannot be revoked and it is prone
to cross- matching of templates across various
databases.
2. It is easy for an attacker to develop attacks based on
statistical analysis of the points in the vault.
3. Attacker can substitute few points from his own
biometric feature. Therefore the vault authenticates
both the genuine user and the imposter using the same
biometric identity.
4. Original template of the genuine user is temporarily
exposed and the attacker can glean the template.
To overcome the limitations of fuzzy vault, password is
used as an additional authentication factor. The proposed
retina based fuzzy vault is hardened by combined user and
biometric password. This enhances the user-privacy and
adds an additional level of security.

1.5 Steps in Combined Password Hardened Fuzzy
Vault
The hardened fuzzy vault overcomes the limitations of
non-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 not affected. However, a compromised
password makes the security level same as that of a fuzzy

Fig. 1 Steps in combined password hardened fuzzy vault

Figure 1 depicts the steps involved in the construction of
the combined user and soft biometric based password
hardened multimodal biometric fuzzy vault.
The organization of the paper is as follows: Chapter II
elaborates the background study. Section III explains the
proposed combined password hardened multimodal
biometric fuzzy vault. Section IV discusses the
experimental results and the security analysis. Section V
concludes of the proposed work.

2. Related Work
Karthick Nandakumar et al [5] used the idea of password
transformation for fingerprint and generated transformed

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

161

templates. In his work those transformed templates are
protected using fuzzy vault cryptographic construct in
which password acts an additional layer of security. Iris
based hard fuzzy vault proposed by Srinivasa Reddy [3]
followed the same idea of [5] to generate revocable iris
templates and 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,6,7] and Srinivasa Reddy[3]. Sharat

points are transformed based on the soft biometric
password.
Fig.2(a) shows the retina image Fig. 2(b) shows the retinal
vascular tree and Fig.2(c) shows the vascular pattern after
thinning and joining operation. Fig 2(d) highlights the
retinal template with bifurcation points.

Chikkarur[8] work on fingerprint provided
understanding on feature extraction steps,

The idea proposed by Srinivasa Reddy [3] is utilized to
extract the minutiae feature points from the iris texture.
The following operations are applied to the iris images to
extract lock/unlock data. Canny edge detection is applied
on iris image to deduct iris. Hough transformation is
applied first to iris/sclera boundary and then to iris/pupil
boundary. Then thresholding is done to isolate eyelashes.
Histogram equalization is performed on iris to enhance the
contrast.

a

general

Iris based hard fuzzy vault proposed by Srinivasa Reddy
[3] applies a sequence of morphological operations to
extract minutiae points from the iris texture. This idea is
utilized in the proposed method for extracting the minutiae
feature point from the Iris. The same idea is used but with
combined user and soft biometric password. Soft
biometrics ideas derived from [16, 17, 18, 19] are used for
constructing soft biometric passwords.

3.2 Feature point Extraction of Minutiae from Iris

3. Proposed Method
3.1 Extraction of Bifurcation Feature point from
Retina
Thinning and joining morphological operation is
performed on the Retinal texture. The proposed work uses
the idea of Li Chen [15] for extracting the bifurcation
structure from retina.

(a) Retinal image

(a) Localized Iris Image

(b) Highlighted Iris
Minutiae

(b) Retinal
vascular tree
(c) Red: Permuted Points and Blue: Transformed Points
Fig 3. Iris Minutiae Extraction and Password Transformation

(c)Thinned and
joined image

(d) Highlighted
Bifurcation feature

Fig 2 Retina Feature Point Extraction

These operations highlight the retinal vascular patterns.
Then the bifurcation feature points are extracted from the
vascular patterns. The (x, y) co-ordinates of the feature

Finally the following sequence of morphological
operations is performed on the enhanced iris structure.
(i) closing-by-tophat (ii) opening (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. 3(a) shows
the localized iris image, Fig. 3(b) exhibits the iris image
with the minutiae patterns and Fig 3(c) shows the
permuted and transformed points.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

3.3 Iris and Retinal Minutiae Feature Point
Transformation
The Iris texture and the retinal vascular tree containing the
highlighted minutiae feature points are subjected to simple
permutation and translation. This results in the original
minutiae points being transformed into new points. The
user password is restricted to the size of 5 characters. The
length of the user password is 40 bits.
The soft biometric [16, 17.18] password 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 feature points
highlighted in Iris texture and the retinal structure are
divided into 4 quadrants. One password block is assigned
to each quadrant. Permutation is applied in such a way that
the relation position of the minutiae point does not change.
Each 16 bit password block is split into two components
Tu of 7 bits and Tv of 9 bits in length. Tu and Tv represents
the amount of translation in the horizontal and vertical
directions, respectively. The new feature points are
obtained by the following transformation.
X’u = (Xu + Tu) mod (2 ^ 7)
Y’v = (Yv + Tv) mod (2 ^ 9)
where Xu and X’u is the horizontal distance before and
after transformation respectively. Similarly Yv and Y’v is
the vertical distance before and after transformation
respectively.

162

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 construct the vault. The vault is List
scrambled.

3.5 Fuzzy Vault Decoding
In the authentication phase, the encrypted vault and
combined 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 and retina, 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 genuine point set for polynomial reconstruction. From
this set, all combinations are tried to decode the
polynomial. Lagrangian interpolation is used for
polynomial reconstruction. For a specific combination of
feature points the polynomial gets decoded.
In order to decode the polynomial of degree 8, a minimum
of at least 9 points are required. If the combination set
contains less then 9 points, polynomial cannot be
reconstructed. Now the coefficients and CRC are
appended to arrive at SC*. Then SC* is divided by the
CRC primitive polynomial. If the remainder is not zero,
query image does not match template image and the secret
data decodes in not correct. If the remainder is zero, query
image matches with the template image, and the secret
decoded is correct.

3.6 Parameters used in implementation
3.4 Fuzzy Vault Encoding
The combined transformed features from iris and retina
are encoded in the fuzzy vault. Password acts as an extra
layer of security to the vault. It resists an imposter from
modifying the vault. Secret message is generated as a 128
bit random stream. This secret message is transformed
with the password. The 16 bit CRC is appended to
transformed key S to get 144 bit SC. The primitive
polynomial considered for CRC generation is
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.

The parameters used in this implementation are shown in
Table 1. Chaff points hide the genuine points from the
attacker. More chaff points makes the attacker to take
much time to compromise the vault but consumes
additional computation time. The chaff points added are
10 times in number that of the genuine points.

Table 1: Parameters of the combined Retina and Iris Vault.

Parameter

Iris

Retina

Total

No. of. Genuine points(r)

28

30

58

No. of Chaff points(c)

280

300

580

Total no. of points
(t = r + c)

308

330

638

4. Experimental Results and Analysis
The Iris and retinal template are transformed for three
different user passwords to check for revocability.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

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 password as ‘155BMFUZZY’ (64 bits)
whose ASCII values are (155, 66, 77, 70, 85, 90, 90, 89,) .
These 64 bits are divided into four blocks of 16 bits each.
Each 16 bit is divided into 7 bits and 9 bits for
transformation in horizontal and vertical direction.
The feature point transformation is done with other two
user passwords and soft biometric password combinations
namely ‘170GFTOKEN’ and ‘146AM VAULT’ whose
ASCII codes are (170, 71, 70, 84, 79, 75, 69, 78,) and
(146, 65, 77, 86, 65, 85, 76, 84,) respectively. For the
same original iris and retinal template different
transformed templates are obtained when password is
changed. Fig 4(a), Fig 4(b) and Fig 4(c) shows the
transformed iris feature points and Fig 5(b), Fig 5(c) and
Fig 5(d) shows the transformed retinal templates for three
different passwords.
This property of password
transformation facilitates revocability. Different password
can be utilized for generating different Iris templates.
In the proposed method the security of the fuzzy vault is
measured by min-entropy which is expressed in terms of
security bits. According to Nanda Kumar [7] the minentropy of the feature template MT given the vault V can
be calculated as

163

Eye Color

Character Code
Used

Amber
Blue
Brown
Gray
Green
Hazel
Purple/violet

A
E
B
G
N
H
P

The
security of the
iris
and
retina
vault is tabulated in Table. IV. In order to decode a
polynomial of degree n, (n+1) points are required. The
security of the fuzzy vault can be increased by increasing
the degree of the vault. Polynomial with lesser degree can
be easily reconstructed by the attacker. Polynomial with
higher degree increases security and requires lot of
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 the
adversary uses brute force attack, the attacker has to try
total of (t, n+ 1) combinations of n+ 1 element each. Only
(r, n+1) combinations are required to decode the vault.
Hence, for an attacker to decode the vault it takes C(t,
n+1)/C(r, n+1) evaluations. The guessing entropy for an 8
ASCII character password falls in the range of 18 – 30
bits. Therefore, this entropy is added with the vault
entropy. The security analysis of the combined password
hardened iris fuzzy vault is shown in Table IV.
Providing security [ 9, 10, 11, 12] to biometric template is
very crucial due to the severe attacks targeted against
biometric systems. This work attempts to
provide
multibiometric template security utilizing a hybrid
template protection mechanism against stored biometric
template attacks. Stored biometric template attack is the
worst of all other attacks in a biometric system.

Where
r = number of genuine points in the vault;
c= number of chaff points in the vault
t = the total number of points in the vault (r + c)
n = degree of the polynomial
Table II shows the possible eye colors and Table III shows
the structure of the sample combined user and soft
biometric passwords.

Table II: Eye Color and Character Code Representation

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

(a) PASSWORD : VAULT146AM

164

(a) Red: Permuted Points and Blue:
Transformed Points

(b) PASSWORD: FUZZY155BM
(b) PASSWORD : VAULT146AM

c) PASSWORD : TOKEN170GF

(c) PASSWORD: FUZZY155BM

Fig 4. Transformed Iris Features for Three
Different Soft Biometric Passwords

The hardened retina based fuzzy vault is implemented in
[21]. The multimodal fuzzy vault for fingerprint and iris
was presented in [22]. The primitive idea of combined
user and soft biometric password for iris is shown in [23].
The proposed work is an attempt to mix the ideas of soft
biometrics and multibiometrics [13, 14] in providing
stored biometric template security.
(d) PASSWORD : TOKEN170GF
Fig 5. Transformed Retinal Features for Three Different Soft Biometric
Passwords

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

165

Table III Showing the Structure of Sample Passwords

User
password
(5
character)
(40 Bits)
FUZZY
TOKEN
VAULT
Table IV

Soft Biometric Password
(24 bits)
Gender
Height
Iris color
(M/F)
(0 –
(1
(1
255)
character)
character
(8 bit)
(8 bit)
)
(8 bit)
155
B
M
170
G
F
146
A
M

Combined
Password
(64 bits)

FUZZY155BM
TOKEN170GF
VAULT146AM

Security Analysis of Combined User and Soft Biometric based Password Hardened Multimodal Fuzzy Vault

Vault Type

Degree of
polynomial

Minentropy
of the
vault
(in
security
bits

Total no: of
combinations
tried

Combinations
Required
to decode the
vault

No: of
Evaluations
To be
performed
to decode
the vault

Min-entropy
+ guessing
entropy of the
password
(in security bit )

Iris

8

33

6.1088 x 10 16

6.9069 x 10 6

8.8445 x 109

51 to 63

Retina

8

33

1.1457 x 10 17

1.4307 x 10 7

8.0079 x 10 9

51 to 63

Combined
Iris and
Retina

13

51

1.8395 x 1028

1.0143 x 1013

1.8136 x 1015

68 to 81

5. Conclusions
To resist against identity theft and security attacks it is
very important to have a reliable identity management
system.
Biometrics play vital role in human
authentication. However, biometric based authentication
systems are vulnerable to a variety of attacks. Template
attacks are more serious compared to other attacks. Single
template protection scheme is not sufficient to resist the
attacks. Hybrid scheme provide better security than their
single counterpart.
Fuzzy vault, which is a crypto
biometric scheme, is modified by adding password
hardening idea (salting) to impart more resistance towards
attacks. Multi biometric fuzzy vaults can be implemented
and again can be salted using passwords for achieving
more security in terms of min-entropy. The only
disadvantage of biometrics authentication as compared to
traditional password based authentication is non
revocability. Retina has certain advantage as compared to
other biometrics and it is suitable for high security
applications. Soft biometrics is ancillary information about
a person, when combined with user password gives better
results. It is very difficult for an attacker to gain both the
biometric features, soft biometric components and user

password
at the same time. The user password can be changed for
generating revocable

biometric templates. In this implementation password acts
as an additional layer of security. It is not possible for an
attacker to gain the password and the fuzzy vault at the
same time. Still better stable soft biometric components
can be explored for better performance. This is an attempt
to mix the ideas of password hardening, soft biometrics
and multimodal biometrics for template security. Instead
of using soft biometrics like height and weight which are
prone to frequent changes, biometrics like fingerprint type
and eye color can be used.
Acknowledgments
A public version of the DRIVE: Digital Retinal Images
for
Vessel
Extraction
is
available
from
http://www.isi.uu.n/Research/Databases/DRIVE
A public version of the CUHK Iris Database is available
from http://www2.acae.cuhk.edu.hk.

References
[1] Umat uludag, sharath pankanti, Anil. K.Jain “Fuzzy vault for
fingerprints”, Proceedings of International conference on
Audio video based person authentication, 2005.
[2] Juels and M.Sudan, “A fuzzy vault scheme”, Proceedings of
IEEE International symposium Information Theory, 2002.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[3] E.Srinivasa Reddy, I. Ramesh Babu, “Performance of Iris
Based Hard Fuzzy Vault”, Proceedings of IEEE 8th
International conference on computers and Information
technology workshops, 2008
[4] U.Uludag, S. Pankanti, S.Prabhakar, and A.K.Jain,
“Biometric Cryptosystems: issues and challenges,
Proceedings of the IEEE ,June 2004.
[5] Karthik Nandakumar, Abhishek Nagar and Anil K.Jain,
“Hardening Fingerprint Fuzzy Vault using Password”,
International conference on Biometrics, 2007.
[6] Karthick Nandakumar, Sharath Pankanti, Anil K. Jain,
“Fingerprint-based Fuzzy Vault Implementation and
Performance”, IEEE Transacations on Information Forensics
and Security, December 2007.
[7] K.NandaKumar, “Multibiometric Systems: Fusion Strategies
and Template Security”, PhD Thesis, Department of
Computer Science and 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

166

Biometric Authentication Workshop, LNCS 3087, pp.
259-269, Prague, May 2004
[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 Recognition”, 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
[21] V.S.Meenakshi, G.Padmavathi, “Security analysis of
Password Hardened Retina based Fuzzy Vault”,
International Conference on Advances in Recent
Technologies in Communication and Computing 2009,
Kottayam, Kerala, India October 27-October 28 ISBN:
978-0-7695-3845-7,
http://doi.ieeecomputersociety.org/10.1109/ARTCom
2009.101
[22] V.S.Meenakshi, G.Padmavathi, “Security analysis of
Password Hardened Multimodal Biometric Fuzzy
Vault”,
World Academy of Science, Engineering and Technology
56 2009, www.waset.org/journals/waset/v56/v56- 61.pdf
[23] V.S.Meenakshi, G.Padmavathi “Securing Iris Templates
using Combined User and Soft Biometric based Password
Hardened Fuzzy Vault” International Journal of Computer
Science and Information Security, IJCSIS, Vol. 7, No. 2,
pp. 001-008, ISSN 19475500 February 2010, USA

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, and Coimbatore. She has
17 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.

Dr. Padmavathi Ganapathi is the
Professor and Head of the Department of
Computer
Science,
Avinashilingam
University for Women, Coimbatore. She
has 22 years of teaching experience and
one year Industrial experience. Her areas
of interest include Network security and
Cryptography
and
real
time
communication. She has more than 100
publications at national and International

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
level. She is a life member of many professional organizations like
CSI, ISTE, AACE, WSEAS, ISCA, and UWA. She is currently the
Principal Investigator of 5 major projects under UGC and DRDO.

167

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

167

Interactive Guided Online/Off-line search using Google API and
JSON
Kalyan Netti1
Scientist, NGRI(CSIR),
Hyderabad, Andhra Pradesh, India
1

Abstract
Information retrieval systems (e.g., web search engines)
are critical for overcoming information overload. A major
deficiency of existing retrieval systems is that they
generally lack user modeling and are not adaptive to
individual users, resulting in inherently non-optimal
retrieval performance [1]. Sources of these problems
include the lack of support for query refinement. Web
search engines typically provide search results without
considering user interests or context. This in turn increases
the overhead on the search engine server. To address these
issues we propose a novel interactive guided Online/offline search mechanism. The system allows user to choose
for normal or combinational search [5] of the query string
and allows the user to store the best search results for the
query string. The proposed system also provides option for
off-line search which searches from the bundle of stored
results. Systems which implemented offline search require
downloading and installing the stored bundle of search
results before using it. The proposed system is an
interactive web based search facility both offline and
online. The system doesn’t require installing the bundle of
saved search results for offline searching, as the search
results are added to the bundle interactively as chosen by
the user. The system is very likely to return the best
possible result as it uses combinational search. The result
from the combination search can be stored and can be
searched again offline. Experiments revealed that
combination search of keywords in query yields variety of
results. Thus the Bundle of Stored result consists of best
possible results as the user chooses to save in it. This will
enhance the systems searching capabilities offline, which
in turn reduces the burden on the search engine server.
Keywords: Web search Engine, Meta-search engine,
Information retrieval, Google, Retrieval Models, Offline
Search, Combination Search, Google API, JSON

1. Introduction
One of the most pressing issues with today's explosive
growth of the Internet is the so-called resource discovery

problem[3]. Although many information retrieval systems
have been successfully deployed, the current retrieval
systems are far from optimal [1]. A major deficiency of
existing retrieval systems is, they generally lack user
modeling and are not adaptive to individual users [4]. This
non-optimality or inconvenience to the users may
sometimes be seen as the search engine inability to
understand the user query, but if it is seen through user
perspective, two specific issues can be observed.
a) Different users may use a search query in many
different ways, but clearly thinking of one result. Like, a
user may give a query as “java programming”, other user
may give the query like “programming java”. Sometimes
the search engine may give different results even though
the user perspective is same. b) User after giving the query
has to go through the information of all websites which
are returned by the search engine, even though a best
search engine can filter the non-query related sites. This
process although a common one is very tedious. Once the
user is not satisfied with the result he/she may repeat the
process with a different query possibly with a different
combination of keywords. This may overburden the search
server with repeated queries.
A system which can give user an option for searching with
different combinations of keywords in the query is a
viable solution for the problem mentioned at ‘a’ above.
Also a system which allows the user to save the best
possible results as a bundle, and accessing them later
offline is a probable solution for ‘b’ mentioned above. The
bundle of search results saved can be searched again for
further refinement by any other user for a same type of
query or combination.
The system implemented in this paper is an interactive
interface and provides an option for the user to search the
server with a combination of keywords or with a normal
search. It allows the user to save the search result as a
bundle of website URLs. Later users can access the bundle
offline for further refinement of the search. This will
reduce overhead on the network and on the server when
the search is performed for the same type of result. Also
the result can be assured of the best result as it is yielded
from the combination of keywords. The main aim of this

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

paper is to make information search handy and appropriate
such that it will be easy to use while offline thus reducing
the overhead on the search engine server. The system uses
Google as a search server and to refine the URLs of the
search results JSON and Google API is used. The reason
for using Google as a search server is that, Google has
grown to be one of the most popular search engines that
are available on the Web. Like most other search engines,
Google indexes Web sites, Usenet news groups, news
sources, etc. with the goal of producing search results that
are truly relevant to the user. This is done using
proprietary algorithms, which work based on the
understanding that if a page is useful, other pages covering
the same topic will somehow link to it. So, it can be said
that Google focuses on a page’s relevance and not on the
number of responses [6]. There for it can be said that
Google focuses on a page’s relevance and not on the
number of responses.
Moreover, Google allows sophisticated searches, with
required and forbidden words, and the ability to restrict
results based on particular language or encoding [8].
However, only a small number of web users actually know
how to utilize the true power of Google. Most average
web users, make searches based on imprecise query
keywords or sentences, which presents unnecessary, or
worse, inaccurate results to the user. Based on this
assumption, applications that help guide user’s searching
sessions have started to emerge. This is further motivated
by the introduction of Google Web Services, which allows
developers to query the Google server directly from their
application [5] [8].
Google has been providing access to its services via
various interfaces such as the Google Toolbar and wireless
searches. And now the company has made its index
available to other developers through a Web services
interface. This allows the developers to programmatically
send a request to the Google server and get back a
response. The main idea is to give the developers access to
Google’s functionality so that they can build applications
that will help users make the best of Google. The Web
service offers existing Google features such as searching,
cached pages, and spelling correction [7]. It is provided
via Google AJAX Search API and can be manipulated in
any way that the programmer pleases. Also Google is now
allowing queries using a REST-based interface that returns
search results using JSON .

2. Related Work
Great deal of work has been done in making available
guided search such as GuideBeam [10], which is the result
of research work carried out by the DSTC (Distributed
Systems Technology Centre) at the University of
Queensland in Brisbane, Australia. GuideBeam works
based on a principle called "rational monotonicity" that

168

emerged from artificial intelligence research in the early
nineties. In the context of GuideBeam, rational
monotonicity prescribes how the user's current query can
be expanded in a way which is consistent with the user's
preferences for information. In other words it is a guiding
principle of preferential reasoning [11]. Since users prefer
certain pieces of information in their quest for
information, preferential reasoning fits very nicely into the
picture of guided searching. Users can intuitively navigate
to the desired query in a context-sensitive manner. This is
known as "Query by Navigation". The goal is to elicit a
more precise query from the user, which will translate into
more relevant documents being returned from the
associated search engine. Another example that is more
closely related to Google would be the Google API Search
Tool by Softnik Technologies [12]. It is a simple but
powerful Windows software tool for searching Google. It
is completely free and is not meant to be a commercial
product. All that the users need to do is register with
Google for a license key and they will be entitled to pose
1000 queries a day. It is also an efficient research tool
because it allows the users to record the search results and
create reports of their research easily and automatically.
The URLs, titles, etc. can be copied to the clipboard and
then to a spread sheet or any other software. In summary,
it enables the users to organize and keep track of their
searching sessions, all at the convenience of their
desktops.
The Google API Search Tool requires the users to
download and install the software before they can start
using it. An alternative is to have a Web-based version of
the search tool. Many projects have been exploring this
path like [5] Guided Google, Google API Proximity
Search (GAPS) developed by Staggernation.com [13]. The
GAPS is developed using Perl and uses the Google API to
search Google for two search terms that appear within a
certain distance from each other on a page [6]. Most of the
Frameworks mentioned above are either free tools
available or commercial ones. Most of the tools mentioned
above like Guided Google, Staggernation etc were
developed using Google SOAP API, which is
discontinued by Google and those tools are no longer
available on web. Most of the tools are not interactive.
Some systems like COS [14] have the limitation of
downloading and installing the COS pack [14] offline and
it has no facility of Combination Search, thus again
resulting in inconvenience to the user.
The main difference between the tools and systems
mentioned above and the system proposed in this paper is
that there is no need for the user to download the bundle
of
best search results for offline search just as
implemented in COS [14].Instead, user has an option to
choose between offline and online search. The system
allows allow users to save beset results interactively. The

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

system has the facility for combination search which
proved one to retrieve best results. The system is
implemented as web interface and is easy to use. It uses
powerful Google Ajax API which is the latest search API
from Google [7], JSON for parsing the streamed response.
Thus the proposed system provides a focused search and is
very likely to return the relevant response to user.Online
help for parsing the streamed response using JSON
through web interface by using JSP and Servlets is not
available in internet although help for stand-alone is
available.

3. Architecture

Figure 1 shows the overview and architecture of the
proposed system. The user access the system as a web
interface which is developed using JSPs. The JSPs are

Bundle
of Saved
Results

Each of these smaller clusters will be assigned queries
based on the user’s geographic proximity to it [15, 16].
This is a form of load balancing, and it helps to minimize
the round-trip time for a query; hence, giving greater
response time. If the user chooses for online search, the
response is handled by the JSON implemented in
JSP/Servlet Container in Tomcat and the search result is
displayed to the User. The user has then an option to save
the search results directly to the bundle of saved results. If
the user chose for the offline search then the JSP/Servlet
container sends the request to the Bundle of Saved Results
and returns the response to the user.

3.2 Google Ajax Search API

3.1 Proposed System Architecture

User

169

JSP and
Servlet
Container

Google
AJAX
search

Google.
com

Figure 1: Main Architecture

hosted on a Tomcat Server. The Tomcat server acts as
both a stand-alone webserver and servlet container. Before
submitting the Query, the user has the option to choose
between online and offline search. If the user chooses
online search then the system will ask to choose either
Combination Search or Normal Search. The search is then
handled by the Google AJAX Api and is sent to
Google.com. Google has Google cluster which is further
divided into smaller clusters that is made up of a few
thousand machines, and is geographically distributed to
protect Google against catastrophic data centric failures.

Figure 2, shows the Google API architecture. The
architecture of how Google Web Services interact with
user applications is shown in Figure 2. The Google server
is responsible for processing users’ search queries [9]. The
programmers develop applications in a language of their
choice (Java, C, Perl, PHP, .NET, etc.) and connect to the
remote Google Web APIs service. Communication is
performed via the Google AJAX Search Api. The AJAX
Search API allows you to easily integrate some very
powerful and diverse Google based search mechanisms or
"controls" onto a Web page with relatively minimal
coding. These include: [7]
a) Web Search: This is a traditional search input field
where, when a query is entered, a series of text search
results appear on the page.
b) Local Search: With Local Search, a Google Map is
mashed together with a search input field and the search
results are based on a specific location.
c) Video Search: The AJAX Video Search provides the
ability to offer compelling video search along with
accompanying video based search results.
Once connected, the application will be able to issue
search requests to Google's index of more than two billion
web pages and receive results as structured data, access
information in the Google cache, and check the spelling of
words. Google Web APIs support the same search syntax
as the Google.com site.
In short, the Google AJAX APIs serve as an enhanced
conduit to several of Google's most popular hosted
services. The hosted services such as Google Search or
Google Maps can be accessed directly, but with AJAX
APIs comes the ability to integrate these hosted services
into anyone's custom web pages. The way the AJAX APIs
work is by allowing any web page that is hosted on the
Internet access to Google search (or feed) data through
JavaScript code.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Figure 2: Google AJAX Search API Architecture

The core JavaScript code that fetches the search or feed
data can be as simple as Search.execute( ) or Feed.load( ).
As the request is made to Google's worldwide servers, a
response of either Search data or prepared AJAX Feed
data is streamed back to the Web page in either JSON
(JavaScript Object Notation) or XML formats. Parsing of
this data can either be done manually or automatically by
using one of the provided UI controls that are built upon
the lower level AJAX APIs.

3.3 JSON
JSON (an acronym for JavaScript Object Notation) is a
lightweight text-based open standard designed for humanreadable data interchange. It is derived from the JavaScript
programming language for representing simple data
structures and associative arrays, called objects. Despite
its relationship to JavaScript, it is language-independent,
with parsers available for virtually every programming
language.
In JSON the String data structure take on these forms

JSON Schema [17] is a specification for a JSON-based
format for defining the structure of JSON data. JSON
Schema provides a contract for what JSON data is
required for a given application and how it can be
modified, much like what XML Schema provides for
XML. JSON Schema is intended to provide validation,

170

documentation, and interaction control of JSON data.
JSON Schema is based on the concepts from XML
Schema, RelaxNG, and Kwalify, but is intended to be
JSON-based, so that JSON data in the form of a schema
can be used to validate JSON data, the same
serialization/deserialization tools can be used for the
schema and data, and it can be self descriptive.
Apart of certain limitations which are limited to textual
data formats which also apply to XML and YAML, JSON
is primarily used for communicating data over the Internet.
The proposed system in this paper uses JSON extensively
to parse the response send by the Google API. Parsing the
response using JSON enables the system to store the
results in array, get the required URLs, Count the total
results etc. This enables the user to compare the query
string during combinational search, by total number of
results retrieved and save the best results.

4. Design and Implementation
The Proposed system is an interactive web interface,
which is developed using JAVA and coded in JSP and
Servlets. As discussed earlier, this system is developed
based on the assumption that search engines typically
provide search results without considering user interests or
context, which in turn leads to Overhead of the search
engine server.
This implementation tries to demonstrate, how the new
Google AJAX search API can be fully utilized, how it
helps the users to guide for better results, how it reduces
the overhead on the search engine sever.
This system can be grouped into four categories. The first
one is for choosing between Online and offline search.
The second one is choosing normal search or combination
search. The third one is saving the results into the bundle
of storage. The fourth is searching the bundle of stored
results offline. Each of these is discussed in detail in
following sections. A simple illustration of how this
system works is given at figure 3;

Figure 3: Design and Implementation of the system

4.1 Online Search
There is a main page (index.jsp) that is used to interface
with all other files. This page consists of query text box (a

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

171

shown in figure 4), and options for the user to Offline
search and online search. If the user chooses online search
the page display the option to choose for normal search or
combination search. The normal and combination search
functions are supported by search.jsp program file. The
program file search.jsp connects to Google.com by using
googconnector.java bean which establishes the connection
using Google AJAX Api.

Figure 5: searching google.com using “java programming”

Figure 4: Online Search and Combination Search

4.2 Combination Search
As mentioned earlier this system provides a function that
will automatically calculate the permutation and make
different combinations of the keywords used. For
example, if the users were to key in the term “java
programming”, it will automatically generate two
combinations, which are “java programming” and
“programming java”. The results of these two queries
when searched using Google.com are very different (see
Figure 5 and Figure 6).Generating different combinations
of key words in query string is carried out by
combination.jsp program file.

4.3 Parsing Response
Once the response is send by the Google, search.jsp parses
the streamed response using JSON. The code snippet for
connecting to Google.com using AJAX API Search is as
follows

Figure 6: searching google.com using “programming java”

// Encode the Query to make a valid one
//The query is returned from
//combination.jsp if use choose
//combination search
query = URLEncoder.encode(query, "UTF8");
URL url = new
URL("http://ajax.googleapis.com/ajax/se
rvices/search/web?start=0&rsz=large&v=1
.0&q=" + query);
// opening connection
URLConnection connection =
url.openConnection();

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

The code snippet for parsing the response from Google
and storing into array , getting the best URLs, Counting
number of results etc using JSON is as follows
// Reading the JSON response
String line;
StringBuilder res = new
StringBuilder();
BufferedReader reader = new
BufferedReader(new
InputStreamReader(connection.getInputSt
ream()));
while((line = reader.readLine()) !=
null) {
res.append(line);
//out.println("\n"+line);
}
//parsing using JSON Objects
String resp = builder.toString();

172

the save button to save the results (as shown in figure
7).The program search.jsp saves the URLs, search string
in the bundle storage. The offline search for the user is
taken care by offline.jsp program file. The user can choose
offline search from the index.jsp file.
5. Evaluation
This section focuses on evaluating the search performance
of this system when chosen online and offline. This
section also focuses on the performance of both normal
search and combination search. For simplicity, a common
search query “java programming” is used.

5.1 Online Search & Saving Results
5.1.1 Normal Search

As shown in the figure 4, after giving the query as “java
programming” in index.jsp and clicking “submit query”
button google.com returned around 11100000 results as
shown in figure 7. For convenience purpose the system

JSONObject json = new
JSONObject(builder.toString());
// Displaying the required results
out.println("Results Ordered = "
+json.getJSONObject("responseData").get
JSONObject("cursor").getString("estimat
edResultCount"));
out.println("<br>");
// Parsing the respone using JSONArray
JSONArray ja =
json.getJSONObject("responseData").getJ
SONArray("results");
out.println("\n Results:");
out.println("<br>");
for (int i = 0; i < ja.length(); i++) {
out.print((i+1) + ". ");
JSONObject j = ja.getJSONObject(i);
out.println(j.getString("titleNoFormatt
ing"));
out.println("<br>");
out.println(j.getString("url"));
out.println("<br>");
}
//out.println(""+response1);

4.4 Saving Results and Offline Search
After displaying the results the user has the option to save
the results in bundled storage of results. The results can be
stored by selecting the checkboxes displayed as prefix to
each result. After clicking the checkbox the user can press

Figure 7: Displaying results after parsing for search query “java
programming”

was restricted to display the first 8 results. The total results
are computed using JSON as discussed in earlier section.
The next part of the display shows check boxes as a prefix
to every result so that user has option to save the result by
clicking the checkboxes and later clicking save button.
5.1.2 Combination Search

In combination search, the query “java programming” is
passed through a function written in combination.jsp
program file which give all unique combinations of it.In
this case it will also produce “programming java”. The
search result of “java programming” and “programming
java” yielded different sets of results as shown in figure 8
and 9. The “java programming” query yielded The

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

173

11100000 results whereas “programming java” yielded
around 12100000 results, which is big difference. Thus
this system shows a unique way of getting best search
results by giving combination of words and providing user
a best possible way to search the internet and choosing the
best results. Apart of that, the system also allows to save
the results which are yielded from both the search queries,
thus providing a variety of options and results.
5.1.3 Offline Search
In searching based on offline, the term “java
programming” is submitted to the bundle of stored results.
The bundle of results is the one which were saved by the
user during normal search as shown in figure 7. The result
of this search is shown in figure 10.Figure 10 show only 3
results displayed which are top 3 results stored by the user
in figure 7.
As illustrated in the figures 8 and 9 the combinational
search yields different results as compared to the normal
search.

Figure 9: Combination Search (part 2), displaying results for search query
“programming java”

Later the offline search yields the best results and thus
reduces the repeat searching by the user which again
reduces the burden on the search engine server.

Figure 8: Combination Search (part 1), displaying results for search query
“java programming”

As illustrated in figure:10 the user chooses the option for
the offline search and the results are from stored bundle of
results. The user after performing combination search,
which yields variety of results from combination of words
in the query string, can save the best possible results.

Figure 10: Offline Search, Displaying results for search query
“programming java

6. Conclusion and Future Work
This paper proposed an interactive web interface for
guided searching and uses powerful Google AJAX search
API and JSON to parse the response. This interface
provides an option for online and offline search. The
proposed system also provides an option for Combination
search and Normal search to user. A detailed evaluation of
the system demonstrated how the user can harness the
capability of search engines by manipulation and
automation the existing search engine functions (this paper
uses google.com as an example).

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

However the system has lot of scope to be improved. For
instance the system can provide an option to choose
between the top search engines like (yahoo.com, window
live) thus making the user to see different set of results
(this paper uses google.com as example). The system can
also be further developed to allow the user to give ranking
to the results which are to be saved in the bundle of saved
result..
Offline search has lot of scope to improve. A simple
replacement policy like least recently used can be
employed to update the bundle of saved results and thus
making the offline search more efficient and likely one to
retrieve best results.

References
[1] Xuehua Shen, Bin Tan, ChengXiang Zhai,”Implicit User
Modeling for Personalized Search” CIKM’05, October 31–
November 5, 2005, Bremen, Germany.
[2] Orland Hoeber and Xue Dong Yang, “Interactive Web
Information Retrieval Using WordBars”, Proceedings of the
2006 IEEE/WIC/ACM International Conference on Web
Intelligence
[3] M. Schwartz, A. Emtage, B. M e, and B. Neumann, "A
Comparison of Internet Resource Discovery Approaches,"
Computer Systems,
[4] G. Nunberg. As google goes, so goes the nation. New York
Times, May 2003.
[5] Ding Choon Hoong and Rajkumar Buyya,”Guided Google:
A Meta Search Engine and its Implementation using
the Google Distributed Web Services
[6] The Technology behind Google
http://searchenginewatch.com/searchday/02/sd0812googletech.html
[7] http://code.google.com/apis/ajaxsearch/
[8] Google Groups (web-apis)
http://groups.google.com/groups?group=google.public.webapis
[9] www.json.org
[10] Guidebeam - http://www.guidebeam.com/aboutus.html
[11] Peter Bruza and Bernd van Linder, Preferential Models of
Query by Navigation. Chapter 4 in Information Retrieval:
Uncertainty & Logics, The Kluwer International Series on
Information Retrieval. Kluwer Academic Publishers,
1999.http://www.guidebeam.com/preflogic.pdf
[12] Softnik Technologies, Google API Search Toolhttp://
www.searchenginelab.com/common/products/gapis/docs/
[13] Google API Proximity Search (GAPS) http://www.staggernation.com/gaps/readme.html
[14] Sree Harsha Totakura, S Venkata Nagendra Rohit Indukuri
V Vijayasherly, COS: A Frame Work for Clustered off-line
Search
[15] Luiz André Barroso, Jeffrey Dean, and Urs Hölzle, Web
Search for a Planet: The Google Cluster Architecture, Google,
2003.
[16] Mitch Wagner, Google Bets The Farm On Linux, June
2000, - http://www.internetwk.com/lead/lead060100.htm
[17] http://json-schema.org
[18] M. B. Rosson and J. M. Carroll. Usability Engineering:

174

scenario-based development of human-computer interaction.
Morgan Kaufmann, 2002.
[19] I. Ruthven. Re-examining the potential effectiveness of
interactive query expansion. In Proceedings of the ACM SIGIR
Conference on Research and Development in Information
Retrieval, 2003.
[20] G. Salton and C. Buckley. Improving retrieval performance
by relevance feedback. Journal of the American Society for
Information Science, 41(4), 1990.
[21] B. Shneiderman. Designing the User Interface. AddisonWesley, 1998.
[22] C. Silverstein, M. Henzinger, H. Marais, and M. Moricz.
Analysis of a very large web search engine query log. SIGIR
Forum, 33(1), 1999.
[23] A. Spink, D. Wolfram, B. J. Jansen, and T. Saracevic.
Searching the web: the public and their queries. Journal
of the American Society for Information Science and
Technology, 52(3), 2001.
[24] K. Sugiyama, K. Hatano, and M. Yoshikawa. Adaptive web
search based on user profile construction without any effort
from users. In Proceedings of the 2004 World Wide Web
Conference (WWW2004), 2004.
[25] J. Teevan, S. Dumais, and E. Horvitz. Personalizing search
via automated analysis of interests and activities. In Proceedings
of the ACM SIGIR Conference on Research and
Development in Information Retrieval, 2005.
[26] E. M. Voorhees. Query expansion using lexical-semantic
relations. In Proceedings of the ACM SIGIR Conference on
Research and Development in Information Retrieval, 1994.
[27] C. Ware. Information Visualization: Perception for Design.
Morgan Kaufmann, 2004.
[28] J. Xu and W. B. Croft. Improving the effectiveness of
information retrieval with local context analysis. ACM
Transactions on Information Systems, 18(1), 2000.
[29] Yahoo. Yahoo search web searvices.
http://developer.yahoo.com/search.
[30] Y. Yao. Information retrieval support systems. In
Proceedings of the 2002 IEEE World Congress on
Computational Intelligence, 2002.

Kalyan Nettii, born in Andhra Pradesh, India. He obtained his
Master degree in Technology in Computer Science and
Engineering with specialization in Database Management Systems
from JNTU, Andhra Pradesh, India, in 2004.Kalyan Netti is
interested in the following topics: semantic web technologies,
Ontologies, data interoperability, semantic heterogeneity, relational
database systems, temporal databases and temporal data
modeling.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

175

Static Noise Margin Analysis of SRAM Cell for High Speed
Application
Debasis Mukherjee1, Hemanta Kr. Mondal2 and B.V.R. Reddy3
1
E&CE, SPSU and USIT, GGSIPU
Udaipur, 313601 and Delhi, 110006, India

2

Freescale Semiconductor
Noida, 201301, India
3

USIT, GGSIPU
Delhi, 110006, India

Abstract
This paper presents the different types of analysis such as noise,
voltage, read margin and write margin of Static Random Access
Memory (SRAM) cell for high-speed application. The design is
based upon the 0.18 µm CMOS process technology. Static Noise
Margin (SNM) is the most important parameter for memory
design. SNM, which affects both read and write margin, is
related to the threshold voltages of the NMOS and PMOS
devices of the SRAM cell that is why we have analyzed SNM
with the Read Margin, Write Margin and also the Threshold
voltage. For demand of the high-speed application of the SRAM
cell operation, supply voltage scaling is often used that is why
we have done Data Retention Voltage. We took different types
of curve by which straightforwardly we could analyses the size
of the transistor of the SRAM cell for high-speed application.
Keywords: Static Noise Margin, SRAM, VLSI, CMOS.

1. Introduction
This paper is to introduce how the speed of the SRAM cell
depends on the different types of noise analysis. Both cell
ratio and pull-up ratio are important parameters because
these are the only parameters in the hand of the design
engineer [1]. Technology is getting more complex day by
day. Presently in industry, 32 nm CMOS process
technology is used. So it should be carefully selected in
the design of the memory cell. There are number of design
criteria that must be taken into the consideration. The two
basic criteria which we have taken such as one is the data
read operation should not be destructive and another one is
static noise margin should be in the acceptable range [3].
For demand of the high speed SRAM cell operation,
supply voltage scaling is often used. Therefore, the

analysis of SRAM read/write margin is essential for high
speed SRAMs.
A key insight of this paper is that we can analyze different
types of noise margin for high speed SRAM cell. We
evaluate the different of curve with respect to the all of
them. And finally we can conclude how the different type
of noise margin affects the speed of the SRAM cell.
We first reviewed existing approaches for static noise
margin, data retention voltage, read margin and write
margin. Then we have done the comparison of all of them
with different aspects.

2. Static Noise Margin
In this section, first we introduce existing static approach
that is butterfly method for measuring static noise margin
[1]. Static noise margin of the SRAM cell depends on the
cell ratio (CR), supply voltage and also pull up ratio. For
stability of the SRAM cell, good SNM is required that is
depends on the value of the cell ratio, pull up ratio and
also for supply voltage. Driver transistor is responsible for
70 % value of the SNM [3].
Cell ratio is the ratio between sizes of the driver transistor
to the load transistor during the read operation [1]. Pull up
ratio is also nothing but a ratio between sizes of the load
transistor to the access transistor during write operation [1].
The basic circuit of SRAM cell is shown in given below as
figure 1.
CR= (W1/L1) / (W5/L5) (During Read Operation)
PR = (W4/L4) / (W6/L6) (During Write Operation)

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

176

Fig. 2a Circuit for two cross couple inverter with BL and BLB [1].

Fig. 1 Circuit for basic SRAM cell [1].

SNM, which affects both read margin and write margin, is
related to the threshold voltages of the NMOS and PMOS
devices in SRAM cells [3]. Typically, to increase the SNM,
the threshold voltages of the NMOS and PMOS devices
need to be increased. However, the increase in threshold
voltage of PMOS and NMOS devices is limited. The
reason is that SRAM cells with MOS devices having too
high threshold voltages are difficult to operate; as it is hard
to flip the operation of MOS devices.
Changing the Cell Ratio, we got different speed of SRAM
cell. If cell ratio increases, then size of the driver transistor
also increases, for hence current also increases. As current
is an increase, the speed of the SRAM cell also increases.
By changing the Cell ratio we got corresponding SNM.
For different values of CR, we got different values of
SNM in different technology of SRAM cell. This is same
for DRV vs. SNM.
Adobe Photoshop CS3 tool was used for rotation purpose.
We have done this project by Tanner 13.1 version tool.
Practically we can’t get butterfly structure that is why we
rotated the graph according to x-y coordinates. Finally we
got butterfly structure as shown in figure 2a. Since by
knowing the diagonals of the maximum embedded squares
we can calculate the sides. The squares have maximum
size when the lengths of their diagonal D1 and D2 are
maximum; the extremes of this curve correspond to the
diagonals of the maximum embedded squares.

Fig. 2b Circuit for the calculation of SNM after rotation [1].

3. Data Retention Voltage
Data Retention Voltage (Vdr): Min. power supply voltage
to retain high node data in the standby mode [1]. There are
two nodes (q and qb) of the SRAM cell for storing value
either 0 or 1. Then decrease the power supply voltage until
the flip the state of SRAM cell or content of the SRAM
cell remain constant. Vdd scales down to DRV, the
Voltage Transfer Curves (VTC) of the internal inverters
degrade to such a level that Static Noise Margin (SNM) of
the SRAM cell reduces to zero.
If Q=1, Q’=0, it is changes the value of Q=0, Q’=1 after
decreasing the value of the power supply voltage. Data
retention voltage should be greater than threshold voltage.
We took the value of power supply voltage upto 0.6V then
it is change the state of cell. We know, minimum power
supply voltage to retain high node data in the standby
mode: Vdr=Vdd=0.6V for 180 nm Technology that is data
retention voltage.

Fig. 3 VTC of SRAM cell during DRV calculation[1].

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

4. Write Margin
Write margin is defined as the minimum bit line voltage
required to flip the state of an SRAM cell [1]. The write
margin value and variation is a function of the cell design,
SRAM array size and process variation.
Already five existing static approaches for measuring
write margin are available [5]. First we calculated write
margin by the existing bl sweeping method then we
compared that with Static Noise Margin.
Write margin is directly proportional to the pull up ratio.
Write margin increases with the increases value of the pull
up ratio. So carefully you have to design SRAM cell
inverters before calculating the write margin of SRAM
cell during write operation. Pull up ratio also fully
depends on the size of the transistor.

177

Read margin is directly proportional to the cell ratio. Read
margin increases with the increase in value of the pull up
ratio. So carefully you have to design SRAM cell inverters
before calculating the read margin of SRAM cell during
read operation. Pull up ratio also fully depends on the size
of the transistor. The process of analysis of read margin is
same as the analysis of static noise margin.

6. Simulation Results and Discussion
Some important results that are observed from simulation
of the schematic designed in S-Edit are summarized below:
The cell ratio and the pull up ratio of the SRAM cell are
given below:
CR= (W1/L1) / (W5/L5) =1(During Read Operation)
PR = (W4/L4) / (W6/L6) =3 (During Write Operation)
The range cell ratio and pull-up ratio should be in 1-2.5
and 3-4 respectively otherwise data will be destroy.
SNM calculation: We have done the SNM calculation by
this way with respect of above figure:
Side of the Maximum Square =A=0.209V=209 mV,
Lengths of diagonal of Square (D) = √ 2 * One side of the
Square =√ 2 * 209, SNM= D/ √ 2 =√ 2 * 209/√ 2, So
SNM =One of the side=A=209 mV.

Fig. 4a VTC of SRAM cell to get write margin calculation by the BL
sweeping method [5].

5. Read Margin
Based on the VTCs, we define the read margin to
characterize the SRAM cell's read stability. We calculate
the read margin based on the transistor's current model [7].
Experimental results show that the read margin accurately
captures the SRAM's read stability as a function of the
transistor's threshold voltage and the power supply voltage
variations. Below fig.4c shows the read margin of the
SRAM cell during read operation.

Fig. 4b Shows the read margin [7].

We have taken of cell ratio vs. static noise margin, then
the value of static noise margin increases with the increase
of cell ratio of the SRAM cell in 180 nm technology. If the
value of the driver transistor is increased then CR is
increased. For hence current is increased then speed is also
increased.
Table 1: CR vs. SNM

Technology
(mm)

CR

SNM(mV)

180 nm

0.8
1.0
1.2
1.4
1.6

205
209
214
218
223

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

178

Fig. 5a The graphical representation of CR vs. SNM of the SRAM cell.

The above graph shows SNM increases when CR
increases. CR increases means the size of driver transistor
increases.
Data Retention Voltage also effects on the SNM of the
SRAM cell. It is important parameter for the saving supply
voltage. SNM decreases with the decrease in value of the
data retention voltage. Data Retention Voltage should be
greater than threshold voltage. Data Retention Voltage is
greater than the threshold voltage is shown below:
Table 2: DRV vs. SNM

Technology

180nm

DRV(V)
1.8
1.6
1.4
1.2
1.0
0.8
0.6

SNM(mV)
200
195
191
188
184
180
178

Fig. 5c
The graphical representation of Read Margin vs. SNM of the SRAM cell

The above graph shows SNM increases when read margin
increases and read margin increases means the read
operation of the SRAM cell will be too good.
Below table shows the write margin vs. SNM. We
observed that both write margin and SNM are
proportional with respect to the PR.

Technology

180 nm

Table 3: Write Margin vs. SNM
PR
Write margin
SNM(mV)
3.0
0.487
210
3.2
0.489
213
3.4
0.491
217
3.6
0.493
221
3.8
0.496
223
4.0
0.498
227

Fig. 5b The graphical representation of DRV vs. SNM of the SRAM cell.

The above graph shows SNM increases when DRV
increases. DRV decreases means the voltage also
decreases but content of the SRM cell is remaining
constant.
Below table shows the read margin vs. SNM. We
observed that both read margin and SNM are proportional
with respect to the CR.
Table 3: Read Margin vs. SNM
Technology

180nm

CR
1.0
1.2
1.4
1.6
1.8
2.0

Read Margin
0.393
0.398
0.401
0.404
0.407
0.409

SNM (mV)
205
209
214
218
223
225

Fig. 5d The graphical representation of Write Margin vs. SNM of the
SRAM cell

The above graph shows SNM increases when write
margin increases. Write margin increases means the write
operation of the SRAM cell will be too good.
Below table shows the threshold voltage vs. SNM. We
observed that if the threshold voltage increases the value
of the SNM also increases.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

179

Acknowledgment
Table 4: Threshold Voltage vs. SNM

Debasis Mukherjee is very much thankful to Mr. Peeyush
Kumar Tripathi of Intel Corporation, Bangalore, India for
his help and support.

References

Fig. 5e The graphical representation of threshold voltage vs. SNM of
the SRAM cell

The above graph shows SNM is increases when threshold
voltage is increases.

7. Conclusion
In this paper, we have analysed Static Noise Margin and
then we have compared Static Noise Margin with the Data
Retention Voltage, Write Margin, Read Margin and also
threshold voltage during read/write operation. We have
analysed both read margin for read ability and write
margin for SRAM write ability with the Static Noise
Margin. Static Noise Margin affects both read margin and
write margin. Both read margin and write margin depends
on the pull up ratio and cell ratio respectively. The range
of cell ratio should be 1 to 2.5 and also in case of pull up
ratio, the W/L ratio of load transistor should be greater
than the 3-4 times of the access transistor.
This project is based on the reliability of SRAM circuits
and systems. We considered that the four major
parameters (SNM, DRV, RM and WM) of SRAM cell.
Finally, we can say that different types of analysis are
directly proportional to the size of the transistor.

[1] Andrei Pavlov & Manoj Sachdev, “CMOS SRAM Circuit
Design and Parametric Test in Nano-Scaled Technologies”.
Intel Corporation, University of Waterloo, 2008 Springer
Science and Business Media B.V., pp:1-202.
[2] Ohbayashi, S. Yabuuchi, M. Nii, K. Tsukamoto,
Y. Imaoka, S. Oda, Y. Yoshihara, T. Igarashi,
M.
Takeuchi, M.
Kawashima, H.
Yamaguchi,
Y. Tsukamoto, K. Inuishi, M. Makino, H. Ishibashi,
K. Shinohara, H.; “A 65-nm SoC Embedded 6T-SRAM
Designed for Manufacturability With Read and Write
Operation Stabilizing Circuits” IEEE J. Solid-State Circuits,
vol. 42, issue 4, pp. 820-829 , April 2007 .
[3] A. P. Chandrakasan el al., “Low-power CMOS digital
design,” IEEE Journal of Solid-state Circuits”, Vol. 27, pp.
473-484, Apr. 1992.
[4] H. Pilo et al., “An 833MHz 1.5W 18Mb CMOS SRAM with
1.67 Gb/s/pin,” Proc. IEEEISSCC, pp. 266-267, 2000. T.
Uetake et al., “A 1.0 ns access 770MHz 36Kb SRAM
Macro,” Dig. Symp. VLSI Circuits,pp. 109-110, 1999.
[5] Sleepy Stack: “A New Approach to Low Power VLSI Logic
and Memory”, Jun Cheol Park.
[6] Jiajing Wang, Satyanand Nalam, and Benton H. Calhoun,
“Analyzing Static and Dynamic Write Margin for Nanometer
SRAMs”, Department of Electrical and Computer
Engineering, University of Virginia, Charlottesville, VA
22904, USA {jw4pg, svn2u,calhoun}@virginia.edu.
[7] Janm Rabaey , Anantha Chandakasan , Borivoje Nikolic .“
Digital Integrated Circuits”.second edition.
[8] Zheng Guo, Andrew Carlson, Liang-Teck Pang, Kenneth
Duong, Tsu-Jae King Liu, Borivoje Nikolic., “Large-Scale
Read/Write Margin Measurement in 45nm CMOS SRAM
Arrays”, Department of Electrical Engineering and
Computer Sciences, University of California, Berkeley, CA
94720, USA.
[9] Arash Azizi Mazreah, Mohammad T. Manzuri Shalmani,
Hamid Barati, Ali Barati, and Ali Sarchami., “A Low Power
SRAM Base on Novel Word-Line Decoding”, World
Academy of Science, Engineering and Technology 39 2008
[10] Saibal Mukhopadhyay, Hamid Mahmoodi, and Kaushik
Roy., “Statistical Design and Optimization of SRAM Cell for
Yield Enhancement”, Dept. of Electrical and Computer
Engineering, Purdue University, West Lafayette, IN-47907,
USA.
[11] Mamatha Samson, “Performance Analysis of Dual Vt
Asymmetric SRAM -Effect of Process Induced Vt
Variations”, Center for VLSI and Embedded System
Technologies Department, International Institute of
Information and Technology, Hyderabad, India.
[12] Arash Azizi Mazreah, Mohammad T. Manzuri Shalmani,
Hamid Barati, and Ali Barati., “A Novel Four-Transistor
SRAM Cell with Low Dynamic Power Consumption”, World
Academy of Science, Engineering and Technology 39, 2008

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[13] Kiyoo Itoh, “VLSI Memory Chip Design,” Springer-Verlag
Berlin Heidelberg New York, p.p. 110, 2001.
[14] B. S. Amrutur and M. A. Horowitz, “A replica technique for
wordline and sense control in low-power SRAM’s,” IEEE
Journal of Solid-state Circuits, Vol. 33, No. 8, pp. 12081218, August 1998.
[15] Tegze P. Haraszti, Microcirc Associates “CMOS Memory
Circuits”, kluwer academic publishers New York, boston ,
dordrecht, London, Moscow. Pages 238-239.
[16] Sung-Mo Kang, Yusuf Leblebici,, “CMOS DIGITAL
INTEGRATED CIRCUITS”, Analysis and Design,
McGraw-Hill International Editions, Boston, 2nd Edition,
1999.

Debasis Mukherjee was born on 20/08/1980. is Pursuing Ph.D.
from USIT, GGSIPU, Delhi, India from 2010. He received the
M.Tech. degree in VLSI Design from CDAC Noida in 2008 and
bachelor degree in Electronics and Instrumentation Engineering
from BUIE, Bankura, West Bengal, India in 2003. He has about 2.5
years of experience in teaching and 3 years of experience in
Industry. He achieved first place in district in “Science Talent
Search Test” 1991. He has two publications of repute in IEEE
xplore and two in international conferences. He is life time member
of ISTE and annual member of VSI.
Hemanta Kr. Mondal received the M. Tech. degree in VLSI Design
from CDAC Noida in 2010 and bachelor degree in Electronics and
Communication Engineering from Bengal College of Engineering
and Technology in 2007. He worked in NPL, Delhi in summer,
2010. Since July 2010, he is verification Engineer in VLSI Design
at Freescale Semiconductor India Pvt. Ltd.
B.V.Ramana Reddy is Dean of USIT, GGSIPU, Delhi, India. He
obtained his ME and Ph. D (ECE) degrees during 1991 and 1998
respectively. He has about 20 years of experience in teaching and
research. Before joining GGSIPU, he served as Asstt. Professor at
NIT Hamirpur. He has about 20 publications in journals and
International Conferences to his credit. He is a Fellow of IETE and
a member of other professional bodies such as IE, IEEE, ISTE and
SEMCEI. He has guided few scholars leading to M. Tech and
Ph.D's.

180

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

181

A New Approach for Evaluation of Data Mining Techniques
Moawia Elfaki Yahia1,

Murtada El-mukashfi El-taher2

1

College of Computer Science and IT
King Faisal University
Saudi Arabia, Alhasa 31982

2

Faculty of Mathematical Sciences
University of Khartoum
Sudan, Khartoum 11115

Abstract
This paper tries to put a new direction for the evaluation of some
techniques for solving data mining tasks such as: Statistics,
Visualization, Clustering, Decision Trees, Association Rules and
Neural Networks. The new approach has succeed in defining
some new criteria for the evaluation process, and it has obtained
valuable results based on what the technique is, the environment
of using each techniques, the advantages and disadvantages of
each technique, the consequences of choosing any of these
techniques to extract hidden predictive information from large
databases, and the methods of implementation of each technique.
Finally, the paper has presented some valuable recommendations
in this field.

Keywords:Data Mining Evaluation, Statistics,
Visualization, Clustering, Decision Trees, Association
Rules, Neural Networks.

1. Introduction
Extracting useful information from data is very far easier
from collecting them. Therefore many sophisticated
techniques, such as those developed in the multidisciplinary field data mining are applied to the analysis of
the datasets. One of the most difficult tasks in data mining
is determining which of the multitude of available data
mining technique is best suited to a given problem.
Clearly, a more generalized approach to information
extraction would improve the accuracy and cost
effectiveness of using data mining techniques. Therefore,
this paper proposes a new direction based on evaluation
techniques for solving data mining tasks, by using six
techniques: Statistics, Visualization, Clustering, Decision
Tree, Association Rule and Neural Networks. The aim of
this new approach is to study those techniques and their
processes and to evaluate data mining techniques on the
basis of: the suitability to a given problem, the advantages
and disadvantages, the consequences of choosing any
technique, and the methods of implementation [5].

2. Data Mining Overview
Data mining, the extraction of hidden predictive
information from large databases, is a powerful new
technology with great potential to help companies focus
on the most important information in their data
warehouses [6]. Data mining tools predict future trends
and behaviors allowing businesses to make proactive
knowledge driven decisions. Data mining tools can answer
business question that traditionally were too time
consuming to resolve. They scour database for hidden
patterns, finding predictive information that experts may
miss because it lies outside their expectations.

3. Review of Selected Techniques
A large number of modeling techniques are labeled "data
mining" techniques [7]. This section provides a short
review of a selected number of these techniques. Our
choice was guided the focus on the most currently used
models. The review in this section only highlights some of
the features of different techniques and how they
influence, and benefit from. We do not present a complete
exposition of the mathematical details of the algorithms, or
their implementations. Although various different
techniques are used for different purposes those that are of
interest in the present context [4]. Data mining techniques
which are selected are Statistics, Visualization, Clustering,
Decision Tree, Association Rules and Neural Networks.

3.1 Statistical Techniques
By strict definition "statistics" or statistical techniques are
not data mining. They were being used long before the
term data mining was coined. However, statistical
techniques are driven by the data and are used to discover
patterns and build predictive models. Today people have

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

to deal with up to terabytes of data and have to make sense
of it and glean the important patterns from it. Statistics
can help greatly in this process by helping to answer
several important questions about their data: what patterns
are there in database?, what is the chance that an event
will occur?, which patterns are significant?, and what is a
high level summary of the data that gives some idea of
what is contained in database?
In statistics, prediction is usually synonymous with
regression of some form. There are a variety of different
types of regression in statistics but the basic idea is that a
model is created that maps values from predictors in such
a way that the lowest error occurs in making a prediction.
The simplest form of regression is Simple Linear
Regression that just contains one predictor and a
prediction. The relationship between the two can be
mapped on a two dimensional space and the records
plotted for the prediction values along the Y axis and the
predictor values along the X axis. The simple linear
regression model then could be viewed as the line that
minimized the error rate between the actual prediction
value and the point on the line [2]. Adding more predictors
to the linear equation can produce more complicated lines
that take more information into account and hence make a
better prediction, and it is called multiple linear
regressions.

3.2 Visualization Techniques
Visualization techniques are a very useful method of
discovering patterns in data sets, and may be used at the
beginning of a data mining process. There is a whole field
of research dedicated to the search for interesting
projections of datasets – this is called Projection Pursuit.
For example, clusters are usually numerical represented.
Also, a large set of rules is easier to understand when
structured in a hierarchical fashion and graphically viewed
such as in the form of a decision tree [8]. Many data
mining method will discover meaningful patterns for
"good" data but none of them or just few can produce
meaningful patterns for "poor" data. One of the goals of
Visualization is to transform "poor" data into "good" data
permitting a wide variety of data mining methods to be
used successfully to discover hidden patterns [10].

3.3 Clustering Techniques
Clustering techniques examine data to find groups of items
that are similar. For example, an insurance company might
group customers according to income, age, types of policy
purchased or prior claims experience [3]. One of popular
clustering algorithms is Nearest Neighbor, which is a
prediction technique that is quite similar to clustering in
order to predict what a prediction value is in one record

182

look for records with similar predictor values in historical
database and use the prediction value from the record that
it is nearest to the unclassified record. The nearest
neighbor prediction algorithm simply stated is: objects that
are near to each other will have similar prediction values
as well. Thus if you know the prediction value of one of
the objects you can predict it for its nearest neighbors. One
of the improvements of the basic nearest neighbor
algorithm is to take a vote from the nearest neighbors
rather than relying on the sole nearest neighbor to the
unclassified record.

3.4 Induction Decision Tree Techniques
An induction decision tree is a predictive model that, as its
name implies, can be viewed as a decision tree.
Specifically each branch of the tree is a classification
question and the leaves of the tree are partitions of the
dataset with their classification. Objects are classified by
following a path down the tree, by taking the edges,
corresponding to the values of the attributes in an object.
Induction decision tree can be used for exploration
analysis, data preprocessing and prediction work.
The process in induction decision tree algorithms is very
similar when they build trees. These algorithms look at all
possible distinguishing questions that could possibly break
up the original training dataset into segments that are
nearly homogeneous with respect to the different classes
being predicted. Some decision tree algorithms may use
heuristics in order to pick the questions. As example,
CART (Classification And Regression Trees) picks the
questions in a much unsophisticated way as it tries them
all. After it has tried them all, CART picks the best one,
uses it to split the data into two more organized segment
and then again ask all possible questions on each of these
new segment individually [4].

3.5 Association Rule Techniques
An association rule tells us about the association between
two or more items. For example, If we are given a set of
items where items can be referred as books and a large
collection of transactions (i.e., issue/return) which are
subsets (baskets) of these items/books. The task is to find
relationship between the presence of various items within
these baskets [4]. In order for the rules to be useful there
are two pieces of information that must be supplied as well
as the actual rule: Support is how often does the rule
apply? and Confidence is How often is the rule is correct.
In fact association rule mining is a two-step process: Find
all frequent itemsets / booksets - by definition, each of
these itemsets will occur at least as frequently as a
predetermined minimum support count, and then generate
strong association rules from the frequent itemsets - by

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

definition, these rules must satisfy minimum support and
minimum confidence.

3.6 Neural Network Technique
Artificial neural network derive their name from their
historical development which started off with the premise
that machines could be made to think if scientists found
ways to mimic the structure and functioning of the human
brain on the computer. There are two main structures of
consequence in the neural network: The node - which
loosely corresponds to the neuron in the human brain and
the link - which loosely corresponds to the connections
between neurons in the human brain [4].
Therefore, a neural network model is a collection of
interconnected neurons. Such interconnections could form
a single layer or multiple layers. Furthermore, the
interconnections could be unidirectional or bi-directional.
The arrangement of neurons and their interconnections is
called the architecture of the network. Different neural
network models correspond to different architectures.
Different neural network architectures use different
learning procedures for finding the strengths of
interconnections. Therefore, there are a large number of
neural network models; each model has its own strengths
and weaknesses as well as a class of problems for which it
is most suitable.

183

profession more than anywhere else, and the basic ideas of
probability, independence and causality and over fitting
are the foundation on which both data mining and
statistics are built. The techniques are used in the same
places for the same types of problems (prediction,
classification discovery).

4.1.3 The Advantages of Statistical Technique
Statistics can help greatly in data mining process by
helping to answer several important questions about your
data. The great values of statistics is in presenting a high
level view of the database that provides some useful
information without requiring every record to be
understood in detail. As example, the histogram can
quickly show important information about the database,
which is the most frequent.

4.1.4 The Disadvantages of Statistical Technique
Certainly statistics can do more than answer questions
about the data but for most people today these are the
questions that statistics cannot help answer. Consider that
a large part of data the statistics is concerned with
summarizing data, and more often than not, the problem
that the summarization has to do with counting. Statistical
Techniques cannot be useful without certain assumptions
about data.

4. Evaluation of Data Mining Techniques

4.1.5 The Consequences of choosing The Statistical
Technique

In this section, we can compare the selected techniques
with the six criteria [5]: The identification of technique,
the environment of using each technique, the advantages
of each technique, the disadvantages of each technique,
the consequences of choosing of each technique, and the
implementation of each technique's process.

Statistics is used in the reporting of important information
from which people may be able to make useful decisions.
A trivial result that is obtained by an extremely simple
method is called a naïve prediction, and an algorithm that
claims to learn anything must always do better than the
naïve prediction.

4.1 Statistical Technique

4.1.6 Implementation
Process

4.1.1 Identification of Statistics

There are many different parts of statistics of collecting
data and counting it, the most notable ways of doing this
are: histograms and linear regression.

“Statistics is a branch of mathematics concerning the
collection and the description of data” [2].

4.1.2 The
Technique

Environment

of

Using

Statistical

of

Statistical

Technique

4.2 Visualization Technique
4.2.1 Identification of Visualization

Today data mining has been defined independently of
statistics though “mining data” for patterns and predictions
is really what statistics is all about. Some of the
techniques that are classified under data mining such as
CHAID and CART really grew out of the statistical

Visualization is to transform "poor" data into "good" data
permitting a wide variety of data mining methods to be
used successfully to discover hidden patterns [6].

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

184

4.2.2 The Environment of using Visualization
Technique

within the cluster. Clustering can be used for discovery or
prediction.

It is used at the beginning of a data mining process. And it
is used as the famous remark and picture of data mining
process.

4.3.3 The Advantages of Clustering Technique

4.2.3 The Advantages of Visualization Technique
It is very useful for the method of discovering patterns in
data sets. It holds for the exploration of large data sets. It
transforms "poor" data into "good" data. It permits a wide
variety of data mining methods to be used successfully to
discover hidden patterns.

4.2.4 The Disadvantages of Visualization Technique
The visualization can be built for famous remark, but the
numbers are not easy to be overlooked by humans. It is
difficult to understand when structured in a hierarchical
fashion and graphically viewed such as in the form of a
decision tree.

4.2.5 Consequences of choosing of Visualization
Technique
Numbers are not easy to be overlooked by humans, so that
the summarization of these data into a proper graphical
representation may give humans a better insight into the
data. Interactive visualization techniques are also
successfully applied for data exploration.

4.2.6 Implementation of Statistical Visualization
process
Scatter diagrams can be used to implementation the
visualization of the data sets, so that we can focus on the
rest of the data mining process.

4.3 Clustering Technique

Clustering is done to give the end user a high level view of
what is going on in the database. Clustering techniques
are very fast to compute on the database. There is no direct
notion of generalization to a test data set.

4.3.4 The Disadvantages of Clustering Technique
The interpretation of how interesting a clustering is will
inevitably be application-dependent and subjective to
some degree. Clustering techniques suffer from the fact
that once a merge or a split is committed, it cannot be
undone or refined. Sometimes clustering is performed not
so much to keep records together as to make it easier to
see when one record sticks out from the rest.

4.3.5 Consequences of choosing of Clustering
Technique
To build groupings information of the data set, clustering
is consolidating data into a high-level view and general
grouping of records into like behaviors. Clustering is
statistically separating records into smaller unique groups
based on common similarities.

4.3.6 Implementation
process

of

Clustering Technique

There are two main types of clustering techniques, those
that create a hierarchy of clusters and those that do not.
Those techniques are: Hierarchical Clustering Techniques
and Partitional Clustering Techniques.

4.4 Decision Trees Technique
4.4.1 Identification of Decision Trees

4.3.1 Identification of Clustering

“A decision tree is a predictive model that, as its name
implies, can be viewed as a tree ” [2].

“Clustering is concerned with grouping together objects
that are similar to each other and dissimilar to the objects
belonging to other clusters ” [3].

4.4.2 The Environment of using Decision Trees
Technique

4.3.2 The
Technique

Environment

of

using

Clustering

Clustering techniques is used by the end user to tag the
customers in their database. Once this is done the business
user can get a quick high level view of what is happening

Decision trees are used for both classification and
estimation tasks. Decision trees can be used in order to
predict the outcome for new samples. The decision tree
technology can be used for exploration of the dataset and
business problem. Another way that the decision tree
technology has been used is for preprocessing data for
other prediction algorithms.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

4.4.3 The Advantages of Decision Trees Technique
The Decision trees can naturally handle all types of
variables, even with missing values. Co-linearity and
linear-separability problems do not affect decision trees
performance. The representation of the data in decision
trees form gives the illusion of understanding the causes of
the observed behavior of the dependent variable.

4.4.4 The
Technique

Disadvantages

of

Decision

Trees

Decision trees are not enjoying the large number of
diagnostic tests. Decision trees do not impose special
restrictions or requirements on the data preparation
procedures. Decision trees cannot match the performance
of that of linear regression.

4.4.5 Consequences of choosing of Decision Trees
Technique
The decision trees help to explain how the model
determined the estimated probability (in the case of
classification) or the mean value (in the case of estimation
problems) of the dependent variable. Decision trees are
fairly robust with respect to a variety of predictor types
and it can be run relatively quickly. Decision trees can be
used on the first pass of a data mining run to create a
subset of possibly useful predictors that can then be fed
into neural networks, nearest neighbor and normal
statistical routines.

4.4.6 Implementation of Decision Trees Technique
process
There are two popular approaches for building decision
tree technology [7] : CART stands for Classification and
Regression Trees and CHAID stands Chi-Square
Automatic Interaction Detector.

4.5 Association Rule Technique
4.5.1 Identification of Association Rule
“Association rules are a set of techniques, as the name
implies, that aim to find association relationships in the
data” [1].

4.5.2 The Environment of using Association Rule
Technique
As example, the associations rule can be used to discover
of the HTML documents to give insight in the user profile

185

of the website visitors and retrieved in connection with
other HTML documents.

4.5.3 The Advantages of Association Rule Technique
Association rule algorithms can be formulated to look for
sequential patterns. The methods of data acquisition and
integration, and integrity checks are the most relevant to
association rules.

4.5.4 The Disadvantages of Association Rule
Technique
Association rules do not show reasonable patterns with
dependent variable and cannot reduce the number of
independent variables by removing. Association rules
cannot be useful if the information do not provide support
and confidence of rule are correct.

4.5.5 Consequences of choosing of Association Rule
Technique
Association rule algorithms can be formulated to look for
sequential patterns. The data usually needed for
association analysis algorithms is the transaction.

4.4.6 Implementation of Association Rule Technique
process
Association rules can be implemented in a two-step
process: find all frequent item sets: by definition, each of
these item sets will represent the transaction, and then
generate strong association rules from the frequent item
sets: by definition, these rules must satisfy minimum
support and minimum confidence.

4.3 Neural Networks Technique
4.3.1 Identification of Neural Network
“A neural network is given a set of inputs and is used to
predict one or more outputs”. [3]. “Neural networks are
powerful mathematical models suitable for almost all data
mining tasks, with special emphasis on classification and
estimation problems” [9].

4.3.2 The Environment of using Neural Networks
Technique
Neural network can be used for clustering, outlier
analysis, feature extraction and prediction work. Neural
Networks can be used in complex classification situations.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

4.3.3 The Advantages of Neural Networks Technique
Neural Networks is capable of producing an arbitrarily
complex relationship between inputs and outputs. Neural
Networks should be able to analyze and organize data
using its intrinsic features without any external guidance.
Neural Networks of various kinds can be used for
clustering and prototype creation.

4.3.4 The Disadvantages of Neural Networks
Technique
Neural networks do not work well when there are many
hundreds or thousands of input features. Neural Networks
do not yield acceptable performance for complex
problems. It is difficult to understand the model that neural
networks have built and how the raw data affects the
output predictive answer.

4.3.5 Consequences of choosing of Neural Networks
Technique
Neural Networks can be unleashed on your data straight
out of the box without having to rearrange or modify the
data very much to begin with. Neural Networks is that
they are automated to a degree where the user does not
need to know that much about how they work, or
predictive modeling or even the database in order to use
them.

4.3.6 Implementation of Neural Networks Technique
process
A typical neural network application requires
consideration of the following issues: model selection;
input-output encoding; and learning rate. The choice of the
model depends upon the nature of the predictive problem,
its expected complexity, and the nature of the training
examples. Generally there are three popular models to
implement neural networks applications. These are: Single
Layer Perception Network, Multiple Layer Feed Forward
Network and Self Organizing Feature Map.

5. Conclusion
In this paper we described the processes of selected
techniques from the data mining point of view. It has been
realized that all data mining techniques accomplish their
goals perfectly, but each technique has its own
characteristics and specifications that demonstrate their
accuracy, proficiency and preference. We claimed that
new research solutions are needed for the problem of
categorical data mining techniques, and presenting our
ideas for future work. Data mining has proven itself as a

186

valuable tool in many areas, however, current data mining
techniques are often far better suited to some problem
areas than to others, therefore it is recommend to use data
mining in most companies for at least to help managers to
make correct decisions according to the information
provided by data mining. There is no one technique that
can be completely effective for data mining in
consideration to accuracy, prediction, classification,
application, limitations, segmentation, summarization,
dependency and detection. It is therefore recommended
that these techniques should be used in cooperation with
each other.
References
[1] Adamo, J. M, Data Mining for Association Rules and
Sequential Patterns: Sequential and Parallel Algorithms
Springer-Verlag, New York, 2001.
[2] Berson, A, Smith, S, and Thearling, K. Building Data Mining
Applications for CRM, 1st edition - McGraw-Hill
Professiona, 1999.
[3] Bramer, M. Principles of Data Mining, Springer-Limited,
2007.
[4] Dwivedi, R. and Bajpai, R. Data Mining Techniques for
dynamically Classifying and Analyzing Library Database
Convention on Automation of Libraries in Education and
Research Institutions, CALIBER, 2007.
[5] El-taher, M. Evaluation of Data Mining Techniques, M.Sc
thesis (partial-fulfillment), University of Khartoum, Sudan,
2009.
[6] Han, J and Kamber, M. Data Mining , Concepts and
Techniques, Morgan Kaufmann , Second Edition, 2006.
[7] Lee, S and Siau, K. A review of data mining techniques,
Journal of Industrial Management & Data Systems, vol 101,
no 1, 2001, pp.41-46.
[8] Perner, P. Data Mining on Multimedia - Springer- Limited ,
2002.
[9] Refaat, M. Data Preparation for Data Mining Using SAS,
Elsevier, 2007.
[10] Vityaev, E and Kovalerchuk, B. Inverse Visualization In
Data Mining, in International
Conference on Imaging
Science, Systems, and Technology CISST’02, 2002.
Moawia Elfaki Yahia received his B.Sc and M.Sc in computer science
from University of Khartoum in 1989, 1995, and his PhD degree in
Artificial Intelligence from Putra University, Malaysia in 1999. Currently,
he is an Associate Professor of computer science at King Faisal
University, Saudi Arabia. Dr. Yahia is member of editorial board and
reviewer of many journals in computing science. He is a Member of
ACM, IEEE CS, Arabic Computer Society, and International Rough
Sets Society. Dr. Yahia received TWAS award for Young Scientists in
Developing Countries in 2006. He published over 25 articles in
international journals and proceedings. His research interests are:
intelligent hybrid systems, data mining, Arabic text miming, rough set
theory, and information retrieval.
Murtada El-mukashfi El-taher obtained his B.Sc and M.Sc in Computer
Science from Faculty of Mathematical Science, University of Khartoum
in 2006 and 2009. He accumulated several experiences in teaching
and research in computer science during the last five years. His area
of interest includes data mining applications and IT applications to
business and e-government.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

187

Rule Based Selection of 2D Urban Area Map Objects
Jagdish lal Raheja1, Umesh Kumar2
Digital Systems Group,
Central Electronics Engineering Research Institute (CEERI)/ Council of Scientific and Industrial Research (CSIR), Pilani,
Rajasthan, India

Abstract
The purpose of cartographic generalization is to represent a
particular situation adapted to the needs of its users, with
adequate legibility of the representation and perceptional
congruity with the real situation. In this paper, a simple approach
is presented for the selection process of building ground plans
that are represented as 2D line, square and polygon segments. It
is based on simple selection process from the field of computer
graphics. It is important to preserve the overall characteristics of
the buildings; the lines are simplified with regard to geometric
relations. These characteristics allow for an easy recognition of
buildings even on small displays of mobile devices. Such
equipment has become a tool for our everyday life in the form of
mobile phones, personal digital assistants and GPS assisted
navigation systems. Although the computing performance and
network bandwidth will increase further, such devices will
always be limited by the rather small display area available for
communicating the spatial information. This means that an
appropriate transformation and visualization of building data as
presented in this paper is essential.
Keywords: Cartographic Generalization, GIS, Map, Object,
Selection.

1. Introduction
In natural environment human senses perceive globally,
without details. Only when one has a particular interest he
observes details, and this is a normal process, otherwise
abundance of details would lead to confusion. For similar
reasons, in the process of cartographic generalization
many details are omitted. Generalization is a natural
process present everywhere, as well as in cartography.
Generalization in the compilation of the chart content is
called cartographic generalization and it is one of the most
important determining occurrences in the modern
cartography, included in cartographic representations. The
quantitative and qualitative basis of cartographic
generalization is determined by the purpose of the chart
and scale, symbols, features of the represented objects,
and other factors. Besides in mathematical cartography,
the main chart characteristic is based on the reduction of

objects and representing them in a generalized form at low
resolution devices like mobile and GPS system.

Figure 1: City Map

Figure 1 shown above illustrates the congestion found in a
typical map. If it is represented on a small display then it
would not be easy to understand. It is a fact that modern
determinants of map representation and cartographic
generalization are highly interrelated. This paper aims to
explain the process of generalization and selection using
basic computer graphics operations. The objective of this
paper is to define the selection based on certain rules
derived from the map to maintain the holistic relations
between map objects and their consistency without leading
to confusion for the user. Rules are defined in this paper
for aggregation based on the type, structure of the objects.

2. Related Works
Cartography is a very old scientific discipline, and
generalization dates back to the times of the first map
representations. The paper focuses on the automation of
the generation of scale dependent representations. There
are a lot of research proposal in this domain. Many
different techniques have been proposed: pragmatic

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

bottom-up approaches use specific algorithms for different
generalization tasks. Then there are more holistic ideas,
using top-down strategies, to strive at an integrated
solution of this complex task. Thus research issues have to
deal with the integration of different methods for the
solution of a compound task. Selection aims at a reduction
in the number of points the object is composed of, with the
constraint that the characteristic shape of the object is
preserved. For arbitrary shapes, algorithms respecting the
curvature of the object are typically used. The most
efficient algorithm is developed taking the maximal
distance of points from a hypothetical generalized line into
account. This algorithm, however, cannot be used simply
for special shapes like rectangular structures like buildings
etc. Staufenbiel derived a set of rules for dealing with
building facades that are too small to be represented and
came up with a detailed processing scheme that was later
implemented in the CHANGE software. Similar concepts
are currently being implemented in many GIS products.
The algorithm developed as part of the AGENT project
aims at a concurrent solution of several competing issues:
squaring, rectification, and enlargement of minimal narrow
objects inside the building. The approach presented there
is similar to a method that has been used for the
reconstruction of parametric buildings in aerial images.
There is a long history of automatic methods for
displacement: Nickerson developed an approach for linear
objects, which are displaced according to the degree of
overlap of their corresponding signatures. The use of socalled displacement mountains is proposed by J¨ ager
1990. The importance of an object is coded in a raster
image, with important objects producing high mountains.
This mountain allows for the extraction of the degree of
displacement and the direction. Mackaness proposes a
radial displacement of objects around a given point. His
approach allows for the degradation of the degree of
displacement depending on the distance from the given
point. Another approach given by Ruas aiming at an
incremental dis-placement. Objects producing the greatest
conflicts are treated first. As with all local operators,
secondary conflicts can be induced by solving one conflict,
thus there is a need for iterative operations and a control
strategy to decide when to stop. Only recently, an
emergence of using ’force models’ to solve displacement
can be observed. These approaches aim at a global
reduction of all spatial conflicts.

3. Rule Based Selection
When a map is represented graphically and scale is
reduced then some area features will become too
insignificant to be represented, i.e. They will be too small
to be viewed and will cause cluttering of the whole map as
can be seen in figure 2. Such insignificant objects are to be

188

eliminated. However, indiscreet removal may lead to
inconsistency and confusion. Selection provides the
appropriate rules for removal. The results of application of
the procedure may be seen in figure 3.

Figure 2: Input Map Image

Figure 3: Output Map Selection Process

This idea was presented by Raheja, Umesh, KCS
[2010] but it concluded in maps marked by inconsistency
(elimination of important objects). To counteract this
problem we describe some Rules of Ignorance in this
paper, which result in more holistic maps from which
more accurate information may be obtained.
Object Size with Congested Environment: This rule
addresses the problem of providing Geo-Information
about congested areas. This is accomplished by dropping
unimportant features like small sized buildings from the
map to make it more readable. For example a user
searching for the route from location A to location B
doesn’t have much importance for detailed representation
of buildings, gardens, parking etc., all of which may be
removed for enhanced clarity. The operation involves
making simple measurements of sizes of buildings, and
then a weeding out process of all features smaller than a
threshold.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

189

Temple

Historical Place

Figure 4: Congested Map

Figure 6: Map with Housing Building

Further this rule reconsiders for removal features that have
been retained after the application of the previous rule. For
example a user wishing to locate a particular building, say
an industrial complex within a corporate area having many
such buildings may wish to do away with them to obtain a
simplified route to his location.

4. Algorithm with Object Mapping Rules

Figure 5: Map with Size Ignorance with congestion Rule

As the reader may gather, figure 5 above is less distracting
than figure 4 where one can note the presence of many
unnecessary minute features. The patches of green have
been pruned to give a sparse representation. A salient
point about the rule is the consideration of the location of
an object before making a judgment on its removal.
Smaller features in less feature dense regions are retained
whereas similarly small sized objects in areas of
congestion may be removed.
Historical Building: The previous rule makes its
decisions on the basis of the sizes of buildings measured
as 2D objects. But the importance of features may also
arise from their status as landmarks, regardless of their
size. For example a temple in a congested area is subject
to removal as per the previous rule, but its utility is
indispensible with regards to finding one's way with a city.
This is illustrated in figure 6.

To represent the data, simple server-client architecture is
followed. A request is sent to a server for the map, and its
response is displayed by the user's device. However, low
data rates may hamper the process. Handheld devices
would in particular suffer from low bandwidth. A possible
fix is to apply ignorance rules outlined above before
sending the request to the server, thereby downloading
only what is required. Otherwise data would need to be
discarded at the client side, implying a waste of
bandwidth. The complete procedure may be outlined as:
Step [1]: Open GML file.
Step [2]: Select a Spatial object.
Step [3]: Perform Rule Checking and update object
presence.
Step [4]: Repeat the step 2 and 3 until all objects are
processed.
Step [5]: Update the Map.
Step [6]: Exit.

4. Conclusions
The basic object elimination technique which removes
the map objects simply based upon their sizes affects
the map’s legibility. A modification over the existing
technique is proposed that takes into consideration the
density of the area surrounding the object to be deleted.
Besides ignorance rules have been defined to retain

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

historical buildings and landmarks that serve as reference
points in a map.
Acknowledgments
This research is being carried out under the project
activity “Cartographic Generalization of Map Object’
sponsored by Department of Science & Technology (DST),
India. This project is currently underway at Central
Electronics Engineering Research Institute (CEERI),
Pilani, India. Authors would like to thank Director, CEERI
for his active encouragement and support and DST for the
financial support.

References
[1] Robert Weibel and Christopher B. Jones, “Computational
Perspective of Map Generalization”, GeoInformatica, vol. 2,
pp 307-314, Springer Netherlands, November/December
1998.
[2] Brassel, K. E. and Robert Weibel, “A Review and
framework
of
Automated
Map Generalization”,
International Journal of Geographical Information System,
vol. 2, pp 229-224, 1988.
[3] M. Sester, ”Generalization Based on Least Squares
Adjustment” International Archive of Photogrammetry
and Remote Sensing, vol. 33, Netherland, 2000.
[4] Mathias Ortner, Xavier Descombes, and Josiane Zerubia,
“Building Outline Extraction from Digital Elevation Models
Using Marked Point Processes”, International Journal
Computer vision, Springer, vol. 72, pp: 107-132, 2007.
[5] P. Zingaretti, E. Frontoni, G. Forlani, C. Nardinocchi,
“Automatic extraction of LIDAR data classification rules”,
14th international conference on Image Analysis and
Processing, pp 273-278, 10-14 Sept.
[6] Anders, K.-H. & Sester, M. [2000], Parameter-Free Cluster
Detection in Spatial Databases and its Application to
Typification, in: ‘IAPRS’, Vol. 33, ISPRS, Amsterdam, Holland.
[7] Bobrich, J. [1996], Ein neuer Ansatz zur kartographischen
Verdr ¨ angung auf der Grundlage eines mechanischen Federmodells, Vol. C455, Deutsche Geod¨ atische Kommission, M¨
unchen.
[8] Bundy, G., Jones, C. & Furse, E. [1995], Holistic
generalization of large-scale cartographic data, Taylor & Francis,
pp. 106–119.
[9] Burghardt, D. & Meier, S. [1997], Cartographic
Displacement Using the Snakes Concept, in: W. F¨ orstner & L.
Pl ¨ umer, eds, ‘Smati ’97: SemanticModelling for the
Acquisition of Topographic Information fromImages andMaps’,
Birkh¨ auser, Basel, pp. 114–120.
[10] Douglas, D. & Peucker, T. [1973], ‘Algorithms for the
reduction of the number of points required to represent a
digitized line or its caricature’, The Canadian Cartographer
10(2), 112–122.

190

[11] Harrie, L. E. [1999], ‘The constraint method for solving
spatial conflicts in cartographic generalization’, Cartographicy
and Geographic Information Systems 26(1), 55–69.
[12] Hojholt, P. [1998], Solving Local and Global Space
Conflicts in Map Generalization Using a Finite Element Method
Adapted from Structural Mechanics, in: T. Poiker & N.
Chrisman, eds, ‘Proceedings of the 8th International Symposium
on Spatial Data handling’, Vancouver, Canada, pp. 679–689.
[13] J¨ ager, E. [1990], Untersuchungen zur kartographischen
Symbolisierung und Verdr¨ angung im Rasterdatenformat, PhD
thesis, Fachrichtung Vermessungswesen, Universit¨ at Hannover.

Dr. J. L. Raheja has received his M.Tech from IIT
Kharagpur and PhD degree from Technical University
Munich, Germany. At present he is Sr. Scientist in
Central Electronics Engineering Research Institute
(CEERI), Pilani, Rajasthan, since 2000. His area of
interest is Cartographic Generalisation, digital image processing
and Human Computer Interface.
Umesh Kumar has obtained M. Tech. from C-DAC affiliated to
GGSIPU New Delhi, India, he is a Project Assistant
in Digital Systems Group of Central Electronic
Engineering Research Institute, Pilani, Rajasthan,
India. His interested areas include Cartographic
Generalization, Digital Image Processing, Human
Machine Interaction and Speech processing based
application development.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

191

Design and Implementation of a System for
Wireless Control of a Robot
Christian Hernández1, Raciel Poot1, Lizzie Narváez2, Erika Llanes2 and Victor Chi2
1

Department of Electronics, Universidad Autónoma de Yucatán
Tizimín, Yucatán 97700, México
2

Department of Networks, Universidad Autónoma de Yucatán
Tizimín, Yucatán 97700, México

Abstract
This article presents the design and implementation of a wireless
control system of a robot with help of a computer using LPT
interface in conjunction with Arduino + X-bee, which is an
electronic device that uses the Zigbee protocol that allows a
simple implementation, low power consumption, and allows the
robot to be controlled wirelessly, with freedom of movement. In
the implementation were used two Arduino with wireless
communication using X-bee modules. The first Arduino + X-bee
were connected to the computer, from which received signals
that were sent by the wireless module to the Arduino X-bee that
was in the robot. This last module received and processed signals
to control the movement of the robot. The novelty of this work
lies in the autonomy of the robot, designed to be incorporated
into applications that use mini-robots, which require small size
without compromising the freedom of their movement.
Keywords: Integrated Circuit, Parallel Port, ATmega 168
Microcontroller, Arduino, X-bee, Zigbee.

1. Introduction
It is currently being investigated and put on the market
many wireless products because of the large development
of this type of communication technologies.
Mobile robotics is no stranger to this fact; the benefits of
joining the wireless communication technologies with the
developments in mobile robots are clear as we can
appreciate.
Nowadays, a large number of universities work with these
devices, including many people without knowledge in
electronics who use them, for the simplicity to artistic,
textiles, musical and botanical projects, among others.
This is because its range is very varied, ranging from
robotics, sensors, audio and monitoring to navigation and
action systems. Examples include: TiltMouse (an
accelerometer that transforms Arduino into a pitch
mouse), the Arduino Pong (which is a ping pong game
programmed in Arduino) and the optical tachometer
among others [1].

Other works consulted include important developments. In
[2] we find the implementation of a mobile robot whose
main skill lies in the possibility of being controlled by a
remote user connected via the Internet through a Wi-Fi
network running on the TCP/IP architecture. Thus, the
user can control robot's movements, while through a
camera also connected via Wi-Fi, watches the robot's
movements using a web browser. Consulted in the
investigation [3] a construction pathology detection
system, based on a wireless sensor network using the
Zigbee and Arduino technology is presented. This enables
continuous monitoring of the parameters of interest,
meeting the requirements of low consumption, ease of
maintenance and installation flexibility. In [4], it is built a
prototype of an embedded wireless sensor network based
on easy-to-use Arduino microcontroller board and X-bee
module. They consider a temperature monitoring
application to demonstrate the proof of concept of their
system.
Moreover, in [5] it is described a project that is a clear
example of the technology and university combination.
This project, called R4P, consisted on design, build and
program a small quadruped robot so that it can be used in
teaching to form youth in robotics. The robot was
designed to be easy to set up so young people can build it
for themselves, as well as it is simple to control and
program. This is one reason why this type of technology
has become so popular. Also, in [6] it is presented a study
that designed an UAV quadrotor system; with this we will
have an open platform which will allow future
implementing and testing of new navigation and control
systems. And finally, [7] describes a two-wheel balancing
robot based on a popular open-architecture development
Arduino board and the ATmega168 chip from Atmel
corporation that runs on a clock speed of 16MHz with
1KB of SRAM and 16KB of flash memory.
The article structure is as follows; the second section
describes the problem and the technical solution; the third
section presents the logical design of the system,
explaining how they operate; the fourth section describes

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

the implementation, including the construction of the
prototype and finally, the fifth section presents the
conclusions.

2. Problem Statement and Technology
The main objective to be achieved with this research is
being able to control the movements of a robot wirelessly,
keeping in mind that this development could be deployed
later in an electronic wheelchair which is a study that is
being developed parallel to this one and is being moved
through a wired controller, but the ultimate goal is to be
wireless. To achieve this, in this study we used the X-bee,
which uses technology WPAN (Wireless Personal Area
Network) and a Diecimila Arduino board which contains a
ATmega 168 microcontroller, which is widely used for
programming the data transmission .
At the beginning of the research it was designed a robot
that was controlled by parallel port LPT (Line Printer
Terminal); however, it did not allow a free movement,
because the LPT connected to the computer was limited in
distance, and it depended on the length of the parallel port
cable (figure 1).

(Alternating Current/Direct Current) adapter, or with
battery, as in this project. The main components of
Arduino Diecimila are listed below (figure 3):






Fig. 1. Initial design.

Having in mind giving greater autonomy and scope to the
robot, it was implemented in the system an Arduino device
with an X-bee module (figure 2).


Fig. 2. Arduino + X-bee.

Arduino Diecimila was specifically the device used, first
in the computer via parallel communication through the
parallel port and by the other hand, implemented in the
robot. The Arduino microcontroller used in the system is a
board based on the ATmega 168 chip, which has 14 digital
I/O, 6 of them can be used as PWM outputs (Pulse Width
Modulation), 6 as analog inputs, a 16MHz crystal, USB
connection and reset button. It contains everything needed
to support the microcontroller, simply connecting to a
computer with a USB cable and feeding it with an AC/DC

192



Power supply:
 VIN: It is the input of voltage to the Arduino board
when an external power supply is used (instead of
5v of the USB cable or other regulated power
supply); i.e., voltage can be supplied through this
pin.
 5v: Regulated power supply used to power the
microcontroller and other components of the board.
This can get from the VIN input via the integrated
voltage regulator. It can be provided by a USB
cable or any other regulated power supply [8].
Memory: The ATmega168 has 16KB of memory to
storage sketches (the name used for an Arduino
program, it is the unit of code that loads and runs on
an Arduino board, 2KB of the memory is reserved for
the bootloader). It also has 1KB of SRAM (Static
Random Access Memory) and 512 bytes of EEPROM
(Electrically Erasable Programmable Read-Only
Memory).
Inputs and Outputs: Each one of the 14 Diecimila
Arduino digital pins can be configured either as input
or output using the functions pinMode(),
digitalWrite() and digitalRead(), which operate at 5v.
Each pin can provide or receive a maximum current
of 40mA and has internal pull-up resistors (switched
off by default) from 20 to 50 KOhms. In addition,
some of the pins have special functions.
 Serie, 0 (RX) and 1 (TX): Used to receive (RX)
and transmit (TX) TTL serial data, which are
connected with the corresponding pin of
conversion from USB to Serial-TTL FTDI chip.
 PWM 3, 5, 6, 9, 10 y 11: Generate an 8-bit output
PWM signal with the function analogWrite().
 LED 13: There is an on-board LED connected to
pin 13, which if set to HIGH if LED lights and
changes to LOW when the LED turns off.
Reset: When this pin is set to LOW, it resets the
microcontroller. Normally it is used when the reset
button is inaccessible by the use of a shield that hides
it.
Communication: It can communicate from computer
to computer with an Arduino or other
microcontrollers. The ATmega168 has implemented
UART
(Universal
Asynchronous
Receiver
Transmitter) TTL serial communication in the pins 0
(RX) and 1 (TX) and a FT232RL FTDI chip
embedded into the motherboard that converts this
serial communication into USB using the FTDI
drivers to provide us a COM Virtual port to
communicate with the computer. The Arduino

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org



software includes a serial monitor, which allows
simple data to be sent and received from the board
through the USB connection. The TX and RX LEDs
on the motherboard will flash while data is being
transmitted by the FTDI chip and the USB connection
to the computer [8].
Features: The maximum length and width of the
Diecimila PCB are 6.8cm and 5.3cm respectively,
with USB connector and power connector protruding
slightly from the edges. It contains three holes for
crew to attach the board on a surface or a box. The
distance between pins 7 and 8 is 4 mm, different to
the other pins, which are separated by 2.5 mm [8].

The Arduino programming is very simple; however it
depends on the complexity of the project. the Arduino
platform is programmed using its own language based on
the popular C high level programming language and
supports all standard C and some C++ functions.
Serie (RX) y 1 (TX) LED 13

PWM
3,5,6,9,10,11

5V
Reset

Chip
FTDI

VIN
Microcontrolador ATmega 168
Fig. 3. Main components of Arduino.

Currently the modules X-bee from MaxStream allow serial
links of TTL signals on distances of 30m indoors, 100m
outdoors with line of sight and over to 1.5Km with Pro
modules [9], which would be enough to control the
electronic wheelchair, the final goal.
X-bee modules use the protocol known as Zigbee. Zigbee
is a specification for a suite of high level communication
protocols using small, low-power digital radios based on
the IEEE 802.15.4 standard for WPAN’s. In turn, IEEE
802.15.4 specifies the physical layer and media access
control for low-rate wireless personal area networks (LRWPANs). Zigbee operates in the band: ISM (Industrial
Scientific and Medical), 868 MHz in Europe, 915 MHz in
the U.S. and Australia, and 2.4 GHz in most jurisdictions
around the world [10]. This technology is simpler, cheaper
and has lower power consumption than other WPANs
such as Bluetooth.
The Zigbee application areas are [11]:
 Home entertainment and control: Intelligent lighting,
advanced temperature control, security, movies and
music.






193

Forewarned home: Water, power and access sensors,
smart appliances.
Mobile services: Mobile payments, control and
monitoring, security, access control, health care and
telecare.
Commercial buildings: Energy monitoring, HVAC,
lighting and access control.
Industrial plants: Process control, management of
benefits, environmental and energy and control of
industrial devices.

In a Zigbee network there are three different types of
nodes [12]:
 ZC (Zigbee Coordinator): There should be a network,
its functions include the control of the network and
the paths to be followed by devices to connect to each
other.
 ZR (Zigbee Router): It interfaces separated devices in
the topology of the network, besides providing a level
of implementation for the execution of user code.
 ZED (Zigbee End Device): It has the functionality
required to communicate with its parent node (ZC or
ZR) but it cannot transmit information to other
devices. Thus, this type of node can be asleep most of
the time, increasing the average life of its batteries. A
ZED has minimal memory requirements and is
therefore significantly cheaper.
Based on the previous, an Arduino requires the
implementation of the X-bee module to communicate
wirelessly with other Arduino.
Figure 4 is a diagram representing the use of the Arduino
and the X-bee. This study used two X-bee modules to
create a wireless communication. It was firstly logged on a
computer's parallel port to Arduino + X-bee which was the
sender of data, and on the other side it had another
Arduino + X-bee placed easily thanks to its small size and
weight in a robot designed with lego, which received the
data.
Client computer

Arduino + X-bee
(sender of data)

End

End

End

End

Fig. 4. Wireless communication, Arduino + X-bee.

3. Design
This section presents the architecture of the system and the
description of the main components.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

194

3.1 Architecture and System Description
Figure 5 shows the architecture of the designed system
and then it is described each of its components.
Battery 9V
+ -

Computer
LPT
Power
5V
+ -

Arduino+X-bee
bee
Sender module

Arduino+X-bee Battery 9V
+ Receiver module

L293

Protoboard
Chip 74ls245

Fig. 7. Schematic diagram sender module.

Fig. 5. System architecture.

Computer: It was used to program the robot; programming
language Dev-C++ was used to program the movements,
by means of the appropriate libraries to control the motors
in order to initialize the LPT or the parallel port or
parallel, among other functions. It was also used to make
the data sender module and the module receiving data for
the Arduinos, both in the Arduino programming language0016, which is based on the functions of the standard C
and some C++ functions.
LPT: The parallel port of the computer was used to
connect it with the peripheral device Arduino. The main
feature of LPT is that the data bits travel together, sending
an 8-bits package at the time; i.e. a cable or another physic
mean is implemented for each bit of data to form a bus.
We can exemplify that controlling peripheral devices such
as lights, motors and other devices suitable for automation
by using the parallel port. The port consists of 4 control
lines, 5 status lines and 8 data lines (8-bit bus) [12],
(figure 6).

In figure 8 we can see positive and negative pins for
energy.

Fig. 8. Schematic diagram of 74ls245.

Controller board with I/O: There were used two Diecimila
Arduino boards that have digital I/O to send to the
servomotors of the robot PWM control signals. This
sending of signals was achieved by using the connections
previously performed (PC-LPT, LPT-74ls245, 74ls245Arduino + X-bee); this board also has a Zigbee module
that allows wireless communication with the computer
[13]. See figure 9.

Pines connected to the
interface

PC - Parallel

Port of Data
Port of Control
Port of Status
Port of GND
Fig. 6. Parallel port.

74ls245: This small chip attached to a protoboard, was
very useful to access directly to the parallel port of the
computer; three pin of data were connected to the parallel
port (Fig. 6) with the 74ls245 chip pins (A1, A2, A). This
same chip helped us to connect the 3, 5 and 6 PWM pins
(figure 3) of the Arduino to the 74ls245 pins B1, B2 and
B3 (figure 7). This chip used a power source to fuel of 5
volts.

Fig. 9. Schematic Arduino Diecimila ATmega 168.

Wireless Modem X-bee or Zigbee: This modem is inserted
into the two Arduino boards, which control the robot's
movements and are responsible for sending commands to
the servomotors [10].
To send motion commands to the servomotor, the
following steps where done:
1. The user presses a key movement in the computer
which is connected through a parallel port to the
controller board (Arduino Diecimila + X-bee) who
receives a series of bits.
2. The Diecimila + X-bee Arduino receives this series of
bits, which is interpreted by the microcontroller that
has a program loaded for this function [8].

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

3.

4.

5.

Once the information is interpreted by the Arduino
microcontroller, this is sent wirelessly to the other
controller board located on the robot (Zigbee) [10,15].
The robot controller board interprets this information,
similar to step number 2, as this module is
programmed to receive data sent from the computer.
Now that information has been interpreted, the
movement of the servo is carried out according to the
key- action or movement, which the user has selected.
Then, the controller board sends the bits through a
communication cable connected to the servomotors
and they perform the action needed.

195

motors were used in the model of the robot; they receive
information for movement (forward, backward, left, right)
through the controller board (Arduino Diecimila with Xbee module connected to the L293B), [16].

Fig. 12. Servomotor.

L293B: L293B chip is a driver designed to provide
bidirectional drives current up to 1A at voltages between
4.5 and 36V with a maximum dissipation power of 5W. It
allows us to control the robot and motors, which can be
done easily with multiple chips such as ULN2003A,
L293B, L293C, ULN2803A, among others. This chip is
installed on a printed circuit board, mounted on the robot
where the data cables were connected (corresponding to
the parallel port) in L293B chip pins. For the movement of
the servomotors there were used communication cables
connected to the servomotors on pins 3, 6 (servomotor1)
and 11, 14 (servomotor 2) of the L293B (figure 10 and
11). [15].

4. Implementation
Next, the hardware used and how it was implemented are
described in detail.
There were located the data record cables from the parallel
port with the help of a multimeter, and the plastic was
removed, leaving a small tip of copper exposed in order to
make the connection to the chip 74ls245 (figure 13).

Fig. 13. LPT Data Cable and its connection to the chip 74ls245.

Fig. 10. Schematic diagram receiver module.

Once connected the data cables, the robot was
programmed using programming language Dev-C ++. The
movements performed were left, right, forward, backward,
pause and exit, by making coincide the keys in Table 1.
Table 1. List of movements.

Keys

Action
Forward.
Back.
Left.

|Fig. 11. Connecting cables, parallel port and L293B.

Servomotor: An actuator device that has the ability to be
positioned anywhere within its operating range, and
remain stable in that position. The main component of a
servomotor is a DC motor, which performs the function of
actuator in the device. When a voltage is applied between
its two terminals, the motor rotates in one direction at high
speed, but producing an under par. To increase the torque
of the device a gearbox is used, which transforms much of
the speed of rotation in torsion (figure 12). Two servo

Right.

c

Pause.
Exit.

In the following code, as mentioned previously was
developed in Dev-C ++, we can see the programming of
some of these movements.
do{

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org
op2=getch();
switch(op2)
{
case 72 : (oup32)(0x378,1);
Sleep(100);
(oup32)(0x378,tmp_CToff);
break;
case 80 : (oup32)(0x378,2);
Sleep(100);
(oup32)(0x378,tmp_CToff);
break;
}

The execution of the previous code could be tested using
the LPT monitor of the key pressed, which is used to view
the status of the parallel port (figure 14).

Fig.14. Parallel Port Monitor (LPT Monitor).

Testing that the programming of the Arduino was done,
which consists of two modules: A module to connect the
parallel port and the computer (Sender Module), and a
module that will be set on the Arduino-L293B robot
(Receiver Module). In figure 15 we can see the Arduino
programming environment.

196

bit1=digitalRead(2);
bit2=digitalRead(3);
bit3=digitalRead(4);
if(bit1==0)
{ if(bit2==0)
{ if(bit3==0)
{ Serial.write('/'); }
else
{ Serial.write('+'); } }
else
{ Serial.write(')'); } }
else
{ if(bit2==0)
{ Serial.write('('); }
else
{ Serial.write('*'); }}}

Once the programming of the transmission of data is done,
the program was uploaded to the Arduino’s
microcontroller with a programmable device of
microcontrollers. This was done without implementing the
X-bee module. After the programs were uploaded to the
microcontroller, the X-bee module was set in the Arduino;
this fact was previously presented in figure 2. It was used
the HyperTerminal program in Windows to configure the
X-bee module and verify the data sending. Once the
connections and the first tests were made, we got a design
as the one shown in figure 16. The design considering the
robot can be seen in figure 17.

Fig. 16. LPT connection with Arduino + X-bee.

Fig. 15. Arduino-0016, programming environment.

In this section an extract of the code of the data
transmission function is presented.
Fig. 17. L293B connection with Arduino + X-bee.
void setup()
{Serial.begin(9600);
pinMode(13,INPUT);
pinMode(12,INPUT);
pinMode(11,INPUT);
pinMode(6,INPUT);
pinMode(5,INPUT);
pinMode(4,INPUT);
pinMode(3,INPUT);
pinMode(2,INPUT);}
void loop(){delay(300);

5. Conclusions
A robot was developed in this paper, which was controlled
through the parallel port of the computer with an
implementation of Arduino + X-bee, resulting that the
robot could be guided with a certain freedom and
autonomy without using wires; this robot can be used to
enter to confined spaces when it is needed, for example.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Arduino Diecimila currently has many applications; it is
an easy-to-use and program device, as can be seen in our
implementation. The microcontroller is like a small
computer which can be very useful for various
applications; by mounting the Zigbee allowed to
communicate with other Arduinos wirelessly.
In future work the improvements for this robot would be
the implementation of a camera to be introduced to places
where human beings could not get and at the same time
without running any risk by not knowing the environment
(for example in the case of an earthquake).
Finally, in the immediate future this development will be
implemented in an electronic wheelchair, as mentioned in
a parallel study to the present.

References
[1] http://electrolabo.com,
http://www.ladyada.net,
http://www.Arduino.cc, http://www.instructables.com.
Ultima consulta Junio 30 de 2010.
[2] Alonso Álvarez, Jaime. Desarrollo de un robot móvil
controlado desde Internet: Comunicaciones Wi-Fi.
Universidad Pontificia Comillas – ICAI. Madrid. Junio
2005.
[3] Barro Torres, Santiago; Escudero Cascón, Carlos.
Embedded Sensor System for Early Pathology
Detection in Building Construction. Department of
Electronics and Systems, University of A Coruña.
España.
[4] Boonsawat, Vongsagon, et all. X-bee Wireless Sensor
Networks for Temperature Monitoring. School of
Information,
Computer,
and
Communication
Technology Sirindhorn International Institute of
Technology, Thammasat University, Pathum-Thani.
Thailand.
[5] Díaz del Dedo, Luis; Pérez García, Luis. Diseno,
Construccion y Desarrollo de la Mecanica, Electronica
y Software de Control del Robot Cuadrupedo R4P v3i.
Universidad Europea de Madrid.Villaviciosa de Odon,
Madrid. Septiembre de 2008.
[6] Nadales Real, Christian. Control de un Quadrotor
mediante la plataforma Arduino. Escuela Politécnica
Superior de Castelldefels. Julio de 2009.
[7] Baik, Kyungjae. BoRam: Balancing Robot using
Arduino and Lego. September, 2008.
[8] Información
general
del
Arduino.
http://Arduino.cc/es/Main/ArduinoBoardDiecimila
Última consulta Julio 2 de 2010.
[9] http://www.digi.com/products/wireless/pointmultipoint/X-bee-series1-module.jsp#specs
Última
consulta Julio 2 de 2010.
[10]Zigbee standards Organization “Zigbee 2007”
http://www.zigbee.org/Products/TechnicalDocumentsd
ownload/tabid/237/default.aspx Última consulta Junio
5 de 2010.
[11]X-bee
primeros
pasos
http://www.scribd.com/doc/13069890/Primeros-PasosCon-Arduino-y-X-bee Última consulta Mayo 10 de

197

2010.
[12]http://mundobyte.files.wordpress.com/2007/12/lpt.jpg
Última consulta Mayo 12 de 2010.
[13]http://www.atmel.com/dyn/resources/prod_documents/
doc2545.pdf Última consulta Abril 20 de 2010.
[14]IEEE 802.15.4-2003 “IEEE standard for local and
Metropolitan Area Networks: Specifications for LowRate Wirless Personal Area Networks”. 2003
[15]http://www.datasheetcatalog.net/es/datasheets_pdf/L/2
/9/3/L293.shtml Última consulta Abril 15 de 2010.
[16]http://cfievalladolid2.net/tecno/cyr_01/robotica/sistem
a/motores_servo.htm Última consulta Abril 3 de 2010.
Christian Hernández Pool. Currently studying the seventh
semester in computer science at the Autonomous University of
Yucatan (UADY). He participated in the project fair held in the
institution as well as software development projects.
Raciel Omar Poot Jiménez. Received a degree in Computer
Engineer from the Autonomous University of Yucatan (UADY) in
2008. He has been a full time teacher at the Autonomous
University of Yucatan since 2008 at the department of electronics
in Tizimín México. He has participated in development projects of
electronic engineering. Currently is giving courses on electronic
interfaces and programming languages in the professional
programs at the UADY.
Lizzie Edmea Narváez-Díaz. Received a degree in Computer
Science from the the Autonomous University of Yucatán (UADY) in
1997. She received a Master of Computer Science degree from
Monterrey Technological Institute (ITESM), Campus Cuernavaca,
in 2007. She has been a full time teacher at the Autonomous
University of Yucatán since 2000 in the Networking department in
Tizimín México. She has participated in software engineering
development projects. Currently she is giving courses on wireless
networks in the professional programs in the UADY.
Erika Rossana Llanes-Castro. Received a degree in Computer
Science from the Autonomous University of Yucatan (UADY) in
2002. She is about to receive a Computer Science degree from
Monterrey Technological Institute (ITESM), Campus Estado de
Mexico. Currently, she is a full time academic technician at the
Autonomous University of Yucatan since 2002 in the department of
computer in Tizimín México. She has participated in software
engineering development projects. Currently is giving courses on
programming mobile devices in the professional programs in the
UADY.
Victor Manuel Chi-Pech. Obtained his degree in Computer
Science from the Autonomous University of Yucatan (UADY) in
1996 and his M. Sc. degree in Wireless Network from Monterrey
Technological Institute (ITESM), Campus Cuernavaca, in 2007.
Victor Chi has worked since 2000 at the Autonomous University of
Yucatan, as a full time professor. He has participated in software
engineering development projects. He is currently giving courses
on wireless networks and software engineering in the professional
programs in the UADY.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

198

A Review of Supply Chain Management using Multi-Agent System
Vivek Kumar1 and Dr. S. Srinivasan2
1

Research Scholar, Department of computer Science & Engineering, Suresh Gyan Vihar, University
Jaipur, Rajasthan 302 004, India
2

Professor & Head, Computer Science Department
PDM Engineering College,
Bhadurgarh, Haryana 124 507, India

Abstract
Supply chain consist of various components/ identities like
supplier, manufacturer, factories, warehouses, distributions
agents etc. These identities are involved for supplying raw
materials, components which reassembles in factory to produce a
finished product. With the increasing importance of computerbased communication technologies, communication networks are
becoming crucial in supply chain management. Given the
objectives of the supply chain: to have the right products in the
right quantities, at the right place, at the right moment and at
minimal cost, supply chain management is situated at the
intersection of different professional sectors. This is particularly
the case in construction, since building needs for its fabrication
the incorporation of a number of industrial products. This paper
focuses on an ongoing development and research activities of
MAS (Multi Agent System) for supply chain management and
provides a review of the main approaches to supply chain
communications as used mainly in manufacturing industries.
KEYWORDS: Information exchanges, Multi Agent System,
knowledge sharing and supply chain management

finished product to the customer. This requires thinking beyond
the established boundaries, strengthening the linkages between
the supply chain functions and finding ways to pull them
together. The result is an organization that provides a better
service at a lower cost. MihaelaUlieru et al. give a approach
based on the holonic enterprise model [10] with the Foundation
for Intelligent Physical Agents (FIPA) Contract Net protocols
applied within different levels of the supply chain. The
negotiation on prices is made possible by the implementation of
an XML rule-based system that is also flexible in terms of
configuration. According to Pericles A., the system is viewed as
an organization or collection of roles that relate to each other and
form an interaction model. Roles in the system are descriptions
of business entities, whose functions are modeled at an abstract
level. Whole system is divided in Business Description, Product
Description, and Order Management Holarchy, Manufacturing
Holarchy.ole Modeling. Author has given the following System

JADE

JADE Content Classes

1. Introduction
Supply chain is a worldwide network of suppliers, factories,
warehouses, distribution centers, and retailers through which raw
materials are acquired, transformed, and delivered to customers.
In recent years, new software architecture for managing the
supply chain at the tactical and operational levels has emerged. It
views the supply chain as composed of a set of intelligent
software agents, each responsible for one or more activities in
the supply chain and each interacting with other agents in the
planning and execution of their responsibilities. Supply Chain
Management is the most effective approach to optimize working
capital levels, streamline accounts receivable processes, and
eliminate excess costs linked to payments.

Content

Ontology

Customer Agent
Content
:
ContentManager
Content_Language:
Codec
Setup(addBehaviour()
)

2. Literature Survey
Analysts estimate that such efforts can improve working Capital
levels, streamline accounts receivable processes, and eliminate
excess costs linked to payments. Analysts estimate that such
efforts can improve working capital levels by 25% [2]. Today,
the best companies in a broad range of industries are
implementing supply chain management solutions to improve
business performance and free cash resources for growth and
innovation. Supply Chain Management is about managing the
physical flow of product and related flows of information from
purchasing through production, distribution and Delivery of the

Codec

Concept

Request_Behavio
Concept : Concept
Predicates : Predicate
Action : AgentAction

Predicate
Agent Action

Action()

Fig. 1 Class Architecture for customer Agents

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Yevgeniya Kovalchuk presented a way to manage the supply
chain activities & try to automate their business processes [18].
In practice, all the activities are highly connected and
interdependent. The project is mainly focused on the demand
part of the supply chain. In particular, different methods for
predicting customer offer prices that could result in customer
orders are explored and compared in the system. RuiCarvalho et
al. presented multi-agent technology as a sound alternative to
classical optimization techniques that can contribute to solve
hard problems. To prove this point , the MAS with the following
functionalities designed : simulation of an almost infinite number
of agents, heuristics for decision making, possibility to choose
among alternative decision strategies and tactics, different
evaluation criteria and evaluation functions, different message
sequences, and stochastic or deterministic behavior.

199

This technique tries to answer the following questions: (1) which
agent-based system characteristics and software engineering
principles are addressed within AOSE modeling techniques, and
to what extent? (2) What should be the properties of the future
agent-oriented modeling techniques? Rasoul Karimi et al.
developed a new multi attributes procurement auction [11]. It is
new because it has been defined for a special model of supply
chain, in that customer has a new scoring rule, and producers
have new strategies for biding. Multi Attribute Procurement
Auction is a good solution for Supply Chain problem which fits
its requirements. The implementation of the Swarm simulation
system incorporates multiple agents with the decision model to,
in turn; determine the relationship with their trading partners.
Fig. 3 demonstrates a purchasing agent’s decision model to
determine which supplier should issue the purchase order.
OFP Observer
Swarm

Monolayer information sharing

Supplie

Manufacturer

Distributor

Retailer
Statistics Swarm

Monolayer information sharing
OFP Model Swarm

Supplie

Manufacturer

Distributor

Retailer

Production Agent

Fig. 2 Compartmentalization of operational information coordination

José Alberto R. P. Sardinha1 et al. presented a flexible
architecture based on a distributed multi-agent architecture [15]
of a dynamic supply chain. Intelligent agents tackle sub problems
of a dynamic SCM. Authors present an implementation of this
architecture by using international test bed for SCM solutions.
The mail purpose of this work is to present a multi-agent
architecture for a generic supply chain that uses a direct sales
model, which links customers directly to a manufacturer through
the Internet. Robert de Souza et al. addressed two main issues
[6]: Can we chart the complex logistical dynamics of disk drive
manufacturing? What are the critical success factors that impact
the economics of hard disk drive manufacturing? The backdrop
for this study is the (global) supply chain much in evidence in
disk drive manufacture. Fu-ren Lin et al. analyzed the impact of
various levels of information sharing including order, inventory,
and demand information, which is based on transaction costs
[14]. This study further examines the effects on supply chain
performance in electronic commerce. Specifically, the multi
agent simulation system Swarm is employed to simulate and
analyze the buyer–seller correlation in sharing information
among business partners in supply chains. Information sharing
between firms helps to lower the total cost and increase the order
fulfillment rate. In other words, information sharing may reduce
the demand uncertainty that firms normally encounter. Onn
Shehory et al. discussed suitability of agent modeling techniques
[4] to agent-based systems development. In evaluating existing
modeling techniques, addressed criteria from software
engineering as well as characteristics of agent-based systems.
Evaluation shows that some aspects of modeling techniques for
agent-based systems may benefit from further enhancements.

Inventory
Management

Production
Agent

Planning

Cost Management
Agent
Work Flow
Agent
Order
Management

Fig. 3 Swarm implementation for modeling supply chains.

A trading partner contains several agents, including order
management, inventory management, policy management,
production, production planning, and purchasing. Among them,
the purchasing agent proposes the decision model to determine
from which supplier products should be purchased. The
purchasing agent buys goods from suppliers that offer the lowest
price. The price issued by a supplier is the outcome of weighing
production cost and coordination cost. The final price is the one
issued by a supplier. Yang Hang et al. proposed a CSET
framework [13] for whole supply chain in collaborative manner
by incorporating it with the Just-in-Time (JIT) principle, known
as CSET. The core of the CSET model is based on intelligent
agent technology. This paper defines such double-agent
mechanisms in details, as well as demonstrating its merits via
simulation study. The MAS proposed here was implemented
using LISP and had as first source of inspiration the agent
creation language named RUBA [Ventura97]. The system has as
main blocks i) an environment agent, in charge of the meaningful
functioning of the system and event execution simulation
[Michael90], ii) client agents, with needs to be satisfied and iii)
firm agents, that have also needs but are capable of product
manufacturing. The system also includes a blackboard, where
agents can post their messages, and a set of communication rules
(a communication protocol inspired on the Contract Net protocol

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[Smith80; Smith81]), common to all agents and that makes
possible message exchange. KQML [Finin94], a standard
message format, and KIF [Genesereth94], a message content
specification, served as the basis for the communication protocol
of our MAS [Huns99].The main elements of the system, agents,
blackboard and a communication protocol, are essential for
functioning. These agents are intelligent, because they are able to
present successful behavior [Albus91]. Figure 4 shows the
system behaviour. Fu-ren Lin et al. used multiagent simulation
system, swarm, for simulating trust mechanism and analyzing the
supply chain performance in four different market environments
[19].Supply chain performance is evaluated by comparing the
order fulfillment process of a mold industry both with and
without trust mechanisms. From the experimental result ,

200

The aim of this paper is to present an integrated fuzzy and linear
programming approach to the problem. Firstly, linguistic values
expressed in trapezoidal fuzzy numbers are applied to assess
weights and ratings of supplier selection criteria. Then a
hierarchy multiple model based on fuzzy set theory is expressed
and fuzzy positive and negative ideal solutions are used to find
each supplier’s closeness coefficient. Finally, a linear
programming model based on the coefficients of suppliers,
buyer’s budgeting, suppliers’ quality and capacity constraints is
developed and order quantities assigned to each supplier
according to the linear programming model. Amor et al.
presented Malaca [9], an agent architecture that combines the use
of Component- based Software Engineering and Aspect-Oriented
Software Development.
Message

Creates
Information
Blackboard

Problem

Warehouse

Handles

Return

-----Aspect

Client
Agent

Factory
Agent
-----

+handleMessage( message : Message ) :
Message
+handleInputMessage( message : Message )
+handleOutputMessage( message : Message ) :
Message

Fig 4. Environment Agent and Agent Behavior

they found that the trust mechanism reduced the average cycle
time rate and raised the in-time order fulfillment rate as the
premium paying for better quality and shorter cycle time.
Charles M. Macal et al. gave a new approach [5] to modeling
systems comprised of interacting autonomous agents.
&
described the foundations of ABMS, identifies ABMS toolkits
and development methods illustrated through a supply chain
example, and provides thoughts on the appropriate contexts for
ABMS versus conventional modeling techniques. William E.
Walsh et al. highlighted some issue that must be understood to
make progress in modeling supply chain formation [3].
Described some difficulties that arise from resource contention.
They suggested that market-based approaches can be effective in
solving them. Mario Verdicchio et al. considered commitment as
a concept [17] that underlies the whole multi-agent environment,
that is, an inter-agent state, react a business relation between two
companies that make themselves represented by software agents.
Michael N. Huhns et al. found after this research that supply
chain problems cost companies [8] between 9 to 20 percent of
their value over a six month period. The problems range from
part shortages to poorly utilized plant capacity. Qing Zhang et al.
provide a review of coordination of operational information in
supply chain [12] . Then the essentials for information
coordination are indicated.Vivek Kumar et al. gave a solution for
the construction, architecture, coordination and designing of
agents. This paper integrates bilateral negotiation, Order
monitoring system and Production Planning and Scheduling
multiagent system. Ali Fuat- Guneri et al gave the concept of
supply chain management process[16], in which the firm select
best supplier , takes the competitive advantage to other
companies. As supplier selection is an important issue and with
the multiple criteria decision making approach, the supplier
selection problem includes both tangible and intangible factors.

<<enumeration>>
Aspect Scope

-role : String
-role Instance : String

Coordination
Aspect

AGENT SCOPE
PROTOCOL SCOPE
CONVERSATION_SCOPE

Representation Aspect

Distribution
Aspect

Coordin
ate Role
Role

Interation
Protocol

Encoding Format

Message Transport Service

Component

Acti
on

Component

Fig. 5 Conceptualization of the aspect model in Malaca

Malaca supports the separate (re)use of the domain-specific
functionality of an agent from other communication concerns,
providing explicit support for the design and configuration of
agent architectures and allows the development of agent-based
software so that it is easy to understand, maintain and reuse. KaChi Lam et al. investigated a selection model based on Fuzzy
Principal Component Analysis (PCA) [7] for solving the material
supplier selection problem from the perspective of property
developers. First, the Triangular Fuzzy Numbers is used to
quantify the decision makers' subjective judgments. Second,
PCA is employed to compress the data of the selection criteria

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

and eliminating the multi-collinearity among them. Third, the
linear combined score of PCA (SCOREPCA) is used to rank the
Suppliers.
Unceatin Values
(in 5 point sale

DMs’ importance wrights
Supplies’ ratings

VB/VL

P/L

M

G/
H

and
P.

important
problem
in
the
commercial world and can be
improved by greater automated
support. The problem is salient to
the
MAS
community
and
deserving of continued research.

Evaluation
of
Modeling
Techniques for
Agent-Based
Systems

Author discusses suitability of
agent modeling techniques to
agent-based systems development.
In evaluating existing modeling
techniques, and address criteria
from software engineering as well
as characteristics of agent-based
systems.

Walsh
Michael
Wellman

Uncertain

3.

VG/V
H

Onn
and
Sturm

Fuzzy refraction

0

201

Shehory
Arnon

Based on these findings, we
intend in future research, to
address the needs of agent-based
system developers. This should be
done in order to find the required
modeling
techniques
and
components for building agentbased systems.

0.25

Fig. 6. Membership functions of DMs' importance weights and
suppliers'ratings (modified from)

Four material purchases are used to validate the proposed
selection model.The results show that the proposed model can be
adopted in construction material supplier selection by the
property developers.
Table 1: Summary

S.No.
1.

Title Name &
Authors

Explanation & Conclusion

“supply Chain
Models in Hard
Disk
Drive
Manufacturing”

This paper seeks to address two
main issues: Can we chart the
complex logistical dynamics of
disk drive manufacturing? What
are the critical success factors that
impact the economics of hard disk
drive manufacturing?

Robert de Souza
and Heng Poh
Khong

2.

Modeling supply
chain Formation
in
Multiagent
System

The pressures in the disk drive
industry are classic supply chain
economics; value, timing, supply,
demand
and
technology
development that all play a part
into price erosion patterns. To
address such issues the authors'
postulate that the five chains
interact
to
give
rise
to
complexities, static models cannot
easily handle.
In this paper the authors highlight
some issues that must be
understood to make progress in
molding supply chain formation.

William

Supply chain formation is an

E.

4.

Effects
of
Information
Sharing
on
Supply
Chain
Performance in
Electronic
Commerce
Fu-ren
Lin,
Sheng-hsiu
Huang,
and
Sheng-cheng Lin

Findings indicate that the more
detailed
information
shared
between firms, the lower the total
cost, the higher and the order
fulfillment rate. And the shorter
the order cycle time. In other
words, information sharing may
reduce the demand uncertainty
that firms normally encounter.
Firms that share information
between trading partners tend to
transact with a reduced suppliers.
This work investigated the buyer–
seller relationship in electronic
commerce with an Extranet as the
platform for sharing information.
Using the Swarm simulation
system, based on transaction
costs, we have identified effects of
sharing
various
levels
of
information between supply chain
partners.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

5.

Commitments
for Agent-Based
Supply
Chain
Management
Mario
Verdicchio and
Marco
Colombetti

6.

Building
Holonic Supply
Chain
Management
Systems: An eLogistics
Application for
the Telephone
Manufacturing
Industry
MihaelaUlieru
and
MirceaCobzaru

7.

A
Multiagent
Systems
Approach
for
Managing
Supply-Chain
Problems: new

As there are several analogies
between a company in a business
network and an agent, the MultiAgent System paradigm can be a
valid approach for modeling
supply chain networks. We
consider commitment as a concept
that underlies the whole multiagent environment, that is, an
inter-agent state, reacting a
Approach is based on the holonic
enterprise model with the
Foundation
for
Intelligent
Physical Agents (FIPA) Contract
Net protocols applied within
different levels of the supply
chain holarchy. To accommodate
differentiation of interests and
provide an allocation of resources
throughout the supply chain
holarchy, we use nested protocols
as interaction mechanisms among
agents. Agents are interacting
through a price system embedded
into specific protocols. The
negotiation on prices is made
possible by the implementation of
an XML rule-based system that is
also flexible in terms of
configuration and can provide
portable data across networks.
As the effectiveness of centralized
command and control in SCM
starts to be questioned, there is a
critical need to organize
supply chain systems in a
decentralized and outsourced
manner. Agent-based models can
easily be distributed across a
network due to their modular
nature. Therefore, the distribution
of decision-making and execution
capabilities to achieve system
decentralization
is
possible
through models of operation with
communication among them. The
ontology structure of the JADE
framework is, in our opinion, one
of the best designed to address the
issues of accessing and sharing
information pertinent to a specific
application.
It was modelled and implemented
a MAS with the following
functionalities: simulation of an
almost infinite number of agents,
heuristics for decision making,
possibility to choose among

202

tools and results
Rui
Carvalho,
Luís Custódio

8.

A Multi-Agent
Architecture for
a
Dynamic
Supply
Chain
Management
José Alberto R.
P.
Sardinha1,
Marco
S.
Molinaro2,
Patrick
M.
Paranhos2,
Pedro
M.
Cunha2,
Ruy L. Milidiú2,
Carlos J. P. de
Lucena2

9.

How to Model
With
Agents
Proceedings of
the 2006 Winter
Simulation
Conference
Charles
M.
Macal
and
Michael J. North

alternative decision strategies and
tactics,
different
evaluation
criteria and evaluation functions,
different message sequences, and
stochastic
or
deterministic
behavior.
When we applied our MAS to a
problem of SC management at
HP, we obtained results with
stock outs for every product of the
bill of materials. On the contrary,
some authors using mathematical
tools only simulated the stock out
of only one product of the bill of
materials.
This paper presents a flexible
architecture for dealing with the
next generation of SCM problems,
based on a distributed multi-agent
architecture of a dynamic supply
chain. We define intelligent agent
roles that tackle sub problems of a
dynamic SCM.
We
also
present
an
implementation
of
this
architecture
used
in
the
international test bed for SCM
solutions, the Trading Agent
SCM competition, as well as some
experimental results.
A multi-agent design is used in
the architecture, because we
believe
it
facilitates
the
development of modular entities
that are distributed and reusable.
The design was also used to
implement an agent entry for the
Trading Agent Competition. This
system competed against 32
entries, and was able to classify to
the quarter-finals of the 2005
competition.
Agent-based
modeling
and
simulation (ABMS) is a new
approach to modeling systems
comprised
of
interacting
autonomous
agents.
ABMS
promises to have far-reaching
effects on the way that businesses
use
computers
to
support
decision-making.
Computational advances make
possible a growing number of
agent-based applications across

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

many fields. Applications range
from modeling agent behavior in
the stock market and supply
chains

10.

11.

New
Multi
Attributes
Procurement
Auction
for
AgentBased
Supply
Chain
Formation

In this article, this constraint has
been relaxed and a new
procurement auction is defined. In
this auction, seller agents can take
different strategies based on their
risk attribute. These strategies is
analyzed
and
compared
mathematically.

Rasoul Karimi,
Caro Lucas and
Behzad Moshiri

Authors define a new MAPA
which is usable under the new
model of supply chain. In this
MAPA, the producer could have
two different strategies based on
its risk attribute. These two
strategies
are
compared
mathematically and also in a
simulation.
The research approach followed is
presented. The results achieved so
far along with the plans for future
work are given next.

Multi-Agent
Decision
Support System
for
Supply
Chain
Management
Yevgeniya
Kovalchuk

12.

Double-agent
Architecture for
Collaborative
Supply
Chain
Formation
Yang Hang and
Simon Fong

13,

Essentials
for
Information
Coordination in
Supply
Chain

Various techniques for predicting
bidding prices in the context of
dynamic
competitive
environments are explored. Apart
from the SCM, the solutions can
be used in forecasting financial
markets and participating in online auctions.
The model is supported by
double-agent architecture with
each type of agents who makes
provisional plans of order
distribution by Pareto optimality
and JIT coordination respectively
As
a
result,
pipelining
manufacturing flow is achieved.
This is significant to dynamic
supply chain formation as it can
help to optimize constraints and
costs
across
production,
distribution,
inventory,
and
transportation.
Provide a review of coordination
of operational information in
supply chain which is classified
into information types, their

203

Systems

impact
on
supply
chain
performance, and the policy of
information sharing

Qing Zhang and
Wuhan

14.

Effects of Trust
Mechanisms on
Supply
Chain
Performance
Using
Multiagent Simulation
and Analysis
Fu-ren Lin ,Yuwei Song and
Yi-peng Lo

15.

A
Multiagent
Conceptualizatio
n For SupplyChain
Management
Vivek kumar ,
Amit
Kumar
Goel , Prof.
S.Srinivisan

16.

An
integrated
fuzzy-lp
approach for a
supplier
selection
problem
in
supply
chain
management
Ali Fuat Guneri,

Multi-agent
computational
environments are suitable for
studying classes of coordination
issues
involving
multiple
autonomous or semi-autonomous
optimizing
agents
where
knowledge is distributed and
agents communicate through
messages.
The multiagent simulation system
Swarm is employed to simulate
and analyze the buyer–seller
correlation in sharing information
among business partners in supply
chains
The deeper the information
sharing level, the higher in-time
order fulfillment rate and the
shorter order cycle time, as
information sharing may reduce
the demand uncertainty that firms
normally encounter. Finally, firms
that share information between
trading partners tend to transact
with a reduced set of suppliers.
Paper present solution for the
construction,
architecture,
coordination and designing of
agents. This paper integrates
bilateral
negotiation,
Order
monitoring system and Production
Planning
and
Scheduling
multiagent System.
The wide adoption of the Internet
as an open environment and the
increasing popularity of machine
independent
programming
languages, such as Java, make the
widespread adoption of multiagent technology a feasible goal
A hierarchy multiple model based
on fuzzy set theory is expressed
and fuzzy positive and negative
ideal solutions are used to find
each
supplier’s
closeness
coefficient. Finally, a linear
programming model based on the
coefficients of suppliers, buyer’s
budgeting, suppliers’ quality and
capacity constraints is developed
and order quantities assigned to

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Atakan Yucel ,
Gokhan
Ayyildiz

17.

18.

Malaca:
A
component and
aspect-oriented
agent
architecture”
Information and
Software
Technology
Mercedes Amor
*, Lidia Fuentes
A
material
supplier
selection model
for
property
developers using
Fuzzy Principal
Component
Analysis”
Automation in
Construction
Ka-Chi Lam ,
Ran Tao, Mike
Chun-Kit Lam

each supplier according to the
linear programming model.
Fuzzy set theory approach helps
to convert decision-makers’
experience to meaningful results
by applying linguistic values to
assess
each
criterion
and
alternative suppliers.
An agent architecture that
combines the use of Componentbased Software Engineering and
Aspect-Oriented
Software
Development
Provided explicit support for the
design and configuration of agent
architectures and allows the
development
of
agent-based
software
Tthe Triangular Fuzzy Numbers is
used to quantify the decision
makers' subjective judgments.
Second, PCA is employed to
compress the data of the selection
criteria and eliminating the
multicollinearity among them.
The model can efficiently
eliminate the multicollinearity
among the supplier's attributes
and help to reduce the trade-offs
and repeatability errors in the
selection process.and the proposed
selection model can also reduce
the subjective errors on the sense
that the weight assigned for each ζ
is generated automatically.

3. Conclusion
Multi-agent system is a loosely coupled network of
software agents that interact to solve problems that are
beyond the individual capacities or knowledge of each
problem solver. The general goal of MAS is to create
systems that interconnect separately developed agentsThus
enabling the ensemble to function beyond the capabilities
of any singular agent in the set-up in agent model. This
research can demonstrate that agent technology is suitable
to solve communication concerns for a distributed
environment. Multi-agent systems try to solve the entire
problem by collaboration with each other and result in
preferable answer for complex problems. For further
works, it is recommended for developing this model to
have multi retailer and even multi distributor and apply the
auction mechanism between them.

204

References
[1] Ali Fuat Guneri, Atakan Yucel , Gokhan Ayyildiz “An
integrated fuzzy-lp approach for a supplier selection problem in
supply chain management” Expert Systems with Applications 36
(2009) 9223–9228
[2] C. Iglesias, M. Garijo, J. Centeno-Gonzalez, and V. J. R.,
"Analysis and Design of Multiagent Systems using MASCommonKADS," presented at Agent Theories, Architectures,
and Languages, 1998.
[3] Charles M. Macal and Michael J. North Tutorial on AgentBased Modeling And Simulation Part 2: How to Model With
Agents Proceedings of the 2006 Winter Simulation Conference
[4] Fu-ren Lin, Sheng-hsiu Huang, and Sheng-cheng Lin ,
“Effects of Information Sharing on Supply Chain Performance in
Electronic Commerce“ ,IEEE Transactions On Engineering
Management, Vol. 49, No. 3, August 2002.
[5] Fu-ren Lin ,Yu-wei Song and Yi-peng Lo ,”Effects of Trust
Mechanisms on Supply Chain Performance Using Multi-agent
Simulation and Analysis” , Proccding of the First Workshop on
Knowledge Economy and Electronic Commerce.
[6] José Alberto R. P. Sardinha1, Marco S. Molinaro2, Patrick
M. Paranhos2, Pedro M. Cunha2,Ruy L. Milidiú2, Carlos J. P. de
Lucena2 , “A Multi-Agent Architecture for a Dynamic Supply
Chain Management” , American Association for Artificial
Intelligence ,2006.
[7] Ka-Chi Lam , Ran Tao, Mike Chun-Kit Lam “A material
supplier selection model for property developers using Fuzzy
Principal Component Analysis” Automation in Construction 19
(2010) 608–618
[8] Mario Verdicchio and Marco Colombetti ,” Commitments for
Agent-Based Supply Chain Management” , ACM SIGecom
Exchanges, Vol. 3, No. 1, 2002.
[9] Mercedes Amor *, Lidia Fuentes “Malaca: A component and
aspect-oriented agent architecture” Information and Software
Technology 51 (2009) 1052–1065
[10] MihaelaUlieru, Senior Member, IEEE, and MirceaCobzaru ,
“BuildingHolonic Supply Chain Management Systems: An eLogistics Application for the Telephone Manufacturing Industry”
IEEE transactions on industrial informatics, vol. 1, no. 1,
February 2005.
[11] Onn Shehory and Arnon Sturm , “Evaluation of Modeling
Techniques for Agent-Based Systems” , AGENTS’01, February
11-13, 2001, Montréal, Quebec, Canada.
[12] Qing Zhang and Wuhan, “Essentials for Information
Coordination in Supply Chain Systems”, Asian Social Science
Vol. 4, No. 10 ,Oct 2008

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

[13] Rasoul Karimi, Caro Lucas and Behzad Moshiri ,” New
Multi Attributes Procurement Auction for Agent- Based Supply
Chain Formation” ,IJCSNS International Journal of Computer
Science and Network Security, VOL.7 No.4, April 2007.
[14] Robert de Souza and Heng Poh Khong , “supply Chain
Models in Hard Disk Drive Manufacturing” , lEEE ON
Magnetics. VOL 35. No 1. March 1999
[15] Rui Carvalho, Luís Custódio , “A Multiagent Systems
Approach for Managing Supply-Chain Problems: new tools and
results “ , Inteligencia Artificial V. 9, No 25, 2005.
[16] Vivek kumar , Amit Kumar Goel , Prof. S.Srinivisan, “A
Multiagent Conceptulization For Supply-Chain Management”,
Ubiquitous Computing and Communication Journal, Vol 4, No. 5
, 2009
[17] William E. Walsh and Michael P. Wellman,” Modling
supply chain Formation in Multiagent System” , Artificial
Intelligence, vol 1788: Agent Mediated Electronic Commerce
II,Springer-Verlag, 2000
[18] Yevgeniya Kovalchuk , “Multi-Agent Decision Support
System for Supply Chain Management” 10th Int. Conf. on
Electronic Commerce (ICEC) ’08 Innsbruck, Austria.
[19] Yang Hang and Simon Fong , “Double-agent Architecture
for Collaborative Supply Chain Formation” , Proceedings of
iiWAS2008.

205

Mr. Vivek Kumar has completed his M.Phil (Computer
Science) in 2009. Apart from this, he did M.Tech. (Computer
Science, 2005) & MIT in 2001. He has 10 years of teaching
experience in various engineering Colleges. Presently he is
working as faculty in Gurgaon Institute of Technology and
Management, Gurgaon, Haryana, India. Under the guidance of
Dr. Srinivasan, he is pursuing Ph.D. from Department of
Computer Science and Engineering, S. Gyan Vihar University,
Jaipur, India
He has published one international & two national (Conference
Proceeding) papers on Supply Chain Management through
Multi-Agent System.
Dr S Srinivasan obtained his M.Sc (1971), M.Phil(1973) and
Ph.D. (1979) from Madurai University . He served as Lecturer
for 7 years in National Institute of Tehnology in the Computer
Applications Department . Later he joined Industry as IT Head
for 18 years . Again he started his teaching career serving as
Professor and Head of the Department of Computer Science,
PDM College of Engineering , Haryana, India. He has published
several papers in Multi-Agent Technology Systems and its
applications . He is member of Computer Society of India.
Attended various national and international seminars and
conferences and presented papers on Artificial Intelligence and
Multi-Agent Technology.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

206

Development of Ontology for Smart Hospital and
Implementation using UML and RDF
Sanjay Anand1, Akshat Verma2
1

Noida, UP-201301, India

2

Centre for Development of Advanced Computing (C-DAC)
Noida, U.P 201301, India

Abstract
Patient’s information is an important component of the
patient privacy in any health care system that is based on
the overall quality of each patient in the health care
system. The main commitment for any health care system
is to improve the quality of the patient and privacy of
patient’s information.
There are many organizational units or departments in the
hospital, from which, it is necessary for them that there
should be good coordination in each others. Even the
available health care automation software also does not
provide such coordination among them. These softwares
are limited up to the hospital works but do not provide the
interconnectivity with other hospitals and blood banks etc.
Thus, these hospitals cannot share information in-spite of
the good facilities and services.
Today, there is a need of such computer environment
where treatment to patients can be given on the basis of
his/her previous medical history at the time of emergency
at any time, on any place and anywhere. Pervasive and
ubiquitous environment and Semantic Web can bring the
boon in this field. For this it is needed to develop the
ubiquitous health care computing environment using the
Semantic Web with traditional hospital environment. This
paper is based on the ubiquitous and pervasive computing
environment and semantic web, in which these problems
has been tried to remove so that hospital may be smart
hospital in the near future. This paper is the effort to
develop the knowledge-base ontological description for
smart hospital.
Keywords: Ontology, Smart Hospital, knowledge-base,
Pervasive and ubiquitous, Semantic Web, RDF.

1. Introduction
Many change and many of the developments in Health
care environment for the last decade are due to new
technologies such as mobile and wireless computing. On
the one hand where the main aim of hospital is to provide
the better services and facilities to the patient, on the other,
his/her proper care makes success to the hospital. Along
with this, hospital also adds many new facilities and
services with existing facilities and services in one place
for their patient. Having all facilities and services to the
same place, hospitals system is not able to provide
sufficient care to the patient at any place and at any time.
The major problems with the health care environments are
related to the information flow and storage of the patient’s
data and other entities of the health care system. These
problems are further categorized below

One problem is associated when there is information
gap among the medical professionals, users/patients
and various data source.



Another problem is that in which there is a need to
present and organize the information flowed among
the hospital members and other entities so that
information can be accessed at any time and any
place.



Other problem related to the various types of data
used and no common format for holding it in a
common way.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

2. Concept of Ontology
There are being much development in the ontology
[4][7][9] process for the last decade and many good
thinkers gave its meaning and its various definitions. It is a
set of primitive concepts that can use for representing a
whole domain or part of it that defines a set of objects,
relations between them and subsets of those in the
respective domain. It is also a man-made framework that
supports the modeling process of a domain in such a way a
collection of terms and their semantic interpretation is
provided.
In artificial intelligence [11] the term -Ontology is an
explicit specification of a conceptualization, where
ontology defines:

207



It provides a beneficial strategy for the better
education and training simulation among the health
care professionals.



It ensures the higher levels of competence, confidence
and critical thinking skills.



It helps to manage the complex and changing health
care system.



It also supports the faculty for developing and
evaluating new educational models, modalities, and
teaching-learning strategies at no risk to patients.

 It also helps to integrate the better combination of
ICT technologies, product and services.



a vocabulary - the set of terms used for modeling.

4. Ontology for Smart Hospital (SH)



a structure of the statements in the model.



the semantic interpretation of these terms.

The upper-level of ontology for the health care system is
major component where end user interacts with it and the
information encompasses a conceptual component i.e.
information that plays a role in hospital care outcomes,
including errors and difficulties. To deal with the events,
Deployment of SH in a particular hospital setting will
involve developing the middleware to relate the
ontological knowledge base [8] with existing information
systems and by creating instances of ontological categories
that is based on the information in the hospital databases.

Ontologies have become ubiquitous [1] in information
systems. They constitute the Semantic Web’s [2] [3]
backbones, facilitate e-commerce, and serve such diverse
application fields as bioinformatics and medicine.
Many times the meaning of word ‘Ontology’ is taken as a
branch of philosophy that is the science of what is, of the
kinds and structures of objects, properties, events,
processes and relations in every area of reality.

The following Figure-1 illustrates the part of the top/upper
level of the SH ontology.

Sometimes, it is used as a synonym of ‘metaphysics’ and
having broader sense which refers to the study of what
might exist and which of the various alternative possible
ontologies is in fact true of reality.
In simple term, the Ontology can be defined as a collection
of Classes, Sub-classes and makes the relationship among
them.

3. Smart Hospital
The smart hospital [14] is a type of hospital that is able to
share the domain’s knowledge with same or other’s
domain and fulfill the requirement of the ubiquitous and
pervasive computing [5] environment.
The smart hospital offers a number of advantages Fig. 1 Top/Upper level of the SH ontology

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

In the above figure the components are events, actions,
person, policies, alerts etc. For example, in the SHO
different type of objects are taken such as- agents,
policies, record, drugs, place and equipment etc. further,
agent is categorized in many different type of agents type
such as- person, insurance company and hospital also. So,
this ontology is able to describe which action and event is
performed in what time and what place. This is also useful
to alert the different type of domain time to time with
different type of alters such as-medical condition alert,
medical conflict alert, regulation action and regulatory
conflict alert.
The major benefits of ontology in health care environment
are 

To find out the common understanding of the
structure of information among hospital entities or
software agents and share it.



Domain knowledge can be reuse.



Domain assumptions can be made explicit.



To separate domain knowledge from the operational
knowledge



To analyze domain knowledge

The process in iterative design is likely to be continued
through the entire lifecycle of the ontology. Based on the
various literature survey, the proposed steps for the
processing of developing ontology are-

5.1 Finding the domain and scope of the
ontology
The first step of the development of ontology is to
determine and define its domain and scope. During the
determination and definition of it, we must have to
consider the following question so that we could be able to
easily determine it:
-What is the domain that the ontology will cover?
-For what we are going to use the ontology?
-For what types of questions the information in the
ontology should provide answers?
-Who will use and maintain the ontology?
The answers to these questions may change during the
ontology-design process, but at any given time they help
limit the scope of the model.

5.2 Consider reusing existing ontology

Often ontology of the domain is not a goal in itself.
Developing ontology is to defining a set of data and their
structure for other programs to use. Problem-solving
methods, domain-independent applications, and software
agents use ontologies and knowledge bases built from
ontologies as data. For example, we develop ontology of
patient, doctor and nurse and appropriate combinations of
patient with doctor and nurse.

5. Methods and Approach
The
basic
approach
used
to
develop
the
ontology/knowledge base is the iterative approach that is
used to identify the various super classes and sub classes
and its properties which is based on the simple
knowledge/ontology engineering [10] methodology.
This methodology is described
Engineering Methodology

208

The second step is to consider about the existing
ontology. The benefit of considering the existing ontology
is that what someone else has done and checking if we can
refine and extend existing sources for our particular
domain and task. Reusing existing ontology may be a
requirement if our system needs to interact with other
applications that have already committed to particular
ontology or controlled vocabularies.

5.3 Enumerate important terms in the
ontology-preparing vocabulary
The third step is to write down a list of all terms that are
used in the system. We need to enumerate its all properties
that the concepts may have, or whether the concepts are
classes or slots.

below-Knowledge

No specified methods or approaches are still developed for
the development of ontology. Proposed methodology
depends on an iterative approach to ontology
development. All the steps are revised and refined in the
process of iterative approach to evolve the ontology.

5.4 Define the classes and the class hierarchy
The forth step is to define the classes and its hierarchies.
There are several possible approaches to develop a class
hierarchy. These are

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org





209

A top-down development process starts with the
definition of the most general concepts in the domain
and subsequent specialization of the concepts.



A bottom-up development process starts with the
definition of the most specific classes, the leaves of
the hierarchy, with subsequent grouping of these
classes into more general concepts.

UML provides the graphical representation of
visualization, specifying, constructing and documenting
the artifacts. Following figure-2 shows the use case
diagram for patient treatment-

Filling in the slot values.

7. UML Diagram for Smart Hospital

 A mix development process is a combination of the
top-down and bottom-up approaches. Here, it is
defined the more salient concepts first and then
generalize and specialize them appropriately.

5.5 Define the properties of classes—slots
The fifth step is to define the properties of the class that is
called the slots. Once we have defined some of the classes,
we must describe the internal structure of concepts. For
each property in the list, we must determine which class it
describes. These properties become slots attached to
classes. In general, there are several types of object
properties that can become slots in ontology.

5.6 Define the facets of the slots
The sixth step is to define the facets of the slots. Slots can
have different facets which describe the value type,
allowed values, the number of the values (cardinality), and
other features of the values the slot can take.

Fig. 2 Use-case diagram
Class diagrams for Smart Hospital are given below-

5.6.1 Slot cardinality
Slot cardinality defines how many values a slot can have.
Some systems may have single cardinality (allows at most
one value) and some may have multiple cardinality
(allows any number of values).

Guardian
name
address

Patient

MedicalHistory

responsibleFor name
1

*

1

address
patientnumber

insurance
dateRange

5.6.2 Slot-value type
A value-type facet describes what types of values can fill
in the slot. Most common value types are String, Number,
Boolean, Enumerated and Instance

*

Outpatient

Inpatient

TreatmentInstance
date
medications
procedures

6. Create instances
The last step is to create the individual instances of classes
in the hierarchy. Defining an individual instance of a class
requires 

Choose a class,



Create an individual instance of that class, and

Fig. 3(a) Class diagram for patient record
Following Figure 3(b) shows the Class diagram for patient
Treatment-

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Guardian

1

responsibleFor

name
address

*

Patient

MedicalGroup
Employee

name
address
*
patient number

name
main location

name
*
Employee no.
address

assignedTo

worksAt
*

Hospital
1…*

Outpatient

Inpatient
1...2

*

primary

*

1

Nurse
specialty

*

assignedTo

MedicalHistory

*

Building
*

name
location

consulting

insurance

1

Doctor
specialty

name
address

210

SPARQL is both a query language and a data access
protocol which retrieves the data about the domain
through the data which is stored in RDF (Resource
Description Framework). A query language and data
access protocol for the Semantic Web. It is defined in
terms of the W3C's RDF data model and will work for any
data source that can be mapped into RDF. Syntactically, it
has probably been the most popular and widely
implemented. This is perhaps surprising given the very
different models that lurk behind relational databases.
Using the Protégé tool, click on the Open SPARQL Query
panel... menu item. This will open a panel at the bottom of
the screen in the Snapshot-

*

Location

assignedTo

assignedTo

*

TreatmentInstance

number
size
1

assignedTo

medications
procedures

Fig. 3(b) Class

diagram for patient Treatment

Following figure- 3(c) shows the Class diagram for Asset
Assignment MedicalGroup

Patient

name
main location

* assignedTo

name
address
patient number

*

Employee

Outpatient

name
ss number
address

Inpatient

Hospital
worksAt

name
address
1…*

*

*
*

*

*

Building

primary

assignedTo

name
location

*

Doctor
Specialty

consulting

*

*

assignedTo

Nurse
Specialty
*

Location
*

assignedTo* identifier

characteristics
size

assignedTo

*

Fig. 3(c) Class diagram for Asset Assignment

8. Implementation
For querying, SPARQL is used, a W3C recommendation
towards a standard query language for the Semantic Web.
It is focus on querying RDF graphs at the triple level. It
can be used to query an RDF Schema to filter out
individuals with specific characteristics.

In the Query panel on the left, we can enter our query in
the SPARQL syntax, press the Execute Query button and
the query results will be shown on the right-hand side. In
the snapshot above, the query selects the patient ID (pid),
patient name (pname), Allotted ward name, Ward Type,
Ward No and Bed No. of all the patient in the SH
ontology-ward table.

9. Conclusion
9.1

Result Discussion

RDF is an open standard for the digital storage which is
based on XML [6]. XML files are human readable by
design, but this feature is not always desirable for security
reasons.
An interesting effort is the use of UML has the ability to
present a modeling visualization of data process flow.

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

211

This paper uses the RDF and use the RDF based query and
database as a background. RDF query is simple then other
database query. The reason behind of this is-

[2]

Berners-Lee, Tim, James Hendler, & Ora Lassila
(2001)"The Semantic Web," Scientific American, May
2001.



Supporting a graph oriented API via a textual query
language ala SQL.

[3]



Load/Reload an RDF file from a URL into the
database.

Horrocks, I.; Patel-Schneider, P. F.; and van Harmelen,
F.2002. Reviewing the design of DAML+OIL: An
ontology language for the semantic web. In Proc. of the
18th Nat. Conf. on Artificial Intelligence (AAAI 2002).

[4]

Grainger, M.; Lee, J.: Ontology – Applications and
Design. Communications of the ACM, Vol. 45, No. 2,
February 2002.

[5]

Weiser, M. 1993b. “Ubiquitous Computing”. IEEE
Computer, 26(10):71--72.

[6]

Erdmann, M. and Studer, R. (1999) "Ontology as
conceptual models for XML documents". In
Proceedings of the 12th Workshop on Knowledge
Acquisition, Modeling and Management (KAW'99).
Knowledge Science Institute, University of Calgary
http://sern.ucalgary.ca/KSI/KAW/KAW99/papers/Erdm
ann1/erdmann.pdf.

[7]

Dean, M.; Schreiber, G.; Bechhofer, S.; van Harmelen,
F.; Hendler, J.; Horrocks, I.; McGuinness, D. L.; PatelSchneider, P. F.; and Stein, L. A. 2004. OWL web
ontology language reference. W3C Recommendation.
http://www.w3.org/TR/owl-ref/.

[8]

Alani, H., Kim, S., Millard, D. E., Weal, M. J., Hall, W.,
Lewis, P. H., and Shadbolt, N.R., 2003, “Automatic
Ontology-Based Knowledge Extraction from Web
Documents”, IEEE Intelligent Systems, Vol. 10, No 1,
pp.14-21.

[9]

Guided Tour of Ontology; John F.
http://www.jfsowa.com/ontology/guided.htm.



Scalable to millions of nodes and triples.



Provide support for RDF Schemas.



Provide support for some basic forms of inference.

The RDF database stores the data in the form of object
property and data type of the instance. It is a simple,
scalable, open-source and object oriented database which
keeps it to separate from the other database. That is the
reason that it has been used in semantic web and web 2.0
which is the extension of running web.
Furthermore, the implementation of the patient ontology
and its other related entities provides an explicit
representation of the semantic and lexical connections that
exist between information carried. A mapping mechanism
facilitates the unified querying and presentation of
information originating in medical Record. This system
would be a filtered display of query results, presenting a
merged view of valid and consistent information.
Furthermore some meta-analysis of the results will help
the user reason over the imposed queries.

Future Directions
This paper is basically using the semantic technology
using the open standard- RDF and XML. Semantic web is
the technology which is the extension of web where the
research on this is going on. Actually, the different storage
stores the different type of data on the web which
increases the heavy load on the network. This project is
the effort, based on the RDF as a background database
which saves our time and space and near future this
technology and improvement on this project may be
possible which bring the boon in the health care
environment.

References
[1]

Bardram, J.E. and Christensen, H.B., 2007, “Pervasive
Computing Support for Hospitals: An overview of the
Activity-Based Computing Project,” IEEE Pervasive
Computing, Vol. 16, No. 1, pp. 44-51.

Sowa,

[10] F. Gandon, Ontology Engineering: a survey and a return
on experience, Research Report of INRIA n°4396,
France, March 2002.
[11] AI Watch - The Newsletter of Artificial Intelligence.
Vol. 4-6. AI Intelligence, Oxford, UK.
[12] M. Uschold and Gruninger M. Ontologies: Principles,
methods and applications. Knowledge Engineering
Review, Vol. 11:2, 93-136, 1996. Also available as
AIAI-TR-191 from AIAI, the University of Edinburgh.
[13] Bruno Bachimont "Modélisation linguistique et
modélisation logique des ontologies: l'apport de l'ontologie
formelle." In Proceedings of IC 2001, pp 349-368 Plateforme AFIA, Grenoble 25-28 juin 2001.
[14] Press Release - The Smart Hospital at The University of
Texas at Arlington School of Nursing becomes a Laerdal

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

Center of Excellence in Simulation. Available athttp://www.uta.edu/nursing/simulation/pr-laerdal.pdf.

Sanjay Kumar Anand is a researcher and computer engineer. He
has done the M.Tech in Information Technology from GGSIP
University, Delhi. He has published one international and one
national paper in conference. Currently, he is a reviewer of IJSCI
and member of International association of Engineers. His
research areas are Data communication and computer Network,
Network Security, Software engineering, Database Management
System and open source technology.
Akshat Verma is a researcher and a Freelancer Software
Programmer. He has completed his M.TECH in Information
Technology from C-DAC (Centre for Development for Advanced
Computing), Noida, India and B.E in Computer Science and
Engineering from Rajasthan University, Jaipur, India. His research
interests are Steganography, Multimedia and Images, Network
Security, Ontology, Cryptography and is working on
Steganography in Images and audio/ video compression.

212

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

213

Survey: Image Encryption Using Salsa20
Alireza Jolfaei1 and Abdolrasoul Mirghadri2
1

Faculty and Research Center of Communication and Information Technology, IHU
Tehran, Iran

2

Faculty and Research Center of Communication and Information Technology, IHU
Tehran, Iran

Abstract
In present times, multimedia protection is becoming increasingly
jeopardized. Therefore numerous ways of protecting information
are being utilized by individuals, businesses, and governments.
In this paper, we survey Salsa20 as a method for protecting the
distribution of digital images in an efficient and secure way. So,
we performed a series of tests and some comparisons to justify
salsa20 efficiency for image encryption. These tests included
visual testing, key space analysis, histogram analysis,
information entropy, encryption quality, correlation analysis,
differential analysis, sensitivity analysis and performance
analysis. Simulation experiment has validated the effectiveness
of the Salsa20 scheme for image encryption.
Keywords: Salsa20, image encryption, test, comparison.

1. Introduction
Along with the fast progression of data exchange in
electronic way, it is important to protect the confidentiality
of image data from unauthorized access. Security breaches
may affect user's privacy and reputation. So, data
encryption is widely used to confirm security in open
networks such as the internet. Due to the substantial
increase in digital data transmission via public channels,
the security of digital images has become more prominent
and attracted much attention in the digital world today.
The extension of multimedia technology in our society has
promoted digital images to play a more significant role
than the traditional texts, which demand serious protection
of users' privacy for all applications. Each type of data has
its own features; therefore, different techniques should be
used to protect confidential image data from unauthorized
access. Most of the available encryption algorithms are
used for text data. However, due to large data size and real
time requirement, it is not reasonable to use traditional
encryption methods.
Thus, a major recent trend is to minimize the
computational requirements for secure multimedia

distribution. Many researchers proposed different image
encryption schemes to overcome image encryption
problems [1, 2, 3, 4]. A classification of the proposed
schemes from the open literature is given in [5]. In this
paper, we survey the application of Salsa20 for image
encryption. Salsa20 has an interesting blocky structure that
seems to be a good choice for image encryption. A series
of tests were applied to justify Salsa20's efficiency for the
visual encryption applications.
The rest of the paper is organized as follows: In Section 2,
first we describe symmetric ciphers then we briefly
overview Salsa20 as a symmetric scheme for image
encryption. In Section 3, we analyze the security of the
surveyed cryptosystem and evaluate its performance
through various statistical analysis, key sensitivity
analysis, differential analysis, key space analysis, speed
analysis, etc and compare the results. Finally, some
conclusions are given in section 4.

2. Symmetric Cryptography
Symmetric encryption is the oldest branch in the field of
cryptology, and is still one of the most important ones
today. Symmetric cryptosystems rely on a shared secret
between communicating parties. This secret is used both
as an encryption key and as a decryption key. Generally,
symmetric encryption systems with secure key are divided
into two classes: stream ciphers and block ciphers. Stream
ciphers encrypt individual characters of a plaintext
message, using a time variant encryption function, as
opposed to block ciphers that encrypt groups of characters
of a plaintext message using a fixed encryption function
[6]. Nowadays, the boundaries between block ciphers and
stream ciphers are becoming blurred. So, it is difficult to
tell whether a symmetric cipher is a stream or block cipher.
Stream ciphers are beyond the most important encryption
systems which have major applications in military,

IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010
ISSN (Online): 1694-0814
www.IJCSI.org

strategic sectors and etc. They are generally faster than
block ciphers in hardware, and have less complex
hardware circuitry. They are also more appropriate when
buffering is limited or when characters must be
individually processed as they are received. Stream
ciphers may also be advantageous in situations where
transmission errors are highly probable, because they have
limited or no error propagation.

2.1 Salsa20
As a response to the lack of efficient and secure stream
ciphers, ECRYPT manages and coordinates a multiyear
effort called eSTREAM to identify new stream ciphers
suitable for widespread adoption. Salsa20, one of the

214

eSTREAM candidates, is a new synchronous stream
cipher proposed by Bernstein [7]. The author justified the
use of very simple operations (addition, XOR, constantdistance rotation) and the lack of multiplication or Sboxes. This helps to develop a very fast primitive that is
also, by construction, immune to timing attacks. Salsa20
passed to Phase 3 without major known attacks. The Core
of Salsa20 is a hash function with 64-byte input and 64byte output. The Hash function is used in counter mode as
a stream cipher: Salsa20 encrypts a 64-byte block of
plaintext by hashing the key, nonce, and block number and
XOR-ing the result with the plaintext [8]. Salsa20/r
algorithm is defined as follows [9]:

y0 
 x 0   y 1  x 1  ((x 0  x 3 )  7)
 
  
y
 1   quarterround  x 1    y 2  x 2  (( y 1  x 0 )  9) 
y2 
 x 2   y 3  x 3  (( y 2  y 1 )  13)
 
  
 y3 
 x 3   y 0  x 0  (( y 3  y 2 )  18)

