International Journal of Computer Science Issues

Size: px
Start display at page:

Download "International Journal of Computer Science Issues"

Transcription

1 IJCSI International Journal of Computer Science Issues Volume 7, Issue 5, September 2010 IJCSI PUBLICATION

2 IJCSI proceedings are currently indexed by: IJCSI PUBLICATION 2010

3 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

4 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 IJCSI Publications

5 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

6 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 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

7 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

8 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

9 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

10 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

11 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) , 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 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

12 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

13 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 , 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 , 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 , 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

14 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

15 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

16 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 , Meghalaya, India

17 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 2. Domain Specific Modeling Language for Early Warning System: Using IDEF0 for Domain Analysis Syed Imran, Franclin Foping, John Feehan and Ioannis M. Dokas 3. CETLs: Supporting Collaborative Activities Among Students and Teachers Through the Use of Think- Pair-Share Techniques N. A. Nik Azlina 4. Dynamic Clustering for QoS based Secure Multicast Key Distribution in Mobile Ad Hoc Networks Suganyadevi Devaraju and Ganapathi Padmavathi 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 6. Evaluation of Computer-aided Drug Delivery System with a Human Operator Koji Kashihara and Yoshibumi Nakahara 7. Semantic Interoperability in Electronic Business Juha Puustjärvi 8. Study of algorithms to optimize frequency assignment for autonomous IEEE access points Michael Finsterbusch and Patrick Schmidt 9. A Knowledge-Based Multi-Agent Approach for Initial Query Refinement in Information Retrieval Tatyana Ivanova and Ivan Momtchev 10. DEMAC: A Cluster-Based Topology Control for Ad Hoc Networks Abhishek Majumder and Nityananda Sarma 11. Experimental Evaluation of Memory Effects on TCP Traffic in Congested Networks Kulvinder Singh and Anil Kumar 12. A Comparison Between Five Models Of Software Engineering Nabil Mohammed Ali Munassar and A. Govardhan 13. Extracting Support Based k most Strongly Correlated Item Pairs in Large Transaction Databases Swarup Roy and Dhruba K. Bhattacharyya Pg 1-9 Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg

18 14. The Use of Underwater Wireless Networks in Pisciculture at Amazon Isadora Santos, Gleyson Souza and Mauro Margalho 15. Properties Based Simplification of 2D Urban Area Map Object Jagdish Lal Raheja and Umesh Kumar 16. A proposed Ontology to support Modeling Diagrams Nisreen Innab, Nidal Yousef and Mohammad Al-Fayoumi 17. Comparison between Conventional and Fuzzy Logic PID Controllers for Controlling DC Motors Essam Natsheh and Khalid A. Buragga 18. A Robust and Secure Methodology for Network Communications Mayank Srivastava, Mohd. Qasim Rafiq and Rajesh Kumar Tiwari 19. A New Approach of Using Association Rule Mining in Customer Complaint Management Behrouz Minaei-Bidgoli and Elham Akhondzadeh 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 21. Fault Tolerance Mobile Agent System Using Witness Agent in 2-Dimensional Mesh Network Ahmad Rostami, Hassan Rashidi and Majidreza Shams Zahraie 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 23. Interactive Guided Online/Off-line search using Google API and JSON Kalyan Netti 24. Static Noise Margin Analysis of SRAM Cell for High Speed Application Debasis Mukherjee, Hemanta Kr. Mondal and B. V. Ramana Reddy 25. A New Approach for Evaluation of Data Mining Techniques Moawia Elfaki Yahia and Murtada El-mukashfi El-taher 26. Rule Based Selection of 2D Urban Area Map Objects Jagdish Lal Raheja and Umesh Kumar 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 Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg

19 28. A Review of Supply Chain Management using Multi-Agent System Vivek Kumar and S Srinivasan 29. Development of Ontology for Smart Hospital and Implementation using UML and RDF Sanjay Kumar Anand and Akshat Verma 30. Survey: Image Encryption Using Salsa20 Alireza Jolfaei and Abdolrasoul Mirghadri 31. Semantic layer based ontologies to reformulate the neurological queries in mobile environment Youssouf El Allioui and Omar El Beqqali 32. SMA and Mobile Agents Actors for Distributed Testing Salma Azzouzi, Mohammed Benattou, My El Hassan Charaf and Jaafar Abouchabaka 33. Design Methodology of a Fuzzy Knowledgebase System to predict the risk of Diabetic Nephropathy E. RamaDevi and N. Nagaveni 34. Reengineering Of Education Institute And Coupling Measurement Ashok Kumar, Anil Kumar and Kulvinder Singh 35. Design of Compressed Memory Model Based on AVC Standard for Robotics Devaraj Verma C and VijayaKumar M.V 36. Iterative Refinement of Transformation Parameters for Image Registration Jharna Majumdar, B. Vanathy and S. Lekshmi 37. Performance Analysis of FTTH at 10 Gbit/s by GEPON Architecture Monika Gupta, Neeru Malhotra and A. N. Pathak 38. Modeling and design of evolutionary neural network for heart disease detection K. S. Kavitha, K. V. Ramakrishnan and Manoj Kumar Singh 39. Human Tracking and Segmentation using Color Space Conversion M. Sivabalakrishnan and D. Manjula 40. Character Recognition using RCS with Neural Network C. Sureshkumar and T. Ravichandran 41. Performance Analysis of the Signaling Channels of OBS Switches Hulusi-Yahyagil, A. Halim Zaim, M. Ali Aydin and Ö. Can Turna 42. A Color Image Digital Watermarking Scheme Based on SOFM J. Anitha and S. Immanuel Alex Pandian 43. E-Government Challenges in Public Sector: A case study of Pakistan Nasim Qaisar and Hafiz Ghufran Ali Khan Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg

20 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 45. Computational Analysis of Optical Neural Network Models to Weather Forecasting A. C. Subhajini and V. Joseph Raj 46. A Simple Modified Transmission Line Model for Inset Fed Antenna Design M. Fawzi Bendahmane, Mehadji Abri, Fethi Tarik Bendimerad and Noureddine Boukli- Hacene 47. Optimum Multilevel Image Thresholding Based on Tsallis Entropy Method with Bacterial Foraging Algorithm P. D. Sathya and R. Kayalvizhi 48. A Lazy Ensemble Learning Method to Classification Haleh Homayouni, Sattar Hashemi and Ali Hamzeh 49. Automated Test Data Generation Based On Individual Constraints and Boundary Value Hitesh Tahbildar and Bichitra Kalita 50. Quantum Multiplexer Designing and Optimization applying Genetic Algorithm Debarka Mukhopadhyay and Amalendu Si 51. Hybrid Face Detection in Color Images Mehrnaz Niazi and Shahram Jafari 52. An Evolvable-Clustering-Based Algorithm to Learn Distance Function for Supervised Environment Zeinab Khorshidpour, Sattar Hashemi and Ali Hamzeh 53. Product Lines' Feature-Oriented Engineering for Reuse: A Formal Approach Marcel Fouda Ndjodo and Amougou Ngoumou 54. Ternary Tree and Clustering Based Huffman Coding Algorithm Pushpa R. Suri and Madhu Goel 55. Risk Quantification Using EMV Analysis - A Strategic Case of Ready Mix Concrete Plants Roopdarshan Walke, Vinay Topkar and Sajal Kabiraj 56. Rule Based Machine Translation of Noun Phrases from Punjabi to English Kamaljeet Kaur Batra and Gurpreet Singh Lehal 57. A Study Of Image Segmentation Algorithms For Different Types Of Images Krishna Kant Singh and Akansha Singh Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg Pg

21 58. Software Architecture, Scenario and Patterns R.V. Siva Balan and M. Punithavalli 59. Efficient 2.45 GHz Rectenna Design with high Harmonic Rejection for Wireless Power Transmission Zied Harouni, Lotfi Osman and Ali Gharsallah Pg Pg

22 1 Dynamic Shared Context Processing in an E-Collaborative Learning Environment Jing Peng 1, Alain-Jérôme Fougères 1, Samuel Deniaud 1 and Michel Ferney 1 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).

23 Division of labour Task Role Tool Object Context Subject Requirement Rule Phase Fig. 1: Context modeling based on Activity Theory Community 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. 2

24 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. Event capture Role s Interests capture Context model Event Attributes Role s Interests Degree Relevance measurement Relevantly shared information Fig. 2: Methodology of modeling Dynamical Shared Context (DSC) 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): c i 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 c i (CF): E iefi log e : c e (2) i with E : total number of events in the corpus, e c : i e : number of events where c i appears. With these IEF parameters of CF, event attributes and role s interest degree will be presented in following 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 c i in the total words appear in an event description or presentation. ni cffi n k k (3) where n i is the number of occurrences of the considered c i in an event (W is the sum of all the words in this event). Then, we define EW (Event Weight) of c i in equation (4), which indicates the importance degree of c i in a specific event. ew cff ief (4) i i i Finally, EA is obtained as (5): ea ew1, ew2, ew3,... ew n 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 c i appears in the total number of events relevant with a role. e r : ci er refi (6) Er with E r : total number of events in the corpus relative to this role, e r : c i e r : number of events relative to this role where c i appears. Then, RW (Role Weight) of c i is defined in following equation for a role, which specifies the importance degree of c i for a specific role (7). rw ref ief (7) i i i (5) 3

25 Finally, RID is obtained as (8): rid rw rw, rw,... rw n (8) 1, 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. ve vr relevanceve, vr cos ve vr (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): v e ew1, e, ew2, e, ew3, e,... ewn, e (10) The role s interest degree vector for role r can be built from equation (11): v r rw1, r, rw2, r, rw3, r,... rwn, r (11) assemble the fourth sub-assembly (SA 4) and then creates the final product. 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. Table 1: Project organization Product Group 1 Group 2 Layer SA 1 Team 1 Team 1 L2 SA 2 Team 2 Team 2 L2 SA 3 External External L2 provider provider SA 4 +product Team 3 Team 3 L2 + L1 The following roles are defined and assigned to team members respectively: Team manager (TM): Responsible of the planning and costs; Synthesis responsible (SR): Management of the architecture and simulation of the assembly system; Quality responsible (QR): Responsible of the quality according to the requirement and standard; Designer (DS), Common role to each team member 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 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.

26 5 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 to members of Group 11) 4.1. Context Modeling In our case, we get 219 samples of recorded events, such as , 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 , , , 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 ,

27 We present the EW of these context factors in table 4 calculated by equation (4) Table 4: Event Weight CF EW , , The event attributes can be obtained via equation (12): ea=(0, 0, , , 0) (12) Sequentially, we use the obtained event attributes to make the event attributes vector v E by equation (13) v E = [0, 0, , , 0] (13) 4.3. Role Interest Degree Modeling The different roles REF calculated by equation (6) is listed in tables 5-7. Table 5: Team1 s roles Relevant Event Frequency CF REF TM QR SR DS1 DS , , , Table 6: Team2 s roles Relevant Event Frequency CF REF TM QR SR DS1 DS , , , , Table 7: Team3 s roles Relevant Event Frequency CF REF TM QR SR DS The RW of these context factors calculated by equation (7) is listed in tables Table 8: Team1 s Role Weight CF RW TM QR SR DS1 DS2 1 0, , ,1669 0,4789 0, , ,3500 0,2782 0,3333 0, ,3838 0,1556 0, , , Table 9: Team2 s Role Weight CF RW TM QR SR DS1 DS ,1915 0, , ,2226 0, , , Table 10: Team3 s Role Weight CF RW TM QR SR DS ,0467 0, , The role Team1 Manager s interest degree can be obtained by (14): rid T1M = (0.2155, , ,, ) (14) The Team1 Manager s interest degree is sequentially used to make the role interest degree vector by equation (15): v T1M = [0.2155, , ,, ] (15) The same demonstration can be made to get other roles interest degree vectors, which are expressed in equations (16)-(28), respectively: v T1QR = [0, , , ,, 0] (16) v T1SR = [0.2052, , , ,, ] (17)

28 v T1DS1 = [0, 0, , 0,, 0] (18) v T1DS2 = [0, , 0, 0,, 0] (19) v T2M = [0, , , ,, ] (20) v T2QR = [0, , , 0,, 0] (21) v T2SR = [0, 0, 0, 0,, 0] (22) v T2DS1 = [0, 0, 0, 0,, 0] (23) v T2DS2 = [0, , 0, 0,, 0] (24) v T3M = [0, 0, , 0,, 0] (25) v T3QR = [0, 0, , 0,, ] (26) v T3SR = [0, 0, 0, 0,, 0] (27) v T3DS = [0, 0, 0, 0,, 0] (28) 4.4. Context Relevance Measurement 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 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. Relevanc e DSC Model 0-1 Model Used to sharing Manual analysis Relevance DSC Model 0-1 Model Used to sharing Manual analysis Table 12: Team2 s roles Relevance Team2 roles T2M T2QR T2SR T2DS1 T2DS High Low low Low Low High Low High Low Low No No No No No Yes No No No No Table 13: Team1 s roles Relevance Team3 roles T3M T3QR T3SR T3DS High Low Low Low Low Low High Low No No No No Yes No 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. 7 Relevanc e DSC Model 0-1 Model Used to sharing Manual analysis Table 11: Team1 s roles Relevance Team1 roles T1TM T1QR T1SR T1DS1 T1DS High High High Low Low High Low High Low Low Yes Yes Yes Yes Yes Yes Yes Yes No No

29 8 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 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 e- collaborative system. Therefore, we proposed an implementation of DSC method supported by an e- collaborative 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. [1] ISO/IEC 15288:2002, "Systems engineering System life cycle processes", ISO [2] K. Forsberg, and H. Mooz, "The relationship of system engineering to the project cycle", in Proc. of the NCOSE conference, 1991, pp [3] ISO/IEC 26702:2007, "Standard for Systems Engineering Application and management of the systems engineering process", ISO [4] J. Peng, A.-J. Fougères, S. Deniaud, and M. Ferney, "An E- Collaborative 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 [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 pp , [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 [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, [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 [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 [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 [11] T. Gross, and W. Prinz, "Modelling shared contexts in cooperative environments: concept, implementation, and evaluation", Computer Supported Cooperative Work 13,

30 Kluwer Academic Publishers, Netherlands, 2004, pp [12] J. L. Dessalles, La pertinence et ses origines cognitives, Nouvelles théories, Hermes-Science Publications, Paris, [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 [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 [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 [16] W. B. Croft, and D. J. Harper, "Using probabilistic models of document retrieval without relevance information", Journal of documentation, Vol. 35, 1979, pp [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 [18] A.-J. Fougères, "Agent-Based µ-tools Integrated into a Co- Design Platform", Int. J. of Computer Science Issues, Vol. 7, Issue 3-8, 2010, pp [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 [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 [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 [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 [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 [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 [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 [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 [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 [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 [29] K. Forsberg, H. Mooz, and H. Cotterman, Visualizing project management, models and frameworks for mastering complex systems, 3 rd edition, John Wiley & Sons, 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 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 Franche- Comté (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. 9

31 10 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.

32 11 2. Methods 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. Some of the characteristics of IDEF0 are [9]: 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

33 12 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. 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. 2 Reusable domain models for EWS in WTP. Fig. 3 High level IDEF0 view of the WTP.

34 13 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 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 Pre- Filtration 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

35 14 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. Table 1: Socio-technical factors from IDEF0 Analysis 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.

36 15 Table 1: Commonalities and Variabilities using IDEF0 model Activity Sequence No Subsequence No. Mechanisms Controls Commonalities Variabilities Commonalities Variabilities Intake A0-1 A1 1. Flow meter 2. Tanks 3. Sampling test laboratory 1. Penstock 2. Metal Screens 3. Intake pumps 1. Pumps Control 2. Manual Inspection 3. Maintenance 4. Sampling for cryptosporidium test and laboratory test. 1. Penstock selection level. 2. Raw water quality parameters 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 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 Fig. 5 IDEF0 model for A0 activity in WTP treatment process.

37 16 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 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, [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 [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 [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, [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, [6] W. Frakes, R. Prieto-Diaz, C. Fox, DARE: Domain Analysis and Reuse Environment, Annals of Software Engineering, Vol. 5, 1998, pp [7] J.-P. Tolvanen, Keeping it in the family, Application Development Advisor, 2002.

38 17 [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, [9] FIPS, Integeration Definatin of Functional Modeling (IDEF0), Federal Information Processing Standards. Publication 183, Springfield, VA, USA, [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, [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 [12] Eclipse Modeling Framework (EMF), [13] Essential MOF (EMOF) as part of the OMG MOF 2.0 specification, 01.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 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 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 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.

39 18 CETLs : Supporting Collaborative Activities Among Students and Teachers Through the Use of Think- Pair-Share Techniques N. A. Nik Azlina Software Engineering Department, Malaysian Institute of Information Technology Universiti Kuala Lumpur Jalan Sultan Ismail 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-Pair- Share 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 technique, collaborative system, Think-Pair-Share. 1. 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, 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.

40 19 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. Educator as Collaborative Facilitator Social interaction occurs between the collaborative students which enhances knowledge acquisition Individual student Individual student Individual student Fig. 1 Collaborative Learning Collaborative Learning occurs among student within groups both in and outside class. Groups work as a team 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] :

41 20 CL Features Synchronous Tools Asynchronous Tools Document Management Table 1: Collaborative Learning Features Supporting Tools - Audio conferencing.- Web conferencing - Video Conferencing.- Chat - Instant Messaging - Whiteboards - Discussion boards.- Calendar - Links.- Group Announcements - - Surveys and Polls - Resource Library - Upload / Download 2.2 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: 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] 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] 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

42 21 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] 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 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. CL Features User (Student) (Teacher) Synchronous tools to support communications Asynchronous tools to support communications Document Management Collaborative Technique Table 2: Comparing the Five Existing Systems with Collaborative Learning Features System Functionality WebICL CoVis VLE CoMMIT Member Login GREWP tool Group formations Group Joining Group Activity Audio Conferencing Video conferencing Chat Instant Messaging Whiteboards / Editor Discussion Boards / Forums Calendar Links /Search Engine Group Announcements (Bulletin Boards) Surveys/Polls 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

43 22 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 . 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 . 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 , 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 : 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.

44 To enhance Learning With Technology 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 Introducing Students-centered Approach 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 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

45 24 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. What? Why? Table 3: Summary of the Think-Pair-Share DESCRIPTION Think-Pair-Share; a collaborative learning technique 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: 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

46 25 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 Think- Pair-Share is used. Fig. 3 Use Case Diagram for CETLs

47 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 Think- Pair-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.

48 27 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

49 28 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 To fulfill the concept of Think-Pair- Share, 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 Conclusions Computer-supported collaborative learning environment is a good opportunity for learning communities to leverage new technology. Thus, 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. 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-Pair- Share, 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 [1] 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 [2] A. J. Romiszowski, and R. Mason, Computer Mediated Communication, Handbook of Research for Educational Communication and Technology, 1996, pp [3] S. Williams, and T. S. Roberts, Computer- Supported Collaborative Learning: Strengths and weaknesses, Computers in Education. International Conference on 3-6 Dec, 2002, Vol. 1, pp [4] M. Neill, Computers, Thinking, and Schools in the: New World Economic Order. Composing Cyberspace, McGraw Hill, Boston, 1998, pp [5] R. Marion, Influence of Technological Change on Teaching and Learning in the Academy Journal of Physical Therapy Education, Vol.16, Issue 3, 2002, pp [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, [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 [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, [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.

50 29 [11] L. Brown and V. Lara, Professional Development Module on Collaborative Learning, Texas Collaborative for Teaching Excellence, El Paso Community College, [12] 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 [13] 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, [14] Gomez, R. D. Pea, D. C. Edelson, B. J. Fishman, Learning Through Collaborative Visualization. The CoVis Project, School of Education & Social Policy, Northwestern University, [15] 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 online group discourse processes, ProQuest Education Journals, Vol. 28, Issue 3, 2007, pp [21] P. Resta and T. Laferrière, Technology in Support of Collaborative Learning Educational Psychology Review Journal, Vol. 19, Issue 1, 2007, pp [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 [23] T. Yerigan, Getting Active In The Classroom., Journal of College Teaching and Learning, Vol. 5, Issue 6, 2008, pp [24] A. K. Banikowski, and T. A. Mehring, Strategies to Enhance Memory Based on Brain- Research Focus on Exceptional Children, Vol. 32, Issue 2, 1999, pp [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 [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 [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 [17] S. Taneva, R. Alterman, T. Hickey, Collaborative Learning: Collaborative Depth, Proceedings of the 27th Annual Cognitive Science Conference, 2005, pp [18] R. D. Pea, The Collaborative Visualization Project, Technology in Education. Communications of the ACM, Vol. 36, Issue 5, 1993, pp [19] S. Ledlow, Using Think-Pair-Share in the College Classroom, Center for Learning and Teaching Excellence, Arizona State University, [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 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 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

51 30 Dynamic Clustering for QoS based Secure Multicast Key Distribution in Mobile Ad Hoc Networks Suganyadevi Devaraju 1, Padmavathi Ganapathi 2 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

52 31 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 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 1- affects-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.

53 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. 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. 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 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 (M 1, M n ) and M n 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 M i, or the set broadcasted by the controller are correctly built. Hierarchical Based Cooperation: In the hierarchical GKA protocols, the members are organized according to

54 33 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 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

55 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

56 35 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. The density of group 7, 13, 28 and 50 nodes members Network surface (1000m*1000m, 1500m*1500m, 2000m *2000m). The maximal speed 10km/h (2.77m/sec) The pause time 20 seconds The simulation duration 200 seconds Physical/Mac layer IEEE Mobility model Random waypoint model Routing protocol 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 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

57 36 delay and energy consumption of multicast key distribution in efficient CBMT compared to OMCT. 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 Figure 4 c Key Delivery Ratio 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 [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 , Oct [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 [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 , Apr [4] H. Bettahar, A. Bouabdallah, and M. Alkubeily, Efficient Key Management Scheme for Secure Application level, IEEE sym. On Computers and Communications, pp , July [5] G.Valle, R.Cardenas, Overview the Key Management in Adhoc Networks, LCNS 3563, pp , Aug [6] D.Huang, D.Medhi, A Secure Group Key Management scheme for Hierarchical Mobile Adhoc Networks, Adhoc Networks, pp , June [7] B.Kim, H.Cho, J. Lee, Efficient Key Distribution Protocol for secure Multicast Communication, LCNS 3043, pp , Apr Figure 4 d Packet Loss Rate

58 37 [8] Y. Challal, H. Seba, Group Key Management Protocols: A novel Taxonomy, International Journal of Information Technology pp , [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 [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 , Oct [11] M. Bouassida, I. Chrisment, and O. Festor, An Enhanced Hybrid Key Management Protocol for Secure Multicast in Ad Hoc Networks. LCNS 3042, pp , Apr [12] H. Harney and C. Muckenhirn. Group key management protocol (gkmp) specification. RFC2093, [13] G. H. Chiou and W. T. Chen. Secure Broadcast using Secure Lock. IEEE Transactions on Software Engineering, August [14] Chung KeiWong, Mohamed Gouda, and Simon S. Lam. Secure group communications using key graphs. IEEE/ACM Trans [15] Alan T. Sherman and David A. McGrew. Key establishment in large dynamic groups using one-way function trees [16] Yongdae Kim, Adrian Perrig, and Gene Tsudik. Treebased group key agreement. ACM Trans. Inf. Syst. Secur., [17] Mike Burmester and Yvo Desmedt. A secure and scalable group key exchange system. Information Processing Letters, May [18] S. Mittra. Iolus: A framework for scalable secure multicasting. In SIGCOMM, pages , [19] Y. Challal, H. Bettahar, and A. Bouabdallah. SAKM: A Scalable and Adaptive Key Management Approach for Multicast Communications. ACM SIGCOMM, April [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 [21] M. Bouassida, I. Chrisment, and O. Festor. Efficient Clustering for Multicast Key Distribution in MANETs. In Networking 2005, Waterloo, CANADA, May [22] M.S. Bouassida, I. Chrisment and O.Feastor. Group Key Management in MANETs, May [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 [24] DestinationSequenced_ Distance_Vector_routing. [25] T. Liu & K. Liu, Improvement on DSDV in Mobile Ad Hoc Networks, IEEE, China, 2007, pp [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 , [27] D.Suganyadevi, G.Padmavathi, A Reliable Secure Multicast Key Distribution Scheme for Mobile Adhoc Networks, World Academy of Science, Engineering and Technology, Vol. 56, 2009, pp [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 [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 [30] The Network Simulator NS-2 tutorial homepage, 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.

59 38 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 [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 Case- Based 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

60 39 section 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 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 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 Image Preprocessing Image Segmentation Feature Extraction and Selection Classification Fig 1 illustrates the overall block diagram of Mass Classification method 3.1 Digitization Machine Learning Approach Problem Solving Approach Case Base Reasoning Method First, the X-ray mammograms are digitized with an image resolution of μ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 mm 2 by

61 40 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 Global Histogram Modification Approach Local Approach 3.3 Segmentation Description Re-assign the intensity values of pixels to make the new distribution of the intensities uniform to the utmost extent Feature-based or using nonlinear mapping locally Advantage Effective in enhancing the entire image with low contrast Effective in local texture enhancement Table 1 illustrates the preprocessing approach 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.

62 41 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 Skewness Kurtosis Circularity Compactness Contrast Description 1 N 1 N N1 i, j0 N1 i, j0 N 1 i, j0 N 1 i, j0 g( i, j) g( i, j) Table 2 illustrates the Local and Global Features g( i, j) g( i, j) g( i, j) g( i, j) g( i, j) g( i, j) A 1 A P 2 A P1 P P Standard deviation 2 Intensity Area Length Breadth Convex Perimeter Roughness g ( i, j) 1/ N 1 2 N 1 i, j0 tumor area True Length of Mass True Breadth of Mass 3 g( i, j) Perimeter of the convex hull of the mass Perimeter/Convex Perimeter Case Base Reasoning Approach 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 Problem Domain Knowledge Case Base New case Revised case Retain Problem Retrieved Case Acquired Case New case Reuse Acquired Case Solved Case 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 i1 W x y i i i r

63 42 (1) Where Case_x, Case_y are two cases, whose similarity is computed; F is the number of features that describes the case; x y i i represent the value of the ith feature of case Case_x and Case_y respectively; and w i 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 ( w i ) 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 w i computing the sample correlation which exists between each feature x and the class z [10]. i The Sample Correlation is defined as: 1 Sample_ Correlation xi, z N 1 N j1 xij S xi xi z jz Sz (2) Where N is the number of cases; x ij 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 x i ; and S is the standard deviation of class z. 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

64 43 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. 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 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 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

65 44 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 (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, (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, , (1995). [8] H. Kobatake, M. Murakami, H. Takeo, and S. Nawano, Computerized detection of malignant tumors on digital mammograms, IEEE Trans Med Imaging 18, , (1999). [9] N. Otsu, A threshold selection method from gray-level histograms, IEEE Trans System Man Cybernet SMC-9, (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 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 ,(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 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.

66 45 Evaluation of Computer-aided Drug Delivery System with a Human Operator Koji Kashihara 1 and Yoshibumi Nakahara 2 1 Graduate School of Information Science, Nagoya University, Furo-cho, Chikusa-ku, Nagoya, Aichi , Japan 2 Graduate School of Human Ecology, Wayo Women's University 2-3-1, Konodai, Ichikawa, Chiba , 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 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. 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 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. 2. Control System 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. 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 BP NN response was used for the prediction of future outputs by the NN

67 46 ( Prediction Loop ). A human operator determined final infusion rates, referencing the predicted outputs. A Computer-aided system Target value, r + - e(t+i) B BP NN(t+i) Optimal value Blood pressure Determined infusion rates 2. Predictive Loop Human operator u(t) Delay u(t) Infusion pump Predictive response by NN Calculated optimal input Neural Network Patient BP NN(t+i) Delay 1. Learning Loop BPNN - Learning algorithm + BP(t) Model response Sensor Target values Operation panel for inputs Fig. 1 Drug delivery system with APC-NN. A: Block diagram of a controller. B: Example of a control display. 2.2 NN Output BP(t) 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: ΔBP NN (t) is the BP change estimated by the NN. ΔBP NN (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 adjusted to decrease the error function by the backpropagation learning rule based on the gradient descent method. The BP NN predicted by NN was compared with the observed BP; its error was calculated by the following function [ BP BPNN ] (2) ε shows the difference between actual BP as a supervised signal and BP NN 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. where w * w Kn w (3) E BP w ε w w NN 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 Initial Weights in 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 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: N p r( t i) BPNN ( t i) Q( t) (4) i1 Np is a prediction horizon, r(t+i) is a prescribed target value of BP control at time point t+i, and BP NN (t+i) is the 2

68 47 BP predicted by NN. Future output can be estimated by BP NN (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]. 3. System Evaluation 3.1 Participants 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. 3.2 Simulation Task (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 5- min 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: t L BP( t) K 1 exp (t L) (5) T 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: where N m model ( t) g( τ) T u( t τ) τ 0 BP (6) g( t) K T t L exp T 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. BP (mmhg) (a) Step response (b) Unit impuluse response MAP(t)=K(1-exp(-(t-L)/T)) g(t)*t=(k/t)*exp(-(t-l)/t) 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 ( s) and +10 mmhg ( 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 ( s). 3.3 Procedures 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.

69 48 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. 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. 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. 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 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 < 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, 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. BP (mmhg) Infusion rate (g/kg/min) Disturbance of -30 mmhg (3rd trial) 3rd 1st,2nd 3rd 1st,2nd Time (s) Fig. 3 BP control based on APC-NN. The third trial had an acute and unknown disturbance of -30 mmhg. BP (mmhg) Infusion rate (g/kg/min) st 1st 2nd 2nd 3rd -30 mmhg (3rd trial) 3rd Time (s) Fig. 4 Typical example of BP control in the non-assist group.

70 49 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. MAP (mmhg) Infusion rate (g/kg/min) nd 1st 1st 2nd -30 mmhg (3rd trial) 3rd 3rd 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.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: ± 2.63 versus ± 4.13 mmhg in the non-assist and assist groups; p < 0.05 in the one-tailed test. 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 3 rd 1st 2nd 3rd Average (SD) 3.38 (0.94) 5. Discussion 2.70 (0.84) 3.71 (0.88) 3.66 (1.29) 3.17 (0.67) 2.92 (0.73) 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

71 50 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, ). References [1] T. Suzuki, and T. Konishi, JJSCA, Vol. 29, No. 4, pp , [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 [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 [4] J. W. Huang, and R. J. Roy, Multiple-drug hemodynamic control using fuzzy decision theory, IEEE Trans. Biomed. Eng, Vol. 45, 1998, pp [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 [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 [7] Y. Takahashi, Adaptive predictive control of nonlinear timevarying system using neural network, IEEE International conference on neural networks, Vol. 3, 1993, pp [8] Z. Trajanoski, and P. Wach, Neural predictive controller for insulin delivery using the subcutaneous route, IEEE Trans. Biomed. Eng, Vol. 45, 1998, pp 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.

72 51 Semantic Interoperability in Electronic Business Juha Puustjärvi 1 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 e- business 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

73 52 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 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

74 53 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 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].

75 EDI 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. 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 It is most commonly used EDI syntax in North America. The next EDI standard (EDIFACT) originated in 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 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

76 55 supports. CPA is technical agreement between two or more partners, and it may have legal bindings. All specifications are stored in ebxml registry. 4.3 RosettaNet 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]. 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 applications RDF and OWL, which are the key technologies in Semantic web, and hence also the key technologies in implementing semantic interoperability. 5.1 XML Extensible Markup Language 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]. 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

77 56 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 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 e- auctions 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

78 57 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 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 Bidder has_placed Offer Fig. 1. A Simple auction ontology. concerns Item 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 offer of $ 85on item p12, and ARGO-Corporation has set the offer of $87 on the same item. e254 type Auction type type participates type type Bidder type type has_placed type type Offer type concerns type p12 Item participates B2B has_placed $85 concerns Corporation e254 participates ARGO has_placed $87 concerns p12 Corporation type type 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 ARGO- Corporation, 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. type

79 58 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. Bidder Ontology manager Buyer Auction agent WS interface Ontology manager Marketplace WS interface Auction engine (BPEL engine) Seller Auction agent WS interface Fig. 3. The components of the system. Buyer Bidder Ontology manager System administrator 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 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,

80 59 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. c e la tp e rk a M r y e u B Receive Initiation request Sendoffer request Receiveoffer request Receive offer Send offer Sendbest offer Receive bestoffer Fig. 4. Using swimlanes for presenting an auction. 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. 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 ARGO- Corporation). 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

81 60 messages are XML-coded RDF-statements, i.e., RDFstatements are presented by XML-documents 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 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: 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= > 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= xmlns : xsd= xmlns: ao= > <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.

82 61 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 and streamline procurement processes. 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.

83 62 [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 [10] Mayo, E. and Steinberg, T. (2007).The Power of Information: an Independent Review. Available at: [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) [12] Newcomer E. (2002). Understanding Web Services. Addison-Wesley. [13] Singh, M.P. and Huhns, M.N. (2005). Service-Oriented- Computing, 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 [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 [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 [18] RosettaNet consortium, Rosettanet Homepage, URL: Accesses 8/12, [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 [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 [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. [23] Berners-Lee, T., Hendler, J. and Lassila, O. (2001). The Semantic Web. Scientific American. Vol. 284(5), pp [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 [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. [34] Grigoria, D., Casatib, F. et al. (2004). Business Process intelligence. Computers in Industry, Vol. 53, pp [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. [39] Wurman, P. Wellman, P and Walsh, W. (2001). A parametrization of the auction design space. Games and Economic Behavior. Vol. 35, No [40] Puustjärvi, J. (2005). Coordinating electronic auctions by workflow systems. Proceedings of the IADIS International Conference WWW/Internet, pp [41] BPMN (2004) Business Process Modeling Notation (BPMN), [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, ws-bpel/.

84 63 [44] UML (2007). Introduction to OMG s Unified Modeling Language. [45] Chalmeta, R.; Campos, C. and Grangel, L. (2001). Reference Architectures for Enterprise Integration. Journal of Systems and Software, Vol. 57(3), pp [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 [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 [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 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.

85 64 Study of algorithms to optimize frequency assignment for autonomous IEEE 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 frequency spectrum and to enhance the quality of the entire WLAN sphere. This paper determines four public channel assignment algorithms for IEEE 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. 1. Introduction The use of IEEE wireless LANs (WLAN) has been grown rapidly for the last ten years, promoted by inexpensive IEEE capable PDAs, mobile phones, laptops and WLAN routers. WLAN is used for business and private networks. In the early days of 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), 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 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 data exchange The air interface in IEEE 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 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 IEEE wireless LANs can use two different frequency ranges in 2.4GHz (IEEE b/g) and 5GHz (IEEE a/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

86 65 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 b/g) is used mostly. 2.2 Access to the wireless network The access to the wireless interface in IEEE 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 CW CW (1) min CW max At startup, CW is initialized with CW min. After collision CW will be increased by a power of 2, but with maximum ofcw : max CW min( 2 initcollisions 1, CW If a frame was send successfully CW is reset to CW min. Default values for CWmin and CWmax are 31 and 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. max 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 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 networks will find a channel configuration for each node and each radio device of each node in such a ) (2) 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 thold 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: x k xk 1 ( 1) xk, n (3) n 1 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 thresh current. On startup thresh current is set to minimum threshold thresh min. Ihmig et al used a value of 50% channel load for thresh min. 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.

87 66 Select channel with smallest entry thresh = second current smallest entry y n channel > thresh current current y all table entries up-to-date? Trigger Channel Switch Stay for t hold seconds n Select channel with oldest entry thresh = thresh current min 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 thresh current is up to two or three times higher than threshold threshmin,ap0 of AP0. After that the 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 channel current. The evaluation algorithm 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. Fig. 1 Program flow chart of channel selection [7]. The channel switching module's job is to switch to the assigned channel together with all connected wireless stations. n channel > thresh current current y 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 0 initial state step 1 1 Channel 1 Channel 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 thresh min. After startup AP0 scans its environment. Due to detected to high load, AP0 switches to channel 1 and sets its thresh min,ap0 to thresh current, AP0. In the same Select channel with smallest entry thresh = second current smallest entry y all table entries up-to-date? Trigger Channel Switch Stay for t hold seconds n Select channel with oldest entry thresh = current thresh min 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 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

88 67 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]: 1) Generate a random, initial channel assignment. 2) Choose the bottleneck (with channel utilization V). If there are several bottlenecks choose one randomly. 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 bruteforce 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 initial state 0 V=2 1 step 1 V=2, W min= ) Identify bottleneck's assigned channel k. For each available channel n from 1 to N with n k and 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 bottleneck random (4.b) 4) a) 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. 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. channel 1 channel 2 bottleneck step 2 V=2, W min= ) 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. 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.

89 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: S i : interference list of i c j : actual channel list for each c i : i's current channel begin F ( c ) : f ( c, c ) i i j js i for k:=1 to K do begin c j js i if ) ( ) end F ( k) : f ( k, ) begin end F( c i F k then F( c i ) : F( k) c i : k j Si 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 c i is combined with every channel c j and the each calculated cost f c i, c ) is added up to the sum ( j F ( c i ). In the next step the loop calculates the cost sum F k in each iteration and compares it to F ( c i ). If F k is smaller than F ( c i ) 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. 0 channel 1 channel 2 initial state step 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

90 69 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 p i, which contains a selection probability for each available channel. The algorithm updates p i for each channel i following this description: 1) Initialize p [ 1/ c,1/ c,...,1/ c] 0 n channel 1 channel 2 2) Toss a weighted coin to select a channel i with a probability of p i. Sense channel i's quality. If it is acceptable hop to this channel and goto step 3, if not goto step 4. 3) On successful change to channel i, update p i as follows: a) p i 1 b) p i 0,j i 4) If no channel change, update p i like this: a) pi ( 1 b) pi b c 1 b) p ( 1 b) p, j i i 5) Go back to step 2. i 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 MAC- Acknowledgements 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 p i is set to p i 1 according to step 3a and will never change again. The nodes in the middle therefore 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. 5. Comparison of algorithms 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 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

91 70 a desktop workstation (Intel Pentium 4 CPU 3.00GHz with 512MB RAM, Linux Kernel ). 5.1 Measurement results 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.

92 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

93 72 be used in real world applications because of their high error rate. Fig. 17 Runtime comparison of all algorithms. 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 [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 TM [2] B.J.Ko, V.Misra, J.Padhye, and D.Rubenstein. Distributed channel assignment in multi-radio mesh networks. Columbia University, Technical Report, [3] Brèlaz. New methods to color the vertices of a graph. Communications of the Assoc. of Comput. Machinery 22, [4] D.J.Leith and P.Clifford. Channel dependent interference and decentralized colouring. Proc. International Conference on Network Control and Optimization, Avignon, [5] D.J.Leith, P.Clifford, and D.W.Malone. Wlan channel selection without communication. Proc. IEEE Dyspan, [6] K. Leung and B. Kim. Frequency assignment for ieee wireless networks. Proc. 58th IEEE Vehicular Technology Conference, [7] M.Ihmig and P.Steenkiste. Distributed dynamic channel selection in chaotic wireless networks. 13th European Wireless Conference, Paris, Conclusion Fig. 18 Comparison of invalid assignments. In this paper we compared four different algorithms for channel assignment in IEEE 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 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. 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.

94 73 A Knowledge-Based Multi-Agent Approach for Initial Query Refinement in Information Retrieval Tatyana Ivanova 1, Ivan Momtchev 2 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 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, knowledgebased 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) Query Refinement Research 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,

95 74 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. Thesaurus based Local analysis techniques use local selection strategy Topic (4) Query reformulation Knowledgebased refine- RDFbased Ranked documents (4) Query expansion approaches Interactive Automatic Combined Ontology based Phrase finder Initial query Dimensionality reduction Figure 1: Classification of Query expansion approaches (1) Refinements, based on retrieved results Global approaches Query reformulation Query reformulation (3) Term Clustering Relevance feedback RTQ Thesaurus Domain ontology Profile ontology (2) Search engine indexes (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 (3) Local approaches Feedback based Figure 2: Query refinement paradigms Local feedback Ranking based LCA 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 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.

96 75 3. Our Approach for Interactive Query Refinement 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 Table 1: differences in the results for similar queries - yahoo and hakia queries Search engines 1) insect 2) insects 1) pelican 2) pelican +bird 1) trigonometry 2) trigonometry + mathematics 1) tiger 2) tiger +wood 1) snake 2) snakes 1)negative+integer 2) negative+integer +number 1) dog 2) dog +animal 1) abscissa 2) abscissa +axis All returned results yahoo Identical returned results Identical returned results (%) All returned results hakia Identical returned results Identical returned results (%) ,8 % ,0 % ,1 % ,0 % ,3 % ,7 % ,2 % ,0 % ,6 % ,6 % ,7% ,0 % ,4 % ,0 % ,0 % ,0 % average 14,5 % 11,7 % Table 2: differences in the results for similar queries - clusty and ask clusty ask queries Search engines All returned results Identical returned results Identical returned results (%) All returned results Identical returned results Identical returned results (%) 1) insect 2) insects ,5% ,2% 1) pelican 2) pelican +bird ,3% ,1% 1) trigonometry 2) trigonometry + mathematics ,9% ,5% 1) tiger 2) tiger +wood ,0% ,1% 1) snake 2) snakes ,0% ,9% 1)negative+integer 2) negtive+integer +number ,8% ,5% 1) dog 2) dog +animal ,0% ,0% 1) abscissa 2) abscissa +axis ,7% ,1% average 22,9% 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

97 76 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). Top ic Ranked documents Initial query Gazetteers Refined query Corpus Query interpretations Linguistic query analysis Thesaurus Domain ontology Profile ontology Search web resources module Profile generation module Search engines 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 domain 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).

98 77 Q User interface Query linguistic analysis agent Search engine WordNet Coordination agent Ontologybased enrichment agent Thesaurusbased enrichment agent Corpus-based enrichment agent Hits agent Figure 4 the multi-agent architecture for query enrichment Domain ontologies Thesauruses Profile ontology Profile information agent keywords ha- Figure 5 sequence diagram of QR when some ven t been found in WordNet 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

99 78 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 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 topics), 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 3 points to encyclopedia/tiger/; 2 points to species/tiger; 1 point to perl/webwn?s=tiger; 0 points to: 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

100 . IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September precision changing rate(%) precision changing rate (%) ,5 2 2,5 3 entropy precision changing rate Log. (precision changing rate) precision changing rate Poly. (precision changing rate) 3 3,5 4 4,5 5 5,5 6 6,5 7 7,5 8 entropy five-level precision. five-level precision initial query refined query 60 entropy ,5 2 2, initial query refined query entropy 0 3 3,5 4 4,5 5 5,5 6 6,5 7 7,5 8 precision changing rate (%),,, precision changing rate Log. (precision changing rate) 100 entropy five-level precision initial query refined query ентропия precision changing rate (%) precision changing rate Log. (prec is ion changing rate) 200 entropy five-level precision initial query refined query entropy precision changing rate (%) precision changing rate Log. (precision changing rate) 600 entropy five-level precision initial query refined query entropy Figure 11. Graphical representation of experimentally evaluated dependency between precision and entropy Figure 12. Graphical representation of experimentally evaluated dependency between precision and entropy

101 80 6. Conclusion 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. References [1] E. Agirre, et al., Semeval-2007 Task 02: Evaluating Word Sense Induction and Discrimination Systems, 2007, [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, download?doi= &rep=rep1&type=pdf [6] D. Buscaldi, et al., A WordNet-based Query Expansion method for Geographical Information Retrieval, 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, [9] F. Gaihua, et al., Ontology-based Spatial Query Expansion in Information Retrieval, 2006, 940&rep=rep1&type=pdf [10] F.A. Grootjen, Conceptual query expansion, Data & Knowledge Engineering, 2006, [11] B. Katz, et al., Word Sense Disambiguation for Information Retrieval, 1999, AAAI pdf [12] S. Liu, Word Sense Disambiguation in Queries, 2005, 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, [14] Pitler, E., et al., (2009), Using Word-Sense Disambiguation Methods to Classify Web Queries by Intent, /EMNLP/pdf/EMNLP148.pdf [15] W. Ryen, G. Marchionini, Examining the Effectiveness of Real-Time Query Expansion, 2009, the%20effectiveness%20of%20real- Time%20Query%20Expansion.pdf [16] A. Sanfilippo, et al., Word Domain Disambiguation via Word Sense Disambiguation, 2006, /N/n06/N pdf [17] G. Solskinnsbak, Ontology-Driven Query Reformulation in Semantic Search, 2007, masteroppgaver/ime/idi/2007/3523/masteroppgave.pdf [18] N. Stokes, et al., Exploring criteria for successful query expansion in the genomic domain, 2009, REC09.pdf

102 81 [19] S. Tomassen, Research on Ontology-Driven Information Retrieval, 2006, download?doi= &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, [21] J. Xu, and W.B. Croft, Improving the Effectiveness of Information Retrieval with Local Context Analysis, ACM Transactions on Information Systems, OriginalPapers/TOISLocalContextAnalysis.pdf [22] X. Xu, A Comparison of Local Analysis, Global Analysis and Ontology-based Query Expansion Strategies for Biomedical Literature Search, 2006, &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 Assoc prof. d-r Ivan Momtchev is a dean of French Language Faculty of Electrical Engineering, Technical University of Sofia, from 2005.

103 82 DEMAC: A Cluster-Based Topology Control for Ad Hoc Networks Abhishek Majumder 1 and Nityananda Sarma 2 1 Department of Information Technology, Assam University Silchar, , Assam, India 2 Department of Computer Science and Engineering, Tezpur University Tezpur, , 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 [1-4]. 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

104 83 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 d d, a high threshold of the node degree d h and a low threshold of node degree d l. A node periodically checks the number of its active neighbors. If the degree is greater than d d, the node reduces its operational power. If the degree is less than d d 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 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

105 84 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 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 as- F= (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 Methodology

106 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 F- value 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

107 86 cluster 1 and 8. Therefore node 3 and 9 are also gateway nodes. Similarly node 7 and 11 are also gateway nodes. 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 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 w for transmission, w for reception, 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 Meaning Value N Number of Nodes 50 m x n Max Speed Tx Size of the scenario Maximum Speed Transmission Range 500 x 500 5,10,15,20,25 (m/s) 90 m P.T Pause Time 0.0 sec Fig. 3 Number of Cluster Head Changed vs. Speed Fig. 4 Throughput vs Speed

108 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 [2] Ning Li, Jennifer C Hou and Lui Sha, Design an Analysis of an MSTBased Topology Control Algorithm, in INFOCOM, [3] Nicos Christofides, Graph Theory : An Algorithmic Approach, Academic press, [4] Hu L, Topology control for multihop packet radio networks, in Communications, IEEE Transactions on, Vol. 41, Iss. 10, 1993, pp [5] Ramanathan R. and Rosales-Hain R., Topology control of multihop wireless networks using transmit power adjustment, in Proc. IEEE INFOCOM, [6] Haitao Liu and Rajiv Gupta, Selective Backbone Construction for Topology Control in Ad Hoc Networks, IEEE, 2004, pp [7] Chien-Chung Shen, Chavalit Srisathapornphat, Rui Liu,

109 88 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 [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 [9] M. Jiang, J. Li, and Y.C. Tay, Cluster Based Routing Protocol, IETF Draft, August [10] J. Mingliang, Y.C. Tay and P. Long, "CBRP: A Clusterbased Routing Protocol for Mobile Ad hoc Networks", National University of Singapore. [11] Network simulator ns-2

110 89 Experimental Evaluation of Memory Effects on TCP Traffic in Congested Networks Kulvinder Singh 1, Anil Kumar 2 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 ATM- ABR [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).

111 Slow Start and Congestion Avoidance 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 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 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 Fast Recovery 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. 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

112 91 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: N t B lim Bt lim t t t A sample path of the evolution of congestion window size is given in figure 1. W W1 W2 W3 B ( p ) 1 p 2 b p 3 b 2 b RTT 6 which can be expressed as: B ( p ) 1 RTT 3 2 bp 8 (1 p ) 3 bp 2 b (1 p ) 3 p o 1 p 2 2 b b 3 b 1 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: Wmin 1 B( p) min 2 RTT 2bp 3bp 2 RTT T min o 3 p(1 32p ) 3 8 where T o - interval waiting for time out, W min - receiver advertised window size. 5. Experimental Work TDP 1 TDP 2 TDP 3 A1 A2 A3 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 (2) E[A] =(b*e[w]/2+1)*rtt (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 t 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. 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. Table 2: Number of connections in each simulation.

113 92 Experiment No TCP Connections TFRC Connections TCP 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 TFRC Figure 4 32 TCP & 32 TFRC TCP TFRC TCP TFRC Figure 2 16 TCP & 16 TFRC Figure 5 64 TCP & 64 TFRC Analysis Figure 3 24 TCP & 24 TFRC TCP TFRC 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

114 93 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. [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 [3] S.Floyd, M.Handley, J.Padhye, and J.Widmer. Equation- Based Congestion Control for Unicast Applications: the Extended Version, ICSI Technical Report TR-00-03, March [4] V. Jacobson, Congestion Avoidance and Control, Computer Communication Review, vol. 18, no. 4, pp , Aug [5] S. Floyd, HighSpeed TCP for Large Congestion Windows, in RFC 3649, Experimental, December [6] The Network Simulator QualNet, Tech. rep., WebPage: Version 5.02, July [7] J.Padhye, V.Firoiu, D.Towsley, and J.Kurose, Modeling TCP throughput: A simple model and its empirical validation, Proceedings of SIGCOMM 98, [8] W. Stevens. TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms. RFC 2001, Jan [9] C. Jin, D. X. Wei, and S. H. Low, FAST TCP: Motivation, Architecture, Algorithms, Performance, in Proceedings of IEEE INFOCOM 04, March [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 12-15, 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 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, 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. References [l] Chadi Barakat, Eitan Altman, and Walid Dabbous, On TCP Performance in a Heterogeneous Network: A Survey, IEEE Communications Magazine, January 2000.

115 94 A Comparison Between Five Models Of Software Engineering Nabil Mohammed Ali Munassar 1 and A. Govardhan 2 1 Ph.D Student of Computer Science & Engineering Jawahrlal Nehru Technological University Kuktapally, Hyderabad , 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 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 Computer Science Client Theories Computer Function Problems The Software engineering Tools and techniques to solve problems Fig. 1 Explanation of software engineering conception.

116 95 2. Software Process Models A software process model is an abstract representation of a process. It presents a description of a process from some particular perspective as: 1. Specification. 2. Design. 3. Validation. 4. Evolution. concern. 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. 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 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. 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 Requirements Definition Fig. 2 Waterfall Model[4]. System and Software Design Implementation and Unit Testing Integration and System Testing Fig. 3 Waterfall model[2]. The following list details the steps for using the waterfall Operation and Maintenance

117 96 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 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. 3 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 the detailed design specification. 6 Testing: Determines whether the software meets the specified requirements and finds any errors present in the code. 7 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 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 its weaknesses, it is instructive because it emphasizes important stages of project development. Even if one does not apply this model, he must consider each of these stages and its relationship to his own project [4]. Advantages : 1. Easy to understand and implement. 2. Widely used and known (in theory!). 3. Reinforces good habits: define-before- design, design-before-code. 4. Identifies deliverables and milestones. 5. Document driven, URD, SRD, etc. Published documentation standards, e.g. PSS Works well on mature products and weak teams. Disadvantages : 1. Idealized, doesn t match reality well. 2. Doesn t reflect iterative nature of exploratory development. 3. Unrealistic to expect accurate requirements so early in project. 4. Software is delivered late in project, delays discovery of serious errors. 5. Difficult to integrate risk management. 6. Difficult and expensive to make changes to documents, swimming upstream. 7. 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. Concept. 2. Requirements. 3. Architectural design.

118 97 4. Detailed design. 5. Coding and development. 6. Testing and implementation. Table 1: Strengths & Weaknesses of Pure Waterfall 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]. Strengths Weaknesses 3.2 Iterative Development Minimizes planning overhead since it can be done up front. Structure minimizes wasted effort, so it works well for technically weak or inexperienced staff. Inflexible Only the final phase produces a nondocumentation deliverable. Backing up to address mistakes is difficult. 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. 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. 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 Weaknesses 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. 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. 3.3 V-Shaped Model Fig. 4 Iterative Development. 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

119 development is started, a system test plan is created. The test plan focuses on meeting the functionality specified in requirements gathering. Requirements System Test Planning 98 System Testing 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. 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. Simple and easy to use. 2. Each phase has specific deliverables. 3. Higher chance of success over the waterfall model due to the early development of test plans during the life cycle. 4. Works well for small projects where requirements are easily understood. Disadvantages Fig. 5 V-Model [3] 1. Very rigid like the waterfall model. 2. Little flexibility and adjusting scope is difficult and expensive. 3. Software is developed during the implementation phase, so no early prototypes of the software are produced. 4. This Model does not provide a clear path for problems found during testing phases [7]. High Level Design Low Level Design 3.4 Spiral Model Integration Test Planning Unit Test Planning Implementation Fig. 6 V-Shaped Life Cycle Model[7]. Unit Testing 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. Advantages 1. High amount of risk analysis. 2. Good for large and mission-critical projects. 3. Software is produced early in the software life cycle. Disadvantages 1. Can be a costly model to use. 2. Risk analysis requires highly specific expertise. 3. Project s success is highly dependent on the risk analysis phase. 4. Doesn t work well for smaller projects [7]. Integration Testing

120 99 Spiral model sectors 1. 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]. 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.

121 100 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. XP and agile principles 1. Incremental development is supported through small, frequent system releases. 2. Customer involvement means full-time customer engagement with the team. 3. People not process through pair programming, collective ownership and a process that avoids long working hours. 4. Change supported through regular system releases. 5. Maintaining simplicity through constant refactoring of code [1]. Advantages 1. Lightweight methods suit small-medium size projects. 2. Produces good team cohesion. 3. Emphasises final product. 4. Iterative. 5. Test based approach to requirements and quality assurance. Disadvantages 1. Difficult to scale up to large projects where documentation is essential. 2. Needs experience and skill if not to degenerate into code-and-fix. 3. Programming pairs is costly. 4. 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 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. Suggesting a model to simulate advantages that are found in different models to software process management. 2. Making a comparison between the suggested model and the previous software processes management models. 3. 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, 7 th edition, [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, [3] Steve Easterbrook, "Software Lifecycles", University of Toronto Department of Computer Science, [4] National Instruments Corporation, "Lifecycle Models", 2006, [5] JJ Kuhl, "Project Lifecycle Models: How They Differ and When to Use Them", [6] Karlm, "Software Lifecycle Models', KTH, [7] Rlewallen, "Software Development Life Cycle Models", 2005, [8] Barry Boehm, "Spiral Development: Experience, Principles, and Refinements", edited by Wilfred J. Hansen, Nabil Mohammed Ali Munassar was born in Jeddah, Saudi Arabia in He studied Computer Science at University of Science and Technology, Yemen from 1997 to In 2001 he

122 101 received the Bachelor degree. He studied Master of Information Technology at Arab Academic, Yemen, from 2004 to Now he Ph.D. Student 3 rd 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 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.

123 102 Extracting Support Based k most Strongly Correlated Item Pairs in Large Transaction Databases S Roy 1 and D K Bhattacharyya 2 1 Department of Information Technology, North Eastern Hill University, Umshing, Shillong , Meghalaya, INDIA 2 Department of Computer Science & Engineering, Tezpur University, Napaam, , 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 (k- Strongly 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

124 103 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={I 1 I 2, I 3,. I N, } 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 (I i, I j ) 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 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={I 1 I 2, I 3,. I N } 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 ik, I jk ) ( I i, I j )... TK ( D, k ) (2) ( I ik, I jk ) ( I ik 1, I jk 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 I i and I j in a transaction database, the support based correlation coefficient can be calculated as: Sup( Ii, I j ) Sup( Ii )* Sup( I j ) ( Ii, I j ) (3) Sup( I )* Sup( I )*(1 Sup( I ))*(1 Sup( I )) i j where Sup(I i ), Sup(I j ) are the support of item I i and I j and Sup(I i, I j ) is the joint support count of (I i, I j ). 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 6 C 2 = 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. i j

125 104 Input: a) Market Basket TID b) k =7 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 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 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: (X,Y) upper((x,y))= Top-k Correlated-Pairs Query Pair Support Corr {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} Sup ( Y ) Sup ( X ) 1 Sup ( X ) 1 Sup ( Y ) Output {4,5} {1,5} {2,4} {2,5} {1,4} {1,6} {3,6} 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 possible item pairs, TAPER applies second pruning technique based on the conditional monotone property (1- D) 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. 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,

126 105 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, TOP- COP 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. 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 2- element 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 Frequency of itemset {3} Fig 2. (a) Sample market basket Item Co-occurrence frequency of item pair {4, 5} Fig 2. (b) Sample correlogram matrix

127 106 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. 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 Completeness and Correctness Lemma 1: k-scope is complete i.e. k-scope finds top-k strongly correlated pairs.

128 107 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 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 (n 2 ). 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: Space k-scope = O(n*(n+1)/2)+O(k) Time Complexity The computational cost of k-scope consists of two parts: Correlogram matrix construction cost (C CM ) and cost for extraction of top-k strongly correlated item pairs (C EX ). (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 requirement for updating the count is N 2. The total time complexity for construction of correlogram matrix could be : C CM =O(T*N 2 ). (b) Extraction of top-k strongly correlated item pairs: Since for calculating the correlation of each pair, k- SCOPE 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(n 2 ). 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: C EX = O(n 2 )+O(k*(n*(n-1))/2). Thus the total cost incurred by k-scope is: COST k-scope = C CM + C EX = O(T*N 2 )+ O(n 2 )+ O(k*(n*(n-1))/2) = O(T*N 2 )+ O(n 2 )+ O(k*n 2 ) 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: COST TOP-COP = C Sort +C Bound +C Exact + C k-list Where C Sort, C Bound, C Exact and C k-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: COST TOP-COP = O(n log n) +O(n 2 ) + O(n 2 ) + O(k 2 ) 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:

129 108 COST TOP-COP = O(T*N)+O(n log n) + O(T*N)+O(n 2 ) + O(n 2 ) + O(k 2 ) 2*O(T*N)+O(n log n) + 2*O(n 2 ) + O(k 2 ) Similarly the cost of Tkcp algorithm could be modeled as: COST Tkcp = C Sort +C D_Sort +C FP + C k-list = (O(T*N)+O(n log n)) +O(T*N 2 )+ (O(T*N)+ C FPTree ) +(O(n)* C Cond_base +O(P*k 2 )) where C Sort is the cost of creating initial sorted list of items based on support by one pass of the database, C D_Sort is the cost incurred during sorting the database based on descending order of item support and C FP 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 (C FP_Tree ). Computing correlation of each pair and for maintaining the k-top list it requires additional cost C Cond_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. 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 ( 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( ), 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 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 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 No of No of Avg size of No of Transaction Items transaction Patterns T10I400D100K 100, T10I600D100K 100, T10I800D100K 100, T10I1000D100K 100, T10P1000D100K 100, Table 2 : Real Dataset Data Set No of No of Source (Binarized) Transaction Items Mushroom UCI Pumsb 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

130 109 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 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, k- SCOPE 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, TOP- COP 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 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 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, k- SCOPE, has been presented in this paper to extract top-k 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, [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 , 2004 [3] Z He, S Deng, and X Xu, An FP-Tree Based Approach for Mining All Strongly Correlated Item Pairs, LNAI 3801, pp , 2005 [4] Han, J., Pei, J., Yin, J, Mining Frequent Patterns without Candidate Generation, Proceedings of SIGMOD 00, pp 1-12, [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, [7] S Roy and D K Bhattacharyya, Efficient Mining of Top-K Strongly Correlated Item Pairs using One Pass Technique,Proc. of ADCOM,pp , IEEE [8] W P Kuo et.al, Functional Relationships Between Gene Pairs in Oral Squamous Cell Carcinoma, Proc. of AMIA Symposium, pp , 2003 [9] K Donna, Slonim, From patterns to pathways: gene expression data analysis comes of age, Nature Genetics Supplement, vol 32, pp , 2002 [10] A.J. Butte & I S Kohane, Mutual information relevance networks: functional genomic clustering using pairwise entropy measurements, Pac. Symp. Bio-comput ,2000. [11] H Xiong et.al, Top-k - Correlation Computation, INFORMS Journal on Computing, Vol. 20, No. 4, pp ,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 X. [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 , [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

131 110 [16] S Roy and D K Bhattacharyya, SCOPE: An Efficient One Pass Approach to find strongly Correlated Item Pairs, Proc. of ICIT08,pp , IEEE CS Press,2008. [17] R Agrawal, T. Imielinski, A. N. Swami Mining association rules between sets of items in large databases. Proc. ACM SIGMOD Internat. Conf. Management Data, ACM Press, New York, 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.

132 111 Fig 4: Execution time comparison on Synthetic dataset Fig 5: Execution time comparison on Real dataset Fig 6: Scalability of k-scope algorithm.

133 112 The Use of Underwater Wireless Networks in Pisciculture at Amazon Isadora Santos 1, Gleyson Souza 2 and Mauro Margalho 3 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 km 2, 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.

134 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 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 (Multi- InteRfAce 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 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.500m 2 and 1,5m depth, since such tanks can vary from a few square meters until many

135 114 hectares, and can be rectangular or square [21]. Normally the small tanks (between 100m 2 and 500m 2 ) 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.000m 2 and 5.000m 2. 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. 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.0x10 10 and the packet send rate as 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.

136 115 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 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. 5. Conclusions Figure 6. Graphic 4 Throughput 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. 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] Ministério do Meio Ambiente, "Plano Nacional de Recursos Hídricos." [Online]. Available: [Accessed: Apr. 11, 2010] [2] Ministério do Meio Ambiente, "Agência Nacional de Águas." [Online].Available: cias/amazonica.aspx. [Accessed: May 11, 2010] [3] V.K. Silva, M.W. Ferreira, and P.V. Logato, "Qualidade da água na Piscicultura.", unpliblished. [4] J.S. Vieira, J. Sampaio, G. Gomiero, P. Vieira, and R. Logato, "Aspectos gerais da piscicultura," [5] M. Stojanovic, "Underwater wireless communications: current achievements and research challenges," IEEE Oceanic Engineering Society, 2006, pp [6] E. Sozer, M. Stojanovic, and J. Proakis, "Underwater acoustic networks," IEEE Journal of oceanic engineering, vol. 25, 2000, pp [7] J. Preisig, "Acoustic Propagation Considerations for Underwater Acoustic Communications Network Development," Society, 2006, pp [8] I. Akyildiz, D. Pompili, and T. Melodia, "Underwater acoustic sensor networks: research challenges," Elsevier s Ad Hoc Networks, vol. 3, [9] I.F. Akyildiz, D. Pompili, and T. Melodia, "Challenges for Efficient Communication in Underwater Acoustic Sensor Networks.pdf," SIGBED Review. [10] J. Heidemann, W. Ye, J. Wills, A. Syed, and Y. Li, "Research Challenges and Applications for Underwater Sensor Networking," Information Sciences. [11] J. Han, J. Huang, and M. Ran, "Design and simulation of an underwater acoustic network," Wireless, Mobile and Sensor [12] A.F. III and M. Zorzi, "Modeling the Underwater Acoustic Channel in ns2," Work. [13] M. Stojanovic, "Underwater acoustic communications," ELECTRO-IEEE CONFERENCE-, [14] 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 [15] NS2, "User Information." [Online]. Available: [Accessed: May 12, 2010] [16] Università degli Studi di Padova, "A patch for effectively using Dynamic Libraries in NS-2." [Online]. Available: [Accessed: May 12, 2010] [17] Università degli Studi di Padova, "NS-MIRACLE: Multi- InteRfAce Cross-Layer Extension library for the Network

137 116 Simulator." [Online]. Available: [Accessed: Apr. 14, 2010] [18] Università degli Studi di Padova, "dei80211mr: a new implementation for NS-2." [Online]. Available: [Accessed: Apr. 14, 2010] [19] Università degli Studi di Padova, "Underwater Communications." [Online]. Available: [Accessed: May 12, 2010] [20] Università degli Studi di Padova. Department of Information Engeneering, "SIGNET." [Online] Available: [Accessed: May 12, 2010] [21] E. Carballo, A.V. Eer, T.V. Schie, and A. Hilbrands, Piscicultura de água doce em pequena escala, Agromisa Foundation, 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.

138 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), Pilani- Rajasthan, , 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

139 118 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. 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 V 0, successive vertices V i are tested and rejected if they are less than ε away from V 0. 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] V 1 V 2 V 0 V 4 V 5 V 3 V 6 V 7 V 4. Simplification Keep Vertex Discard Vertex Original Polyline Reduced Polyline 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 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.

140 119 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. 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 Highway Metalled Motorway Metalled Motorway Unmetalled Pack-track plains Cart- Track Plains Unmetalled Unmetalled Foot-path Plains Unmetalled Figure 3: Input for Vertex Simplification Motorway Metalled Track follows Streambed Unmetalled Building Ntdb: Residential Block Village/Town Residential Hut Temporary Residential Hut Permanent Residential Hut Oblong Permanent 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 Religious Chhatri Religious Idgah Religious Temple and coarse, as they yield only approximate values, which are refined in the adjustment process. Furthermore, additional parameters can also be introduced in the

141 120 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: 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.

142 Conclusion Figure 8: output map using threshold value =500 Figure 9: output map using threshold value=1000 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. [2] Brassel, K. E. and Robert Weibel, A Review and framework of Automated Map Generalization, International Journal of Geographical Information System, vol. 2, pp , [3] M. Sester, Generalization Based on Least Squares Adjustment International Archive of Photogrammetry and Remote Sensing, vol. 33, Netherland, [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: , [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 , 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 [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 [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), [11] Harrie, L. E. [1999], The constraint method for solving spatial conflicts in cartographic generalization, Cartographicy and Geographic Information Systems 26(1), [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 [13] J ager, E. [1990], Untersuchungen zur kartographischen Symbolisierung und Verdr angung im Rasterdatenformat, PhD thesis, Fachrichtung Vermessungswesen, Universit at Hannover. 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 , Springer Netherlands, November/December 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 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.

143 122 A proposed Ontology to support Modeling Diagrams Nisreen Innab 1, Nidal Yousef 2, and Mohammad Al-Fayoumi 3 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

144 123 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 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

145 124 Diagram Name Activity Diagram Use Case Diagram State Machine Diagram 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 boundary box. When modelling requirements a use case 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 events. A State Machine diagram illustrates how an element, often a class, can move between states classifying 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 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 Activity Diagram Use Case Diagram State Machine Diagram Concepts Activities, Actions, Action Constraints, Control Flow, Initial Node, Final Node, Objects and Object Flows, data store, Decision and Merge Nodes, Fork and Join Nodes, Expansion Region, Exception Handlers, Interruptible Activity Region, Partition. Actors, Use Cases, Name and Description, Requirements, Constraints, Scenarios, Scenario Diagrams, Extending Use Cases, Extension Points, System Boundary. States, Initial and Final States, Transitions, State Actions, Self-Transitions, Compound States, Entry Point, Trigger, Exit Point, Choice Pseudo-State, 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 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.

146 125 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. 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. 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 BWW is a representation model that defines ontological constructs for information systems. According to these Diagram Activity Diagram Concepts (Con.) No. All Co n. No. 30 Co n. Pro portio n Action,Actor, Constraint, :4 Control Flow, Initial Node, 3 Final Node, Object and Object Flow, Data Store, Division and Merge Nodes, Fork and Join Nodes, Expansion Region, Exception Handlers, Interruptible Activity Region, Partition, Association, Class, Association Class, Attribute, Base Class, Branch, State, Final State, Transition, Symbol, Control, Thread, Rendezvous, Swimlane,Diagram, Activity, Data. Actor, Use Case, Name, : Description, Requirement, 27 Constraint, Scenario, Scenario Diagram, Extending, Extension Points, System Boundary, Visibility, Class, Property, Component, Core Element, Attribute, Operation, Type, Description, Association, Extend, Generalization, Include, Diagram, Element, System. Table (5.1): Evaluate the results by Percentage Technique Use Case Diagram 100 % 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].

147 126 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 BWW Thing Property Table (6.1): Comparison with BWW Constructs Object, Entity Attribut e Our Ontology Equivalent? Yes Yes Class Class Yes TOTAL Concepts 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. 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. 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: , ACM, pp: [2] Leo Obrst, Ontologies for Semantically Interoperable Systems, CIKM 03, [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: [4] Stephen J. Mellor, A Comparison of the Booch Method and Shlaer-Mellor OOA/RD, by Project Technology, Inc, [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 [6] Malcolm Shroff & Robert B. France, Towards a Formalization of UML Class Structures in Z, Computer Software and Applications Conference, COMPSAC '97. Proceedings., pp: [7] Johannes Koskinen, Jari Peltonen, Petri Selonen, Tarja Systa, Kai Koskimies, Model processing tools in UML, 23rd International Conference on Software Engineering, 2001pp: [8]Yeol Song and Kristin Froehlich, "Entity-Relationship Modeling: A Practical How-to Guide," IEEE Potentials, Vol. 13, No. 5, , pp [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, [10] Federico Vazques, Identification of complete data flow diagrams, ACM SIGSOFT Software Engineering Notes, Vol. 19, Issue 3, 1994, pp: [11] luciano baresi, mauro pezz`e, Formal Interpreters for Diagram Notations, ACM Transactions on Software

148 127 Engineering and Methodology, Vol. 14, No. 1, 2005, Pages [12] Boris Litvak, Behavioral Consistency Validation of UML diagrams, Proceedings of the First International Conference on Software Engineering and Formal Methods [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, [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 pp [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, [17] Veda C. Storey, Comparing Relationships in Conceptual Modeling: Mapping to Semantic Classifications, IEEE Transactions On Knowledge And Data Engineering, vol. 17, no. 11, [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, [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 [20] Harald Storrle, Structured nodes in UML 2.0 activities, Nordic Journal of Computing, Vol.11, Issue pp [21] Ahmad Kayed, Robert M.Colomb, Using BWW Model to Evaluate Building Ontologies in CGs Formalism", Vol. 30, No.5, 2005,pp [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 [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 [24] Michael Rosemann, Peter Green. Integrating Multi- Perspective Views Into Ontological Analysis, ICIS 2000 pp [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 [26] Andreas L. Opdahl, Brian Henderson-Sellers, Ontological Evaluation of the UML Using the Bunge Wand Weber Model, Softw Syst Model, 2002 pp Nisreen Innab received her B.S. degree in 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 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 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 In 1977, he earned his Master degree in mathematics, and a postgraduate diploma in Computer Science was received in 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, 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, e- learning 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

149 128 Comparison between Conventional and Fuzzy Logic PID Controllers for Controlling DC Motors Essam Natsheh 1 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

150 129 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)) (1) e (kt) T Z -1 PID + + U (k) se (kt) FLC 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: Z T de (kt) U (k) = f (e (k), se (k), de (k)) (2) 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. 3 U k K P e k Ki se k K d de k that is similar to the ideal PID control algorithm: 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 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

151 130 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]: Z1: e > 0 and de < 0, Z2: e < 0 and de < 0, Z3: e < 0 and de > 0, Z4: 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. Table 1: State plane of the PID-like FLC rule-base Change of the error Error N N N Z Z Z P P P N Z2 Z3 Z Z5 P Z1 Z4 N Z P N Z P N Z P Sum of the error 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 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 Error Change of the error N N N Z Z Z P P P N N N N N N N Z Z Z Z N N N Z Z Z P P P P Z Z Z P P P P P P N Z P N Z P N Z P Sum of the error 2.3 Optimizing the Membership Functions 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. U x negative 1 K x 0 (x) zero positive K x U x Fig. 3 Membership functions for fuzzy variable x. x

152 131 For fuzzy variable x with universe of discourse [U x, U x ] 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 K x 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 U x for each fuzzy variable; Initialize K x value to each fuzzy variable to be K x = U x / 2; Initialize IAE and ITAE to large values; For i=1 to max number of epochs to refinement all K x For j=1 to min number of epochs to refinement one K x 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 K x ; End if If ((new_iae IAE) and (new_itae ITAE)) K x = K x increase_ratio; Else K x = K x 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 0 The integral of time multiplied by the absolute of error (ITAE) defined by: ITAE 0 e t t e dt t dt 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] 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 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

153 132 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. Armature-controlled DC motors Separately excited-field DC motors Fig. 4 Separately excited-field DC motors. Field-controlled 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 6 e de kt se 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 + _ kt e k 1 e (t) T T e*(t) PID-like U(t) Zero-Order U*(t) DC Output (t) FLC Hold Motor Fig. 5 DC Motor system with PID-like FLC Armature-controlled DC Motors T t kt Ogata [16] gives the transfer function between the output angular displacement of the motor shaft (t) and the input control action U (t): 7 kt se k 1T T e k 1T 8 where K m is motor gain constant and T m is motor time constant. For simplicity, we assume that K m = 1 newtonm/amp and T m = 1 second Field-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]: U s K m s s T s 1T s 1 f m where K m is motor gain constant, T f is time constant of field circuit and T m is time constant of inertia-friction element. For simplicity, we assume that K m = 1 rad/voltsec, T f = 0.1 second and T m = 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 i i x i x x i i Here x i is a running point in a discrete universe, and (x i ) 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], [ ], 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 U s K m s s T s 1 m 9

154 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. Fig. 6 Step response of armature-controlled DC motor system using conventional and fuzzy PID controllers. Table 4: Performance comparison of field-controlled DC motor system Using conventional PID controller Using PID-like FLC Tr (Sec.) Ts (Sec.) Os (%) IAE ITAE Table 3: Performance comparison of armature-controlled DC motor system Using conventional PID controller Using PID-like FLC Tr (Sec.) Ts (Sec.) Os (%) IAE ITAE 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. Table 5: Percentage of improvement of PID-like FLC over conventional PID controller Armaturecontrolled DC motor system Fieldcontrolled DC motor system Tr (Sec.) Ts (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

155 134 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: [2] J. Jantzen, "Design of Fuzzy Controllers", Technical University of Denmark: Department of Automation, Technical report number 98-E 864, 19 Aug 1998, URL: [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 , [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 , [5] R. Isermann, "On Fuzzy Logic Applications for Automatic Control, Supervision, and Fault Diagnosis", IEEE Transactions on Systems, Man, and CyberneticsPart A: Systems and Humans, Vol. SMC-28, No. 2, pp , [6] R. R. Yager and D. P. Filev, "Essentials of Fuzzy Modeling and Control", John Wiley & Sons, [7] T. E. Marlin, "Process Control: Designing Process and Control Systems for Dynamic Performance", McGraw-Hill, [8] J. Nie and D. A. Linkens, "Fuzzy-Neural Control: Principles, algorithms and applications", Prentice Hall, [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: [10] H. X. Li and H. B. Gatland, "Conventional Fuzzy Control and Its Enhancement", IEEE Transactions on Systems, Man, and CyberneticsPart B: Cybernetics, Vol. SMC-26, No. 5, pp , [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 , [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 , [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 , [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: [15] B. C. Kuo, "Automatic Control Systems", Prentice-Hall, [16] K. Ogata, "Modern Control Engineering", Prentice-Hall, [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 , [18] R. Dorf and R. Bishop, "Modern Control Systems", Addison-Wesley, Essam F. Natsheh obtained his PhD in Communications and Networks Engineering from University Putra Malaysia in 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.

156 135 A Robust and Secure Methodology for Network Communications Mayank Srivastava 1, Mohd. Qasim Rafiq 2 and Rajesh Kumar Tiwari 3 1 Department of Computer Science, GLAITM Mathura, U.P , India 2 Department of Computer Engg, Zakir Husain College of Engg. & Technology, AMU Aligarh, U.P., India 3 Department of Computer Science, GLAITM Mathura, U.P , 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].

157 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. Hernandez- Castro [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 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.

158 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 S k 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 Image File creation: Digital images are commonly of two types 1. 8-bit images 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

159 138 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). 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. M j = i + (j 1)*Y, j = 1, 2, 3 where M j 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 M j 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

160 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 [ ]); } 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 Image Transmission Fig. 6. Stego Image 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;

161 140 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; } } 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 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. 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 [2]. Donovan Artz Digital Steganography: Hiding Data within Data, IEEE Internet computing, pp May June [3]. Mitchell D.Swanson, Bin Zhu and Ahmed H. Tewfik TRANSPARENT ROBUST IMAGE WATERMAKING IEEE x/ [4]. M.M Amin, M. Salleh, S.Ibrahim, M.R. Katmin, and M.Z. I. Shamsuddin Information hiding using Steganography IEEE March 7, [5]. Lisa M. Marvel and Charles T. Retter, A METHODOLOGY FOR DATA HIDING USING IMAGES, IEEE /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 , 1998.

162 141 [8]. F.A.P Peticolas, R.J. Anderson and M. G. Kuhn, Information Hiding A Survey, in proceeding of IEEE, pp , July [9] Venkatraman. S, Ajith Abraham, Marcin Paprzycki Significance of Steganography on Data Security, IEEE , [10]. N.F. Johnson and S Jajodia, Exploring Steganography: Seeing the Unseen, Computer, vol31, no. 2, Feb 1998, pp [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 [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 /05. 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 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 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. [13] S. Craver, On public-key steganography in the presence of an active warden, In Second International Workshop on Information Hiding, Springer- Verlag, [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 ISBN [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 [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 [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) [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

163 142 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

164 143 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 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]. Support( A, B) Count( A, B) / The total number of records (1) Confidence( A B) Count( A, B) / Count( A) 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 (2) threshold. At the second step, the minimum confidence threshold is applied to select the rules [27] 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. 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 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.

165 144 The data includes records of citizens' messages from spring 2008 to spring 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 Message Time Citizen Region Citizen Gender Citizen Education Male Master 15:38: Male Bachelor 13:57: Female Student 08:40: :12:00 1 Male Student Table 2: the definitions of fields ID Attribute definition 1 Subject ID The subject of citizen call 2 Message Time The time of citizen call 3 Citizen Region The geographical location of where the citizen lives 4 Citizen Gender Male or Female 5 Citizen Education The degree of citizen education such as BSc, MSc, PhD Association rule mining In this section, we discuss the results of the presented mining process Region, season and type of complaint 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. 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 S (%) C (%) 1 CR = 10 S = the urban servic management system 2 CR = 10 S = Administrative Financial matters 3 CR = 10 S = delinquency of employees and managers 4 CR = 11 S = Administrative Financial matters 5 CR = 11 S = the urban servic management system CR = 11 S = Contractors CR = 22 and Se = spring S = Administrative- Financial matters CR = 22 and Se = spring 9 CR = 22 and Se = spring 10 CR = 22 and Se = spring S = delinquency of employees and managers S = Transportation and traffic S = ICT

166 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 S (%) C (%) 1 females CR = 13 and S = social CE = BS cultural 2 males CR = 13 and S = social CE = BSc cultural 3 males CR = 22 S = Transportation and traffic 4 females CR = 22 S = Transportation and traffic 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. Table 5: contrast rules in graduated and non-graduated citizens ID Education Antecede nt Consequent S (%) C (%) 1 Graduated CR = 14 and CG = male S = delinquency of employees and managers Nongraduated 3 Nongraduated CR = 14 and CG = male CR = 12 and CG = male 4 Graduated CR = 12 and CG = male S = delinquency of employees and managers S = the urban service management system S = the urban service management system 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 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.

167 146 Table 6: contrast rules in different citizens' groups ID Segment Antecedent Consequent S (%) 1 3 CE = BSc and CG = male 2 4 CE = BSc and CG = male 3 1 CE = BSc and CG = male 4-9 2,5,6,7,8,9 CE = BSc and CG = male 4. Conclusion S = The urban service management C (%) system S = The urban service management system S = The urban service management system Very low S = The urban service management system Less than 1 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 Japan", in PROC. PICMET conference of IEEE Xplore., 2007, Portland, Oregon USA. [2] SH. Paul, "A case study of E-governance initiatives in India", The International Information & Library Review, Vol.39, 2007, pp [3] 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 [4] J. L. Perry and K. L. Kraemer, Technological innovation in American local governments: The case of computing, New York: Pergamon Press, [5] 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: Jossey- Bass, [6] C. C. Hinnant and J. A. O'Looney, "Examining pre-adoption interest in online innovations: An exploratory study of e- service personalization in the public sector", IEEE Transactions on Engineering Management, Vol.50, No.4, 2003, pp [7] 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 [8] F. Damanpour, "Organizational innovation: A meta-analysis of effects of determinants and moderators", Academy of Management Journal, Vol.34, No.3, 1991, pp [9] 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 [10] K. Layne and J. Lee, "Developing fully function E- Government: A four stage model", Government Information Quarterly, Vol.18, No.1, 2001, pp [11] L. G. Tornatsky and M. Fleischer, The process of technological innovation, Lexington, MA: Lexington Books, [12] M. M. Brown, "Understanding E-Government benefits", American Review of Public Administration, Vol.37, No.2, 2007, pp [13] C. G. Reddick, "The adoption of centralized customer service systems: A survey of local governments", Government Information Quarterly, Vol. 26, 2009, pp [14] S. F. King, "Citizens as customers: Exploring the future of CRM in UK local government", Government Information Quarterly, Vol.24, 2007, pp [15] 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, [16] 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.

168 147 [17] R. Silva and L. Batista, "Boosting government reputation through CRM", The International Journal of Public Sector Management, Vol. 20, No.7, 2007, pp [18] 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 [19] 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 [20] B. LarivieRe and D. V. D. Poel, "Investigating the postcomplaint period by means of survival analysis", Expert Systems with Applications, Vol. 29, 2005, pp [21] 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 [22] 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, [23] 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 [24] J. Ahn and S. Young, "Customer pattern search for after sails service in manufacturing", Journal of Expert Systems with Applications, Vol.36, 2009, pp [25] R. Agrawal, and R. Srikant, "Fast algorithm for mining association rules", In Proceedings of the Twentieth International Conference on Very Large Databases, 1994, pp [26] Q. Yang, L. Tianyi, and K. wang, "Building Association- Rule Based Sequential Classifiers for Web-Document Prediction", Data Mining and Knowledge Discovery, Vol.8, 2004, pp [27] P. Tan, M. Steinbach and V. Kumar, "Introduction to Data Mining", Addison Wesley, ISBN: , [28] J. Han and M. Kamber, Data Mining: "Concepts and Techniques, Second Edition", Morgan Kaufman Publisher, [29] 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. studies and its applications. Her current researches focus on using data mining in citizen relationship management. 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

169 148 A Three Party Authentication for Key Distributed Protocol Using Classical and Quantum Cryptography Suganya Ranganathan 1, Nagarajan Ramasamy 2, Senthil Karthick Kumar Arumugam 3, Balaji Dhanasekaran 4, Prabhu Ramalingam 5, Venkateswaran Radhakrishnan 6, and Ramesh Karpuppiah 7 Assistant Professor s, Master Of Computer Applications, Bharathiar University, Nehru College Of Management Coimbatore, Tamilnadu , 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. Security against such attacks as the man-in-themiddle, eavesdropping and replay. 2. Efficiency is improved as the proposed protocols contain the fewest number of communication rounds among the existing QKDPs. 3. 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. 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 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). 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

170 149 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 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

171 150 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 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) U i : The k-bit identity of a participant. In this paper, we denote U A as the identity of Tom, U B 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) r TU : An 1-bit random string chosen by the TC.6. K TU : The n-bit secret key shared between the TC and a participant, such that K TA 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 U i, 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: K TU is the secret key shared between TC and user U. Bit sequence in K TU is treated as the measuring bases between user U and the TC. If (K TU ) i = 0, the basis D is chosen; otherwise, the basis R. Note that (K TU ) i denotes the ith bit of secret key (K TU ). 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:

172 TC 1. The TC generates a random number r TA and a session key SK. TC then computes R TA = h(k TA,r TA ) (SK U A U B ) for Tom and, similarly r TB and R TB = h(k TB,r TB ) (SK U B U A ) for Tin. 2. The TC creates the qubits, Q TA, based on (r TA R TA ) i and (K TA ) i for Tom where i = 1;2;..;n and (r TA R TA ) i denotes the ith bit of the concatenation r TA R TA. If (r TA R TA ) i =0, (K TA ) i = 0, then (Q TA ) i is (1/ 2( 0) + ( 1)). (3) If (r TA R TA ) i =1, (K TA ) i =0, then (Q TA ) i is (1/2( 0) - ( 1)). (4) If (r TA R TA ) i = 0, (K TA ) i = 1, then (Q TA ) i is ( 0). (5) If (r TA R TA ) i = 1, (K TA ) i = 1, then (Q TA ) i is ( 1). (6) TC then sends Q TA to Tom. TC creates qubits Q TB in the same way for Tin Users Tom measures the received Q TA qubits depending on K TA. If (K TA ) i =0, then the qubit is measured based on the basis D. otherwise, the basis R. Similarly, Tin measures the receiving qubits Q TB depending on K TB. Once Tom obtains the measuring results r TA R TA she then computes SK U A U B =h(k TA,r TA ) R TA (7) The session key SK can be obtained and the values U A and U B can be verified. Similarly Tin gains r TB R TB then, Tin obtains the session key SK and checks the correctness of U B and U A. In item 1 of TC, the hash value, h(k TA,r TA ) (or h(k TB,r TB )), is used to encipher the sequence SK U A U B (or SK U B U A ). 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 guessing attacks to guess the bases over the quantum channel and thus, the secret key, K TA (or K TB ) can be repeatedly used. In item 2 of users, only Tom (or Tin), with the secret key K TA (or K TB ) is able to obtain SK U A U B (or SK U B U A ) by measuring the qubits Q TA (or Q TB ) and computing h(k TA,r TA ) R TA (or h(k TB,r TB ) R TB ). Hence, Tom (or Tin) alone can verify the correctness of the ID concatenation U A U B (or U B U A ) 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 Let (A) be the advantage in breaking the 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 q ini Initiate queries, q se Send queries and q h Hash queries within time t, a UCB assumption attacker will have an advantage to break the UCB security of ψ. That is, (A) 2(q ini + q se ) 2 /q ini. ( ) Where t t + q ini T rn : T rn 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

173 152 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. References [1] G.Li Efficient network authentication protocols: Lower bounds and Optimal implementations, Distributed computing, Vol 9, No. 3 pp [2] J.T.Kohi, The evolution of the Kerberros Authentication Service European conf. proc pp B.Nuemann and T. Ts o Kerberros An authentication service for computer networks IEEE comm., Vol 32, No.9 pp [3] W.Stallings, Cryptography and network security: principles and practice, prentice hall [4] N. Linden, S. Popescu, B. Schumacher, and M. Westmoreland, "Reversibility of local transformations of multiparticle entanglement", quant-ph/ 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/ [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 UST- Global 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 Did his MCA from Bharathiar University in 2006; M.Phil in Computer Science in 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. 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 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. 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 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 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

174 153 mining and Data Structures. He has also attended many conferences and done certification courses which will support the carrier growth.

175 153 Fault Tolerance Mobile Agent System Using Witness Agent in 2- Dimensional Mesh Network Ahmad Rostami 1, Hassan Rashidi 2, Majidreza Shams Zahraie 3 1 Student of Faculty of Electrical, Computer, IT & Biomedical Engineering, Qazvin Islamic Azad University, Qazvin, Iran 2 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

176 154 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. 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 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 S i while the witness agent is at server S i-1. Both the actual agent and the witness agent have just arrived at S i and S i-1, respectively. The actual agent and the witness agent are labeled as α and W i-1, respectively. The actual agent α plays an active role in the designed protocol. After α has arrived at S i, it immediately logs a i message, log, on the permanent storage in S arrive i. The purpose of this message is to let the coming witness agent know that α has successfully landed on this server. Next, α informs W i-1 that it has arrived at S i safely by sending a i message, msg, to W arrive i-1. The actual agent α performs the computations delegated by the owner on S i. When it finishes, it immediately check-points its internal data to the permanent storage of S i, then, it logs a message, log i leave, in S i. 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 S i+1. In the next step, α sends W i-1 a message, msg i leave, in order to inform W i-1 that α is ready to leave S i. At last, α leaves S i and travels to S i+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, W i-1, arrives at S i-1. Before W i-1 can advance further in the network, it waits for the messages stent from α. when W i-1 is in S i-1, it expects receiving two messages: one is

177 155 i arrive msg and another one is msg i leave. If the messages i are out-of-order, msg leave will be kept in the permanent i storage of S i-1. That is msg leave is considered as unattended, and becomes an indirect message until W i-1 i receives msg. When W i-1 has received both i arrive msg and arrive i msg leave, it spawns a new agent called W i. The reason of spawning a new agent instead of letting W i-1 migrate to S i is that originally W i-1 is witnessing the availability of α. If a server failure happens just before W i-1 migrates to S i, then no one can guarantee the availability of the actual agent. Note that the new witness agent knows where to go, i.e. S i, because i arrive msg or i msg leave contains information about the location of S i where α has just visited. Fig. 2 shows the flow of the protocol. W i-1 is monitoring α and W i-2 is monitoring W i-1. Assuming the following failure sequence happen: S i-1 crushes and then S i crushes. Since S i-1 crushes, W i-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 W i-1 can be performed by W i-2, so that α can be recovered by W i-1. Fig.3 shows the witness agent failure scenario. Fig. 3 The witness agent failure scenario Fig. 2 Steps in the witness protocol 2.3 Creation of the Witness Agent As it is mentioned in the previous sub-section, upon i receiving msg leave, W i-1 spawns W i, and W i travels to S i. 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: W 0 W 1 W 2 W i-1 W i α Where represents the monitoring relation. The above dependency is named the Witness- Dependency. This dependency cannot be broken. For instance, if α is in S i, 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, W i sends a periodic message to W i-1 in order to let W i-1 knows that W i i alive is alive. This message is labeled as msg. If W i is dead, W i-1 will spawn a new witness agent, namely W i, in order to replace the lost witness agent in S i. When W i i arrives at S i, it re-transmits the message msg alive to W i-1. In order to handle this failure series, the owner of the actual agent can send a witness agent to the first server S 0, in the itinerary of the agent with a timeout mechanism. The effect of sending this witness agent is similar to the i 1 case when a witness agent, W i, fails to receive msg alive. This method can recover W 0 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.

178 Mesh Network In a mesh network, the nodes are arranged into a k- dimensional lattice. Communication is allowed only between neighboring nodes; hence interior nodes communicate with 2k other nodes [19]. A k-dimensional mesh has n 1 n 2 n 3 n k, where n i is the size of i th dimension. Fig. 4 illustrates a 4 4 2D-Mesh with 16 nodes. In a mesh network, two nodes (x 1, x 2, x 3, x k ) and (x' 1, x' 2, x' 3, x' k ) are connected by an edge if there exist i, j such that x i x' i =1 and x j =x' j for j i. i, j as msg NewWitnessNumber. This message is sent when computing and check-pointing of data are finished and the i message log leave 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 i, j message is denoted as msg 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: W 1,1 W 1,2 W 1,3 W 2,3 W 2,2 W 3,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 W 1,2 and W 2,2 which are adjacent to each other. In this case, the witness-dependency is as below: W 1,1 W 1,2 W 2,2 W 3,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.

179 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 i, j i, j msg and msg are not NewWitnessNumber lost eventually, they are like msg Po int NewWitness i 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 i, j a new node, it sends message msg 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 (x i, x j ) and (x' i, x' j ) are connected by an edge, if x i x' i =1 and x j =x' j or x j x' j =1 and x i =x' i. Hence pair (p, q) compares with the value of W[Index-1] 1. If they are adjacent then owner i, j send msg 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 W i,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 2D- Mesh 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.

180 158 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. Hyper-Cube 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. 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 [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 , Oct [3] D. Chess, C.G. Harrison, and A. Kershenbaum, Mobile Agents:Are They a Good Idea? Mobile Agents and Security, G.Vigna, ed.,pp , Springer Verlag, [4] D.B. Lange and M. Oshima, Seven Good Reasons for Mobile Agents, Comm. ACM, vol. 45, no. 3, pp , Mar [5] A. Bieszczad, B. Pagurek, and T.White, Mobile Agents for Network Management, IEEE Comm. Surveys, Sept [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 [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 , Apr [8] W. Theilmann and K. Rothermel, Optimizing the Dissemination of Mobile Agents for Distributed Information Filtering, IEEE Concurrency, pp , Apr [9] P. Maes, R.H. Guttman, and A.G. Moukas, Agents that Buy and Sell, Comm. ACM, vol. 42, no. 3, pp ,Mar [10] S. Pleisch, A. Schiper, Fault-Tolerant Mobile Agent Execution, IEEE Transaction Computer, pages , Feb [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 [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 TUNISIA), March [13] M. Strasser, K. Pothernel, System Mechanisms for Partial Rollback of Mobile Agent Execution. Proceedings of 20 th International Conference on Distributed Computing Systems 2000, pp [14] V. F. Nicola, Check-pointing and the Modeling of Program Execution Time. Software Fault Tolerance, M. Lyu (ed.), John Wiley & Sons, 1994, pp [15] N. Budhirja, K. Marzullo, F.B. Schneider, and S. Toueg, The Primary-Backup Approach, Distributed Systems, S. Mullender, ed., second ed., pp , Reading, Mass.: Addison-Wesley, [16] Q. Xin, Y. Yu, Z. Qin, Fault Tolerance Issues in Mobile Agents, Computer Science & Engineering Department Univ. of California, San Diego, June [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, [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), [19] M. J. Quinn, Designing Efficient Algorithms for Parallel Computers, University of New Hampshire: McGraw-Hill, 1976.

181 159 Securing Revocable Iris and Retinal Templates using Combined User and Soft Biometric based Password Hardened Multimodal Fuzzy Vault V. S. Meenakshi 1 and Dr G. Padmavathi 2 1 Department of Computer Applications, S.N.R. Sons College Coimbatore, Tamilnadu, India 2 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 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 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 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 = G U C

182 160 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. 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

183 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 Chikkarur[8] work on fingerprint provided a general understanding on feature extraction steps, 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. 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. 3.2 Feature point Extraction of Minutiae from Iris 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. 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) Localized Iris Image (b) Highlighted Iris Minutiae (a) Retinal image (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.

184 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 T u of 7 bits and T v of 9 bits in length. T u and T v represents the amount of translation in the horizontal and vertical directions, respectively. The new feature points are obtained by the following transformation. X u = (X u + T u ) mod (2 ^ 7 ) Y v = (Y v + T v ) mod (2 ^ 9 ) where X u and X u is the horizontal distance before and after transformation respectively. Similarly Y v and Y v is the vertical distance before and after transformation respectively. 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 (C 8, C 7 C 0 ). All operations takes place in Galois Field GF(2 16 ). The projection of u on polynomial p is found. Now the Genuine points set G is (u i, P(u i )). 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 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) No. of Chaff points(c) Total no. of points (t = r + c) Experimental Results and Analysis The Iris and retinal template are transformed for three different user passwords to check for revocability.

185 163 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 M T given the vault V can be calculated as Eye Color Character Code Used Amber A Blue E Brown B Gray G Green N The Hazel H Purple/violet P 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 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

186 164 (a) PASSWORD : VAULT146AM (a) Red: Permuted Points and Blue: Transformed Points (b) PASSWORD: FUZZY155BM (b) PASSWORD : VAULT146AM c) PASSWORD : TOKEN170GF Fig 4. Transformed Iris Features for Three Different Soft Biometric Passwords (c) PASSWORD: FUZZY155BM 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

187 165 Table IV Vault Type User password (5 character) (40 Bits) Table III Showing the Structure of Sample Passwords Security Analysis of Combined User and Soft Biometric based Password Hardened Multimodal Fuzzy Vault Degree of polynomial Height (0 255) (8 bit) Soft Biometric Password (24 bits) Iris color (1 character) (8 bit) Gender (M/F) (1 character ) (8 bit) Combined Password (64 bits) FUZZY 155 B M FUZZY155BM TOKEN 170 G F TOKEN170GF VAULT 146 A M VAULT146AM 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 x x x to 63 Retina x x x to 63 Combined Iris and Retina x x x to 81 password at the same time. The user password can be changed for generating revocable 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 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 A public version of the CUHK Iris Database is available from References [1] Umat uludag, sharath pankanti, Anil. K.Jain Fuzzy vault for fingerprints, Proceedings of International conference on Audio video based person authentication, [2] Juels and M.Sudan, A fuzzy vault scheme, Proceedings of IEEE International symposium Information Theory, 2002.

188 166 [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 [5] Karthik Nandakumar, Abhishek Nagar and Anil K.Jain, Hardening Fingerprint Fuzzy Vault using Password, International conference on Biometrics, [6] Karthick Nandakumar, Sharath Pankanti, Anil K. Jain, Fingerprint-based Fuzzy Vault Implementation and Performance, IEEE Transacations on Information Forensics and Security, December [7] K.NandaKumar, Multibiometric Systems: Fusion Strategies and Template Security, PhD Thesis, Department of Computer Science and Engineering, Michigan State University, January [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 , June [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 [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 [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 [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 , Hong Kong, July 2004 [17] Anil K. Jain, Karthik Nandakumar, Xiaoguang Lu, and Unsang Park, Integrating Faces, Fingerprints, and Soft Biometric Traits for User Recognition, Proceedings of Biometric Authentication Workshop, LNCS 3087, pp , 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 , [19] Anil K. Jain and Unsang Park, Facial Marks: Soft Biometric For Face Recognition, IEEE International Conference on Image Processing (ICIP), Cairo, Nov [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: , [22] V.S.Meenakshi, G.Padmavathi, Security analysis of Password Hardened Multimodal Biometric Fuzzy Vault, World Academy of Science, Engineering and Technology , [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 , ISSN 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 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

189 167 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.

190 Interactive Guided Online/Off-line search using Google API and JSON 167 Kalyan Netti 1 1 Scientist, NGRI(CSIR), Hyderabad, Andhra Pradesh, India 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

191 168 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 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

192 169 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 3.1 Proposed System 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 User JSP and Servlet Container Bundle of Saved Results 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. 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 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.

193 170 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 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; 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, 4.1 Online Search Figure 3: Design and Implementation of the system There is a main page (index.jsp) that is used to interface with all other files. This page consists of query text box (a

194 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, "UTF- 8"); URL url = new URL(" rvices/search/web?start=0&rsz=large&v=1.0&q=" + query); // opening connection URLConnection connection = url.openconnection();

195 172 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(); JSONObject json = new JSONObject(builder.toString()); 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 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 results as shown in figure 7. For convenience purpose the system // 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 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

196 results whereas programming java yielded around 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 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).

197 174 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 [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 googletech.html [7] [8] Google Groups (web-apis) [9] [10] Guidebeam - [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, [12] Softnik Technologies, Google API Search Toolhttp:// [13] Google API Proximity Search (GAPS) - [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, [16] Mitch Wagner, Google Bets The Farm On Linux, June 2000, - [17] [18] M. B. Rosson and J. M. Carroll. Usability Engineering: scenario-based development of human-computer interaction. Morgan Kaufmann, [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, [20] G. Salton and C. Buckley. Improving retrieval performance by relevance feedback. Journal of the American Society for Information Science, 41(4), [21] B. Shneiderman. Designing the User Interface. Addison- Wesley, [22] C. Silverstein, M. Henzinger, H. Marais, and M. Moricz. Analysis of a very large web search engine query log. SIGIR Forum, 33(1), [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), [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), [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, [26] E. M. Voorhees. Query expansion using lexical-semantic relations. In Proceedings of the ACM SIGIR Conference on Research and Development in Information Retrieval, [27] C. Ware. Information Visualization: Perception for Design. Morgan Kaufmann, [28] J. Xu and W. B. Croft. Improving the effectiveness of information retrieval with local context analysis. ACM Transactions on Information Systems, 18(1), [29] Yahoo. Yahoo search web searvices. [30] Y. Yao. Information retrieval support systems. In Proceedings of the 2002 IEEE World Congress on Computational Intelligence, 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.

198 175 Static Noise Margin Analysis of SRAM Cell for High Speed Application Debasis Mukherjee 1, Hemanta Kr. Mondal 2 and B.V.R. Reddy 3 1 E&CE, SPSU and USIT, GGSIPU Udaipur, and Delhi, , India 2 Freescale Semiconductor Noida, , India 3 USIT, GGSIPU Delhi, , 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)

199 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].

200 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. 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 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 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. 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. Technology (mm) 180 nm Table 1: CR vs. SNM CR SNM(mV) Fig. 4b Shows the read margin [7].

201 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 DRV(V) SNM(mV) nm 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. Table 3: Write Margin vs. SNM Technology PR Write margin SNM(mV) nm 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 CR Read Margin SNM (mv) nm 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.

202 179 Acknowledgment Table 4: Threshold Voltage vs. SNM 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. Debasis Mukherjee is very much thankful to Mr. Peeyush Kumar Tripathi of Intel Corporation, Bangalore, India for his help and support. References [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: [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 , April [3] A. P. Chandrakasan el al., Low-power CMOS digital design, IEEE Journal of Solid-state Circuits, Vol. 27, pp , Apr [4] H. Pilo et al., An 833MHz 1.5W 18Mb CMOS SRAM with 1.67 Gb/s/pin, Proc. IEEEISSCC, pp , T. Uetake et al., A 1.0 ns access 770MHz 36Kb SRAM Macro, Dig. Symp. VLSI Circuits,pp , [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 [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

203 180 [13] Kiyoo Itoh, VLSI Memory Chip Design, Springer-Verlag Berlin Heidelberg New York, p.p. 110, [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 , August [15] Tegze P. Haraszti, Microcirc Associates CMOS Memory Circuits, kluwer academic publishers New York, boston, dordrecht, London, Moscow. Pages [16] Sung-Mo Kang, Yusuf Leblebici,, CMOS DIGITAL INTEGRATED CIRCUITS, Analysis and Design, McGraw-Hill International Editions, Boston, 2nd Edition, Debasis Mukherjee was born on 20/08/1980. is Pursuing Ph.D. from USIT, GGSIPU, Delhi, India from 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 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 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 He worked in NPL, Delhi in summer, 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.

204 181 A New Approach for Evaluation of Data Mining Techniques Moawia Elfaki Yahia 1, Murtada El-mukashfi El-taher 2 1 College of Computer Science and IT King Faisal University Saudi Arabia, Alhasa Faculty of Mathematical Sciences University of Khartoum Sudan, Khartoum 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

205 182 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 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

206 183 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. 4. Evaluation of Data Mining Techniques 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. 4.1 Statistical Technique Identification of Statistics Statistics is a branch of mathematics concerning the collection and the description of data [2] The Environment of Using Statistical Technique 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 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) 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 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 The Consequences of choosing The Statistical Technique 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 Implementation of Statistical Technique Process 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. 4.2 Visualization Technique Identification of Visualization 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].

207 The Environment of using Visualization Technique 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 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 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 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 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 Identification of Clustering Clustering is concerned with grouping together objects that are similar to each other and dissimilar to the objects belonging to other clusters [3] The Environment of using Clustering Technique 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 within the cluster. Clustering can be used for discovery or prediction The Advantages of 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 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 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 Implementation of Clustering Technique process 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 Identification of Decision Trees A decision tree is a predictive model that, as its name implies, can be viewed as a tree [2] The Environment of using Decision Trees Technique 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.

208 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 The Disadvantages of Decision Trees Technique 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 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 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 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] 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 of the website visitors and retrieved in connection with other HTML documents 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 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 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 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 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] 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.

209 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 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 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 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 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, [2] Berson, A, Smith, S, and Thearling, K. Building Data Mining Applications for CRM, 1st edition - McGraw-Hill Professiona, [3] Bramer, M. Principles of Data Mining, Springer-Limited, [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, [5] El-taher, M. Evaluation of Data Mining Techniques, M.Sc thesis (partial-fulfillment), University of Khartoum, Sudan, [6] Han, J and Kamber, M. Data Mining, Concepts and Techniques, Morgan Kaufmann, Second Edition, [7] Lee, S and Siau, K. A review of data mining techniques, Journal of Industrial Management & Data Systems, vol 101, no 1, 2001, pp [8] Perner, P. Data Mining on Multimedia - Springer- Limited, [9] Refaat, M. Data Preparation for Data Mining Using SAS, Elsevier, [10] Vityaev, E and Kovalerchuk, B. Inverse Visualization In Data Mining, in International Conference on Imaging Science, Systems, and Technology CISST 02, 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 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 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 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.

210 187 Rule Based Selection of 2D Urban Area Map Objects Jagdish lal Raheja 1, Umesh Kumar 2 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

211 188 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 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. 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. 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

212 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

213 190 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 , Springer Netherlands, November/December [2] Brassel, K. E. and Robert Weibel, A Review and framework of Automated Map Generalization, International Journal of Geographical Information System, vol. 2, pp , [3] M. Sester, Generalization Based on Least Squares Adjustment International Archive of Photogrammetry and Remote Sensing, vol. 33, Netherland, [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: , [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 , 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 [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 [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), [11] Harrie, L. E. [1999], The constraint method for solving spatial conflicts in cartographic generalization, Cartographicy and Geographic Information Systems 26(1), [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 [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 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.

214 Design and Implementation of a System for Wireless Control of a Robot 191 Christian Hernández 1, Raciel Poot 1, Lizzie Narváez 2, Erika Llanes 2 and Victor Chi 2 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

215 192 the implementation, including the construction of the prototype and finally, the fifth section presents the conclusions. (Alternating Current/Direct Current) adapter, or with battery, as in this project. The main components of Arduino Diecimila are listed below (figure 3): 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). 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 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

216 193 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 5 V Chip FTDI VIN Fig. 3. Main components of Arduino. PWM 3,5,6,9,10,11 Reset Microcontrolador ATmega 168 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 standard for WPAN s. In turn, IEEE specifies the physical layer and media access control for low-rate wireless personal area networks (LR- WPANs). 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. 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. 3. Design Client computer Arduino + X-bee (sender of data) End End Fig. 4. Wireless communication, Arduino + X-bee. This section presents the architecture of the system and the description of the main components. End End

217 Architecture and System Description Figure 5 shows the architecture of the designed system and then it is described each of its components. Computer LPT Power 5V + - Battery 9V + - Protoboard Chip 74ls245 Arduino+X-bee bee 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 language- 0016, 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). Pines connected to the interface PC - Parallel Fig. 6. Parallel port. Arduino+X-bee Receiver module L293 Battery 9V + - Port of Data Port of Control Port of Status Port of GND 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. 7. Schematic diagram sender module. 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, 74ls245- Arduino + X-bee); this board also has a Zigbee module that allows wireless communication with the computer [13]. See figure 9. 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].

218 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]. 4. The robot controller board interprets this information, similar to step number 2, as this module is programmed to receive data sent from the computer. 5. 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. 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]. 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 X- bee module connected to the L293B), [16]. 4. Implementation Fig. 12. Servomotor. 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 c Right. 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{

219 196 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. 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. 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 Fig. 17. L293B connection with Arduino + X-bee. 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.

220 197 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] Ultima consulta Junio 30 de [2] Alonso Álvarez, Jaime. Desarrollo de un robot móvil controlado desde Internet: Comunicaciones Wi-Fi. Universidad Pontificia Comillas ICAI. Madrid. Junio [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 [6] Nadales Real, Christian. Control de un Quadrotor mediante la plataforma Arduino. Escuela Politécnica Superior de Castelldefels. Julio de [7] Baik, Kyungjae. BoRam: Balancing Robot using Arduino and Lego. September, [8] Información general del Arduino. Última consulta Julio 2 de [9] Última consulta Julio 2 de [10]Zigbee standards Organization Zigbee ownload/tabid/237/default.aspx Última consulta Junio 5 de [11]X-bee primeros pasos Con-Arduino-y-X-bee Última consulta Mayo 10 de [12] Última consulta Mayo 12 de [13] doc2545.pdf Última consulta Abril 20 de [14]IEEE IEEE standard for local and Metropolitan Area Networks: Specifications for Low- Rate Wirless Personal Area Networks [15] /9/3/L293.shtml Última consulta Abril 15 de [16] a/motores_servo.htm Última consulta Abril 3 de 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 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 She received a Master of Computer Science degree from Monterrey Technological Institute (ITESM), Campus Cuernavaca, in 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 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 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.

221 A Review of Supply Chain Management using Multi-Agent System 198 Vivek Kumar 1 and Dr. S. Srinivasan 2 1 Research Scholar, Department of computer Science & Engineering, Suresh Gyan Vihar, University Jaipur, Rajasthan , India 2 Professor & Head, Computer Science Department PDM Engineering College, Bhadurgarh, Haryana , 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. 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 KEYWORDS: Information exchanges, Multi Agent System, knowledge sharing and supply chain management 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. 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 Customer Agent Content : ContentManager Content_Language: Codec Setup(addBehaviour() ) Request_Behavio Concept : Concept Predicates : Predicate Action : AgentAction Action() Content Codec Concept Predicate Fig. 1 Class Architecture for customer Agents Agent Action Ontology

222 199 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. 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. Monolayer information sharing OFP Observer Swarm Supplie Manufacturer Distributor Retailer Monolayer information sharing OFP Model Swarm Statistics Swarm Supplie Manufacturer Distributor Retailer Production Agent Production Planning 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 Cost Management Agent Order Management Work Flow Agent 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

223 200 [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, 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. Problem Creates Information Blackboard Warehouse Message Return Handles Client Agent Factory Agent role : String -role Instance : String Aspect <<enumeration>> Aspect Scope 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. Role +handlemessage( message : Message ) : Message +handleinputmessage( message : Message ) +handleoutputmessage( message : Message ) : Message Coordination Aspect Coordin ate Role Interation Protocol Acti on Component Representation Aspect Encoding Format AGENT SCOPE PROTOCOL SCOPE CONVERSATION_SCOPE Distribution Aspect Component Fig. 5 Conceptualization of the aspect model in Malaca Message Transport Service 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. Ka- Chi 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

224 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 Uncertain Walsh and Michael P. Wellman 201 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. 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. VB/VL P/L Title Name & Authors 1. supply Chain Models in Hard Disk Drive Manufacturing Robert de Souza and Heng Poh Khong 2. Modeling supply chain Formation in Multiagent System M VG/V H Fig. 6. Membership functions of DMs' importance weights and suppliers'ratings (modified from) G/ H Explanation & Conclusion Fuzzy refraction 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? 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. 3. Evaluation of Modeling Techniques for Agent-Based Systems Onn and Sturm Shehory Arnon 4. Effects of Information Sharing on Supply Chain Performance in Electronic Commerce Fu-ren Lin, Sheng-hsiu Huang, and Sheng-cheng Lin 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. 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. 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. William E. Supply chain formation is an

225 Commitments for Agent-Based Supply Chain Management Mario Verdicchio and Marco Colombetti 6. Building Holonic Supply Chain Management Systems: An e- Logistics 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 Multi- Agent 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 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

226 New Multi Attributes Procurement Auction for Agent- Based Supply Chain Formation Rasoul Karimi, Caro Lucas and Behzad Moshiri 11. 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 many fields. Applications range from modeling agent behavior in the stock market and supply chains 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. 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. 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 Systems 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 Supply- Chain 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, impact on supply chain performance, and the policy of information sharing 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

227 204 Atakan Yucel, Gokhan Ayyildiz 17. Malaca: A component and aspect-oriented agent architecture Information and Software Technology Mercedes Amor *, Lidia Fuentes 18. A material supplier selection model for property developers using Fuzzy Principal Component Analysis Automation in Construction 3. Conclusion 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. 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. 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) [2] C. Iglesias, M. Garijo, J. Centeno-Gonzalez, and V. J. R., "Analysis and Design of Multiagent Systems using MAS- CommonKADS," presented at Agent Theories, Architectures, and Languages, [3] Charles M. Macal and Michael J. North Tutorial on Agent- Based 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 [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) [8] Mario Verdicchio and Marco Colombetti, Commitments for Agent-Based Supply Chain Management, ACM SIGecom Exchanges, Vol. 3, No. 1, [9] Mercedes Amor *, Lidia Fuentes Malaca: A component and aspect-oriented agent architecture Information and Software Technology 51 (2009) [10] MihaelaUlieru, Senior Member, IEEE, and MirceaCobzaru, BuildingHolonic Supply Chain Management Systems: An e- Logistics Application for the Telephone Manufacturing Industry IEEE transactions on industrial informatics, vol. 1, no. 1, February [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

228 205 [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 [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, [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. Mr. Vivek Kumar has completed his M.Phil (Computer Science) in Apart from this, he did M.Tech. (Computer Science, 2005) & MIT in 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.

229 206 Development of Ontology for Smart Hospital and Implementation using UML and RDF Sanjay Anand 1, Akshat Verma 2 1 Noida, UP , India 2 Centre for Development of Advanced Computing (C-DAC) Noida, U.P , 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.

230 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: a vocabulary - the set of terms used for modeling. a structure of the statements in the model. the semantic interpretation of these terms. 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. 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. 4. Ontology for Smart Hospital (SH) 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. 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

231 208 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 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 below-knowledge Engineering Methodology 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. 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 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. 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

232 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. Filling in the slot values. 7. UML Diagram for Smart Hospital UML provides the graphical representation of visualization, specifying, constructing and documenting the artifacts. Following figure-2 shows the use case diagram for patient treatment- 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 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 responsiblefor 1 * Patient name address patient number 1 MedicalHistory insurance daterange 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, Fig. 3(a) Class diagram for patient record Following Figure 3(b) shows the Class diagram for patient Treatment- Create an individual instance of that class, and

233 210 Guardian 1 name address Outpatient 1 Patient name address * patient number MedicalHistory insurance responsiblefor * Inpatient * * assignedto primary 1 Doctor specialty * assignedto consulting Employee name Employee no. address * Nurse specialty * worksat MedicalGroup name main location * Hospital 1 * name address * Building name location 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- * TreatmentInstance medications procedures assignedto assignedto assignedto * Location number size 1 Fig. 3(b) Class diagram for patient Treatment Following figure- 3(c) shows the Class diagram for Asset Assignment - Patient name address patient number * assignedto MedicalGroup name main location Outpatient Inpatient Employee name ss number address * Hospital worksat name * 1 * address * * * * primary Building assignedto name * location Doctor Nurse Specialty Specialty consulting * * Location * assignedto * 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.

234 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- Supporting a graph oriented API via a textual query language ala SQL. Load/Reload an RDF file from a URL into the database. 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 [2] Berners-Lee, Tim, James Hendler, & Ora Lassila (2001)"The Semantic Web," Scientific American, May [3] Horrocks, I.; Patel-Schneider, P. F.; and van Harmelen, F 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 [5] Weiser, M. 1993b. Ubiquitous Computing. IEEE Computer, 26(10): [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 ann1/erdmann.pdf. [7] Dean, M.; Schreiber, G.; Bechhofer, S.; van Harmelen, F.; Hendler, J.; Horrocks, I.; McGuinness, D. L.; Patel- Schneider, P. F.; and Stein, L. A OWL web ontology language reference. W3C Recommendation. [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 [9] Guided Tour of Ontology; John F. Sowa, [10] F. Gandon, Ontology Engineering: a survey and a return on experience, Research Report of INRIA n 4396, France, March [11] AI Watch - The Newsletter of Artificial Intelligence. Vol AI Intelligence, Oxford, UK. [12] M. Uschold and Gruninger M. Ontologies: Principles, methods and applications. Knowledge Engineering Review, Vol. 11:2, , 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 Plateforme AFIA, Grenoble juin [14] Press Release - The Smart Hospital at The University of Texas at Arlington School of Nursing becomes a Laerdal

235 212 Center of Excellence in Simulation. Available athttp:// 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.

236 213 Survey: Image Encryption Using Salsa20 Alireza Jolfaei 1 and Abdolrasoul Mirghadri 2 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 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,

237 214 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 y0 x0 y1 x1(( x0 x3) 7) y1 x1 y2 x2 (( y1x0) 9) quarterround y 2 x 2 y3 x3(( y2 y1) 13) y 3 x 3 y0 x0 (( y3 y2) 18) 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 S- boxes. 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 64- byte 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]: Rowround Operations x0 x1 x2 x3 ( y 0, y1, y 2, y 3) quarterround ( x 0, x1, x 2, x 3) x4 x5 x6 x7 ( y 5, y 6, y 7, y 4) quarterround ( x 5, x 6, x 7, x 4) x8 x9 x10 x11 ( y10, y11, y 8, y 9) quarterround ( x10, x11, x 8, x 9) x12 x13 x14 x15 ( y 15, y 12, y 13, y 14) quarterround ( x15, x12, x13, x14) Columnround Operations x0 x1 x2 x3 ( y 0, y 4, y 8, y12) quarterround ( x 0, x 4, x 8, x12) x4 x5 x6 x7 ( y 5, y 9, y13, y1) quarterround ( x 5, x 9, x13, x1) x8 x9 x10 x11 ( y10, y14, y 2, y 6) quarterround ( x10, x14, x 2, x 6) x12 x13 x14 x15 ( y15, y 3, y 7, y11) quarterr ound ( x15, x 3, x 7, x11) R Salsa 20( x ) x ( rowround ( columnround ( x ))), where R is the number of double rounds and r is number of ciphering rounds ( r 2 R). Bernstein proposed three variants of the Salsa20 stream cipher: Salsa20/20, which has 20 ciphering rounds; Salsa20/12, which is Salsa20 reduced from 20 rounds to 12 rounds; and Salsa20/8, which is Salsa20 reduced from 20 rounds to 8 rounds. Image matrix is a binary sequence of 8 H W length, where H is number of rows and W is number of columns. Salsa20 algorithm generates a set of pseudo-random 64- byte stream known as keystream, equal length to image matrix size. Then each 64-byte block is XOR-ed with its corresponding 64-byte block in the plain-image as follows: Plain image () i Keystream () i Cipherimage() i (1) 64 where, i {0,1, 2,...,2 1}. This procedure is shown in Fig. 1. For decryption, cipher-image is XOR-ed with keystream. The Salsa20 key is a uniform random sequence of bytes, and the same nonce is never used for two different messages. Fig. 1. Salsa20 image encryption scheme procedure is demonstrated. Each 8 8 block (64-byte) of keystream is XOR-ed with its corresponding 8 8 block of plain-image to produce cipher-image.

238 Security and Performance Analysis A fundamental issue of all kinds of ciphers is the security. A strong cipher is capable of resisting any kind of cryptanalytic attacks including brute-force attack, statistical attack, known plain text attack and chosenplaintext attack. Thus, a cipher of high key and plaintext sensitivity with a large key space is desirable. Besides, computational speed, size and quality of encrypted images are other important issues as well since they always include the feasibility of encryption schemes. In this section we performed a series of test to justify and compare the efficiency of the cryptosystem under study. 3.1 Visual Testing The algorithm is applied with a 256-level gray scale TIF image of Lena that has the size of and visual test is performed. Fig. 2 demonstrates encryption result. The original image is encrypted by using ' abcdef abcdef' as secret key and ' ' as IV. (a) (c) (e) (b) (d) (f) Fig. 2. Visual test result: Figures (a) and (b) depicts plain-image and plain-image histogram, respectively. Figures (c), (e) and (g) show cipherimages of Salsa20/8, Salsa20/12 and Salsa20/20, respectively. Figures (d), (f) and (h) show cipher-image histograms of Salsa20/8, Salsa20/12 and Salsa20/20, respectively. 3.2 Key Space Analysis It is well known that a large key space is very important for an encryption algorithm to repel the brute-force attack. Salsa20 uses the hash function in a counter mode. It has 512-bit state which is initialized by copying into it 128 or 256-bit key, 64-bit nonce and counter and 128-bit constant. Then the key space can be (12864) (25664) or Apparently, the key space is large enough to resist all kinds of brute-force attacks. 3.3 Histogram Analysis To prevent the leakage of information to attackers, it is important to ensure that encrypted and original images do not have any statistical similarities. The histogram analysis clarifies that, how the pixel values of image are distributed. Fig. 2 shows histogram analysis on test image using salsa20 algorithm. The histogram of original image contains large sharp rises followed by sharp declines as shown in Fig. 2(b). And the histograms of the encrypted images as shown in Figs. 2(d), 2(f) and 2(h) have uniform distribution which are significantly different from original image and have no statistical similarity in appearance. Therefore, the surveyed algorithm does not provide any clue for statistical attack. The encrypted image histogram, approximated by a uniform distribution, is quite different from plain-image histogram. Relatively uniform ( v k 256), (5) 256 k 1 distribution in cipher-image histogram points out good quality of method. Uniformity caused by salsa20/r hash function is justified by the chi-square test [10] as follows: where k is the number of gray levels (256), v k is the observed occurrence frequencies of each gray level (0 255), and the expected occurrence frequency of each gray level is 256. With a significance level of 0.01, it is found that for three variants of salsa20 2 test 2 (255,0.01), implying that the null hypothesis is not rejected and the distribution of the encrypted histogram is uniform. 3.4 Information Entropy (g) 2N 1 1 H ( m) P( m )log 0 i 2, i P( mi ) (h) (6) Information theory is the mathematical theory of data communication and storage founded in 1949 by Shannon [11]. Information entropy is defined to express the degree of uncertainties in the system. It is well known that the entropy H (m) of a message source m can be calculated as:

239 216 where P( mi ) represents the probability of symbol m i and the entropy is expressed in bits. Let us suppose that the source emits 2 8 symbols with equal probability, i.e., m { m1, m2,..., m 2 8 }. Truly random source entropy is equal to 8. Actually, given that a practical information source seldom generates random messages, in general its entropy value is smaller than the ideal one. However, when the messages are encrypted, their entropy should ideally be 8. If the output of such a cipher emits symbols with entropy less than 8, there exists certain degree of predictability, which threatens its security. Let us consider the cipher-images in Fig. 2, the number of occurrence of each gray level is recorded and the probability of occurrence is computed. The entropy is listed in table 1. The value obtained is very close to the theoretical value of 8. This means that information leakage in the encryption process is negligible and the encryption system is secure upon the entropy attack. Salsa20/r Table 1: Entropy value of the cipher-images. Entropy value r = r = r = Measurement of Encryption Quality Plain-image pixels values change after image encryption as compared to their original values before encryption. Such change may be irregular. This means that the higher the change in pixels values, the more effective will be the image encryption and hence the encryption quality. So the encryption quality may be expressed in terms of the total changes in pixels values between the plain-image and the cipher-image. A measure for encryption quality may be expressed as the deviation between the original and encrypted image [12, 13]. The quality of image encryption may be determined as follows: Let P and C denote the original image (plain-image) and the encrypted image (cipher-image) respectively, each of size H W pixels with L grey levels. P( x, y), C( x, y) {0,..., L 1} are the grey levels of the images P and C at position (x, y), 0x H 1, 0 y W 1. We will define H L (P) as the number of occurrence for each grey level L in the original image (plain-image), and H L (C) as the number of occurrence for each grey level L in the encrypted image (cipher-image). The encryption quality represents the average number of changes to each grey level L and it can be expressed mathematically as: We computed the encryption quality of three variants of Salsa20 and depicted the results in Fig. 3. Fig. 3 shows 255 HL( C) HL( P) (7) L 0 EQ. 256 that Salsa20 achieves a better encryption quality in the 8th ciphering round compared to the other variants. Fig. 3. Encryption quality of three variants of Salsa20. The test image is Lena. 3.6 Correlation Analysis There is a very good correlation among adjacent pixels in the digital image [14]. Following Equations are used to study the correlation between two adjacent pixels in horizontal, vertical and diagonal orientations: x and y are intensity values of two neighboring pixels in the image and N is the number of adjacent pixels selected Cov ( x, y ) rxy, Dx ( ) Dy ( ) (8) 1 N N 1 2 Dx ( ) ( xj xj), N N j1 j1 (9) 1 N 1 N 1 N Cov ( x, y ) ( x j x j)( y j y j), N N N j1 j1 j1 (10) from the image to calculate the correlation pairs of two adjacent pixels are selected randomly from image to test correlation. Correlation test image is depicted in Fig. 2(a). Fig. 4 shows the correlation distribution of two adjacent pixels in the plain-image and cipher-image. It is observed that neighboring pixels in the plain-image are correlated too much, while there is a little correlation between neighboring pixels in the encrypted image. Results for correlation coefficients of three variants of Salsa20 are shown in table 2. It is not easy to compare the results by simply observing them in the table. So, for a better comparison, we computed the average of vertical, horizontal and diagonal correlation coefficients in each ciphering round and depicted the results in figure 5. With

240 217 respect to correlation analysis versus ciphering rounds, the experimental results in Figs. 4 and 5 and table 2 show that with the increment of ciphering round, the amount of correlation between adjacent pixels changes. Also, results show that Salsa20/12 dissipates the correlation between pixels better than the other two variants of Salsa20. Table 2: Correlation coefficients of two adjacent pixels in plain-image and cipher-image using 3 variants of salsa20. Correlation Coefficient Analysis Adjacent Pixels Orientation Image Vertical Horizontal Diagonal Plain-image Salsa20/8 Cipher-image Salsa20/12 Cipher-image Salsa20/20 Cipher-image Correlation Analysis Plain-image Salsa20/r r=8 r=12 r=20 Distribution of two Adjacent Pixels Vertical Horizontal Diagonal Fig. 4. Correlation analysis and distribution of two adjacent pixels in the cipher-image. Fig. 5. Average of vertical, horizontal and diagonal correlation coefficients in each ciphering round. 3.7 Differential Analysis In general, a desirable property for an encrypted image is being sensitive to the small changes in plain-image (e.g., modifying only one pixel). Opponent can create a small change in the input image to observe changes in the result. By this method, the meaningful relationship between original image and encrypted image can be found. If one small change in the plain-image can cause a significant change in the cipher-image, with respect to diffusion and confusion, then the differential attack actually loses its efficiency and becomes practically useless. Three common measures were used for differential analysis: MAE, NPCR and UACI [15, 16]. MAE is mean absolute error. NPCR means the number of pixels change rate of ciphered image while one pixel of plain-image is changed. UACI which is the unified average changing intensity, measures the average intensity of the differences between the plainimage and ciphered image. Let C (i, j) and P (i, j) be the gray level of the pixels at the ith row and jth column of an H W cipher and plain-image, respectively. The MAE between these two images is defined in W H 1 MAE C( i, j) P( i, j). W H (11) j 1i 1 Consider two cipher-images, C 1 and C 2, whose corresponding plain-images have only one pixel difference. The NPCR of these two images is defined in (, ) i, j Di j NPCR 100%, (12) W H where D(, i j) is defined as:

241 218 0, if C1( i, j ) C 2( i, j ), Di (, j) (13) 1, if C1( i, j ) C 2( i, j ). Another measure, UACI, is defined by the following formula: 1 C1( i, j) C2( i, j) UACI [ ] 100%. W H i, j 255 (14) Tests have been performed on the Salsa20 encryption scheme on a 256-level gray scale image of size shown in Fig. 2(a). The MAE experiment result is shown in table 3. It is illustrated that there is a slight fluctuation between MAE of 3 variants of Salsa20. There is a slight decrease in MAE as the number of rounds rises up. The larger the MAE value, the better the encryption security. The NPCR and UACI test results are shown in table 4. Results obtained from NPCR show that the encryption scheme's sensitivity to small changes in the input image is under 0.01%. The UACI estimation result shows that the rate influence due to one pixel change is very low. The results demonstrate that a swiftly change in the original image will result in a negligible change in the ciphered image. Unfortunately, Salsa20 encryption scheme fails to satisfy plaintext Sensitivity requirement. The reason lies in Salsa20 mode of operation. Salsa20 hash function operates in counter mode and does not mangle plaintext in a complicated way like other ciphers. Table 3: A comparison between MAE of 3 variants of Salsa20. Method MAE Salsa20/ Salsa20/ Salsa20/ Table 4: NPCR and UACI comparison of Salsa20. NPCR UACI % % 3.8 Sensitivity Analysis An ideal image encryption procedure should be sensitive with the secret key. It means that the change of a single bit in the secret key should produce a completely different cipher-image. For testing the key sensitivity of Salsa20 encryption scheme, the standard test image Lena ( ) is encrypted using the secret key "A = abcdef abcdef" (in hexadecimal) and a slightly modified secret key i.e. "B = abcdef abcdef". Fig. 6 shows key sensitivity test result. It is not easy to compare the encrypted images by simply observing these images. So for comparison, the cipher-images histograms are depicted in Fig. 6. It can be observed that two encrypted images with a slightly different key are quite different. To ease the comparison, the percentage of different pixels between the cipher-images under these two different key is listed in table 5. Therefore, the image encryption scheme under study is highly key sensitive. (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) Fig. 6. Key sensitivity test: cipher-images of Salsa 20/8, Salsa20/12 and Salsa 20/20 using key A are depicted in (a), (b) and (c), respectively. The histograms of Salsa20/8, Salsa20/12 and Salsa20/20 with key A are depicted in (d), (e) and (f), respectively. cipher-images of Salsa 20/8, Salsa 20/12 and Salsa20/20 using key B are depicted in (g), (h) and (i), respectively. The histograms of Salsa20/8, Salsa20/12 and Salsa20/20 with key B are depicted in (j),(k) and (l), respectively. Table 5: The percentage of different pixels between the cipher-images under Key A and B. Percentage of Different Pixels Salsa20/8 Salsa20/12 Salsa20/ % 99.56% 99.59%

242 Performance Analysis Apart from the security consideration, some other issues on image encryption are also important. This includes the encryption speed for real-time processes. In general, encryption speed is highly dependent on the CPU structure, memory size, OS platform, the programming language and also on the compiler options. So, it is pointless to compare the encryption speeds of two ciphers without using the same developing environment and optimization techniques. Despite of the mentioned difficulty, in order to show the effectiveness of the proposed image encryption scheme over existing algorithms, we have undertaken an analysis for the explicit comparison between the encryption speeds of three variants of Salsa20. We evaluated the performance of encryption schemes with an un-optimized MATLAB code. Performance was measured on a machine with Intel core 2 Duo 2.00 GHz CPU with 2 Gbytes of RAM running on Windows XP. The average time used for encryption/decryption on 256 gray-scale images of size for Salsa20/8, Salsa20/12 and Salsa20/20 is respectively about 1.3, 1.7 and 2.6 s (decryption and encryption speed are the same). 4. Conclusion In this paper, a successfully efficient implementation of Salsa20 scheme is introduced for digital image encryption. The encryption system has different variants according to number of ciphering rounds. Salsa20 has a large key space that is resistant to all kinds of brute-force attacks. Theoretical and experimental Research results showed that the scheme has resistance to statistical attacks. The uniformity was justified by the chi-square test. It is shown that Salsa20 hash function generates uniform cipherimages. Information entropy test results indicate that the cipher-image histogram distribution of the encryption scheme is so even that the entropy measured is almost equal to the ideal value. So, the surveyed encryption system is secure upon the entropy attack. The measured encryption quality showed that Salsa20/8 has a better encryption quality than the other two variants. Correlation analysis showed that correlation coefficients between adjacent pixels in the plain-image are significantly decreased after applying encryption function. Comparison between correlation coefficients of different cipher rounds showed that the least correlation occurs at the 12th round of cipher. To quantify the difference between encrypted image and corresponding plain-image, three measures were used: MAE, NPCR and UACI. The MAE experiment result showed that Salsa20/8 has the biggest MAE value among variants of Salsa20. Moreover, the MAE value decreases as the number of rounds increases. Unfortunately, differential analysis showed that Salsa20 encryption scheme fails to satisfy plaintext Sensitivity requirement. The results demonstrate that a swiftly change in the original image will result in a negligible change in the ciphered image. According to sensitivity analysis, the proposed encryption scheme is highly sensitive to the key; a small change of the key will generate a complete different decryption result and cannot get the correct plainimage. According to Performance analysis, Salsa20/8 is faster than the other two variants. All parts of the encryption system were simulated using MATLAB code. According to latter discussions, it seems that Salsa20 can be a good candidate for image encryption. Acknowledgments This research was supported by the Iran Telecommunication Research Center (ITRC) under Grant no /500. References [1] A. Akhshani, S. Behnia, A. Akhavan, H. Abu Hassan, and Z. Hassan, A Novel Scheme for Image Encryption Based on 2D Piecewise Chaotic Maps, Optics Communications 283, pp , [2] A. Jolfaei and A. Mirghadri, An Applied Imagery Encryption Algorithm Based on Shuffling and Baker's Map, Proceedings of the 2010 International Conference on Artificial Intelligence and Pattern Recognition (AIPR-10), Florida, USA, pp , [3] A. Jolfaei and A. Mirghadri, A Novel Image Encryption Scheme Using Pixel Shuffler and A5/1, Proceedings of The 2010 International Conference on Artificial Intelligence and Computational Intelligence (AICI10), Sanya, China, [4] A. Jolfaei and A. Mirghadri, An Image Encryption Approach Using Chaos and Stream Cipher, Journal of Theoretical and Applied Information Technology, vol. 19, no. 2, [5] M. Sharma and M. K. Kowar, Image Encryption Techniques Using Chaotic Schemes: a Review, International Journal of Engineering Science and Technology, vol. 2, no. 6, pp , [6] R. A. Rueppel, Stream Ciphers, Contemporary Cryptology: the Science of Information Integrity, vol. 2, pp , [7] D. J. Bernstein, the Salsa20 Stream Cipher, Proceedings of Symmetric Key Encryption Workshop (SKEW 2005), Workshop Record, [8] D. J. Bernstein, Salsa20 Design, 2005, snuffle/design.pdf. [9] D. J. Bernstein, Salsa20 Specification, 2005, cr.yp.to/ snuffle/design.pdf. [10] P. L'ecuyer and R. Simard, TestU01: A C Library for Empirical Testing of Random Number Generators, ACM Transactions on Mathematical Software, vol. 33, no. 4, Article 22, 2007.

243 220 [11] C. E. Shannon, Communication theory of secrecy systems. Bell Syst Tech J; 28, pp , [12] H. H. Ahmed, H. M. Kalash, and O. S. Farag Allah, Encryption Quality Analysis of RC5 Block Cipher Algorithm for Digital Images, Journal of Optical Engineering, vol. 45, [13] A. Jolfaei and A. Mirghadri, A New Approach to Measure Quality of Image Encryption, International Journal of Computer and Network Security, vol. 2, no. 8, pp , [14] A. N. Pisarchik and M. Zanin, Image Encryption with Chaotically Coupled Chaotic Maps, Physica D, 237, 20, pp , [15] G. Chen, Y. Mao, C. Chui, "A symmetric image encryption scheme based on 3d chaotic cat maps", Chaos, Solitons & Fractals, vol. 12, pp , [16] G. Alvarez and S. Li, "Some basic cryptographic requirements for chaos-based cryptosystems", International Journal of Bifurcation and Chaos, vol. 16, no. 8, pp , Alireza Jolfaei received the Bachelor's degree in Biomedical Engineering in the field of Bio-electric with the honor degree from Islamic Azad University, Science and Research branch, Tehran, Iran in 2007 and Master's degree in Telecommunication in the field of Cryptography with the honor degree from IHU, Tehran, Iran in He was a chosen student in the first meeting of honor students of Islamic Azad University, Science and Research Branch in Currently, he is a teacher assistant (TA) at the faculty and research center of communication and information technology, IHU, Tehran, Iran. His research interest includes: Cryptography, Information Systems Security, Network Security, Image Processing and Electrophysiology. Abdolrasoul Mirghadri received the B.Sc., M.Sc. and PHD degrees in Mathematical Statistics, from the faculty of Science, Shiraz University in 1986, 1989 and 2001, respectively. He is an assistant professor at the faculty and research center of communication and information technology, IHU, Tehran, Iran since His research interest includes: Cryptography, Statistics and Stochastic Processes. He is a member of ISC, ISS and IMS.

244 221 Semantic layer based ontologies to reformulate the neurological queries in mobile environment EL ALLIOUI Youssouf 1 and EL BEQQALI Omar 2 1 Computer Science Department, Faculty of Sciences Dhar el mahraz, University Sidi Mohammed Ben Abdellah Fez, 30000, Morocco 2 Computer Science Department, Faculty of Sciences Dhar el mahraz, University Sidi Mohammed Ben Abdellah Fez, 30000, Morocco Abstract A crucial requirement for the context-aware service provisioning is the dynamic retrieval and interaction with local resources, i.e., resource discovery. The high degree of dynamicity and heterogeneity of mobile environments requires to rethink and/or extend traditional discovery solutions to support more intelligent service search and retrieval, personalized to user context conditions. Several research efforts have recently emerged in the field of service discovery that, based on semantic data representation and technologies, allow flexible matching between user requirements and service capabilities in open and dynamic deployment scenarios. Our research work aims at providing suitable answering mechanisms of mobile requests by taking into account user contexts (preferences, profiles, physical location, temporal information ). This paper proposes an ontology, culled O Neurolog, to capture semantic knowledge a valuable in Neurology domain in order to assist users (doctor, patient, administration ) when querying Neurology knowledge bases in mobile environment. The increasing diffusion of portable devices with wireless connectivity enables new pervasive scenarios, where users require tailored service access according to their needs, position, and execution/environment conditions. Keywords: Neurology, ontology, context-aware, semantic web, query answering, mobile environment. 1. Introduction 1.1 General context In context-aware information provisioning scenarios, it is crucial to enable the dynamic retrieval of available knowledges in the nearby of the user s current point of attachment, while minimizing user involvement in information selection. Data and knowledge discovery in pervasive environments, however, is a complex task as it requires to face several technical challenges at the state of the art, such as user/device mobility, variations (possibly unpredictable) in service availability and environment conditions, and terminal heterogeneity. Users might need to discover knowledges whose names and specific implementation attributes cannot be known in advance, while data providers need to use several and different terms or keywords and whose technical capabilities and conditions at interaction time might be mostly unpredictable beforehand. In medical domain, there is a great need for using mobile devices to access and retrieve neurological data concerning a patient by physicians or interested organisms (insurance, emergency ). Neurological information is available via web pages, stored in ftp sites or relational databases, and textually described in publications. Neurology (from Greek, neuron, "nerve"; and logia, "study") is a medical specialty dealing with disorders of the nervous system. Specifically, it deals with the diagnosis and treatment of all categories of disease involving the central, peripheral, and autonomic nervous systems, including their coverings, blood vessels, and all effectors tissue, such as muscle.[1] The corresponding surgical specialty is neurosurgery. A neurologist is a physician who specializes in neurology, and is trained to investigate, or diagnose and treat neurological disorders. Pediatric neurologists treat neurological disease in children. Neurologists may also be involved in clinical research, clinical trials, as well as basic research and translational research.[2] However, mobile search engines are unable to answer questions about this massive neurological knowledge base other than identifying resources that contain some subset of the specified attributes. The main reason for this limitation is that the representation of biological information on the web is not machine understandable, in the sense that computers cannot interpret words, sentences or diagrams so as to correctly reason about the objects and the relations between them that are implicitly stated in those documents [3]. The primary goal of the semantic web is to add semantics to the current Web, by designing ontologies which explicitly describe and relate objects using formal, logic-based representations that a machine can understand

245 222 and process [4]. This ongoing effort is expected to facilitate data representation, integration and question answering, of critical importance in the life sciences and hospital information system (HIS). Therefore, returned answers scope needs to be filtered according to finer-grained criteria other than administrative or network grouping. All and only those data that are semantically compatible with the user s context should be automatically and transparently made visible to him. The exploitation of user s context-awareness in knowledge discovery helps mobile clients saving time and efforts in information retrieval. On the other hand, the potential of semantic-based discovery has not been fully exploited yet because of various management issues, which seem to be still open. Access terminals usually exhibit relevant differences in resource capabilities, such as display size and resolution, computing power, memory, network bandwidth, and battery. A crucial management crucial issue remains how to provide support for semantic-based discovery to mobile devices with limited capabilities. Semantic support services, e.g., ontology repositories, inference engines and knowledge management tools, typically require a large amount of computational/memory resources that may not fit the properties of mobile devices. In particular, strict limitations exist about the kind of semantic support facilities that can be hosted on resource-constrained devices. For example, executing a reasoning process on board of a resource-limited device, such as a smart phone, might not only consume battery, but more important, it would probably monopolize all available memory resources, thus making the execution of other applications very difficult. 1.2 Running example Let us suppose a physician who needs to consult a patient s clinical data in order to set a proper treatment for him. If the healthcare act is taking place inside the hospital, the doctor will be allowed to access the Hospital Information System (HIS) and to retrieve all the patient s Electronic Health Records (EHRs). Having enough time and knowledge and depending on the usability of the software system the specialist will rule out all the useless pieces of information and will get the ones he is interested in. In the latter situation, a brief report including those pieces of the patient s clinical data which ought to be considered would be very valuable. The clinical procedure which is going to be carried out would determine which data should be part of this summary. For example, is an another member of the patient s family has the same symptoms yet. If true the physician could propose muscular or hepatic biopsy and so realize lumbar punctures, cerebral scanner or IRM. The patient does not walk, does not stand nor sitting does not his head. He/she did not speak, but knows how to understand, she established contacts with people who are very familiar. We think that by joining context to domain knowledge could help improving the summarization of research results for a mobile user. This activity is called personalization and implies recommendations. 1.3 Paper organization The remaining of this document is structured as follows. Section II presents realated works about semantic and user-centric information. In Section IV, we give an overview of the semantic model that we have proposed to capture neurological knowledges in pervasive environment. Section V is devoted to building O Neurolog with protégé- 2000, a well-known ontology editor. Finally, in Section VI some conclusions and directions for future work are pointed out. 2. Related work There are several research streams in personalized recommendation. One stream aims at improving the accuracy of algorithms used in recommendation systems [5]. The second stream is focused on the interaction between a recommendation system and its customers. For instance, some studies investigated the persuasive effect of recommendation messages [7], developed better data collection mechanisms [8], and enhanced awareness about privacy issues [9]. Furthermore, a few studies focused on the effect of moderating factors such as user characteristics and product features on the performance of recommendation [10]. A typical personalization process includes three steps: understanding customers through profile building, delivering personalized offering based on the knowledge about the product and the customer, and measuring personalization impact [11]. Montaner, et al. [12] simplified the process into two stages after analyzing 37 different systems: profile generation and maintenance, and profile exploitation. One key to the performance of personalized recommendation is the nature of the mechanism it uses to build customer profiles. In previous research, a number of different algorithms have been proposed. These systems are classified based on various characteristics. For example, Beyah et al. [13] divided recommendation systems into four types: collaborative filtering (people to people correlations), social filtering, non-personalized recommendation systems, and attribute-based recommendations. Wei et al. [14] classified recommendation systems into six approaches based on the type of data and technique used to arrive at recommendation decisions. These approaches are

246 223 recommendations based on: popularity, content, association, demographics, reputation and collaboration. Schafer et al. [15] argues that recommendation systems may be categorized by the data they use, which includes original data search, expert ratings, statistical rankings, content-based recommendation, object associations, and user associations. A system using the original data search does not analyze user profiles. Rather, it provides a flexible user interface and allows users to query the database directly. Expert ratings use comments or ratings from experts in the domain (e.g., music or movies) and make recommendations accordingly. Statistical ranking is a simple but popular method, which uses descriptive statistical data such as order frequency to rank different objects for recommendation. Content-based recommendation uses attributes of the content to match user interest profiles. Object associations use found relationships among objects to make recommendations. A popular example is the market basket analysis that finds items often ordered simultaneously by a customer. There exist three popular methods for extracting user preferences: direct, semi-direct, and indirect extraction [16]. The direct approach asks the user to tell the system explicitly what he prefers. For instance, a knowledge management system may list all document categories and ask the user to check those of interest to him. The semidirect approach asks the user to rate all documents he has read and gains knowledge of user preference through these ratings [17]. The indirect approach captures user preference from browsing behavior recorded by the computer, such as hyperlink clicks [18] or time spent on reading a document [19]. For making recommendations, two approaches are popular: collaborative filtering and content-based filtering [20]. Collaborative filtering is an approach to making recommendations by finding correlations among the shared likes and dislikes of the system users. It is capable of finding items of potential interest from ratings of previous users. Content-based filtering makes recommendation by analyzing the items rated by the user and the item to be recommended [21]. Generally speaking, content-based information filtering has proven to be effective in locating textual documents relevant to a topic [22]; whereas collaborative filtering is popular with e-tailors that sell physical products such as in Amazon.com [23]. The integration of these two types of filtering is reported to exhibit good performance in some domains (e.g., [5]). Recently, with the advent of semantic technologies, personalization has received more attention based on exploitation of domain ontologies. Liang et al [37] adopts a semantic-expansion approach to build the user profile by analyzing documents previously read by the person. Once the customer profile is constructed, personalized contents can be provided by the system. An empirical study using master theses in the National Central library in Taiwan shows that the semantic-expansion approach outperforms the traditional keyword approach in catching user interests. The proper usage of this technology can increase customer satisfaction. Personalized recommendations are applied to both physical and digital information products. Recent application domains include books [23], news [24], movies [25], advertisements [24], one-to-one marketing campaigns [6], and bundle purchases [26]. Although Amazon.com has been applauded for its success in using personalized recommendation, information goods such as news and documents in digital libraries are popular for personalization on the Internet due to its nature of content modularity. The application of personalized recommendation to information goods also has a long history. For example, Mock and Vemuri [27] developed the Intelligent News Filtering Organization System (INFOS) that reorganizes the order of news based on revealed preferences. The results of a pilot test show that INFOS can effectively reduce the reader s search load. Sakagami and Kamba [16] developed the ANATAGONOMY system that learns reading preferences from the browsing behavior of a user; a learning engine and a scoring engine produce personalized Web news. Billsus and Pazzani [28] designed an intelligent news agent to automatically learn the user's preferences and provide personal news. Mooney and Roy [22] proposed a content-based book recommending system that utilizes information extraction for text categorization and produces accurate recommendations. Lai et al. [29] designed a news recommendation system based on customer profiles to provided customized Internet news. Fan, et al. [30] presented a method for generating profiles of news readers. Liang, et al. [31] also reported experimental findings that personalized services produced significantly higher user satisfaction for online news readers. 3. General architecture 3.1 Framework architecture In this section, we further describe the components in the application are listed as follows (Fig.1).

247 224 Figure 1. Application architecture The Metadata Manager (MM) provides templates to support the user in the task of specifying user/device/service profiles. The use of templates ensures that metadata are encoded in the correct format, i.e., compliant to O profile ontology (see Fig. 2), and offers to non technical users a friendly interface for profile specification. MM does not perform semantic reasoning, but only syntactic compliance checking. The Discovery Manager (DM) is responsible for determining and maintaining the list of returned answers that are accessible to the mobile user according to her context. The Context Manager (CM) is responsible for creating user contexts when new users initiate their discovery sessions, for monitoring changes in both created user contexts and in relevant external environment conditions, e.g., the addition of new tuples of informations, for notifying changes to interested entities, and for updating user contexts accordingly. The Query Processor (QP) is in charge of collecting and processing user requests for neurological data. QP interacts with the user to specify required informations capabilities and user preferences. In particular, QPE translates value preferences expressed by the user at access request time into property restrictions. The Profile Matching Engine (PME) is responsible for performing a matching algorithm between user/device requirements and answers capabilities, taking user preferences into account. PME is requested to perform its algorithm in two cases, i.e., when DM needs to determine the list of visible services for each user (i.e., the information whose profile is semantically compatible with user/device profile) and when QP needs to resolve a specific user query. 3.2 User proxy The User Proxy is an application-independent middleware component that represents a portable device on the fixed network. We adopt the general emerging design guideline of dynamically extending the Internet infrastructure with proxies acting on behalf of (possibly disconnected) limited devices [49]. Proxies can handle several complex management tasks transparently to client devices by hiding network heterogeneity and managing network dynamicity. Our architecture associates one UP with each portable device, with a 1-to-1 mapping. UP covers various management roles, including retrieving the profiles of its companion user/device and coordinating with discovery management services during a discovery session. In addition, UP has the crucial responsibility of configuring the discovery management facilities on the device. Based on the device profile, UP decides where to allocate the various discovery management services, either completely/partially on board of its companion device or remotely on other trusted devices. In particular, UP broadcasts its device static profile to nearby devices specifying which discovery management services its companion device hosts on-board, and receives similar advertisements from nearby devices. UP behaves differently in the case of rich- or resource-constrained devices. In the case of rich devices, UP runs management functions and instantiates all discovery management services (MM, DM, CM, QP and PME) on-board. Having completely on-board discovery management facilities allows to better preserve user privacy since requirements/capabilities and personalized service view are locally stored. In addition, on-board reasoning may be useful in case the user s device experiences frequent disconnections or poor bandwidth connectivity. On the contrary, in the case of resource-constrained devices, UP s behavior is a tradeoff between technical device characteristics and privacy needs. In particular, UP decides whether to perform its management operations on-board or remotely, and which discovery management services to instantiate on-board, based on dynamic device profile data, such as CPU, memory size and battery level. Discovery facilities that cannot be hosted on-board are retrieved by querying nearby devices. It is worth mentioning that privacy issues might arise when user data are transmitted to foreign nodes. The choice about the desired tradeoff between privacy and discovery efficiency is left to the user. Our metadata model allows the user to specify desired configuration choices in the user requirement profile part. 3.3 Process query mechanisms In Fig. 2 we further describe the components in the Process query:

248 225 Answer reduction: The number of combined answers will be reduced by exploiting inference rules available in O'profile. The aim is to take into account limited characteristics of mobile devices (weak bandwidth, cache memory, reduced screen) when processing queries and displaying answers. 4. Preliminaries Figure 2. Process Query Query reformulation: After a user issues a Query request, this query request is sent into the mediator where the query reformulation component in the mediator receives it. The query reformulation component passes a reasoning request to the inference engine and accesses the O Neurolog in order to find out the relationships that are implicit in the user original Query request. Query decomposition: After the query decomposition receives the reformulated query, the reformulated query is decomposed with the assistance of the mapping. So query decomposition could use such information to decompose the query into several sub-queries that are respectively applicable to their target information sources. Query translation: The wrapper receives the corresponding sub-queries. The wrapper translates the generic sub-queries into native queries. Afterwards, such native queries are issued to the corresponding source in order to find out the data. Result packaging: It is a one-on-one mapping between a wrapper and a type. The wrapper packages the results into a normal form. Result composition: The query composition component collects several packaged results sent back from several wrappers according to the previous decomposed result. 4.1 The semantic model and Formalization of User contexts The semantic model is based on the use of O Neurolog, an Ontology of Neurology science, and a formal specification of user contexts. Consequently, two different kinds of knowledge are to be managed by such mobile system: Domain knowledge about the neurology sciences. Context knowledge about the users where the domain knowledge will be used; for our doctor, this would be a vocabulary to briefly describe the situation of the patient he is going to attend. In this work we will use ontologies to materialize our model since they have been remarked to be a suitable formalism to build a Knowledge Base including context knowledge. Ontologies are defined as formal, explicit specifications of a shared conceptualization [32], encode machine-interpretable descriptions of the concepts and the relations in a domain using abstractions as class, role or instance, which are qualified using logical axioms. Properties and semantics of ontology constructs are determined by Description Logics (DLs) [33], a family of logics for representing structured knowledge which have proved to be very useful as ontology languages. Context is a complex notion that has many definitions. Here, we consider context as any key information characterizing the user, e.g., user preferences, needs, location, and any useful information about the environment where he operates, e.g., date, time, on-going activities and interactions with services and/or other users. Let us give some basic definitions to more limit the frontiers of our study: Personalization is defined as the ability to provide content and services tailored to individuals based on knowledge about their preferences and behavior or the use of technology and customer information to tailor electronic commerce interactions between a business and each individual customer [11]. A major vehicle that makes personalization possible is the recommendation system that matches potential products with customer preferences. A recommendation system is a computer-based system that uses profiles built from past usage behavior to provide

249 226 relevant recommendations. For instance, a video rental store may analyze historical rental data to recommend new movies to individual customers. An online newspaper may customize news services to different readers based on their reading interests. The objective of a recommendation system is to retrieve information of interest to users from a large repository. Such systems can reduce the search efforts of users and mitigate the encumbrance of information overload [31]. In order to overcome user-context requirements, we focused on a preference-driven formalization: In fact, mobile clients are described in terms of profiles and preferences. User profiles are composed of both dynamic and static metadata. Dynamic properties include, for example, user locality and state, while static properties are grouped into three categories (analogously to the case of a service): identification, capabilities and requirements. Identification information, such as an ID code, a string or an URL, is used to name and identify the user. Capabilities represent the user s abilities and capacities, such as speaking a language. User requirements describe userdefined constraints that must be always satisfied during service provisioning. Fig. 2 shows an example of user static profile. OWL DatatypeProperty construct. The basic preference ontology is represented in Fig. 4 [35]. As shown in the diagram, a value preference defines the desired property value for a given capability, one or more explicit alternative values, and the kind of acceptable constraint relaxation. Let us note that, in case of a datatype preference, such relaxation defines an interval of acceptable values, based on the preferred numerical value, while in case of an object preference. Figure 4. Basic preference ontology Figure 3. Static user profile specification Preferences allow the user to express desired choices about search results and to relax constraints on resources requests [34]. The semantic model defines two types of preference: value preferences and priority preferences. Value preferences specify the preferred value for a resource property. Depending on the property value type, a preference might be either object or data type. Value preferences are modeled using an ontological approach and expressed in OWL. In particular, object preferences are modeled by means of the OWL ObjectProperty construct, while data type preferences are modeled by means of the We define three possible semantic relations between the ideal value expressed in the request and other acceptable values, namely: exact (default), plug-in, subsumes [36]. Exact represents the case of a perfect match between required and offered capability for the property constrained by the preference. In the plug-in case, request subsumes offer, therefore the user may consider acceptable a service providing a more specific value than the requested one. For example, a user looking for a service providing news might accept a service providing news only provided by newspapers. In the subsumes case, offer subsumes request, hence the user may decide to accept a service whose capability is more general than the requested one. Since a request for service may include several capabilities and a capability might have multiple properties, semantic model allows the user to define a priority order amongst capabilities/properties by means of priority preferences. For example, let us consider the capability of providing news. If a preference assigns higher priority to language rather than topics, the former will be tested first when performing matching and a service with a good value for this property will be considered more compatible than another having a better value on the topics capability. 4.2 Neurology The field of computer consultation has passed through three historical phases. In the first, attempts were made to improve on human diagnostic performance by rejecting the

250 227 methods used by clinicians and substituting various statistical techniques [38]. Statistical methods proved to be accurate for small diagnostic domains, but impractical for application to realworld problems [39]. In the second phase, it was recognized that human problem solving methods were deceptively powerful [40] and attempts were made to capture diagnostic logics as fixed decision protocols [41]. Although these met with success in some areas, it was recognized that such protocols suffered from inflexibility [42]. At present, efforts are directed towards building systems which incorporate expert problem solving strategies, but which retain flexibility - artificial intelligence systems [43]. Neurology is a medical specialty concerned with the diagnosis and treatment of all categories of disease involving the central, peripheral, and autonomic nervous systems, including their coverings, blood vessels, and all effector tissue, such as muscle. [44] Neurological disorders are disorders that can affect the central nervous system (brain and spinal cord), the peripheral nervous system, or the autonomic nervous system. Conditions can include but are not limited to: Brain injury, spinal cord and peripheral nerves Cerebral palsy Cerebrovascular disease, such as transient ischemic attack and stroke. Epilepsy Headache disorders such as migraine, cluster headache and tension headache Infections of the brain (encephalitis), brain meninges (meningitis), spinal cord (myelitis) Infections of the peripheral nervous system Movement disorders such as Parkinson's disease, Huntington's disease, hemiballismus, tic disorder, and Gilles de la Tourette syndrome Sleep disorders 4.3 Noy s approach - driven Ontology design All ontologies were created using OWL language and Protégé Ontology Editor Proposals to design ontologies from the theoretical and practical point of view can be found in [45] and they include brain storming, scope definition, motivating scenarios, competency questions, creation of bag of concepts, creating concept hierarchy, properties, domain and range, amongst others. Authors of these papers agree in the fact that there is no a correct methodology to design an ontology, but they also agree in seeing this process iterative and application oriented. In the ontology design process described in this paper their proposed criteria is reused when possible and mapped to the OWL language. The O Neurolog ontology was designed following semantic web best practices [46] and implemented using the OWL-DL. Briefly, we follow the methodology described by [45], but apply a three layer ontology design with increasing expressivity [47]. The ontology design process can be summarized in the following steps: Define the scope and requirements (use cases) of the ontology. Determine essential concepts, reusing existing ontologies when possible. Construct a primitive hierarchy of concepts. Map to an upper level ontology. Assign relations between concepts and attributes. Design a second layer of complex definitions that imposes additional logical restrictions and establishes necessary and/or necessary and sufficient conditions. Repeat steps 2 6 until requirements are satisfied from semantic query answering over populated ontologies. Step 1. Define the scope and requirements of the ontology : The scope of the O Neurolog project was to model the entities and their relations found in the neurology such that one could effectively search this knowledge base using expected relations rather than with a collection of keywords. Step 2. Determine essential concepts, reusing existing ontologies when possible : An initial set of concepts was manually collected to represent the type and attributes of the data located in the data files. Concept definitions were obtained from the neurology science glossary, WordNet and Wikipedia and were manually added to the class using the rdfs:comment annotation property for human consumption. Step 3. Construct a primitive hierarchy of concepts : A hierarchy of concepts for the O Neurolog primitive ontology was developed by iteratively categorizing the set of necessary classes. Step 4. Map to an upper level ontology : Upper level ontologies promise increased semantic coherency by helping to identify the basic type of domain entities and imposing restrictions on the relationships that these entities may hold. An upper level ontology should be carefully selected according to the purpose and scope of the ontology designed.

251 228 Step 5. Assign relations between concepts and attributes : An essential part of the modeling process is to establish which relations exist between the set of concepts. To do this, we need two things: (1) a set of basic relations to draw from and (2) generate a kind of topics map. Step 6. Design a second layer of complex definitions that imposes additional logical restrictions and establishes necessary and/or necessary and sufficient conditions. The primitive hierarchy of concepts was augmented and refined with logical restrictions to reflect knowledge.. To ensure the proper classification of data and knowledge discovery, necessary and sufficient conditions were added to the ontology. Necessary conditions were added where obvious. Necessary and sufficient conditions were added for single property varying entities or in the design of a value partition. 5. Building O Neurolog with Protégé Presentation of Protégé-2000 [48] Protégé-2000 is an integrated software tool used by system developers and domain experts to develop knowledge-based systems. Applications developed with Protégé-2000 are used in problem-solving and decisionmaking in a particular domain. While our earlier Protégé/Win, like a classical database system, separately defined classes of information (schema) and stored instances of these classes, Protégé-2000 makes it easier to work simultaneously with both classes and instances. Thus, a singular instance can be used on the level of a class definition, and a class can be stored as an instance. Similarly, slots, which earlier were employed only within classes, are now elevated to the same level as classes. With this new knowledge model we also facilitate conformance to the Open Knowledge Base Connectivity (OKBC) protocol for accessing knowledge bases stored in knowledge representation systems. Finally, applications on top of these components are also executed within the integrated Protégé-2000 environment. The Protégé-2000 tool accesses all of these parts through a uniform GUI (graphical user interface) whose top-level consists of overlapping tabs for compact presentation of the parts and for convenient co-editing between them. This "tabbed" top-level design permits an integration of (1) the modeling of an ontology of classes describing a particular subject, (2) the creation of a knowledge-acquisition tool for collecting knowledge, (3) the entering of specific instances of data and creation of a knowledge base, and (4) the execution of applications. The ontology defines the set of concepts and their relationships. The knowledge-acquisition tool is designed to be domainspecific, allowing domain experts to easily and naturally enter their knowledge of the area. The resulting knowledge base can then be used with a problem-solving method to answer questions and solve problems regarding the domain. Finally, an application is the end product created when the knowledge base is used in solving an end-user problem employing appropriate problem-solving, expert-system, or decision-support methods. The main assumption of Protégé-2000 is that knowledge-based systems are usually very expensive to build and maintain. For example, the expectation is that knowledge-based system development is a team effort, including both developers and domain experts who may have less familiarity with computer software. Protégé-2000 is designed to guide developers and domain experts through the process of system development. Protégé-2000 is designed to allow developers to reuse domain ontologies and problem-solving methods, thereby shortening the time needed for development and program maintenance. Several applications can use the same domain ontology to solve different problems, and the same problem-solving method can be used with different ontologies. Protégé-2000 is currently being used in clinical medicine and the biomedical sciences, although it can be used in any field where the concepts can be modeled as a class hierarchy. 5.2 O Neurolog s screenshots According to this ontology (see Fig. 5), the support of a comatose patient is based on the following steps: Immediate measures which are consisting to maintain vital functions Look for and treat shock Find and treat the cause of diagnosis easy Clinical examination of the patient Request additional tests depending on the orientation CLQ etiological treatment Monitoring Figure 5. O Neurolog ontology

252 229 among others. In fact, Data and Knowledge Discovery is a crucial activity in pervasive environments where mobile users need to be provided with personalized results due to limited physical characteristics of portable devices. Semantic languages seem to represent a suitable means to realize advanced discovery solutions that overcome the intrinsic limitations of traditional models. As future work, we plan to provide suitable and relevant answering mechanisms of mobile requests, including user s context and personalization items. Another interesting future issue we envision to deal with is the resolution of conflicts that may arise between value or priority preferences. We believe that a possible approach may be the definition of meta-preferences, as we have began the formalization in section III Figure 6. Example of cathegory Emergency For example, immediate measures (Fig. 6) can be distinguished: Recovery position Cannula Mayo gastric probe Oxygen: nasal intubation-mechanical ventilation (depending on the depth of coma), 6. Conclusion and perspectives In this work, we described a first approach to describe logically, integrate and query neurological data from biological databases using the OWL-DL ontology language. Several features make this work unique. First, we designed a domain specific ontology, called O Neurolog that incorporates concepts drawn from raw data and expert knowledge. We described the methodology used for semantically augmenting biological databases in absence of domain specific ontologies and discuss its scope and characteristics. Our methodology is based on Noy s approach. However, significant challenges remain in realizing the potential of the semantic web, such as the automated creation and population of ontologies, the efficient storage and reasoning with large amounts of ontological data for reasoning and the development of intuitive interfaces References [1] urology pdf. Last see 11/04/2010. [2] Last see 11/04/2010. [3] Robu I, Robu V, Thirion B. An introduction to the Semantic Web for health sciences librarians. J Med Libr Assoc 2006;94(2): [4] Berners-Lee T, Hall W, Hendler J, Shadbolt N, Weitzner DJ. Computer science. Creating a science of the Web. Science 2006;313(5788): [5] H.J. Ahn, Utilizing popularity characteristics for product recommendation, International Journal of Electronic Commerce 11 (2) (2006) s [6] S.S. Weng, M.J. Liu, Feature-based recommendation for one-toone marketing, Expert Systems with Applications 26 (4) (2004) [7] S.N. Singh, N.P. Dalal, Web home pages as advertisements, Communications of the ACM 42 (8) (1999) [8] B.P.S. Murthi, S. Sarkar, The role of the management sciences in research on personalization, Management Science 49 (10) (2003) [9] N.F. Awad, M.S. Krishnan, The personalization privacy paradox: an empirical evaluation of information transparency and the willingness to be profiled online for personalization, MIS Quarterly 30 (1) (2006) [10] L.P. Hung, A personalized recommendation system based on product taxonomy for one-to-one marketing online, Expert Systems with Applications 29 (2) (2005) [11] G. Adomavicius, A. Tuzhilin, Personalization techniques: a process-oriented perspective, Communications of the ACM 48 (10) (2005) [12] M. Montaner, B. Lopez, L.D.A. Mosa, A taxonomy of recommender agents and the Internet, Artificial Intelligence Review 19 (2003) [13] G. Beyah, P. Xu, H.G. Woo, K. Mohan, D. Straub, Development of an instrument to study the use of recommendation systems, Proceedings of the Ninth Americas Conference on Information Systems, Tampa, FL, USA, 2003, pp [14] C.P. Wei, M.J. Shaw, R.F. Easley, A survey of recommendation systems in electronic commerce, in: R.T. Rust, P.K. Kannan (Eds.), e-service: New Directions in Theory and Practice, M.E. Sharpe Publisher, [15] J.B. Schafer, J.A. Konstan, J. Riedl, E-commerce recommendation applications, Data Mining and Knowledge Discovery 5 (1) (2001)

253 230 [16] H. Sakagami, T. Kamba, Learning personal preferences on online newspaper articles from user behaviors, Computer Networks and ISDN Systems 29 (1997) [17] K. Lang, et al., NewsWeeder: learning to filter netnews, Proceedings of the 12th International Conference on Machine Learning, Tahoe City, California, 1995, pp [18] D.W. Oard, J. Kim, Implicit feedback for recommender systems, Proceedings of AAAI Workshops on Recommender Systems, Madison, WI, 1998, pp [19] T.P. Liang, H.J. Lai, Discovering user interests from web browsing behavior: an application to Internet news services, Proceedings of the 35th Annual Hawaii International Conference on System Sciences, Big Island, Hawaii, USA, 2002, pp [20] M. Balabanović, Y. Shoham, Fab: content-based, collaborative recommendation, Communications of the ACM 40 (3) (March 1997) [21] M.J. Pazzani, A framework for collaborative, content-based and demographic filtering, Artificial Intelligence Review 13 (5 6) (1999) [22] R.J. Mooney, L. Roy, Content-based book recommending using learning for text categorization, Proceedings of the fifth ACM conference on Digital libraries, San Antonio, Texas, United States, 2000, pp [23] G. Linden, B. Smith, J. York, Amazon.com recommendations: itemto-item collaborative filtering, IEEE Internet Computing 7 (1) (2003) [24] J.W. Kim, K.K. Lee, M.J. Shaw, H.L. Chang, M. Nelson, R.F. Easley, A preference scoring technique for personalized advertisements on Internet storefronts, Mathematical and Computer Modeling 44 (2006) [25] R. Mukherjee, N. Sajja, S. Sen, A movie recommendation system an application of voting theory in user modeling, User Modeling and User-Adapted Interaction 13 (2003) [26] R. Garfinkel, R. Gopal, A. Tripathi, F. Yin, Design of a shopbot and recommender system for bundle purchases, Decision Support Systems 42 (2006) [27] K.J. Mock, V.R. Vemuri, Information filtering via hill climbing, WordNet, and index patterns, Information Processing & Management 33 (5) (1997) [28] D. Billsus, M.J. Pazzani, A personal news agent that talks, learns and explains, Proceedings of the Third Annual Conference on Autonomous Agents, Seattle, Washington, USA, 1999, pp [29] H.J. Lai, T.P. Liang, Y.C. Ku, Customized Internet News Services Based on Customer Profiles, Proceedings of the Fifth International Conference on Electronic Commerce, Pittsburgh, PA, USA, 2003, pp [30] W. Fan, M.D. Gordon, P. Pathak, Effective profiling of consumer information retrieval needs: a unified framework and empirical comparison, Decision Support Systems 40 (2005) [31] T.P. Liang, H.J. Lai, Y.C. Ku, Personalized content recommendation and user satisfaction: theoretical synthesis and empirical findings, Journal of Management Information Systems 23 (3) (2006) [32] Studer, R., Benjamins, V. R., & Fensel, D. (1998). Knowledge engineering: Principles and methods. Data and Knowledge Engineering, 25(1 2), [33] Baader, F., Calvanese, D., McGuinness, D., Nardi, D., & Patel- Schneider, P. F. (2003). The Description Logic handbook: Theory, implementation, and applications. Cambridge University Press. Semantic'Discoveries [34] W. Kiessling, Foundations of preferences in database systems, in: Proceedings of the 29th International Conference on Very Large Data Bases, Hong Kong, China, [35] IHMC CMaps, Last see [36] M. Paolucci, T. Kawmura, T. Payne, K. Sycara, Semantic matching of web services capabilities, in: Proceedings of the First International Semantic Web Conference, Springer LNCS 2342, Sardinia, Italy, [37] A semantic-expansion approach to personalized knowledge recommendation Decision Support Systems, Volume 45, Issue 3, June 2008, Pages Ting-Peng Liang, Yung-Fang Yang, Deng-Neng Chen, Yi-Cheng Ku [38] R. D. Couch, Computer diagnosis review and comment, Path. Ann. 11, (1976). [39] G. A. Gerry. Knowledge based systems for clinical problem solving, Decision Making and Medical Care, F. T. dedombal,-ed., p. 23.North-H&land, New York (1976). [40] D. Swanson, A. S. El&n, L. S. Schulman and S. A. Sprafka, Psychological analysis of physician expertise: implications for the design of physician support systems, Medinfo 77, p North- Holland, New York (1977). [41] H. L. Bleich, Computer evaluation of acid-base disorders, J. clin. Invest. 48, (1969). [42] V. A. Catanzarite, A. G. Greenburg and H. J. Bremermann, Computer aided diagnosis: decision strategies and the clinical acceptability of consultation systems, Proceedings of the 14th Annual Hawaii international Confmence on System Sciences, Vol. III-Medical Information Processing, pp Honolulu, Hawaii (1981). [43] P. Szolovits and S. Pauker, Categorical and probabilistic reasoning in medical diagnosis, Artif Intell. 11, (1978). [44] urology pdf. Last see 11/04/2010. [45] Noy NF, McGuinness DL. Ontology development 101: a guide to creating your first ontology; Report No.: Stanford Knowledge Systems Laboratory Technical Report KSL-01-05, Stanford Medical Informatics Technical Report SMI [46] Smith B, Ceusters W, Klagges B, Kohler J, Kumar A, Lomax J, et al. Relations in biomedical ontologies. Genome Biol 2005;6(5):R46. [47] Dumontier M, Villanueva-Rosales N. Three-layer OWL ontology design. In: Second international workshop on modular ontologies (WOMO07), Whistler, Canada, [48] Last see 11/04/2010. [49] P. Bellavista, A. Corradi, R. Montanari, C. Stefanelli, Contextaware middleware for resource management in the wireless Internet, IEEE Transactions on Software Engineering 29 (12) (2003)

254 231 SMA and Mobile Agents Actors for Distributed Testing Salma Azzouzi 1,Mohammed Benattou 2, My El Hassan Charaf 3, Jaafar Abouchabaka 4 1 Laboratory Of Mathematics and Computer, University Ibn Tofail Kenitra, , Morocco 2 Laboratory Of Mathematics and Computer, University Ibn Tofail Kenitra, , Morocco 3 Laboratory Of Mathematics and Computer, University Ibn Tofail Kenitra, , Morocco 4 Laboratory Of Mathematics and Computer, University Ibn Tofail Kenitra, , Morocco Abstract The Multi Agent Systems are a paradigm of the most promising technology in the development of distributed software systems. They include the mechanisms and functions required to support interaction, communication and coordination between the various components of such a system. In the context of distributed test the activity of the test is performed by a set of parallel testers called PTCs (Parallel Test Components). The difficulty is in writing communication procedures of coordination and cooperation between the PTCS. In this context, we combine in this paper adaptable mobile agent with multi-agent systems technology to enhance the distributed test. The objective of this work is to eventually have a platform for compliance testing of distributed applications. Keywords: Distributed Testing, SMA, Mobile Agent, Actor, Mobile Actor. 1. Introduction Agent-based software engineering has become the key issues in modern system design. It provides a high-level abstraction and services for developing, integrating and system managing of distributed system applications. The component-based software engineering has promised, and indeed delivered significant improvements in software development. Last years, products, models, architecture and frameworks suggest several key issues that will contribute to the success of open distributed systems. However, in practice, the development of distributed systems is more complex. The design process must take into account: the mechanisms and functions required to support interaction, communication and coordination between distributed components. Examples of such applications are systems comprising a set of components that broadcast commands among themselves, multicast controllers that coordinate messages between components, the systems using the alarm signals in non deterministic order, network and application systems, event queues, etc. The typical reaction of such systems is the generation of errors sets: time-outs, locks, channels and network failures. Our preliminary experience, in the design and the implementation of the distributed testing application [1] of the broadcast and multicast channels. The basic idea of the proposed work [2] is to coordinate the testers by using a communication service parallel to the IUT through a multicast channel. Each tester interacts with the Implementation under Test (IUT) only through the attached port and communicates with the other testers through the multicast channel. The implementation of the proposed model has shown that the execution of distributed testers arise many time-outs problems influencing fault detection during the testing process. Object-oriented based, the development of such applications using the ``classical" objects is very difficult, like many possible ways of activating or deactivating event sources and to dispatch the call-backs. Others proposed research work based on the temporal Finite State Machine define the timing constraint, which the distributed testing application must be respected in realtime execution [3]. However, the implementation of these models generates a great number of synchronized

255 232 exchange messages. We have proposed different ways to design and implement distributed testing systems using CORBA event services, active objects, and mobile agents. In this paper, we show how to use the concept of agent and actor of the Javact platform gives a number of advantages, besides using a mobile agent include overcoming network latency, reducing network load, performing autonomous and asynchronous execution, and adapting to dynamic environments ([4], [5]) We envision a model of adaptive mobile agent, able to dynamically reconfigure to adapt to variations in its execution context (For example, If one of the testers crashes. what should the mobile agent do?). Indeed in proposed prototype our testers are agent actors ([6], [7]) which integrate the concepts of agent and the concept of appointment for the communication. Each agent tester must create other agents to send messages to the actors whom it knows and to dynamically change behaviour by defining its behaviour for the next treatment. The paper is structured as follows. Section 2 describes the architecture and modelling concept of distributed testing application and raises some synchronization problems in distributed testing implementation. Section 3 describes how JavAct agent actors are used in our model. Section 4 gives some conclusions and identifies future works 2. Distributed Test The principle of the test is to apply input events to the IUT 1 and compare the observed outputs with expected results. A set of input events and planned outputs is commonly called a test case and it is generated from the specification of the IUT. We consider a test as a conform test if its execution is conform to its specification. 2.1 Architecture The basic idea of the proposed architecture is to coordinate parallel testers called PTCS (Parallel Test Components) using a communication service in conjunction with the IUT. Each tester interacts with the IUT through a port PCO 2, and communicates with other testers through a multicast channel (Figure1). Fig. 1 :Test Architecture An IUT (implementation under test) is the implementation of the distributed application to test. It can be considered as a "black-box", its behavior is known only by interactions through its interfaces with the environment or other systems. Each tester sends some stimulus to the IUT via their interfaces called PCOs (Points of Control and Observations) and observes the reactions. The external behavior of the IUT is observable via another interface type called IAP (Implementation Access Points). The difference between the PCO and the IAP is that PCOs are the logical points where communications are made, but the IAPs are the physical access points of the IUT. To synchronize the execution of testers, PTCS exchange coordination message. These messages encapsulate information that allows the test system to solve the problems of controllability and observability in order to obtain an optimal test. An example illustrating these problems is well detailed in [2]. 2.2 Modeling by automaton To approach the testing process in a formal way, the specification and the IUT must be modeled using the same concepts. The specification of the behavior of a distributed application is described by an automaton with n-port [8] (FSM Finite State Machine) defining inputs and the results expected for each PCO. We denote Σk the input alphabet of the port k (PCO number k) and Γk the output alphabet of the port k. Figure 2 gives an example of 3p-FSM with set state FSM) with Q = {q0, q1, q2, q3, q4, q5}, q0 initial state, Σ1 = {a}, Σ2 = {b}, Σ3 = {c}, and Γ1 = {w, x}, Γ2 = {y}, Γ3 = {z}. 1 Implementation Under Test 2 Point of Control and Observation

256 233 For each message αi to send to the IUT or a coordination message, the tester supports the process of sending this message. If αi is a expected message from the IUT or a coordination message, the tester waits for this message. If no message is received, or if the received message is not expected, the tester returns a verdict Fail (fail). If the tester reaches the end of its local test sequence, then it gives a verdict Accept (accepted). Thus, if all testers return a verdict Accept, then the test system ends the test with a global verdict Accept. Fig. 2 An example of 3p-FSM A test sequence of an np-fsm automaton is a sequence in the form:!x 1? y 1!x 2? y 2! x t?y t that for i = 1,..,t : x i, n y i k 1 Γk and for each port k y i Γ k 1. -!x i :Denotes sending the message xi to IUT. -?y i :Denotes the reception of messages belonging to the yi from the IUT. An example of a test sequence of 3p-FSM illustrated in figure 2 is:!a?{x.y}!b?{x.y}!c?{z}!a?{x.z}!b?{x.y}!c?{w.z}!a?{x.z}!c?{y.z} (1) 2.4 Synchronization Problem In the distributed test, each tester (PTC) is running its local test sequence produced from the global test sequence of the IUT. Thus, the PTCs are working together but independently, which leads us to manage the problem of synchronization of testers. We will run the first part of each local test sequence w f1, w f2, w f3 from w1, w2, w3, as follows: (3) Running w f1, w f2 and w f3 should give the result shown in Figure 3(a) but the execution of our prototype provides an incorrect result given in Figure 3 (b). Generally, test sequences are generated from the specification of the IUT and characterized by fault coverage. The faults covered by the FSMs methods are: output faults, transfer faults or combination of both of them [9]. 2.3The test procedure The works ([2],[10]) allow generating local test sequences for each tester, thus defining the behavior of the test application in a PCO. In fact, each tester executes a local test sequence, built from the global test sequence of the IUT. A local test sequence has the form α 1α2 α n, where each αi is either: -!x : message sent (x Σk de IUT) -?y : message received (y Γk de IUT) -!C h1,...,hr : coordination message C sent to testers h 1,..h r. -?C h : coordination message received from the tester h Fig. 3 Example of the synchronization problem

257 234 Indeed, in the last diagram the second tester sends the message b the IUT before the first tester receives the message x from the IUT. So, the execution of local testing is not conform with the specification in (1), where the message b must be sent only if all messages due to the sending of a by the tester- 1 are received by the IUT. In [10] the problem is solved by blocking the sending of the message b until the reception of all messages due to the sending of a by the concerned testers. The algorithm [2] applied to the global test sequence (1) generates the local test sequences synchronized for each tester (Figure 2). Fig. 2 Local test sequences The solution proposed in this article integrates mobile agent technology with multi-agent systems for the verification of the receipt of expected messages on different (PCO). 2.5 State of the art Last years, the rapid growth of distributed systems has led to a need for its coordination. Many frameworks suggest several key issues that will contribute to the success of open distributed systems. The most well known are: The Open Group s Distributed Computing Environment (DCE), [11], [12], [13] provides a communication network and middleware platform independent platform for distributed processing systems. It is based on a client /server architecture and does not support object-oriented technologies. [14] The OMG Common Object Request Broker Architecture (CORBA) provides an object-oriented framework for distributed computing and mechanisms that support the transparent interaction of objects in a distributed environment. The basis of the architecture is an object request broker (ORB) which provides mechanisms by which objects transparently invoke operations and receive results. [15] provides a framework by describing a generic object-oriented architecture that is based on five different viewpoints that enable the description of distributed systems from various perspectives: Enterprise, Information, Computation, Engineering, and Technology viewpoint. The two last standards integrate the concept of objectoriented architecture The Object-oriented based development of such applications using the classical objects is very difficult, like many possible ways of activating or deactivating event sources and to dispatch the call-backs. [16] proposes an architecture for fault detection of web services through web services based on passive testing.they proposes an observer (mobile agent) that can be invoked by interested parties when developed and published as a web service. In this model, they have not integrated the concept of Multi-Agent Systems. [10] solve the problem of synchronisation by introducing the concept of Mobile Agent but any implementation of the system has be given. However, in practice, the development of distributed systems is more complex. The environments that support their implementation are unstable and applications must cope with the volatility of resources and services. They must be flexible and be able to adapt dynamically. While a number of agent-based distributed testing systems have been proposed and the multi-agent systems have been studied, to the best of our knowledge, combining these two technologies has not been applied to this field. Our approach consists to integrate adaptable mobile agent technology with multi-agent systems to enhance the distributed testing. 3. Mobile Agent Model 3.1 Why the actor model? Agent technologies are a potentially promising approach for building complex systems that require intelligent behavior from a collection of collaborating, autonomous software components [17]. The architecture that we propose is based on the actor model. An agent s actors ([6], [7]) integrate the concept of agent and the concept of appointment for the communication. Indeed each agent must create other agents to send messages to the actors whom it knows and to change

258 235 dynamically behavior by defining its behavior for the next treatment. The idea of using actors for implementation of distributed systems is not new. However, it seems particularly interesting in the context of distributed systems to large scale by the properties that distinguish the model of actors to the classical object model ([18],[19]). First, communication by asynchronous messages is well suited to large networks or wireless, where synchronous communications are too difficult and expensive to establish, Other, the autonomy of execution and behavioral autonomy promote the integration of the mobility and ensure integrity. The mobility of actor can be defined based on the treatment of messages in series and behavior change, as well as the dynamic creation and sending messages [7] 3.2 JavAct JavAct [20] is an environment allowing the development of programs Java competitors and distributed according to the model of the actors. Compared with the traditional mechanisms of low level like the sockets, the RMI and services Web or SOAP, it has a high level of abstraction. It provides primitives of creation of actors, of change of their behaviors, localization, and communication by sending of messages. JavAct has been designed in order to be minimal in terms of code and so maintainable at low cost. Applications run on a domain constituted by a set of places which can dynamically change. A place is a Java virtual machine (Figure 4). JavAct library provides tools for creating actors, changing their own interface, and also for distribution and mobility, static and dynamic (self-) adaptation, and (local or distant) communications. 3.3 Agent Based Architecture This section presents our Multi-Agent architecture of distributed testing application. It is made up of a whole of entities (testers) which interact and/or cooperate collectively to give a satisfactory answer to the preset criteria of test. We represent each entity by an agent able to communicate, having knowledge and private behavior as well as its own capacity of execution. Each agent tester must be able not only to store information but also to be able to communicate with other agents testers to confirm the reception of one or more outputs on the PCO where they are attached. Due to the complex analyzing tasks made by tester for detecting output faults on related IUT PCO, we delegate performed tasks to well defined agents as shown in figure3. In fact, each Tester Agent has its local test sequence deduced from the global test sequence by the algorithm [2]. The Tester Agent plays the role of moderator in the same tester, and according to its local test sequence, it expresses its needs in terms of synchronization, coordination and of execution to other agents. Taking into consideration the complexity of different tasks to perform, we divided the tasks between three specialized agents: 1. AMRI( Synchronization Agent ): It is a Mobile Agent for Searching Information to ensure synchronization in the transmission and reception of messages of the test sequences; 2. AGCTi: It is a Coordination Agent in Tester i for sending and receiving coordination messages; 3. AETi: It is a Execution Agent in Tester i to Control and observation of events on each PCO. Fig. 4 Illustration of the concept of mobility and Communication on JavAct

259 236 Fig. 5 Structure of a tester 4. Distributed Test Model In this section, we define the behavior agents of our testing distributed testing platform: 1. AETs : allows tester to apply input event actions to IUT and to receive output results from the IUT. 2. AGCTs : They make it possible to the testers to exchange messages of coordination. According to the local test sequence of the tester on whom the AGCT is generated, this AGCT will send messages of coordination to the testers concerned while communicating with their AGCTj for i j. After the reception of a message of coordination, AGCTi will inform tester i to block or continue its execution. 3. AMRI: It is the only mobile agent of the system. It will be generated by the tester who must make the first sending in the test. Its role is to traverse the testers to observe and collect the messages?yi received by testers, after each sending of a message!xi. A collected message is put in a box of collection of the AMRI. Once the turn is finished, the AMRI will migrate towards the next tester who has the row of sending of the message!xi+1. It must be provided with List-of- Senders to be able to know the tester who has the row of sending and to migrate towards this tester. The algorithm [2] was generalized to be able to generate the local test sequences and List-Of-Senders. Algorithm 1.Generating Local test sequences Senders by order of sending Input w=!x 1? y 1!x 2..!x t? y t : a complete test sequence Output : List of senders by order of sending: List- Of-Senders Local test sequences: (w 1,,w n ) for k=1,,n do w k ε end for List-Of-Senders ε for i=1,,t do k Port(x i ) if i >1 then Send-To (Ports(y i ) Ports(y i-1 ))\{k} if sender 0 then Send-To Send-To\{sender} end if if sender then w k w k.c send-to List-Of-Sender <= List-Of-Senders. T k OSend-To For all h Send-To do w h w h. +C k end for end if end if 1 : w k w k.!x i 2 : List-Of-Sender List-Of-Senders.T k xi 3 : for all a y i do w Port(a) w Port(a).a? end for if i <t then h Port(x i+1 ) Sender 0 if h Ports(y i ) {k} then select 4 : case y i = Ø : w k w k. C h w h w h. C k List-Of-Sender List-Of-Senders.T k Ch Sender h 5: case Ports(y i )\Ports(y i+1 ) Ø: Choose l Ports(y i )\Ports(y i+1 ) w l w l. C h w h w h. C l List-Of-Sender List-Of-Sender.T l Ch Sender l 6: Otherwise : Choose l Ports(y i ) w l w l. C h w h w h. C l List-Of-Sender List-Of-Senders.T l Ch Sender l end select end if end if end for

260 237 end Algorithm 1 If IUT has n ports, Algorithm 1 is dedicated to compute the n related local test sequences and List-Of-Sender by order of send of n testers from a complete test sequence of IUT. Function Port give the port corresponding to a given message. Function Ports is defined by : Ports(y) = {k/a y s.t.k=port(a))} for a set y of messages. The local test sequences are basically projections of the complete test sequence over the port alphabets. In fact, Line 1 and 2 adds respectively!x i to the sequence wport(x i ) and tester port(x i ) to Liste-of-Sender..The Loop of Line 3 adds the reception of messages belonging to yi to the appropriate sequences. Coordination messages are added to the projections to get the same controllability and observability when using the complete test sequence in centralized method. In this case, we added?c et!c to the appropriate local test sequences.?c is added to wh and List-of-sender, where h is the tester sending x i+1.!c is added to the sequence of a tester receiving a message belonging to y i,if y i Ø(Lines 5 and 6 ),if not!c is added to the sequence of the tester sending xi(line4). 4. Agents Testers: Each tester executes its local test sequence in the following way: For a communication with the IUT - If the message is a reception, the tester waits until its AET informs it of the reception. - If the message is a sending, the tester awaits the arrival of the AMRI and tests: 1- If the sending is like!m {} : the Agent tester Inform Execution tester to sends the message and sends the AMRI to collect the messages which will be observed following this sending. Before each new turn, box of collection of the AMRI is initialized. 2- If the sending is like!m {xi 1,yi 1} (the message could be sent only if the messages x i 1 and y i 1 were well observed) the tester will search among information collected by the AMRI during the last turn: a- If x i 1, y i 1 is in box of collection of the AMRI: the tester sends the message and initializes the AMRI for a new turn. b- If xi-1 and yi-1 do not exist in box of collection. The tester will be able to return the AMRI to check the reception of these messages by the testers concerned. For a communication with other testers (Messages of coordination) If the message is a reception, the tester waits until its AGCT informs it of the reception. If the message is a sending, the tester informs its AGCT which will communicate with the AGCT of the tester who must receive this message. 5. Conclusion This article, presents architecture, model and method of distributed test guaranteeing the principles of coordination and synchronization between the various components of the application of distributed testing. We exploited the concepts of mobiles agents and actors agents which make it possible to propose software architectures able to support the dynamic adaptation and to reduce the number of messages between the various components of the distributed test. The implementation, the introduction of the notion of time into the test sequences and the test of the applications like Web services are the prospects for our approach. References [1] M.Benattou and J.M. Bruel, '' Active Objects for Coordination in Distributed Testing, '' International conference on object-oriented information systems, Montpellier, FRANCE, [2] O. Rafiq, L. Cacciari, M. Benattou, ''Coordination Issues in Distributed Testing'', Proceeding of the fifth International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'99) pp: , USA, 1999, CSREA Press. [3] A.Khoumsi, '' A Temporal Approach for Testing Distributed Systems, '' IEEE Transactions on Software Engineering, '' vol.28 no.11, pp , November [4] B.Chena, H. Chengb, J.Palen, Integrating mobile agent technology with multi-agent systems for distributed traffic detection and management systems'',transportation Research Part C: Emerging Technologies Volume 17, Issue 1, February 2009, pp [5] G. Bernard, L. Ismail, ''Apport des agents mobiles à l exécution répartie''. Technique et science informatiques, Hermès, Paris, 2002, Vol. 21, No 6/2002, pp

261 238 [6] G. Agha : Actors : a model of concurrent computation in distributed systems.m.i.t. Press, Cambridge, Ma., [7] J.-P. Arcangeli, L. Bray, A. Marcoux, C. Maurel et F. Migeon : Réflexivité pour la mobilité dans les systèmes d acteurs. In 4ème École d Informatique des SYstèmes PArallèles et Répartis (ISPAR 2000), [8] A. Gill,,Introduction to the theory of finite-state machines, Mc Graw-Hill, New Yor- USA, [9] A. Petrenko, G. v. Bochmann and M. Yayo, On fault coverage of tests for finite state specification, Computer Network and ISDN Systems 29, [10] M. Benattou, "A Multi-Agent Based Architecture For Distributed Testing," proceeding of The 18th International Conference on Software Engineering and Knowledge Engineering, San Francisco, pp : , [11] Digital Equipment Corporation Distributed Computing Environment Application Development Reference, Maynard, Maryland, U.S.A [12] Lockhart H.W. OSF DCE Guide to Developing Distributed Applications. McGraw-Hill, New York, U.S.A [13] A.Schill DCE - das OSF Distributed Computing Environment, Einführung und Grundlagen. Springer Verlag [14] Object Management Group (1995)," The Common Object Request Broker: Architecture and Specification, "Revision 2.6. Framingham, Massachusetts, U.S.A, December [15] G.S.Blair and J.-B.Stefani. Open distributed processing and multimedia.boston MA USA: Addison Wesley Longman,1998. [16] A.Benharref,R.Glitho,R.Dssouli. Mobile Agents for Testing Web Services in Next Generation Networks, Mobility Aware Technologies and Applications, Vol.3744,2005, pp [17] Gorton, I., J. Haack, D. McGee, A. J. Cowell, O.Kuchar and J. Thomson. Evaluating Agent Architectures: Cougaar, Aglets and AAA., SELMAS: [18] S.Leriche, Architectures à composants et agents pour laconception d applications réparties adaptables,j.p Arcangeli, ingénierie des Langages pour les systèmes Répartis et Embarqués (LYRE), Informatique et Télécommunications (EDIT), Université Toulouse III,Toulouse,France,2006. [19]Sébastien Leriche and Jean-Paul Arcangeli. Flexible Architectures of Adaptive Agents: the Agent approach. Dans / In : International Journal of Grid Computing and Multi-Agent Systems, ISSN : , Vol. 1, No. 1, p , January- June 2010 [20] J.-P. Arcangeli, F. Migeon, S. Roug le, JAVACT : a Java middleware for mobile adaptive agents, Lab.IRIT,University of Toulouse, February 5th, 2008,france.

262 239 Design Methodology of a Fuzzy Knowledgebase System to predict the risk of Diabetic Nephropathy Rama Devi.E 1, Dr.Nagaveni.N 2 1 Assistant Professor, Dept of Comp Science, NGM College, Pollachi , Coimbatore, India. 2 Assistant Professor, Dept of Mathematics, Coimbatore Institute of Technology, Coimbatore, India. Abstract The main objective of the design methodology of a Fuzzy knowledgebase System is to predict the risk of Diabetic Nephropathy in terms of Glomeruler Filtration Rate (GFR). In this paper, the controllable risk factors Hyperglycemia, Insulin, Ketones, Lipids, Obesity, Blood Pressure and Protein/Creatinine ratio are considered as input parameters and the stages of renal disorder is the output parameter. The input triangular membership functions are Low, Normal, High and Very High and the output triangular membership functions are s1, s2, s3, s4 and s5. As the renal complications are now the leading causes of diabetes-related morbidity and mortality, a FKBS is designed to perform the optimum control on high risk controllable risk factors by acquiring and interpreting the medical experts knowledge. Fuzzy logic is used to incorporate the available knowledge into intelligent control system based on the medical experts knowledge and clinical observations. The proposed FKBS is validated with MatLab, and is used as a tracking system with accuracy and robustness. The FKBS captures the existence of uncertainty in the risk factors of Diabetic Nephropathy, resolves the renal failure with optimum result and protects the patients from End Stage Renal Disorder (ESRD). Keywords: Diabetes Mellitus, GFR, ESRD, Uncertainty, Fuzzy knowledgebase System, Inference Engine 1. Introduction Diabetes Mellitus is one of the most dangerous diseases in the modern society and represents not only a medical but a social problem. Diabetic is pandemic in both developed and developing countries. In 2000, there were an estimated 175 million people with diabetes worldwide and by 2030, the projected estimate of diabetes is 354 million [1]. In India alone, the prevalence of diabetes is expected to increase from 31.7 million in 2000 to 79.4 million in 2030 [1]. The proportion of patients with end stage renal disorder caused by diabetes has progressively increases day by day worldwide and Diabetic Nephropathy is the single most common cause of ESRD [7]. The major problem in diagnosing and predicting a disease is the uncertain variations in risk factors which occur due to the sedentary life style, food habit, stress, age, environment etc. Generally the risk factors in medical domain are classified as controllable (Blood Pressure, Lipids, Obesity, Hyperglycemia), non-controllable (age, heredity, sex) and contributing factors (smoking, alcohol, stress). Due to uncertainty,

263 240 information is incomplete, fragmentary, not fully reliable, vague, contradictory, or deficient in some way. The existence of uncertain factors with errors is numerous in medical domain and it is to be solved in an efficient way. The medical errors can be solved with the help of experts knowledge. As the experts knowledge are so valuable and tacit in nature which cannot be used as it is, therefore interpreting them in terms of rules is the best approach to resolve the uncertainty. Hence, in this paper, it is proposed to design a FKBS to overcome the uncertainties and to predict the risk of Diabetic Nephropathy. This will help to control the controllable risk factors for proper diagnosis and treatment, and to protect the Diabetic patients from ESRD [11]. 2. Diabetic Nephropathy And Fuzzy Logic Diabetes Mellitus is a group of metabolic diseases characterized by high blood sugar levels that result from defects in insulin secretion, or action or both. Diabetes leads to many major complications and renal disorders are now the leading causes of illness and death in diabetic patients. Diabetes Mellitus has been found to increase the risk of renal disorder which leads to End Stage Renal Disorder (ESRD) both in women and men. The major risk factors considered in this paper for the impact of Diabetes Mellitus on renal are Hyperglycemia, Insulin, Ketones, Lipids, Obesity, Blood Pressure and Protien/Creatinine. The risk factors are uncertain due to the food habits, sedentary life style; stress and strain etc. depends on the individual life style, environment and occupation. The uncertain variations in these risk factors vary in each and every individual. The best logic to capture and resolve the existence of uncertainty to certainty is FUZZY LOGIC. Fuzzy logic yields results superior than conventional mathematical logic and also it is the suitable logic for handling words as linguistic variables rather than number. To estimate and predict the prevalence of Diabetes Mellitus based on the risk factors which inferences the renal disorder is validated using MATLAB to overcome the unexpected, sudden stop of the functioning of kidneys which in turn reduces the rate of mortality. 3. Methodology 3.1 Fuzzy Logic and Impact of Diabetes Mellitus on Renal Diagnosis of a disease is a significant and tedious task in medical domain. The detection of renal disorders due to Diabetes Mellitus from various factors or symptoms is a multilayered issue which is not free from false presumptions often accompanied by unpredictable efforts. The main objective of this paper is to identify the risk factors of Diabetes Mellitus which causes the severe impact on renal. Based on the medical expert s knowledge, the risk factors may be grouped as Controllable risk factors which can be controlled Non-Controllable risk factors which cannot be controlled Contributing risk factors which can be controlled or cannot be controlled depends on individual s contribution. In this proposed work, the risk factors identified are Hyperglycemia, Insulin, Ketones, Lipids, Obesity, Blood Pressure and Protien/Creatinine which are controllable. The values of risk factors based on Universe of Discourse varies patient to patient depends on the symptoms that leads to so many complications.

264 241 To overcome the uncertainty, fuzzy logic is used which yields results superior than the conventional crisp value. By applying fuzzy logic the evaluation of risk factors can be interpreted properly for effective diagnosis to minimize the rate of mortality with maximum efficiency. 3.2 Design and Validation of Fuzzy Rule Base System The essential part of the proposed Fuzzy knowledgebase System is to convert the given set of linguistic control strategy based on expert s knowledge into an automatic control strategy. It consists of the four major components namely Fuzzification Interface, Rule Base, Inference Engine and Defuzzification. Each component explains how the risk factor values are validated to achieve the aim and objective of the proposed Fuzzy knowledgebase System. Fig 2 Membership function for P/C ratio Fuzzy Representation of Output Parameter The membership function for output parameter stages of renal is shown below. The output represents the different stages of renal disorder Fuzzification Interface Fuzzy Interface converts crisp values into fuzzy value. There is a degree of membership for each linguistic term that applies to that input variable. Fuzzy Representation of Input Parameters The membership function for Insulin and P/C Ratio are shown below. In the same way the membership function are constructed for other risk factors also. Fig: 1 Membership function for Insulin Fig 3 Membership function for stages of Renal Knowledgebase The Fuzzy Knowledgebase System consists of a set of fuzzy propositions and is derived from the knowledge of medical expertise [17]. A fuzzy proposition establishes a relationship between different input fuzzy sets and output fuzzy sets. The Fuzzy Knowledgebase System is constructed based on the formula n m where n is the risk factor and m is linguistic variable. The proposed FKBS consists of 7 risk factors and 4 linguistic variables, which leads to rules. This will effectively evaluate all the possible variations in the Universe of Discourse for the patients with renal disorder due to Diabetes Mellitus [16]. It also predicts and forecast the risk at the earliest of any stage

265 242 to protect the patient from fatal end. Here only 16 rules have shown for reference. Table 1: Sample rules framed for the impact of Diabetes Mellitus on Renal Sno HG (FP G/ 2h PG ) Ins uli n Ket one s Lip ids (L DL /H DL ) O b e s i t y BP (sy s/di as) P/C 1. L L L L L L L S3 2. L L L L L L N S2 3. L L L L L L H S3 4. L L L L L L VH S4 5. L L L L L N L S2 6. L L L L L N N S1 7. L L L L L N H S2 8. L L L L L N VH S3 9. L L L L L H L S3 10. L L L L L H N S2 11. L L L L L H H S3 12. L L L L L H VH S4 13. L L L L L VH L S3 14. L L L L L VH N S2 15. L L L L L VH H S4 16. L L L L L VH VH S Inference Engine Stages of Renal/ GFR The purpose of the inference engine is to infer information based on the knowledgebase to take major decisions in diagnosis. The knowledgebase is time variant, adaptive and robust in structure [18]. The number of fuzzy sets describing input variables increases, the number of proposition also increases. Since, writing all propositions is a tedious job, a matrix like representation may be followed and is known as Fuzzy Associative Memory. Based on the knowledgebase framed, inferences are acquired to take major decisions regarding therapy and treatment. Table 2: FAM for the sample rules framed LP,OB,PC, BP HG/INS/KET LLLL LLLN LLLH LLLVH LLL S3 S2 S3 S4 LLN S2 S1 S2 S3 LLH S3 S2 S3 S4 LLVH S3 S2 S4 S4 Based on the inferences, the knowledgebase may be restructured for proper, perfect and fast diagnosis of the disease. Decision making logic component The decision rules are constructed for input parameters and control output values to find the active cells so that what control actions should be taken as a result of firing several rules. Finally, the aggregation of minimum control outputs is taken into consideration to maximize the grade of output to resolve the uncertain linguistic input to produce crisp output. The proposed system consists of 7 parameters with 4 triangular membership functions for each parameter. According to the formula n m, 4 7 = rules are framed in which 128 rules are fired for the sample input values of each parameter as, HG (L) = 65/72, Insulin (N) = , Ketones (H) = 30, Lipids (L) = 80/180, Obesity (L) = 12, Blood Pressure (H) = 130/82, Protien/Creatinine (L) =.08. According to Mamdani Inference Method [19], the aggregation of control output is µagg(b)=max{min(1/4,µ s3(b) ), min(1/2.41,µ s2(b) ), min(1/2.41,µ s1(b) ) } Defuzzification Interface Defuzzification is a process to get a non-fuzzy control action that represents the best possibility distribution of an inferred

266 243 fuzzy control action. Unfortunately there is no systematic procedure for choosing a good defuzzification strategy. So, by considering the properties of application, any one of the five methods can be selected for defuzzification methods. In this paper, the MEAN OF MAXIMUM defuzzification method is applied to find the intersection point of µ = 1/2.41 with the triangular fuzzy number µ s2 (b) and µ s1(b). By substituting (i) µ = 1/2.41 in s2 (b),.hence the diagnosis may be concluded as, the patient is in stage s1, which indicates that the patient s renal is in normal state. Therefore the proposed Fuzzy knowledgebase System is proven to be a rapid rule base application to monitor, predict and forecast the nature of renal disorder due to the impact of Diabetes Mellitus. It also helps to maintain the P/C Ratio in renal system, to avoid the renal disorders. µ = 90-b/30, 30 µ = 90-b, 30*1/2.41 = 90-b, = 90-b, = -b, b = 77.5 µ = b-60/30, 30 µ = b-60, 30*1/2.41 = b-60, = b- 60, = b, b= after aggregation, the values are Ç1 = 77.5, Ç2 = 72.45, the output parameter i.e. the stage s2 in terms of Glomeruler Filtration Rate (GFR) of a patient [6] is identified to produce the crisp output as Zm* = ( )/2 = /2 = (ii) µ = 1/2.41 in s1 (b), µ = 140-b/50, 50µ =140-b, 50*1/2.41 = 140-b, = 140-b, = -b, b = µ = b-90/50, 50µ = b-90, 50*1/2.41 = b-90, 20.75= b- 90, = b, b = after aggregation, the values are Ç1 = , Ç2 = , the output parameter i.e. the stage s1 in terms of Glomeruler Filtration Rate (GFR) of a patient is identified to produce the crisp output as 4. Results In order to validate the fuzzy logic approach used in construction of FKBS, the extensive simulation is carried out using MATLAB. The system responses with variation defined in the membership function as a rule viewer, surface view, cluster formation and preservation. data training, checking, testing with sample data to capture the error modulation of risk factors reading which varies from patient to patient with the level of risk due to the impact of DM on renal disorder and the results are favorable. 4.1 Micro View of the simulated knowledgebase for Diabetic Nephropathy The constructed knowledgebase is simulated using MATLAB to identify the output parameter- the stages of Renal Disorder of a diabetic patient. Zm* = ( )/2 = 230/2 = 115. According to Mean of Maximum method, the maximum value is considered, for obtaining the optimum result. In this paper, two values obtained are and 115 in which 115 is the maximum which represents the stage s1 of renal disorder in terms of GFR

267 244 Fig 6: Surface view of P/C Ratio Vs Ketones Fig 4: Simulated view of the rule base Impact of Diabetes Mellitus on Renal 4.2 Surface View of Mapping with Input Parameters vs. Output Parameter Surface view shows the three dimensional view curves that represent the mapping with input parameters vs. the output parameter, the stages of Renal disorder. Sample surface view of the proposed Fuzzy knowledgebase System is shown as per the rules framed. Fig 5: Surface view of Insulin Vs P/c Ratio Likewise the surface view can be generated for all the seven input parameters with the output parameter which helps to monitor the stages of renal disorder based on the variations of the risk factors from time to time. 4.3 Grouping o f Patients Data according to the Risk Factors as Clusters Clustering is a way to examine similarities and dissimilarities of observations or objects. Data often fall naturally into groups or clusters of observations, where the characteristics of objects in the same cluster are similar and the characteristics of objects in different clusters are dissimilar. In this proposed FKBS, the cluster analysis is used for the purpose of grouping the patients with high risk and low risk. Grouping of clusters also identifies the patients who need the emergency care. Using the Adaptive Neuro- Fuzzy Inference System (ANFIS) editor, membership functions are shaped by training them with input/ output data rather than specifying them manually.

268 245 Fig 7: Sample clusters generated for renal disorder Fig 9 Generation of FIS with shape preservation to group the clusters generated 5. Conclusion Fig 8 Disease-wise seperation of clusters 4.4 Generation of Fis for Cluster Shape Preservation Using Adaptive Neuro-Fuzzy Inference System (Anfis). The shape preservation is applied to organize the same size and shape clusters, to maintain the characteristics and properties of data in such a way to identify and differentiate the patient s level of risk for emergency treatment. The diagnosis of renal disorders for diabetic patients represents a serious clinical problem. The medical knowledge in this field is characterized by uncertainty, imprecision and vagueness. As the symptoms of diabetic patients are very fuzzy in nature, the use of linguistic approximation enables knowledge to be represented in a more meaningful way. Fuzzy logic is very useful to deal with the absence of sharp boundaries of the sets of symptoms, diagnosis and phenomena of diseases. The use of this approach is contributed to medical decision-making and the development of computer-assisted diagnosis in medical domain. In this paper, the major risk factors for diabetic patients are identified and the FKBS is designed with rules which may adopt as an aid for finding the patient s risk of renal disorder for proper treatment and care in time to avoid the ESRD. The designed knowledgebase is simulated with Mat Lab and the results are promising with the values considered This fuzzy knowledgebase captures all the variations of the symptoms and so, it will be useful to infer the exact stage of renal patient as per the expert s knowledge. This is also useful to take proper decision at the right

269 246 time for giving various types of treatments which ultimately reduces the rate of mortality. The designed FKBS may be extended to devise a MEMS device for monitoring the status of the risk factors with changing life style, food habits, occupation of human beings as further enhancement of this work. 6. References [1] Sarah Wild, Gojka Roglic, Anders Green, Richard Sicree, and Hilary King, Global Prevalence of Diabetes - Estimates for the Year 2000 and Projections for 2030, Diabetes Care 27, pp , [2] Constantinos Koutsojannis and Ioannis Hatzilygeroudis, FESMI: A Fuzzy Expert System for Diagnosis and Treatment of Male Impotence, Knowledge-Based Intelligent Systems for Health Care, pp , [3] Rahim F, Deshpande A, Hosseini A, Fuzzy Expert System For Fluid Management In General Anaesthesia, Journal of Clinical and Diagnostic Research, pp ,2007. [4] Muhammad zubair Asghar, Abdur Rashid Khan, Muhammad Junaid Asghar: Computer Assisted Diagnosis for Red Eye, International Journal on Computer Science and Engineering, Volume 1(3), pp , [5] Nazmi Etik, Novruz Allahverdi, Ibrahim Unal Sert and Ismail Saritas, Fuzzy expert system design for operating room air-condition control systems, Expert Systems with Applications An International Journal, Volume 36, Issue 6, pp , 2009 [6] Hamidreza Badeli, Mehrdad Sadeghi, Elias Khalili Pour, Abtin Heidarzadeh, Glomerular Filtration Rate Estimates Based on Serum Creatinine Level in Healthy People, Iranian Journal of Kidney Diseases, Volume 3,Number 1, [7] Niall G. McLaughlin, Udayan Y. Bhatt, Gil A. Cu, Ronald L. Mars, N. Stanley Nahman, A Review of the Diagnosis and Therapy of Diabetic Nephropathy, Northeast Florida Medicine Journal, pp 27-31, 2005 [8] Parving HH. Diabetic nephropathy: prevention and treatment. Kidney Int. 60(5), pp ,2001. [9] Mauer S, Steffes M, Brown D., The kidney in diabetes. Am J Med. 70 pp 603, [10]Brenner BM. Regarding: Management of glomerular proteinuria: a commentary. J Am Soc Nephrol.15(5), pp , [11] Hostetter T. Prevention of end-stage renal disease due to type 2 diabetes, N Engl J Med 345, pp ,2001. [12] Maduka Ignatius C, Neboh Emeka.E, Kwubiri Uchenna N, The Prevalence of Diabetic Nephropathy in Diabetic Patients, European Journal of Scientific Research,Volume 26, Issue 2,pp , [13] Nader Antonios, MD and Scott Silliman, MD, Diabetes Mellitus and Stroke, Northeast Florida Medicine Journal, pp 17-22, [14] Mahfouf M, Abbod MF & Linkens DA, A survey of fuzzy logic monitoring and control utilization in medicine, Artificial Intelligence in Medicine 21, pp 27-42, [15]Uncu, U. Koklukaya, E. Gencsoy, A. Annadurdiyew, O, A fuzzy rulebase model for classification of spirometric FVC graphs in chronical obstructive pulmonary diseases, Volume 4, pp , [16] Novruz Allahverdi Ismail Saritas Ilker Ali Ozkan Mustafa Argindogan, An Example of Determination of

270 247 Medicine Dose in the Treatment by Fuzzy Method, International Conference on Computer Systems and Technologies - CompSysTech [17] Adam E. Gawedal, Alfred A. Jacobs, Michael E. Brierl, Fuzzy Rule-based Approach to Automatic Drug Dosing in Renal Failure, The IEEE International Conference on Fuzzy Systems, [18] H.F Kwokab, D.A Linkensa, M Mahfoufa, G.H Millsb, Rule-base derivation for intensive care ventilator control using ANFIS, Artificial Intelligence in medicine, Volume 29, Issue 3, pp ,2003. [19] Feng Liu, Chai Quek, Geok See Ng, A Novel Generic Hebbian Ordering Based Fuzzy Rule Base Reduction Approach to Mamdani Nuero-Fuzzy System, Neural Computation, Volume 19, Issue 6, pp , E.RamaDevi: Mrs. E. RamaDevi received MPhil degree in Computer Science from Bharathiar University, Coimbatore. Currently She is an Assistant Professor in Computer Science at NGM College, Pollachi, India. She has got 5 years of research experience. Her research interest includes areas like Data Mining, Knowledgebase system, Intelligent and Control systems and Fuzzy Logic. Presented papers in National and International conferences. Published 2 research papers and has more than 15 years of teaching experience. Dr. N. Nagaveni: Dr. N. Nagaveni received PhD from Bharathiar University, Coimbatore, India. She is an Assistant Professor in Mathematics at Coimbatore Institute of Technology since She has got 14 years of research experience and 21 years of teaching experience. Her research interest includes cryptography, cloud computing, data mining, privacy issues and web mining. Published more than 30 research papers in different journals. Presented papers both in National and International conferences. Member in ISPE, Indian Science Congress and Kerala Mathematical Association.

271 248 Reengineering Of Education Institute And Coupling Measurement Dr Ashok Kumar 1, Anil Kumar 2, Kulvinder Singh 3 1.Professor, Dept. of Comp. Sc. & App. Kurukshetra University, Kurukshetra, India 2. Asst. Professor, Comp. Sc. & Engg. Vaish College of Engineering, Rohtak, India. 3. Asst. Professor, Comp. Sc. & Engg. Vaish College of Engineering, Rohtak India. Abstract This paper is based on reengineering of Education institutes [1,2] in such a way that coupling risk should be less as compared to existing systems. Here, we will measure the complexity (based on coupling factor) of modules during reengineering of modules design. As we know that the coupling [3,4] is one of the properties with most influence on maintenance, as it has a direct effect on maintainability. In general while any module is reengineered [5], one of the goals of OO software designers is to keep the coupling of system as low as possible. Classes of the system that are strongly coupled are most likely to be affected by changes and bugs from other classes. As the coupling between the classes of the system is increased, it result in increased error density. The work described in this paper measure the coupling not only through classes of the system, but also through the Packages [6] that are included during reengineering of the module design. Coupling between packages is the manner and degree of interdependence between them. Theoretically, every package is a stand-alone unit, but in reality packages depend on many other packages as either they require services from other packages or provide services to other packages. Thus, coupling between packages cannot be completely avoided but can only be controlled. The coupling between packages is an important factor that effects the quality or other external attributes of software, e.g., reliability, maintainability, reusability, fault-tolerance etc. In this paper, some measures are proposed for measurement of coupling at the package-level [7] in order to achieve good quality software systems. In this paper, we propose metrics [8] for measuring the coupling between packages in a software system. Keyword Education Institute, Coupling, Package, Metrics,System Representation and Definition Introduction Due to increasing demand of software maintenance, today reengineering techniques is one of the best choice, to full-fill the requirement of the public sector/private sector. While reengineering takes place in existing system, the complexity of modules is determined in early stage ( at design time), due to this, software designer, easily determine, about resources that is required during reengineering of any project. This paper is based on the measurement of complexity of modules, by using different types of coupling metrics, at design time. The backbone of any software system is its design. It is skeleton where the flash (code) will be supported. And while determining the complexity [9] of the modules, here will use OO paradigm, which is very popular concepts in today s software development environment. They are often heralded as the silver bullet for solving software problem. Literature Overview Hamper and Champy [10] (1993) defines the business process reengineering as the fundamental rethinking and radical redesign of the business processes to achieve dramatic improvement in critical, contemporary measures

272 249 of the performance, such as cost, quality, service, and speed. Business processes and redesigns to improve performance. The importance of business processes reengineering (BPR) is crucial for public sector organizations (Parys and Thijs, 2003). It is difficult to deploy BPR efforts in public organizations [11] ( Parys and Thijs, 2003; Robert, 1994; Thong, Yap, and Seah, 2000) [12]. The government organizations re usually attached to many other departments and ministries. The change in one unit requires change in other interlinked organizations. It is therefore necessary to handle all these problems to successfully implement the BPR strategy in the public sector organizations ( Parys and Thijs, 2003). Tenner and Dectoro [13] (1992) defines process as a single or combination of tasks that add value to inputs to convert them into outputs by the application of human interaction, methodologies and techniques. The author confines the key points and describes stages to improve business processes using the step by step procedure to achieve real performance goal. Individuals at any level in manufacturing, service or the public sector can benefit from this approach which enhances the chances of success in improving organization wide performance. It is designed for leaders at any level who are committed to drastically improving their organization s performance through redesigning its processes. The business process consists of different activities which defines the pattern of work in the organizations ( Sethi and King, 2003) [14]. The efficient processes serve to satisfy the customers by converting input resources to desired output (Field, 2007; Hammer and champy, 193; Harrison and Pratt, 1993; Snee, 1993) [15]. Evans [16] (1993) signifies the importance of analyzing the existing business processes and the organizations to identify bottlenecks in the systems. The author translates this phase As Is step of BPR. The other important phase is To Be which describes the desired performance achievement level of the business process. BPR attempts to fill the gap between these two organizational situations. Business process analysis attempts to achieve operational efficiency by reducing time and cost factors (Cook, 1996; Davenport, 1993; Day, 1994; Roy, 2005; Wing and Ahmed, 2003; Muthu, Whitman and Cheraghi, 1999). Fitzgerald and Murphy (1996) suggest four crucial phases for successfully implementing the BPR strategy in the organizations. First, the core business processes to be redesigned should be selected. Second, the process team should be established to reengineer the core business processes. Third, the current processes may be analyzed and examined to find out bottlenecks in the systems. This phase also determines the satisfaction level of stakeholders with the process outcomes. The last phase encompasses the strategy to reengineer the process to improve performance. Problem Description While we reengineering the education institutes, there are n number of packages, the n number of packages has n number of classes, the n number of classes has n number of methods, and the n number of method has n number of operation to perform their activities, these are depends upon other methods, other classes and may or may not depends upon other packages to perform their task. System Representation and Definition Definition 1: (System, Packages) [17,18] We consider Modified OO System as a set of packages P = { p 1,p 2,.p n }. The number of packages in the system P is n = P Definition 2: (Clases of a package) [19] A package has a set of classes, and a class has a set of methods. For each package p E P. M ( p ) = { m 1, m 2,.,m n } represent its set of methods in the system is defined as M(P). Definition 3: (Conceptual similarities between method)

273 250 The conceptual similarities between method m k E M(P) and m j = M(P), CSM(m k,m j ), is computed as the cosine between the vectors Vm k and Vm j, corresponding to m k & m j in the semantic space constructed. Definition 4: ( conceptual similarities between a package s of classes and methods) [20] Let p k E P and p j E P are two distinct (p k not equal to p j ) packages in the system. Each packages has a set of classes and each set of class has a set of method M(p k) = { m k1, m k2,..,m kr }, where r = M(p k) and M(p j ) = { m j1, mj 2,..,mjt}, where t = M(p j ) Between every pair of methods ( M k,m j ), there is similarities measure, conceptual similarities between package s of the class and between method s of class( CSPCM(M k,m j )) Which is the average of conceptual similarities between method M k and all the method from package of class C j. Definition 5:(Conceptual similarities between two package) We define the conceptual similarities between two package(csbp) p k E P and pj E P is CSBP(p k, p k ) = r a=1 CSPCM(M ka,p j )) include inherited packages, but included inherited classes in the specific packages. Message Passing among packages (MPP) This metrics measures the number of message passing among objects of packages. A larger number indicates increased coupling between this package and other packages in the systems. This makes the package more dependent on each other, which will increases the overall complexity of the system and make packages more difficult to change in future. Coupling between Objects(CBO) (Chidamber & Kemerer) [21] CBO is the total of the number of classes that a class referenced plus the number of classes that referenced classes. It was only counted once. Fan-out Fan-out is defined as the number of other classes referenced by a class in the package. Fan-in Fan-in is the number of other packages that references to a package. Efferent Coupling Efferent coupling is viewed as equivalent to Fan-Out Afferent Coupling Afferent coupling is viewed as equivalent to Fan-In Which is the average of the similarities measures between all unordered pairs of methods from package p k and p j. The definition ensures that the conceptual similarities between two packages is symmetrical as CSBP(p k,p j ) = CSBP(pj,pk) Proposed work Here, we will specify metrics which is very beneficial to measure the coupling during reengineering of the educational institutes. These metrics are given below: Response For Packages (RFP) Response for package measure the complexity of the package in terms of classes in the packages plus methods in the classes. Not There are number of other useful metrics at package level [22] : a. Reuse Ratio is calculated as Reuse ratio = Number of super package above this package in the Package hierarchy Total number of packages in package hierarchy b. Specialization Ratio is calculated as Number of sub package below this package in the package hierarchy Specialization ratio = Number of super package above this package in the Package hierarchy

274 251 c. Number of instance variable, number of modifiers, number of interfaces implemented and number of package imported : These gives additional information about the class s level in the package level of semantic complexity. As with methods, large values for these can suggest that a class doing too much. Related Works For OO Systems, most of the coupling metrics, exists for measurement of coupling at the higher levels of abstraction in OO systems. Other, works related to the packages or other higher abstraction level has been carried out in. Conclusion The goal of this paper, provided certain types of package level metrics, that is used to determine coupling of modules during reengineering of modules design, and help the designer to reduces the coupling among modules, due to this increasing user productivity and scalability, improve vendor independence, enhance scalability, increase manageability and more. As we know that, due to the productivity, it will create in the more economic value for each unit of cost. This is different from cost reduction. It specifically defines different types of sub-modules complexity and once the coupling is clearly determined, then it is very beneficial in future requirement of reengineering of modules, because requirement obviously changes, after a specific time period. And whenever needed, further to reengineering the modules it is easily takes place. References 1. The National Information Infrastructure Agenda for Action 2. Perspective on the national Information Infrastructure 3. F. Pilat, W. Fischer, S. Peggs, V. Ptitsyn, S. Tepikian,.The Coupling Correction System at RHIC: Results for the Run 2000 and Plans for 2001., PAC V.Ptitsyn, J. Cardona, J-P. Koutchouk, F. Pilat,.Measurement and Correction of Linear Effects in the RHIC Interaction Regions., PAC Booch G. Object Oriented Analysis and Design with Appli- 6. cations. 2nd Ed., Redwood City: Benjamin Cummings Pub-lishing Company Inc., LA, USA, Booch G. Object Oriented Analysis and Design with Appli- 8. cations. 2nd Ed., Redwood City: Benjamin Cummings Pub-lishing Company Inc., LA, USA, Eder J, Kappel G, Schre M. Coupling and cohesion in object-oriented systems. Technical Report, University of lagenfurt, Hitz M, Montazeri B. Measuring coupling in objectoriented systems. Object Currents, 1996, 1(4): 124{ Hammer, M. and Champy, j., Reengineering the Corporation : a manifesto for business revolution, HarperCollins Publishers, Inc. New York 12. Rober, L. (1994). Process Reengineering: the key to achieving breakthrough success, Milwaukee, Wisconsin, ASQC Quality Press. 13. Thong, J., Yap, C.S. and Seah, K.L., Business Process Reengineering in the public Sector: the case of the Housing Development Board in Singapore, Journal of Management Information System, 17(1), pp Tenner, A.R., Dectoro, I.J.,1992. The Process redesign the implementation guide for manager, Prentice Hall, New Jersey. 15. Sethi, V. and King, W.R., Organizational transformation through business process reengineering: applying the lessons learned, Pearson education, Inc, Singapore 16. Harrison, D.B. and Pratt, M.D., A Methodology for reengineering business, Planning Review, 21(2), pp Evans, K., Reengineering and Cybernetics, American Programmer, 6(11), pp Abreu, F. B., Pereira, G., and Sousa, P., "A Coupling- 19. Guided Cluster Analysis Approach to Reengineer the Modularity of Object-Oriented Systems", in Proc. of Conf. on Software Maintenance and Reengineering (CSMR'00), Zurich, Switzerland, Feb Mar , pp Arisholm, E., Briand, L. C., and Foyen, A., "Dynamic coupling measurement for objectoriented software", IEEE Transactions on Software Engineering, vol. 30, no. 8, August 2004, pp

275 riand, L., Wust, J., and Louinis, H., "Using Coupling Measurement for Impact Analysis in Object-Oriented Systems", in Proc. of IEEE International Conf. on Software Maintenance, Aug Sept , pp Briand, L. C., Devanbu, P., and Melo, W. L., "An investigation into coupling measures for C++", in Proc. Of International Conference on Software engineering (ICSE'97), Boston, MA, May , pp Chidamber, S. R. and Kemerer, C. F., "Towards a Metrics Suite for Object Oriented Design", in Proceedings of OOPSLA'91, 1991, pp D.L. Parnas, "On the Criteria To Be Used in Decomposing Systems into Modules," Communications of the ACM, Vol. 15, No. 12, Dec. 1972, pp Dr. Ashok Kumar received his Ph.D degree from Agra University, Agra, India. He joined Kurukshetra University, June He is working as Professor in the Department of Computer Science & Application, Kurukshetra University, Kuruks hetra (Haryana), India, since June He was awarded four Ph.D award from Kurukshetra University. He has published more than 60 national and international papers. He has attended more than 30 national and international seminars. His area of interest are software engineering, operational research, networking and operating system. 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 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, 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. 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.

276 253 Design of Compressed Memory Model Based on AVC Standard for Robotics Devaraj Verma C 1 and Dr. VijayaKumar M.V 2 1 Lecturer, Department of Information Science and Engineering, PES Institute of Technology, 100-ft Ring Road, BSK-III stage, Bangalore , Karnataka-INDIA 2 Prof and Head of Department of Information Science and Engineering, New Horizon College of Engineering, Panathur post, marathahalli, Bangalore, Karnataka-INDIA Abstract To cater the needs of diverse application domains, three basic feature sets called profiles are established in H.264 standard: the Baseline, Main, and Extended profiles. The Baseline profile is designed to minimize complexity and provide high robustness and flexibility for use over a broad range of network environments and conditions; the Main profile is designed with an emphasis on compression coding efficiency capability; and the Extended profile is designed to combine the robustness of the Baseline profile with a higher degree of coding efficiency and greater network robustness. The H.264 bitstream is organized as a series of NAL units, which are first, processed by the NAL unit decoder module. NAL unit decoder does the job of NAL unit separation and parsing of the header information. The output data elements of NAL unit decoder are entropy decoded and reordered to produce a set of quantized coefficients by the variable length decoder module. The quantized coefficients are then rescaled and inverse transformed to give difference macroblock using the transformation and quantization module. Using the header information decoded from the bitstream, the motion compensation and picture construction module produces distorted macroblocks which are then filtered using the deblocking filter to create decoded macroblocks. The output is stored as a yuv file, which can be played using any YUV player/viewer. Thus the visual input from the sensors of the robots can be compressed by this technique before delivered to the actuators on the scene. KeyWords: Deblocking filter, Motion Compensation, Macroblock modes, NAL units 1. Introduction H.264 is a new video compression scheme that is becoming the worldwide digital video standard for consumer electronic and personal computers [1,2,3,4,5].Uncompressed multimedia (graphics, audio and video) data requires considerable storage capacity and transmission bandwidth. Despite rapid progress in mass-storage density, processor speeds, and digital communication system performance, demand for data storage capacity and datatransmission bandwidth continues to outstrip the capabilities of available technologies [6,7,8,9,10]. ITU-T H.264 / MPEG-4 (Part 10) Advanced Video Coding (commonly referred as H.264/AVC) is the latest entry in the series of international video coding standards [11,12,13,14]. It is currently the most powerful and state-of-the-art standard developed by a Joint Video Team (JVT) consisting of experts from ITU-T s Video Coding Experts Group (VCEG) and ISO/IEC s Moving Picture Experts Group (MPEG)[15,16,17]. With the wide breadth of applications considered by the two organizations, the application focus for the work was correspondingly broad from video conferencing to entertainment (broadcasting over cable, satellite, terrestrial, cable modem, DSL etc.; storage on DVDs and hard disks; video on demand etc.) to streaming video, surveillance and military applications, and digital cinema. Three basic feature sets called profiles are established to address these application domains: the Baseline, Main, and Extended profiles as shown in Fig 1. Extended Profile Data partition SI slice SP slice B slice Weighted prediction I slice P slice CAVLC ASO FMO Redundant slice Baseline Fig 1 H.264 Profiles Main Profile CABAC

277 254 Baseline is a low-complexity low-latency profile, which provides basic functionality. Typical applications are interactive ones like mobile video telephony and video conferencing. The Main profile targets studio, broadcast, and other highquality applications like HDTV and DVD. It is a high-complexity high-latency profile without errorresilient features. Finally, Extended is highly errorrobust and of low complexity and may be used in e.g. streaming applications. All profiles will have the Baseline compatibility. 2. NAL units, slices, fields and frames A H.264 video stream is organized in discrete packets, called NAL units (Network Abstraction Layer units). Each of these packets can contain a part of a slice, that is, there may be one or more NAL units per slice. But not all NAL units contain slice data; there are also NAL unit types for other purposes, such as signaling, headers and additional data. The slices, in turn, contain a part of a video frame. In normal bitstreams, each frame consists of a single slice whose data is stored in a single NAL unit. The possibility to spread frames over an almost arbitrary number of NAL units can be useful if the stream is transmitted over an errorprone medium: The decoder may resynchronize after each NAL unit instead of skipping a whole frame if a single error occurs. H.264 also supports optional interlaced encoding. In this encoding mode, a frame is split into two fields. Fields may be encoded using spatial or temporal interleaving. To encode color images, H.264 uses the YCbCr color space like its predecessors, separating the image into luminance (or luma, brightness) and chrominance (or chroma, color) planes. It is, however, fixed at 4:2:0 sub sampling, the chroma channels each have half the resolution of the luma channels. actual picture content, so a residual may be added. B slices or Bi-Directional Predicted slices work like P slices with the exception that former and future I or P slices (in playback order) may be used as reference pictures. For this to work, B slices must be decoded after the following I or P slices. SI and SP slices or Switching slices may be used for transitions between two different H.264 video streams. This is a very uncommon feature. 3. Motion Compensation Since MPEG-1, motion compensation is a standard coding tool for video compression. Using motion compensation, motion between frames can be encoded in a very efficient manner. A typical P- type block copies an area of the last decoded frame into the current frame buffer to serve as a prediction. If this block is assigned a nonzero motion vector, the source area for this copy process will not be the same as the destination area. It will be moved by some pixels, allowing to accommodate for the motion of the object that occupies that block. Motion vectors need not be integer values: In H.264, motion vector precision is one-quarter pixel (one-eighth pixel in chroma). Interpolation is used to determine the intensity values at non-integer pixel positions. Additionally, motion vectors may point to regions outside of the image. In this case, edge pixels are repeated. Because adjacent blocks tend to move in the same directions, the motion vectors are also encoded using prediction. When a block s motion vector is encoded, the surrounding blocks motion vectors are used to estimate the current motion vector. Then, only the difference between this prediction and the actual vector is stored. Slice types H.264 defines five different slice types: I, P, B, SI and SP. I slices or Intra slices describe a full still image, containing only references to itself. A video stream may consist of only I slices, but this is typically not used. The first frame of a sequence always needs to be built out of I slices. P slices or Predicted slices use one or more recently decoded slices as a reference (or prediction ) for picture construction. The prediction is usually not exactly the same as the 4. Macroblock Layer Each slice consists of macroblocks (or, when using interlaced encoding, macroblock pairs) of 16x16 pixels. The encoder may choose between a multitude of encoding modes for each macroblock. 4.1 Macroblock modes for I slices In H.264, I slice uses a prediction/residual scheme: Already decoded macroblocks of the same frame may be used as references for intra prediction

278 255 process. The macroblock mode indicates which of two possible prediction types is used: Intra_16x16 uses one intra prediction scheme for the whole macroblock. Pixels may be filled from surrounding macroblocks at the left and the upper edge using one of four possible prediction modes. Intra prediction is also performed for the chroma planes using the same range of prediction modes. However, different modes may be selected for luma and chroma. Intra_4x4 subdivides the macroblock into 16 sub blocks and assigns one of nine prediction modes to each of these 4x4 blocks. The prediction modes offered in Intra_4x4 blocks support gradients or other smooth structures that run in one of eight distinct directions. One additional mode fills a whole sub block with a single value and is used if no other mode fits the actual pixel data inside a block. Intra chroma prediction is performed in an identical way to the one used in Intra_16x16 prediction. Thus, the chroma predictions are not split into sub blocks as it is done for luma. Additionally, a third intra macroblock type exists: I_PCM macroblocks contain raw uncompressed pixel data for the luma and chroma planes. This macroblock type is normally not used. motion isolation of objects as small as 4x4 pixels. Additionally, a reference frame number that is used for prediction is stored for each partition. 5. Block Transformation and Encoding The basic image encoding algorithm of H.264 uses a separable transformation. The mode of operation is similar to that of JPEG and MPEG, but the transformation used is not an 8x8 DCT, but a 4x4 integer transformation derived from the DCT. This transformation is very simple and fast; it can be computed using only additions/subtractions and binary shifts. It decomposes the image into its spatial frequency components like the DCT, but due to its smaller size, it is not as prone to high frequency mosquito artifacts as its predecessors. An image block B is transformed to B using the formula1. The necessary post-scaling step is integrated into quantization and therefore omitted: M = Macroblock modes for P and B slices P and B slices use another range of macroblock modes, but the encoder may use intra coded macroblocks in P or B slices as well. In regions of uniform motion without texture changes, macroblocks may be skipped. In this case, no further data is stored for the macroblock, but it is motion-compensated using the predicted motion vector. Otherwise, the macroblock of 16x16 pixels is divided into macroblock partitions: It may be stored as a single partition of 16x16 pixels. It may be split horizontally into two partitions of 16x8 pixels each. It may be split vertically into two partitions of 8x16 pixels each. It may be split in both directions, resulting in four sub-macroblock partitions of 8x8 pixels. Each of these may be split similarly into partitions of 8x8, 8x4, 4x8 or 4x4 pixels. Not all submacroblock partitions need to be split in the same manner, thus allowing for any number of partitions from 1 to 16. Each macroblock or sub-macroblock partition stores its own motion vector, thus allowing for B =MBM T (1) The basic functionality of the H.264 image transformation process is as follows: For each block, the actual image data is subtracted from the prediction. The resulting residual is transformed. The coefficients of this transform are divided by a constant integer number. This procedure is called quantization; it is the only step in the whole encoding process that is actually lossy. The divisor used is called the quantization parameter; different quantization parameters are used for luma and chroma channels. The quantized coefficients are then read out from the 4x4 coefficient matrix into a single 16-element scan. This scan is then encoded using sophisticated (lossless) entropy coding. In the decoder, these steps are performed in reversed order. 5.1 Entropy encoding modes H.264 supports two different methods for the final entropy encoding step: CAVLC, or Context- Adaptive Variable Length Coding, is the standard method using simple variable length Huffman-like codes and codebooks. CABAC, or Context-

279 256 Adaptive Binary Arithmetic Coding, on the other side, is an optional, highly efficient binary encoding scheme. 5.2 DC transformation The upper left transform coefficient (i.e. the first coefficient in scan order) is treated separately for Intra_16x16 macroblocks and chroma residuals. Because this coefficient indicates the average intensity value of a block, correlations between the DC values of adjacent equally predicted blocks can be exploited this way.for Intra_16x16 macroblocks, the DC coefficients are transformed using a separable 4x4 Hadamard transform with the following matrix: M = (2) Chroma residuals are always transformed in one group per macroblock. Thus, there are 4 chroma blocks per macroblock and channel. A separable 2x2 transform is used: M = (3) 6.2 Advanced prediction H.264 may not only use interframe references to the last decoded frame, but to an arbitrary number of frames. This greatly improves the encoding efficiency of periodic movements (long-term prediction). Moreover, multiple predictions may be mixed by arbitrary ratios (weighted prediction). 6.3 Arbitrary Slice Ordering Since the slices of a picture can be decoded independently (except for the slice edges which can only be approximated), slices need not be decoded in the correct order to render an image in acceptable quality. This is useful e.g. for UDP streaming where packets may be delivered out-oforder. 6.4 Flexible Macroblock Ordering The macroblocks inside a slice may be encoded in any order. This can be used to increase robustness against transmission errors, for example. It is also reminiscent of MPEG-4 s video object planes system, which could be used to encode each object of a scene individually. In normal video streams, however, this feature is not used, and macroblocks are sent in the normal scan line order. 7. SYSTEM DESIGN 7.1 Introduction 6. Advanced Coding Tools Beyond the basic structure described above, H.264 offers additional features to improve coding efficiency. 6.1 In-Loop Deblocking Filter After each individual frame has been decoded, a deblocking filter that reduces the most visible blocking artifacts is applied. This has been available since MPEG-4 Simple Profile as an optional post-processing operation, but in H.264, it is closely integrated into the encoding and decoding process: The already deblocked frames are used as reference frames by the following P or B slices. This technique circumvents noticeable blocking artifacts as far as possible. Design is the first step in moving from problem domain towards the solution domain. A design can be object oriented or function oriented. In this paper function oriented method is followed which consists of module definition with each module supporting a function abstraction. As shown in the below Fig2 sensor image output can be compressed by the H.264 standard before delivered to the actuators on the scene. Sensor Input of Robot Compress -ed memory model Fig 2 Context diagram of Compressed Memory model for Robotics Actuators of Robot

280 Structured design The context diagram for the H.264 Baseline decoder is as shown in Fig 3. The input and output of the system are as given in this diagram. namely NAL Unit Decoder, Variable Length Decoder, Inverse transformation and Quantization module and Motion Compensation and Picture construction module, which will perform the following processes to obtain the decoded video frames from the encoded H.264 Byte stream. H.264 media stream H.264 Baseline Decoder Output File in YUV 1 NAL unit decoding process 2 Variable length decoding process 3 Inverse transformation and quantization process 4 Motion compensation and picture construction process Fig 3 Context diagram of H.264 Baseline Decoder The input to the decoder is a video file/bitstream, which is encoded using H.264 standard. The decoder decodes the input file and stores the output as a yuv file. The output file can be played using any YUV Player/Viewer.Using this as the starting point, a logical data flow diagram of the physical system is constructed. The DFD (Data Flow Diagram) for the same is shown Fig 4. Apart from these four main functional blocks, a deblocking filter is also needed in the system which filters the edges of the distorted macroblocks; thus helping in eliminating blocking artifacts and improving video quality. 7.3 Functional and Design specification Here, the major requirements are listed and then a list of modules in the system that implements those requirements is given. H.264 File NAL Unit Deco der Varia ble Lengt h Deco der Quantiz ed Coefficient Inver se Quan tizatio n 1 A user friendly GUI should be provided for easy interaction with the decoder. 2 The input to the decoder should be a media file encoded using H.264 baseline profile. 3 The validity of the input file should be checked. 4 For bitstreams which do not confirm to H.264 baseline profile an error message should be flashed to the user. Decoded Macrobl ocks Debl ocking Filte r Distor ted Macr o- block MC and Pictu re Const ru- Differen ce Macro Fig 4: Logical DFD of H.264 Baseline Decoder As shown in the above DFD, the system designed is desired to have four major functional modules Inve rse Tran sformat i 5 Four processes NAL unit decoding, Variable length decoding, Inverse transformation and quantization and Motion compensation and picture construction should be performed on the encoded media file to get decoded video frames. 6 Edges of the decoded macroblocks/frames should be filtered out to eliminate blocking artifacts and give an impression of finer quality video. 1 A status file and a log file should be generated to review the decoding process.

281 258 2 The decoded output should be stored as a yuv file. NAL Unit Decoder module: Input: H.264 bitstream. Output: NAL unit decoded data. Purpose: It is the first stage of the decoder. The input to the decoder is a H.264 bitstream which is organized as discrete packets called NAL units of variable length. This stage is used for separating the NAL units and for processing the header information contained in these NAL units. Using the header information this module also checks the validity of the input bitstream. Variable Length Decoder module: Input: Data from NAL unit Decoder. Output: Quantized co-efficients. Purpose: In this stage the data elements from the NAL unit decoder are entropy decoded and reordered to produce a set of quantized coefficients. Inverse Transformation and Quantization module: Input: Quantized co-efficients. Output: Difference macroblock. Purpose: In this stage the quantized co-efficients from the variable length decoding unit are rescaled and inverse transformed to give difference macroblock. Motion Compensation and Picture Construction module: Input: Difference macroblock. Output: Distorted macroblock. Purpose: In this stage the difference macroblock is taken as an input and distorted macroblock is produced as output. It is here in this stage that the actual picture construction takes place. Deblocking Filter module: Input: Distorted macroblock. Output: Decoded Macroblock. Purpose: The purpose of this stage is to filter the edges of the macroblocks/frames to eliminate blocking artifacts and give an impression of finer quality video. 8. Data Flow Diagrams In this section flow charts are given for the NAL Unit decoder module, Variable length decoder module, Inverse transformation and quantization module and Motion compensation and picture construction module. Also a flow control diagram indicating decoder control flow is given.

282 259 START START Get I/P and O/P file specifications using GUI Open decoder configuration file and read input If DECODE Is End of Stream? Yes Create decoder configuration file and write user data into this file Close decoder configuration file No Separate NAL Units Write to status file END Launch decoder Allocate memory for NAL units and parse NAL unit header information No Is decoding finished Yes Read status file Display status file contents on status box of GUI RESET Fig 6: NAL Unit Decoder module Close status file Yes PLAY Delete decoder configuration file and status file No START Yes Launch decoder output viewer STOP Read data elements from NAL unit decoder No Play O/P file Type of Coding Exit decoder output viewer VLC /UVLC Decode VLC / UVLC coded data elements Fig 5: Decoder Control flow CAVLC Decode CAVLC coded data elements CABAC Decode CABAC coded data elements END Fig 7: Variable Length Decoder module

283 260 Start Start Read quantized samples from variable length decoder Call decode one I or P frame Is luma sample? No A Is all the frames over? Yes END Yes No Is macroblock prediction mode intra16x16? No Call decode slice Yes Scanning of 4x4 luma DC co-efficients Scanning of 4x4 residual co-efficients Decode slice Inverse quantization of 4x4 luma DC co-efficients Inverse transformation of 4x4 luma DC co-efficients Inverse quantization of 4x4 residual co-efficients Inverse transformation of 4x4 residual co-efficients Fig 9: Motion Compensation and Picture Construction module END Decode slice Fig 8: Inverse transformation and quantization module A Copy the active picture parameter set Chroma samples from VLC Go to decode one MB No Initialize the current MB Scanning of 2x2 array of chroma component using Inverse Raster scan Decode one MB Inverse quantization of 2x2 chroma blocks Reorder picture list Inverse transformation of 2x2 chroma blocks Is end of slice? END Yes Go to Start Inverse transformation and quantization module (Cont d) Motion Compensation and Picture Construction module (Cont d)

284 261 Decode one MB is believed that important new applications will be invented that will leverage H.264 technology. Is current MB IPCM coded? Yes Decode IPCM coded macroblocks No Is intra Coded? Yes Find the prediction mode Switch to the decoding of that mode Find the neighbors Decode Intra predicted macroblocks No Obtain the MVD and current MV Calculate the actual motion vector using MVD and MV Obtain last two digits by anding with 11, to obtain the fractional value of MV. The remaining gives the integer part Using interpolation obtain the values for the macroblock to be predicted Motion Compensation and Picture Construction (Cont d) 9. Conclusion H.264 standard is found to increase coding efficiency compared to any previous video coding standards (like MPEG-4 part 2 and MPEG-2) for a wide range of bit rates and resolutions. Thus the visual input from the sensors of the robots can be compressed by this technique before delivered to the actuators on the scene. H.264 because of its higher compression is definitely going to be the prominent standard in the near future. It will make possible new applications that could have never been dreamed of before. The higher performance of the H.264 is mainly due to the tree structured motion compensation, which has also made the implementation of the standard simpler that many previous standards. The increased compression performance of H.264 will enable existing applications like video conferencing, streaming video over the internet, and digital television on satellite and cable to offer better quality video at lower cost, and will allow new video applications that were previously impractical because of economics or technology. High-Definition television on DVD, Video on mobile phones and video conferencing over low bandwidth connections will become practical and it References [1] A.K.Jain. Fundamentals of Digital Image Processing. Englewood Cliffs, NJ: Prentice Hall, 1989 [2] Peter Symes, Digital Video Compression, McGraw-Hill, [3]Khalid Sayood. Introduction to Data Compression, second edition [4] William B. Pennebaker and Joan L. Mitchell, JPEG Still Image Data Compression Standard, Van Nostrand Reinhold, [5] Zi Nan Li and Mark S Drew, Fundamentals of multimedia, Pearson Publication. [6] Joan L. Mitchell, MPEG Video Compression Standard, Chapman & Hall: International Thomson, [7 MPEG Video Compression Technique, /HTML/mpeg_tech.html. [8] MPEG website: [9] N.Abramson. Information theory and coding. New York: McGraw-Hill, 1963 [10] T.A. Welch. A Technique for High- Performance data compression, IEEE Computer, pages 8-19, June 1984 [11] M. Ghanbari, Standard Codecs: Image Compression to Advanced Video Coding, Hertz, UK: IEE, [12] MPEG-2: ISO/IEC JTC1/SC29/WG11 and ITU-T, ISO/IEC : Information Technology-Generic Coding of Moving Pictures and Associated Audio Information: Video, ISO/IEC and ITU-T, [13] IEEE Transactions on Circuits and Systems for Video Technology, Special Issue on the H.264/AVC Video Coding Standard, Vol. 13, No. 7, July [14] P. Hoyingcharoen and C. Schmidt, Overview of H.264/AVC, Signal Compression Lab, UCSB. [15] ISO_IEC_ first edition December [16] Iain E. G. Richardson. H.264 / MPEG-4 Part 10 Tutorials [17]MPEG-4: ISO/IEC JTCI/SC29/WG11, ISO/IEC :2000-2: Information on Technology-Coding of Audio-Visual Objects - Part 2: Visual, ISO/IEC,

285 262 Iterative Refinement of Transformation Parameters for Image Registration 1 Jharna Majumdar, 2 Vanathy.B and 3 Lekshmi.S 1 Former Sc G (DRDO), Prof. and Dean R and D, Dept. of CSE,Nitte Meenakshi Institute of Technology, Bangalore, India 2 Scientist D, Aerial Image Exploitation Division, Aeronautical Development Establishment, Bangalore, India 3 Scientist D, Naval Physical Oceanographic Laboratory, Cochin, India Abstract Image registration is an important process in high-level image interpretation systems developed for civilian and defense applications. Registration is carried out in two phases : namely feature extraction and feature correspondence. The basic building block of feature based image registration scheme involves matching feature points that are extracted from a sensed image to their counter parts in the reference image. Features may be control points, corners, junctions or interest points. The objective of this study is to develop a methodology for iterative convergence of transformation parameters automatically between two successive pairs of aerial or satellite images. In this paper we propose an iterative image registration approach to compute accurate and stable transformation parameters that would handle image sequences acquired under varying environmental conditions. The iterative registration procedure was initially tested using satellite images with known transformation parameters like translation, rotation, scaling and the same method is further tested with images obtained from aerial platform. Key words: Image registration, Corner Detector, Homography, Correlation 1. Introduction Image registration is one of the important components for the image application like image fusion, panoramic mosaicing, high resolution reconstruction, change detection etc. The accomplishment of these high level tasks rely on the image registration method that is used to geometrically align the sequence of aerial images [1-2]. In the present scenario, aerial imagery is obtained from a camera mounted on an Unmanned Aerial Vehicle (UAV). UAVs are slow moving vehicles developed for the purpose of surveillance and reconnaissance. The ground image exploitation system located at the Ground Control Station (GCS) receives video imagery and the corresponding telemetry data during mission and this system executes the high level image interpretation tasks in real time. Hence the iterative image registration method employed in most of the defense applications should be highly accurate and computationally efficient to meet the end users requirement. The iterative registration procedure initially calculates the global matching between the pair of images by feature correspondence followed by local matching for fine alignment. The initial match points are filtered using the correlation coefficients, which are then used for the computation of transformation parameters and this process is repeated for n iterations till the transformation parameters converges. 2 Methodology Image registration is performed to geometrically align multiple images where one of the images is considered as the reference image on to which other image is registered. In this work, an automatic image registration is performed which starts from a global alignment and proceeds in a hierarchical manner to local alignment. The corner features are identified using the well known KLT / Harris corner detectors which are then further filtered using cornerness similarity measure. The global alignment is performed by considering corner features

286 263 as control points and the match points are stored as initial guess. The alignment is done preserving the underlying structure of the individual images. In the conventional approach of image registration, the transformation parameter estimation is performed considering the ground truth of the control points. In the local alignment step, a search window around each match point is constructed and searching is performed locally between the candidate match points of the reference image and the second image. The pixel corresponding to the match point from the reference image is compared with the individual feature point in the search window and the measure of comparison is calculated based on correlation methods. The pixel having the highest score for correspondence is identified as the exact match point corresponding to the pixel in the reference image. After obtaining the feature point correspondence using feature matching, the match points are sorted according to the correlation coefficients. The first few points from the sorted list are considered for computation of transformation parameters. This process is iteratively repeated until the transformation parameters converge. The block diagram of the entire process is shown in Fig 1. P 0 0 1, P 2 are the input feature points calculated from the input pair of images. P 1, P 2 are the match points after global matching and H 1 is the initial homography matrix used ' ' to calculate the global transformation parameters. P 1, P 2 are the corresponding set of points after local matching using the normalized area correlation method. Match points are filtered based on the normalized area correlation coefficients-2 and then the corresponding ' sets of match points are P 1S, P ' 2S. Using these points the homography matrix H 2 is calculated and correlation is '' '' calculated around the matched pair of points. P 1S, P 2S are the corresponding set of points with coefficient-3. Transformation parameters are repeatedly computed for n iterations and finally checked for convergence. 3 Registration Process A geometric transformation is a mapping that relocates image points. Transformations can be global or local in nature. Global transformations are usually defined by a single set of parameters, which is applied to the whole image. Some of the most common global transformations are affine, perspective, and polynomial transformations. Translation and rotation transforms are usually caused by the orientation of the sensor, while scaling transform is the effect of change in altitude of the sensor used for acquiring the images. The registration between two images is performed by a global alignment to obtain a coarse matching followed by a local alignment for fine matching. The global alignment is performed by feature based registration and the local alignment is performed by area based registration. After local matching, the new sets of match points are filtered to obtain the well correlated match points and the homography is computed. This process is continued until a stable homography between the two images is obtained. 3.1 Global alignment by feature based registration In the case of feature-based registration, prominent features are extracted from the reference image and the search image, which would be the candidate points to compute the transformation parameters between the images [3-7]. The features could be edges, corners or some regions of user choice Feature extraction The features considered in this study are corners extracted by KLT feature detector and Harris feature detectors KLT Corner detector The Kanade-Lucas-Tomasi (KLT) corner detector operates by comparing a patch of image information in two consecutive image frames from any image sequence. KLT features are geometrically stable under different transformations. The KLT operator is based on the local structure matrix C str. The local structure matrix C str is computed as follows 2 f x f x f y C str = w G (r;) 2 where f x f x f y f y and f y denote the first derivative along the x and y direction respectively for the point f(x, y) in the image and w G (r;) is a Gaussian filter of selected size. The Fig.1 Block diagram for iterative registration procedure

287 264 output is a list of feature points with the following properties. (i) 2 > thr ( 2 is the smaller Eigen value of C str after diagonalisation). (ii) D-neighborhood of these points does not overlap thr is a variable used to vary the number of corners detected. The variable D can also be adjusted to take care of overlap. The features detected using KLT corner detector is shown in Fig 2. (a) No of features detected (b) No of features detected in in image1 is 1000 image2 is Feature reduction Fig. 3 (a) (b) Input images and feature detected images using Harris corner detector After feature extraction, feature reduction is performed to retain only dominant feature points whose correspondence can be accurately established between each pair of images. The feature reduction method considered in this study is cornerness similarity measure. (a) Input image 1 (b) Input image 2 (c) No of features detected in image1 is 1000 Fig. 2(a) (d) Input images and feature detected images using KLT corner detector Harris Corner detector (d) No of features detected in image2 is 1000 The Harris corner detector is based on an underlying assumption that corners are associated with the maxima of the local function. It is less sensitive to noise in the image since the computations are based entirely on first derivatives. The Harris corner detector computes a cornerness value, C(x, y) for each pixel in the image I(x, y). A pixel is declared as a corner if the value of C(x, y) is below a certain threshold. The value of C(x, y) is computed from the intensity gradients in the x and y direction as follows: C(x, y) = det C str - (trace C 2 str ). Where is a constant and trace is the highest eigen value. The local structure matrix C str is represented as follows. 2 f f f x x y C str = w G (r;) 2 fx f y f y where f x and f y denote the first derivative of the point f(x,y) in the image along the x and y direction respectively and w G (r;) is a Gaussian filter with selected size. The features detected using Harris corner detector is shown in Fig 3. Cornerness is the characteristic property of any interest point (feature point) p and is defined as Cp= λ λ 2 2, where λ 1 and λ 2 are the two eigen values of the feature point. The correspondence between 2 points are measured using the similarity measure S (p, q) is defined as S (p, q) = min (Cp, Cq) /max (Cp, Cq). where p and q are in two images, A point is considered as a good feature if, S (p, q) >T. where T is a variable threshold. If the value of the corner strength exceeds the predefined threshold, then the corner is considered as a prominent feature and is retained for subsequent computations. The reduced features are shown in Fig. 4. (a) No of Feature points in image1 is Estimation of Homography (b) No of Feature points in image2 is 463 Fig. 4(a) (b) Images after feature reduction The feature points after feature reduction with maximum corner strength are used to calculate the homography matrix. The values of the homography matrix are obtained by using a RANSAC method and this matrix essentially give the transformation parameters or the displacement vector between the points in the search image with respect to the reference image [7-8]. If m is a point in reference image and H is the homography then the mapped coordinate point, m in search image is represented as m = H (m),

288 265 H (0,0) H (1,0) H (2,0) l l where H = H l(1,0) H l(0,0) H l(3,0) In the above homography matrix, H l (0, 0) is scos and H l (1, 0) is ssin, where s and θ represent the scaling and rotation between the sequence of images (I 1 and I 2 ). H l (2, 0) and H l (3, 0) represent translation along x (Tx) and y direction (Ty) respectively. An example of image matching is shown in Fig. 5(a)-(b). The transformation parameters for the above images are Tx = , Ty = , R = 3.59, S = l window W in the search image. The point that has the maximum correlation coefficient value is chosen as the corresponding point of the match point in the search image. An approach of coarse and fine matching is done to calculate the correlation coefficient. The results of the local matching points are shown in Fig. 6. (a) No of match points in Image 1 is 35 (b) No of match points in Image 2 is 35 Fig. 6(a) (b) Images after feature matching (a) No of match points in image1 is 35 (b) No of match points in image2 is 35 Fig. 5(a) (b) Images after feature matching The homography matrix computed using the feature points do not give the exact transformation parameters in the case of all pair of images. If the images are rich features and have less rotation and scaling then the estimation of homography leads to a correct result. The homography matrix would result in mismatch between the respective points in the two images in the case of poor contrast images which less features. In such cases, a local alignment of the respective match points needs to be performed. 3.2 Local alignment by area based registration The criteria for computing the fine match point is to form a correlation measure between functions and determine the location of the maximum correlation [9]. The general expression to calculate the for normalized area correlation coefficient is as follows l m l m l m l mx( i, j) y( i, j) x( i, j) y( i, j) i1 j1 i1 j1 i1 j1 fabs 2 2 l m l m 2 2 l m x( i, j) x( i, j) l my( i, j) y( i, j) i 1 j 1 i 1 j 1 where x( i, j): referenceimagegraylevel y( i, j): graylevelof the subimagein the searchspace For each of the feature point in the reference image, construct a window W, and a search window in the search image. The correlation coefficient is computed between the window W in the reference image and the 3.3 Generation of stable homography After obtaining the fine match points by local matching, the match points with highest and second highest correlation factor are considered to compute the homography. The computation of homography results in the calculation of transformation parameters that is closer to the real values. The process is repeated until a stable homography is obtained between successive iterations. Fig. 7 shows the matching between two images after attaining a stable homography. The transformation parameters in this example are Tx = , Ty = 5.11, R = 3.36, S = Table 1 shows the variation of transformation parameters from multiple iterations. Iterat ions Translation in x direction (Tx) Transformation parameters Translation in y direction (Ty) Rotation (R) Scaling (S) Table 1: shows the variation of transformation parameters for multiple iterations for aerial images (a) No of match points in (b) No of match points in image 1 is 14 image 2 is 14 Fig. 7(a) (b) Images after final matching

289 266 4 Experimental Study 4.2 Case 2: Building from aerial images with unknown transformation parameters The iterative registration procedure was tested on satellite images with known transformation parameters. The transformation parameters finally converge and were found stable. Fig. 8 shows all the intermediate results generated using the satellite images with known transformation parameters. In the iteration procedure, the transformation parameters are found to remain stabilized after a few iterations. Finally the module was tested with aerial images obtained from aerial platform. The results obtained were found to be satisfactory. The experimental results for all the iterations are tabulated in table 2. Fig. 9 and Fig.10 shows the results generated using the aerial images for Building and Road Junction. The corresponding transformation parameters for all the iterations are tabulated in the tables 3 and 4 respectively. Iterat ions Transformation parameters for satellite images Translation in x direction (T x ) Translation in y direction (T y ) Rotation (R) Scaling (S) Table 2: shows the variation of transformation parameters for multiple iterations for satellite images. 4.1 Case 1: Satellite images with known transformation parameters (a) Aerial image 1 (b) Aerial image 2 (a) Satellite image1 (b) Satellite image2 rotated by 20.0 (c) No of features detected in image1 is 1000 (d) No of features detected in image2 is 1000 (c) No of features detected in image1 is 500 (d) No of features detected in image2 is 500 (e) No of match points in image1 is 147 (f) No of match points in image2 is 147 (e) No of match points in image1 is 246 (f) No of match points in image2 is 246 Fig. 9(a) (f) Feature extraction, reduction, matching for a pair of aerial image - Building Fig. 8 (a f) Feature extraction, reduction, matching for a pair of satellite images

290 Case 3: Road Junction from aerial images with unknown transformation parameters (a) Aerial image 1 (b) Aerial image 2 using iterative refinement of transformation parameters. After obtaining approximate match pair of points between the reference image and the search image by homography matrix, a local matching is performed in the search image corresponding to the points in the reference image. The fine match points so obtained are filtered and the selected points automatically are used to generate the new homography matrix. The process is repeated till there is no significant change in the transformation parameters. Thus the iterative registration scheme can be used in various applications like aerial image mosaicing, high resolution reconstruction of low resolution images and change detection. 6 Acknowledgement (c) No of features detected in image1 is 1000 (d) No of features detected in image2 is 1000 The authors wish to express their heartfelt thanks to Director ADE for his kind permission to publish the study. 7 References (e) No of match points in image1 is 72 Iterati ons Transformation parameters for Road Junction Translation in x direction (T x ) (f) No of match points in image2 is 72 Fig. 10(a)-(f) Feature extraction, reduction, coarse & fine matching for a pair of aerial image-road Junction Translation in y direction (T y ) Rotatio n(r) Scalin g(s) Table 4: shows variation of transformation parameters for multiple iterations in aerial images - Road Junction. [1] L.G. Brown, A survey of image registration techniques, ACM Computing Surveys, Vol. 24, No. 4, pp , December [2] Jharna Majumdar, B. Vanathy, Navneet Varshney, D Raghavendra Rao, Umesh Jalan, Girish R, Image Mosaicing from video sequences, IETE Journal [3] Jharna Majumdar, Vinay. S, Sethu Selvi, Registration and mosaicing for images obtained from UAV, SPCOM 2004, Bangalore [4] S. M. Smith and J. M. Brady SUSAN- A New Approach to low level Image processing, [5] J. Shi and C. Tomasi, Good features to track, Proc. IEEE CVPR, [6] Joint Tracking of Features and Edges, IEEE Conference on Computer Vision and Pattern Recognition (CVPR),Anchorage, Alaska, June 2008 [7] C. Harris and M. Stephens, A combined corner and edge detector, Alvey Vision Conference, pp , [8] Gerald Jean Francis Banon, Sergio Donizete Faria, Morphological approach for template matching, Brazilian Symposium on Computer Graphics and Image Processing, [9] Frank Nielsen, Randomized adaptive algorithms for mosaicing systems, IEICE TRANS. INF & SYST July [10] Gerald Jean Francis Banon, Sergio Donizete Faria, Area based matching algorithm assessment from satellite images, pp , Proc. 8 th ECS and Image Analysis, Conclusion The paper suggests a new unique approach to compute a stable homography between a pair of aerial images

291 Performance Analysis of FTTH at 10 Gbit/s by GEPON Architecture 268 Monika Gupta 1, Neeru Malhotra 2 and A.N.Pathak 3 1 Department of Electronics and Communication Engineering, SSIET, Derabassi, Punjab, India 2 Department of Electronics and Communication Engineering, DAV Institute of Engineering and Technology, Jalandhar, Punjab, India 3 Department of Applied Sciences, NITTTR, Chandigarh, India Abstract Gigabit Ethernet passive optical network GEPON is becoming technology of choice for meeting increasing bandwidth demands in optical networks.this study establishes analysis, simulation and performance evaluation of GEPON FTTH system(with and without dispersion compensation) with triple play with video broadcast at 1550nm and voice over IP and high speed internet at 1490nm at 10 Gbps data link downstream configuration with 1:16 splitting and distance of 20km and 30km. Keywords: FTTH, PON, DCF,GEPON 1. Introduction In today s information age, there is a rapidly growing demand for transporting information from one place to another.optical communication systems have proven to be suitable for moving massive amounts of information over long distances at low cost. As internet traffic capacity is increasing,this increase has lead to future capacity upgrades.fiber optic cables are made of glass fiber that can carry data at speeds exceeding 2.5 gigabits per second (Gbps). Today almost all long haul high capacity information transport needs are fulfilled by optical communication systems[1-2]. For next generation of optical communication systems,fiber-to-the-home(ftth) using passive optical network(pon) system design is required to improve transmission performance. GEPON is a perfect combination of Ethernet technology and passive optical network technology. 1.1 Passive Optical Networks(PON) PON is classified into APON (ATM PON), EPON (Ethernet PON) and GPON (Gigabit Capable PON) on the basis of protocol method. APON provides transmission at 622Mbps and uses ATM(Asynchronous Transfer Mode) protocol. Later, APON has been renamed as BPON(Broadband PON) since it is misunderstood that APON provides only ATM service. Passive optical network(pon) is a technology viewed by many as an attractive solution to the first mile problem[3,4].a PON is a point to multipoint optical network with no active elements in the signal s path from source to destination. There are two competing optical distribution network architectures: active optical networks (AONs) and passive optical networks (PONs). Active optical networks rely on some sort of electrically powered equipment to distribute the signal, such as a switch, router, or multiplexer. Passive optical network (PON) is a point-to-multipoint, architecture in which unpowered optical splitters are used to enable a single optical fiber to serve multiple premises. In the earliest PONs, the synchronous transfer mode(stm),the asynchronous transfer mode(atm),and subcarrier frequency division multiplexing(subcarrier FDM or SCM)were all demonstrated for multiplexing subcarrier traffic[5][6][7]. PON systems use optical fiber splitter architecture, multiplexing signals with different wavelengths for downstream and upstream[8][9][10].pon means passive optic network, EPON is integrated with Ethernet technologies, and GEPON is a Gigabit EPON. GEPON system is designed for telecommunication use. GEPON devices are fully compliant to IEEE802.3ah.This series products features high integration, flexible application, easy management, as well as providing QoS function. 2. System description of GEPON FTTH The GE in GEPON stands for gigabit Ethernet. EPON based FTTH was adopted by IEEE standard IEEE802.3ah in September 2004[11]. Adopting Ethernet technology in the access network would simplify network management. EPON standards networking community renamed the term 'last mile to 'first mile' to symbolize the importance and significance of the access part of the network. EFM introduced the concept of Ethernet Passive Optical Networks EPONs, in which a point to multipoint P2MP network topology is implemented with passive optical splitters.

292 269 GEPON System Architecture 3. Simulation Analysis of GEPON FTTH System with 1:16 splitting and reach of 20km and 30km at 10 Gb/s Data/Voice Data/Voice Figure 1 System configuration for FTTH GEPON with 1:16 splitter The simulation model consists of three sections: 1) OLT 2) Distribution network and 3) ONU. Figure2 Received data spectrum The network between the OLT and the ONUs is passive, meaning that it doesn't require any power supply. The presence of only passive elements in the network decreases its operational and maintenance costs once the infrastructure has been laid down. The schematic diagram consists of a PRBS generator which is producing the bit stream and is directly fed to the NRZ electrical driver, now the output of the electrical driver is goes to the modulator and finally get amplified.then we also combine data with video.for video, we have two sine wave generator having different frequencies and goes to the input of the summer, then summer mixes both the frequencies and finally goes to modulator and then amplifier. The outputs of both amplifiers are fed to multiplexer,both video and the voice/data combines and transfer on optical fiber. Now at end of the receiver side,every ONU has a particular receiver for both the reception of the video and the voice/data. Before the reception a splitter is used to differentiate the particular user. The optical signal from CO travels through fiber and arrives at optical network termination unit.at the subscriber here,the optical signal demultiplexes into data/voice and video components.data/voice is transmitted at wavelength of 1490nm and video at 1550nm.The high speed internet component is represented by a data link with 10Gbps.The voice component can be represented as VOIP service (voice over IP),which is gaining popularity as an alternative to traditional PSTN(Public switched telephone network) at the customer end. 1) With DCF Eye Diagram (a)

293 270 (b) Figure 3(a) Data/Voice eye diagram with DCF at 20km (b)data/voice eye diagram with DCF at 30km (a) BER Values Table 1 BER value with DCF DIST ANCE BER WITHO UT FEC 20KM e BER WITH (RS255,239) e-122 BER WITH (RS_CONCAT _CODE) e KM e e e-122 Figure 4(a) Data/Voice eye diagram without DCF at 20km (b) -005 (b) Data/Voice eye diagram without DCF at 30km Q Factor BER Values Table 3 BER value without DCF Table 2 Q factor with DCF DISTANCE=20KM DISTANCE=30KM e e+000 DISTANC E 20KM BER WITHOUT FEC e- BER WITH (RS255, 239) e- BER WITH (RS_CONC AT _CODE) e ) Without DCF Eye Diagram 30KM e e e- 002 Q Factor Table 4 Q factor without DCF DISTANCE=20KM DISTANCE=30KM e e+000

294 271 Video CThR4. [9] Jong-Won Kim, Broadband Communications Department, An Optimized ATM-PON Based FTTH Access Network, International Conference on Information, Communications and Signal Processing ICICS '09. [10] Jaehyoung Park, Geun Young Kim, Hyung Jin Park, and Jin Hee Kim, FTTH deployment status & strategy in Korea, FTTH & U-City Research Team, Network Infra Laboratory. [11] Ethernet in the First Mile, IEEE Standard 802.3ah, Monika Gupta, lecturer(ece), SSIET, Derabassi Pursuing MTech Figure5 Received video spectrum 4. Conclusion From simulation results, we conclude that BER value and Q factor are much better with the use of dispersion compensation. Also as distance varies from 20 to 30 km, BER value and Q factor variation is high,ber increases and Q factor decreases. Neeru Malhotra, A.P.& Head ECE Department, DAVIET, Jalandhar M.Tech (Pursuing PHD) Life Membership: ISTE and Punjab Science Congress References [1] P.R. Trischitta and W.C. Marra, Global undersea communication networks, IEEE Communication Magazine, vol.34, no.2, February 1996, pp [2] N.S. Bergan, Undersea communication systems, in Optical Fiber Telecommunications IVB Components, Chapter 4,Academic Press, ISBN , March [3] G.Pesavento and M. Kelsey, PONs for the Broadband Local Loop, Lightwave, vol. 16, no. 10, Sept. 1999, pp [4] B.Lung, PON Architecture Futureproofs FTTH, Lightwave, vol.16, no.10, Sept.1999, pp [5] J.R.Stern et al., Passive optical networks for telephony applications and beyond- TPON, Electron. Letts., vol.23, no.24, Nov.1987, pp [6] N.Tokura et al., A broadband subscriber network using optical star couplers, in Proc.Globecom 87, 1987, pp [7] T.E.Darcie, Subcarrier multiplexing for multiple access lightwave networks, J. Lightwave Technol., vol. LT-5, no. 8,, Aug. 1987, pp [8] K. Kitayama, T. Kuri, J. J. Vegas Olmos, and H. Toda, Fiber-Wireless networks and Radio-over-Fibre Techniques, in Conference on Lasers and Electro-Optics/Quantum Electronics and Laser Science Conference and Photonic Applications Systems Technologies, OSA Technical Digest (CD) (Optical Society of America, 2008), paper Dr.A.N.Pathak, Professor and Head Applied Science Department, NITTTR,Chandigarh Member of Professional Body; Fellow of Institution of Engineers,India ; Life member of Indian Socity of Biotechnology Gold Medalist Institution Of Engineers, INDIA. Educational Qualification; M.Sc., B.Tech, M.Tech, Ph. D( Chem- Engineering -IIT Delhi)., FIE, Post Doctorate Stuttgart University (GERMANY).. GOLD MEDALIST at B TECH AND M TECH level both. Gold Medal of Birbal Savitree SAHANI Foundation Area of Specialisation: Applied Chemistry, Biotechnology, Nanotechnology,IPR, Chemical Engineering, Fluid Mechanics, Applied Sciences

295 272 Modeling and design of evolutionary neural network for heart disease detection K.S.Kavitha 1, K.V.Ramakrishnan 2, Manoj Kumar Singh 3 1 Auden Technology & Management academy, Bangalore, India 2 C.M.R.Institute of Technology. Bangalore, India 3 Manuro Tech. Research, Bangalore, India Abstract This research is having purpose to find the alternatives to the solution of complex medical diagnosis in detection of heart disease where human knowledge is apprehended in a general fashion. Successful application examples shown previously that human diagnostic capabilities are significantly worse than the neural diagnostic system. This paper describes a new system for detection of heart disease based on feed forward neural network architecture and genetic algorithm. Hybridization has applied to train the neural network using Genetic algorithm and proved experimentally, proposed learning is more stable compare to back propagation. Detail analysis has given with respect to genetic algorithm behavior and its relationship with learning performance of neural network. Affect of tournament selection has analyzed to get more detailed knowledge what is happening internally. With the proposed system we hope that, design of diagnosis system for heart disease detection will become easy, cost effective, reliable and efficient. Keywords: Heart disease, Neural network, Genetic algorithm, Tournament selection. 1. Introduction Coronary artery disease cause severe disability and more death than any other disease including cancer. Coronary artery disease is due to athermanous narrowing and subsequent occlusion of the coronary vessel. It manifests as angina, silent ischemia, unstable angina, myocardial infraction, arrhythmias, heart failure and sudden death. Corresponding authors: 1 K.S.Kavitha, 3 Manoj Kumar Singh This research is completed at Manuro Tech. Research Bangalore, India. The term Heart disease encompasses the diverse diseases that affect the heart. Heart disease is the major cause of casualties in the world. Coronary heart disease, Cardiomyopathy and Cardiovascular disease are some categories of heart diseases. The term cardiovascular disease includes a wide range of conditions that affect the heart and the blood vessels and the manner in which blood is pumped and circulated through the body. Cardiovascular disease (CVD) results in severe illness, disability, and death [1]. Narrowing of the coronary arteries results in the reduction of blood and oxygen supply to the heart and leads to the Coronary heart disease (CHD). Myocardial infarctions, generally known as a heart attacks, and angina pectoris, or chest pain are encompassed in the CHD. A sudden blockage of a coronary artery, generally due to a blood clot results in a heart attack. Chest pain arise when the blood received by the heart muscles is inadequate [2].High blood pressure, coronary artery disease, valvular heart disease, stroke, or rheumatic fever/rheumatic heart disease are the various forms of cardiovascular disease. The World Health Organization has estimated that 12 million deaths occurs world wide, every year due to the cardiovascular diseases. Half the deaths in the United States and other developed countries occur due to cardio vascular diseases. It is also the chief reason of deaths in numerous developing countries. On the whole, it is regarded as the primary reason behind deaths in adults [3]. Epidemiologists in India and international agencies such as the World Health Organization (WHO) have been sounding an alarm on the rapidly rising burden of cardiovascular disease (CVD) for the past 15 years [4].The reported Prevalence of coronary heart disease (CHD) in adult surveys has risen four-

296 273 fold in 40 years and even in rural areas the prevalence has doubled over the past 30 years [4]. In 2005, 53% of the deaths were on account of chronic diseases and 29% were due to cardiovascular diseases alone [5 6]. It is estimated that by 2020, CVD will be the largest cause of disability and death in India. The country already has more than 40.9 million people with diabetes and more than 118 million people with hypertension, which is expected to increase to 69.9 and 213 million respectively, by 2025 unless urgent preventive steps are taken[7 9]. WHO estimates [10] that India lost 9 billion dollars in national income from premature deaths due to heart disease, stroke and diabetes in 2005, and is likely to lose 237 billion dollars by 2015.Further concern is the fact that Indians are succumbing to diabetes, high blood pressure and heart attacks 5 10 years earlier than their Western counterparts [7, 11, 12,] in their most productive years. Unfortunately, scientific data also shows that socio-economically disadvantaged sections of the population are now the dominant victims of CVD and its risk factors [13-17]. There is also preliminary evidence that the burden of CVD in rural areas is increasing [18]. Therefore, there is a need to initiate urgent action to forestall this grave portent of increasing mortality and morbidity due to CVD. Let us have a look of report presented by WHO in 2009 update (September). CVDs are the number one cause of death globally: more people die annually from CVDs than from any other cause. An estimated 17.1 million people died from CVDs in 2004, representing 29% of all global deaths. Of these deaths, an estimated 7.2 million were due to coronary heart disease and 5.7 million were due to stroke. Low- and middle-income countries are disproportionally affected: 82% of CVD deaths take place in low- and middleincome countries and occur almost equally in men and women. By 2030, almost 23.6 million people will die from CVDs, mainly from heart disease and stroke. These are projected to remain the single leading causes of death. The largest percentage increase will occur in the Eastern Mediterranean Region. The largest increase in number of deaths will occur in the South-East Asia Region. 2. Human experts vs. machine expert in diagnosis Almost all the physicians are confronted during their conformation by the task of learning to diagnose. Here, they have to solve the problem of deducing certain diseases or formulating a treatment based on more or less specified observations and knowledge. The diagnosis of disease is a significant and tedious task in medicine. The detection of heart disease from various factors or Symptoms is a multi-layered issue which is not free from false presumptions often accompanied by unpredictable effects. With the complexity of information available from health care domain, human intelligence alone is not good enough to ascertain the proper diagnosis. The problems associated with people involve in the diagnosis can considered broadly as (1) not having very high accuracy in decision (ii) shortage of expertise (iii) difficulties in knowledge up gradation (iv) time dependent performance as shown in fig. (1). Because of these problems there is necessity to develop the expert system to provide the assistance mechanism in diagnosis procedure. The conclusion is clear: humans can not ad hoc analyze complex data without errors. Intelligent systems are increasing being deployed in medicine and healthcare, to practically aid the busy clinician and to improve the quality of patient care [50][51][52][53][54][55][56]. The need for an objective methodology for evaluating such systems is widely recognized [52][53][57][58][59][60][61]. In medicine and healthcare where safety is critical, this is important if techniques such as medical expert systems and neural systems are to be widely accepted in clinical practice. Can neural networks help in this situation? Answer is yes. Artificial neural networks are computational paradigms based on mathematical models that unlike traditional computing have a structure and operation that resembles that of the mammal brain. Artificial neural networks or neural networks for short are also called connectionist systems or parallel distributed systems or adaptive systems, because they are composed by a series of interconnected processing elements that operate in parallel. Neural networks lack centralized control in the classical sense, since all the interconnected processing elements change or adapt Simultaneously with the flow of information and adaptive rules. Neural networks are being applied to an increasing large number of real world problems. Their primary advantage is that they can solve problems that are too complex for conventional technologies; problems that do not have an algorithmic solution or for which an algorithmic solution is too complex to be defined. In algorithmic approach, the computer follows a set of instructions

297 274 in order to solve a problem. Unless the specific steps that the computer needs to follow are known, the computer cannot solve the problem. That restricts the problem solving capability of conventional computers to problems that we are already understood and knows how to solve. In general, neural networks are well suited to problems that people are good at solving, but for which computers generally are not. These problems include pattern recognition and forecasting which requires the recognition of trends in data. In case of neural network, even for imprecise inputs the network is able to retrieve the desired output or the data that is closest to the desired output. Considering the successful applicability of neural networks in many areas, an endeavor to assess their performance by providing the assistance in heart disease is the basis for this work. Artificial Neural Networks (ANNs) have been widely used as tool for solving many decisions modeling problems. The various capabilities and properties of ANN like Nonparametric, on-linearity, Input-Output Mapping, Adaptively make it a better alternative for solving massively parallel distributed structure and complex task in comparison of statistical techniques, where rigid assumption are made about the model. Artificial Neural Network being non-parametric, makes no assumption about the distribution of the data and thus capable of letting the data speak for itself. As a result, they are a natural choice for modeling complex medical problems when large databases of relevant medical information are available. The remaining sections of the paper are organized as follows: In Section 3, a brief review of some of the works on heart disease diagnosis is presented. A brief introduction about the feed forward neural architecture and its computing process is given in Section 4. In section 5, concept of genetic algorithms has given. Design of ANN learning based on GA presented in section 6. Result of various experiments and comparison contained by the section 7.Section 8 contain the analysis of tournament selection. The conclusions and future work are described in Section Previous work Numerous works in literature related with heart disease diagnosis have motivated our research Work. The necessity of effective identification of information -contextual data - non obvious and valuable for decision making from a large collection of data has been on a steady increase recently. This is an interactive and iterative process encompassing several subtasks and decisions and is known as Knowledge Discovery from Data. The central process of Knowledge Discovery is the transformation of data into knowledge for decision making, known as Data Mining [20, 38]. Knowledge discovery in databases constitutes numerous distinct clearly illustrated processes. Complication in diagnosis Doctors Advantage Active intelligent diagnosis Time dependent performance Replication of experts not possible Knowledge up gradation is difficult Difficult to establish multi variables relation Not possible to deliver quantitative result Fig.1. complexity in diagnosis with doctor The central process belongs to data mining which aids in the recognition of hoarded yet beneficial knowledge from enormous databases. A widely accepted formal definition of data mining is given as Data mining is the non trivial extraction of implicit previously unknown and potentially useful information about data [22].Conventionally, the information that is mined is denoted as a model of the semantic structure of the dataset. In recent times, the data mining techniques are employed by numerous authors to propose diagnosis approaches for various kinds of heart diseases [32, 27, 38, 39, 40, 41]. A novel technique to develop the multi-parametric feature with linear and nonlinear characteristics of HRV (Heart Rate Variability) was proposed by Heon Gyu Lee et al. [32]. Statistical and classification techniques were utilized to develop the multiparametric feature of HRV. Besides, they have assessed the linear and the non-linear properties of HRV for three recumbent positions, to be precise the supine, left lateral and right lateral position. Numerous experiments were conducted by them on linear and nonlinear characteristics of HRV indices to assess several classifiers, e.g., Bayesian classifiers [35], CMAR (Classification based on Multiple Association Rules) [34], C4.5 (Decision Tree) [36]

298 275 and SVM (Support Vector Machine) [33]. SVM surmounted the other classifiers. A model Intelligent Heart Disease Prediction System (IHDPS) built with the aid of data mining techniques like Decision Trees, Naïve Bayes and Neural Network was proposed by Sellappan Palaniappan et al. [27]. The results illustrated the peculiar strength of each of the methodologies in comprehending the objectives of the specified mining objectives. IHDPS was capable of answering queries that the conventional decision support systems were not able to. It facilitated the establishment of vital knowledge, e.g. patterns, relationships amid medical factors connected with heart disease. IHDPS subsists well being web-based, user-friendly, scalable, reliable and expandable. The prediction of Heart disease, Blood Pressure and Sugar with the aid of neural networks was proposed by Niti Guru et al. [38]. Experiments were carried out on a sample database of patients records. The Neural Network is tested and trained with 13 input variables such as Age, Blood Pressure, Angiography s report and the like. The supervised network has been recommended for diagnosis of heart diseases. Training was carried out with the aid of back propagation algorithm. Whenever unknown data was fed by the doctor, the system identified the unknown data from comparisons with the trained data and generates a list of probable diseases that the patient may vulnerable. 4. Feed forward architecture The type of Architecture implemented in the project is multiplayer Feed Forward architecture [62]. This neural network is formed in three layers, called the input layer, hidden layer, and output layer. Each layer consists of one or more nodes, represented in this diagram by the small circles. The lines between the nodes indicate the flow of information from one node to the next. In this particular type of neural network, the information flows only from the input to the output. The nodes of the input layer are passive, means they do not modify the data. They receive a single value as their input, and duplicate the value to their multiple outputs. In comparison, the nodes of the hidden and output layer are active. Each value from the input layer is duplicated and sent to all the hidden nodes. The values entering a hidden node are multiplied by weights; a set of predetermined number is stored in the program. The weighted inputs are then added to produce a single number. This is shown in the diagram by the symbol Σ. Before leaving the node, this number is passed through a nonlinear mathematical function called Sigmoid. This is an S shaped curve that limits the node s output. That is, the input to the sigmoid is a value between - to +, while its output can only be between 0 and 1.The outputs from the hidden layer given to output nodes after multiplication with associated weight on that path. The active nodes of the output layer combine and modify the data to produce the output value of the network. 5. Genetic Algorithms 5.1 Fundamental concept Basic ideas on Genetic algorithms were first developed by John Holland, and are mainly used as search and optimization methods. Given a large solution space, one would like to pick out the point which optimizes an object function while still fulfilling a set of constraints. In network planning, a solution point could be a specific link topology, a routing path structure, or a detailed capacity assignment with minimum costs. Genetic algorithms are based on the idea of natural selection. In nature, the properties of an organism are determined by its genes. Starting from a random first generation with all kinds of possible gene structures, natural selection suggests that over the time, individuals with "good" genes survive whereas "bad" ones are rejected. Genetic algorithms try to copy this principle by coding the possible solution alternatives of a problem as a genetic string. The genes can be bits, integers, or any other type from which a specific solution can be deduced. It is required that all solution points can be represented by at least one string. On the other hand, a specific gene string leads to exactly one solution. A set of a constant number of gene strings, each characterizing one individual, is called a generation. Since the different strings have to be evaluated and compared to each other, the notion of fitness is introduced. The fitness value correlates to the quality of a particular solution. Instead of working with the actual solution itself, genetic algorithms operate on the respective string representation. The following three basic operators are applied :(i) Reproduction (ii)crossover (iii) Mutation. The reproduction process creates a new generation, starting from an existing generation; strings are reproduced with a probability respective to their fitness value. Strings which represent solutions with good properties have a higher chance to survive than strings depicting solution points with bad characteristics. This principle is also known as "survival of the fittest.

299 276 The crossover operator exchanges genetic information between two strings. The strings of two randomly selected solutions are broken up at randomly chosen position, and parts of the strings are exchanged. One hopes that two solutions with good properties create an even better one. New genetic material is introduced by the mutation operator. The values of individual genes are changed and hence, new solutions are chosen. Mutation becomes important when after some generations the number of different strings decreases because strong individuals start dominating. In a situation of strong dominance of few strings, the crossover operator alone would not bring any changes and the search for an optimal solution would be ended. To partially shift the search to new locations in the solution space, the mutation operator randomly alters genes. 5.2 Procedures for Implementation of Genetic Algorithms We start out with a randomly selected first generation. Every string in this generation is evaluated according to its quality, and a fitness value is assigned. Next, a new generation is produced by applying the reproduction operator. Pairs of strings of the new generation are selected and crossover is performed. With a certain probability, genes are mutated before all solutions are evaluated again. This procedure is repeated until a maximum number of generations are reached. While doing this, the all time best solution is stored and returned at the end of the algorithm. 6. Evolution of weights in neural network In recent times much research has been undertaken in the combination of two important and distinct areas: genetic algorithm and neural networks. Genetic algorithms attempt to apply evolutionary concept to the field of problem solving, notably function optimization and have proven to be valuable in searching large, complex problem spaces. Neural network are highly simplified models of the working of the brain. These consist of a combination of neurons and synaptic connections, which are capable of passing data through multiple layers. The end result is a system which is capable of pattern and classification. In the past, algorithm such as back propagation have been developed which refine one of the principle components of the neural networks: the connection weights. The system has worked well, but is prone to becoming trapped in local optima and is incapable of optimization where problems lie in a multi-model or non-differentiable problem space. Genetic algorithms and neural networks can be combined such that populations of neural networks compete with each other in a Darwinian survival of the fittest setting. Networks which are deemed to fit are combined and passed onto the next generation producing an increasingly fit population, so that after a number of iterations an optimized neural network can be obtained without resorting to a design by hand method. The evolution of neural networks can be classified according to the goals behind such evolution. Some schemes have proposed the evolution of weights with the fixed architecture. Other level of evolution where improve can be expected are the architecture,transfer function etc.[yao].the primary motivation for using evolutionary technique to establish the weighting values rather than traditional gradient decent techniques such as back propagation lies in the inherent problems associated with gradient descent approaches. Back propagation in particular can become easily trapped in local maxima, furthermore it is impossible for a back propagation algorithm to find the optimal solution if the function being optimized is multimodal or non differentiable [1].in addition it has been shown that back propagation is sensitive to the initial condition of the neural network causing additional problem. 6.1 Define Chromosome, Crossover & mutation operation to generate the offspring Initially a population of chromosomes created, contains the uniformly distributed generated random number. Chromosomes directly represented the weights of neural network, as shown in fig (6). Hence there is no need of any encoding mechanism in result. Crossover here can be defined as node crossover. From picked up two parents for generating off springs, any one active node from the set of hidden and output layer, pick up randomly with equal probability. This node is considered as a node of crossover. Values of all incoming weights for that particular node are exchanged with available other parent. Mutation can also be considered as node mutation, where in an offspring, all incoming weights

300 277 for a randomly picked up active node added with Gaussian distributed random numbers. These two process shown in fig(7)and in fig(8) Objective function To get the fitness value of any chromosome, weights are extracted from that chromosome, which is reverse process of chromosome formulation. With the available inputs and above defined weights, architecture of neural network formed and output generated. From the output, error value is defined. Reciprocal of this error is taken as fitness value of that particular chromosome. i.e Fitness = 1/error; 6.3. Algorithm for weights evolution by GA in ANN The following steps are taken for finding the optimal value of weights. (a) A population of µ parent solution,i=1,. µ,is initialized over a region M є. (b) Two parents selected randomly with uniform distribution from population of µ parents, and two offspring will created by crossover operator as shown in fig( 7) (c) Mutation on newly generated offspring will be applied as shown in fig (8). (d) Process from step (b) will repeated until population of offspring equal to µ,otherwise move to process (e) (e) Each parent solution, i=1,. µ and offspring,o=1,. µ,is scored in light of the objective function ƒ(x). (f) A mixture population contains both parent population and offspring population created. This mixture population randomly shuffled so that parents and offspring could mix up properly. (g) Each solution from is evaluated against 10% of µ other randomly chosen solutions from the mix population.for each comparison a win is assigned if the solution s score is less than or equal to that of its opponent. (h) The µ solutions with the greatest number of wins are retained to be parents of the next generation. (i) If the difference in the best chromosome for N number of continuous generation are less than the defined threshold value k, terminate the process and the last generation best chromosome is the optimal weights, otherwise proceed to step (b). 7. Experimental setup 7.1 Data set Data set has taken from publically available UCI repository [49]. Data set contains 270 patient s record and each patient condition defined by 13 parameters, 150 patient s record taken for training data set and remaining 120 for test data set. 7.2 Parameter setting ANN architecture size: No. of Input nodes=13; hidden nodes=2; output node=1; (a)weights adjustment with gradient decent: Bias & momentum applied; Learning constant = 0.2; Momentum constant=0.1; (b)weights adjustment with GA: Population size = 100, Initial range of random value definition: [ ] uniformly distributed; With the above defined parameters of neural network, architecture is created such that ten times independent training and test process repeated to capture more generalized capability for available data set. Training of neural network has given by back propagation learning[62] and genetic algorithm independently to have various parameters like True result (TR),False result(fr),true positive value (TP+),False positive value(fp+),true negative value (TN-) and false negative value(fn-). 7.3 Performance w.r.t gradient decent based training.

301 278 From the table (1) it is very clear, out of ten times, three times training could not happen properly. This is because of inherent limitation of gradient decent based algorithm to trap in local minima. The effect of training can easily see over the test data performance, in table (2).Suboptimal performance results shown in shaded rows. There is a question now: should this kind of learning algorithm acceptable for development of health care solution? Answer is definitely not, because whenever there is new data set available for up gradation, difficulties will appear. To overcome this kind of problem best option is evolutionary computation and this is the reason genetic algorithm has selected to find the optimal set of weights. Table (1): performance with gradient decent over training data set for 10 independent trails. performance is very good but very consistence, which was lacking with the gradient decent learning Table(3):performance with GA over training data set for 10 independent trail. OVERALL (+VE)RESULT (-VE)RESULT TR FR TPV FP TNV FN OVERALL (+VE)RESULT (-VE)RESULT TR FR TPV FPV TNV FNV Table (2): performance with gradient decent over test data set for 10 independent trails. Table (4): performance with GA over test data set for 10 independent trails. OVERALL (+VE)RESULT (-VE)RESULT TR FR TPV FPV TNV FNV OVERALL (+VE)RESULT (-VE)RESULT TR FR TPV FPV TNV FNV Performance w.r.t Genetic algorithm based training Table (3) and Table (4) represent the performance over training and test data set for ten independent trails. From the result it s very clear not only Fig.2. Error plot of population with learning Mean square Error plot of population with number of generation is shown in fig( 2).from the figure this is clear whole population is converging nearly same

302 279 towards the final solution, as it was expected because initial solution generated from random numbers hence error value is high but with the generation improvement started to appear. Mean square of error for best chromosome along with the average error also plotted as shown in fig (3). members for both domains counted in the every generation as shown in the table (5). From the table and plot it is very clear that more members coming from offspring population. This is true with each new generation developed in the process as shown in fig (5).This is an indication of generating the fitter offspring s with time, hence diversity appears, at the same time more exploration of search space. Fig.3. Error plot of best chromosome & average error of population with learning. Fig.4. Best chromosomes distribution. 8. Affect and analysis of tournament selection 8.1. Who gives better more? This is very first time,analysis of tournament selection to know,in creation of new generation with respect to competition who contributed more number of best chromosome in each generation for complete process. In other words parents population or offspring population dominant in producing best chromosome. To get the answer of this question in each generation, belonging domain of best chromosomes stored and counted. This will continue until process is not terminated. This is repeated for all ten independent trails. Contributed value by each domain plotted against each other.as it is shown from fig (4) and in table (5), no domain having the absolute dominancy for all trails. In conclusion each domain nearly contributed in same manner to produce the best at present, which is again supports the law available in nature Who is having more density: parent s population or offspring population? This is another very important question arise when tournament selection applied. Number of selected Fig.5. chromosome density distribution Table (5): performance with tournament selection over training data set for 10 independent trails. Chromo. density NO. of Best Chromos. Parents offsprin parent offspring

303 280 a b c d w11 w1a w1b w12 w13 w1c w1d w14 W2a w2b w2c w2d W31 W3a w3b w32 w33 w3c w3d w34 W41 w42 w43 Fig (6). Chromosome development a b c d a b c d CROSSOVER 4 8 w11 w1a w1b w12 w13 w1c w1d w14 W21 W2a w2b w22 w23 w2c w2d w24 W31 W3a w3b w32 w33 w3c w3d w34 W41 w42 w43 W51 W5a w5b w52 w53 w5c w5d w54 W61 W6a w6b w62 w63 w6c w6d w64 W71 W7a w7b w72 w73 w7c w7d w74 W81 W85 w82 w86 w83 w87 Offspring w1a w1b w1c w1d W6a w6b w6c w6d W3a w3b w3c w3d W41 w42 w43 W5a w5b w5c w5d W2a w2b w2c w2d W7a w7b w7c w7d W85 w86 w87 Fig. (7) Crossover operation

304 281 MUTATION (OFFSPRING 1) [N (0,1) N(0,1) N(0,1) ] + w11 w12 w13 w14 W21 W61 w22 w62 w23 w63 w64 w24 W31 w32 w33 w34 W41 w42 w43 MUTATION (OFFSPRING 2) [N (0, 1), N (0,1), N(0,1),N(0,1)] + W51 w52 w53 w54 W21 w22 w23 w24 W71 w72 w73 w74 W81 w82 w83 Fig (8): mutation operation 9. Conclusions A new insight about problem and requirement associated with health care solution has presented. To develop the intelligent solutions, support for artificial neural network has shown. Most of the developed solution utilized the feed forward architecture and back propagation as a learning algorithm. Because of trapping tendency in local minima, problem may appear at the time of up gradation and in result no consistency in result. To overcome this problem a new way, genetic algorithm has applied for training purpose. Untold and unseen side of tournament selection has discovered. This will give a new meaning to understand the selection method. The primary intent of our research is to design and develop a model and design efficient approach for detection of heart disease, which can be utilized for real world applications as a computer aided diagnostic tool. With the presented research, in future we are going to develop an expert system for heart disease detection References: [1] "Hospitalization for Heart Attack, Stroke, or Congestive Heart Failure among Persons with Diabetes", Special report: , New Mexico. [2] Chen, J., Greiner, R.: Comparing Bayesian Network Classifiers. In Proc. of UAI-99, pp ,1999. [3] "Heart Disease" from netfirms.com/heart-disease-causes.html [4]. Reddy, K. S., India wakes up to the threat of cardiovascular diseases. J. Am. Coll. Cardiol., 2007, 50, [5]. WHO India, (accessed on 11 February 2008). [6]. Reddy, K. S., Shah, B., Varghese, C. and Ramadoss, A. Responding to the threat of chronic diseases in India. Lancet, 2005, 366, [7]. Mohan, V., Sandeep, S., Deepa, R., Shah, B. and Varghese, C.,Epidemiology of type 2 diabetes: Indian scenario. Indian J. Med.Res., 2007, 125, [8]. Kearney, P. M., Whelton, M., Reynolds, K., Muntner, P., Whelton,P. K. and He, J., Global burden of hypertension: analysis of worldwide data. Lancet, 2005, 365, [9]. Reddy, K. S., Naik, N. and Prabhakaran, D., Hypertension in the developing world: a consequence of progress. Curr. Cardiol.Rep., 2006, 8, [10]. WHO Global Report 2005, Preventing chronic diseases: A vitalinvestment, [11]. Teoh, M., Lalondrelle, S., Roughton, M., Grocott- Mason, R. anddubrey, S. W., Acute coronary syndromes and their presentation in Asian and Caucasian patients in Britain. Heart, 2007, 93, [12]. Qiao, Q. et al., Age- and sex-specific prevalence of diabetes and impaired glucose regulation in 11 Asian cohorts. Diabetes Care,2003, 26, [13]. Reddy, K. S. et al., Educational status and cardiovascular risk profile in Indians. Proc. Natl. Acad. Sci. USA, 2007, 104, [14]. Pais, P. et al., Risk factors for acute myocardial infarction in Indians: a case-control study. Lancet, 1996, 348, [15]. Reddy, K. S. et al., Collaborative study of coronary heart disease,icmr Taskforce Study number A, [16]. Gupta, D. K., Verma, L. K., Khosla, P. K. and Dash, S. C., The prevalence of microalbuminuria in diabetes: a study from NorthIndia. Diabetes Res. Clin. Practice, 1991, 12, [17]. Rastogi, T. et al., Diet and risk of ischemic heart disease in India.Am. J. Clin. Nutr., 2004, 79,

305 282 [18]. Joshi, R. et al., Chronic diseases now a leading cause of death in rural India mortality data from the Andhra Pradesh Rural Health Initiative. Int. J. Epidemiol., 2006, 35, [19] Sally Jo Cunningham and Geoffrey Holmes, "Developing innovative applications in agriculture using data mining", In the Proceedings of the Southeast Asia Regional Computer Confederation Conference, [20] Frank Lemke and Johann-Adolf Mueller, "Medical data analysis using self-organizing data mining technologies,"systems Analysis Modelling Simulation, Vol. 43, no. 10,pp: , [21] Tzung-I Tang, Gang Zheng, Yalou Huang, Guangfu Shu,Pengtao Wang, "A Comparative Study of Medical Data Classification Methods Based on Decision Tree and System Reconstruction Analysis", IEMS Vol. 4, No. 1, pp ,June [22] Frawley and Piatetsky-Shapiro, Knowledge Discovery in Databases: An Overview. The AAAI/MIT Press, Menlo Park, C.A, [23] Hsinchun Chen, Sherrilynne S. Fuller, Carol Friedman, and William Hersh, "Knowledge Management, Data Mining,and Text Mining In Medical Informatics", Chapter 1, pgs 3-34 [24] S Stilou, P D Bamidis, N Maglaveras, C Pappas, Mining association rules from clinical databases: an intelligent diagnostic process in healthcare. Stud Health Technol Inform 84: Pt , [25] T Syeda-Mahmood, F Wang, D Beymer, A Amir, M Richmond, SN Hashmi, "AALIM: Multimodal Mining for Cardiac Decision Support", Computers in Cardiology,pages: , Sept Oct [26] Anamika Gupta, Naveen Kumar, and Vasudha Bhatnagar,"Analysis of Medical Data using Data Mining and Formal Concept Analysis", Proceedings Of World Academy Of Science, Engineering And Technology,Volume 6, June 2005,. [27] Sellappan Palaniappan, Rafiah Awang, "Intelligent Heart Disease Prediction System Using Data Mining Techniques",IJCSNS International Journal of Computer Science andnetwork Security, Vol.8 No.8, August 2008 [28] Andreeva P., M. Dimitrova and A. Gegov, Information Representation in Cardiological Knowledge Based System, SAER 06, pp: Sept, [29] Latha Parthiban and R.Subramanian, "Intelligent Heart Disease Prediction System using CANFIS and Genetic Algorithm", International Journal of Biological, Biomedical and Medical Sciences 3; 3, 2008 [30] Hian Chye Koh and Gerald Tan,"Data Mining Applications in Healthcare", Journal of healthcare information management, Vol. 19, Issue 2, Pages 64-72, [31] L. Goodwin, M. VanDyne, S. Lin, S. Talbert, Data mining issues and opportunities for building nursing knowledge Journal of Biomedical Informatics, vol:36, pp: ,2003. [32] Heon Gyu Lee, Ki Yong Noh, Keun Ho Ryu, Mining Biosignal Data: Coronary Artery Disease Diagnosis using Linear and Nonlinear Features of HRV, LNAI 4819: Emerging Technologies in Knowledge Discovery and Data Mining, pp , May [33] Cristianini, N., Shawe-Taylor, J.: An introduction to Support Vector Machines. Cambridge University Press, Cambridge,2000. [34] Li, W., Han, J., Pei, J.: CMAR: Accurate and Efficient Classification Based on Multiple Association Rules. In: Proc. of 2001 Interna l Conference on Data Mining [35] Chen, J., Greiner, R.: Comparing Bayesian Network Classifiers. In Proc. of UAI-99, pp ,1999. [36] Quinlan, J.: C4.5: Programs for Machine Learning. Morgan Kaufmann, San Mateo [37] M. Chen, J. Han, and P. S. Yu. Data Mining: An Overview from Database Perspective. IEEE Trans. Knowl. Dat. Eng., vol: 8, no:6, pp: , [38] Niti Guru, Anil Dahiya, Navin Rajpal, "Decision Support System for Heart Disease Diagnosis Using Neural Network", Delhi Business Review, Vol. 8, No. 1 (January - June [39] Carlos Ordonez, "Improving Heart Disease Prediction Using Constrained Association Rules," Seminar Presentation at University of Tokyo, [40] Franck Le Duff, Cristian Munteanb, Marc Cuggiaa, Philippe Mabob, "Predicting Survival Causes After Out of Hospital Cardiac Arrest using Data Mining Method", Studies in health technology and informatics,107(pt 2):1256-9, [41] Boleslaw Szymanski, Long Han, Mark Embrechts, Alexander Ross, Karsten Sternickel, Lijuan Zhu, "Using Efficient Supanova Kernel For Heart Disease Diagnosis", proc. ANNIE 06, intelligent engineering systems through artificial neural networks, vol. 16, pp: , [42] Kiyong Noh, Heon Gyu Lee, Ho-Sun Shon, Bum Ju Lee, and Keun Ho Ryu, "Associative Classification Approach for Diagnosing Cardiovascular Disease", springer,vol:345, pp: , [43] A. Bellaachia and Erhan Guven, Predicting Breast Cancer Survivability using Data Mining Techniques, Ninth Workshop on Mining Scientific and Engineering Datasets in conjunction with the Sixth SIAM International Conference on Data Mining (SDM 2006), Saturday, April 22, [44] Abdelghani Bellaachia and David Portnoy, E-CAST: A Data Mining Algorithm for Gene Expression Data, 2nd Workshop on Data Mining in Bioinformatics at the 8th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Edmonton, Alberta, Canada, July 23rd, [45] KS Leung,YT Ng, KH Lee, LY Chan, KW Tsui, Tony Mok, CH Tse, Joseph Sung, "Data Mining on DNA Sequences of Hepatitis B Virus by Nonlinear Integrals" Proceedings Taiwan-Japan Symposium on Fuzzy Systems &Innovational Computing, 3rd meeting, pp.1-10 Aug 2006, Japan. [46] Florin Gorunescu, "Data Mining Techniques in Computer-Aided Diagnosis: Non-Invasive Cancer Detection,"International Journal of Bioengineering, Biotechnology andnanotechnology, vol.1, no.2, pp , [47] Fu-ren Lin, Shien-chao Chou, Shung-mei Pan, Yaomei Chen, Mining time dependency patterns in clinical pathways, International Journal of Medical Informatics, 2001.

306 283 [48] Margaret R. Kraft, Kevin C. Desouza, Ida Androwich (2002). Data Mining in Healthcare Information Systems: Case Study of a Veterans Administration Spinal Cord Injury Population, Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS 03). [49] Heart attack dataset from [50] J. M. Garibaldi, E. C. Ifeachor, Application of Simulated Annealing Fuzzy Model Tuning to Umbilical Cord Acid Base Interpretation,IEEE Transactions on Fuzzy Systems, Vol.7, No.1, pp.72 84, 1999 [51] J. W. Huang, Y. Lu, A. Nayak and R. J. Roy, Depth of Anesthesia Estimation and Control, IEEE Transactions on Biomedical Engineering.Vol.46, No.1, pp.71 81, [52] D. A. Cairns, J. H. L. Hansen and J. E. Riski, A Noninvasive Technique for Detecting Hypernasal Speech Using a Nonlinear Operator,IEEE Transactions on Biomedical Engineering, vol.43, no.1,pp.35 45, [53] K. P. Adlassnig and W. Scheithauer, Performance evaluation of medical expert systems using ROC curves, Computers and Biomedical Research, Vol.22, No.4, pp , [54] L. G. Koss, M. E. Sherman, M. B. Cohen, A. R. Anes, T. M. Darragh,L. B. Lemos, B. J. McClellan, D. L. Rosenthal, S. Keyhani Rofagha,K. Schreiber, P. T. Valente, Significant Reduction in the Rate of False Negative Cervical Smears With Neural Network Based Technology (PAPNET Testing System), Human Pathology, Vol 28, No 10,pp , [55] S. Andreassen, A. Rosenfalck, B. Falck, K. G. Olesen, S. K. Andersen, Evaluation of the diagnostic performance of the expert EMGassistant MUNIN, Electroencephalography and clinical Neurophysiology, Vol 101, pp , [56] B. V. Ambrosiadou, D. G. Goulis, C. Pappas, Clinical evaluation of the DIABETES expert system for decision support by multiple regimen insulin dose adjustment, Computer Methods and Programs in Biomedicine, Vol.49, pp , [57] H. D. Cheng, Y. M. Lui, R.I. Freimanis, A novel approach to microcalcification detection using fuzzy logic technique, IEEE Transactions on Medical Imaging, Vol.17, No.3, pp , [58] R. D. F. Keith, S. Beckley, J.M. Garibaldi, J.A. Westgate, E.C. Ifeachor,K. R. Green, A multicentre comparative study of 17 experts and an intelligent computer system for managing labour using the cardiotocogram,british Journal Obstrtrics Gynaecology, Vol.102,pp , [59] J. A. Swets, Measuring the Accuracy of Diagnostic Systems,Science, Vol.240, pp , [60] K. Clarke, R. O Moore, R. Smeets, J. Talmon, J. Brender, P. McNair,P. Nykanen, J. Grimson, B. Barber, A methodology for evaluation of Knowledge based systems in medicine, Artifical Intelligence in Medicine, Vol.6, pp , [61] R. Engelbrecht, A. Rector, W. Moser, Verification and Validation, in Assessment and Evaluation of Information Technologies, E. M. S. J.van Gennip, J. L. Talmon, Eds, IOS Press, pp.51 66, [62] M.k.singh, password based a generalized robust security system design using neural network, IJCSI,vol4,No.9,pp.1-9, K.S.Kavitha presently working as assistant professor & HOD of computer & information engineering in Auden Technology and management academy. She is also a Ph.D scholar in ANNA University, Coimbatore, India. Her field of research includes Artificial intelligence, ANN, Evolutionary computation and data mining. 2 K.V.Ramakrishnan presently working as a professor & dean of C.M.R. Institute of technology, Bangalore, India 3 Manoj kr. Singh, Currently holding the post of director in Manuro tech. research. He is also actively associated with industry as technology consultant & guiding several research scholars. He is having background of R&D in Nanotechnology, VLSI CAD, Evolutionary computation, Neural network, Advanced signal processing etc.

307 284 Human Tracking and Segmentation using Color Space Conversion Sivabalakrishnan.M 1,Dr.D.Manjula 2 1 Research scholar, Department of CSE, College of Engineering, Anna University, Chennai, TamilNadu, India. 2 Assistant Professor, Department of CSE, College of Engineering, Anna University, Chennai, TamilNadu, India. Abstract The HSV give more accurate and more robust tracking results compared to grayscale and RGB images. A simple HSV histogram-based color model is used to develop our system. First, a background registration technique is used to construct a reliable background image. The moving object region is then separated from the background region by comparing the current frame with the constructed background image. This paper presents a novel human motion detection algorithm that based regions. This approach first obtains a motion image through the acquisition and segmentation of video sequences. In the situations where object shadows appear in the background region, a pre-processing median filter is applied on the input image to reduce the shadow effect, before major blobs are identified. The second step is generating the set of blobs from detected varied regions in the each image sequence. Key words: Median filter, object tracking, background subtraction, rgb2hsv 1. Introduction Moving object tracking is one of the challenging task in computer vision problem such as visual surveillance, human computer interactions etc. The act of tracking in video surveillance is becoming an important task especially in monitoring large scale environments such as public and security sensitive areas. In the field of video surveillance, an object of interest would be identified and then monitored or tracked. People are typically the object of interest in video surveillance applications, for example when walking through a secluded or security sensitive area. There is now increasing interest in monitoring people in public areas, e.g. shopping malls. When tracking objects of interest in a wide or public area, additional parameters are required to improve performance such as color of clothing [1], path and velocity of tracked object [2,3] and modeling set colors for tracked persons [4]. To obtain robust tracking of a target, a number of tracking methods are typically employed in order to overcome problems such as occlusion [1, 4, 5] and noise in surveillance videos. Tracking objects is performed in a sequence of video frames and it consists of two main stages: isolation of objects from background in each frames and association of objects in successive frames in to trace them. Background subtraction techniques are mostly used for detection of motion in many real-time vision surveillance applications. In these approaches, difference between the incoming frame and the background image is performed to detect foreground objects. Background subtraction provides the most complete feature data, but is extremely sensitive to dynamic scene changes due to illumination changes and extraneous events. Most researchers are now devoted to develop robust background model in order to prevent some kind of falseness in motion detection caused by scene changes.. The background model is periodically updated by using a combination of pixel-based method and object-based method.. But, unfortunately robust and efficient object tracking is still an open research issue. To start object tracking, generally the trackers need to be initialized by an outer component [6]. Object tracking in image processing is usually based on reference image of the object, or properties of the objects [7]. Unlike other background maintenance approaches, we design no extra procedure to update background model, instead, a re-initialization of background model method is periodically performed to obtain the newest background scene. In many vision surveillance applications, the moving cast shadows mostly exhibit a challenge for accurate moving targets detection. Moving cast shadows can cause object merging, object shape distortion, and even object losses (due to the shadow cast over another object). For this reason, moving shadows detection is critical for accurate objects detection in vision surveillance applications. In recent years, many algorithms have been proposed in the literatures that deal with shadows. In our present first case, we use HSV histogram based model to make a robust color based tracker system by median filter. Blobs are defined as a group of pixels that belong to a similar object in motion. They have proven to be a better feature cue than points, corners or ridges as they usually have a larger coverage area and total occlusion of the subject is more unlikely to happen. Rossi and Bozzoli [8] successfully used moving blobs to track and count people crossing the field of view of a vertically mounted camera. In a different approach with blobs, Bregler [9] represented each pixel in each motion image by its optical flow

308 285 characteristics. These flows are then grouped into blobs that have coherent motion and are characterized by a mixture of multivariate Gaussians. We can find the more details in overall proposed system model section. The rest of the paper is organized as follows.section 2 describes Overview of Background subtraction. Section 3 describes proposed system models for object tracking. And then Section 4 shows Experimental Results. Finally the conclusion is given in Section 5. and background. The color model used here separates the brightness from the chromaticity components. The foreground and background classification is based on the following observation. Image blocks in the background should have little change in their color distortion Input Video 2. Overview of Background subtraction Background subtraction is one of the most popular methods for novelty detection in video streams. Background Subtraction, which generates a foreground mask for every frame. This step is simply performed by subtracting the background image from the current frame. When the background view excluding the foreground objects is available, it becomes obvious that the foreground objects can be obtained by comparing the background image with the current video frame.it focuses on two major steps; first, to construct a statistical representation of the background that is representative, robust to the noise and is sensitive to new objects, and second, to build another statistical model called foreground that represents the changes that take place on the scene. By applying this approach to each frame one effectively achieves tracking any moving object a background image can be elegantly used to determine the foreground objects by comparing the input frame with the background image and mark the differences as foreground objects. This technique is commonly known as background subtraction or change detection. It is the most popular approach in video surveillance applications, because it is a computationally efficient technique and it is relatively easy to obtain background images for static surveillance cameras.[10] In practice, camera noise and regions in which the object has the same color as the background make the separation of foreground objects and background more difficult. Finally, a few post processing filters are presented that can remove obvious errors like small clutter regions. consecutive images is also used for reducing noise in result of the background subtraction. In this process, we assume that moving object is only a human. We then detect moving human region in each image. 3. Proposed system The proposed algorithm consists of five stages image acquisition, RGB to HSV conversion, BitXOR operation, preprocessing and/ blob identification. Figure 1 shows the process flow of the proposed human motion detection algorithm. Each of these stages will be described in detail.we extract features in the RGB color space. Two feature variables, chromaticity and brightness distortions are used to classify the foreground Current Frame RGB to HSV Round off Frame Separation Fig 1 Proposed Tracking System 3.1 Image Acquisition and Segmentation Image acquisition is a common preliminary step in any motion-based vision application to obtain image frames from a stationary or moving camera, or multiple cameras. Usually, a frame grabber is used to sub sample a sequence of video images at a certain frame rate before the actual processing begins. Generally, video sequences can be of high frame rate (10-30fps) or low frame rate (< 10 fps)1. It is crucial to take into consideration the type of video system used so that the appropriate segmentation method can be implemented. After the acquisition of image frames, image segmentation can be performed using background subtraction, depending on the frame rate of the video sequences Frame segmentation Bit XOR Median filter Area Removal Blop Identifier Object Count Compare with Ground truth Reference Frame RGB to HSV Round off For high frame rate sequences, the adjacent frame subtraction method is used since the change of motion between consecutive frames is very small. Thus, the difference image, D(x,y,t) between an input frame and the next acquired frame after a fixed time interval c is given. The more widely known background subtraction technique is used for low frame rate sequences where

309 286 the change of 1 fps denotes frames-per-second, the standard measure of frame rate motion is larger. This method eliminates the stationary background, leaving only the desired motion regions. In certain video systems, the acquisition process may be susceptible to erratic changes in illumination, reflection, and noise. effect of input noise values with extremely large magnitudes Removal of motion at boundary Pixels of the motion region that are located along the boundary are eliminated to avoid ambiguity of the region belonging to a possible moving object. 3.2 RGB to HSV Color space conversion Color vision can be processed using RGB color space or HSV color space. RGB color space describes colors in terms of the amount of red, green, and blue present. HSV color space describes colors in terms of the hue, saturation, and value. In situations where color description plays an integral role, the HSV color model is often preferred over the RGB model. RGB defines color in terms of a combination of primary colors, where as, HSV describes color using more familiar comparisons such as color, vibrancy and brightness. The color spaces that are typically used in video tracking and surveillance are YCbCr [11] and HSV [12]. HSV (M) returns an M-by-3 matrix containing an HSV color map. HSV, by itself, is the same length as the current figure s color map. The colors begin with red, pass through yellow, green, cyan, blue, magenta, and return to red. The map is particularly useful for displaying periodic functions. The mathematical relation between HSV and RGB is given by H = if B G if B > G (1) Where = cos -1 ½ ( R G ) + ( R _ B) [(R G) 2 + ( R B) ( G B ) ] 1/2 S = 1 [ 3/(R+G+B)] [min (R,G,B)] (2) V = 1/3 ( R+G+B) (3) Once the color space conversion is done for both current and background frames, coefficients are then rounded and bit xor mutually. 3.3 Preprocessing The preprocessing stage consists of two tasks morphological operations and blob Identification, and they are intended to prepare the motion image for the blob identification stage Morphological operations The following morphological operations are performed on the motion image. The median filter is a nonlinear digital filtering technique, often used to remove noise. Such noise reduction is a typical pre-processing step to improve the results the median filter can eliminate the 4. Experimental Results In our experiments we have use PET2006 Database, which consists of video sequences of human movements in various gait poses, non-human object motions and a combination of human and object movements, constructed from our motion capture system In performance evaluation, each pixel in a background subtraction method s classification was determined to be, true positive for a correctly classified foreground pixel, false positive for a background pixel that was incorrectly classified as foreground, true negative for a correctly classified background pixel, and false negative for a foreground pixel that was incorrectly classified as background. the different methods can be evaluated by the calculation of TP, TN, FP, FN, where TP, TN, FP, FN means the number of true positive, true negative, false positive and false negative, respectively. After every pixel had been classified into one of those four groups, the sensitivity, the specificity was calculated. Sensitivity and specificity are statistical measures of the performance of a binary classification test.. Sensitivity (also called recall rate in some fields) measures the proportion of actual positives which are correctly identified.specificity measures the proportion of negatives which are correctly identified. These two measures are closely related to the concepts of type I and type II errors. sensitivity is defined in equation 4, specificity is defined in equation 5 Sensitivity= TP / (TP + FN) (4) Specificity= TN / (FP + TN) (5) The sensitivity measures the proportion of actual positives which are correctly identified. The specificity measures the proportion of negatives which are correctly identified. These metrics are a measure of the accuracy or the correctness of the tracking methodology that is being evaluated with respect to a reference point, known as the ground truth. Ground truth can be defined as reference or baseline data for determining the actual path of a tracked object. A correct track is considered true when the tracked point is within the boundary region of the tracked object.

310 287 Table 1: Quantitative Evaluation of test Results a b S.I No of objects TP TN FP FN Sensitivity Specificity.N O Conclusions c Fig 2 (a) Original image (b) Foreground image (c) Tracked image (d) Ground truth c a Fig 3 (a) Original image (b) Foreground image (c) Tracked image (d) Ground truth a c d Fig 4 (a) Original image (b) Foreground image (c) Tracked image (d) Ground truth Table 1 shows the quantitative results of various frames. In a preliminary motion-free test, the system took 616 seconds to process 1,000 image frames on an Intel Pentium IV 2.63Ghz, 504MB RAM system, which is approximately 1.62 fps. MATLAB was used as the implementation tool. d d b b In this paper, we proposed an accurate and robust object extraction scheme for a dynamic environment. We built a background model and extract classification features in RGB color space. To deal with the challenges of object extraction in dynamic environment, we fused high-level knowledge and low-level features and developed a fuzzy logic inference system. The results on several sequences show that this algorithm is efficient and robust for the dynamic environment with new objects in it. We are currently working on making the prediction more accurate and creating a scheme to recover missing moving parts using known results from feature-based classification. Also, we intend to study the impact of the accuracy of results on the performance of future activity modeling and analysis. When object are closer the segmented object gets failed and it was detected as a single object, this error will be rectified by using fuzzy logic in the future work. References [1] Bird, N.D., et al. Detection of loitering Individuals in public transportation areas in IEEE Transactions on Intelligent Transportation Systems [2] Bodor, R., B. Jackson, and N.P. Papanikolopoulos. Vision-Based Human Tracking and Activity Recognition. in 11th Mediterranean Conference on Control and Automation [3] Niu, W., et al. Human Activity detection andrecognition for video surveillance. In IEEE International Conference on Multimedia and Expo [4] Iocchi, L. and R.C. Bollees. Integrated Plan- ViewTracking and Color-based person Models for Multiple People Tracking. in International Conference on Image Processing [5] Li, J., C.S. Chua, and Y.K. Ho. Color based multiple people tracking. in 7 th International Conference on Control Automation, Robotics andvision ICARCV [6] C. Yunqiang and R. Yong, Real time object tracking invideo sequences, Signals and Communications Technologies, Interactive Video, 2006, Part II: pp [7] K. Nummiaro, E. Koller-Meier, and L. Van Gool, A color-based particle filter, In Proc. First International Workshop on Generative-Model- Based Vision, 2002, pp

311 288 [8] Rossi, M., and Bozzoli, A Tracking and Counting People. In 1st Int. Conf. on ImageProcessing, [9] Bregler, C Learning and Recognizing Human Dynamics in Video Sequences. In Proc. of IEEE CS Conf. on Comp. Vision and Patt. Recognition, [10]Sivabalakrishnan.M,Dr.D.Manjula Adaptive Background Subtraction in Dynamic Environment using Fuzzy Logic International journal on Computer Science and Engineering,Vol2, [11] Chen, Y.-J., et al. The Implementation of a Standalone Video Tracking and Analysis System for Animal Behavior Measurement in Morris WaterMaze. In 27th Annual International Conference on Engineering in Medicine and Biology Society 2005 (IEEE-EMBS 2005). Shanghai. [12] Stern, H. and B. Efros. Adaptive Color Space Switching for Face Tracking in Multi-Colored Lighting Environments in Fifth IEEE Conference on Automatic Face and Gesture Recognition Washington, D.C M.Sivabalakrishnan is a Research Scholar,Department of CSE,College of Engineering,Anna University,Chennai ,India.He received the Master s degree from P.S.N.A College of Engineering, Anna university, Chennai., in His main research interests include multimedia and image processing. Dr.D.Manjula received the Master s and Ph.D degree from College of Engineering, Anna University, Chennai, India in 1987and 2004 respectively. She is currently working as Assistant Professor in the Department of Computer Science and Engineering, Anna University, Chennai. Her research interests include NLP, Text Mining, Parallel processing,grid computing, Database and multimedia.

312 289 Character Recognition using RCS with Neural Network C.Sureshkumar Department of Information Technology, J.K.K.Nataraja College of Engineering, Namakkal, Tamilnadu, India. Dr.T.Ravichandran Department of Computer Science & Engineering, Hindustan Institute of Technology, Coimbatore, Tamilnadu, India Abstract: Hand written Tamil Character recognition refers to the process of conversion of handwritten Tamil character into Unicode Tamil character. The scanned image is segmented into paragraphs using spatial space detection technique, paragraphs into lines using vertical histogram, lines into words using horizontal histogram, and words into character image glyphs using horizontal histogram. The extracted features considered for recognition are given to Support Vector Machine, Self Organizing Map, RCS, Fuzzy Neural Network and Radial Basis Network. Where the characters are classified using supervised learning algorithm. These classes are mapped onto Unicode for recognition. Then the text is reconstructed using Unicode fonts. This character recognition finds applications in document analysis where the handwritten document can be converted to editable printed document. This approach can be extended to recognition and reproduction of hand written documents in South Indian languages. In the training set, a recognition rate of 100% was achieved and in the test set the recognized speed for each character is 0.1sec and accuracy is 97%. Understandably, the training set produced much higher recognition rate than the test set. Structure analysis suggested that the proposed system of RCS with back propagation network is given higher recognition rate. Key words: SVM, SOM, FNN, RBF, RCS, BPN INTRODUCTION Handwritten character recognition is a difficult problem due to the great variations of writing styles, different size and orientation angle of the characters. Among different branches of handwritten character recognition it is easier to recognize English alphabets and numerals than Tamil characters. Many researchers have also applied the excellent generalization capabilities offered by ANNs to the recognition of characters. Many studies have used fourier descriptors and Back Propagation Networks for classification tasks. Fourier descriptors were used in to recognize handwritten numerals. Neural Network approaches were used to classify tools. There have been only a few attempts in the past to address the recognition of printed or handwritten Tamil Characters. However, less attention had been given to Indian language recognition. Some efforts have been reported in the literature for Tamil scripts. In this work, we propose a recognition system for handwritten Tamil characters.tamil is a South Indian language spoken widely in TamilNadu in India. Tamil has the longest unbroken literary tradition amongst the Dravidian languages. Tamil is inherited from Brahmi script. The earliest available text is the Tolkaappiyam, a work describing the language of the classical period. There are several other famous works in Tamil like Kambar Ramayana and Silapathigaram but few supports in Tamil which speaks about the greatness of the language. For example, Thirukural is translated into other languages due to its richness in content. It is a collection of two sentence poems efficiently conveying things in a hidden language called Slaydai in Tamil. Tamil has 12 vowels and 18 consonants. These are combined with each other to yield 216 composite characters and 1 special character (aayutha ezhuthu) counting to a total of ( ) 247 characters. Tamil vowels are called uyireluttu (uyir life, eluttu letter). The vowels are classified into short (kuril) and long (five of each type) and two diphthongs, /ai/ and /auk/, and three "shortened" (kuril) vowels. The long (nedil) vowels are about twice as long as the short vowels. Tamil consonants are known as meyyeluttu (mey - body, eluttu - letters). The consonants are classified into three categories with six in each category: vallinam - hard, mellinam - soft or Nasal, and itayinam - medium. Unlike most Indian languages, Tamil does not distinguish aspirated and unaspirated consonants. In addition, the voicing of plosives is governed by strict rules in centamil. As commonplace in languages of India, Tamil is characterised by its use of more than one type of coronal consonants. The Unicode Standard is the Universal Character encoding scheme for written characters and text. The Tamil Unicode range is U+0B80 to U+0BFF. The Unicode characters are comprised of 2 bytes in nature. For example, the Unicode for the character is 0B85; the Unicode for the character is 0BAE+0BC0. The Unicode is designed for various other

313 290 Tamil characters. The schematic block diagram of handwritten Tamil Character Recognition system consists of various stages as shown in figure 1. They are Scanning phase, Preprocessing, Segmentation, Feature Extraction, Classification, Unicode mapping and recognition and output verification. Scanning: A properly printed document is chosen for scanning. It is placed over the scanner. A scanner software is invoked which scans the document. The document is sent to a program that saves it in preferably TIF, JPG or GIF format, so that the image of the document can be obtained when needed. Preprocessing: This is the first step in the processing of scanned image. The scanned image is pre processed for noise removal. The resultant image is checked for skewing. There are Scan Document Preprocessing Segmentation Feature Extraction Classification Unicode Mapping Recognized Text Fig 1. Handwritten Character Recognition System possibilities of image getting skewed with either left or right orientation. Here the image is first brightened and binarized. The function for skew detection checks for an angle of orientation between ±15 degrees and if detected then a simple image rotation is carried out till the lines match with the true horizontal axis, which produces a skew corrected image. Fig 2. Histograms for skewed and skew corrected images, Original Texts Fig 3. Character Segmentation Knowing the skew of a document is necessary for many document analysis tasks. Calculating projection profiles, for example, requires knowledge of the skew angle of the image to a high precision in order to obtain an accurate result. In practical situations, the exact skew angle of a document is rarely known, as scanning errors, different page layouts, or even deliberate skewing of text can result in misalignment. In order to correct this, it is necessary to accurately determine the skew angle of a document image or of a specific region of the image, and, for this purpose, a number of techniques have been presented in the literature. Figure 2 shows the histograms for skewed and skew corrected images and original character. Postal found that the maximum valued position in the Fourier spectrum of a document image corresponds to the angle of skew. However, this finding was limited to those documents that contained only a single line spacing, thus the peak was strongly localized around a single point. When variant line spacing s are introduced, a series of Fourier spectrum maxima are created in a line that extends from the origin. Also evident is a subdominant line that lies at 90 degrees to the dominant line. This is due to character and word spacing s and the strength of such a line varies with changes in language and script type. Scholkopf, Simard expand on this method, breaking the document image into a number of small blocks, and calculating the dominant direction of each such block by finding the Fourier spectrum maxima. These maximum values are then combined over all such blocks and a histogram formed. After smoothing, the maximum value of this histogram is chosen as the approximate skew angle. The exact skew angle is then calculated by taking the average of all values within a specified range of this approximate. There is some evidence that this technique is invariant to document layout and will still function even in the presence of images and other noise. The task of smoothing is to remove unnecessary noise present in the image. Spatial filters could be used. To reduce the effect of noise, the image is smoothed using a Gaussian filter. A Gaussian is an ideal filter in the sense that it reduces the magnitude of high spatial frequencies in an image proportional to their frequencies. That is, it reduces magnitude of higher frequencies more. Thresholding is a nonlinear operation that converts a gray scale image into a binary image where the two levels are assigned to pixels that are below or above the specified threshold value. The task of thresholding is to extract the foreground from the

314 291 background. A number of thresholding techniques have been previously proposed using global and local techniques. Global methods apply one threshold to the entire image while local thresholding methods apply different threshold values to different regions of the image. Skeletonization is the process of peeling off a pattern as any pixels as possible without affecting the general shape of the pattern. In other words, after pixels have been peeled off, the pattern should still be recognized. The skeleton hence obtained must be as thin as possible, connected and centered. When these are satisfied the algorithm must stop. A number of thinning algorithms have been proposed and are being used. Here Hilditch s algorithm is used for skeletonization. Segmentation: After pre processing, the noise free image is passed to the segmentation phase, where the image is decomposed into individual characters. Figure 3 shows the image and various steps in segmentation. Feature extraction: The next phase to segmentation is feature extraction where individual image glyph is considered and extracted for features. Each character glyph is defined by the following attributes: (1) Height of the character. (2) Width of the character. (3) Numbers of horizontal lines present short and long. (4) Numbers of vertical lines present short and long. (5) Numbers of circles present. (6) Numbers of horizontally oriented arcs. (7) Numbers of vertically oriented arcs. (8) Centroid of the image. (9) Position of the various features. (10) Pixels in the various regions. NEURAL NETWORK APPRAACHES Support Vector Machine: The architecture chosen for classification is Support Vector machines, which in turn involves training and testing the use of Support Vector Machine (SVM) classifiers. SVMs have achieved excellent recognition results in various pattern recognition applications. Also in handwritten character recognition they have been shown to be comparable or even superior to the standard techniques like Bayesian classifiers or multilayer perceptrons. SVMs are discriminative classifiers based on vapnik s structural risk minimization principle. Support Vector Machine (SVM) is a classifier which performs classification tasks by constructing hyper planes in a multidimensional space. Classification SVM Type-1: For this type of SVM, training involves the minimization of the error function: N 1 T w w c i --- (1) 2 i1 subject to the constraints: T yi ( w ( xi ) b) 1iandi 0, i 1,..., N --- (2) Where C is the capacity constant, w is the vector of Coefficients, b a constant and ξi are parameters for handling no separable data (inputs). The index i label the N training cases [6, 9]. Note that y±1 represents the class labels and xi is the independent variables. The kernel φ is used to transform data from the input (independent) to the feature space. It should be noted that the larger the C, the more the error is penalized. Classification SVM Type-2: In contrast to Classification SVM Type 1, the Classification SVM Type 2 model minimizes the error function: N 1 T 1 w w v i --- (3) 2 N i1 subject to the constraints: T yi ( w ( xi ) b) iandi 0, i 1,..., N; (4) Self Organizing Maps: A self organizing map (SOM) is a type of artificial neural network that is trained using unsupervised learning to produce a low dimensional (typically two dimensional), discredited representation of the input space of the training samples, called a map. Self organizing maps are different than other artificial neural networks in the sense that they use a neighborhood function to preserve the topological properties of the input space. This makes SOM useful for visualizing low dimensional views of high dimensional data, akin to multidimensional scaling. SOMs operate in two modes: training and mapping. Training builds the map using input examples. It is a competitive process, also called vector quantization. Mapping automatically classifies a new input vector. The self organizing map consists of components called nodes or neurons. Associated with each node is a weight vector of the same dimension as the input data vectors and a position in the map space. The usual arrangement of nodes is a regular spacing in a hexagonal or rectangular grid. The self organizing map describes a mapping from a higher dimensional input space to a lower dimensional map space. Algorithm for Kohonon s SOM : (1) Assume output nodes are connected in an array, (2) Assume that the network is fully connected all nodes in input layer are connected to all nodes in output layer. (3) Use the competitive learning algorithm. i x x --- (5) wk ( new) wk ( old) ( i, k)( x wk ) --- (6) Randomly choose an input vector x, Determine the "winning" output node i, where w i is the weight vector connecting the inputs to output node.

315 292 Radial Basis Function (RBF): A new neural classification algorithm and Radial- Basis-Function Networks are known to be capable of universal approximation and the output of a RBF network can be related to Bayesian properties. One of the most interesting properties of RBF networks is that they provide intrinsically a very reliable rejection of "completely unknown" patterns at variance from MLP. Furthermore, as the synaptic vectors of the input layer store locations in the problem space, it is possible to provide incremental training by creating a new hidden unit whose input synaptic weight vector will store the new training pattern. The specifics of RBF are firstly that a search tree is associated to a hierarchy of hidden units in order to increase the evaluation speed and secondly we developed several constructive algorithms for building the network and tree. RBF Segmentation and character recognition: In our handwritten recognition system the input signal is the pen tip position and 1-bit quantized pressure on the writing surface. Segmentation is performed by building a string of "candidate characters" from the acquired string of strokes. For each stroke of the original data we determine if this stroke does belong to an existing candidate character regarding several criteria such as: overlap, distance and diacriticity. Finally the regularity of the character spacing can also be used in a second pass. In case of text recognition, we found that punctuation needs a dedicated processing due to the fact that the shape of a punctuation mark is usually much less important than its position. it may be decided that the segmentation was wrong and that back tracking on the segmentation with changed decision thresholds is needed. Here, tested two encoding and two classification methods. As the aim of the writer is the written shape and not the writing gesture it is very natural to build an image of what was written and use this image as the input of a classifier. Fuzzy Neural Network: Both the neural networks and fuzzy systems have some things in common. They can be used for solving a problem (e.g. pattern recognition, regression or density estimation) if there does not exist any mathematical model of the given problem. They solely do have certain disadvantages and advantages which almost completely disappear by combining both concepts. Neural networks can only come into play if the problem is expressed by a sufficient amount of observed examples. These observations are used to train the black box. On the one hand no prior knowledge about the problem needs to be given. However, it is not straightforward to extract comprehensible rules from the neural network's structure. On the contrary, a fuzzy system demands linguistic rules instead of learning examples as prior knowledge. Furthermore the input and output variables have to be described linguistically. If the knowledge is incomplete, wrong or contradictory, then the fuzzy system must be tuned. Since there is not any formal approach for it, the tuning is performed in a heuristic way. This is usually very time consuming and error prone. Hybrid Fuzzy Neural Network: Hybrid Neuro fuzzy systems are homogeneous and usually resemble neural networks. Here, the fuzzy system is interpreted as special kind of neural network. The advantage of such hybrid NFS is its architecture since both fuzzy system and neural network do not have to communicate any more with each other. They are one fully fused entity. These systems can learn online and offline. The rule base of a fuzzy system is interpreted as a neural network. Thus the optimization of these functions in terms of generalizing the data is very important for fuzzy systems. Neural networks can be used to solve this problem. RCS Algorithm: Once a boundary image is obtained then Fourier descriptors are found. This involves finding the discrete Fourier coefficients a[k] and b[k] for 0 k L-1, where L Is the total number of boundary points found, by applying equations (7) and (8) a b L jk (2 / L) m k 1/ L xme --- (7) m1 L jk (2 / L) m k 1/ L yme --- (8) m1 Where x[m] and y[m] are the x and y co-ordinates respectively of the m th boundary point. In order to derive a set of Fourier descriptors that have the invariant property with respect to rotation and shift, the following operations are defined [3,4]. For each n compute a set of invariant descriptors r (n). 2 1/ 2 2 n an bn --- (9) It is easy to show that r (n) is invariant to rotation or shift. A further refinement in the derivation of the descriptors is realized if dependence of r (n) on the size of the character is eliminated by computing a new set of descriptors s (n) as sn rn/ r1 --- (10) The Fourier coefficients a (n), b (n) and the invariant descriptors s (n), n = 1, 2... (L-1) were derived for all of the character specimens [5]. Then the sixteen invariant descriptors of s (n) are input into the neural network. Proposed New Algorithm: The major steps of the algorithm are as follows: 1. Initialize all Wij s to small random values with Wij being the value of the connection weight between unit j and unit i in the layer below. 2. Present the 16-dimensional input vector y0, input vector consists of eight fourier descriptors and eight border transition values. Specify the desired outputs. If the net is used as a classifier then all desired outputs are typically set to

316 293 zero except for that corresponding to the class the input is from. 3. Calculate the outputs yj of all the nodes using the present value of W, where Wij is the value of connection weight between unit j and the unit4 in the layer below: 1 yi 1 exp( i y w ) i ij --- (11) This particular nonlinear function is called a function sigmoid 4. Adjust weights by : SVM SOM FNN RBN RCS W ( n 1) W ij ij where0 1 ( n) y j i ( W ij ( n) W ij ( n 1)) --- (12) where (n+l), (n) and (n-1) index next, present and previous, respectively. The parameter a is a learning rate similar to step size in gradient search algorithms, between 0 and 1 which determines the effect of past weight changes on the current direction of movement in weight space. Sj is an error term for node j. i ( d j yi ) yi (1 yi ) --- (13) If node j is an internal hidden node, then : j y ( 1 y ) w --- (14) j j k k k Where k is over all nodes in the layer above node j. 5. Present another input and go back to step (2). All the training inputs are presented cyclically until weights stabilize (converge). Structure Analysis of RCS: The recognition performance of the RCS will highly depend on the structure of the network and training algorithm. In the proposed system, RCS has been selected to train the network. It has been shown that the algorithm has much better learning rate. Table 1 shows the comparison of various approach classification. Figure 5 shows efficiency result of various classification approaches. Type of classifier Fonts Error Efficiency SVM % SVM more % SOM % SOM more % FNN % FNN more % RBN % RBN more % RCS % RCS more % Table 1 Comparison of classifiers Fig 5 Chart comparing classifier efficiency RESULTS The scanned image is passed through various blocks of functions and finally compared with the recognition details from the mapping table from which corresponding unicodes are accessed and printed using standard Unicode fonts so that the Character Recognition is achieved. The invariant Fourier descriptors feature is independent of position, size, and orientation. With the combination of RCS and back propagation network, a high accuracy recognition system is realized. Figure 6,7 shows recognized identified character, encoding and Unicode character. The training set consists of the writing samples of 25 users selected at random from the 40, and the test set, of the remaining 15 users. In the training set, a recognition rate of 100% was achieved and in the test set the recognized speed for each character is 0.1sec and accuracy is 97%. Understandably, the training set produced much higher recognition rate than the test set. Structure analysis suggested that RCS with 5 hidden nodes has lower number of epochs as well as higher recognition rate. Fig 6. Sample identified character

317 294 ACKNOWLEDGEMENT The researchers would like to thank Yasodha for his assistance in the data collection and manuscript preparation of this article. Ms. Yasodha is currently a student in the department of Computer science at the Anna University of Technology, Chennai. REFERENCES Fig 7. Sample Character Encoding The number of hidden nodes will heavily influence the network performance. Insufficient hidden nodes will cause under fitting where the network cannot recognize the numeral because there are not enough adjustable parameter to model or to map the input output relationship. The minimum number of epochs taken to recognize a character and recognition efficiency of training as well as test character set as the number of hidden nodes is varied. In the proposed system the training set recognition rate is achieved and in the test set the recognized speed for each character is 0.1sec and accuracy is 97%. The training set produced much higher recognition rate than the test set. Structure analysis suggested that RCS is given higher recognition rate. Hence Unicode is chosen as the encoding scheme for the current work. After classification the characters are recognized and a mapping table is created in which the unicodes for the corresponding characters are mapped. CONCLUSION Character Recognition is aimed at recognizing handwritten Tamil document. The input document is read preprocessed, feature extracted and recognized and the recognized text is displayed in a picture box. The Tamil Character Recognition is implemented using a Java Neural Network. A complete tool bar is also provided for training, recognizing and editing options. Tamil is an ancient language. Maintaining and getting the contents from and to the books is very difficult. Character Recognition eliminates the difficulty by making the data available in handwritten format. In a way Character Recognition provides a paperless environment. Character Recognition provides knowledge exchange by easier means. If a knowledge base of rich Tamil contents is created, it can be accessed by people of varying categories with ease and comfort. [1] B. Heisele, P. Ho, and T. Poggio, Character Recognition with Support Vector Machines: Global Versus Component Based Approach, in ICCV, 2006, vol. 02, no. 1. pp [2] Julie Delon, Agnès Desolneux, A Nonparametric Approach for Histogram Segmentation, IEEE Trans. On image processing., vol. 16, no. 1, pp [3] B. Sachine, P. Manoj, M.Ramya, Character Segmentations, in Advances in Neural Inf. Proc. Systems, vol. 10. MIT Press, 2005, vol.01, no 02 pp [4] O. Chapelle, P. Haffner, and V. Vapnik, SVMs for Histogram-based Image Classification, IEEE Transactions on Neural Networks, special issue on Support Vectors, vol 05, no 01, pp , [5] Simone Marinai, Marco Gori, Artificial Neural Networks for Document Analysis and Recognition IEEE Transactions on pattern analysis and machine intelligence, vol.27, no.1, Jan 2005, pp [6] M. Anu, N. Viji, and M. Suresh, Segmentation Using Neural Network, IEEE Trans. Patt. Anal. Mach. Intell., vol. 23, pp , [7] B. Scholkopf, P. Simard, A. Smola, and V. Vapnik, Prior Knowledge in Support Vector Kernels, in Advances in Neural Inf. Proc. Systems, vol. 10. MIT Press, 2007, pp [8] Olivier Chapelle, Patrick Haffner, SOM for Histogram-based Image Classification, IEEE Transactions on Neural Networks, Vol 14 no 02, pp [9] S. Belongie, C. Fowlkes, F. Chung, and J. Malik, Spectral Partitioning with Indefinite Kernels Using the Nystrom Extention, in ECCV, part III, Copenhagen, Denmark, 2006, vol 12 no 03, pp [10] T. Evgeniou, M. Pontil, and T. Poggio, Regularization Networks and Support Vector Machines, Advances in Computational Mathematics, vol. 13, pp. 1 11, [11] P.Bartlettand, J.Shawe Taylor, Generalization performance of support vector machines and other pattern classifiers, in Advances in Kernel Methods Support Vector Learning. 2008, MIT Press Cambridge, USA, 2002, vol 11 no 02, pp

318 295 [12] E.Osuna, R.Freund, and F.Girosi, Training Support Vector machines: an application to face detection, in IEEE CVPR 07, Puerto Rico, vol 05 no 01, pp , [13] V. Johari and M. Razavi, Fuzzy Recognition of Persian Handwritten Digits, in Proc. 1 st Iranian Conf. on Machine Vision and Image Processing, Birjand, vol 05 no 03, 2006, pp [14] P. K. Simpson, Fuzzy Min-Max Neural Networks- Part1 Classification, IEEE Trans. Neural Network., vol. 3, no. 5, pp , [15] H. R. Boveiri, Scanned Persian Printed Text Characters Recognition Using Fuzzy-Neural Networks, IEEE Transaction on Image Processing, vol 14, no 06, pp , [16] D. Deng, K. P. Chan, and Y. Yu, Handwritten Chinese character recognition using spatial Gabor filters and self- organizing feature maps, Proc. IEEE Inter. Confer. On Image Processing, vol. 3, pp , AUTHORS PROFILE C.Sureshkumar received the M.E. degree in Computer Science and Engineering from K.S.R College of Technology, Thiruchengode, Tamilnadu, India in He is pursuing the Ph.D degree in Anna University Coimbatore, and going to submit his thesis in Handwritten Tamil Character recognition using Neural Network. Currently working as HOD and Professor in the Department of Information Technology, in JKKN College of Engineering, Tamil Nadu, India. His current research interest includes document analysis, optical character recognition, pattern recognition and network security. He is a life member of ISTE. Dr. T. Ravichandran received a Ph.D in Computer Science and Engineering in 2007, from the University of Periyar, Tamilnadu, India. He is working as a Principal at Hindustan Institute of Technology, Coimbatore, Tamilnadu, India, specialised in the field of Computer Science. He published many papers on computer vision applied to automation, motion analysis, image matching, image classification and view-based object recognition and management oriented empirical and conceptual papers in leading journals and magazines. His present research focuses on statistical learning and its application to computer vision and image understanding and problem recognition

319 296 Performance Analysis of the Signaling Channels of OBS Switches Hulusi YAHYAGİL A.Halim ZAİM M.Ali AYDIN Ö.Can TURNA İstanbul University, Computer Engineering Department, Avcılar İstanbul, TURKEY Abstract Nowadays, fiber optic networks that make transmission possible in high capacities become widespread. There is a partial decrease in network problems with the capabilities provided by these networks such as telephone, wide area network, Internet, video conference on a single fiber line. Also in optical networks, optical burst switching that is a new technology stands out by its some partial benefits. Optical burst switching (OBS) is a promising solution for all optical networks. In this paper, a program is developed which simulates signaling channel of an OBS switch, for signaling messages that uses signaling protocols while going from source node to destination node through intermediate OBS switches. In this study, some models for interarrival time of the signaling messages and processing time in the service are used and a comparison of these models with the other well known models is done (M/M/1/K queuing model and a model using self-similar traffic as arrival process). Keywords: Optical Networks, Optical Burst Switching, Queuing Models, OBS Switches. 1. Introduction Optical Burst Switches (OBSs) are designed to meet the increasing bandwidth demands [1,2]. This increase in bandwidth demands has led to the development of optical fibers which gives the opportunity to carry high bit-rates. Even the high bit-rates obtained with optical fibers are not capable to provide enough bandwidth for future network requirements; dense wavelength division multiplexing (dwdm) became the solution for providing higher bandwidth. OBS seems to be the answer to the increasing bandwidth demand problem. OBS is designed as an intermediate solution between optical circuit switching and packet switching and looks like the best candidate to carry IP traffic over dwdm networks. In this study, we concentrate on the signaling and control plane of the OBS switch. The data plane is out of scope of this study. Xu et al. has already proposed a queuing network model to analyze the data plane of an OBS switch in [3]. However, the signaling and control plane is different than the data plane where there is no opticelectronic-optic (OEO) conversion and the bursts are handled in all optical planes. Interested readers could refer to [4,5] for further information related with signaling protocol. On the other hand, for the signaling and control plane, OEO conversion is necessary. Once OEO is required, switches need a buffer mechanism. The switch is considered to be an NxN optical burst switch. The switch architecture is explained in detail in [4]. There are both input and output buffers for signaling channels. The switch fabric is non-blocking. The output contention is resolved by input and output buffers. The rate of the signaling channel will be estimated with different stochastic processes. This paper is organized as follows. Section 2 gives the system description. In section 3, we give different approximation methods used for analysis purposes. In section 4 we compared our results. Section 5 concluded our study. 2. Problem Definition In this paper, we analyze an OBS switch that contains input and output buffers. The messages traversing on that OBS switch are signaling and control messages. Therefore, they are apt to OEO conversions at each switch along their path. The rate of data channel is assumed to be 2.4 Gbps. The rate of signaling channel is on the other hand 155 Mbps. Signaling message size is 1 Kbps and burst size is variable taking values among 32 Kbps, 64 Kbps and 128 Kbps. The aim of this study is to calculate the dropping probabilities at input and output buffers with fixed buffer sizes. Once we model the system with this approach, we can also analyze input and output buffer sizes with fixed dropping probabilities.

320 297 In literature, we can see some proposals related with the buffer dimensioning for packet switches. Jung et al. proposed an analytical solution for back-pressure type packet switches with input and output buffers in [5]. They analyzed the switch as a Geom/PH/1/K queue. Another model is proposed by Iliadis et al. again for packet switches in [6] where they modeled the system with two tandem queues. The input queue is analyzed as an M/G/1 queue and the output queue is modeled as an M/D/1 queue. Chen et al. in [7] analyzed the same problem with M/G/1 and M/M/1 tandem queues. However, all of them worked on packet switches. On the other hand, OBS is designed as an intermediate solution between optical circuit switching and packet switching. Therefore, another modeling approach is needed to analyze these systems. 3. Our Modeling Approach Our analysis is organized is three steps. We defined a simple approximation based on M/M/1/K model as the first step. In the second step, we changed the arrival process, and used self-similar traffic as the input process. In the third step, we defined a new model with MMPP/C2/1/K queue. R D S S B (1) R S S where R D is the rate of data channel, R S is the rate of signaling channel, S B is the burst size and S S is the signaling message size. In our switch, R D is 2.4 Gbps, R S is 155 Mbps, S S is 1 Kbps and S B can be 32, 64, 128, 256, or 512 Kbps. In our comparisons we used S B as 32, 64 and 128 Kbps and represented the required buffer sizes. 3.2 Self-Similar Traffic as the Input Process To obtain more realistic results in terms of similarity, a real system s behavior must be examined (e.g. The Internet). Existing researches on this field show that Internet traffic behavior is self-similar. For this reason, self-similar traffic is used in arrival process. Figure 3.1 shows a measured Internet traffic which is also selfsimilar. The Internet traffic is compared with Poisson distribution in this figure. 3.1 An Approximate Solution The arrival process to the switch input buffers are assumed to be homogeneous. That means the total traffic is distributed uniformly to each output port. Burst arrivals to each input come from independent and identical Poisson processes with an arrival rate burst/unit time and bursts have exponentially distributed service time with mean 1 unit time. The switch is modeled as two M/M/1/K queues in tandem. The first queue represents the input buffers and the second one represents the output buffers. Arrival rate to the first queue is Poisson with rate, and P in is the blocking probability of traffic for the first queue, while the arrival rate for the second queue is the rate of the traffic that has not been blocked in the first queue and is described as (1- P in ) Calculation of Load The amount of load that is used through this work calculated as follows: Fig. 3.1 Comparison of the self-similar Internet traffic (measured) with Poisson [8] As shown in the Figure 3.1, the traffic that uses Poisson distribution is far from real traffic. For this reason, we modified the arrival process, and used self-similar traffic as the input process. In the self-similar traffic model, arrival process is produced as self-similar and the

321 298 incoming packets are gathered in input queue. For the incoming packets, the service duration is produced by exponential distribution as in the M/M/1/K model A New Model MMPP/C2/1/K queue In our model, arrival processes are designed as Three- State-Markov Model shown in Figure 3.2. Arrival process can be one of these 3 states: short signaling, long signaling and idle. If it is short signaling state, a short signaling packet is coming to the OBS switch. Also, in long signaling state, a long signaling packet is coming to the OBS switch. In idle state, there is no packet arrival to the OBS switch. Passing through short signaling, long signaling and idle state is calculated by exponential distribution. Fig. 3.3 Two-State Coaxian Server The control packets that leaves from the server, is sent to output queue. If the output queue is not empty, the newly arriving control packet is also added to the end of the output queue. Otherwise, it is sent to next OBS switch. 4. Comparing Results In this section, we give three different graphics for each model. These three different graphics are for each burst size. At each graph, output buffer sizes vary from 10 to 700 and input buffer sizes are fixed. Fig. 3.2 Three-State Signaling Arrival Process Starting state is idle state. It is possible to pass short signaling state by P s possibility and the short signaling state can be kept or can be changed to idle state according to the next arriving value. It is not possible to change between long and short signaling states directly. So, before changing state to short or long signaling, must be passed to idle state. All these events are same, when the state changes to long signaling state with the possibility of 1 P ). ( s Control packets that come out from input queue are passed to the two-state Coaxian Server as shown in Figure and 2 show rate of the Coaxian Server in the first and second states. is the possibility value which shows if it is possible or not passing to second state. A control packet that arrived to server and was processed with 1 server rate is processed again by the possibility with 2 server rate. After that, it can be passed to output queue. In the second case, when the possibility is ( 1 ), it can be passed to output queue without being processed with 2 server rate. Figure 4.1, 4.2 and 4.3 show packet dropping probability of the M/M/1/K model for the load of 0.4, 0.24 and 0.12, respectively. Figure 4.1 and 4.2 are plotted until dropping probability value reaches 0.3. However in Figure 4.3, under 0.12 load, it is seen that initial dropping probability is already about 0.3. In Figure 4.1, dropping probability starts at 0.8 and ends at 0.3 with 380 buffer size. Different from Figure 4.1, in Figure 4.2, dropping probability starts at 0.6 and almost decreasing linearly, ends at 0.3 with 230 buffer size. In Figure 4.3, because of low load value, the initial value of dropping probability is already 0.3 with less than 2 buffer size. It can be seen that with increasing buffer size the dropping probability converges to zero as expected. Figure 4.4, 4.5 and 4.6 show packet dropping probability of the self-similar model for the load of 0.4, 0.24 and 0.12, respectively. Figure 4.4, 4.5 and 4.6 are plotted until dropping probability value reaches 0.3. In Figure 4.4, dropping probability starts at 0.99 and ends at 0.3 with 700 buffer size. Like Figure 4.4, in Figure 4.5 under 0.24 load, dropping probability starts at 0.99 and ends at 0.3 with 700 buffer size. In Figure 4.6, under 0.12 load, the OBS switch behaves the same as in Figure 4.4 and 4.5.

322 299 Fig. 4.1 Packet dropping probability in input and output buffers for load=0.4 (M/M/1/K) Fig. 4.4 Packet dropping probability in input and output buffers for load=0.4 (Self-Similar) Fig. 4.2 Packet dropping probability in input and output buffers for load=0.24 (M/M/1/K) Fig. 4.5 Packet dropping probability in input and output buffers for load=0.24 (Self-Similar) Fig. 4.3 Packet dropping probability in input and output buffers for load=0.12 (M/M/1/K) Fig. 4.6 Packet dropping probability in input and output buffers for load=0.12 (Self-Similar)

323 300 Figure 4.7, 4.8 and 4.9 show packet dropping probability of the MMPP/C2/1/K model for the load of 0.4, 0.24 and 0.12, respectively. Note that all three of dropping probabilities are decreasing almost linearly. Figure 4.7, 4.8 and 4.9 are plotted until dropping probability value reaches 0.3. In Figure 4.7, dropping probability starts at 0.75 and ends at 0.3 with 500 buffer size. Different from Figure 4.7, in Figure 4.8, dropping probability starts at 0.6 and almost decreasing linearly, ends at 0.3 with 350 buffer size. In Figure 4.9, because of low load value, the initial value of dropping probability is already 0.3 with 10 buffer size. the Figures 4.1 to 4.3, for a 0.3 dropping probability and for 0.24 load, in M/M/1/K model (best case) we need 230 buffers/port in addition. For a message size of 1Kbps, the required buffer size is (1 Kbps * 230) 230 Kbps/port. For a four port switch, the total buffer requirement is (4*230) 920 Kbps (=0.92 Mbits). According to the Figures 4.4 to 4.6 for a 0.3 dropping probability and for a 0.24 load, in self-similar model (worst case) we need 740 buffers/port in addition. For a message size of 1Kbps, the required buffer size is (1 Kbps * 740) 740 Kbps/port. For a four port switch, the total buffer requirement is (4*740) 2960 Kbps (=2.96 Mbits). According to the Figures 4.7 to 4.9 for a 0.3 dropping probability and for a 0.24 load, in MMPP/C2/1/K model we need 360 buffers/port in addition. For a message size of 1Kbps, the required buffer size is (1 Kbps * 360) 360 Kbps/port. For a four port switch, the total buffer requirement is (4*360) 1440 Kbps (=1.44 Mbits). Fig. 4.7 Packet dropping probability in input and output buffers for load=0.4(mmpp/c2/1/k) Fig. 4.9 Packet dropping probability in input and output buffers for load=0.12(mmpp/c2/1/k) 5. Conclusions Fig. 4.8 Packet dropping probability in input and output buffers for load=0.24(mmpp/c2/1/k) In Figures 4.1 to 4.9, the change on the output buffers for varying loading of the system can be seen. According to If results of M/M/1/K model is considered as the best case, and the self-similar traffic, which is applied to our model as arrival process, is considered as the worst case, it is been observed that when Three-State Signaling Arrival Process (our arrival process) is applied to our model; we have minimum packet dropping probability against optimum buffer size (Figure 5.1). Therefore, in real life our model (MMPP/C2/1/K) is much more applicable than both M/M/1/K model and self-similar traffic which is applied to our model.

324 301 For future works, our model (MMPP/C2/1/K) can be analyzed analytically. Consequently, more suitable input and service rates can be obtained and it would be possible to purpose getting more certain values. [7] J.S.-C. Chen and T.E. Stern, "Throughput analysis, optimal buffer allocation, and traffic imbalance study of a generic nonblocking packet switch," IEEE J. Select. Areas Commun., Apr. 1991, vol. 9, no. 3, p [8] T.B. Fowler, A Short Tutorial on Fractals and Internet Traffic, The Telecommunications Review, 1999, Volume: 10, pp Fig.5.1 Comparing buffer sizes for each model under the 0.3 dropping probability References [1] I. Baldine, G.N. Rouskas, H.G. Perros, and D. Stevenson, Jumpstart: a just-in-time signaling architecture for WDM burstswitched networks, IEEE Communications Magazine, 2002, Volume:40 Issue: 2, pp [2] A.H. Zaim, I. Baldine, M. Cassada, G. Rouskas, H. Perros, and D. Stevenson, JumpStart just-in-time signaling protocol: a formal description using extended finite state machines, Optical Engineering, 2003, Volume:42 pp [3] L. XU, H.G. Perros, and G. Rouskas, Techniques for Optical Packet Switching and Optical Burst Switching, IEEE Communications Magazine, 2001, pp [4] J. Wei, and R. Mcfarland, Just-in-time Signalling for WDM Optical Burst Switching Networks, Journal of Lightwave Tech., 2000, Vol. 18, No. 12, pp [5] C. Qiao, and M. Yoo, Optical Burst Switching (OBS) A New Paradigm for an Optical Internet, Journal of High Speed Nets., 1999, Vol. 8, No. 1, pp [6] I. Iliadis, and W.E. Denzel, Performance of Packet Switches With Input and Output Queueing, in Proc. ICC '90, Atlanta, GA, Apr. 1990, pp

325 302 A Color Image Digital Watermarking Scheme Based on SOFM J. Anitha 1, S. Immanuel Alex Pandian 2 1 Asst.Prof., Dept. of Computer Science and Engineering, Karunya University, Coimbatore, Tamilnadu, India. 2 Asst.Prof., Dept. of Electronics and Communication Engineering, Karunya University, Coimbatore, Tamilnadu, India. Abstract Digital watermarking technique has been presented and widely researched to solve some important issues in the digital world, such as copyright protection, copy protection and content authentication. Several robust watermarking schemes based on vector quantization (VQ) have been presented. In this paper, we present a new digital image watermarking method based on SOFM vector quantizer for color images. This method utilizes the codebook partition technique in which the watermark bit is embedded into the selected VQ encoded block. The main feature of this scheme is that the watermark exists both in VQ compressed image and in the reconstructed image. The watermark extraction can be performed without the original image. The watermark is hidden inside the compressed image, so much transmission time and storage space can be saved when the compressed data are transmitted over the Internet. Simulation results demonstrate that the proposed method has robustness against various image processing operations without sacrificing compression performance and the computational speed. Keywords: self organizing feature map, digital watermarking, vector quantization, codebook partition, color image compression. 1. Introduction With the rapid development of multimedia and the fast growth of the Internet, the need for copyright protection, ownership verification, and other issues for digital data are getting more and more attention nowadays. Among the solutions for these issues, digital watermarking techniques are the most popular ones lately [1] [5]. Digital watermarking techniques provide effective image authentication to protect intellectual property rights. The digital watermark represents the copyright information of the protected image. Digital watermarking is the process of embedding a secret information (i.e., a watermark) into a digital data (namely audio, video or digital image), which enables one to establish ownership or identify a buyer. Digital watermark can be a logo, label, or a random sequence. In general, there are two types of digital watermarks, visible and invisible watermarks. The embedded watermarks can later be extracted or detected from the watermarked media for authentication or identification. Invisible watermarks can be broadly classified into two types, robust and fragile watermarks. Robust watermarks are generally used for copyright protection and ownership verification because they are robust to nearly all kinds of image processing operations. In comparison, fragile watermarks are mainly applied to content authentication and integrity attestation because they are completely fragile to any modifications. In general, the digital watermark technique must satisfy the following properties. First, the embedded watermark does not distort visually the image & should be perceptually invisible. The second property is that the watermark is difficult for an attacker to remove. It must also be robust to common attacks. Until now, many researchers have come up with a variety of watermarking techniques, and the techniques proposed so far have been highly effective in the area of copyright protection. However, most current watermarking techniques embed the watermark in a normal, original image instead of a compressed image [7]. They offer considerable security for normal, uncompressed images, and yet they fail to take into consideration the inevitable fact that, due to limited frequency bandwidth, almost all of the images travelling over the Internet are in compressed forms in order to save transmission time and storage space. Therefore, to allow for application to the Internet, a new watermarking approach has recently been used to combine with image compression techniques to embed a digital watermark into the compressed image [8], [9]. It is worthwhile to note that image compression and image watermarking have some common features. In image compression [16], an image is encoded using its most significant characteristics. After compression, the greatest concern is that the distortion of the decompressed image must be controlled. On the other hand, in image watermarking, the embedded watermark must not degrade

326 303 the image quality of the watermarked image. With this similar goal, the image compression approach can aid in the implementation of watermark embedding and detection. Recently, Lu et al. (2000) [6] presented a VQbased digital image watermarking method. This method utilizes the codebook expansion technique to produce a partition of the codebook. According to the different sets in the partition of the codebook, the watermark can be embedded into an image. This method is simple and effective. The authors claim that if the codebook is kept secret, their method can provide the secure feature. Makur and Selvi (2001) [10] proposed another watermarking scheme based on variable dimension VQ (VDVQ) for hiding a watermark into images. The main property of VDVQ is the use of a codebook that contains codewords of varying dimensions. To embed the binary watermark, this method uses a codebook that contains codewords of two different dimensions. When an image block is encoded, the dimension of the selected codeword is set according to the corresponding embedded watermark bit. However, the embedded watermark is fragile. The decoding and re-encoding of the compressed image may easily remove the embedded watermark. Hsien-Chu Wu and Chin-Chen Chang proposed another watermarking scheme based on codebook editing in LBG algorithm [11], [12]. In this paper, we propose a new method of digital watermarking that embeds the watermark in an already compressed color image through VQ technique [13]. Here the SOFM based codebook generation algorithm is used. The watermark is embedded in the selected index of the codebook. In color image, R channel is used for watermark embedding. The watermark exists both in compressed and reconstructed image. The experimental results show that this method enables images to withstand a number of destructive image processing procedures including cropping, blurring, sharpening and JPEG compression [17]. 2. SOFM based VQ Codebook plays an important role on every compression technique. This codebook is used for both compression and a decompression stage, which is generated by means of SOFM based VQ [14], [15]. A vector quantizer Q of dimension k and size S can be defined as a mapping from data vectors in k-dimensional Euclidean space, R k into a finite subset C of R k. Thus Q : R k C Where C={y 1,y 2,., y s } is the set of S reconstruction vectors, called a codebook of size S, and each y i C is called a code vector or codeword. For each y i, i I,{1,2,.,S} is called the index of the code vector and I is the index set. Encoding a data vector x R k involves finding the index j of the code vector y j C such that x y j x y i i j and i,ji. The decoder uses the index j to look up the codebook and generates the reconstruction vector y j corresponding to x. the distortion measure d(x,y j ) = x y j represents the penalty of reproducing x with y j. If a VQ minimizes the average distortion, it is called the optimal VQ of size S. A self organizing feature map is a neural network clustering technique, having several desirable features in the field of VQ. The learning scheme of the self organizing feature map is an application of the least mean square algorithm where the weights of the neurons are modified on the fly for each input vector. Thus the codebook is updated using an instantaneous estimate of the gradient known as stochastic gradient, which does not ensure monotonic decrease of the average distortion. Also due to incorporation of neighborhood update (opposed to the winner only update in pure competitive learning) in the training stage, SOFM networks exhibit the interesting properties of topology preservation and density matching. The SOFM algorithm generates the weight vectors. The resultant weight vectors are called the SOFM codebook. The codebook obtained from the SOFM algorithm is used for codebook partition to perform watermark embedding. 3. Codebook Partition Our watermarking technique is mainly depends on the codebook partition to complete watermark embedding process. Let the initial codebook trained by SOFM be CB such that each codeword CW in CB contains a*a elements. After the codebook partition process, in each division, there will be two codewords, numbered 0 and 1, respectively, so that codeword 0 is used to embed watermark bit 0. The codeword 1 corresponds to watermark bit 1. The two codewords most similar to each other are classified into the same division with their index values recorded in the codebook. The degree of similarity between one codeword and the others is determined by calculating the mean square error (MSE). The MSE of two codewords CWx and CWy is defined by Eq. (1). (1) For example, if a codebook containing 256 codewords, after performing the codebook partition, totally there are 128 divisions, every division with two codewords.

327 Watermark Embedding After the codebook partition, we can start the watermark embedding process, which contains the following steps: Step 1: Segment the base image (BI) into non-overlapping blocks. For each block, search the CB generated by SOFM algorithm for the closest codeword and record the index value of this codeword. Step 2: Use K as the seed of the pseudorandom number generator (PRNG) and randomly pick out M*M (size of watermark image (WI)) indices generated in Step 1. Map each watermark pixel to a chosen index in sequence. Step 3: In the classified codebook divisions, for every index value selected in the previous step, search for the corresponding division and codeword number and record them. When doing the recording, use S bits to keep track of the division number and use one bit to write down the codeword number, where S is set to be log n. For example, if a codebook have 256 codewords where every division has two codewords, we need 7 bits (i.e., log (256/2) = log 128 =7) to locate the division and just one bit to indicate which one of the two is the codeword. That is, in this example, S is 7. To be more specific, the index for the codeword numbered 1 in the first division is , where the first part locates the division and the last bit 1 indicates that the codeword is numbered 1. Step 4: For each recorded item, replace its corresponding number bit with the pixel value of the watermark. For example, suppose the watermark bit 1 is embedded in the recorded item , the embedding result will be with the last bit to be replaced by the watermark bit. Step 5: Find the index values corresponding to the new recorded items, and then compress the image with all of the indices. Let the compressed watermarked image be BI. The size of the digital watermark that can be embedded in base image depends on the size of base image and the size of the divided block. 5. Watermark Retrieval To perform the watermark retrieval procedure, both the sender and the receiver possess the same codebook for the transmitted watermarked image. The receiver can recover the compressed image with the indices and retrieve the embedded watermark using the codebook. Watermark retrieval is done through the following steps: Step 1: If the watermark is extracted from the VQ decoded image go to Step 2, otherwise go to Step 3. Step 2: Segment the decompressed watermarked image into blocks of the same size with a*a pixels. With the help of the secret key K to perform PRNG(K), select the blocks where the watermark pixels were embedded and pick out the indices corresponding to the codewords in the codebook that are most similar to the selected blocks. Go to Step 4. Step 3: With the help of the secret key K to perform PRNG(K) and select the indices embedded with the watermark pixels. Step 4: In the codebook divisions, search for the divisions and codeword numbers corresponding to the selected indices. Then, recover the watermark WI with the number bits. 6. Performance Analysis In this paper, the digital watermarking technique completes the watermark embedding process in the color image through R channel during VQ encoding. However, the embedded watermark still exists in the VQ decoded image. Subjectively, human eyes can evaluate the image quality. However, the judgment is influenced easily by the factors like expertise of the viewers, experimental environments, and so on. To evaluate the image fidelity objectively, some famous measurements are adopted in this paper and described as follows. The quality of the watermark embedded compressed image with the original base image is calculated through the peak signal-to-noise ratio (PSNR) defined as Eq. (2). (2) where MSE is the mean-square error between the original grayscale image and the distorted one. Basically, the higher the PSNR is, the less distortion there is to the host image and the distorted one. Normalized correlation (NC) is used to judge the similarity between the original watermark WI and extracted watermark WI. The NC is defined as Eq. (3): (3) In principle, if the NC value is closer to 1, the extracted watermark is getting more similar to the embedded one. The bit-correct rate (BCR) is computed as Eq. (4): (4) The mean absolute error (MAE) is computed as Eq. (5): (5) where m denote the length of the signature. Note that the quantitative index, MAE, is exploited to measure the similarity between two binary images.

328 Experimental Results For showing the results of the proposed method, the 512* 512*3 Lena image is used as the original image. The watermark image is a 64*64 binary bitmap. The watermark is embedded in the R component during VQ encoding. Fig 1(a), (b) and (c) shows original image, original watermark image and watermarked image respectively. From fig 1(a) and (c), it is clear that the embedding algorithm does not distort host image much and the embedded watermark still exists in the VQ decoded image with PSNR value dB. Without attacks, the extracted watermark with the NC value as 1, MAE as 0 and BCR as 100% is shown in fig 1(d), shows the extracted watermark is still meaningful and recognizable. Rice 256X256 Owl 256X256 Mattface 256X256 Bird 256X256 Peppers 256X256 PSNR (db) CR(bpp) Time (min) PSNR (db) CR(bpp) Time (min) It is inferred from the table, that the SOFM algorithm performs better than the well-known LBG algorithm in terms of compression ratio and image quality. The effectiveness of the SOFM algorithm over the LBG algorithm for various images is plotted in Fig 2. PSNR(dB) Rice Mattface Peppers SOFM LBG (a) (b) Images Fig 2(a). Performance of SOFM over LBG in terms of PSNR (c) (d) Fig 1. (a) Original image; (b) Original watermark; (c) Watermarked image; (d) Extracted watermark. In the proposed method, a codebook containing 256 codewords are obtained using SOFM algorithm and build up codebook divisions with every division containing two codewords. To bring out the effectiveness of the SOFM based VQ, it is compared with the oldest, as well as most commonly used LBG algorithm for various test images. CR(bpp) SOFM 1 LBG Rice Mattface Peppers Images Fig 2(b). Performance of SOFM over LBG in terms of compression ratio Table 1. Significance of SOFM over LBG Image SOFM LBG

329 306 Time(mins) Rice Mattface Peppers Images SOFM LBG Fig 2(c). Performance of SOFM over LBG in terms of computation time Comparison to the results in Fig 2(a), when we use SOFM algorithm for compression then there is a increase in PSNR value around 1-2dB (Eg., for Pepper image the PSNR value for SOFM is 32.50dB and the PSNR value for LBG is 31.78dB). In terms of compression ratio, there is an increase when we use SOFM based algorithm to compress an image. Also there is a reduction in time for computation. In fig 2(c) the computation time to generate the codebook for Pepper image using LBG algorithm is minutes which is further reduced to minutes in SOFM algorithm. Hence the proposed work uses SOFM algorithm for codebook generation. 7.1 Codebook Vs Image Quality Fig 3 shows the effectiveness of the watermarking technique with various codebook sizes. We observe that the use of a larger codebook leads to have better watermarked image quality. PSNR(dB) Filter Attacks Codebook Size Fig 3. Codebook size Vs watermarked image quality To measure the robustness, the watermarked image is tested by common image processing operations, geometric distortions and lossy compression. Table 2 shows the performance of the algorithm with various filter operations. Table 2. Comparison of results of NC, MAE and BCR for various filter operations Attack NC MAE BCR (%) Method Wiener Filter (3x3) Wiener Filter (5x5) Wiener Filter (7x7) Median Filter (3x3) Median Filter (5x5) Median Filter (7x7) Fig 4 shows the performance of algorithm against various filter operations. From the graph we observe that when the mask size increases the NC value going down. Fig 5, Fig 6 displays the effects of the cropping attacks and we observe that the extracted watermarks are obviously distinguishable by the human eye when the cropped part is filled with white pixels. NC NC x3 5x5 7x7 Mask size 3x3 5x5 7x7 Mask size Wiener Filter Median Filter Fig 4. Graphs showing the performance of algorithm against various filter operations 7.2 Cropping and Other Attacks

330 307 Attack Method NC MAE BCR (%) Gaussian Filter Sharpening Blurring Salt & pepper noise Gaussian noise rows & columns cropped in all sides Interception and deleted part filled with gray Enhancement (a) Quarter cropped MAE = Fig 6(a). Simulation of intercepted and deleted index (b) Quarter cropped and filled with zero MAE = Fig 6(b). Simulation of cropping effect in all sides (c) Quarter cropped and replaced with original MAE = Fig 5. The quarter-cropped, watermarked image The experimental results of other attacks also shown in table 3. It can be seen that our algorithm can successfully resist attacks by gaussian filter, sharpening, blurring, noise, enhancement, cropping in edges and interception. The watermarks are extracted with good NC, MAE and BCR values. Thus the extracted watermarks can be identified and declared correctly. 7.4 JPEG Attacks The following table 4 illustrates the influence of JPEG lossy compression on watermarked image. The results influences that our method can obtain an extracted watermark with the NC value as 1 when the quantization level is 128 and 64. Fig 7 shows the extracted watermark after the JPEG lossy compression. Table 4. Experimental results of watermarks extracted from images compressed at different JPEG compression level Table 3. Experimental results with various attacks

331 308 Quantization level NC BCR (%) PSNR (with JPEG attack) Fig 7. Watermark extracted from the JPEG lossy compressed image The experiments conducted in this section proved that the images processed by our method have not only been processed by VQ but can also resist a JPEG lossy compression and other attacks. Therefore, our method can effectively protect the intellectual property of images. 8. Conclusion A watermarking scheme based on SOFM in color image has been proposed in this paper for enhancing the VQ system of the watermarking ability. The simulation results illustrate that, our technique possesses the advantages of better imperceptibility, stronger robustness, faster encoding time, and easy implementation. This technique embeds the watermark in an image that has already been compressed, which saves time and space when the image is transmitted over network. Experimental results demonstrate that the proposed method is suitable for intellectual property protection applications on the Internet. References [1] A. Bros and I. Pitas, Image watermarking using DCT domain constraint, IEEE Int. Conf. Image Processing (ICIP 96), Vol.3, pp , [2] R. Barnett, Digital watermarking; applications, techniques and challenges, IEE Electronics & Communication Engineering Journal, Vol. 11, No. 4, pp , [3] C.T Hsu and J. L. Wu, Hidden digital watermarks in images, IEEE Trans. Image Process., Vol. 8, No. 2, pp , [4] Niu XM, Lu ZM, Sun SH, Digital watermarking of still image with gray-level digital watermarks, IEEE Trans. Consumer Electronics, Vol. 46, No. 1, pp , [5] Chang CC, Tsai CS, A technique for computing watermarks from digital images, Journal of Computing and Informatica, Vol. 24, No. 3, pp , [6] Lu ZM, Pan JS, Sun SH, VQ based digital image watermarking method, IEE Electronic Letters, Vol. 36, No. 14, pp , [7] H. C. Huang, F. H. Wang, J. S. Pan, Efficient and robust watermarking algorithm with vector quantization, Electronics letters, Vol. 37, No. 13, pp , [8] Hsiang-Cheh Huang, Shu-Chuan Chu, Yu-Shsiu Huang, VQ based watermarking techniques, Journal of Computers, Vol. 17, No. 2, July [9] M. Jo and H. D. Kim, A digital image watermarking scheme based on vector quantization, IEICE Trans. Inf. & Syst., Vol. E85-D, pp , [10] Makur A, Selvi SS, Variable dimension vector quantization based image watermarking, Signal Processing, Vol. 81, pp , [11] Hsien-Chu Wu, Chin-Chen Chang, A novel digital image watermarking scheme based on the vector quantization technique, Computers and Security (2005), Vol. 24, pp , [12] Y. Linde, A. Buzo, R. M. Gray, An algorithm for vector quantizer design, IEEE Trans. Commun., Vol. 28, No. 1, pp , [13] Yogesh Dandawate,M.A.Joshi and A.V.Chitre, ColorImage Compression using Enhanced Vector Quantizer designed with Self Organizing feature maps, The Proceedings of International Conference on Information Processing, Bangalore (India) pp , [14] T.Kohonen, The Self Organizing Maps, Invited Paper, Proceedings of IEEE 1990, Vol. 78, No. 9, pp , [15] T. Kohonen, Self-Organization and Associative Memory, New York: Springer- Verlag, 2nd ed, [16] K. Sayood, Introduction to data compression, 2 nd Ed., Academic Press, Morgan Kaufmann: San Francisco, CA, [17] R. C. Gonzales and R. E. Woods. Digital image processing, Addison-Wesley, 2000.

332 309 J. Anitha was born in Nagercoil, Tamilnadu, India, on July 14, She obtained her B.E degree in Information Technology from Mononmaniam Sundarnar University in 2004, Tirunelveli, Tamilnadu. She received her Masters degree in Computer Science and Engineering from Manonmaniam Sundarnar University in 2006, Tirunelveli, Tamilnadu. Currently she is pursuing Ph.D in the area of Image processing. Her area of interest is in the field of compression, neural network and watermarking. She is the life member of Computer Society of India. S. Immanuel Alex Pandian was born in Tirunelveli, Tamilnadu, India, on July 23, He obtained his B.E degree in Electronics and Communication Engineering from Madurai Kamaraj University in 1998, Madurai, Tamilnadu. He received his Masters degree in Applied Electronics from Anna University in 2005, Chennai, Tamilnadu. Currently he is pursuing Ph.D in the area of Video processing. His area of interest is in the field of image processing, computer communication and neural network.

333 310 E-Government Challenges in Public Sector: A case study of Pakistan Nasim Qaisar 1 and Hafiz Ghufran Ali khan 2 1 Department of Business Administration, Federal Urdu University of Arts, Science and Technology, Islamabad, PAKISTAN 2 Faculty of Management Sciences, International Islamic University, Islamabad, PAKISTAN Abstract A longitudinal study has been conducted to explore challenges confronting E-Government implementation in public sector organizations of Pakistan. The tremendous advancement of Information and Communication Technologies (ICT) strongly influenced the work process that brought change into the administrative setup of government / bureaucracy. The basic information about government organizations, but not all its relevant business / processes are made available online to the stakeholders concerned. However implementation of E- Government is a big challenge as it needs tremendous change in the existing work processes. Case study encompasses the challenges in area such as technological infrastructure, organizational aspect, and collaboration with other organizations. The study was conducted in one of public sector organization in Pakistan during the implementation of E-Government and second study of the same organization focused on how the challenges were overcome by introducing various strategies and to what extent such strategies found to be fruitful. The finding of the study shows that the implementation of E- Government is quite difficult where as basic ICT infrastructure and financial resources are not available in organizations. It has been recommended E-government could not be managed properly until the challenges should be addressed and managed well. Keywords: E-Government, ICT and government, E- Government challenges 1. Introduction E-Government has emerged as a revolutionary mechanism of the management of public sector organizations on global basis. It incorporates high level services; accelerated processing, increased transparency and low cost output are the mega products of E-Government. These objectives can be can be meat through the adoption of Information and Communication Technologies in various functional units. Wimmer, Codagnone, & Ma [22] pointed out that despite the many potential benefits of using modern ICT, governments still struggle with the problems of rigid, ineffective business processes, and the business processes are not properly designed for effective implementation through modern ICT. E-Government implementation should not be achieved without vision of using modern technologies. E- Government has been opted by developed as well as developing countries for providing better services to their citizens. It could bring forward the new concept to citizenship by enabling and empowering to interact directly. These interactions can be named as Government to Government (G2G), Government to Business (G2B), Government to Employee (G2E) and Government to Citizen (G2C) [16]. The rapid growth in Internet usage and development of Information and Communication Technologies and e-commerce/e-business in the private sector put pressure on public sector organizations serve citizens electronically [7]. Public sector organizations are under pressure of use ICT in their processes. N.B. The name of the understudy organization has not been disclosed due to professional obligations. 1.1 Research Objectives This objective of research is to explore various challenges that public sector organizations may face to implement E-Government. This consideration may leads to the following research questions. How does ICT infrastructure prove a barrier in the way of E-Government targets? Does Low ICT literacy impede E- Government implementation? Does collaboration between public sector organizations exist? Does professional workforce role exist?

334 Literature Review The term E-Government refers to the use of information and communication technology (ICT) to enhance the range and quality of public services to citizens and business while making government more efficient, accountable, and transparent [19]. E-government means the services available to the citizens electronically. It may provide opportunity to citizen to interact with the government for the services that they required from government. ICT plays an important role to providing the easy services by the government to the citizens. The government should treat their citizen as customers and provide services though internet and networks. E-Government is concerned with not only providing public services but also value added information to the citizens. It also enables government organizations to work together efficiently. Internet use and benefits gained by advance countries pressurizing the government of developing countries to bring their information online. This may require the government to transform them self and start using the modern practices opted by the developed countries [20]. one author describe the challenges as Many governments faced the challenge of transformation and the need to modernize administrative practices and management systems cited in [16]. 2.1 Defining E-Government Moor & Norris [15] define E-Government as means of delivering government information and services. Another author defines as E- Government is the use of ICT to promote more efficient and effective government that facilitates more accessible government services, allow greater public access to information, and make government more accountable to citizens [2]. Another definition of E-Government is emphasizes coordinated network building, external collaboration and customer services [7]. E-Government is the electronic provision of information and services by government 24 hours per day, seven day per week [8]. According to Yildiz [23] E-Government is the use of ICTs by public administration to create a networked for; interconnectivity, service delivery, effectiveness, transparency and accountability. The scope of E-Government by Federal Government of Pakistan may be considered as a combination of internal e-enablement and the external provision of e-services to stakeholders of the Federal Government. The figure 1 illustrates the defined scope: Figure 1 (E-Government Strategy and five year plan for the Federal Government, 2005) 2.2 Developmental stages of E-Government Layne & Lee [11] proposed a framework for the implementation of E-Government. It includes four stages such as cataloguing, transaction, vertical integration and horizontal integration. Cataloguing: create of static website to show online presence Transaction: in second stage websites provide the facility of online transaction, accepting online payments, process e filling and interaction with customers. Vertical integration: It requires integration required seamless linkages within the domain, a sharing of data vertically within the industry. Horizontal integration: It requires integration across different levels of government and also across different function of government. Some argue that an effective E-Government program requires seamless integration of an appropriate, quality information engaged public employee good administrative process, and government leadership [12]. Layne & Lee [11] argue that all the benefits of E-Government may be realized when full service integration in stage four. UN & ASPA[21] report published in 2001 categorized the progress made by developed and developing countries in developing an online presence on five stages scale such as Emerging stage; Enhanced stage; Interactive stage; Transactional stage and seamless stage. Brief description of five stages is as under: Emerging: An official government online presence is established. Enhanced: Government sites increase, information become more dynamic Interactive: Users can download forms, officials and interact through the web Transactional: Users can actually pay for services and other transactions online. Seamless: Full integration of e-services across administrative boundaries. Baoling [2] stated that E-Government aims at utilizing ICT to provide better quality services to the citizens through electronic means. The cost of

335 312 technology is decreasing day by day through this developing countries can effectively utilized the benefits of technology [1]. The E-Government may improve the quality of life of citizens through better service delivery at low cost. It may eventually transform the processes and structure of the government, empower civil servant to serve citizen better [18]. To take the initiative of E-Government projects depends on the internal and external factors. External includes the image of the organization, become a leader in information society and internal factors are efficiency, transparency and cost reduction, Fallahi [7] discussed in his thesis about the infrastructural obstacles he pointed out the accessibility of internet connection, less no of computers in organizatin, unavailability of web sites, low internet speed, lack of efficient banking system for e-payment etc. The literature review leads to the explanation that the organization facing various challenges during the development stages of E-Government. 3. Research Methodology level management of the organization. Information was also obtained through archival documents and official website. Interviews lasted for half to an hour. Interviews were transcribed. Data triangulation technique was applied to ensure the data validity. 4. First study during E-Government Implementation E-Government implementation is a challenging task; in this section the results of first study has been presented. 4.1 ICT Infrastructure Information and Communication Technology infrastructure is driving force for organizations to implement e-services. Within and outside the organizations communication is required to perform official tasks. As public sector organizations also seek services from different organizations, so the basic ICT infrastructure is essential for implementing E-Government. To conduct this research, Case Study method has been employed to explore challenges confronting E-Government implementations in public sector of Pakistan. Time span of this longitudinal study is three years During the period it is studied that how organizations overcome these challenges. The relevant authorities were contacted and gathered the information on challenges faced by organizations. 3.1 Case Study A case study has been defined as an empirical inquiry that investigates a contemporary phenomenon within its real-life context [25]. The Case study method has its own limitations. It may be used for exploration of a study [24]. The purpose of using this method is to draw a close scenario of real work situation. This study has been conducted in natural setting. Data may be collected by multiple means and one or few entities (person, group or organization) may be examined (Christenson, 1976) cited in [3]. The study carried out with the purpose to examine the environment of the organization towards e- services (E-Government) implementation challenges faced by the organizations. 3.2 Data Collection Method Yin [25] suggested that multiple data collection methods may be used in case study research; these are interviews, observations, archival data and documentations. The data was gathered through semi-structured face to face interviews with top We are lacking basic ICT infrastructure. People are unaware of use of technology. Many companies are lacking basic technology. Inter organization communication is yet in discussion phase. No concept of online culture. (Senior Manager) People are facing problems in accessing e-services due to lack of basic ICT infrastructure. To ensure successful implementation of the e-services, government needs to develop the allied departments, for example in one of the department in organization, online registration fee facility is not available, because the banks have no facility to transfer funds from one bank account to other bank account. 4.2 Low ICT Literacy ICT infrastructure cannot be productive until IT literacy exists in society. ICT literacy is mandatory to empower in using online services provided by government. IT literacy is very poor. People do not believe in technology. Many companies have computer and they claim that they are using information technology. They don t have the concept, what technology is? (Manager Applications) Countries like Pakistan have low literacy rate in general and information technology in particular. Citizens are shy of using computers for available

336 313 online services. Some times, they don t rely on online information. 4.3 Professional workforce A professional workforce is enabler to implement E-Government. Public sector organizations are lacking qualified IT professionals due to many reasons; one of them is low salary structure. The availability of ICT skills is important for successful E-Government implementation. E-Government requires mixed workforce i.e. ICT based professional management. We have outclass and strong business and legal professionals, we lack mix of technology based business and legal professional. Old guys hesitate to get training in ICT. It s a big challenge for us (Senior Manager) Organization is going to launch e-services in near future, but there is shortage of experienced manpower in different fields of E-Government. Organization s existing man-power has strong knowledge of business but lacks in ICT knowledge. Organization has started in-house training programs, but these are not sufficient to meet the current needs. IS&T Department structure of organization 4.5 Collaboration Inter organizations collaboration is important element in the E-Government to set full scale services. Collaboration is necessary in our business. We need information from different departments. We are efficient on our side, we are lacking cooperation. (Manager Application) The organization needs to collaborate among different organizations. 4.6 Top Leadership Commitment E-Government cannot be implemented without the commitment of top leadership (Financial Commitment). It needs high capital investment and operational cost. Public sector organizations are generally reluctant to manage huge investment on E-Government project. Top management role is necessary in all stages of E-Government implementation. E- services initiative is taken by organization themselves, government supports this project in financial terms. Some time we are lacking finance (Senior Advisor) Only financial barrier can stop the leadership commitment. Finance is provided by government, remaining funds are managed by organization itself. The leadership is committed towards e- services due to external investment available. 5. Second Study after implementation of E-Government 2010 Figure 2: Adopted From organization website 4.4 Resistance Handling Technology fever exists in public sector organizations. This fever encourages non technology people to start resisting in Implementation of E-Government. People have less exposure of using modern technologies, employee feels that they are losing their powers, and they are being replaced with technology. Hierarchical structure is disturbed while using e- services. Every one is depending on IS department. Sometime, they are targeting IS people. (Manager Systems) E-Government implementation is a challenging task. In this section second study has been presented. 5.1 ICT Infrastructure Pakistan is lacking ICT infrastructure. It takes long time to develop infrastructure in country. We have developed a comprehensive system to meet the requirements of the customers but due to lack of ICT facilities in country, people show hesitation to use computers to perform their functions. Organizations are good on their part of using systems but lacking inter organization communication (Senior manager).

337 314 The organization has developed their system to provide full length services to their citizens but citizens lacking ICT facilities on their part. Organizations are still lacking seamless integration with other organizations due to lack of ICT infrastructure. 5.2 Low ICT Literacy IT literacy is still poor. People are not willing to use online systems; they are lacking trained people to handle E-services. People are unable to handle online account to manage their company profile, even their password for online services. 80 to 90 % of our activities are performed offline (Manager Application). 5.4 Resistance Handling Initially we faced problems to manage change in organization, but with the help of training, discussions and interest groups, resistant to change is minimized. Now people feel comfortable of using online systems, organizational information is available on a click. (Manager System.) With the help of training people realized that they are not being replaced with machines (system), man behind the machine man is needed to operate machine. 5.5 Collaboration Organizations are lacking computer literate staff to handle online services; they prefer to use existing manual procedures. People are comfortable with lengthy process and they are not willing to accept the ease of use. 5.3 Professional workforce We have trained all of our staff managing e- services through different trainings. Luckily in our department employee turnover is low. Now we have expended and added all categories of skilled people. We have one of the best team in country, managing e-services. We have sufficient manpower to meet current needs (Senior manager). Professional workforce is available in organization to meet all challenges in implementing E- Government. They have extended their span of control. IS&T Department Structure. Collaboration is necessary for government to achieve full integration of e-services across administrative boundaries, we are lacking in collaboration with other organizations to share information with each other, we have discussed the matter with other organizations but they are not taking interest. I think collaboration is possible if government took initiative to establish collaborating governing body. (Manager Application) Collaboration helps the organizations to share infrastructure, manpower, resources, and knowledge with each other 5.6 Top Leadership Commitment When we started project, top leadership was committed to implement e-services, capital cost is provided by the government to implement project. At the moment top leadership is reluctant to provide finance to expand the e-services to other department; one of the project is delayed due to bureaucratic procedures. Some time we faced problem to get finance to pay licence fee to different software s (Senior advisor). Leadership commitment is directly linked with the availability of financial resources. Availability of external fund worked as catalyst to take initiative to implement E-Government. 6. Results and Interpretations 6.1 ICT infrastructure Figure 3 : Adopted form organization website Presence of ICT infrastructure is an inevitable requirement to progress aggressively in the global economy to facilitate their customers through the implementation of e-services. Across the

338 315 organization communication is required to perform duties effectively. It is decade long and expensive process to implement E-Government in developing countries, government has taken initiative to provide capital finance to public sector organizations to establish their infrastructure and internal organization communication. The current Infrastructure has shown tremendous growth as compare to what was available in previous study. Study reveals that still it has to go a long way to make everyone consume the benefits of e-services. It has been observed that a central hub for the provision and monitoring of e-services is missing. Within the organizations the infrastructure is good but the inter-organizational connectivity is still required upgradation. Lack of central coordination office among the organizations is proven a barrier. Layne & Lee [11] says that all the benefits of E- Government may be realized when full service integration. 6.2 Low ICT Literacy ICT literacy is mandatory to enable the people to use online services; a society without IT literacy couldn t go to its higher level. ICT literacy could increase the trust and confidence of the public on online information. Pakistan is still suffering from low literacy rate in general and IT in particular. The study shows People are shows resistance of using computers for available online services, people are relaying on offline services because some time they don t trust on the accuracy of e- services. The organization used One strategy to encourage citizen by providing discount in fee for those they are using online services. One author wrote in his study that white collar worker group and college students showed more awareness than the blue collar workers [13]. Majority of the literate people still could not manage their online profile. Most offtenly they forgot their password for online services, up to 80-90% of the activities are performed off line. Kunstelj, Jukic, & Vintar [10] discussed in his survey findings that there are many reasons people are not using online services. Few of them are No need yet, preferring to use traditional means, lack of awareness, no interest and no internet use. To explore important influencing factors, it is necessary to address the challenges confronting E-Government. 6.3 Professional workforce The backbone of the implementation of the ICT infrastructure is the availability of the professional workforce, which is a challenge for organization to implement E-Government. Public sector organizations are lacking qualified IT professionals due to poor compensation and reward systems. In addition training and development aspect is also missing for the upgradation of organizational staff members. Kifle & Cheng says [9] Poor IT capabilities and experiences exits in public sector organizations due to which E-Government projects suffered just lack of IT knowledge and resources. He also quoted Non IT officers were asked to participate in the E- Government projects in many ministries and were even nominated as the CIO s. The presence of ICT skills pool is inevitable for the successful E- Government implementation and E-Government requires a combined workforce i.e. ICT based professional management. In this study, the turnover of ICT employees in organization is low, which is healthy indicator for the development of E-Government. On the basis of this low turnover and continuous growth of ICT staff now organization has all categories of specialization which include hardware, software, database and communication. O'Brien & Marakas [17] mentioned the four technology areas in his book which are essential for the development of e business and e-services. If compare figure 2 with figure 3, the organization has tremendous growth in professional workforce, this leads towards the successful implementation of E-Government. 6.4 Resistance handling Unfortunately technology fever exist and prevail in public sector organizations which encouraged and contributed into the resistance. People with poor exposure of the usage of modern technologies are suffering from the apprehension of performing their e service based duties; this makes them feel the apprehension of losing their powers and fear of loss of job with technology. Study findings suggest that ICT is breaking the boundaries of hierarchical structure of the organization but at the same time all other functional areas have become depend upon ICT department. The resistance is managed through different strategies which include trainings, mutual interest, and with the involvement of pressure groups. Now gradually people are feeling comfortable in using online systems and they are getting optimal utility of the information available to everyone. 6.5 Collaboration Integration is the basis of the creation of the world which is the necessity for the implementations of E-Government. Collaboration among different organizations is compulsory for government to share resources with each other. The findings of first study shows that there is not collaboration exist among the organizations. The organization overcomes this challenge through the discussion with other organizations to share knowledge, resources and infrastructure. To consume fruitful results of E-Government it is recommended that a

339 316 collaborating agency may be formed to bring the organization closer. 6.6 Top Leadership Commitment Implementation of E-Government is not only requires the deep commitment of top management but also requires huge capital investment and operational expenditures. Public sectors organizations generally show resistance in the huge financial investment to initiate E-Government projects. In first study the top leadership shows enthusiasm and initiatives in the implementation of E-Government due to external availability of funds but gradually they loose their interest due to lack of available financial resources. Organization delayed project due to financial limitation and bureaucratic procedures. The involvement of top leadership in the implementation of all stages of E-Government is necessary. The active role of top leaders is crucial especially at the earliest stages to raise awareness, make ICT development a national priority [16]. Finding suggests that external funding is manadatory for successful implementation of E-Government. Conclusion Organizations are facing pressure to improve the quality of services to citizens. Quality of services can be improved through the successful implementation of E-Government. This implementations is a challenge for organizations and could be solved through external fundings in all stages of the project i.e. before, during and after implementation of the project. This conclusion could be given in following judgemental points. Organizations are facing pressure to improve the quality of services to citizens. Error free services may increase the confident of citizens. The level of services could be enhanced through external funding. Financal and Technical backup would always be required in all stages of project implementaion. Information and resources sharing is mandatory to get seamless integration. References [1]Allen, A. B., Juillet, L., Paquet, G., & Roy, J. (2001). Government and Government Online in Canada:Partnership, People and Prospects. Government Information Quarterly, [2]Baoling, L. (2005). On the barriers to the development of E-Government in China. 7th International conference of Electronic Commerce. ACM. [3]Benbasat, I., Goldstein, K. D., & Mead, M. (1987). The Case Research Strategy in studying of Information Systems. MIS Quarterly, [4]Christenson, C. (1976). Proposals for a Program of Empirical Reseearch into teh Properties of Triangles. Desicion Sciences, [5]Fallahi, M. (2007). The Obstacles and Guidelines of Establishing E government in iran: case study ministry of commerce. ISSN: [6]GOP. (2005). E-Government Strategy and five year plan for the Federal Government. Electronic Government Directorate, Ministry of IT. [7]Ho, A. (2002). Reinventing Local Governments and the E-Government Initiative. Public Administration Review., [8]Holden, S. H., Norris, D. F., & Flethcher, P. D. (2003). Electronic government at the local level: Progress to Data and Future Issues. Public Performance and Management Review, [9]Kifle, H., & Cheng, P. L. (2009). e-government Implementatin and Leadership - the Burnei Case Study. Electronic Journal of e- Government, [10]Kunstelj, M., Jukic, T., & Vintar, M. (2007). Analysing the Demand Side of E- Government: What Can We Learn From Slovenian Users. In M. A. Wimmer, J. Scholl, & A. gronlund, Electronic Government (pp ). Springer Berlin / Heidelberg. [11]Layne, K., & Lee, J. (2001). Developing fully functional e-government model: a four stage model. Government Information Quarterly, [12]Lee, S. M., Tan, X., & Trimi, S. (2005). Current prectices of leading e-government countires. NY: ACM. [13]Lee, S. M, & Cho, J. E. (2007). Usability Evaluation of Korean e-government Portal. Springerlinl, [14]Miller, J. S., & Cardy, R. L. (2000). Self monitoring and performance appraisal: rating outcome in project teams. journal of organizational behavior. [15]Moor, M. J., & Norris, D. F. (2005). Does managerial orientation matter? The adoption of reinventing government and e- governmentat the municipal level. Information Systems journal, [16]Ndou, V. (2004). E-Government for Developing Countires: Opportunities and Challenges. EJISDC, [17]O'Brien, J. A., & Marakas, G. M. (2006). Management Information Systems. McGraw Hill.

340 317 [18]Satuanarayan, J. (2004). e-government. Prentice-Hall, India. [19]Schware, R. (2005). E-development: From Excitement to Effictiveness. Washington: Word Bank Publications. [20]Tapsoctt, D. (1996). The Digital Economy : Promise and peril in the Age of Networed Intelligence. McGraw hill. [21] UN & ASPA s report (2001) Benchmarking E Government: A Global Prospective Available: /documents/un/unpan pdf [22]Wimmer, M. A., Codagnone, C., & Ma, X. (2007). Developing an E-Government Research Roadmap:Method and Example from E-GovRTD2020. Springerlink. [23]Yildiz, M. (2007). E-government research:reviewing the literature, limitations and ways forward.. Government Information Quarterly, pp [24]Yin, R. K. (1993). Case Study Research: Design and Methods. California CA: Sage Publishing. [25]Yin, R. K. (1984). Case Study Research: Design and Methos. Califirnia CA: Sage Publishing. Nasim Qaisar Qaisar is a Lecturer in Department of Business Administration, Federal Urdu University of Arts, Science & Technology, Islamabad, PAKISTAN. His area of interest is Business Intelligence and Information Systems. He has masters in Information Technology from International Islamic University, Islmabad. PAKISTAN. Hafiz Ghufran Ali Khan Khan is a Lecturer in Faculty of Management Sciences, International Islamic University, Islamabad, PAKISTAN. His area of interest is Strategic management, Organization development and Organizational behavior. He has masters in Business Administration from Quaid-I-Azam University,Islamabad, PAKISTAN. He has also served Karakum International University, Gilgit Baltistan, PAKISTAN as Deputy Dean in Humanities for a period of two years. Currently he is Ph.D scholar.

341 318 Novel Genetic Algorithm towards Implementing a Lining-Layout Optimization Strategy Ismadi Md Badarudin 1, Abu Bakar Md Sultan 2, Md Nasir Sulaiman 2, Ali Mamat 2, Mahmud Tengku Muda Mohamed 3 1 Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA Shah Alam, Selangor, Malaysia 2 Faculty of Computer Science and Information Technology, Universiti Putra Malaysia Serdang, Selangor, Malaysia 3 Faculty of Crop Science, Universiti Putra Malaysia, Serdang, Selangor, Malaysia Abstract This paper presents the strategies for optimizing planting areas. The three strategies considered for preparing field lining; 1) 60 0 line-direction 2) selecting the best line-direction for single block and 3) selecting the best line-directions for many separate blocks, might lead to different numbers of trees. Thus, an application named Lining-Layout Planning by Intelligent Computerized System (LLP-ICS) is introduced to choose the best strategy. Because there are many possible solutions with ambiguous results, a novelty of Genetic Algorithm (GA) for lining-layout with focusing on the two approaches which are 1) assigning the determined random values to the genes of chromosome, 2) avoiding the same solution of optimal blocks occurs, was applied to suggest the optimal solution intelligently. The aim of this study was to suggest the best strategy among the various area coordinates tested. In addition, the capability of the application by novel GA was also examined. The results indicated that the LLP-ICS produces a consistent solution with feasible results and less number of repetition processes led to reduce the computation time. Keywords: Optimization, Genetic algorithm, Lining-layout, Optimal solution 1. Introduction In implementing the strategy of lining layout planning (LLP) planting area optimization as discussed in section 2, the four criteria in land used planning as describe by Steward [2], involvement of the stakeholder, complexity of the problem, use of a geographical information system and use of an interactive support system are considered as part of the challenge. In LLP optimization, the decisions of the managerial department depend on the demands for tree quality and the ease of managing the field; consequently the optimal solution is not simply the one with the maximum number of trees. However, a huge number of possible solutions are generated for both determining the location of the blocks and selecting the best line-direction. Moreover choosing among several proposed optimal solutions requires an algorithm that capable of producing a feasible solution with acceptable computational time. The complexity of the problem is increased by a variety of area coordinates besides the assignment of blocks and line-direction, which might have some constraints making them much more difficult to solve. The choice of coordinate-based system from a GIS application makes the required coordinates of selected planting area easy to stored and presented as georeferenced information. However, the large areas represented by a high number of coordinates might require a scale representation of the coordinates to show the significant representation in a graphic view. The interactive support system focuses on the quality of the result and on computational time. The LLP strategy relies on the input of area coordinates and number of blocks, and determining the appropriate parameters is vital to make the system produce a feasible result within the result in acceptable time. A number of area optimization techniques have been proposed for computation of the optimal allocation within an area [5, 6, 7]. The enormous increase in the number of decision has led to applying heuristic algorithms such as genetic algorithm [2], simulated annealing approach [8, 9], tabu search heuristic [10] to be to overcome site allocation problems. According to Theodor J. Stewart [2] the four mentioned criteria to evaluate the result with implementing a grid-based system by Genetic Algorithm (GA), which showed feasible results with certain numbers of grids; however enlarging problem will result in tediously increased computational time. In contrast, for our LLP solution, we analyze the use of coordinate-based for analyzing the assignment of blocks and line-direction by GA. In contrast, for our LLP solution, we analyze the

342 319 use of coordinate-based for analyzing the assignment of blocks and line-direction by GA. The LLP strategy is to suggest the optimal result in term of tree number. The inconsistency of tree density in a planting area makes the number of trees difficult to predict. An analysis by Jusoh [3] stated that maximum income could be obtained at 148 palms/ha, contrary to the conventional practice of Moreover, on peat soil, tree density can be increased to 200 palms/ha. In the certain circumstances with the common spacing, 9 m x 9 m triangular planting distance, yields varied between 128 to 148 palms/ha depending on planting material, soil and climate [4]. However, in another perspective, the tree is uncertain because it depends on the factors of different line-directions and various areas coordinate [1a]. The ultimate objective of this study is to determine the capability of the application called Lining Layout Planning by Intelligent Computerized System (LPP-ICS) by GA in handling proposed optimization strategy. To discuss this, the remainder of this paper is organized as follows. An optimization strategy that is able to improve tree density is discussed in section 2. The development of a computerized system for designing LPP intelligently is discussed in section 3. A GA method is our main approach to solving this issue; we discussed the strategies for reducing computation time in section 4. The LPP-ICS application is briefly discussed in section 5 and followed by empirical analysis and discussion in chapter 6. Finally section 7 contains our conclusions and future directions for this work. derived from the line representation technique as discussed in section line-directions, between 0 0 and 90 0 from the base line are tested. The line that produces the highest number of trees is considered the best. The number of trees in an area depends on several factors such as area coordinates, block number, shape coordinates, planting distance, base line and line-direction. The evaluation process must fulfill the condition that the use of many blocks (LLP result) must produce at least as many trees as one block (LP result) to be considered optimal strategy, otherwise the repetition process of determining other combinations of blocks will be repeated. The repetition process will occurs until the number of evaluation higher than set value by user and it indicates that the LP strategy will be selected as optimal strategy. These processes are shown as a flowchart in figure 2. Fig.1. Lining-Layout Optimization Strategy 2. Optimization Strategy A strategy called Lining Layout Planning (LLP) attempts to optimize land use by dividing an area into blocks and then assigning line-direction within the determined blocks. Figure 1 shows that the two main tasks in the LLP strategy are determining blocks division and followed by identifying the best line-direction for every determined block. The unpredictable tree density in an area produced by the different line-directions, various areas coordinates and variety of shapes coordinates make requires a computerized system to find the best lining layout. Preliminary observation revealed that the current practice (CP) of 60 0 line-direction in preparing field lining does not necessarily produce the optimal number of trees. The optimization strategy in figure 1 shows an area that could be one block or many blocks. The block division requires GA to find optimal combination of blocks with no unused spaces of area as discussed in section 3.1. The divisions with both one and many blocks will be assigned with the best line-direction that the calculation process is initially Fig.2. Processes to find the Best Strategy 3. Solution Techniques for LLP

343 320 In obtaining the optimal result, the assigning blocks are assigned first, followed by choosing line-direction. This section discusses the techniques for selecting block division and line-direction selection. 3.1 Shape Assignment LLP strategy aims to obtain the optimal number of trees that can be planted into an area based on the two management requirements of 1. ease of managing the field and 2. cost or benefit. For the first requirement, the block division should be in a straight, which is assumed to be a field road. Second, the process of determining linedirections that produces the highest number within in area with different coordinates is desired. Consequently the optimal value is only reach if the total number of trees in the determined blocks is higher than with a single block. To accomplish this, we identify the possible shapes coordinates that can be assigned subject to the area coordinates. Suppose a rectangular area with 4, 5 coordinates has 1,1; 1,2; ; 4,4; 4,5 shape coordinates with potential to be used. We assume that area and shape coordinates should be in square or rectangular form so as to fully fit the shape with no unused space. To find the optimal blocks in an area, a shape assignment technique has been introduced to represent blocks in an area [1b]. The use of shapes depends on the number of blocks and the possible number of shapes used will be larger when the number of blocks increases. One important issue to be highlighted is that different combinations of shapes lead to different numbers of trees. Therefore, the purpose of assigning blocks into an area is to create different combinations of shape for each suggested solution. However, the combination of shapes is stated without taking into account the possibility of different arrangement of the shapes because the tree number will remain the same. Figure 3 shows the combination of shapes to be assigned into a (4, 5) coordinate of area using three blocks. By computerized system implementation, the procedure of assigning shape technique is described below: 1. The total size of the shape combination must equal to the size of the area. 2. The largest shape size should be assigned first. 3. No repetition of shapes coordinates. Repetition of shapes will reduce the number of blocks required. The X or Y shape coordinate should be two times the X or Y area coordinate, respectively, to determine either the row or the column side to be assigned after the first shape assignment. Fig.3. Example of the Accepted and Rejected Shapes According to the Shape Assignment Strategy 3.2 Line Representation The line representation technique with calculating the line length for each assignment has three possible conditions as shown in figure 4. First, the line in range is within the range of the area coordinates; second, the line has its L2 coordinate beyond the y4 coordinate; third, the line has its L1 coordinate beyond the y1 coordinate. The line lengths are calculated by trigonometric function because the angle of line-direction was initially determined. Then, the number of trees is derived by dividing the sum of the line lengths by the determined planting distance. Fig.4. Line length with the three different conditions The process of putting every tree into an area was analyzed but it produced a very large number of iterations. This was also shown in performance computerized analysis by Steward [2], deciding the suitable items to be assigned into cells represented by 20 x 20 and 40 x 40 problems required very high computational time because of the numerous iterations in the process. In our approach, the line representation which is every line length in range of the area coordinates is divided by planting distance to calculate the number of trees. This technique will significantly reduce the number of iterations in an analysis process. For example, using the three blocks, 90 types of line-direction, 900m of area size,

344 321 9m of planting distance, 10 m line length requires 27,000 ( (((area size / planting distance) * block number) * linedirection types) )iterations. This is because of the number of iterations increments one for each assigned tree. However, using line representation the algorithm produces significantly fewer iteration only 2,700 ( ((((area size / planting distance) / line length) * block number) * linedirection types) ) because the iteration process refers to a number of lines that is assigned into the area. 4. Genetic Algorithm (GA) 4.1 Genetic Algorithm Overview Optimizing layout by defining suitable rectangular shapes has been employed by many researchers in areas in areas such as computer aided design [12], the fashion industry [13], architecture [14], retail shelving [15] and others. Moreover, several studies in proposing optimal solution to packing problems have been done [16, 17, 18]. Taking inspiration from the works mentioned, we began by deciding the shape combination and then appropriate size to maximize the number of items. Due to the ambiguity of the result of shape assignment, the GA technique was employed, whereas the exact method was sufficient for choosing the best line-direction. GA is classified as nature inspired because it is derived from the biological process of evolution. GA is one of the preferred algorithms in solving the optimization problems using 1. genetic operators capable to propose new individuals in the next generation that are most probably better solutions, and 2. a mutation operator acting to avoid traps in local optimal. By random searching, finding a solution is uncertain; using short term or long term memory to store the history of movement and current solutions might be helpful. According to Blum [20], more advanced approach uses search experience (embodied in some form of memory) to guide the search. This approach is to quickly identify regions in the search space with high quality solutions and on the other side to waste too much time in regions of the search space which are already explored. Other strategies that might improve the performance of GA in terms of time and solution quality need to be applied. Determining population size, chromosome, problem representation, rate of crossover and mutation all play role in improving the searching process. How these strategies constitute to the shape assignment technique has been discussed in the previous paper [1b]. Shape assignment for area block requires GA to decide for optimal solution since ambiguous solution. Several method to make sure the space is fully utilized without having unused space by referring space allocation problem. GA implementation begins with population initialization and followed by the three genetic operators. The parameter of problems is represented by combination of genes. A scheme represents a set of individual and it is characterized by the two parameters of defining length and order. The genes develop a chromosome ad the chromosomes are manipulated by selection, crossover and mutation to build the new offspring. This process will be iteratively done with each offspring is analyzed to produce better result. The basic implementation of GA is illustrated by flowchart as shown in figure 5. Initialize Population Selection Crossover Mutation Fig.5. Flowchart for Basic GA Implementation GA works by probabilistically introducing random values into the chromosome, and it is usually guided by determined constraints. The time spent to find an optimal solution is difficult to predict. Computation time typically refers to the number of iterations in the process. Less iteration reduces computation time. 4.2 Novel GA for Lining Layout Strategy Classical GA means the basic works of GA that discussed in section 4.1. The classical GA is typically able to solve some optimization problems; however the computational time is always questionable. Some efforts to improve the classical GA [21, 22, 22] have been deployed in the field of problems. In implementing Lining Layout strategy, the two novelties of GA were introduced Code Representation The process of encoding in a chromosome to represent the problems is the factor of the GA performance. Different representation schemes might cause different performance in terms of accuracy and length time [11]. The coding decides not only the arrangement form of an individual chromosome, but also the decoding form genotype to individual performance type in search space, and the designing genetic operators [16]. The common assignment of value 0 to 9 to the genes produces a huge possible solution. For example, if the 8 genes can be assigned random values from 0 to 9, the

345 322 possible solutions of the worse case will be 10 8 = 100,000,000. Our strategy is to assign possible shapes into the area randomly, and we developed an approach of assigning the coordinate into the genes depending on the x and y coordinates of the determined area. For example, if the x and y of area represented by 4 and 5 respectively, the odd genes of the chromosome can be assigned numbers between 1 and 4 numbers, and in the even genes, a number between 1 and 5 is allowed Fig. 6: One set of possible values assigned randomly into genes when the area coordinate is (4, 5) We manage this strategy using the equation of x AreaCoordinate chromosomelength/2 * y AreaCoordinate chromosomelength/2. The area coordinate of (4, 5) requires 4 4 * 5 4 = 160,000, which significantly reduces the possible results and eventually reduces the number of iterations in the analysis process A Control Mechanism towards Avoiding the Occurrence of Same Solutions To obtain the optimal blocks division is certain but the optimal strategy does not necessarily belong to LLP if the LLP result less than LP result. The repetition process of GA will be continuously run while the condition is not found. However, this repetition process causes the tendency of the same optimal blocks occur. As a consequence, the process of selecting and the best linedirection and calculating tree number in which the lack of significant results lead to wasted time. GA is based on probabilistic selection and to decide the solution is usually guided by basic knowledge. There are two possible matters will occurs in generating optimal blocks which are 1) the same current result with previous results 2) The block combination of genes in current result and previous results is same but different location place. The same shape solution refers to combination of shapes that has been expected to produce the same number of item. Let us say that the optimal assigned shapes represented by chromosome is of the 4, 5 area coordinate. This means the three assigned shapes have coordinates by sequence of 3, 5; 1,1 and 1,4, respectively. By changing the shapes order, the combination of shapes can be 3,5; 1,4; 1,1 or 1,1; 3,5; 1,4 or 1,1; 1,4; 3,5 ; 1,4; 1,1; 3,5. These all combined shapes certainly produce a same number of items. To avoid the same optimal shape results occur, a control mechanism by storing the same shape solutions into a database. The process of comparing the current result and historical result from database to keep track the similar results, so that the flow will be repeated for generating another optimal solution. A control in GA by exploration approach was employed. The creation of database is to collect all history of optimal block. Every result of optimal block is stored into database. The current optimal block will be compared with available optimal block in database. The existence of same shapes combination in the comparison process as a result the process repeat to determine another optimal block. This control will protect from a wasted time since the processes of the best linedirection and calculating tree number can be skipped. In contrast, dissimilar shapes combination, the process of finding the best line-direction process and then calculating will be implemented. The processes by flowchart are shown as figure 7. Control Mechanism Fig.7. A control mechanism towards protecting the same shape coordinates 5. Implementation of the LPP-ICS Application An intelligent automated approach to deciding the combination of shapes and the best line-direction will certainly assist planners who have previously used a manual approach. The LLP-ICS application is intelligent software that produces a lining design with reference to the optimal number of trees to be planted. It uses shape assignment and line representation techniques with GA implementation to generate the acceptable shape combinations and then determine the best line-direction for every selected shape. The total number that produced

346 323 by the LLP-ICS application is considered the optimal number of trees that can be planted in the selected area. Figure 8 and figure 9 shows the optimal of shapes combination and line-direction, respectively, with number of trees. number of block and variety of area coordinates and scales. Table 1. Datasets for 5 Experiments Exp num Area coordinate (x4, y4) Scal e (m) Area size (Hect ) Number of blocks Number of trees (CP) (LP) 1 4, , , , , Table 2. Analysis of Optimal Block Solution Fig.8. Shapes Assignment Interface Exp Num Shape Coordinate Block Coordinate Number of Tree (LLP) Time (sec) Repetition Num / Iteration Num 1 3, 4 1, 1 1, 3 75, , 25 25, X / , 3 3, 1 1, 4 75, 75 75, 25 25, X / , 3 1, 3 4, 1 75, 75 25, , / 3282 Fig.9. Line-direction with Tree Number Interface 6. Empirical Analysis and Discussion To gauge the capability of GA to find the optimal solution, we conducted a laboratory test by running LLP-ICS with different sets of area coordinates. Table 1 shows the four experiments and their results in Table 2. The datasets consisted of area coordinate, scale and number of blocks defined by user. Area size, CP and LP were automatically generated by LLP-ICS. The CP means Current Practice and works on one block with 60 0 line-direction and the LP is tree-lining Planning which handles one block with the best line-direction implementation. The LLP result is derived from the implementation of many blocks with the best line-directions. Table 2 shows the optimal solution comprising selected shapes and their coordinates, number of trees, taken time and number of iterations to reach the optimal solution. For analysis purposes we use the same 2 3, 4 1, 1 1, 3 4, 2 1, 2 3, 2 4, 3 3, 1 1, 1 3 6, 5 6, 2 1, 7 150, , 50 50, , , , , , 50 50, , , , X X / / / X / 7406

347 324 6, 6 6, 1 1, 7 4 7, 4 6, 4 1, 4 7, 6 2, 2 5, 2 7, 7 6, 1 1,1 4, 6 3, 6 7, 2 6, 6 6, 2 1, 8 300, , 50 50, , , , , , , , , 30 30, , , ,60 180, , 60 30, X X X X / / / / / / 4325 Based on the results above, we compared LLP, LP and CP. We found that the strategy of LLP consistently produced a better number of trees than CP. The LLP strategy also showed better numbers than LP result when the area size was small. When the size increases to certain point, the unsuccessful solution means that the LP strategy is better. We also conducted other series of experiments (not described in this paper). The use of fewer than 20 populations sometimes might fail to find an optimal solution because of the overflow problem existence in which a huge computing process that cannot be accommodated by the database. This is because fewer populations require a higher number of generations, but the diversity and exploration processes will be limited [19]. Therefore, we increased the number of populations to 100 and the result as consistent achievement of an optimal solution. We conclude that LLP-ICS by novel GA is able to propose an optimal result in which the combination of blocks produces no unused spaces without the premature convergence problem. 6.2 Computational Time 5 6, 8 1, 1 1, 7 7, 4 4, 4 3, , 7 6, 1 1, 1 600, , , , , , , , , X X X / / / 9012 Basically, the larger area coordinates will produce higher number of possible solutions. For example, the area coordinates of experiment 1 and 3 generated possible results with 65,536 (4 3 * 4 3 ) and 5,764,801 (7 3 * 7 3 ) respectively, as a result experiment 3 required more analysis time. However, the small areas coordinates have higher tendency to occurrence of the repetitive optimal block solution. In experiment 2, for example, there were three same solutions as shown in table 3. As a comparison, by classical GA, the process of calculating tree number and determining the best line-direction and required 15,575 ( bs=n (trld * OS) ) iterations, while novel GA required bs=1 bs only 9,203 ( bs=n trld ) iterations. bs=1 bs 6.1 Solution Quality The analysis shows that LLP-ICS was able to propose an optimal blocks combination of blocks that produced no unused spaces. In experiments 1, and 2, the number of repetitions was three, whereas the experiments 3 and 4 required two and five repetitions, respectively, fulfill the condition of LLP result > LP result. Experiment 5, however, failed to meet the condition after 50 times of repetition (we set the maximum evaluation is 50). Table 3. Analysis of the Same Optimal Block Solution Optimal Block Solution (bs) Shape Coordinates (Genes) Tree Number and Line- Direction Iteration (trld) Repetition of Same Optimal Solution ( OS)

348 325 The computational time increased consistently when the iteration number to reach optimal blocks increased. The overall time taken is based on the accumulation of time in all repetition processes. Thus, more repetitions require more computational time. However, we found the taken time for each experiment was inconsistent. This is because of the GA method is based on a probabilistic algorithm with a randomness strategy, the uncertainty in number of repetitions and iterations and consequently in the computational time is hardly expected. In conclusion, the computational time and optimal solution generated by LPP-ICS are relatively acceptable. However, this application should be a better impact in terms of the result improvement by focusing on genetic operator modification in GA. Moreover, a strategy that guides the search process might give a good indication of expecting the computational time. 7. Conclusion The Novel GA is capable of reducing computational time in analyzing the optimal strategy of lining-layout. This Novel GA can be a basic algorithmic approach for optimizing the other industries of planting areas. The decision of land optimization in lining-layout planning strategy is not always easily reconciled with users perceptions. For this reason, the LLP-ICS for implementation lining-layout optimization developed here will create extensive use of coordinates represent an area as an interface between the computer model and the users. Therefore, this study promotes several contributions as follows: 1. The LLP-ICS is the first attempt at application development to facilitate tree-planting planners. The LLP-ICS assists planners in deciding the best implementation quickly. 2. Promoting a new optimization strategy by focusing on blocks division and line-direction. 3. The proposed strategy gives an indicator to improve number of trees. This study refers to the square and rectangular shape areas, but the task becomes more complicated for trapezoidal areas in which a variety of areas coordinates must be determined early in the process. Thus, a study on this matter should be conducted incorporating mathematical formulation and area coordinates representation, so that the use of the various types of land area will give a more significant contribution. To provide a strategy for genetic operators of GA in this domain issues towards improving the better result consistently when the new generations are generated is the challenge for the future. The algorithmic refinement is being conducted and the results will be revealed in the next paper. Acknowledgments This research is registered under the Fundamental Research Grant Scheme (FRGS) with grant number is FRGS/ FR/F1 and it is fully funded by the Ministry of Higher Education (MOHE), Malaysia. The authors express our great appreciation and thanks to MOHE, Malaysia and Universiti Teknologi MARA (UiTM), Malaysia for sponsoring one of the authors in PhD research. The authors also wish to thank the Universiti Putra Malaysia (UPM) which provided the facilities and appropriate environments for carrying out this research. Last but not least, the authors would like to express our appreciation to Federal Land Development Authority (FELDA), Malaysia and University Agriculture Park Department of UPM for giving us very good support and corporation in acquiring information. References [1a] Ismadi Md Badarudin, Abu Bakar Md Sultan Md Nasir Sulaiman., Ali Mamat., Mahmud Tengku Muda Mohammed (2010). Preliminary study on Designing Optimal Layout by Metaheuristic Approaches for Optimizing Planting Area, International Journal Electrical and Computer Science IJENS-IJECS,10 (1), pp [1b] Ismadi Md Badarudin, Abu Bakar Md Sultan Md Nasir Sulaiman, Ali Mamat, Mahmud Tengku Muda Mohammed (2010). Shape Assignment by Genetic Algorithm towards Designing Optimal Areas, International Journal of Computer Science Issues IJCSI, Vol. 7, Issue 4, No 5, 1 7. [2] Theodor J. Stewart, Ron Janssen, Marjan van Herwijnen (2004). A genetic algorithm approach to multiobjective landuse Planning, Computers & Operations Research journal,: [3] Jusoh Latif, M Mohd Noor, Mohd Tayeb Dolmat and Ahmad Kushairi Din (2003). Economic of Higher Planting Density in Oil Palm Plantations, Malaysia Palm Oil Board Journal, [4] Oil Palm. Available at < (accessed 20 February 2010). [5] Wright J, Revelle CS, Cohon J. A. (1983) Multi Objective Integer Programming Model for The Land Acquisition Problem. Regional Science and Urban Economics, 12, [6] Williams JC, Revelle CS. (1988). Reserve assemblage of critical areas: a zero-one

349 326 programming approach, European Journal of Operational Research, 104, [7] Cova TJ, Church RL.(2000). Contiguity constraints for single-region site search problems, Geographical Analysis, 32, [8] Lockwood C, Moore T. (1993). Harvest scheduling with spatial constraints: a simulated annealing approach, Canadian Journal of Forest Resource, 23, [9] Jeroen C.J.H Aeart, Marjan van Herwijnen, Theodor J.Steward (2003). Using Simulated Annealing and Spacial Goal Programming for Solving a Multi Site Land Use Allocation Problem, EMO 2003, LNCS 2632, [10] Boston K, Bettinger P. (1999). An analysis of Monte Carlo integer programming, simulated annealing, and tabu search heuristics for solving spatial harvest scheduling problems. Forest Science, 45, [11] D.T.Pham and D.Karaboga (2000). Intelligent Optimisation Techniques: Genetic Algorithm, Tabu Search, Simulated Annealing and Neural Network, Book: Springer, pp [12] Ga bor Renner and Aniko Eka r (2003), Genetic algorithms in computer aided design, Computer- Aided Design 35, [13] J. Martens (2004). Two genetic algorithms to solve a layout problem in the fashion industry, European Journal of Operational Research, 154, [14] Mecklenburgh, J. C. (1985). Process Plant Layout. London: Institution of Chemical Engineers. [15] Ruibin Bai, Beng (2005), An Investigation Of Novel Approaches For Optimising Retail Shelf Space Allocation, PhD Dissertation, pp [16] Xiaozhen Mi, Xiaodong Zhao, Wenzhong Zhao, Wenhui Fan (2008). Application of Genetic Algorithm for Rectangular Object Layout Optimization, IEEE Journal, [17] Andreas Bortfelt (2006). A genetic algorithm for two-dimensional strip packing problem with rectangular pieces, European Journal of Operational Research, [18] Hoda Homayouni (2000). A Survey of Computational Approaches to Space Layout Planning ( ), Department of Architecture and Urban Planning University of Washington. [19] Andries P. Engelbrecht (2007). Computational Intelligence: An Introduction, Book: Wiley & Sons Ltd, Second Edition, pp [20] Cristian Blum and Andre Roli (2003). Metaheuristic In Combinatorial Optimization: Overview and Conceptual Comparison, ACM Computing Journal, [21] Zhisheng Ye, ZhizhongLi, MinXie. Some Improvements On Adaptive Genetic Algorithms for Reliability-Related Applications (2010), Reliability Engineering and System Safety Journal, [22] Vedat Tog an, Ays_e T. Dalog lu (2008). An Improved Genetic Algorithm with Initial Population Strategy and Self-Adaptive Member Grouping, Computers and Structures Journal, [23] J. Andre, P. Siarry, T. Dognon (2001). An Improvement Of The Standard Genetic Algorithm Fighting Premature Convergence In Continuous Optimization, Advances in Engineering Software, 32, Ismadi Md Badarudin is attached as lecturer to the Computer and Mathematical Sciences Faculty at UiTM, Malaysia. He started as a lecturer in 2001 and was appointed as a senior lecturer in He obtained a Master s Degree in 2002 in Metaheuristic Approaches in Timetabling. He is currently on leave as a lecturer and pursuing a PhD in Computational Intelligence at UPM, Malaysia, under the supervision of Abu Bakar. Abu Bakar Md Sultan is a senior lecturer holding a doctorate in the faculty of Computer Science and Information Technology, UPM. His fields of expertise are Metaheuristic and Evolutionary Computing. He has published several journal papers regarding metaheuristic approaches since Md Nasir Sulaiman and Ali Mamat are Associate Professors holding doctorates in the faculty of Computer Science and Information Technology, UPM. Nasir has expertise in Intelligent Computing, Intelligent Software Agents and Data Mining, and Ali is expert in Databases and XML. Mahmud Tengku Muda Mohamed is a doctorate holder in Plant Physiology/ Post Harvest Physiology and an Associate Professor in the faculty of Crop Sciences. His areas of expertise are Agricultural Sciences, Plant Physiology and Post Harvest Physiology. Currently, he is a Director of University Agriculture Park, UPM, Malaysia.

350 IJCSI International Journal of Computer Science Issue, Vol.7, Issue 5, September Computational Analysis of Optical Neural Network Models to Weather Forecasting A. C. Subhajini 1 and V. Joseph Raj 2 1 Department of Software Engineering, Noorul Islam University, INDIA. 2 Department of Computer Engineering, European University of Lefke, TRNC. Abstract Neural networks have been in use in numerous meteorological applications including weather forecasting. They are found to be more powerful than any traditional expert system in the classification of meteorological patterns, in performing pattern classification tasks as they learn from examples without explicitly stating the rules and being non linear they solve complex problems more than linear techniques. A weather forecasting problem rain fall estimation has been experimented using different neural network architectures namely Electronic Neural Network (ENN) model and opto-electronic neural network model. The percentage of correctness of the rainfall estimation of the neural network models and the meteorological experts are compared. The results of the ENN are compared with the results of the opto-electronic neural network for the estimation of rainfall. Keywords - Back propagation, convergence, neural network, opto-electronic neural network, rainfall estimation. 1. Introduction Rain is one of the nature's greatest gifts for countries. It is a major concern to identify any trends for rainfall to deviate from its periodicity, which would disrupt the economy of the country. In the present study rainfall is estimated based on the temperature, air pressure, humidity, cloudiness, precipitation, wind direction, wind speed, etc., consolidated from meteorological experts and documents [1,2]. Electronic Neural Networks have shown tremendous improvement over the traditional methods to handle the non-linear problems, especially in the field of weather forecasting. ENN can be considered as intermediate between statistical and structural models. These Neural Networks (NN) can be called as universal because of their ability in learning and absence of assumption based on probabilistic models. Results have shown that several statistical classifiers can be implemented using neural networks. The ENN model and opto-electronic neural network model were used for the estimation of rainfall [3]. In the design of opto-electronic neural network model, opto-electronic communication links between the layers in a neural network have been used as a means of over coming the connectivity problems associated with conventional electronic networks. The opto-electronic neural network converges quickly compared to electronic neural network. The motivation of this paper is (i) to study the effect of the electronic neural network model based on the opto-electronic communication links between layers in neural network (ii) to study the effect of the neural network models based on the neurophysiology of human nervous system (iii) to classify weather forecasting patterns particularly estimation of rainfall. 2. Electronic Neural Network An electronic neural network is a set of very simple processing elements (neurons) with a high degree of interconnections

351 IJCSI International Journal of Computer Science Issue, Vol.7, Issue 5, September between them. Such processing architecture is characterized by parallel processing and distributed computing, and is able to learn and adapt to better perform a specific task by modifying the strength of connections between the neurons [4]. The ENN, multilayer perceptron, trained using back propagation algorithm [5, 6] is constructed as three layered network with one hidden layer. 2. Opto electronic Neural Network The optical neuron, modeled using the following relations [7], is used in the neurons of opto-electronic neural network. The optical neuron architecture is shown in Fig. 1. The opto-electronic neural network, multilayer perceptron, trained using modified back propagation is constructed as three layered network with one hidden layer. Light input to photo detector: Linput ij = Loutput i x optical attenuation (3.1) Photo detector photo current: Iph ij = P x V bias ij x Linput ij (3.2) where Linput ij is the light input of neuron j in the hidden layer from the neuron i in the input layer. Amplifier output: Sigmoid output: Current output: Light output: (3.3) (3.4) (3.5) Loutput j = j x Ioutput j (3.6) Input layer output: Loutput i = Input i x (1 + noise factor x random number) (3.7) layer where Input i is the input to the input Sigmoid function s output is, in the range between [0,1]. Since sigmoid function is output limiting and quasi bi-stable, it is also differentiable. Sigmoid function = 1/ (l + e -x ) (3.8) Where, x is the input to sigmoid function 3. Methodology Fig. 1. Optical Neuron Architecture The basic input data for classification needs preprocessing [8]. This procedure helps in the incorporation of temperature, air pressure, humidity, cloudiness, precipitation, wind direction, wind speed, etc., in weather forecasting for ENN and opto-electronic neural network based classification. The factors: temperature, air pressure, humidity, cloudiness, precipitation, wind direction, wind speed, etc., of weather forecasting areconsolidated from meteorological experts and documents. The inputs to the ENN and opto-electronic neural network are, in the form of 1 or 0 based on the presence or absence of the factors. The different types of weather forecasting are the output of the ENN and opto-electronic neural network, in the form of 1 or 0, based on presence or absence of the types of rainfall.

352 IJCSI International Journal of Computer Science Issue, Vol.7, Issue 5, September The electronic neural network and opto-electronic neural network model are trained with twenty seven inputs- temperature, air pressure, humidity, cloudiness, precipitation, wind direction, wind speed, etc., and three outputs heavy rain, moderate rain and no rain. The ENN and opto-electronic neural models are trained with samples of one seventy one patterns. The number of inputs are limited and outputs are selected based on the advice of metrological experts and documents. 4. Results and Discussion No rain M oderate Rain Heavy rain Expert I Expert II Fig. 2 Performance Classification Electronic Neural Network Opto-electronic Neural Improvement of classification accuracy in weather forecasting is an important issue. The trained neural networks were tested with samples and validated for the accuracy of the models. The test data were analyzed with two metrological experts for its accuracy. The percentage of correct weather forecasting was tabulated in table 1 and Fig. 2. Weather Forecasting Table 1. Performance Classification No. of patterns Expert I Percentage of correct classification Expert II Electronic Neural Network Optoelectronic Neural Network If the generality of neural network for classification of weather forecasting is achieved, the training would be a one time affair, and the so trained network could be used for weather forecasting. The performance of the electronic neural network is compared with the performance of the optoelectronic neural network for whether forecasting. In ENN, the training was terminated in eight thousand and thirty six iterations [9]. In the opto- electronic neural network, the training was terminated in one hundred and sixteen iterations. The training of opto-electronic neural network is fast compared to ANN. It is represented in Fig 3. The accuracy of optoelectronic neural network is as good as ENN. No rain Moderate Rain Heavy rain Over all percentage Series1 0 ANN OPTO Fig. 3 Performance Neural Network Training

353 IJCSI International Journal of Computer Science Issue, Vol.7, Issue 5, September Conclusion The weather forecasting has been experimented successfully using ENN and opto-electronic neural network models. The accuracy of the results, obtained using ENN and opto-electronic neural network models, is compared with two metrological experts. The performance of opto-electronic neural network, which is better than the performance of ENN, is reported. This study will encourage researchers to use neural network models for weather forecasting. Efforts are in progress to reduce the time consumed by back propagation training algorithm of neural networks. As new models emerge and their sophistication increase, it is expected that optical implementations of these models will continue to show advantages over other approaches. Dynamic inclusion of new factors may be incorporated to improve its adaptability. References [1] Dabberdt, W., Weather for Outdoorsmen: A complete guide to understanding and predicting weather in mountains and valleys, on the water, and in the woods. Scribner, New York, [2] C. Ronald Kahn, Gordan C. Weir Joslin s, Weather forecasting, A Waverly Company. [3] Prasath,S., and Gupta,R.K., Weather Forecasting using Artificial Neural Network, Neural Networks and Fuzzy Systems. Proceedings of the National Conference, Anna University, Madras, pp 81-88, [4] Prema K.V., A Multi Layer Neural Network Classifier, Journal of Computer Society of India, Volume 35, Issue no: 1, Jan- Mar [5] Philip D. Wasserman, Neural Computing Theory and Practice, Van nostrand reinhold, New York. [6] Yegnanarayana, B., Artificial neural Networks, Prentice Hall Inc. [7]P.Moreland,E. Fiesel, The effects of optical backpropagation neural networks, Proceedings of the International Conference on Artificial Neural Networks. [8] Joseph Raj V., and Merlin Esther V., Genetic based Neural Network Model for Diagnosis of Retinopathies in Diabetics, National Conference on Computer Science and informatics, St. Joseph's College (Autonomous), Bharathidasan University, Tiruchirappalli, [9] Joseph Raj V., and Subhajini A.C., Weather forecasting using Artificial Neural Network, National Conference on Computer Science, St. Xavier s College(Autonomous), M.S University, Tirunelveli, Bibliography A.C. Subhajini received her M.S degree in Computer Science and Information Technology from Bharathidasan University, Trichy, India and M.Phil. in Azhakappa University,madurai,India. She is now working as a Lecturer in the Department of Software Engineering, NIU, Tamilnadu, India. She is having a teaching experience of 7.5 years and is doing her doctorate in Mother Theresa Women s University, India. Her research interest is in neural network. V. Joseph Raj is an Associate Professor in the Department of Computer Engineering, European University of Lefke, TRNC, Turkey. He obtained his post graduation from Anna University, Madras, India and PhD Degree in Computer Science from Manonmaniam Sundaranar University, Tirunelveli, India. He is guiding PhD scholars of various Indian Universities. His research interests include neural network, image processing, networks, and biometrics. He has great flair for teaching and has twenty years of teaching experience. He has published 25 research papers at International and National levels.

354 331 A Simple Modified Transmission Line Model for Inset Fed Antenna Design M. Fawzi Bendahmane 1, Mehadji Abri 2, F. Tarik Bendimerad 3 and Noureddine Boukli-Hacene 4 1 Telecommunications Laboratory, Technologies Faculty, Abou-Bekr Belkaïd University Tlemcen, 13000, Algeria 2 Telecommunications Laboratory, Technologies Faculty, Abou-Bekr Belkaïd University Tlemcen, 13000, Algeria 3 Telecommunications Laboratory, Technologies Faculty, Abou-Bekr Belkaïd University Tlemcen, 13000, Algeria 4 Telecommunications Laboratory, Technologies Faculty, Abou-Bekr Belkaïd University Tlemcen, 13000, Algeria Abstract In this paper we propose the design of single inset fed printed antenna based on a simple modified transmission line model. The developed model is simple, accurate and takes into account all antenna characteristics and their feed system. To test the proposed model, the obtained results are compared to those obtained by the moment s method (Agilent Momentum software). Using this transmission line approach the resonant frequency, input impedance, return loss can be determined simultaneously. The paper reports several simulation results that confirm the validity of the developed model. The obtained results are then presented and discussed. Keywords: Printed inset fed antenna, transmission line model, moment s method (Momentum). 1. Introduction Microstrip antennas received considerable attention in the 1970 s, although the first designs and theoretical models appeared in the 1950 s. They are suitable for many mobile applications: handheld devices, aircraft, satellite, missile, etc. They have been extensively investigated in the literature [1-5]. Conventional microstrip antennas in general have a conducting patch printed on a grounded microwave substrate, and have the attractive features of low profile, light weight, easy fabrication, and conformability to mounting hosts [10]. Traditional feeding techniques include the use of directly, electromagnetically, or aperture coupled microstrip lines, coaxial probes, and coplanar waveguides. Many types of microstrip antennas have been proposed and investigated [1-5]. Microstrip antennas that operate as a single element usually have a relatively large half power beam width, low gain and low radiation efficiency. Many researchers studied their basic characteristics and great efforts were also devoted to their determination (resonant frequency, the band-width, radiation... etc) by using theoretical models. Over the years, many models have been used to analyze microstrip antennas. Among them, the transmission line model is a simple model due to its assumptions. This leads to a set of linear equations with low dimension. In this paper we look into the design and development of single antenna and inset fed antennas arrays with corporate feed network by using a fast, simple and accurate modified transmission line model. The most important parameter in our designing process is the simplicity of the antenna and its feeding structure so that the antenna can be fabricated easily in practice. Therefore, inset fed patch antenna with a microstrip line feed was considered as a base structure.

355 Transmission Line Model Analysis In this section, an equivalent circuit model for the proposed antenna is developed. This model is capable of predicting the slot radiation conductance and the antenna input impedance near resonance. This approach provides very helpful insight as to how this antenna and its feed network operate. As mentioned before, this model is also needed to find a proper matching network for the antenna. 3. Three Ports Model of the Proposed Inset Fed Antenna The used model is inspired from the three ports model [8]. On the figure below one presents the suggested configuration: Prob feed W f Input 50 Ω Rinb Rinc L m l b l c W b S W c (L b,w b) L b (L m,w f) (L b,w b ) (L c,w c) (L c,w c ) (a) (b) L L a (L a, W a ) (L a,w a) Fig. 1 (a) Inset fed antenna. (b) Equivalent circuit of the proposed antenna. l a W a Rina In the present study, the model consists of breaking up the antenna into three areas a, b and c. Let us consider each part as being an antenna which finishes on the level of its ends by a length L due to the slot radiation and a resistance in series representing the value of this resistance in the antenna extremity. The improved model consist of neglecting the radiations slots between the feed line and the areas b and c and replace the resistances in series by their true values due only to the areas b and c. Therefore resistances will be R inb and R inc instead of only one resistance R in. The various values of the model are given as follows: The input resistance is given by: R R ina inb 2G 2G 1a 1b 1 G 1 G 12a 12b cos B Y 2 c 1a 1a 2 L sin L a cos B Y 2 b c g a sin 2 L g G a 2 Y B 2 c 2 g a 1 (1) 1b 1b 2 L sin L g b sin 2 L g G b 2 2 Y B 2 c 2 2 g 1 (2) 2 G 2 1c B1c cos g Lc sin 2 g Lc 1 Y R c inc 2G1 12 c G c B c sin2 g Lc Yc (3) The expressions of G 1 and B 1 are given by the relations below [9]: Wa, b, c 1 2 G1a, b, c 1 k0h (4) Wa, b, c B1a, b, c ln k0h (5) The conductance of a single slot can also be obtained by using the expression field derivative from model cavity. In general, the conductance is defined by: 2Prad G1 2 V0 (6) By using the electric field one can calculate the radiated power: 2 K0W 2 sin cos V 0 P 2 3 rad sin d 2 0 cos 0 (7) The self conductance can be calculated using the following expressions: I1 G (8) Where I 1 is the integral defined by: k0w sin cos 2 3 I1 sin d cos 0 The slots length for each region is given by: 2 b 1 (9)

356 333 1 La La 2 f r a reff Lb Lb (10) 2 f r b reff Lc Lc 2 f r c reff 0 0 The resonant frequency in this case for each region is given by: 1 v0 f r a 2La r 00 2La La r 1 v0 f r b (11) 2Lb r 00 2Lb Lb r 1 v0 f r c 2Lc r 00 2Lc Lc r microstrip, the connection to a point inside the metal patch requires the use of an inset. The inset-feed technique integrates a patch antenna together with a microstrip feed on a single planar substrate. The input impedance of the inset-fed patch varies, similarly to the coaxial probe-fed patch, as the inset-depth of the feed line changes. The simulated input return loss of the inset fed antenna is displayed for frequencies between 3.5 to 5.5 GHz in Fig.3. S11 [db] TLM model Momentum Frequency [GHz] 4. Results and Discussions The validity of the model suggested is highlighted by comparing the results of the return loss, the input phase and input impedance locus. In this section simulations were performed on inset fed antenna. 4.1 Inset Fed Antennas Array Operating at the Resonant Frequency 5.4 GHz The antenna is to be designed on substrate which has a relative permittivity r of 2.42, a dielectric thickness H of 1.27 mm, a loss tangent of about 0,002 and 0.05 mm conductor thickness. Fig. 3 Simulated input antenna return loss. At the frequency 4.7 GHz one observe appearance of a resonant mode and a good adaptation. It appears a peak of db using the moment method and of -13 db using the improved transmission line model. VSWR TLM model Momentum Frequency [GHz] 50 Fig. 2 The mask layout of the inset fed patch antenna design operating at 4.7GHz. The parameters are set to: W a =32.4 mm, L=19.3 mm, H=1.27 mm, S=0.57 mm, W f =2.4 mm, Y 0 =4.9 mm. Fig. 4 Simulated input antenna VSWR. The Moments results and those obtained from transmission line model of the input phase of return loss for this antennas array are shown in Fig. 5. Using the transmission line model, the antenna was designed to operate with a resonant frequency of 4.7 GHz. The input impedance of the antenna must be matched to the feed line by choosing the correct position for the feeding point. Because the antenna must be fed with the

357 The simulated input return loss of the antennas array is displayed for frequencies between 4.0 to 7.0 GHz in Fig.8. Phase [ ] TLM model Momentum S11 [db] TLM model Momentum Frequency [GHz] -20 Fig. 5 Reflected phase at the antenna input. One notices very well that the phase is null by the two models in spite of the shift observed. The impedance locus of the antennas array from 3.3 to 5.4 GHz is illustrated on Smith's chart in Fig Frequency [GHz] Fig. 8 Computed return loss of the inset fed antenna. 40 TLM model Momentum VSWR 20 TLM model Momentum Frequency [GHz] Fig. 6 Smith's chart of the input impedance return losses. Frequency points given by start = 3.3 GHz, stop = 5.4 GHz. 4.2 Inset Fed Antennas Array Operating at the Resonant Frequency 5.4 GHz In this section, other geometry is analyzed by using the method proposed in this paper. The antenna is to be designed on substrate which has a relative permittivity r of 4.6, a dielectric thickness H of mm, a loss tangent of about 0,005 and 0.05 mm conductor thickness. The antenna was designed to operate with a resonant frequency of 5.4 GHz. The inset fed antenna architecture is shown in the figure below. Fig. 9 Computed VSWR. We note from Fig. 9 that the two curves are identical. In the vicinity of the resonant frequency the VSWR is close to unity. In Fig. 10 we present the reflected phase at the antenna input. Phase [ ] TLM model Momentum Frequency [GHz] 50 Fig. 10 Reflected phase at the antenna input. The impedance locus of the antennas array from 4.0 to 7.0GHz is illustrated on Smith's chart in Fig. 11. Fig. 7 The mask layout of the inset fed patch antenna design operating at 5.4 GHz. The parameters are set to: W a =16.28 mm, L=12.7 mm, S=0.42mm, W f =0.42 mm, Y 0 =4 mm.

358 335 TLM model Momentum Antennas Array", Microwave journal, vol. 49, no. 5, May 2006, pp [7] S. Yang, E. Adel, S. Lin, A. E. Fathy, A. Kamel, and H. Elhennawy, "A highly efficient Vivaldi antenna array design on thick substrate and fed by SIW structure with integrated GCPW feed", 2007 IEEE Antennas and Propagation Society International Symposium, 2007, pp [8] J. F. Zurcher & F. E. Gardiol, Broadband Patch Antenna, Boston : Artech House. [9] C.A. Balanis. Antenna Theory Analysis and Design, Second Edition, USA: John Wiley & Sons, [10] K. L. Wong, Design of Nonplanar Microstrip Antennas and Transmission Lines, New York: Wiley, Fig. 11 Smith's chart of the input impedance return losses. Frequency points given by start = 4.0 GHz, stop = 7.0 GHz. 5. Conclusion In this paper, a highly-flexible and computation-efficient transmission line model is developed to analyze the inset fed antenna. The results so far show that the transmission line model can be successfully used to design the inset fed antennas array and even though the model is conceptually simple, it still produces accurate results in a relatively short period of computing time. The results obtained highlighted an excellent agreement between the transmission line model and the moment s method. A comparison of the results produced by the final model with the moment s method data showed the validity of the proposed model. This allows the analysis of very large arrays even on rather small computer. Based on these characteristics, the proposed antennas array can be useful for EMC applications. References [1] R. A. Sainati, CAD of Microstrip Antenna for Wireless Applications, Artech House: Icc., [2] S. Gao and A. Sambell, "A Simple Broadband Printed Antenna", progress in electromagnetics research, PIER 60, 2006, pp [3] P. M. Mendes, M. Bartek, J. N. Burghartz and J. H. Correia, "Design and Analysis of a 6 GHz Chip Antenna on Glass Substrates for Integration with RF/Wireless Microsystems", IEEE proceeding, [4] Wi. Sang-Hyuk, "Wideband microstrip patch antenna with U- shaped parasitic", IEEE Trans Antennas Propag., 55(4):1196-9, [5] D. M. Pozar and D.H. Schaubert, Microstrip Antennas, the Analysis and Design of Microstrip Antennas and Arrays, New York : IEEE Press, [6] M. Abri, Boukli-hacene. N, Bendimerad. F. T. & Cambiaggio. E, "Design of a Dual Band Ring Printed M. Fawzi Bendahmane was born in Algeria in He obtained his magister degree from the Abou Bekr Belkaid University, (Tlemcen) Algeria, in M. Fawzi Bendahmane is interested to the following topics: study of the characteristics of microstrip antennas, theories of algorithmic and programming, optimization algorithms, study of the nonlinear systems. M. Fawzi Bendahmane currently is a master assistant at the University of Tlemcen and a doctorate student in the same university under the supervision of Pr. F. Tarik Bendimerad working on the study of the coupling between microstrip antennas. Mehadji Abri was born in 1978 in Sidi Bel Abbès, Algeria. He received the Magister and doctorate diplomas in 2004 and 2008 from Abou Bekr Belkaïd University, Tlemcen, Algeria. He is a Researcher within the Telecommunications Laboratory. His main field of research is centered on the analysis, synthesis of multiband antenna and antennas arrays design. F. Tarik Bendimerad was born in 1959 in Sidi Bel Abbès, Algeria. He received the State Engineer diploma in 1983 from Oran Sciences and Technologies University, Algeria and the Doctorate Degree from Nice Sophia Antiplois University, France, in He is a professor and the Director of the Telecommunications Laboratory. His main area of research is the microwave techniques and radiation and he is responsible of the antenna section. Noureddine Boukli-Hacene was born in 1959 in Tlemcen, Algeria. He received the Diplome d Etudes Approfondies in microwave engineering (DEA Communications Optiques et Microondes) and the Doctorate degree (prepared at the Centre National d Etudes Spatiales, Toulouse, France) in electrical engineering from Limoges University, France, in 1982 and 1985 respectively. Recently, he is a Lecturer at the University of Tlemcen. His research interests include, among others, microstrip antennas and microwave circuits.

359 336 Optimum Multilevel Image Thresholding Based on Tsallis Entropy Method with Bacterial Foraging Algorithm P.D. Sathya 1 and R. Kayalvizhi 2 1 Research Scholar, Department of Electrical Engineering, Annamalai University Chidambaram , Tamilnadu, INDIA 2 Professor, Department of Instrumentation Engineering, Annamalai University Chidambaram , Tamilnadu, INDIA Abstract Multilevel image thresholding is an important operation in many analyses which is used in many applications. Selecting correct thresholds is a critical issue. In this paper, Bacterial Foraging (BF) algorithm based on Tsallis objective function is presented for multilevel thresholding in image segmentation. Experiments to verify the efficiency of the proposed method and comparison to Genetic Algorithm (GA) is presented. The experiment results show that the proposed method gives the best performance in multilevel thresholding. The method is also computationally efficient, more stable and can be applied to a wide class of computer vision applications, such as character recognition, watermarking technique and segmentation of wide variety of medical images. Keywords: Multilevel thresholding, Bacterial foraging algorithm, Tsallis objective function, image segmentation. 1. Introduction Image segmentation is a process of dividing an image into different regions such that each region is nearly homogeneous, where the union of any two regions is not. It serves as a key in image analysis and pattern recognition and is a fundamental step toward low-level vision, which is significant for object recognition and tracking, image retrieval, face detection, and other computer-vision-related applications [1]. Many segmentation techniques have been proposed in the literature. Among all the existing techniques, thresholding technique is one of the most popular one due to its simplicity, robustness and accuracy [1-3]. Otsu and Kapur methods were proved to be two best thresholding methods for the uniformity and shape measures [4, 5]. However, it is required to determine threshold levels depending on the scene to obtain consistent segmentation results in many cases. Multilevel thresholding techniques were therefore developed. Most bi-level thresholding methods can easily evolve into multilevel thresholdig methods directly [6]. But, the computational complexity would grow exponentially as the threshold number increases due to their exhaustive searching approach [7, 8], which would limit the multilevel thresholding applications. Yen et al used a maximum correlation criterion to multilevel thresholding, where the segmentation results are satisfactory and the threshold determination process could be accelerated [7]. Yin proposed algorithm that can determine the number of thresholds automatically as well as save a significant amount of computing time [8]. It appears that approximately all the methods suffered the computational complexity and the segmentation performance instability as the threshold number increases. To eliminate such problems, evolutionary techniques have been applied in solving multilevel thresholding problem [9, 10]. Peng-Yeng developed a fast scheme multilevel thresholding using genetic algorithms for image segmentation [9]. Shu-Kai et al presented a hybrid optimal estimation algorithm for solving multi-level thresholding problems in image segmentation. The distribution of image intensity is modeled as a random variable, which is approximated by a mixture Gaussian model [10]. However, the method still fails to deal with the common drawback of GAs, the decreasing optimal stability as the convergent speed increases. Yin proposed particle swarm algorithm based multilevel minimum cross entropy threshold selection procedure [11]. The method uses recursive programming technique which reduces an order of magnitude for computing the minimum cross entropy thresholding (MCET) objective

360 337 function. Then, a particle swarm optimization (PSO) algorithm is proposed for searching the near-optimal MCET thresholds. However, Ratnaweera et al. state that the lack of population diversity in PSO algorithm is understood to be a factor in their convergence to local optima, which means that it cannot guarantee that the global optima in the search space will be found [12]. This paper proposes the development of a novel optimal multilevel thresholding algorithm, especially suitable for multimodal image histograms, for segmentation of ten benchmarked images, employing bacterial foraging (BF) technique. Bacterial foraging is comparatively a very recent technique that is being used for solving multidimensional global optimization problems [13]. In foraging theory, it is assumed that the objective of the animals is to search for and obtain nutrients in such a fashion that the energy intake per unit time is maximized [13]. This foraging strategy has been formulated as an optimization problem by employing optimal foraging theory. The foraging behavior of E. Coli bacteria includes the methods of locating, handling and ingesting food, has been successfully mimicked to propose a new evolutionary optimization algorithm. The proposed BF method is used to maximize Tsallis objective function. The method has been compared with particle swarm optimization (PSO) and genetic algorithm (GA) algorithms. The results show that the proposed algorithm can outperform the other two methods both from the point of view of maximizing the objective function as well as maximizing the Peak signal to Noise Ratio (PSNR) value. 2. The proposed Tsallis multilevel thresholding method In this section, a new thresholding method is proposed based on the entropy concept. This method is similar to the maximum entropy sum method of Kapur et al [3]; however the Tsallis non-extensive entropy concept is used for customizing information theory. Let there be L gray levels in a given image and these gray levels are in the range {0, 1, 2,,(L-1)}. Then one can define Pi = h(i)/n, (0 i (L-1)) where h(i) denotes number of pixels for the corresponding gray-level L and N denotes total number of pixels in the image which is equal to L 1 i 0 h(i). Tsallis bi-level thresholding can be described as A B A B f(t) argmax[s q (t) S q (t) (1 q).s q (t).s q (t)] (1) where q is an entropic index t 1 q Pi 1 ( ) A i0 P A A S q (t), P t 1 Pi q 1 i0 B S q (t) L 1 q Pi 1 ( ) it P B B L, 1 P Pi. q 1 it The information measures between the two classes (object and background) are maximized. When S q A (t) is maximized, the luminance level t is considered to be the optimum threshold value. This can be achieved by a cheap computational effort. This Tsallis entropy criterion method can also be extended to multilevel thresholding and it is described as follows: f(t) where A argmax[s q (t) A S q (t) B S q (t) C S q (t) m S q (t) (1 S q B (t) S q C (t)... m S q (t) A B C m q).s q (t).s q (t).s q (t)...s q (t)] t 1 q 1 Pi 1 ( ) t 1 i0 P A A 1, P Pi q 1 i0 t 1 q 2 Pi 1 ( ) it B t 1 1 P B 2, P Pi q 1 it 1 t 1 q 3 Pi 1 ( ) it C t 1 2 P C 3, P Pi... q 1 it 2 L 1 q Pi 1 ( ) it m m P m L, 1 P Pi. q 1 it m (2)

361 338 The aim of this proposed PSO algorithm is to maximize the Tsallis objective function using equation (2). 3. Bacterial Foraging Algorithm 3.1 A Brief Overview It is the law of nature that species with good foraging strategies survive while those with poor searching ability are either eliminated or shaped into good ones. This is because the former is more likely to enjoy reproductive success by producing better species in future generations. This activity of foraging led the researchers to use it as an optimization process. The foraging behavior of E. Coli (bacteria present in intestines) can be explained by four processes namely, chemotaxix, swarming, reproduction, elimination and dispersal which are described below. a) Chemotaxis: An E. coli bacterium can move in two different ways: it can swim or it can tumble. The bacterium moves in a specified direction during swimming and during tumbling it does not have a set direction of movement and there is little displacement. Generally, the bacterium alternates between these two modes of operation in its entire lifetime. This alternation between the two modes enables the bacteria to move in random directions and search for nutrients. b) Swarming: Once one of the bacteria reaches the desired food location, it should attract other bacteria so that they converge at the desired location. To achieve this, a penalty function based upon the relative distances of each bacterium from the fittest bacterium is added to the original objective function. Finally, when all the bacteria have merged into the solution point the penalty function becomes zero. The effect of swarming is to make the bacteria congregate into groups and move as concentric patterns with high bacterial density. c) Reproduction: The original set of bacteria after several chemotaxis stages undergoes the reproduction stage where the bacteria are split into two groups. The least healthy bacteria die and the other healthiest bacteria split into two at the same location thus ensuring that the population of the bacteria remains constant. d) Elimination and Dispersal: An unforeseen event may cause the elimination of a set of bacteria and/or disperse them to a new environment. This helps in reducing the probability of being getting trapped in local minima. 3.2 The BF Algorithm The algorithm is discussed here in brief. Step1: Initialization i. Number of bacteria (S) to be used for finding the minima. ii. Number of parameters (p) to be optimized. iii. Specifying the location of the initial set of bacteria. iv. N c is the number of chemotactic steps taken by each bacterium before reproduction. v. N s is the maximum number of steps taken by each bacterium when it moves from low nutrient area to high nutrient area. vi. N re and N ed are the number of reproduction and elimination dispersal events. vii. P ed is the probability of elimination and dispersal. viii. Random swim direction vector (i) and run length vector C(i). Step2: Iterative algorithm for optimization The algorithm begins with the calculation of objective value using equation (2) for the initial bacterial population inside the innermost chemotaxis loop. Any i th bacteria at the j th chemotactic, k th reproduction and l th elimination stage is θ i (j,k,l) and its corresponding objective value is given by J 1 (i,j,k,l). The algorithm works as follows: 1. Starting of the Elimination-dispersal loop 2. Starting of the Reproduction loop 3. Starting of the chemotaxis loop a) i = 1, 2,...S, calculate J 1 ( i, j, k, l) b) J 1 ( i, j, k, l) is served as J 1last so as to compare with other J 1 values. c) Tumble: Generate a random vector Δ(i) with each element Δn(i), m = 1,2,, P, a random number on [-1, 1]. i i Δ( i) d) Move: ( j 1,k,l) ( j,k,l) C( i) T ( i) ( i) This results in a step size C(i) in the direction of the tumble for i th bacterium. e) Calculate J 1 ( i, j+1, k, l) f) Swim Let n = 0 (counter for swim length) While n<n s n=n+1; If J 1 ( i, j+1, k, l) < J 1last then J 1last = J 1 ( i, j+1, k, l) and i i Δ( i) ( j 1,k,l) ( j,k,l) C( i) T ( i) ( i) i This ( j 1,k,l) is used to calculate new J 1 ( i, j+1, k, l).

362 339 Else n = N s g) Go to the next bacterium (i+1) till all the bacteria undergo chemotaxis. 4. If j<n c, go to step 3 and continue chemotaxis since the life of bacteria is not over else go to the reproduction stage. 5. Reproduction: a) For the given k and l, and for each i = 1, 2, 3,... S, let i J health N c 1 j 1 J( i,j,k,l) be the health of ith bacterium. The bacteria are stored according to ascending order of J i health. b) The bacteria with the highest J i health values die and other bacteria with minimum values split and the copies that are made are placed at the same location as their parent. 6. If k < N re, go to step 2 to start the next generation in the chemotactic loop else go to step Elimination - dispersal: For i = 1, 2,... S a random number (rand) is generated and if rand P ed, then that bacterium gets eliminated and dispersed to a new random location, else the bacterium remains at its original location. 8. If l < N ed go to step 1 else stop. 4. Experimental Results and Analysis In this section, the performances of the following methods are evaluated: Tsallis based BF, PSO and GA methods. All the experiments were performed on a P4 3GHz with 2GHz RAM. Benchmark images namely Lenna, Pepper, Baboon, Hunter, Cameraman, Airplane, Map, Living room, House and butterfly used for the experiment are gathered in Figure 1 with their histograms. (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (a) Fig. 1 Test Images and their histograms [(a) Lena, (b) Pepper, (c) Baboon, (d) Hunter, (e) Cameraman, (f) Airplane, (g) Map, (h) Living Room, (i) House, (j) Butterfly]

363 340 Table 1: Objective values and their optimal threshold values by using BF, PSO and GA methods Test Images LENNA PEPPER BABOON HUNTER CAMERA MAN AIRPLANE MAP LIVING ROOM HOUSE BUTTERFLY m Objective values Optimal threshold values BF PSO GA BF PSO GA , , , ,124, ,149,187 98,159, ,124,161,193 85,118,164,200 86,120,151, ,108,136,164,193 86,117,142,166,196 95,130,152,173, ,154 82,154 82, ,118,190 93,133,179 75,103, ,121,161,197 73,121,141,176 73,109,141, ,109,139,169,197 78,111,141,169,198 78,105,139,168, ,147 91,147 91, ,148, ,155, ,136, ,114,146,175 62,115,144,174 94,125,152, ,106,136,157,179 84,110,132,153,175 90,116,139,159, ,137 94,137 94, ,118,171 83,143,174 87,147, ,110,142,182 78,109,143,187 90,119,150, ,93,123,150,182 70,103,139,174,198 79,114,144,174, , , , ,128,178 78,121,173 81,143, ,123,156,211 82,122,154,201 76,116,148, ,107,134,158,200 78,110,133,159,199 88,118,143,169, ,153 72,153 72, ,143,193 98,134,192 89,148, ,103,135,182 85,117,153,180 79,111,153, ,94,121,150,185 75,107,134,157,185 73,98,131,162, , , , ,142,198 90,131,183 80,145, ,113,156,203 78,121,158,189 80,117,157, ,112,147,174,206 79,113,142,170,191 91,118,144,174, ,144 81,144 81, ,143,197 91,137,198 88,117, ,107,145,186 87,126,165,200 90,126,158, ,111,139,164,199 71,125,150,176,205 69,126,157,182, ,145 87,145 87, ,133,199 90,133,199 82,123, ,105,146,189 70,112,152,189 73,111,151, ,95,121,155,200 70,104,134,160,212 60,99,114,158, ,136 97,136 97, ,135, ,135,185 89,124, ,120,144,189 89,122,143,178 94,121,141, ,114,141,170,213 70,107,134,162,189 70,119,140,170,214 (a) (b) (c) (d) (e)

364 341 (f) (g) (h) (i) (j) Fig. 2 Segmented images of multilevel thresholding for m = 3 [(a) Lena, (b) Pepper, (c) Baboon, (d) Hunter, (e) Cameraman, (f) Airplane, (g) Map, (h) Living Room, (i) House, (j) Butterfly] Table 2: PSNR value, CPU time and standard deviation value obtained by BF, PSO and GA methods Test Images LENNA PEPPER BABOON HUNTER CAMERAMAN AIRPLANE MAP LIVING ROOM HOUSE BUTTERFLY m PSNR (db) CPU Time Standard Deviation BF PSO GA BF PSO GA BF PSO GA e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e-003

365 342 (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) Fig. 3 Segmented images of multilevel thresholding for m = 5 [(a) Lena, (b) Pepper, (c) Baboon, (d) Hunter, (e) Cameraman, (f) Airplane, (g) Map, (h) Living Room, (i) House, (j) Butterfly] The proposed multilevel thresholding technique using BF is implemented with the following parameters: Number of bacterium (s): 20, Number of chemotatic steps (N c ): 10, Swimming length (N s ): 10, Number of reproduction steps (N re ): 4, Number of elimination of dispersal events (N ed ): 2, In Tsallis objective function, the parameter q is chosen as 4. Several aspects would be tested: (1) the multilevel thresholding results of different methods (2) the objective values for different methods (3) the stability of different methods (4) Peak to Signal Ratio (PSNR) value. The multilevel thresholding is applied to methods aforementioned to experiment their respective effects. Objective values and their thresholds obtained by different methods are listed in Table 1. Multilevel thresholding segmentation results depend on the objective function selected. The higher value of objective function indicated the better segmentation. It is observed that the results by the proposed method are better than others. Segmented images of Tsallis-BF by m = 3 and 5 are shown in Figures 2 and 3 respectively. The segmentation is better when m = 5 is chosen than by choosing m = 3. The PSNR value, CPU time and the standard deviation value obtained by different methods are listed in Table 2. PSNR value is calculated as follows: where 255 PSNR 20log 10 ( ) RMSE 1 M N RMSE [I(i, j) I (i, MN i 1j 1 2 j)] The higher value of PSNR means that the quality of the thresholded image is better. For all the images, the performance of the proposed method is better than the PSO and GA, since their objective value and PSNR measure are higher. It is also observed from the table that compared with PSO and GA methods, the BF method shorten the CPU time significantly. The standard deviation value obtained by the proposed method is lower than the other two methods which show the stability of the proposed method. 5. Conclusion Non-extensive entropy image thresholding is a powerful technique for image segmentation. In this paper, Bacterial Foraging (BF) algorithm based on Tsallis objective function has been proposed to perform multilevel thresholding and the method has been compared with PSO and GA methods. All the techniques have been applied to

366 343 ten standard test images and the segmentation results are superior to those obtained by applying the Tsallis-BF algorithm. Experimental results show that the BF algorithm converges faster than the PSO and GA and provides better stability. In addition, the new algorithm provides better quality in visualization by obtaining maximum PSNR value. Furthermore, the proposed method is also suitable for other types of images. References [1] N. Pal, and S. Pal, A review on image segmentation techniques, Pattern Recognition, Vol. 26, No. 9, 1993, pp [2] F.H.Y. Chan, F.K. Lam, and H. Zhu, Adaptive thresholding by variational method, IEEE Trans. Image Process., Vol. 7, No. 3, 1998, pp [3] P. K. Sahoo, S. Soltani, and A.K.C. Wong, A survey of thresholding techniques, Comput. Vis. Graph. Image Process., Vol. 41, 1988, pp [4] N. Otsu, A threshold selection method from gray level histograms, IEEE Transactions on Systems, Man and Cybernetics SMC Vol. 9, No. 1, 1979, pp [5] J.N. Kapur, P.K. Sahoo, and A.K.C. Wong, A new method for gray-level picture thresholding using the entropy of the histogram, Computer Vision, Graphics and Image Processing, Vol. 29, No. 3, 1985, pp [6] T. Pun, A new method for grey level picture thresholding using the entropy of the histogram, Signal Processing, Vol. 2, 1980, pp [7] J.C. Yen, F.J. Chang, A new criterion for automatic multilevel thresholding, IEEE Trans. Image Process., Vol. 4, No. 3, 1995, pp [8] P.Y. Yin, L.H. Chen, A fast iterative scheme for multilevel thresholding methods, Signal Process., Vol. 60, No. 2, 1997, pp [9] Peng-Yeng Yin, A fast scheme for multilevel thresholding using genetic algorithms. Signal Processing 72, [10] Shu-Kai, S., Fan, & Yen Lin, A multilevel thresholding approach using a hybrid optimal estimation algorithm. Pattern Recognition 28, [11] P.Y. Yin, Multilevel minimum cross entropy threshold selection based on particle swarm optimization algorithm, Appl. Math. Comput., Vol. 184, No. 2, 2007, pp [12] A. Ratnaweera, S.K. Halgamuge, and H.C. Watson, Self-organizing hierarchical particle swarm optimizer with time varying acceleration coefficients, ITTT Trans. Evol. Comput. Vol. 8, No. 3, 2004, pp [13] Kevin. M. Passino, Biomimicry of bacterial foraging for distributed optimization and control, IEEE Control Systems Magazine, Vol. 6, 2002, pp

367 344 A Lazy Ensemble Learning Method to Classification Haleh Homayouni 1, Sattar Hashemi 2 and Ali Hamzeh 3 1 Computer Science and IT Department, Shiraz University, Shiraz, Iran 2 Computer Science and IT Department, Shiraz University, Shiraz, Iran 3 Computer Science and IT Department, Shiraz University, Shiraz, Iran Abstract Depending on how a learner reacts to the test instances, supervised learning divided into eager learning and lazy learning. Lazy learners endeavor to find local optimal solutions for each particular test instance. Many approaches for constructing lazy learning have been developed, one of the successful one is to incorporate lazy learning with ensemble classification. Almost all lazy learning schemes are suffering from reduction in classifier diversity. Diversity among the members of a team of classifiers is deemed to be a key issue in classifier combination. In this paper we proposed a Lazy Stacking approach to classification, named LS. To keep the diversity of classifiers at a desire level, LS utilizes different learning schemes to build the base classifiers of ensemble. To investigate LS s performance, we compare LS against four rival algorithms on a large suite of 12 real-world benchmark datasets. Empirical results confirm that LS can statistically significantly outperform alternative methods in terms of classification accuracy. Keywords: Classification, diversity, classifier ensemble, stacking, lazy learning. 1. Introduction Machine learning is a domain intensively developed in last decades. One of its main sub-domain is supervised learning that form decision theories or functions to accurately assign unlabeled (test) instances into different pre-defined classes. Depending on how a learner reacts to the test instances, we have eager learning and lazy learning (Friedman et al. 1996). Eager learning methods construct a general, explicit description of the target function when training examples are provided. Instance-based learning methods simply store the training examples, and generalizing beyond these examples is postponed until a new instance must be classified. Each time a new query instance is encountered, its relationship to the previously stored examples is examined in order to assign a label to the new instance. (Aha et al. 1991). Many approaches for constructing lazy learning have been developed. One of the most successful uses of lazy learning is in ensemble classifiers. Ensemble methods are learning algorithms that construct a set of classifiers and then classify new data points by taking a vote of their predictions. A set of classifiers with similar training performances may have different generalization performances, combining outputs of several classifiers reduces the risk of selecting a poorly performing classifier. It has been discovered that a classifier ensemble can often outperform a single classifier. A large body of research exists on classifier ensembles and why ensemble techniques are effective. (Bay 1998, Breiman 1996a, Freund & Schapire 1997, Kittler et al., 1998, Mesterharm 2003). One of the best approaches that work under instance-baselearning in ensemble classifiers is lazy bagging (LB), by Xingquan Zhu et.al(2008), that builds bootstrap replicate bags based on the characteristics of test instances. Although lazy bagging has a great success in getting more accurate classifier, diversity would be reduce, because lazy learning suffer from reducing diversity. In order to make the ensemble more effective, there should be some sort of diversity between the classifiers (Kuncheva, 2005). Two classifiers are diverse if they make different errors on new data points. Stacking is a simple yet useful approach to this problem in order to achieve classifier diversity (Wolpert 1992). Under stacking we use different individual classifier in each bag for classifying the test instance. Stacking learns a function that combines the predictions of the individual classifiers. So different type of base classifiers is used in order to get more accuracy in ensembles (Seewald 2003).

368 345 In this paper, we argue that a previously successful instance-based ensemble learning model (LB) can be improved. Lazy learners are suffering from reducing diversity, because they form a decision theory that is especially tailored for the test instance. The above observations motivate our research to find a method that annihilates reducing diversity. Stacking is an ensemble that uses different type of base classifiers for labeling new instance. So we have expected that by using stacking along with lazy learners, we can provide the desire diversity. Fig. 1 LS Diagram; LS waits until a test instance arrived and make a set with k instances out of the NN subset and also another set with N k instances out of the original dataset. Afterwards the class label of the test instance is defined by the majority vote from the output of the base learners. The idea is that for each test instance x, that we add a small i number of its knn into the bootstrap bags, from which the base classifiers are trained. Different type of base classifiers for labeling new instance is used in ensemble stacking. We name this method lazy stacking (LS), a method towards more diverse ensemble classifier. By doing so, we expect to increase the base classifiers classification diversity, leading to more accurate classification of x. i 2. Related work Friedman et al. (1996) proposed a lazy decision tree algorithm which built a decision tree for each test instance, and their results indicated that lazy decision trees performed better than traditional C4.5 decision trees on average, and most importantly, significant improvements could be observed occasionally. Friedman et al. (1996) further concluded building a single classifier that is good for all predictions may not take advantage of special characteristics of the given test instance. In short, while eager learners try to build an optimal theory for all test instances, lazy learners endeavor to finding local optimal solutions for each particular test instance. K-nearest neighbors algorithm is a key element in lazy learning. The knn is one of the most thoroughly analyzed algorithms in machine learning, due in part to its age and in part to its simplicity. Cover and Hart (1967) present early theoretical results, and Duda and Hart (1973) provide a good overview. One of the most successful uses of lazy learning is in ensemble classifiers (ZeNobi. 2002). The main idea of an ensemble methodology is to combine a set of classifiers in order to obtain a better composite global classifier. Ensemble methodology imitates our second nature to seek several opinions before making any crucial decision. One of the successful method of lazy learning in ensemble classifiers is lazy bagging (LB)Xingquan Zhu &Ying Yang (2008), which builds bootstrap replicate bags based on the characteristics of test instances. In order to make the ensemble more effective, there should be some sort of diversity between the classifiers (Kuncheva, 2005). In ensemble classifiers, diversity is obtained by using different types of classifiers. Stacking is a technique whose purpose is to achieve the highest generalization accuracy (Wolpert, 1992). Stacking is usually employed to combine models built by different classifiers. Stacking performance can be improved by using output probabilities for every class label from the base-level classifiers. (Dzeroski and Zenko, 2004). 3. Lazy Stacking In this paper, we proposed LS, a stacking framework with lazy local learning for building an ensemble of lazy classifiers. Lazy Stacking applies lazy local learning to the nearest neighbors of a test instance, which produces more accurate base classifies than applying the global learner. Lazy learners are suffering from reducing diversity, because they forms a decision theory that is especially tailored for the test instance, so by choosing different classifier in stacking to the whole training set, the performance of the joint lazy and stacked learners can be increased accuracy. The increase in performance of LS can mainly attributed to the diversity of our model to be outlined in the section. 3.1 Diversity in classifiers A commonly experienced problem with population based classification methods is the gradual decline in population diversity that tends to occur over time. Diversity among the members of a team of classifiers is deemed to be a key issue in classifier combination, and has been recognized as a very important characteristic (Cunningham & Carney, 2000; Krogh & Vedelsby, 1995; Rosen, 1996; Lam, 2000; Littlewood & Miller, 1989). Ensembles create many classifiers, and combine their outputs to improve the performance of a single classifier. If each classifier makes different errors, so their strategic combination can reduce the total error. Therefore we need base classifiers whose decision boundaries are adequately

369 346 different from those of others, such a set of classifiers is said to be diverse. The key to the success of ensemble algorithms is that, intuitively at least, they build a set of diverse classifiers. The success of Stacking over Bagging is partially dependent on the diversity of the predictions made by its base classifiers [14]. To see this, consider the case when all of the base classifiers make almost the same predictions. In that case the ensemble classifier would Not perform more better than any of the base classifiers taken individually and there would be less benefit to using an ensemble classifier, but if we using different classifiers in ensembles like stacking we can get a desire accuracy. Lazy Stacking has more diversity than Lazy Bagging, so this method is a useful remedy for lack of diversity in classifier ensembles. 3.2 Algorithm of Lazy Stacking In Lazy Stacking the learning process delayed until the arrival of a test instance, Because of its lazy learning nature. When a test instance x needs to be classified, LS will first i try to find the knn of x from the training set T, and uses the i discovered knn, along with the original training set T, to build bootstrap bags for stacking prediction. We will propose a β-similar concept to automatically determine the value of K for each dataset T, because knn of x play a i crucial role for LS to classify x. i In contrast to traditional stacking which directly samples N instances from a training set T, LS sample K instances from the knn subset (S) and N-K instances from the original learning set (T). The first N-K instances sampled from T are to ensure that LS-trimmed bags function similarly to pure bootstrap bags, such that LS s base classifiers can be as independent as possible. The succeeding K instances from S are to enforce x s knn to have a better chance to appear in i each bag and thus help LS build base classifiers with less variance when classifying x. i Instead of directly putting all x s knn into each bag, LS i applies bootstrap sampling on x s knn subset as well. It is i expected that our procedure will ensure x s knn have a i better chance to appear in each bootstrap bag, with No decrease of the bag independency. After the construction of each bootstrap bag B I, LS builds a classifier C from, applies C to classify x and generates a i B I i i prediction C (x ). LS repeats the same process for L times, i i by different classifiers and eventually produces L predictions for x, C (x ), C (x ),..,C (x ). After that, the class i 1 i 2 i L i y that wins the majority votes among the L base classifiers is selected as the class label for x i. Procedure LazyStacking() Learning: 1. K Determine the value of K for T 2. Calculate attribute weights by using Information-gain Ratio (IR) 3. S Find x s K nearest neighbours from T i 4. For i from 1 to L a) B i Bootstrap sampling N-K instances from T b) P Bootstrap sampling K instances from S c) B i B i P. Build a classifier C i by using instances in B i. Classification: d) and apply C i to x. Denoting the predicted class label by C i (x )= i i y i. 5. End For 6. Y arg y i (Y is the class label with majority votes.) 7. Return Y 3.3 The K Value Selection To determine the value of k, this paper follows the approach previous studied in LB. Because knn of x play a crucial i role for LS to classify x, we will propose a β-similar i concept to automatically determine the value of K for each dataset T. The large value of k leads to the increase of bag dependency and very small value of k leads to decrease in accuracy so we should find an appropriate value of k. In this paper a method is proposed for defining k automatically and uses the similarity measure between TS and LS bags that defined based on entropy. We called it β-similarity and in this paper we fixed to it to 0.99 for defining k, based on similarity measure we should use the following formula: W log (1) Where W = K/N as the ratio between the number of KNN and the total instance number in T. To help an instance x i find similar neighbors, we need to find the weight of each attribute so that the weighted distance function can indeed capture instances similar to x. For simplicity, we use i Information-gain Ratio (IR) as a weight measure for each attribute. The attribute weights is for finding the KNN subsets i.e. attributes with larger weights have stronger effects in finding the nearest neighbors of an instance. Then

370 347 uses the Normalized information gain ratio of each attribute for it s weight. Equation 3 shows this the weighted Euclidean distance for finding knn of an instance. IR 0 (A i ) is the Normalized information gain for the i th attribute and R is the total number of attributes: Dis(x i,x l )= ).( (2) 4. Experimental Results To further assess the algorithm performance, we compare LS and several benchmark methods including C4.5, knn, TB, and LB accuracies on 12 real-world datasets from the UCI data repository (Blake & Merz 1998). We implement C4.5, knn, TB, LB and LS predictors by using WEKA data mining tool. In order to measure the performance of the proposed algorithms in this work, we employed 10-time 5-fold cross validation for each dataset, and assess their performance, based on the average accuracy over 10 trials. 4.1 Description of Datasets To compare LS other benchmark methods we use 12 realworld datasets from the UCI data repository [13]. The main characteristics of these datasets are summarized in Table Rival methods To further assess the algorithm performance, we compare LS and several benchmark methods including C4.5, knn, TB, and LB accuracies on 12 real-world datasets from the UCI data repository (Blake & Merz 1998). For LB, TB and LS, we use C4.5 unpruned decision trees (Quinlan 1993) as base classifiers because these methods prefer unstable base classifiers. K value is determined by fixing the β value to 0.99 for all datasets. Two single learners (the C4.5 decision tree and knn) are used to offer a baseline in comparing rival algorithms. Table 1: Experimental datasets (# of attributes includes the class label). A summary of characteristics of these data sets are showed in this table. Dataset 4.3 Classification Accuracy Comparison # ofclasses Table 2 reports the accuracies of rival algorithms on each benchmark dataset. Each row in the table 2 denotes the results of one dataset, and the columns report the results from different learners. Each value in the table field gives the prediction accuracy and the standard deviation. For each learner and one single dataset, the highest accuracy value among five methods is bold-faced. #of Attributes #of Instances Audiology Balance Bupa Car 4 7 1,728 Ecoli Glass Hayes Horse Krvskp ,196 Labor Sonar Table 2: Classification accuracy (and standard deviation) on 12 datasets selected from the UCI data repository. For each dataset, the accuracy of the method with the highest mean accuracy is marked in bold face. Dataset KNN C4.5 TB Lazy Bagging Lazy Stacking Audiology 54.42± ± ± ± ±1.76 Labor 84.45± ± ± ± ±2.71 Balance 89.28± ± ± ± ±0.48 Pima 75.00± ± ± ± ±1.08 Bupa 63.47± ± ± ± ±1.38 Car 78.67± ± ± ± ±0.27 Hayes 64.36± ± ± ± ±2.52 Horse 81.61± ± ± ± ±1.01 Glass 64.95± ± ± ± ±1.77 Sonar 73.18± ± ± ± ±1.87

371 348 Ecoli 86.01± ± ± ± ±0.69 Kr-vs-kp 89.64± ± ± ± ±0.12 The mean accuracy in 12 UCI data sets by lazy bagging classification is and by lazy stacking is The results in Table 2 indicate that LS can outperform LB on 12 datasets with more than 2% absolute accuracy improvement, and also the results indicate that out of the 12 datasets, LS wins other methods in 16 datasets (a probability of 9/12=75%). 3.1 Experimental Results and Statistical Tests Various researchers adopt different statistical and common-sense techniques to decide whether the differences between the algorithms are real or random. In this section we examine some known statistical tests, and study the performance for our algorithms. We further proceed to compare rival algorithms across multiple data sets. We deploy the following statistical tests: absolute average accuracy, t-test. Table 3. The comparison between lazy bagging and lazy stacking, on 12 datasets from UCI data repository (datasets are ranked based on LS s absolute average accuracy improvement over LB in a descending order). The p-value indicating a statistical difference (less than the critical value 0.05) is bolded. All p values less than are denoted by < Dataset Lazy Bagging Lazy Stacking LS_LB p-value Balance 77.23± ± <0.001 Sonar 80.05± ± <0.001 Lymph 80.41± ± <0.001 Labor 86.64± ± Ecoli 83.30± ± Hayes 75.76± ± Bupa 70.23± ± Audiology 81.75± ± Glass 74.31± ± Pima 76.23± ± Kr-vs-kp 99.69± ± Horse 84.96± ± (denoted by <0.001) indicates that the accuracies of LS are statistically significantly higher than that of LB. We then can infer that LS is statistically significantly better than LB on Balance. When comparing LS and LB, we can easily conclude that LS significantly outperform LB with improvement, and for several datasets, the accuracies of LS are more. This asserts that for learners, a stacking framework based on lazy local learning is better design than LB statistically. Overall in table 3, LS outperforms LB on 9 datasets, of which the results on 9 datasets are statistically significant. On the other hand, LB outperforms LS on 3 datasets. LS s wins (9) versus losses (3) compared with LB is also statistically significant. The results indicate that out of the 12 datasets, LS wins other methods in 9 datasets (a probability of 9/12=75%). As a result when comparing LS to other classifier, we can find that LS in most datasets can outperform (or perform as good as) other classifier. Meanwhile, we also Notice that for several datasets, the accuracies of LS are identical to that of the other classifier and simple bootstrap sampling. 5. Conclusions & future work In this paper, we proposed LS, a stacking framework with lazy local learning for building a classifier ensemble learner. The method is a combination of lazy learning and ensemble classifiers in order to get more accurate classifier. As a future work we plan to extend the current work to combine Bagging and Stacking in lazy learners in order to better classifier. Acknowledgments This work was supported by the Iran Tele Communication Research Center. Table 3 also reports the p-values between LS and LB to evaluate whether the mean accuracies of LB and LS are statistically different; a statistically different value (less than the critical value 0.05) is bolded. Take the first dataset Balance in Table 3 as an example. The p-value References [1] D. Aha, D. Kibler, and M.Albert, Instance-based learning algorithms. Machine learning, Vol.6, 1991, pp

372 349 [2] L. Breiman, Bagging predictors, Machine Learning, Vol.24, No.2, 1996a, pp [3] D. W. Aha, Editorial: Lazy Learning, Artificial Intelligence Review, Vol.11, 1997, pp.1-5. [4] J. Kittler, M. Hatef, R. Duin, and J. Matas, On combining classifiers, IEEE Trans. on Pattern Analysis and Machine Intelligence, Vol. 20, No. 3, 1988, pp [5] D. Wolpert, Stacked Generalization, Neural Networks, Vol.5, No.2, 1992, pp [6] J. Friedman, R. Kohavi, and Y. Yun, Lazy decision trees. In Proc. of the AAAI, 1996, pp MIT Press. [7] B. Zenkos, S. Zeroski, Is Combining Classifiers with Stacking Better than Selecting the Best One?, Machine Learning, Vol.54, 2004, pp [8] X. Zhu, Y. Yang,.A lazy Bagging approach to classification, Pattern Recognition, Vol.41, No.10, 2008, pp [9] R. Polikar, Ensemble based systems in decision making, IEEE Circuits and Systems Magazine, Vol.6, 2006, pp [10] L. Kuncheva, and C. Whitaker, Measures of diversity in classifier ensembles and their relationship with the ensemble accuracy, Machine Learning, Vol.51, No.2, 2003, pp [11] R. Khoussainov, A. Heb, and N. Kushmerick, Ensembles of Biased Classifiers, In Proc. of the 12 nd ICML Conference, 2005, Vol.119, pp [12] R. Polikar R., Ensemble Based Systems in Decision Making, IEEE Circuits and Systems Magazine, Vol.6, No. 3, 2006, pp [13] C.L. Blake, C.J. Merz, UCI repository of machine learning database, [14] S.A. Gilpin, D.M. Dunlavy, Relationships Between Accuracy and Diversity in Heterogeneous Ensemble Classifiers, SAND2009,694OC. Department of Energy's National Nuclear Security Administration under Contract DE-AC04-94AL he works as one of team leaders of Soft Computing group of shiraz university working on bio-inspired optimization algorithms. He is co-author of several articles in security and optimization. H. Homayouni was born in Shiraz, Iran in She received her B.Sc. degree in Computer Engineering from meybod Islamic Azad University in She is currently an M.Sc. student in Artificial Intelligence at Shiraz University. Her research interests include supervised learning and ensemble classifiers. S. Hashemi received the PhD degree in Computer Engineering from the Iran University of Science and Technology, in conjunction with Monash University, Australia, in He is currently a lecturer in the Electrical and Computer Engineering School, Shiraz University, Shiraz, Iran. His research interests include data stream mining, database intrusion detection, dimension reduction, and adversarial learning. A. Hamzeh received his Ph.D. in artificial intelligence from Iran University of Science and Technology (IUST) in Since then, he has been working as assistant professor in CSE and IT Department of Shiraz University. There, he is one of the founders of local CERT center which serves as the security and protection service provider in its local area. As one of his research interests, he recently focuses on cryptography and steganography area and works as a team leader in CERT center to develop and break steganography method, especially in image spatial domain. Also,

373 350 Automated Test Data Generation Based On Individual Constraints and Boundary Value Hitesh Tahbildar 1, and Bichitra Kalita 2 1 Computer Engineering and Application Department, Assam Engineering institute Guwahati, Assam , India 2 Computer Application Department, Assam Engineering College Guwahati, Assam , India Abstract Testing is an important activity in software development. Unfortunately till today testing is done manually by most of the industry due to high cost and complexity of automation. Automated testing can reduce the cost of software significantly. Automated Software Test Data Generation is an activity that in the course of software testing automatically generates test data for the software under test. Most of the automated test data generation uses constraint solver to generate test data. But it cannot generate test data when the constraints are not solvable. Although method can be found to generate test data even if the constraints are unsolvable, but it is poor in terms of code coverage. In this paper, we propose a test data generation method to improve test coverage and to avoid the unsolvable constraints problem. Our method is based on the individual constraints and same or dependent variable to create the path table which holds the information about the path traversed by various input test data. For generating unique test data for all the linearly independent feasible path we created equivalence class from the path table on the basis of path traversed by the various input test data. The input data is taken based on individual constraints or boundary value. Our results are compared with cyclomatic complexity and number of possible infeasible paths. The comparison shows the effectiveness of our method. Keywords: Independent feasible path, scalability, equivalence class. 1. Introduction Automated testing is a good way to cut down time and cost of software development. It is seen that for large software projects 40% to 70% of development time is spent on testing. Therefore automation is very much necessary. Test automation is a process of writing computer programs that can generate test cases, or else test cases need to be generated manually. Automated testing save time, money and increase test coverage. Software testing tools and technique usually lack in portability, reliability, applicability, and scalability. Till today, there are four approaches of automatic test data generation. They are Random [18, 19, 14], Goal oriented, Intelligent approach, and Path oriented [8, 16, 9]. Random testing is quick and simple but not reliable. Goal oriented approach do not require path selection step but there is difficulty in selecting goal and adequate data. Intelligent approach might face the problems of high computation. The reason behind popularity of path oriented testing is its strongest path coverage criteria. Main problem of path oriented test data generation is infeasible path and complexity of data types [1]. Path oriented testing can be implemented by symbolic execution [20], actual value [16], and combined method [12, 21, 11]. Conventional method of test data generation using symbolic execution collect the path predicate and then solve it with a constraint solver[17]. There are many issues of symbolic execution. Some of them are unsolvable constraint, aliasing, solving for infinite loops, and size of symbolic expression etc. [9]. We cannot generate test data when constraints are not solvable. Another major problem of symbolic execution is detection of path feasibility. There are programs where more than 50% of paths are infeasible.[9]. Avoidance of infeasible path can expedite test data generation process significantly. Xio [5] proposes a constraint prioritization method to generate test data using data sampling score. The method solves prioritized constraints to generate test data for longest feasible path. The method considers longest feasible path i.e. it does not consider any unsolvable constraints as the constraints are collected based on some inputs. But it cannot give the guarantee of better or full coverage. Xio method had chosen the orthogonal data selection method for the input test data. Orthogonal data selection is to select data at the

374 351 opposite ends of the range of values [5]. The method overcomes the situation of infeasible path which is one major problem of automated software testing. It gives us guarantee for only one test data as any data satisfies either of the complementary constraints. The major problem of the conventional method of symbolic execution is constraint solver. It removes the difficulties of conventional method of symbolic execution using prioritized constraint instead of using constraint solver. It provides a solution for infeasible path problem but the method is weak in terms of code coverage. The orthogonal selection have some drawbacks. The orthogonal test data selection will not be applicable for those sample programs having single input variable constraint. The path covered by the test data generated by this method covers only one path or a few paths. We propose a method to improve the test coverage and also to avoid constraint solving. The detection of path feasibility [17] is also taken care. Our method is based on the variables involved in the constraints. We are grouping the constraints in such a way that the constraints belongs to the same groups or equivalent class of variables are solvable for all possibilities. That is unsolvable constraints are not put to the same equivalence class of variables. For each equivalent class we generate path based on individual constraints or boundary value. The paper is organized as follows: Section 2 presents a survey of related works of test data generation methods. Section 3 explains our approach with sample programs. Section 4 explains our experimental results and advantages of our approach of test data generation. Finally in Section 5 we conclude with some observation and future work to be done in test data generation. 2. Survey of related works The literature of test data generation methods says that the main problem of symbolic execution [10, 9, 20] is constraint solving [22]. Either constraint solving may take more time or some constraints are not solvable. Test case prioritization is used to improve the rate of fault detection specially for regression testing [7, 13, 2]. In [5], constraint prioritization technique with sampling scores method is used to deal with problem of constraint solving. The steps of the Xio methods are construction of control flow graph, finding edge priority, finding complementary pairs, and sample table and sample scores. But this method [5] works only for specific programming constructs. In [19, 18] random testing is cleverly implemented to generate test data. In conventional testing we believe that number of test case should be equal to cyclomatic complexity. McCABE in [23] showed that when actual number of paths tested is compared with cyclomatic complexity, several additional paths are discovered that would normally be overlooked. Ngo and Tan proposed an approach to detect infeasible paths using actual value execution [15]. The method combines empirical properties of infeasible paths with dynamic information collected during test data generation process. Antonia emphasizes on research for improvement of scalability of test data generation algorithms [4]. 3. Our Approach 3.1 Steps of Our Approach To improve the coverage of the sample program which is the major drawback in the method as suggested by [5], we propose a method based on the variables involved in the constraint. The flow graph of our method is shown in figure 1. Source Program Constraints Dependent Variable Collector Dependent Variables Variables Equivalence Classs Generator Equivalence Class of Variables Input Data Generator Constraint Finder Constraint Collector Input Data Path Table Algorithm Path for Test Data Equivalence Path Generator Test Data Fig. 1 Steps of our approach. The constraints in the program are found out with the help of this tool Dependent Variable Finder The variables which are either same or dependent on each other are found out with the help of this tool.

375 Equivalence Class of Variables Initially the equivalence class is blank. The first constraint is added to the equivalence class. Next the second constraint is checked with the first constraint and if the variable in the second constraint is either same or dependent on the variable of the first constraint then the second constraint is added to the same class or else the second constraint is added to a new class. Similarly for all the constraints the variables are checked with the variables of the constraint already in the equivalence class, to find out if they are either equal or dependent. Then they are added to the same class on which the dependent/same variable constraint is located or else they are added to a new class Input Test Data Generator The input test data is generated on the basis of the equivalence class of variables. Here 3 cases may arise. They are discussed below:- CASE 1: NOT ALL BUT SOME VARIABLES INVOLVED IN THE CONSTRAINT ARE SAME OR DEPENDENT Some but not all variables involved in the constraint are same or dependent on the variables involved in other constraint. In this case we will at least get more than one equivalence class of variables. As for example the sample program1, the constraints in the sample program are w1 == 5, w1 > 5, w1 + w2 >= 8, w1 + w2 + w3 >= 12. Here the two constraint w1 == 5 and w1 > 5 involves the same variable w1 and hence they are included in the same equivalence class and the other two constraints are added in a new class respectively. The control flow graph of sample program 1 is shown in figure 2. The equivalence class for this sample program 1 is shown in table 1. Table 1: Equivalence class for sample program 1 Class Constraint 1 w1 == 5, w1 > 5 2 w1 + w2 >= 8 3 w1 + w2 + w3 >= 12 The test data generated for various possibilities of sample program 1 constraints are shown in table 2 and table 3 CASE 2: ALL VARIABLES INVOLVED IN THE CONSTRAINT ARE SAME OR DEPENDENT 1 a, b 2 3 c d 4 5 e g 7 6 i k 9 8 l j 10 m 11 n

376 353 Fig 2: Control flow graph of program 1 w1==5 w1+w2>=8 w1+w2+w3>=12 TRUE TRUE TRUE TRUE TRUE FALSE TRUE FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE ally. For example the sample program 3. The constraints in the sample program are marks > 100, marks >= 50 and grade! = ". Here the first two constraints consist of the same variable marks and the variable grade involved in the third constraint depends on the variable marks. The equivalence class of variables for this sample program is shown in table 4. Thus the input test data will be taken by the boundary analysis of the constraint marks > 100, marks >= 50 and grade! = " but the variable grade is the output hence the input test is taken considering the boundary analysis of the first two constraint. CASE 3: INDIVIDUALLY THE VARIABLES INVOLVED IN THE CONSTRAINT ARE NOT SAME OR DEPENDENT BUT COMBINATION OF TWO OR MORE CONSTRAINT MAY MAKE A VARIABLE INVOLVED IN A CONSTRAINT DEPENDENT ON THE COMBINATION w1 > 5 w1 + w2 >= 8 w1 + w2 w3 >=12 TRUE TRUE TRUE TRUE TRUE FALSE TRUE FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE 1 a,b,c,d 2 e 3 f 4 5 g,h i,j 6 k 7 8 l m This case can be explained with the help of the sample program 4.The control flow graph of sample program 4 is shown in figure 4. The constraints in the sample program are:- a > b; a > c; b >c; a == b; b == c The constraint a > b and a == b involves the same variable a & b and the constraint b > c and b == c also involves the same variable b and c. But the combination of the constraint a > b & a > c makes the constraint b > c & b == c dependent on the combination. Similarly But the combination of the constraint a > b & a > c makes the constraint a > c dependent on the combination and also the combination of the constraint b > c & a > c makes the constraint a > b & a == b dependent on the combination. Hence the input test data is taken by

377 354 solving the constraint combination as follows: - a > b & a > c a > bb > c a > cb > c a > cb c a > ca b a > bb c b > ca b Table 4: Equivalence class of sample program 3 Class Constraint 1 Marks>100, marks >=50 and grade! = b<=c b!=c a 1 a>b a<=b c 3 e 5 a<=c b>c a>c g b<= 7 a==b a!=b h l 8 11 b=c b! =c m 12 n 13 j,k 10 b=c Fig 4: Control flow graph of program Path Table Algorithm. Path = NULL 2. Current node = start 3. If Current node!= End 4. go to step 6 b 2 d 4 f 6 i 9 5. else go to step Path = Path + Current node 7. if Current node has only one child node then 8. Current node = Child node 9. Otherwise, if constraint at the node is true then 10. Current node = Left Child node 11. Else Current node = Right child node 12. go to step Path = Path + End 3.3 Equivalence Path Generation Algorithm 1. For all path generated do the steps from 2 to 7 2. If Equivalence path table is empty then 3. Add the path to Equivalence path table 4. Otherwise, do the steps from 5 to 7 5. Compare the path with all paths in equivalence path table. 6. As soon as a match is found simply discard the path. 7. If no match is found add the path to Equivalence path table. x>y 4 h,i 1 a-e 2 f x!=y x<y Fig 5: Control flow graph of program Input Test Data 6 l 3 g 7 m x=y The input test data is taken based on feasible individual constraints or boundary value of the constraints variables. 4. Experimental Results 5 J,k

378 Result of Sample Program 1 The path table for sample program 1 is shown in table Path Table and equivalence class The equivalence class and path table for sample program 1 of control flow graph figure 1 is shown in table 6. The unique feasible paths and test data are shown in table Experimental Result of Sample Program Path Table and equivalence class Path table for sample program 2 of control flow graph figure 5 is shown in table 7. Three different paths are generated by our input algorithm. The unique feasible paths and test data are shown in table 8 Table 5: Path Table for sample program 1 w1 w2 w3 Path covered a,b,e,l,n a,b,e,l,n a,b,e,l,n a,b,e,l,n a,b,d,g,k,l,m,n a,b,d,g,k,l,m,n a,b,d,g,i,j,l,m,n a,b,d,g,i,l,m,n a,b,d,e,l,m,n a,b,d,e,l,m,n a,b,d,e,l,m,n a,b,d,e,l,m,n a,b,d,g,k,l,m,n a,b,d,g,k,l,m,n a,b,d,g,i,l,m,n a,b,d,g,l,m,n Table 6: Equivalence class and test data Class Path covered value 1 a,b,c,d,e,l,n w1=5, w2=3, w3=4 2 a,b,c,d,g,k,l,m,n w1=4, w2=4, w3=4 3 a,b,d,g,i,j,l,m,n w1=4, w2=3, w3=6 4 a,b,d,g,i,l,n w1=4, w2=3, w3=4 5 a,b,d,e,l,m,n w1=6, w2=2, w3=4 4.3 Experimental Result of Sample Pro-gram Path Table and equivalence class Path table for sample program of control flow graph figure 3 is shown in table 9. The unique feasible paths and test data are shown in table 10 Thus the final test data's are the data taken from each equivalence class 4.4 Experimental Result of Sample Program 4 The path table of sample program 4 has 32 paths and by forming equivalence class we get 11 unique feasible paths. 4.5 Discussions and Comparison According to Ngo and Tan [15] the main cause of infeasible program paths is the correlation between some conditional statements along the path. Two conditional statements are correlated if along some paths, the outcome of the latter can be implied from the outcome of the earlier. We compare our results for minimum number of paths covered by our method with cyclomatic complexity and number of infeasible paths generated for programs with the infeasible path detection method proposed by [15]. Table 7: PATH Table for sample program 2 x y Path covered 4 4 a,b,c,d,e,f,m 4 8 a,b,c,d,e,f,g,h,i,l,f 8 4 a,b,c,d,e,f,g,j,k,l,f 10 5 a,b,c,d,e,f,g,h,i,l,f 5 10 a,b,c,d,e,f,g,j,k,l,f a,b,c,d,e,f,m Table 8: Equivalence class and test data Class Path covered Value 1 a,b,c,d,e,f,m x=4, y=4 2 a,b,c,d,e,f,g,h,i,l,f x=8, y=4 3 a,b,c,d,e,f,g,j,k,l,f x=4, y=8 For the sample program 1 Node1 and Node9 are empirically correlated because (a) There exist a path from node1 to node9 for the conditional statement w1 == 5 and also for the conditional statement w1! = 5. (b) node1 which has the statement n = 10 and w1 = = 5 and the node9 has the statement n >= 30. The two nodes are not transitively dependent. (c) δ(node1) = δ(node9) because the conditional statement w1 == 5 depends on the variable w1 and the conditional statement n>= 30 in node9 depends on n and n depends on w1. Thus either true (node1) and true (node9) is feasible and false (node1) and false (node9) is feasible, or true (node1) and false (node9) is feasible and false (node1) and true (node9) is feasible Similarly,

379 356 node3 and node9 are empirically correlated. node5 and node9 are empirically correlated node7 and node9 are empirically correlated The table 11 shows all the linearly independent paths along with the constraint involved in the path But according to the infeasibility condition the feasible paths are:- 1) Class A or Class B 2) Class C or Class D 3) Class E or Class F 4) Class G or Class H 5) Class I or Class J Using [15] we find that in sample program 1 there are 5 in- Table 9: PATH Table for sample program 3 Marks Path Covered 99 a,b,c,d,e,f,i,j,l,m a,b,c,d,e,f,i,j,k,l,m 101 a,b,c,d,e,k,m 49 a,b,c,d,e,f,g,h,k,l,m 50 a,b,c,d,e,f,i,j,l,m 51 a,b,c,d,e,f,i,j,k,l,m Table 10: Equivalence class and test data Class Path covered Value 1 a,b,c,d,e,f,i,j,k,l,m 99 2 a,b,c,d,e,k,m a,b,c,d,e,f,g,h,k,l, m 49 feasible paths. Again the number of equivalence class of the sample program 1 is 5. Hence, our method covers all the linearly independent feasible path of the sample program 1.The cyclomatic complexity of the sample program 1 is 6, and our approach has generated 5 test data. For the sample program 2 there are no empirically correlated as no pair of nodes satisfy the empirically correlated condition. The table 12 shows all the linearly independent paths along with the constraint involved in the path. From the table 12 it is seen that there are 3 linearly independent feasible paths and our approach also generates 3 equivalence classes. Hence, our method covers all the linearly independent feasible paths of the sample program 2. The cyclomatic complexity of the sample program 2 is 3, and our approach has generated 3 test data. In sample program 2 there are no infeasible path. For the sample program 3 node3 and node6 are empirically correlated. Thus either true(node3) and true(node6) is feasible and false(node3) and false(node6) is feasible, or true(node3) and false(node6) is feasible and false(node3) and true(node6) is feasible. Similarly, there will be three linearly independent feasible path in the program and the number of equivalence classes are also 3. Hence, our method covers all the linearly independent feasible paths of the sample program 3. In sample program 3 there are 50% infeasible paths. The cyclomatic complexity of the sample program 3 is 4, and our approach has generated 3 test data. For the sample program 4 There are 32 linearly independent paths. There are 21 infeasible paths. Hence the number of feasible paths are 11 and the number of equivalence classes of our implemented method is also 11. Hence, our method covers all the linearly independent feasible paths of the sample program 11. In Table 11: Linearly independent path table for sample program 1 Class Constraints Path covered A w1==5 n>=30 a,b,d,e,l,m,n B w1==5 n<30 a,b,d,e,l,n C w1>5 n>=30 a,b,d,e,l,m,n D w1>5 n<30 a,b,d,e,l,,n E w1! =5 w1<5 a,b,d,g,k,l,m,n w1+w2>=8, n>=30 F w1! =5 w1<5 a,b,d,g,k,l,,n w1+w2>=8, n<30 G w1! =5 w1<5 a,b,d,g,i,j,l,m,n w1+w2<8, w1+w2+w3>=12, n>=30 H w1+w2<8, a,b,d,g,i,j,l,,n w1+w2+w3>=12, n<30 I w1! =5 w1<5 a,b,d,g,i,l,m,n w1+w2<8, w1+w2+w3<12, n>=30 J w1! =5 w1<5 w1+w2<8, w1+w2+w3<12, n<30 a,b,d,g,i,l,n Table 12: Linearly independent path table for sample program 2 Class Condition Path covered A x=y a,b,c,d,e,f,m

380 357 B x! =y x>y a,b,c,d,e,f,g,h,i,l,f C x! =y x<y a,b,c,d,e,f,g,j,k,l,f sample program 4 there are 66% infeasible paths. The cyclomatic complexity of the sample program 4 is 7, and our approach has generated 11 test data Advantages of Our Approach Our approach of dividing the input test data into the equivalence classes gives data for all the linearly independent feasible path. The time and memory complexity is much lower than the [5] method as we have generated the test data without considering the priority table. Thus we have generated reliable test data at a lower cost. The path table does not include the infeasible path and so we have left the infeasible path at the beginning and have not tried to find the test data from the beginning. 5. Conclusions and Future Work The proposed method has generated test data almost for all the feasible independent paths. As for example for the sample program1, the proposed method has covered the path involving the constraint w1==5 & n < 730, w1>5 & n>=30, w1+w2>=8 & n>=30, w1+w2+w3>=12 & n>=30 but could not provide test data covering the constraint w1==5 & n>=30, w1>5 & n<30, w1+w2>=8 & n<30, w1+w2+w3>=12 & n<30. But those path which have not been covered by the proposed method are infeasible paths if we go through the body of the program. Similarly, the proposed method covers all the feasible paths of the other sample programs also. For the sample program 3 we have seen that according to Ngo and Tan [15] there are three infeasible paths and the total number of linearly independent path is 6, hence there are three feasible paths and our method also generated three test data for three independent paths. For those types of sample program which do not have infeasible path the proposed method covers all the linearly independent paths as the sample program 2. Coverage is inversely proportional to the number of infeasible paths. Thus the proposed method generates all the feasible linearly independent paths of any program and the presence of infeasible path does not create any problem in generating the test data for testing a program. Though the test data generated by the implemented method is less than the cyclomatic complexity for the sample program 1 and the sample program 3 but the cyclomatic complexity includes both the feasible and infeasible path. Again the cyclomatic complexity gives only the value of minimum number of linearly independent path. But our method generates test data for all the feasible linearly independent path. Hence our method gives more accurate result in compare to the cyclomatic complexity. We describe an approach for test data generation with lower computation cost. The main issue of test data generation using this method is how to take input for finding the paths. We tested our input test data algorithm with 5 different types of programs. Our experimental results shows that this method can generate reliable test data at a lower cost but it is not optimum. The disadvantage of our method is reliability of input while extracting the paths. Since a program may have many numbers of infeasible paths therefore we cannot determine whether number of equivalence class cover minimum number of test to be covered like cyclomatic complexity. Our algorithm for solving path constraints is encouraging. Because the number of equivalence class is less than equal to number of paths. In future we will further research for finding methods of input selection so that it covers every feasible paths of our program. The method should be tested with more examples for accuracy. The method should improve the scalability by including more data types like dynamic data structure and string. References [1] Shahid Mahmood,"A Systematic Review of Automated Test Data Generation Techniques", School of Engineering, Blekinge Institute of Technology Box 520 SE Ronneby, Sweden, October [2] David Godwin Jason Racicot Mechelle Gittens, Keri Romanufa.. All code coverage is not created equal A case study in prioritized code coverage." Technical report, IBM Toronto Lab, [3] J. Edvardsson,, Survey on Automatic Test Data Generation," In Proceedings of the Second Conference On Computer Science and Systems Engineering (CCSSE'99),Linkoping, pp /1999. [4] Antonia Bertolino, Software testing research: Achivements, challenges, dreams," In Future of software Engineering, [5] J. Jenny Li Xio Ma and David m. Weiss., Pri- oritized constraints with data sampling scores for automatic test data generation." In Eight ACIS In- ternational Confe ence on Software Engineering, articial Intelligence, Network, [6] Jon Edvardsson, A survey on automatic test data generation," In In Proceedings of the Second Con- ference on Computer Science and Engineering in Linkoping, pages 21-28, October 1999.

381 358 [7] Chengyum Chu Mary Jean Harrold Gregg Rother- mel, Roland H. Untech., Test case prioritization: An empiri cal study," In Proceedings of the International Conference on Software Manitenance, Ox- ford, U. K., September [8] Tsong Yueh Chen, Fei-Ching Kuo and Zhi Quan Zhou Teaching Automated test Case Generation," In In Proceedings of the Fifth International Con ference on Quality Software(QSIC'05, IEEE, [9] Chen Xu Jian Zhang and Xiaoliang Wang., Path- oriented test data generation using symbolic execution and constraint solving techniques," In Proceedings of the Interna- tional Conference on Software Engineering and Formal Meth- ods, [10] Jian Zhang. Symbolic Exection of Program Paths Involving Pointer and Stucture Variables" Proceedings of the Fourth International Conference on Quality Software(QSIC'04) IEEE,2004. [11] H.Tahbildar and B. Kalita. Automated test data generation for programs having array of variable length and loops with variable number of iteration." In Proceedings of International MultiConference of Engineers and Computer Scientists 2010 VOL I, IMECS 2010, March 17-19, 2010, Hong Kong. [12] Bruno Marre Nicky Williams, Patricia Mouy. On-the fly generation of k-path tests for c functions. " In Proceedings of the 19th International Conference on Automated Software Engineering, [13] J. Jenny Li. "Prioritize code for testing to improve code coverage of complex software.",2005. [14] Arnaud Gotlieb and Matthieu Petit Path-oriented ran-dom testing" Proceeding of the first international Work shop on Random Testing(RT06),July 20,Portland, ME, USA Minh Ngoc Ngo *, Hee Beng Kuan Tan, Heuristicsbased infeasible path detection for dynamic test data generation," International Journal Information and Software Technology, ELSEVIER, Page , IEEE Trans. on Software Engineering, ( ), [17] J. Zhang, Xiaoxu Wang., A Constraint Solver and its Application to Path Feasibility Analysis," International Journal of Software Engineering and Knowledge Engineering, 11(2): pp , [18] Koushik Sen.,Darko Marinov, Gul Agha, CUTE: A Concolic Unit Testing Engine for C" ACM, pp. 5-9, [19] Patrice Godefroid, Nils Klarlund and Koushik Sen., DART: Directed Automated Random Testing," PLDI05, June [20] Lori A. Clarke., A system to generate test data and symbolically execute programs.," IEEE Trans. On Software Engineering, SE-2(3), Septem-ber [21] Bruno Marre Nicky Williams, Patricia Mouy, and Murie Roger. Pathcrawler: Automatic generation of Path tests by combining static and dynamic analysis." [22] Richard A. DeMillo Constraint-Based Automatic Test Data Generation" IEEE Trans. on Software Engineering, 17(9):900{910, September, [23] THOMAS J. McCABE A Complexity measure" IEEE Trans. on Software Engineering, VOL. SE-2, No-4, DECEMBER Annexure I Sample Program - 1 public void monitor (int w1, int w2, int w2) { a. int n=10; b. if(w1==5) c. n=n*2; d. elseif(w1>5) e. n=n*3; f. else{ g. if(w1+w2>=8) h. n=n*4; i. elseif(w1+w2+w3>=12) j. n=n*5; k.} l. if(n>=30) m. raisealarm; n.} } Sample Program 2 { void main() a. int m, n, x, gcd; b. scanf("%d, &m); c.scanf( %d,&n); d.x=m; e. y=n;

382 359 f. while(x! =y){ g. if(x>y) h. { i. x=x-y; j. else k. y=y-x; l.} m. gcd=x; } Sample Program-3 { void main() a.int marks; b.char grade[4]; c.scanf("%d, &marks); d.grad= ; e.if(marks<=100) f.if(marks<50) g.{ h.grade="fail"; i.else j. grade="pass"; k. if (grade!="") l.update THE STUDENT WITH STUDENT ID RECORD; m.printf("%s, grade); } working as HOD, Computer Engineering Department, Assam Engineering Institute, Guwahati, INDIA B. Kalita: Ph.d degree awarded in 2003 in Graph Theory. At present holding the post of Associate Professor, Deptt of Computer Application, Twenty research papers have got published in national and international level related with graph theory, Application graph theory in VLSI design, software testing and theoretical computer science. Field of interest: Graph theory, VLSI Design, Automata theory,, network theory test data generation etc. Associated with the professional bodies, such as Life member of Indian Science Congress association, Life member of Assam Science Society, Life member of Assam Academy of Mathematics, Life member of Shrimanta Sankar deva sangha ( a cultural and religious society). Delivered lecture and invited lectures fourteen times in national and international level.. Sample Program-4 int tritype (int a, int b, int c) { a. if (a > b) b. swap (a, b); c. if (a > c) d. swap (a, c); e. if (b > c) f. swap (b, c); g. if (a = = b) h. if (b = = c) i. type = EQUILATERAL; j. else k. type = ISOSCELES; l. else if (b = = c) m. type = ISOSCELES; n. return type; } H. Tahbildar Received his B. E. degree in Computer science and Engineering from Jorhat Engineering College, Dibrugarh university in 1993 and M. Tech degree in Computer and Information Technology from Indian Institute of Technology, Kharagpur in Presently he is doing Phd and his current research interest is Automated Software Test data generation, Program Analysis. He is

383 360 Quantum Multiplexer Designing and Optimization applying Genetic Algorithm Debarka Mukhopadhyay 1, Amalendu Si 2 1 Dept of CSE,Bengal Institute of Technology and Management, Santiniketan, West Bengal, India 2 Dept of IT, Mallabhum Institute of Technology, Bankura, West Bengal, India Abstract: This paper shows how to design efficient quantum multiplexer circuit borrowed from classical computer design. The design will show that it is composed of some Toffole gates or C 2 NOT gate and some two input CNOT gates. Every C 2 NOT gate is synthesized and optimized by applying the genetic algorithm to get the best possible combination for the design of these gate circuits. gate. It is a three input gate. The first two inputs are the controlled inputs and the third one is the target input. This gate has a 3-bit input and output. If the first two bits are set, it flips the third bit. Following is a table over the input and output bits: Keywords: Qubit, Toffole gate, Quantum Multiplexer Circuit, Circuit Synthesis, Quantum Half adder Circuit,Genetic Algorithm. 1. INTRODUCTION Introduction: As the ever-shrinking transistor approaches atomic proportions, Moore s law must confront the small-scale granularity of the world: we can t build wires thinner than atoms. Theoretically, quantum computers could outperform their classical counterparts when solving certain discrete problems [15, 8]. The logical properties of qubits also differ significantly from those of classical bits[2]. Bits and their manipulation can be described using two constants (0 and 1) and the tools of Boolean algebra. Qubits [13], on the other hand, must be discussed in terms of vectors, matrices, and other linear algebraic constructions. Quantum logic circuits [1,4,5,6,14], from a high level perspective, exhibit many similarities with their classical counterparts. They consist of quantum gates, connected by quantum wires which carry quantum bits. Moreover, logic synthesis for quantum circuits is as important as the classical case. In this work, we focus on identifying useful quantum circuit blocks. we analyze quantum conditions and designing quantum multiplexor that engage CNOT[3] and Toffole gates. Here we synthesize and optimize each and every Toffole gate by applying genetic algorithm [7, 10, 11, 12]. 2. Controlled Quantum Gate Operations: Here we have engaged two controlled quantum gates i.e. C 2 NOT and CNOT. C 2 NOT is also known as Toffole Input 1 Input 2 Input 3 Output 1 Output Fig1: C 2 NOT gate and i/o table Output 3 3. Quantum Half Adder: In order to construct an efficient Quantum multiplexer circuit we ll need the quantum equivalent to the classical half adder. This is a 2-input, 2-output device with the following truth table: Classical Half Adder. Input Output A B Sum Cout The sum output is the XOR of the two inputs, and the carry output is the AND of the same two inputs. The quantum equivalent is a 3-input, 3-output device with the following truth table and equations:

384 361 Quantum Half Adder Input Output C B A K S A When S 30 =1 and S 31 =1, ket I 3 will be selected, this input will move to the third output line of the fourth QHA and finally will move to the final QMUL output. V V V S = XOR (A, B) (EQ 1) K = XOR(C, AND (A, B)) (EQ 2) S is the sum output of the quantum half adder, and K is the carry out xored with the ancillary input C. This can be implemented with one CNOT and one Toffole gates as follows: Fig 2: 4. Proposed Design of 4*1 Quantum multiplexer circuit: Our design as in fig 3 below engages the quantum circuit like quantum half adder and two controlled not gate like C 2 NOT and CNOT gate. The half adder [16] output is giving 3 output lines. The output line A is shorted from the input. The 2 nd output line, S is given by the expression S = XOR (A, B) and third output line, K is given by the expression K = XOR(C, AND (A, B)). In a classical multiplexer circuit, depending on the selection line, only one input will move to the output. Based on this classical logic we have designed the quantum multiplexer circuit. The first two inputs of every half adder should be treated as the two selection lines and the third line is one out of four inputs of 4 * 1 multiplexer. When S 00 =0 and S 01 =0, ket I 0 will be selected, this input will move to the third output line of the first QHA and finally will move to the final QMUL output. When S 10 =0 and S 11 =1, ket I 1 will be selected, this input will move to the third output line of the second QHA and finally will move to the final QMUL output. When S 20 =1 and S 21 =0, ket I 2 will be selected, this input will move to the third output line of the third QHA and finally will move to the final QMUL output. Fig 2: Fourth QHA section and its equivalent circuit 5. QUANTUM CIRCUIT SYNTHESIS The C 2 NOT Gate or Toffole Gate is a well known three input quantum gate circuit.this circuit is made up of three two input fundamental quantum logic Gate, that are CNOT, control square root of NOT Gate and conjugate control square root of NOT Gate. But if there is any overlap in this circuit, then using the SWAP gate we simplify the overlap. So this circuit is made up of four fundamental quantum gates. After modification of the previous circuit, we are getting the form below, V V V V + V Decomposing the above circuit into seven stages, each stage is made up of a two input fundamental gate. V V S0 S1 S2 S3 S4 S5 S6 In the above decomposition, each circuit stage (actually four types stage present) has a fundamental gate that is two inputs but the circuit is of three inputs, then other single input is replaced by using a unitary identity gate. V V

385 362 I I I In case of square root of not gate and conjugate control square root of not gate, in their gate matrix, we are using a 9 in place of i, which is a complex number. Whenever a multiplication operation between two 9 happens, we will just replace it by -1. V I V I I V I S0 S1 S2 S3 S4 S5 S6 In the above circuit there are four different stages. These four different stages are, V V V+ I v S0 & S At this stage a square root of not gate is operated with a unitary identity gate and produces the state matrix. I S1 & S3 At this stage a swap gate is operated with a unitary identity gate and produces the state matrix. I S4 & S6 At those particular stages CNOT is operated with unitary identity gate and produces the state matrix. S I Here conjugate control square root of not gate is operated with unitary identity gate and produces the state matrix The three input fundamental quantum Gate will be constructed by the two input fundamental quantum Gate. Every two input quantum gate is transformed into three input dummy quantum gate, using kroneckar product[9] with 2*2 unit matrix. This dummy three input gate is called stage. A number of stages are cascading one by one and creating a circuit that performs an operation, that is same operation of a three input quantum fundamental gate. When the stages are in cascade, there becomes a particular sequence, otherwise the required gate matrix are not same. In three input gate generation, using two input gate, we generate all possible three input dummy gates of two input gates using kroneckar product. Each three input dummy gate assigns an index. Using this index we can access a particular matrix. The number of stage, required to construct a gate, was previously defined. We are denoting those state matrixes by the index 0 to 6. Whenever we are generating a chromosome, we are using these seven numbers in different combinations and multiplying these state matrices according to this combination. Input/output relation using the state matrix I The figure above shows a state of a quantum circuit. The input/output mapping can be done

386 363 using the state matrix. Here a CNOT gate is operated with unitary identity matrix and generate a state matrix. vii. Determine fitness of new generation chromosome. Input State Output 5. Until best individual is good enough DESCRIPTION OF GENETIC ALGORITHM WITH EXAMPLE 0 I Creating a set of random chromosome like this (taking here seven chromosomes) Here we are getting the output from this particular state input. It can be shown by operating the state matrix with the input.the equivalent decimal value of the input is represented by placing a 1 at that particular postion in the input matrix. The position of 1 in the output matrix below, represents the equivalent decimal value of the output of the state GENETIC ALGORITHM FOR GETTING FITTEST QUANTUM CIRCUIT: 1. Read the pre defined length of chromosome(n) 2. Randomly initialize population 3. Determine fitness of population 4. repeat * = i. select parents from population ii. Generate crossover point within a range varying with length of chromosome. iii. Perform crossover operation on parents. iv. Generate mutation points within a range, varying with length of chromosome. v. Perform mutation operation vi. New generation created chromosome [0] S2 S3 S5 S6 S1 S0 S4 chromosome [1] S4 S6 S1 S5 S2 S0 S3 chromosome [2] S3 S5 S1 S0 S4 S2 S6 chromosome [3] S6 S0 S3 S5 S1 S2 S4 chromosome [4] S4 S0 S2 S6 S1 S5 S3 chromosome [5] S3 S4 S6 S1 S0 S5 S2 chromosome [6] S2 S3 S4 S5 S0 S1 S6 7.2 Now have to calculate the fitness value of each chromosome. Here, in our problem we shall calculate the fitness value by the following procedure- (a) Calculate the product of all the seven gene matrices. (b) Now the resultant state matrix of chromosome is to be compared element by element with the state matrix of required gate. (c) Set a variable count. Now if any element of the resultant state matrix of a randomly taken chromosome matches with the corresponding element of the state matrix of required gate, then increase the variable count by 1. Now fitness of a chromosome = count/ number of elements in a state matrix.

387 364 Example: The fitness value of the of the chromosome [0] can be calculated as follows the number of gene present in the chromosome. Now the seven chromosomes after mutation become, The randomly generated seven pair of mutation points are (3 5) (2 6) (2 4) (3 5) (2 4) (0 5) (1 5) chromosome [0] S6 S5 S0 S1 S4 S3 S2 chromosome [1] S6 S0 S2 S5 S1 S3 S4 Resultant Matrix Required Matrix chromosome [2] S2 S4 S0 S1 S6 S5 S3 chromosome [3] S2 S1 S5 S4 S3 S0 S6 Fitness value of chromosome [0]= 59/64= Solution If fitness value of any of the seven chromosomes attains a value which is equal to or greater than a certain value that is set by the user previously, the program ends and we get the required chromosome otherwise we have to proceed to the next stage Crossover and mutation for new generation Crossover: We have to randomly generate a crossover point for each chromosome, (varying with the length of chromosome) in which the crossover should take place and the value of the crossover points should be less than the number of gene present in that chromosome. Now the seven chromosomes after crossover become, The randomly generated seven crossover points are, 2, 0, 3, 4, 5, 2, 4 chromosome [0] S2 S3 S4 S0 S1 S6 S5 chromosome [1] S4 S3 S0 S2 S5 S1 S6 chromosome [4] S1 S3 S5 S2 S6 S0 S4 chromosome [5] S1 S6 S0 S5 S2 S4 S3 chromosome [6] S1 S0 S3 S4 S5 S6 S2 We have to calculate the fitness values of the new generation chromosomes which are generated after crossover and mutation operation. If fitness value of any of the seven chromosomes attains a value, which is equal to or greater than a certain value, that is previously set, then the program ends and we get the required chromosome otherwise we have to proceed again to the next stage. If no new generation is generated after crossover and mutation, the program terminates. 8. CONCLUSION Our work designing the model and optimizing a Quantum circuit, which accepts the entry of any size of 3 input quantum circuit. The GA also incorporates the means to process a given quantum circuit. Our future work will incorporate the designing of register and CPU and optimizing different section of those circuit by applying GA. chromosome [2] S3 S5 S1 S6 S2 S4 S0 chromosome [3] S6 S0 S3 S5 S4 S2 S1 chromosome [4] S4 S0 S2 S6 S1 S3 S5 chromosome [5] S3 S4 S2 S5 S0 S1 S6 chromosome [6] S2 S3 S4 S5 S6 S1 S0 Mutation: We have to randomly generate two mutation points for each chromosome (varying with the length of chromosome) in which the mutation should take place and one value of the mutation point should be less than the other point and the second point must be less than

388 365 Fig 3. (Proposed design of Quantum Multiplexer circuit) S 0 > K 0 > S 1 > K 1 > I 0 > V V V K 0 > K 1 > I 1 > V V V K 0 > K 1 > I 2 > V V V K 0 > K 1 > I 3 > V V V 0> O/p

389 REFERENCES [1] P.W. Shor, Quantum Computing, Documenta Mathematica - Extra Volume ICM, Start Page 1 (1998). [2] H.Buhrman, R. Cleve and A. Wigderson. Quantum vs. Classical Communication and Computation, Proceedings of the 30th Annual ACM Symposium on the Theory of Computation, ACM Press, El Paso, Start page. 63 (1998). [3] R.P. Feynman, Quantum Mechanical Computers, Foundations of Physics, Vol.16, Start Page.507 (1986). [4] H.K.Lo, and S. Popescu and T. Spiller, Introduction to Quantum Computation and Information, World Scientific, Singapore (1999). [5] J. Preskil, Quantum Computing: Pro and Con, Proc. Royal Society, A454, London, Start Page 469 (1998). [6] M.A.Nielsen, and I.L. Chuang, Quantum Computation and Quantum Information, Cambridge University Press (2002). [7] D.G.Cory, et al., Quantum Simulations on a Quantum Computer, Physics Review Letters, start Page 5381 (1999). [8] Ashok Muthukrishnan, Classical and Quantum Logic Gates: An Introduction to Quantum Computing Quantum Information Seminar, Friday, Sep. 3, 1999, Rochester Center for Quantum Information (RCQI) [9] Alexander Graham. Kronecker Products and Matrix Calculus With Applications. Halsted Press,John Wiley and Sons, NY, [16] Phil Gossett, Quantum Carry-Save Arithmetic Silicon Graphics, Inc N. Shoreline Blvd. Mountain View, CA , August 29, 1998 Mr. Debarka Mukhopadhyay passed graduation in Electronics and Telecommunication Engineering (AMIETE) from IETE(New Delhi), India in 2003 and M.Tech in Computer Science and Engineering from Kalyani Government engineering College, West Bengal, India in 2007.His interest includes Quantum computing, VLSI,Image processing etc. He has published many papers in national and international Journal and Conferences. He is a life member of IETE. Mr. Amalendu Si passed graduation in Information Technology (B. Tech) BUIE, West Bengal,India in 2005 and M.Tech in Computer Science and Engineering from Kalyani Government engineering College, West Bengal, India in His interest includes Quantum computing, High performance computing,soft computing. He has published many papers in national and international Journal and Conferences. [10] Genetic Algorithms - Principles and Perspectives : A Guide to GA Theory By: Reeves, Colin R.; University of Birmingham), Jonathan Rowe (School of Computer Science; CoventryUniversity), Colin R. Reeves (School of Math and IS Published By: Springer [11] Genetic Algorithms in Search, Optimization, andmachine Learning by David E. Goldberg ISBN-13: ,Publisher: Addison-Wesley [12] Practical Genetic Algorithms by Randy L. Haupt, Sue Ellen Haupt, ISBN-13: , Wiley, John & Sons. [13] L. K. Grover. Quantum mechanics helps with searching for a needle in a haystack. Phys. Rev. Let.,79:325, [14] P. Shor. Polynomial-time algorithms for prime factorization and discrete logarithm on a quantum computer. SIAM Journal on Computing, 26(5): , [15] C. H. Bennett and G. Brassard. Quantum cryptography: Public-key distribution and coin tossing. In Proceedings of IEEE International Conference on Computers, Systems, and Signal Processing, page , Bangalore, India, IEEE Press.

390 367 Hybrid Face Detection in Color Images Mehrnaz Niazi 1, Shahram Jafari 2 School of Electrical and Computer Science, Shiraz University, Iran Abstract Face detection, plays an important role in many applications such as face recognition, face tracking, human computer interface and video surveillance. In this paper we propose a Hybrid face detection algorithm that could detect faces in color images with different complex backgrounds and lights. Our method, first detect face regions using HAAR classifier over an entire image and generate candidates for next classifier. HAAR classifier, usually detect all the faces in image but also miss classified some none-face object as face. So we first use HAAR classifier to detect all possible regions for face candidate and after that we increase accuracy by using simple feature based method named HSV color model to eliminate miss classified none-faces. Keywords: Face detection, video surveillance, face recognition and face tracking. 1. Introduction Image is one of the main parts of human life and a single image is more understandable than thousands of words. So, human-vision is the most important sense. As we know human brain can detect and recognize different objects with the least known character of it. Face detection is a subbranch of object detection. The human face is a dynamic object and has a high degree of variability in its appearance, which makes face detection a difficult problem in computer vision [3]. We can divide face processing into face detection, face recognition and face tracking. Face recognition and face tracking have been used in many applications such as wrongdoer recognition, security systems, controlling systems [4]. We should consider that accuracy of these processing is directly related to accuracy of face detection because face detection is the first stage of these processing. This makes face detection an important part in image processing. Face detection should pass a long way, this caused by differences, variety and complexity of faces. Although many different algorithms exist to perform face detection, each has its own strengths and weaknesses [3]. Some use flesh tones, some use contours, and other are even more complex involving templates, neural networks, or filters. These algorithms suffer from the same problem; they are computationally expensive and do not have proper accuracy[4]. So in this paper we proposed a hybrid method to increase the accuracy and omit miss classified none-faces. We use Viola and Jones algorithm, called HAAR classifiers, to rapidly detect any object, including human faces, using AdaBoost classifier that are based on HAARlike features and not pixels [9]. After that we use a color base model named HSV method to omit none-faces objects that previous classifier detect them as face and increase accuracy of detection. In section 1 we introduce face detection importance and its applications. And talk about the process of our hybrid method. In section 2 we present HAAR feature and in continue HAAR classifier to detect human faces. In section 3 we review skin color method to detect face region in image [9]. And compare different color model with each other [1]. In section 4 we proposed our hybrid method and it details. In section 5 we talk about our conclusions and in last section we show the experimental results. 2. HAAR Classifier The main part of HAAR classifiers is the HAARlike features. These features use change in contrast values between adjacent rectangular groups of pixels instead of pixels intensity values. HAAR features can easily be scaled by increasing or decreasing the size of the pixel group being examined. This allows features to be used to detect sizes. Notice Figure 1. Figure 1: part (a) shows edge features, part (b) shows line features and part (c) shows center features

391 Train classifiers In order to detect human face features we should first train the classifiers. So we implement AdaBoost and HAAR feature algorithm. To train classifiers we use to set of images, one set contain images that doesn't have the object in this case face. These images named as negative images. The other set contain images that have one or more instance of the object in different size and scale. These images named as positive images. We use 5000 negative images that consists objects such as mountain, natural scene. And we use Standards and Technology s (NIST) Facial Recognition Technology (FERET) database that contain positive images with more than 1000 faces under different light condition. In order to have a robust detection we need images with different people in race, age and gender. HAAR classifier has a negative point. It has a difficulty, that although it rarely misses the faces but this classifier detects other object as faces. So in our proposed method we try to omit negative point of this method. 3. Skin Color Methods In this part we review two color base models one is RGB model and the other one is HSV model. We used following color models for different representation of a pixel. By comparing these methods we come into result that HSV method has a better performance than RGB method. So we implement HSV program as the second part of our paper. By using this method we can increase the accuracy of previous classifier RGB model As we said before face detection plays an important role in many applications and a lot of researches have been done on face detection. The well-known method is using a skin-color model that is modelled by a single Gaussian model. And skin-color of different people can be represented by a Gaussian model. So the main part of this project was to find an appropriate skin-color model. The skin-color model should be adaptable for any skin color with different lighting conditions. The common RGB representation of color images is not suitable for lightening images so we use normalization: r = R/(R+G+B) (1) g = G/(R+G+B) (2) The normalized blue color is calculated as: r + b + g = 1. Skin colors of different people appear to vary over a wide range, they differ more in brightness than in color [1]. So, the colors of human skins fit in a small color space. In order to estimate the skin color model we collected two sets of 15 color images with human faces. First set are images of people with white skin, second one is set of people with brown and black skin. As shown in Figure 2 skin-color can be represented by a Gaussian model. We can estimate Gaussian model with mean vector and covariance matrix as bellow: Mean: m = E {x} where x = (r g) T (3) Covariance: C = E {(x m) (x m) T } (4) A Gaussian model, for the skin is given by formula: p(x) = exp [ -0.5 ( x m) T C -1 (x-m)] (5) Where x = (r g), m is mean vector, C is covariance matrix. Figure 2: Shows color distribution for skin-color of different people. The probability of each pixel is calculated by formula (5). The values of probability can be easily transformed into grayscale values. So skin regions are brighter than the other parts of image. Figure 3 shows the result. Figure 3: Shows the values of probability and it transformed into grayscale values. The second step is creating a skin-segmented image by using a threshold value of probability. If the probability of a pixel in skin image is more or equal to estimated threshold value, we suppose that this pixel represents skin color. Otherwise, we suppose that this pixel represents none-skin color. The skin color pixels are white and the other ones are black in skin-segmented image. Estimating a threshold value is very important for next steps of image

392 369 processing. We can use fixed value for every image or adaptive threshold. As it is obvious accessing a true value for face detection is difficult so in practise it is not a good way. So we use another color representation. Figure 4 shows the binary image by using a threshold. Figure 5: Shows the color model in HSV color space. Figure 4: Shows binary image by using a threshold on grayscale image HSV model First described by Ally Ray Smith in 1978, HSV method seeks to depict relationships between colors, and improve upon the RGB color model. Standing for hue, saturation, and value, HSV depicts three-dimensional color. If you think about HSV as a wheel of cheese, the center axis goes from white at the top to black at the bottom, with other neutral colors in between. The angle from the axis depicts the hue, the distance from the axis depicts saturation, and the distance along the axis depicts value. H varies from 0 to 1 on a circular scale and the colors represented by H=0 and H=1 are the same. S varies from 0 to 1, 1 representing 100 percent purity of the color. The Saturation shows how much the color is polluted with white color. You can see the HSV method dimensions in figure4 and skin color model in HSV color space in figure 5. According to previous papers this method has better performance than other related color models. So we use this method as our second classifier. Figure 5: Shows the HSV method dimensions that standing for hue, saturation, and value. 4. Hybrid Face Detection Method In this part we propose a hybrid method that contains two main classifiers. We first use an AdaBoost classifier with HAAR features. Using HAAR feature have a benefit that it can use for images with different scaling and resizing because we work on contrast in adjacent rectangular instead of working on each pixel separately. In the second part we use a color base method to correct previous detections. In first part we use HAAR classifier and detect primary face regions. HAAR classifier usually detects all faces and also some none-face objects as face. Using HAAR classifier as our first classifier and using HSV method as our second classifier for face detection causes a better performance and it detects all the faces and omits none-faces objects. So we first detect all possible area for face regions and send face candidate to next classifier to omit mistakes and increase the accuracy of the detection. Experimental results We have evaluated on several face image databases, containing different photo collection. Face database named CMU usually contain grayscale images and it is not useful for colorful algorithms. And other databases such as grimace, FERET, face94 and face95 only have images with single face and it is more proper for face recognition and trains our classifier. So we search for a database that contains colorful and also complex images to run our program. We find a database named BaoDatabase and it has 221 images with face and none face objects. So it is a proper database to test our hybrid algorithm. Our algorithm can detect multiple faces of different size. It use for complex images. In figure 6 we see the results of converting image from RGB space to HSV space. Figure 7 shows detected faces using HSV color model. As we can see, it has detected all the faces but it detects 3 none-faces as human face

393 370 too. In figure 8 we use HAAR classifier to detect primary face regions, so we use this as an instrument to detect all possible areas for faces. It hasn't a good performance and it has detected 7 none-face regions as human face. In figure 9 we see the selected face regions from HAAR classifier by blacken the none-faces areas. Figure 10 show the result HAAR classifier in HSV color space. Figure 11 shows the result of HSV method on HAAR classifier results. And figure 12 shows the result of our hybrid method on main image, as you can see it has better performance and it has no error. Figure 13 to 19 show results of another image. As you can see again, HAAR classifier has 7 errors, HSV method has 2 errors and they detect none-face as human face but in our algorithm we have no error. Figure 8: show the results of a HAAR classifier. It has about 7 errors on detecting faces and detects some none-faces objects as face. Figure 6: show the results of converting our image to HSV color model to detect faces on next step. Figure 9: show selected face regions from HAAR classifier to use for next classifier. Figure 7: show the results of HSV method. It has about 3 errors on detecting faces and detects some none-faces objects as face. Figure 10: show the results of converting result of HAAR classifier to HSV color model to detect faces on next step.

394 371 Figure 11: show the results of HSV color model on HAAR classifier results. Figure 14: show the results of HSV method. It has 3 errors on detecting faces and detects some nonefaces objects as face. Figure 12: show the results of our hybrid method on main image. As you can see it has no error on detecting faces and detects all faces in image. Figure 15: show the results of a HAAR classifier. It has about 20 errors on detecting face and detects some none-faces objects as face. Figure 13: show the results of converting our image to HSV color model to detect faces on next step. Figure 16: show selected face regions from HAAR classifier to use it for next classifier.

395 372 we use a hybrid method with HSV color model, and a HAAR classifier. HSV method minimizes the searching space of HAAR classifier. And increase the performance. So this hybrid method has decrease the complexity and in addition it has better performance. Our goal as our future work is to modifying our classifiers to detect none-frontal faces in image. Figure 17: show the results of converting result of HAAR classifier to HSV color model to detect faces on next step. Figure 18: show the results of HSV color model on HAAR classifier results. Figure 19: show the results of our hybrid method on main image. As you can see it has no error on detecting faces and detects all faces in image. Conclusion and Future Work As we said before HAAR classifier have a high complexity and it should works on whole image. Also it has miss classified some object as face. So References [1] Rein-Lien Hsu, Mohammad Abdel-Mottalaeb, Anil K. Jain, Fellow, "Face detection in color images", IEEE Trans. Pattern Analysis And Machine Intelligence, Vol. 24,NO. 5, May [2] C.Garcia and G. Tziritas, "Face Detection Using Quantizes Skin Color Regions Merging and Wavlet Packet Analysis", IEEE Trans. Multimedia, Vol. 1,No. 3, Sept [3] Ming-Hsuan, Yang, David J, Kriegman, Narendra, Ahuja, "Detecting Faces In Images: A Survey", IEEE [4] Erik,Hjelm as, Norway, Boon, Kee, "Low Face Detection:A Survey", University of dinburgh, JCMB, United Kingdom [5] J.Cai, A.Goshtasby, Detecting Human Faces In Color Images, Image Vision Computer(1999). [6] C.Chen, S.P.Chiang, "Detection Of Human Faces In Color Images", IEEE Proc. Vision Image Signal Process [7] J.C.Terrillon, M.David, S.Akamatsu, "Automatic Detection Of Human Faces In Natural Scene Iimages by Use of a Skin Color Model And Of Invariant Moments", IEEE Proc.Conf. on Automatic Face and Gesture Recognition [8] Ahmed.Hamdy, Mohamed.Elmahdy, Maha. Elsabrouty, "Face detection using PCA and skintone extraction", IEEE [9] PAUL VIOLA, MICHAEL J. JONES," Robust Real-Time Face Detection", International Journal of Computer Vision 57(2), , [10] Turgay C elik, Hu seyin O zkaramanlı, Hasan Demirel, " Facial feature extraction using complex dual-tree wavelet transform", ELSIVIER Transaction [11] Eli Saber, A. Murat Tekalp, "Frontal-view face detection and facial feature extraction using color, shape and symmetry based cost functions", Elsevier Science [12] Paul Viola, Michael Jones, " Rapid Object Detection Using a Boosted Cascade of Simple Features", Mitsubishi Electric Research Laboratories M. Niazi was born in Shiraz, Iran. She receives B.Sc degree in computer engineering from azaad Shiraz University in She is currently a M.Sc.

396 373 student in Artificial Intelligence at Shiraz University. Her research interests include image processing such as object detection, object recognition and object tracking. S. Jafari received the PhD degree in Computer Systems Engineering from Monash University, Australia in He is currently a lecturer in the Electrical and Computer Engineering School, Shiraz University, Shiraz, Iran. His research interests include Artificial Intelligence, especially Expert Systems Robotics, Hybrid Systems: Fuzzy logic, Certainty Factor, Neural Network combinations: Neuro-Fuzzy, Fuzzy neural Networks and Image Processing.

397 374 An Evolvable Clustering Based Algorithm to Learn Distance Function for Supervised Environment Zeinab Khorshidpour, Sattar Hashemi, Ali Hamzeh Dept. of Computer Science, Shiraz University, Iran Abstract This paper introduces a novel weight based approach to learn distance function to find the weights that induce a clustering by meeting best objective function. Our method combines clustering and evolutionary algorithms for learning weights of distance function. Evolutionary algorithms, are proved to be good techniques for finding optimal solutions in a large solution space and to be stable in the presence of noise. Experiments with UCI datasets show that employing EA to learn the distance function improves the accuracy of the popular nearest neighbor classifier. Keywords: distance function learning; evolutionary algorithm; clustering algorithm; nearest neighbor. 1 Introduction Almost all learning tasks, like case based reasoning [1], cluster analysis and nearest neighbor classification, mainly depend on assessing the similarity between objects. Unfortunately, however, defining object similarity measures is a difficult and non trivial task, say, they are often sensitive to irrelevant, redundant, or noisy features. Many proposed methods attemp to reduce this sensitivity by parameterizing K NN's similarity function using feature weighting. The idea behind feature weighting is that real world applications involve with many features; however, the objective function depends on few of them. The presence of noisy objects or irrelevant features in a dataset degrades the performance of machine learning algorithms; for many cases, such in the case of k nearest neighbor machine learning algorithm (K NN). Thus feature weighting technique may improve the algorithm s performance. This paper introduces a novel weight based distance function learning to find the weights that induce a clustering by meeting best objective function. In the recent years, different approach proposed for learning distance function from training objects. Stein and Niggemann use a neural network approach to learn weights of distance functions based on training objects [2]. Eick et.al introduce an approach to learn distance functions that maximizes the clustering of objects belonging to the same class [3]. Objects belonging to a dataset are clustered with respect to a given distance function and the local class density information of each cluster is then used by a weight adjustment heuristic to modify the distance function. Another approach, introduced by Kira and Rendell and Salzberg, relies on an interactive system architecture in which users are asked to rate a given similarity prediction, and then using a Reinforcement Learning(RL) based techniques to enhance the distance function based on the user feedback [4], [5]. Kononenko proposes an extension to the work by Kira and Rendell for updating attribute weights based on intracluster weights [6]. Bagherjerian et.al propose a reinforcement learning algorithm that can incorporate feedback and past experience to guide the search toward better cluster [7]. They use an adaptive clustering environment that modifies the weights of a distance function based on a feedback. The adaptive clustering

398 375 environment is a non deterministic RL environment. Its state space consist of pairs of cluster representatives and distance function weights. Given a state, the learner can take an action that either increases or decreases the weight of a single attribute. The search process uses the Q learning algorithm to estimate the value of applying a particular weight change action to a particular state. Finding the best weight in a weight based distance function is clearly an optimization problem. This paper presents an alternative search space which is more effective than existing approach. Our method combines clustering algorithm and evolutionary algorithms for learning weights of a distance function. Evolutionary algorithms proved to be good techniques for finding solutions in a large solution space and to be stable in the presence of noise. Central idea of our approach is to use clustering as a tool to evaluate and enhance distance function with respect to an underling class structure. In this work, we address the problem of optimizing a weight based distance function by means of a clustering algorithm and Evolutionary Strategies (ES). We show that combining CLES DL method with a K NN algorithm can improve the predictive accuracy of the resulting classifier. The paper is organized as follows: Section 2 introduces clustering algorithms. In section 3 we review evolutionary algorithms especially the evolutionary strategies. In section 4, we talk about the proposed algorithm. The experimental methodology and UCI data sets used in this work are covered in section 5. Finally the experimental result is described in section 6 as well as the results. The paper ends with the conclusions. 2 Clustering Algorithm A clustering algorithm finds groups of objects in a predefined attribute space. Since the objects have no known prior class membership, clustering is an unsupervised learning process that optimizes some explicit or implicit criterion inherent to the data such as the squared summed error [8]. The main objective of clustering algorithm is to divide the data into different groups called clusters in such way that the data within a cluster are closer to each other and data from different clusters are farther from each other. Distance criteria are the principle component of every clustering algorithm to approach its objective. Euclidean distance is a commonly used distance measure in most cases. Which is defined as follow: d( x, x i j ) = m 2 ( xia x ja ). (1) a=1 where x i and x j are m dimensional objects and x ia is the value of attribute "a" for a given object x i. K means and other partitioning algorithm typically use Euclidean or Manhattan distance metric [8]. Many extensions to these and other partitioning algorithms attempt to employ more sophisticated distance metrics. On the other hand, another group of approaches attempt to learn the distance metric. Including the approach explored in this paper which tries to learn attribute weights based on the following object distance function d: d( x, x i j ) = m 2 wa ( xia x ja ). (2) a=1 where w is weight vector whose components are non negative and

399 376 w = 1 m m. It assumes that objects are described by sets of attributes and the dissimilarity of different attributes is measured independently. The dissimilarity between two objects is measured as a weighted sum of dissimilarities between their attributes. To be able to do that, a weight and a distance measure has to be provided for each attribute. We use clustering algorithm for learning weight of distance function, and modified distance, i.e. Equation 2. In this paper we combine clustering and evolutionary algorithm for selecting best weight of the features and modified distance function. In section 3, we review evolutionary algorithms especially the evolutionary strategies. 3 Evolutionary Algorithms Two major representative algorithms of the evolutionary algorithms are the Genetic Algorithms (GA) and Evolution Strategies (ES) [9], [10]. We introduce main characteristics of evolutionary algorithm in the next sections. 3.1 Chromosome Representation and Population Initialization For any GA and ES, a chromosome representation is needed to describe each chromosome in the population. The representation method determines how, a solution is represented in the search space and also determines the type of variation operators such as crossover and mutation. Each chromosome is made up of a sequence of genes from certain alphabet which can consist of binary digits (0 and 1), floating point numbers, integers, symbols (i.e., A, B, C, D), etc. It has been shown that more natural representations can get more efficient and better solutions [11]. In this paper we use ES algorithm because a real valued representation is utilized to describe the chromosome. ES strategies are typically used for continuous parameter optimization. Standard representation of objective variables x 1...xn is very straightforward, where each x i is represented by a floating point variable. Chromosome contain some strategy parameters, in particular, parameter of mutation operator. Details of mutation are treat in subsection 3.2. Strategy parameters can be divided into two sets, the values and the values. The values represent the mutation step sizes, that can be a vector of size n or only a singleton. For any reasonable self adaptation mechanism at least one must be present. The values which represent interactions between the step sizes used for different variables, are not always used [12]. 3.2 Mutation In typical EAs, Mutation is carried out by randomly changing the value of a single bit (with small probability) to the bit strings. The mutation operator in ES may be applied independently on each objective variable by adding a normally distributed random variable with expectation zero and standard deviation as shown in Equation 4, considering n = 0. The strategy parameters are mutated using a multiplicative, logarithmic normally distributed process as shown in Equation 3. ' =. exp( N(0,1) N (0,1)). (3) i x ' = x i i i i '. N (0,1). (4) i i where N(0, 1) is a normally distributed random variable with zero expectation and standard deviation of 1, N i (0,1) indicates that the random variable

400 377 is sampled for every objective variable 1 independently. The constant ( 2 n 1 and ( 2n) can be interpreted in the sense of "learning rates" as in artificial neural networks [13]. Algorithm 1 shows a basic pseudo code of ES. CLES DL method. Each chromosome contains real valued genes which are interpreted as the weights of the desired distance function. According to each chromosome, we have a new distance function, and so the clustering algorithm generates new clusters from the data set. In this algorithm, an initial population of size P can be randomly generated and lies in the interval [0, 1]. W [ w, w,..., ;,,... ]. (5) = 1 2 w n 1 2 n 4 Combing Clustering Algorithms and ES for Distance Learning In this section, we will give an overview of CLES DL approach. The key idea of our approach is to use clustering as a tool to evaluate and enhance distance function with repect to an underlying class structure. Figure 1: System structure of our distance function learning approach (CLES-DL). Each chromosome contains weights of distance function. ES generates different weights and clustering algorithm used to evaluate the weights. Our method combines clustering algorithm and evolutionary algorithms for learning weights of a distance function. ES generates different weights and clustering algorithm used to evaluate the chromosomes. Figure 0, shows the overall system architecture of w i = wi. n w where W is a chromosome and whose ith components are the normalized and non negative, weight of the ith attribute and is the mutation step size according to each attribute. 4.1 Fitness Function The fitness function is used to define a fitness value for each candidate solution. Our goal is to generate a chromosome with the best (max or min depending on the problem) fitness value. In this problem, the fitness measure is the clustering quality provided by an algorithm which is often a hard and subjective to be measured. We use accuracy criteria as the fitness function to evaluate the results. Assume that the instances in D have been already classified in k classes c 1, c2,..., ck. Consider a clustering algorithm that partitions D into k clusters cl 1, cl2,..., clk. We refer to a one to one mapping, F, from classes to clusters, such that each class c i this mapped to the cluster cl j = F( ci ). The classification error of the mapping is defined as: l l

401 378 k E = ci F( ci ). (6) i=1 where ci F( ci ) measures the number of objects in class c i that received the wrong label. The optimal mapping between clusters and classes is the one that minimizes the classification error. We use E min to denote the classification error of the optimal mapping. To obtain the accuracy we compute the following formula: Emin Accuracy = 1. D (7) The selection process is ( ) 5.2 Description of Datasets The experimental procedure is to the apply algorithm to several real world datasets from the UCI machine learning repository [14]. Most of these data sets have been subject of empirical evaluation by other researches. This gives the chance of comparing results among different researches. A summary of characteristics of these data sets are showed in Table 1. Table 1: Data sets used in the experiments 5 Experimental Methodology In order to measure the performance of the proposed algorithms, we employed the 10 fold cross validation methodology. Cross validation randomly divides the available dataset into k mutually exclusive subsets (folds) of approximately equal size, and uses the instances of the k 1 subsets as the training data and the instances of the remaining subset as the test data. The training dataset is used for determining the classifier s parameters and the test dataset is used to compute the prediction error. The experiment is carried out i times to compute the prediction error of the whole dataset. This method is called k fold cross validation. In our experiments we set k=10 which is most commonly used value. 5.1 Experimental Setting Our experiments were run using standard evolutionary strategy with tournament selection. The reported results are based on 10 fold cross validation for each classification task with the following parameter setting. Population size: 50 Number of generation: 50 Mutation rate: Experimental Results To obtain the best distance function, we run the program 10 times independently. In each run, ES algorithm evolves its population for 50 generation and save the chromosomes with the best fitness value. It is worth mentioning that result of the K means clustering algorithm based on represented chromosome is used as the fitness value for the evolutionary process. The whole process of achieving results is depicted in Figure 1. Table 2 shows the results achieved by the algorithm applied to the UCI datasets. CLES DL method achieve good performance in all datasets. For each dataset, the accuracy of the method with the highest mean accuracy is marked in bold face. The mean accuracy in all UCI data sets using proposed algorithm is 73.87% whereas the original K means reach to

402 %. It has about 8% absolute accuracy improvement. Also to further evaluation, 1 NN classifier algorithm is used [15]. The best chromosome over 10 independent run is passed as a weight vector to weighted 1 NN classifier. Table 3 shows the result of 10 fold cross validation over original 1 NN and 1 NN with CLES DL. The mean accuracy in 8 UCI data sets by 1 NN with CLES DL is 80.73% and by original 1 NN is 77.48%. It has about 3% absolute accuracy improvement. When comparing mean accuracies in Table 3, we find that 1 NN with CLES DL outperforms original 1 NN on 8 datasets (7/8= 0.87), among them. Notably, the accuracy for the wine dataset improved from 75.10% to over 91.50% in contrast accuracy of 1 NN with CLES DL for breast cancer dataset is lower than original 1 NN. Obviously, one may see that our approach outperforms the original K NN by offering significant improvements. To explore the advantages of the proposed approach over well known weighting mechanism, we conduct a new series of experiments. In these experiments, we compared our weighting approach against LW1NN algorithm (1 NN classifier with attribute weighting) [3] and bagherjerian method [7]. Bagherjerian approach uses several parameters, according to these parameters four version of this method are represented. Table 4 shows the result of 10 fold cross validation over 1 NN with CLES DL, LW1NN and bagherjerian's method. The results show the mean accuracy in UCI data sets by 1 NN with CLES DL is better than LW1NN and bagherjerian's method. Figure 2: Overall veiw of obtaining result. We run the program 10 times. In each run, ES algorithm evolves population over 50 generation and save chromosome with the best fitness value. Table 2: Clustering accuracy (and standard deviation), The comparison between K-means with CLES-DL and original K-means on 8 datasets from UCI data repository. All standard deviation less than are not denoted. Data set K-means_CLES-DL K-means Glass Ionosphere Diabetes Sonar Vehicle Wine Breast-cancer Iris Table 3: Classification accuracy (and standard deviation) on 8 datasets selected from the UCI data repository. For each dataset, the accuracy of the method with the highest mean accuracy is marked in bold face. Data set 1-NN_CLES-DL 1-NN Glass Ionosphere Diabetes Sonar Vehicle Wine Breast-cancer Iris

403 380 Table 4: Classification accuracy (and standard deviation) on 5 datasets selected from the UCI data repository Data set 1NN_CLES-DL Bagherjerian's method LWINN Version_(1) Version_(2) Version_(3) Version_(4) Glass Ionosphere Diabetes Sonar Vehicle Averages Conclusions We present a evolutionary method for learning distance function with the main objective of increasing the predictive accuracy of K NN classifier. The method is a combination of a clustering algorithm and ES in order to find the best weight of each attribute to be used in a K NN classifier. The proposed method in this paper overcomes the disadvantages of the K NN algorithm i.e. its sensitivity to the presence of irrelevant features. As a future work we plan to extend the current work so as it can deal with noise as well. Acknowledgements This work was supported by the Iran Tele Communication Research Center. References [1] P. perner. Case-based reasoning. Data mininh on multimedia data, Lecture Notes in Articial Intellegence, vol Springer,Berlin, pp [2] B. Stein, O. Niggemann. Generation of similarity measures from different sources. 14th International conference on Industrial Engineering Application of Artificial Inteligence and Expert Systems, Budapest, Hungary, Speringer, Berlin, pp [3] C. Eick, A. Rouhana, A. Bagherjeiran, R. Vilalta. Using Clustering to Learn Distance Functions for Supervised Similarity Assessment. Journal of Engineering Applications of Artificial Intelligence, Vol. 19, Issue 4, pp [4] S. Salzberg. A nearest hyperrectangle learning method, Machine Learning 6, pp [5] K. Kira, L. A. Rendell. A practical approach to feature selection, Proceedings of the Ninth International Workshop on Machine Learning, Aberdeen, Scotland, UK, Morgan Kaufmann, Los Altos, CA, pp [6] I. Kononenko. Estimating attributes: analysis and extensions of RELIEF. Proceedings European Conference on Machine Learning, pp [7] A. Bagherjeiran, R. Vilalta, C. Eick. Adaptive Clustering: Obtaining Beter Clusters Using Feedback and Past Experience, Proceedings of the Fifth IEEE International Conference On Data Mining (ICDM 05), [8] J. M. McQueen. Some methods of classification and analysis of multivariate observations, Proc. 5th Berkeley Symp. On Mathematical Statistics and Probability, pp , [9] D. Golberg. Genetic algorithms in search, optimization and machine learning, Addison-Wesley Publishing Company, [10] H. P. Schwefel. Evolution and Optimum Seeking, Wiley,New York, [11] Z. Michalewicz. Genetic Algorithms+Data Structures=Evolution Programs. AI Series, Springer, New York [12] A. E. Eiben, J. E. Smith. Introduction to Evolutionary Computing, Springer, Natural Computing Series 1 st edition [13] K. Mehrotra, C. K. Mohan, S. Ranka. Elements of artificial neural networks, MIT Press [14] C. L. Blake, C. J. Merz. UCI repository of machine learning database, [15] S. Russel, P. Norvig. Artificial Intelligence: A Modern Approach, Prentice Hall, 2nd edition, Zeinab Khorshidpour was born in bandar-lengh, Iran. She received her B.Sc. Degree in Computer Engineering from shahid-beheshti university in She is currently an M.Sc. student in Artificial Intelligence at Shiraz University. Her research interests include distance function learning for nominal attribute, clustering for categorical data, bio-inspired algorithms. Sattar Hashemi received the PhD degree in Computer Engineering from the Iran University of Science and Technology, in conjunction with Monash University, Australia, in He is currently a

404 381 lecturer in the Electrical and Computer Engineering School, Shiraz University, Shiraz, Iran. His research interests include data stream mining, database intrusion detection, dimension reduction, and adversarial learning. Ali Hamzeh received his Ph.D. in artificial intelligence from Iran University of Science and Technology (IUST) in Since then, he has been working as assistant professor in CSE and IT Department of Shiraz University. There, he is one of the founders of local CERT center which serves as the security and protection service provider in its local area. As one of his research interests, he recently focuses on cryptography and steganography area and works as a team leader in CERT center to develop and break steganography method, especially in image spatial domain. Also, he works as one of team leaders of Soft Computing group of shiraz university working on bio-inspired optimization algorithms. He is co-author of several articles in security and optimization.

405 382 Product Lines Feature-Oriented Engineering for Reuse: A Formal Approach Marcel Fouda Ndjodo 1, Amougou Ngoumou 2 1 Department of Computer Science and Instructional Technology, University of Yaoundé I P.O. Box 47 Yaoundé - Cameroon 2 Department of Computer Science, The University Institute of Technology, University of Douala P.O. Box 8698 Douala - Cameroon Abstract The feature oriented method with business component semantics (FORM/BCS) is an extension of the feature oriented reuse method (FORM) developed at Pohan University of Science and Technology in South Korea. It consists of two engineering processes: a horizontal engineering process driven by the FORM domain engineering process and a vertical engineering process driven by the FORM application engineering process. This paper investigates the horizontal engineering process - which consists of analyzing a product line and developing reusable architectures and shows that this process can be systematized through a set of maps that describe how one can systematically and rigorously derive the fundamental business architectures of a product line from the feature model of that domain. The main result of the paper is therefore that the formalization of the assets of FORM/BCS enables a clear definition of how an activity of the horizontal engineering process produces a target asset from an input one. This result opens the door for the development of a tool supporting the method. Keywords: Product Line Engineering, Feature- Orientation, Domain Analysis, Business Components, Reuse, Formal Method. 1. Introduction FORM with Business Component Semantics [1], which is an extension of FORM [2, 3, 4, 5, and 14], is a feature-oriented product line engineering method. It has two processes: a horizontal engineering process driven by the FORM domain engineering process and a vertical engineering process driven by the FORM application engineering process. These two processes correspond respectively to the engineering for reuse and the engineering by reuse approaches presented in [6, 7, and 8]. The FORM/BCS method is specific to other product line engineering approaches [9, 10, 11, 12, and 13] by the fact that its vertical engineering process gives the possibility to successively derive concrete business components of successive low level application domains from abstract reusable business components of a high level domain. Since the vertical engineering process of FORM/BCS is an engineering by reuse approach, it can be applied only if the reusable business components of the initial domain already exist. These assets are produced by the horizontal engineering process of FORM/BCS, which consists of analyzing a product line domain and developing fundamental reusable architectures of the domain. The horizontal process is therefore the core process of FORM/BCS. This work formalizes this process with a set of maps which describe how to rigorously derive the fundamental business architectures of a domain from the feature model of that domain. Each map specifies an activity of the horizontal engineering process by defining how that activity produces a target asset from an input one. It has been possible to formalize the horizontal process of FORM/BCS since one of its particularity is that its assets are defined using the Z notation which provides a framework for a rigorous analysis of the method. This work is a significant contribution to the development of FORM/BCS since it lays down the theoretical foundation for the development of a tool supporting this method. Beyond the development of FORM/BCS, which is the main focus of the paper, this work addresses some key open issues of feature-oriented development. One of these issues is the automation of feature-oriented development processes. This work shows that formalization is an important step toward this goal. The rest of the paper is organized as follows: Section 2 gives an overview of FORM/BCS. Section 3 presents the assets of the method. Section 4, which is the main part of the paper, formalizes the horizontal engineering process of FORM/BCS. Section 5 presents related works and gives the end

406 383 result of this article through a consistency theorem. Finally the conclusion presents possible further research domains in the work continuation. 2. Overview of FORM with Business Component Semantics. 2.1 The Horizontal Engineering process The aim of the horizontal Engineering process is to analyze a domain in order to produce the reusable business components of that domain which consist of (i) a feature business component, (ii) a subsystem business component, (iii) a set of process business components and, (iv)a set of module business components. The horizontal engineering process has four independent activities: the domain analysis activity, the subsystem architecture business component design activity, the process architecture business component design activity and the module architecture business component design activity. 1) Given a domain, the domain analysis activity, which is intuitive, produces a reusable feature business component for that domain. This feature model, defined in section 3.2, is stored in a database of reusable feature business components. 2) Given a reusable feature business component selected in the database of reusable feature business components, the subsystem architecture business component design activity produces a reusable subsystem architecture business component, defined in section 3.3, which is stored in a database of reusable subsystem architecture business components. 3) Given a reusable subsystem architecture business component, the process architecture business component design activity produces a set of reusable process architecture business components, defined in section 3.4. These components are stored in a database of reusable process architecture business components. 4) Given a reusable process architecture business component, the module architecture business component design activity produces a set of reusable module architecture business components, defined in section 3.5. These components are stored in a database of reusable module architecture business components. The following properties of the FORM/BCS Domain Analysis process described above can be considered as the main improvements of the original FORM Domain Analysis process: - Reusable assets integrate context: information about assets reuse in the form of context is integrated in assets. - The implementation of the activities in the new method is not linear; that is, they can be performed in any order. The assets produced by activities of the method are stored in a database of reusable assets which can be requested using the operators for reuse developed by Ramadour [10]: search operators, selection operators, adaptation operators and composition operators. - A database of business components is added: this database enables engineering for reuse through the storage of assets and engineering by reuse through requests which can be submitted to it using the Ramadour s operators for reuse listed above. 2.2 The Vertical Engineering process The aim of the Vertical Engineering process is to derive a database of reusable components of an application domain of a domain which already has a database of reusable domain components. The Vertical Engineering process has four independent activities: the specific requirements analysis, the specific subsystem architecture design, the specific process architecture design and the specific module architecture design. 1) Given an application domain A of a domain D and a feature business component F of D, the aim of the specific requirements analysis of the domain A is to derive a feature business component F' of A from F. For this, the activity operates choices in F to reduce the number of optional features or groups of alternative features contained in the decomposition of its solution. The derived feature business component F' is stored in a feature business component database of A. 2) Given a feature business component F' of an application domain A derived from a feature business component F of a domain D, and a subsystem architecture business component S produced from D, the aim of the specific subsystem architecture design activity is to derive a subsystem architecture business component S' of A from F' and S. For this reason, the activity eliminates features contained in sub systems of the subsystem architecture business component S, which are absent in the basic feature business component F'. 3) Given a subsystem architecture business component S' of an application domain A derived from a subsystem architecture business component S of a domain D, and a process architecture business component P produced from D, the aim of the specific process architecture design activity is to derive a process architecture business component P' of A from S' and P. For this, basing on S' the activity adapts the process architecture business component P.

407 384 4) Given a process architecture business component P' of an application domain A derived from a process architecture business component P of a domain D, and a module architecture business component M produced from P, the aim of the specific module architecture design activity is to derive a module architecture business component M' of A from P' and M. Here, basing on P', the activity adapts the module architecture business component M. The possibility of successive refinements of reusable business components of a domain to more concrete components (vertical engineering) is the main improvement of the Application Engineering process of the original FORM. The FORM/BCS engineering process is pictured as follows: solved in a particular context. This problem can be the decomposition of a system, an activity organization or an object description. Goals, activities and objects concerned are carried on an application field and/or an engineering method. The realization section of a reusable component provides a solution to the modeling problem expressed in the descriptor section of the component. This solution may have adaptation points with values are fixed at the reuse moment. Adaptation points enable the introduction of parameters in the solutions provided by reusable components. The following Z schema formalizes reusable business components: ReusableBusinessComponent = = [name: Text; descriptor:descriptor realization: Realization] Vertical Engineering Process Domain Application Domain Domain Analysis Reusable feature Reusable subsystem Reusable process Reusable module business component architecture business architecture business architecture business database component database component database component database Domain Component Database Selected Module Selected Selected Subsystem Selected Process Architecture Feature Architecture Business Architecture Business Business Business Component Component Component Component Specific requirements analysis Legend: Database Activity Feature Business Component Specific feature business component Horizontal Engineering Process Subsystem Architecture Business Component Design Specific subsystem architecture design Subsystem Architecture Business Component Specific Subsystem architecture business component Component storage Component reuse Process Architecture Business Component Design Specific process architecture design Process Architecture Business Component Specific Process architecture business component Reusable specific Reusable specific process Reusable specifique feature subsystem architecture architecture business business component database business component component database database Specific Domain Component Database 3. The Assets of FORM/BCS. Module Business Component Development Specific module architecture design Module Architecture Business Component Reusable specific module architecture business component database Domain refinement Specific module architecture business component This section describes the four main assets of FORM/BCS: feature business components (section 3.2), subsystem architecture business components (section 3.3), process architecture business components (section 3.4) and module business components (section 3.5). Since all the assets of FORM/BCS are reusable components, section 3.1 presents the conceptual modeling of reusable business components which is used to define the FORM/BCS assets as reusable business components. 3.1 The formal model of FORM/BCS assets. The assets of FORM/BCS are reusable business components which are stored in a database. Each reusable business component has a name, a descriptor and a realization. The descriptor presents the conceptual modeling problem to be Descriptors The descriptor of a reusable business component gives an answer to the following question: when and why use this component?. A descriptor has an intention and a context. The intention is the expression of the generic modeling problem; the term generic here means that this problem does not refer to the context in which it is supposed to be solved. The context of a reusable business component is the knowledge which explains the choice of one alternative and not the other. Formally, descriptors are defined by the following schemas: Descriptor = = [intention : Intention ; context : Context] Intention = = [action: EnginneeringActivity; target: Interest] Context = = [domain :Domain ; process : Context] EngineeringActivity = = AnalysisActivity DesignActivity AnalysisActivity = {analyze, } DesignActivity = {design, decompose, describe, specify, } The detailed specification is given in [1]. For the intelligibility of this paper, we give below an important type used in the above specification: Interest. The engineering activity defined in the intention (hereafter referred to as the action of the intention) of a reusable business component acts on a target which can be a business domain or a set of business objects. Here are two examples of intentions formalized in FORM/BCS :

408 385 (analyze) ACTION (civil servant management system) TARGET - (describe) ACTION (civil servant recruitment application) TARGET Interests of engineering activities are specified by the following schemas in which A denotes the set of finite subsets of A. Interest = Domain BusinessObjects Domain = = [action: BusinessActivity; target : BusinessObjects ; precision : Precision] BusinessObjects = = Class Class = = [name: Name; attributs : Attribut; operations : BusinessActivity ] Precision Name Attribut A business activity is a set of (sub) business activities divided into three disjoint categories: the set of common (sub) business activities of the activity which indicate reuse opportunity (the commonality of the business activity), the set of optional (sub) business activities of the activity (the options of the business activity) and, the set of groups of alternate (sub) business activities of the activity (the variability of the business activity). BusinessActivity == [common: BusinessActivity ; optional: BusinessActivity; variabilities: BusinessActivity ] Realizations This solution may have adaptation points with values fixed at the reuse moment. Adaptation points enable the introduction of parameters in the solutions provided by reusable components. Those parameters are values or domains of values of elements of the solution. Realization = = [solution: Solution ; adaptationpoints : AdaptationPoints ] Solution = = Feature SubsystemArchitecture ProcessArchitecture Module AdapatationPoints = = FeatureAdaptationPoints SubsystemArchitecture AdaptationPoints ProcessArchitecture AdaptationPoints Module AdaptationPoints Solutions and adaptation points of the different types of reusable components (feature business components, subsystem architecture business components, process architecture business components, module business components) are defined in the corresponding subsections below. 3.2 Feature business components In FORM, a feature model of a domain gives the intention of that domain in terms of generic features which literally marks a distinct service, operation or function visible by users and application developers of the domain. FORM/BCS specifies a feature model of a domain as a business reusable component of that domain which captures the commonalities and differences of applications in that domain in terms of features. Feature business components are used to support both the engineering of reusable domain artifacts and the development of applications using domain artifacts. The realization section of a reusable component provides a solution to the modeling problem expressed in the descriptor section of the component. It is a conceptual diagram or a fragment of an engineering method expressed in the form of a system decomposition, an activity organization or an object description. The goals, the activities and the objects figuring in the realization section concern the application field (product fragment) or the engineering process (process fragment). The solution, which is the reusable part of the component, provides a product or a process fragment. The types of solutions depend on the type of reusable business component i.e a solution of a feature business component (respectively a reference business component) is a feature (respectively a reference business architecture). FeatureBusinessComponent = = [name :Name ; descriptor:descriptor; realization: Realization fbc:featurebusinesscomponent, (solution(realization(fbc)) Feature Adaptationpoints(realization(fbc)) (Feature Feature)] Feature = =[activity: BusinessActivity ; objects: BusinessObjectst ; decomposition:[common: Feature; optional: Feature; variabilities: Feature] generalization: Feature] In the above schemas, the type Feature specifies business activities. A business activity is caused by

409 386 an event which is applied to a target set of objects. Features have a generalization (in the sense of object-oriented analysis) and decomposition. A feature s decomposition gives the set of its common (sub) features which indicate reuse opportunity, the set of its optional (sub) features and the set of its groups of alternate (sub) features. A reusable feature business component fbc is well formed if it satisfies the following four characteristic properties which require that the realization section of a feature business component corresponds to the intention of that business component: (fbc1) The solution given in the realization section of fbc is a solution of the intended contextual business activity of fbc: action(domain(context(descriptor(fbc)))) = activity(solution(realization(fbc))) (fbc2) The target of the intended contextual business activity of fbc is exactly the set of objects collaborating in the business activity of the solution given in the realization section of fbc: target(domain(context(descriptor(fbc)))) = objects(solution(realization(fbc))) (fbc3) Any requirement expressed in the form of a business process in the intended contextual business activity of fbc has a unique solution in the realization section of fbc: p process(context(descriptor(fbc))), g decomposition(solution(realization(fbc))) activity(g) = action(domain(p)) objects(g) = target(domain(p)) (fbc4) Any solution in the decomposition of the solution of the realization of fbc expressed in the form of a feature resolves a unique requirement expressed in the form of a business process in the intended contextual business activity of fbc: g decomposition(solution(realization(fbc))), p process(context(descriptor(fbc))) activity(g) = action(domain(p)) objects(g) = target(domain(p)) 3.3 Subsystem architecture business components A subsystem architecture business component is a reusable business component which describes a system in terms of abstract high level subsystems and the relationships between them. SubSystemBusinessComponent = = [name: Name; descriptor: Descriptor; realization: Realization ssbc: SubSystemBusinessComponent, ( solution(realization(ssbc)) SubsystemArchitecture adapationpoints(realization(ssbc)) (SubSystem SubSystem)] SubsystemArchitecture = = [subsystems: SubSystem ; Links: (Subsystem SubSystem) ] SubSystem = Feature A reusable subsystem business component sbc is well formed if it satisfies the following two characteristic properties which require that the realization section of a subsystem business component corresponds to the intention of that business component: (sbc1) Any requirement expressed in the form of a business process in the intended contextual business activity of sbc has a unique solution in the realization section of sbc: p process(context(descriptor(sbc))), ss subsystems(solution(realization(sbc))), f ss, activity(f) = action(domain(p)) objects(f) = target(domain(p)) (sbc2) Any link in the solution of the realization section of sbc resolves requirements expressed as collaborations between business processes in the intended contextual business activity of sbc: (ss1, ss2) links(solution(realization(sbc))), (f1, f2) ss1 ss2 decomposition(f1) decomposition(f2) Graphically, the solution of a subsystem architecture business component is represented as a symmetric boolean matrix in which rows and columns represent the different subsystems of the business component and the values of the matrix indicate the existence of links between these subsystems. 3.4 Process architecture business components A process architecture business component is a reusable business component which represents a concurrency structure in terms of concurrent business activities to which functional elements are allocated; the deployment architecture shows an allocation of business activities to resources. ProcessBusinessComponent = = [name: Name; descriptor:descriptor; realization: Realization pbc:processbusinesscomponent, (solution(realization(pbc)) ProcessArchitecture adaptationpoints(realization(pbc)) (BusinessActivity BusinessActivity)]

410 387 ProcessArchitecture = = [tasks: BusinessActivity ; datas : Class; dataaccess: [name: Name access: BusinessActivity Class ] messages: [name: Name; call: (BusinessActivity U {null}) (BusinessActivity U {null})] ] In the above schemas, the type ProcessArchitecture specifies process architectures. A process architecture is a set of business activities and objects (data). The business activities operate on data and exchange messages between them (in the form of actions call) or with the environment (null). A reusable process architecture business component pbc is well formed if it satisfies the following three characteristic properties which require that the realization section of a process business component corresponds to the intention of that business component: (pbc1) Any requirement expressed as a business process in the intended contextual business activity of pbc has a unique solution in the realization section of pbc: p process(context(descriptor(pbc))), a decomposition(action(domain(p))) ( t tasks(solution(realization(pbc))) t = a) (target(domain(p)) datas(solution(realization(pbc)))) (((a, d) dataaccess(solution(realisation(pbc)))) (( a decomposition(action(domain(p))) (decomposition(a) operations(d)) ))) where decomposition(a) is written for common(a) optional(a) ( variabilities(a)) (pbc2) Messages are sent only between tasks having common actions: p process (context(descriptor(pbc))), (((t1, t2) decomposition (action(domain(p))) decomposition (action(domain(p)))) (decomposition(t1) decomposition(t2) )) ((t1, t2) messages (solution(realisation(pbc)))) 3.5 Module business components Module business architecture components are refinements of process business architecture components. A module may be associated with a set of relevant features. Also, alternative features may be implemented as a template module or a higher level module with an interface that could hide all the different alternatives. The following schemas formally define module business components: ModuleBusinessComponent = = [name: Name ; descriptor:descriptor; realization: Realization mbc:modulebusinesscomponent, (solution(realization(mbc)) Module adaptationpoints(realization(mbc)) (Module Module)] Module = = [ pseudonym : Name ; parameters: Parameter; description: [task: BusinessActivity; included: Module; external: Module] specification: PseudoCode] Parameter PseudoCode In the above schemas, a module has a name, a list of parameters, a code in a pseudo language and a description which defines the task done by the module and the modules required for its execution, some of them are included in the module and some others are external. A module business component mbc is well formed if it satisfies the following characteristic property of module business components, that is: (mbc1) The set of requirements expressed as a business process in the intended contextual business activity of mbc is a singleton and has a solution in the realization section of mbc. (# process(context(descriptor(mbc)) = 1) ((p process(context(descriptor(mbc))) (action(domain(p)) = task(description(solution(realization(mbc)))))) 4. The formalization of FORM with the Business Component Semantics horizontal engineering process. The formalization of the horizontal engineering process of FORM/BCS is done through four total functions, called constructors: (i) SSA, the subsystem architecture constructor, (ii) PA, the process architecture constructor and, (iii) MA, the module architecture constructor. Each constructor specifies an activity of the horizontal engineering process by defining how that activity produces a target asset from an input one. 4.1 The subsystem architecture constructor. The subsystem architecture constructor SSA corresponds to the subsystem architecture design activity of the horizontal process. It defines how that activity produces a reusable subsystem

411 388 business architecture component from a reusable feature business component. The reusable subsystem business component architecture SSA(fbc) constructed by SSA from an input feature business component fbc is defined as: SSA (fbc) = (SSA.name(fbc), SSA.descriptor(fbc), SSA.realization(fbc)) where: (a) SSA.name(fbc) is a text used by the designer to name the reusable subsystem business component. (b) SSA.descriptor(fbc) = (SSA.intention(fbc), SSA.context(fbc)) with: SSA.intention(fbc) = <(decompose) ACTION (domain(descriptor(fbc)) TARGET )>, whose meaning is that the intention of SSA(fbc) is to decompose the business domain of fbc. SSA.context(fbc) = context(descriptor(fbc)) which says that the context of SSA (fbc) is the same as the context of fbc. (c) SSA.realization(fbc) = (SSA.solution(fbc), SSA.adaptation_points(fbc)) where: SSA.solution(fbc) = (SSA.subsystems(fbc), SSA.links(fbc)) where: - SSA.subsystems(fbc) is the partition of the solution of the realization of fbc defined as follows: (i) SSA.subsystems(fbc) Feature (ii) (F SSA.subsystems(fbc)) = decomposition(solution(realization(fbc))) (iii) F1, F2 SSA.subsystems(fbc), F1 F2 F1 F2 = )) (iv) F SSA.subsystems(fbc), f Feature, g Feature, ((f F g F) ( h F (objects(f) objects(h) ) (objects(g) objects(h) ))). - SSA.links(fbc)= {(F,G) SSA.subsystems(fbc) SSA.subsystems(fbc)/ (f,g)f G decomposition(f) decomposition(g) } - SSA.adaptation_points(fbc) = {(ss,subsystemrealizations(ss)) ss SSA.subsystems(fbc) ss adaptation_points(realization(fbc)) } where subsystemrealizations(ss) = {ss :Subsystem f ss,g ss / g featurerealizations(f) g ss, f ss / g featurerealizations(f)} and featurerealizations(f) = { g:feature common(f) common(g) V variabilities(f), ( h common(g) h V) optional(g) optional(f)} Lemma 1: if fbc is a well formed feature business component, then SSA(fbc) is a well formed subsystem business component. Proof: It suffices to show that SSA(fbc) verifies the subsystem business components characteristics defined in section 3.3: sbc1) Suppose p process(ssa.context(fbc)), we must show that ss SSA.subsystems(fbc)) and f ss such that activity(f) = action(domain(p)) objects(f) = target(domain(p)). Since SSA.context(fbc) = context(descriptor(fbc)) and fbc is a well formed feature, then f decomposition(solution(realization(fbc))) such that activity(f) = action(domain(p)) objects(f) = target(domain(p)) (property fbc3). By definition SSA.subsystems(fbc is a partition of decomposition(solution(realization(fbc))), hence ss SSA.subsystems(fbc)) such that f ss. sbc2) Suppose (ss1, ss2) SSA.links(fbc), we must show that (f1, f2 ) ss1 ss2 such that decomposition(f1) decomposition(f2). This property is trivially true by the definition of ssa.links. Proposition 1: Let fbc be a well formed feature business component, all the requirements expressed in fbc have a solution in SSA(fbc) ie: i) If p process(context(fbc)) then ss SSA.subsystems(fbc) such that f ss and activity(f) = action(domain(p)) ii) If f decomposition(solution(realization(fbc))) and f adaptation_points(fbc) then ss SSA.subsystems(fbc) such that f ss and ss SSA.adaptation_points(fbc) Proof: The proof of (i) is obvious since SSA(fbc) has the same context as fbc and SSA(fbc) is a well formed subsystem business component if fbc is a well formed feature business component (lemma1). The proof of (ii) is also obvious by the definition of SSA.adaptation_points. Example:Let us consider the following skeleton of a feature business component, hereafter referred as FM/IMCS. Name : Functional Model of the Integrated Management of Civil Servants and Salaries in Cameroon Intention : (Define)ACTION((manage)ACTION(civil servants and salaries)target)target Context : Domain : f = (manage)action(carrers,payroll,training,network,mail,system)target Business processes : f1 = (manage)action(careers)target f2 = (manage)action(payroll)target f3 = (manage)action(training)target f4 = (manage)action(inter-ministerial network)target f5 = (administer)action(the system)target f6 = (manage)action(mail)target /* sub-processes of f1 */ f11 = (manage)action(recruitment)target f12 = (manage)action(promotion)target f13 = (transfer)action(file)target /* sub-processes of f2 */ f21 = (transfer)action(file)target f22 = (calculate)action(salaries)target f23 = (manage)action(users)target f24 = (manage)action(profiles, users)target /* sub-processes of f4 */ f41 = (use)action(optic fiber network)target f42 = (use)action(radio network)target f43 = (use)action(twisted pair network)target /* sub-processes of f5 */ f51 = (manage)action(users)target f52 = (manage)action(profiles, users)target f53 = (manage)action(connexions, users)target f54 = (manage)action(the audit track, users)target

412 389 End. /* sub-processes of f11 */ f111 = (integrate)action (civil servant)target (if he has passed a competitive examination or he has a diploma giving right to integration)precision f112 = (sign recruitment order)action (civil servant)target (if the prime minister office has authorized)precision etc Solution : f 1 f 2 f 3 f 4 f 5 f 11 f 12 f f 13 f 41 f 42 f f 52 f 53 f 111 f 112 f 113 Adaptation Points : {(f, realizations(f)), (f4, realizations(f4)), (f5, realizations(f5))} Due to limited space, the complete specification of the components of this ongoing real case study cannot be given. Only some relevant sections are shown in order to give the intuition to the reader. A skeleton of the sub-system architecture business component SSAM/IMCS derived from FM/IMCS is given below: Name : Subsystem architecture of the Integrated Management of Civil Servants and Salaries in Cameroon Intention : (Decompose) ACTION((manage) ACTION(civil servants and salaries) TARGET) TARGET Solution: Subsystems: SS1 = {f1} SS2 = {f2} SS3 = {f3} SS4 = {f4} SS5 = {f5} SS6 = {f6} Links: SS1 SS2, SS2 SS5 Adaptation Points : {(SS4, ), (SS5, )} End. 4.2 The process architecture constructor. The process architecture constructor PA formalizes the process architecture design activity of the horizontal process. It defines how that activity produces a set of process business architecture components from a reusable subsystem business component. The set of reusable process business component architectures PA(sbc) constructed by PA from an input subsystem business component sbc is defined as follows: PA(sbc) = {(PA.name(p), PA.descriptor(p), PA.realization(p)) p process(sbc)} where (a) PA.name (p) is a text used by the designer to designate the process business component. (b) PA.descriptor(p) = (PA.intention(p), PA.context(p)) where PA.intention(p) = (describe) ACTION (p) TARGET whose meaning is that the intention of the process architecture built from p process(sbc) is to describe p. PA.context(p) = (domain(sbc), {p}) This says that the domain of the context of the process architecture constructed from the process p process (sbc) is the same as f f 6 f 54 the domain of sbc. The set of his processes has a single process equals to p.. (c) PA.realization(p) = (PA.solution(p), PA.adaptation_points(p)) where PA.solution(p) = (PA.tasks(p), PA.datas(p), PA.dataaccess(p), PA.messages(p)) where PA.tasks(p) = decomposition(action(domain(p))); That is tasks of the process architecture of a process p in process(sbc) are tasks obtained by decomposing action(domain(p)). PA.datas(p) = target(domain(p)); whose meaning is that the set of the process architecture of a process p in process(sbc) corresponds to the target of the domain of p PA.dataaccess(p) = {(t, c) decomposition(action(domain(p))) target(domain(p)) / decomposition(t) operations(c) } That is data access of the process architecture of a process p in process(sbc) are pairs composed with tasks obtained by decomposing p and class of target(p). PA.messages(p) = {(t1, t2) (decomposition (action(domain(p)))) 2 / decomposition (t1) decomposition (t2) }. This means that messages of the process architecture of a process p in process(sbc) are pairs of tasks (t1, t2) obtained by decomposing action(domain(p)) such that decomposition (t1) decomposition (t2). PA.adaptation_points(p)) = {(t1, A) t1 PA.tasks(p) A = {t2 : BusinessActivity common(t1) common(t2) ( V variabilities(t1), g common(t2) g V) optional(t1) optional(t2)} #A > 1}. That is, adaptation points of the process architecture of a process p in process(sbc) are tasks of the process architecture of p for which we have more than one realization. Lemma 2: if sbc is a well formed subsystem business component, then (PA.name(p), PA.descriptor(p), PA.realization(p)) such that p process(sbc) is a well formed process business component. Proof: It is sufficient to show that (PA.name(p), PA.descriptor(p), PA.realization(p)) verifies the process business components characteristics defined in section 3.4:

413 390 pbc1) Suppose q process (PA.context(p)), a decomposition(action(domain(q))) we must show that t PA.tasks(p) t = a target(domain(q)) PA.datas(p) ((((a, d) PA.dataaccess(p) ((a decomposition(action(domain(q)))) ((decomposition(a) operations(d) ))) where decomposition(a) is written for common(a) optional(a) ( variabilities(a)). q process (PA.context(p)) q = p (1) basing on (1) a decomposition(action(domain(q))) a decomposition(action(domain(p))). By the definition of PA.tasks, PA.tasks(p) = decomposition(action(domain(p))), hence t PA.tasks(p) t = a According to the definition of PA.datas, PA.datas(p) = target(domain(p)), and basing on (1) we conclude that target(domain(q)) PA.datas(p) By the definition of PA.dataaccess, ((((a, d) PA.dataaccess(p) ((a decomposition(action(domain(q)))) ((decomposition(a) operations(d) ))) pbc2) Suppose q process (PA.context(p)), we must show that ((t1, t2) decomposition (action(domain(q))) decomposition (action(domain(q))) (decomposition(t1) decomposition(t2) )) ((t1, t2) PA.messages(p)) q process (PA.context(p)) q = p (1) By the definition of PA.messages, PA.messages(p) = {(t1, t2) (decomposition (action(domain(p)))) 2 / decomposition (t1) decomposition (t2) } (2) Basing on (1) and (2), we conclude that ((t1, t2) decomposition (action(domain(q))) decomposition (action(domain(q))) (decomposition(t1) decomposition(t2) )) (t1, t2) PA.messages(p) Proposition 2: Let sbc be a well formed subsystem business component, all the requirements expressed in sbc have a solution in PA(sbc) ie: i) If p process(sbc) then pa PA(sbc) such that pa = (PA.name(p), PA.descriptor(p), PA.realization(p)) ii) If ss subsystems(solution(realization(sbc))), f ss and g decomposition(f) such that decomposition(g) common(g) then t PA.tasks(p) such that action(domain(p)) = activity(f), t = activity(g) and t PA.adaptation_points(p) where p process(sbc). Proof: The proof of (i) is obvious since PA(sbc) = {(PA.name(p), PA.descriptor(p), PA.realization(p)) p process(sbc)}. The proof of (ii) is also obvious by the definition of PA.adaptation_points. Example: By applying the previous passage rule to the process f1 = (manage = [{recruit, promote, liquidate, transfer}, {}, {}]) ACTION (candidates, requests, competitive examinations, civil servants, deeds) TARGET of the previous subsystem business component, we obtain the process business component below named PAM/RM: Name: Process architecture model of careers management. Intention : (describe) ACTION((manage = [{recruit, promote, liquidate, transfer}, {}, {}]) ACTION(candidates, requests, competitive examinations, civil servants, deeds) TARGET) TARGET Context : Domain : f = (manage) ACTION(careers,payroll,training,network,m ail,system) TARGET Process : f1 = (manage = [{recruit, promote, liquidate, transfer}, {}, {}]) ACTION(candidates, requests, competitive examinations, civil servants, deeds) TARGET /* sub process of the process f1 */ f11 = (recruit = [{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}]) ACTION(candidates, requests, competitive examinations, civil servants, deeds) TARGET(If he has succeeded to a competitive examination or he has a diploma giving right to integration or the presidency of the republic has gave agreement) PRECISION f12 = (promote = [{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}]) ACTION ( requests, civil servants, deeds) TARGET f13 = (liquidate = [{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}]) ACTION ( requests, civil servants, deeds) TARGET f14 = (transfer = [{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}]) ACTION ( civil servants, deeds) TARGET Solution : tasks: decomposition(action(f1)) datas: target(f1) dataaccess: {(t, c) decomposition(action(f1)) target(f1) / decomposition(t) operations(c) } messages: {(t1, t2) decomposition (action(f1)) decomposition (action(f1)) / decomposition (t1) decomposition (t2) } Adaptation points : {(t1, A) t1 pa.tasks(f1) A = {t2 : BusinessActivity common(t1) common(t2) ( V variabilities(t1), g common(t2) g V) optional(t1) optional(t2)} #A > 1} End. 4.3 The module architecture constructor. The module architecture constructor MA corresponds to the module architecture design activity of the horizontal process. It defines how that activity produces a set of module business architecture components from a reusable process business component. The set of reusable module business component architectures MA(pbc) constructed by MA from an input process business component pbc is defined as:

414 391 MA(pbc) = {(MA.name(t), MA.descriptor(t), MA.realization(t)) t process(p), p process(pbc)} where : (a) MA.name (t) is a text used by the designer to name the module business component. (b) MA.descriptor(t) = (MA.intention(t), MA.context(t)) where Ma.intention(t) = <(specify) ACTION (t) TARGET > meaning that the intention of the module architecture built from t is to specify t. MA.context(t) = (domain(pbc), {t}) This says that the domain of the context of the module architecture constructed from the task t is the same as the domain of pbc. The set of these processes has a single process equals to t.. (c) MA.realization(t) = (MA.solution(t), MA.adaptation_points(t)) where MA.solution(p) = (MA. pseudonym (t), MA.parameters(t), MA.task(t), MA.included(t), MA.external(t), MA.specification(t)) where MA. pseudonym (t) is a text used by the designer to name the solution; MA.parameters(t) is a set of texts pointing out business objects (or classes) in the target of the domain of t; Ma.task(t) = action(domain(t)) That is the task of the solution of the module architecture constructed from the context t is the action of the domain of t. MA.included(t) = {m:module task(m) decomposition(action (domain(t)) ) specification(m) }; Meaning that, modules included in the module architecture constructed from the context t are module for which the task is a subtask of t and the specification is not empty. MA.external(t) = {m:module task(m) decomposition(action (domain(t)) ) specification(m) = }; Meaning that, external modules in the module architecture constructed from the context t are module for which the task is a subtask of t and the specification is empty. MA.specification(t) = {specification(m) m MA.included(t) MA.required(t)}. That is the specification of the module architecture constructed from the context t is the set of specifications of subtasks of t. MA.adaptation_points(t)) = {(m1, A) m1 MA.included(t) A = {m2 : Module common(task(m1)) common(task(m2)) ( V variabilities(task(m1)), g common(task(m2)) g V) optional(task(m1)) optional(task(2))} #A > 1}. That is, adaptation points of the module architecture of a context t are modules included in the module architecture of t for which we have more than one realization. Lemma 3: if pbc is a well formed process business component, then (MA.name(t), MA.descriptor(t), MA.realization(t)) such that t process(p) and p process(pbc) is a well formed module business component. Proof: It suffices to show that (MA.name(t), MA.descriptor(t), MA.realization(t)) verifies the module business components characteristics defined in section 3.5: mbc1) Suppose p process(pbc) and t process(p), we must show that (#MA.process(t) = 1) ((p MA.process(t)) (action(domain(p)) = MA.task(t)). This property is trivially true by the definition of MA.process. Proposition 3: Let pbc be a well formed process business component, all the requirements expressed in pbc have a solution in MA(pbc) ie: i) If p process(pbc) and t process(p) then ma MA(pbc) such that ma = (MA.name(t), MA.descriptor(t), MA.realization(t)) ii) If t tasks(solution(realization(pbc))) and a decomposition(t) such that decomposition(a) common(a) then m MA.adaptation_points(t) such that task(m) = a. Proof: The proof of (i) is obvious since MA(pbc) = {(MA.name(t), MA.descriptor(t), MA.realization(t)) t process(p), p process(pbc)}. The proof of (ii) is also obvious by the definition of MA.adaptation_points. Example: By applying the previous passage rule to the task integrate of the previous process business component, we obtain the module business component below named MAM/ICS: Name: Module business architecture of the recruitment of a civil servant. Intention : (specify) ACTION ((recruit = [{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}]) ACTION(candidates, requests, competitive examinations, civil servants, deeds) TARGET(If he has succeeded to a competitive examination or he has a diploma giving right to integration or the presidency of the republic has gave agreement) PRECISION ) TARGET Context : Domain : f = (manage) ACTION(careers,payroll,training,network,mail,system ) TARGET Process: f11 = (recruit = [{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}]) ACTION(candidates, requests, competitive examinations, civil servants, deeds) TARGET(If he has succeeded to a competitive examination or he has a diploma giving right to integration or the presidency of the republic has gave

415 392 agreement) PRECISION /* sub process of the process f11 */ (initiate) ACTION ({Deed, Servant }) TARGET (validate) ACTION ({Deed}) TARGET (visa) ACTION ({Deed}) TARGET (sign) ACTION ({Deed}) TARGET (modify) ACTION ({Deed}) TARGET (delete) ACTION ({Deed}) TARGET (removevalidation) ACTION ({Deed}) TARGET Solution : pseudonym : recruit; parameters: {candidates, requests, competitive examinations, civil servants, deeds}; task: <{initiate, validate, visa, sign}, {modify, delete, remove validation}, {}>; included: {m:module task(m) decomposition(action (domain(recruit)) ) specification(m) }; external: {m:module task(m) decomposition(action (domain(recruit)) ) specification(m) = }; specification: {specification(m) m Ma.included(recruit) Ma.required(recruit)} Adaptation Points : {(m1, A) m1 Ma.included(recruit) A = {m2 : Module common(task(m1)) common(task(m2)) ( V variabilities(task(m1)), g common(task(m2)) g V) optional(task(m1)) optional(task(m2))} #A > 1} End. 5. Related works. The scientific community has a lot of interest for feature-oriented approaches in product line engineering. A recent and exhaustive overview of feature-oriented development done by Sven Apel and Christian Kästner [15] points to connections between different lines of research and identifies open issues following the phases of the featureoriented development process: domain analysis, domain design and specification, domain implementation, product configuration and generation, feature-oriented development theory. The issues addressed in this paper mainly concern domain analysis and domain design and specification. Concerning domain analysis, according to Sven Apel and Christian Kästner, the main challenge is to reconcile the two field uses of feature models, which are useful for the communication between stakeholders on the one hand and the automation of the development process on the other hand. Concerning this issue, the formalism used in this work has a simple and intuitive syntax which enables modeling of domains in a natural way. Nevertheless, the Z notation which gives formal semantics to our business feature models provides a framework for a rigorous analysis of the method and opens the door, through the given mapping rules, for a possible automation of the development process. Another major line of research is aimed at enriching feature models with additional information which can be used to guide the configuration and generation process. But, the more information is exposed to model, the more complex the model becomes. To avoid this complexity, additional information are not added to the feature model but, a new model called feature business component model is proposed. This new model has two parts: the solution part which can be any classical feature model and the contextual part whose aim is to increase the understanding of the solution part, during the product configuration and generation process in order to rule out invalid or suboptimal product variants. Concerning the domain design and specification, that is the product line architecture definition process, remarkably, there has not been much work. Researchers concentrated mainly on feature modeling and feature implementation. This is in stark contrast to non- feature-oriented approaches, in which developers have to design product line architecture first in order to define the granularity of components or extension points in a common framework. This work gives a set of mapping rules which build product line architecture from its feature model as in [16] Concerning domain implementation, one key issue is to establish a one-to-one mapping between features that appear during the domain analysis and feature that appear at the implementation level. Although the Domain implementation is not considered in this work, its importance is taken into consideration since the main theorem of the work given below, trivially proven from propositions 1, 2, and 3, shows that all the features that appear during the domain analysis (i. e. in the feature model) have a solution in the derived product line architecture. Theorem: All requirements expressed in a well formed feature business component fbc have a solution in MA (pbc) where pbc PA(SSA(fbc))), that is: i) If p process(context(fbc)) and t process(p) then ma MA(pbc) with pbc PA (SSA (fbc))) such that ma = (MA.name(t), MA.descriptor(t), MA.realization(t)). ii) If t tasks(solution(realization(pbc))) with pbc PA (SSA (fbc))), and a decomposition(t) such that decomposition(a) common(a) then m MA. adaptation_points (t) such that task(m) = a. 6. Conclusion The goal of this article was to formalize the FORM/BCS horizontal engineering process. We have shown that this process can be systematized through a set of maps describing how one can systematically and rigorously derive the fundamental business architectures of a product line from the feature model of that domain. This derivation is currently done first at a high abstraction level and the business architectures obtained have to be refined to integrate more operational details. Therefore, our next

416 393 investigation field concerns the formalization of FORM/BCS vertical engineering process which deals with the refinement of business process components. References [1] M. Fouda, Amougou Ngoumou, "The Feature Oriented Reuse Method with Business Component Semantics", International Journal of Computer Science and Applications, Vol. 6, No. 4, 2009, pp [2] K. C. Kang, S. Kim, E. Shin, and M. Huh, "FORM: A Feature-Oriented Reuse Method with Domain- Specific Reference Architectures", Annals of Software Engineering, Vol. 5, 1998, pp [3] K.C. Kang, J. Lee, and P. Donohoe, Feature- Oriented Product Line Engineering, IEEE Software, Vol. 19, no. 4, July/Aug. 2002, pp [4] K. Lee, K. C. Kang, W. Choi, "Feature-Based Approach to Object-Oriented Engineering of Applications for Reuse", Software-Practice and Experience, 30, 2000, pp [5] K.C. Kang et al., Feature-Oriented Product Line Software Engineering: Principles and Guidelines, Domain Oriented Systems Development: Perspectives and Practices, K. Itoh et al., eds., 2003, pp [6] V. Pujalte, P. Ramadour, C. Cauvet, "Recherche de composants réutilisables : une approche centrée sur l assistance à l utilisateur", in Actes du 22 ème congrès Inforsid, Biarritz,, may 2004, pp [7] P. Ramadour, C. Cauvet, Approach and Model for Business Components Specification, Proceeding of the 13 th International Conference on Database and Expert Systems Applications, Lecture Notes In Computer Science; Vol. 2453, 2002, pp [8] F. Barbier, C. Cauvet, M. Oussalah, D. Rieu, S. Bennasri, C. Souveyet, Composants dans l Ingénierie des Systèmes d Information: Concepts clés et techniques de réutilisation, in Assises du GDR I3, Nancy, Décembre [9] W. B. Frakes, K. Kang, Software Reuse Research : Status and Future, IEEE Transactions on Software Engineering, Vol.. 31, N.7, July [10] D.M. Weiss and C.T. R. Lai, Software Product- Line Engineering: A Family-Based Software Development Process. Addison-Wesley, [11] W. Frakes, R. Prieto-Diaz, and C. Fox, DARE: Domain Analysis and Reuse Environment, Annals of Software Engineering. vol. 5, 1998, pp [12] C. Atkinson et al., Component-Based Product Line Engineering with UML. Addison-Wesley, [13] R. Ommering et al., The Koala Component Model for Consumer Electronics Software, Computer, vol. 33, no. 3, 2000, pp [14] Y. Jia, Y. Gu, The Representation of Component Semantics: A Feature-Oriented Approach, in Proceedings of the 9 th IEEE Conference and Workshops on Engineering of Computer-Based Systems, Lund University, Lund, Sweden, April 8-11, [15] Sven Apel, Christian Kästner, An Overview of Feature-Oriented Software Development, Journal of Object Technology, Vol. 8, no. 5, July-August 2009, pp [16] C. Zhu, Y. Lee, W. Zhao, J. Zhang, A feature oriented approach to mapping from domain requirements to product line architecture, Proceeding of 2006 International Conference of Software Engineering Research & Practice (SERP 06/ISBN#: /CSREA), Editor: Hamid R. Arabnia and Hassan Reza, pp , Las Vegas, USA, Marcel Fouda Ndjodo received his MSc (1988), PhD (1992) in Mathematics and Computer science from Université of Aix-Marseille II (France). He is currently a Senior Lecturer and Head of Department of Computer Science and Instructional Technology at the Higher Teachers Training College, University of Yaoundé I (Cameroon). His research interests include Formal Methods, Workflow Modeling, Domain Engineering and Computer technology applied to education. Amougou Ngoumou received his MSc (2001) in Computer science from the Faculty of Science of the University of Yaoundé I (Cameroon). He is currently a Lecturer at the Institute of technology of the University of Douala and a PhD student at the Faculty of Science of the University of Yaoundé I. His main research interests include Feature-oriented Domain Engineering and Component-Based Software Development.

417 Ternary Tree and Clustering Based Huffman Coding Algorithm Pushpa R. Suri and 2 Madhu Goel 1 Department of Computer Science and Applications, Kurukshetra University, Haryana, India 2 Department of Computer Science and Engineering, Kurukshetra Institute of Technology and Management, KUK Abstract In this study, the focus was on the use of ternary tree over binary tree. Here, a new two pass Algorithm for encoding Huffman ternary tree codes was implemented. In this algorithm we tried to find out the codeword length of the symbol. Here I used the concept of Huffman encoding. Huffman encoding was a two pass problem. Here the first pass was to collect the letter frequencies. You need to use that information to create the Huffman tree. Note that char values range from -128 to 127, so you will need to cast them. I stored the data as unsigned chars to solve this problem, and then the range is 0 to 255. Open the output file and write the frequency table to it. Open the input file, read characters from it, gets the codes, and writes the encoding into the output file. Once a Huffman code has been generated, data may be encoded simply by replacing each symbol with its code. To reduce the memory size and fasten the process of finding the codeword length for a symbol in a Huffman tree, we proposed a memory efficient data structure to represent the codeword length of Huffman ternary tree. In this algorithm we tried to find out the length of the code of the symbols used in the tree. Keywords: Ternary tree, Huffman s algorithm, Huffman encoding, prefix codes, code word length 1. Introduction Ternary tree [12] or 3-ary tree is a tree in which each node has either 0 or 3 children (labeled as LEFT child, MID child, RIGHT child). Here for constructing codes for ternary Huffman tree we use 00 for left child, 01 for mid child and 10 for right child. Generation of Huffman codes for a set of symbols is based on the probability of occurrence of the source symbols. Typically, the construction of a ternary tree, describes the process this way: List all possible symbols with their probabilities; Find the three symbols with the smallest probabilities; Replace these by a single set containing all three symbols, whose probability is the sum of the individual probabilities; Repeat until the list contains only one member. This procedure produces a recursively structured set of sets, each of which contains exactly three members. It, therefore, may be represented as a ternary tree ( Huffman Tree ) with the symbols as the leaves. Then to form the code ( Huffman Code ) for any particular symbol: traverse the ternary tree from the root to that symbol, recording 00 for a left branch and 01 for a mid branch and 10 for a right branch. One issue, however, for this procedure is that the resultant Huffman tree is not unique. One example of an application of such codes is text compression, such as GZIP. GZIP is a text compression utility, developed under the GNU (Gnu's Not Unix) project, a project with a goal of developing a free or freely available UNIX-like operation system, for replacing the compress text compression utility on a UNIX operation system. As is well-known, the resulting Huffman codes are prefix codes and the more frequently appearing symbols are assigned a smaller number of bits to form the variable length Huffman code. As a result, the average code length is ultimately reduced from taking advantage of the frequency of occurrence of the symbols Huffman encoding [13] of numerical data, or more broadly variable bit length encoding of numerical data, is an important part of many data compression algorithms in the field of video processing. Huffman encoding is effective to compress numerical data by taking advantage of the fact that most data sets contain non-uniform probability distributions of data values. When using the Huffman method the data values are encoded using codes of different bit lengths. The more frequently occurring data values are assigned shorter codes and the less frequently occurring data values are assigned longer codes. Thus, the average code length for the data values in the data set is minimized. For typically skewed probability distributions

418 395 of data values the use of Huffman encoding may achieve a compression factor of between one and one-half and two times. In Huffman Coding [6] the main work is to label the edges. Huffman Coding uses a specific method for choosing the representation for each symbol, resulting in a prefix - free code (some times called "Prefix Codes") i.e. the bit string representing some particular symbol is never a prefix of the bit string representing any other symbol that expresses the most common characters using shorter strings of bits that are used for less common source symbols. The assignment entails labeling the edge from each parent to its left child with the digit 00, and the edge to the mid child with 01 and edge to the right child with 11. The code word for each source letter is the sequence of labels among the path from the root to the leaf node representing that letter. Only Huffman Coding is able to design efficient compression method of this type. Huffman Coding is such a widespread method for creating prefix-free codes that the term "Huffman Code" is widely used as synonym for "Prefix Free Code". Now, for example, we will give a coding using variable length strings that is based on the Huffman Tree for weighted data item as follows: - means that there cannot be any ambiguity in decoding any message using a Huffman Code. If we will represent the same data item with same weights in Binary Tree as well as in Ternary Tree[11] then we can easily point out the comparison between two representation as follows: - In Ternary Tree: - Memory used using Sequential Representation = 34 Memory used using Linked List Representation = 13 Number of Internal Nodes = 4 Path length = 199 Height of the tree = 4 Total Number of Nodes (Internal + External) = 13 Searching on Node is fast Length of External Node (L E )= 2L I + 3n Here Labeling the left edge by 00, mid edge by 01 and right edge by 11 satisfies prefix Property While In Binary Tree: - Memory used using Sequential Representation = 51 Memory used using Linked List Representation = 17 Number of Internal Nodes = 8 Path length = 306 Height of the tree = 6 Total Number of Nodes (Internal + External) = 17 The Huffman Code for Ternary Tree assigns to each external node the sequence of bits from the root to the node. Thus the above Tree determines the code for the external nodes: - Searching on Node is slow Length of External Node (L E )= = L I + 2n Here Labeling the left edge by 0 and right edge by 1 satisfies prefix Property. G: 00 I: 0100 C: 0101 F: 0111 D: 1101 A: 1111 E: B: H: This code has "Prefix Property" i.e. the code of any item is not an initial sub string of the code of any other item. This One may generate the length information for the Huffman codes by constructing the corresponding Huffman tree. However, as previously indicated, Huffman codes may not be unique when generated in this fashion. Nonetheless, it may be shown that by imposing two restrictions, the Huffman code produced by employing the Huffman tree may be assured of being unique. These restrictions are:

419 All codes of a given bit length have lexicographically consecutive values, in the same order as the symbols they represent; and 2. Shorter codes lexicographically precede longer codes. 2. Materials and Methods Ordering and clustering based Huffman Coding groups the code words (tree nodes) within specified codeword lengths Characteristics of the proposed coding scheme: 1. The search time for more frequent symbols (shorter codes) is substantially reduced compare to less frequent symbols, resulting in an overall faster response. 2. For long code words the search for the symbol is also speed up. This is achieved through a specific partitioning technique that groups the code bits in a codeword, and the search for a symbol is conducted by jumping over the groups of bits rather than going through the bit individually. 3. The growth of the Huffman tree is directed toward one side of the tree. Single side growing Huffman tree (SGH-tree) Ex: H=(S, P) S= {S1, S2,, Sn} P= {P1, P2,, Pn} Where p=no. of occurrence S1 48 S1 48 S1 48 S2 31 S2 31 S2 31 S3 7 A1 8 A2 21 S4 6 S3 7 S5 5 S4 6 S6 2 S7 1 Table I For a given source listing H, the table of codeword length uniquely groups the symbols into blocks, where each block is specified by its codeword length (CL). Each block of symbols, so defined, occupies one level in the associated Huffman tree. 1. Order the symbols according to their probabilities Alphabet set: S1, S2,, SN Prob. of occurrence: P1, P2,, PN The symbols are rearranged so that P1>=P2>= >=PN 2. Apply a contraction process to the three symbols with the smallest probabilities Replace symbols S N-2, S N-1 and S N by a hypothetical symbol, say H N-1 that has a `prob. of occurrence P N-2 +P N- 1+P N The new set of symbols has N-2 members: S1, S2,, S N-3, H N-2 3. Set S N-2 +S N-1 +S N =A1 Where A1 is inserted at proper location. 4. Repeat the steps 2 & 3 until we have last three symbols. Table I shows the symbols used in Huffman tree. 5. Now construct the table of CL-Recording 6. First column of CL-Recording table is represented by Si where Si= (entries of last row of every column) 0

420 397 Second row of CL-Recording is represented by S i-1 where S i-1 = (entries of second last row of every column) Third row of CL-Recording table is represented by S i-2 where S i-2 = (entries of third lat row of every column) Fourth row (last row) is used to calculate code word length. 7. To calculate the entries of codeword length. CL (last row) =2 This designates the codeword length for entire row. Now increment the last row CL (last row) +2=4 Repeat steps to find the codeword length for entire symbols. 8. Therefore, table II (codeword length recording) indicate that each original symbol in the table has its CL (codeword length) specified. 9. Ordering the symbols according to their CL values gives table III (table of codeword length) 3. Result & discussion If we will represent the same data item with same weights in Binary Tree as well as in Ternary Tree then we can easily point out the comparison between two representation as follows: - In Ternary Tree: - Number of Internal Nodes = 4 Path length = 199 Height of the tree = 4 Total Number of Nodes (Internal + External) = 13 Searching on Node is fast Length of External Node (L E )= 2L I + 3n While in Binary Tree: - Number of Internal Nodes = 8 Path length = 306 Height of the tree = 6 Total Number of Nodes (Internal + External) = 17 Length of External Node (L E ) =L I + 2n 4. Conclusions The main contribution of this study is exploiting the property implied in the Huffman tree to simplify the representation of the Huffman tree and the encoding procedure. Moreover our algorithm can also be parallelized easily. We already showed that representation of Huffman Tree using Ternary tree is more beneficial than representation of Huffman Tree using Binary tree in terms of path length, height, number of internal & external nodes and in error correcting & detecting codes Acknowledgements The author Madhu Goel would like to thank Kurukshetra University Kurukshetra for providing me University Research Scholarship & support of Kurukshetra Institute of Technology & Management (KITM). References [1] BENTLEY, J. L., SLEATOR, D. D., TARJAN, R. E., AND WEI, V. K. A locally adaptive data compression scheme. Commun. ACM 29,4 (Apr. 1986), [2] DAVID A. HUFFMAN, Sept. 1991, profile Background story: Scientific American, pp [3] ELIAS, P. Interval and regency-rank source coding: Two online adaptive variable-length schemes. IEEE Trans. InJ Theory. To be published. [4] FALLER, N. An adaptive system for data compression. In Record of the 7th Asilomar Conference on Circuits, Systems, and Computers. 1913, pp [5] GALLAGER, R. G. Variations on a theme by Huffman. IEEE Trans. Inj Theory IT-24, 6 (Nov.1978), [6] Hashemain, memory efficient and high-speed search Huffman Coding IEEE Trans. Communication 43(1995) pp [7] Hu, Y.C. and Chang, C.C., A new losseless compression scheme based on Huffman coding scheme for image compression, Searching on Node is slow

421 398 [8] KNUTH, D. E, The Art of Computer Programming, Vol. 1: Fundamental Algorithms, 3 rd edition. Reading, MA: Addison-Wesley, pp students. She has published a number of research papers in national and international journals and conference proceedings. [9] KNUTH, D. E. Dynamic Huffman coding. J. Algorithms 6 (1985), [10] MacKay, D.J.C., Information Theory, Inference, and Learning Algorithms, Cambridge University Press, [11] MCMASTER, C. L. Documentation of the compact command. In UNIX User s Manual, 4.2 Berkeley Software Distribution, Virtual VAX- I Version, Univ. of California, Berkeley, Berkeley, Calif., Mar , [12] PUSHPA R. SURI & MADHU GOEL, Ternary Tree & A Coding Technique, IJCSNS International Journal of Computer Science and Network Security, VOL.8 No.9, September 2008 [13] PUSHPA R. SURI & MADHU GOEL, Ternary Tree & FGK Huffman Coding Technique, IJCSNS International Journal of Computer Science and Network Security, VOL.9 No.1, January 2009 Mrs. Madhu Goel has Master s degree (University Topper) in Computer Science. At present, she is pursuing her Ph.D. and working as Lecturer in Kurukshetra Institute of Technology & Management (KITM), Kurukshetra University Kurukshetra. Her area of research is Algorithms and Data Structure where she is working on Ternary tree structures.. She has published a number of research papers in national and international journals. [14] PUSHPA R. SURI & MADHU GOEL, A NEW APPROACH TO HUFFMAN CODING, Journal of Computer Science. VOL.4 ISSUE 4 Feb [15] ROLF KLEIN, DERICK WOOD, 1987, on the path length of Binary Trees, Albert-Lapwings University at Freeburg. [16] ROLF KLEIN, DERICK WOOD, 1988, On the Maximum Path Length of AVL Trees, Proceedings of the 13 th Colloquium on the Trees in Algebra and Programming, p , March [17] SCHWARTZ, E. S. An Optimum Encoding with Minimum Longest Code and Total Number of Digits. If: Control 7, 1 (Mar. 1964), and [18] TATA MCGRAW HILL, 2002 theory and problems of data structures, Seymour lipshutz, tata McGraw hill edition, pp [19] THOMAS H. CORMEN, 2001 Charles e. leiserson, Ronald l. rivest, and clifford stein. [20] Thomas H.Cormen Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to algorithms, Second Edition. MIT Press and McGraw-Hill, Section 16.3, pp Dr. Pushpa Suri is a reader in the department of computer science and applications at Kurukshetra University Haryana India. She has supervised a number of Ph.D.

422 399 Risk Quantification Using EMV Analysis A Strategic Case of Ready Mix Concrete Plants Roopdarshan Walke 1, Vinay Topkar 2, Sajal Kabiraj 3 1 Research Scholar for Ph.D. Course, Civil and Environmental Engineering Department, VJTI, Mumbai, India 2 Head (Civil and Environmental Engineering department, VJTI, Mumbai, India 3 Professor, FCRIMS, University of Mumbai, India and Researcher, Carleton University, Canada Abstract Ready Mix Concrete (RMC) industry in India is continuously growing. This industry is exposed to risks from internal as well as external sources. It is important to address these risks, so that industry shall gain credibility and confidence of the customers, and shall have expected profit margins. Proposed paper presents a risk quantification approach for risks in RMC plants in India, using Expected Monetary Value (EMV) analysis. It is developed using guidelines available in literature in the area of risk management. It is a simple but effective approach for quantification of risks and it shall help to achieve the objectives of RMC business in terms of cost of production and supply of RMC. Once the risks are quantified, quantitative assessment can be done further to decide upon the appropriate response strategies to be adopted to treat the risk related issues in effective way. This approach is checked for practicability in RMC organizations. Keywords: RMC, Risk quantification, EMV Analysis, Response strategies. 1. Introduction IS (Bureau of Indian Standard 2003) defines Ready Mix Concrete (RMC) as Concrete delivered at site or into purchaser s vehicle in the plastic condition and requiring no further treatment before being placed in a position in which it is to be set and hardened. Ready Mix concrete is preferred over site mix concrete because it is environmental friendly. It is a solution to a messy and time consuming manufacturing of concrete at construction sites. It offers solutions to customer s specific problems, ensures customer satisfaction and provides uniform quality. It also eliminates the need to store materials used to manufacture concrete at project sites. Currently, RMC is a matured industry both in Europe and USA. The data from National Ready Mix Association (March, 2007) indicate that RMC is a $ 30 billion industry in USA, with annual output of 351 million cubic Meters. In these countries, nearly 75% consumption of cement is through the RMC route (National Ready Mix Concrete Association:http// In the context of India, the trend of using ready mix concrete is growing steadily. Demand of RMC is increasing in housing as well as in infrastructural projects. This has given a big flip to RMC industry in India. Anticipating huge potential for RMC in India, many organized and unorganized players are foraying in this area. Like other industries, RMC industry is exposed to various risks. In European countries, there is an awareness and understanding about importance of risks and its management. Operation managers on RMC Plants in the European countries are expected to work on risk management at production plant and delivery sites ( / jobs / language / english / search / job / / 12 / 29 /2005 risk mgmt). In India, Risk Management at RMC plant is not given adequate importance. Information gathered from RMC plants in India in places like Mumbai, Navi Mumbai, Pune, Bangalore, and Noida, established by different companies reveals that a systematic risk management approach is not practiced in Indian RMC Industry. Unless the risks are addressed properly, the RMC industry in India shall not gain credibility, confidence of customers and will also cause reduction in profit margins. The risk causes can be categorized into internal risk causes and external risks causes (Zia 1995). Thus, the risks related to RMC plants can be classified as internal as well as external risks. Internal risks and External risks can not be avoided completely; yet, suitable strategies can definitely be adopted to manage these risks. This paper

423 400 proposes an approach to quantify risks in RMC plants in Indian context. Once risks are quantified, quantitative assessment can be done so that the appropriate risk response strategies can be adopted to treat the risks related issues. This shall help in achieving the objectives of RMC business in terms of production and supply cost. 1. Literature review In the literature, the word Risk has been used in many different meanings with many different words such as hazard or uncertainty (Boodman 1977, Faber 1979, Lifson and Shaifer 1982, Hertz and Thomas 1983). The Webster s dictionary defines risk as The possibility of loss, injury, disadvantage or destruction. According to Jamal and Keith (1990), risk can be written as, Risk = f (Uncertainty of event, Potential loss/gain from event) The concept of risk varies according to viewpoint, attitudes and experience of an individual and thus risk has a different meaning to different people. Engineers, designers, and contractors view risk from the technological perspective, Lenders and developers tend to view it from economical and financial side, and health professionals, environmentalists, chemical engineers take a safety and environmental perspective. Risk is, therefore, generally seen as an abstract concept whose measurement is very difficult (Baloi and Andrew, 2003). The term risk management has multiple meanings. Many use this term synonymously with risk identification. For many others, it is synonymous to risk analysis, risk monitoring and /or risk control. In fact, these all are the phases of risk management. According to Hillson(b) (2000), the risk management is a process aimed to identify and assess risks in order to enable the risks to be clearly understood and managed effectively. Risk Management continues to be a major feature of the project management of large construction, engineering and technological projects in an attempt to reduce uncertainties and to achieve project success (Akintoye, 2008). According to Royer (2000), risk management is the critical part of project management as unmanaged or unmitigated risks are one of the primary causes of project failure. PMBOK (PMI 2004) defines project risk management as the process concerted with identifying, analyzing and responding to uncertainty throughout the project life cycle. A number of variations of risk management approach have been proposed by different authors and researchers. Four processes of risk management i.e. Risk identification, Risk Analysis and evaluation, Response management, and System administration are proposed by Jamal and Keith (1990). The general consensus in current literature, available in the field of risk management, incorporates four steps in the process of risk management. These are Risk identification, Risk Analysis, Risk Response planning and Risk Monitoring and control (Thevendran and Mawdesley 2004).Failure to perform effective risk management can cause projects to exceed budget, fall behind schedule, miss critical performance targets, or exhibit any combinations of these troubles (Carbone and Tippett, 2004). Risk identification is one of the most import stages in risk management process. In this stage, all the potential risks that could affect the project objectives are identified. It is studying a situation to realize what could go wrong at any given point of time during the project. For risk identification, some of the methods used are Check list, Brainstorming, Tree Diagram, Cause Effect Diagram, Failure mode and effect analysis, Hazard and operability study, Fault Tree and Decision Tree, Delphi Technique, and Interviews (Ahmed, Berman and Sataporn 2007). Identified risks should be classified into different categories so as to give elaboration of risks in more details and to aid in deciding upon risk response strategies according to categories of risks. Several authors have attempted various means of classifying risk. Some of these include Mason 1973, Ashley 1981, Johnson and Rood The identified and classified risks should be assessed further for designing future course of action i.e. to decide upon suitable response strategies. Assessment of risks can be qualitative and quantitative. Qualitative risk assessment is rapid and cost effective. It includes assigning the probability and consequences for individual risks and finding out the risk exposure. Risk exposure gives an idea for screening the risks according to their priority so that risks having substantial influence on business objectives can be selected for quantification and quantitative assessment. These selective risks are quantified and are assessed further quantitatively using suitable techniques available for this. Some of the techniques used for risk assessment are Probability and impact Grid, Fault tree analysis, Event tree analysis, Sensitivity analysis, Simulation, Decision Tree analysis, Expected value Method, Analytical Hierarchy Process (Ahmed, Berman and Sataporn 2007).Businesses would like to quantify risks for many reasons. Knowing how much risk is involved helps to decide whether the costly measures to reduce the level of risk are justifiable or not (Jannadi and Alamshari 2003). Appropriate response strategies can be decided after assessment of risks. The

424 401 PMBOK (PMI 2004) has given four response strategies as risk avoidance, risk transfer, risk mitigation and risk Acceptance. Appropriate response strategies should be selected and implemented for the selected potential risks and are monitored continuously. Excellent risk strategies can reduce the probability and the impact of the risk occurrence causes at the same time (Molenaar 2009). 3. Proposed approach for risk assessment The proposed approach in this paper considers risk as a future event which has an adverse effect on the production and supply cost for a company running RMC plant and for which possible outcomes can be predicted on the basis of probability. The proposed approach has three stages as below - Risk identification, categorization and classification - Risk prioritization - Risk quantification. 3.1 Risk identification, categorization and classification As no previous record of the different types of risks in RMC plant in India is available, authors had to interview a team of plant managers and key personnel working at respective RMC plants. Risk management concept was explained to this team of plant managers and key personnel before interviewing them. Outcome of these interviews is a list of 121 risks in different categories and classifications. This established a base for risk quantification. A list of identified risks with their categories and classification is presented in Table 1. Table 1 Identification, categorization and Classification of Risks in RMC Plants in India Classification No. Category Risks Internal External 1. Political Change in Govt. Risks and Govt. policies War, Riots etc. Interference of local Politicos Table 1 contd. 2. Legal/Contr actual Risks 3. Environmen tal Risks 4. Financial Risks 5. Physical Risks 6. Regulatory Risks Contractual liability (breach, third party action) Inappropriate dispute redressel mechanism Conflict between various agencies Errors in contract price calculation Misinterpretation of contract terms Litigation due to claim Ambiguity in specification for delivery Air Pollution Water Pollution Noise Pollution Soil Pollution Environmental Litigation Depletion of Natural resources Extreme weather conditions (cold / hot) Damage to machineries due to flood Ineffective control over wastage Inflation Delay in Payment by client Investment Risks Force Majeur(Acts of God) Disease / Epidemic Fire Terrorism Natural Disaster Changes in local Tax rates Levy of additional taxes and duties on RMC (Entry Tax, Excise duty) Changes in current RMC regulations and ministry requirements Contd Contd

425 402 Table 1 contd Contd Table 1 contd 7. Operational Risks 8. Quality Risks Use of new technology Lack of technical expertise / personnel Internal technology system failure Improper internal infrastructure Improper site access Confined spaces regulatory and Govt. requirements for production Extended operational hours Delay due to traffic during transportation Frequent breakdown of M/Cs, Plant etc. Wrongly designed layout Unskilled personnel to work on various operations Idle machineries Technical Risks Policies and Procedure Improper infrastructure, scaffolding and platform Over utilization of plant capacity Wrong working location Improper erection and commissioning of Plant High transportation cost Lack of infrastructural facilities (water, roads, electricity, communication systems) Use of ungraded machineries in manufacturing process Damage to roads due to transporting through heavy vehicles No flow through pipes during discharge of concrete at site. Varying degree of moisture in sand Improper or no calibration of water meter, weigh balance, machines and equipments Errors in testing and inspection of materials. Non availability of advanced testing facilities. Poor quality of repairs and maintenance 9. Procure ment and storage Risk Inaccuracy in statistical adjustments Risks of drying and loss of workability of concrete Slump and sand content is not properly governed Mixer not maintained in an efficient and clean condition Improper moisture compensation Incorrect Mix design Improper specification for RMC Incorrect use of admixtures Irregular quality monitoring Inappropriate quality standards Non conformance with basic properties of ready mix concrete like workability, strength, durability, setting time of concrete,loading wrong material, segregation and homogeneity during transport Not using proper checklist for quality control Non availability / shortage of cement and other materials Transport strike Vender problems (delays) Accepting raw material at site without required specifications Non availability of spare parts Difficulties in importing equipments Improper storage system (Dampness, no ventilation) Theft at site Risks associated with wrong decisions related to buying and /or hiring

426 403 Table 1 Contd Table 1 Contd. 9. Procure ment and storage Risk 10. Occupat ional and health Risks 11. Safety Risks Non availability / shortage of cement and other materials Transport strike Vender problems (delays) Accepting raw material at site without required specifications Non availability of spare parts Difficulties in importing equipments Improper storage system (Dampness, no ventilation) Theft at site Risks associated with wrong decisions related to buying and /or hiring Eye, skin and respiratory tract irritation Chemical burns Over exertion Ergonomics Occupational hazards faced by truck drivers Injuries at site Slips, trips and falls Accidents at plant site Non functioning of fire fighting system at plant site Non availability /no use of safety equipments and tools at plant site Non availability of proper medical facilities Mishandling of material at plant site Accidents during transport of concrete Death/Injury to someone at site or in plant due to accident Not following manufacturers recommended practice for cleaning and lubricating etc Not maintaining maintenance check sheet and repair records No set up for regular testing and inspection 12. Market Risks 13. Social Risks 14. Labor Related Risks 15. Organiz ational Risks 16. Wastage Risks Not doing major overhauling using services and expertise of manufacturer s representative or specialist/ experts. Not replacing worn parts on regular basis Not keeping hydraulic equipment free from contamination. Demand Supply Gap Competition in Market Wrong assessment of market potential and demand estimation. Problems created by nearby residents Public outcry with regard to activities like quarrying near plant etc Non productivity / performance of laborers Non availability of local labour High Labor turnover Problems by labour union Cultural differences Performance risks Improper planning for various works Less growth opportunities within organization Discharge of concrete on ground (slurry is lost) No policy for solid waste and runoff management Inappropriate disposal of sludge Conveyance of waste water is not regulated properly Inappropriate sewage treatment and disposal Contd.. Contd..

427 404 Table 1 contd Table 2: QRA (Qualitative Risk Analysis sheet) 17. Risks related to repairs and mainten ance of plant 3.2 Risks prioritization Risks prioritization is done in order to screen the risks so that risks having substantial influence on RMC business objectives can be selected for quantification. For this, probabilities and consequences are assigned to individual risks on subjective basis using following tools. - QRA sheet (Qualitative Risk Analysis sheet) - P-C Matrix (Probability Consequences Matrix) QRA sheet Low maintenance at plant No careful planning for repairs and maintenance No periodical check up of plant and machineries QRA Sheet is designed, in particular, to assess individual risks subjectively. It has a list of identified and categorized risks on the left hand side column of the sheet. It shall ask for probability and consequence of each risk in a subjective way. For probability assignment, a probability scale shall be used. This scale shall be used for assigning the probability, ranging subjectively from rare, unlikely, possible and likely to almost certain. In the context of risk consequences, the same scale shall be used. This scale shall be used for assigning consequences subjectively from insignificant, minor, moderate and major to catastrophic consequences. Project managers and key personnel at respective RMC plants shall discuss as a team to decide the level of probability and consequences of individual risks. A QRA sheet ( shall be filled after reaching consensus, where only tick marks shall be put in appropriate boxes in QRA sheet, for assigning probabilities and consequences to the individual risks (Table 2) Probability - Consequence Matrix Response in QRA sheet shall be used to study the exposure of risks, using P-C Matrix (Probability- Consequence Matrix). It shall consist of vertical column for probability and horizontal column for consequences using the scale, same as that is used in QRA sheet. This matrix shall be used to express combined effect of probability and consequences associated with each risk. This combined effect shall be expressed as very low, low, significant and high, dividing P-C Matrix into four Zones as shown in table 3 (Hillson(b) 2002). P C Rare Unlikely In - signifi cant Very Low Very Low Table 3: P-C Matrix Minor Moderate Major Very Low Low Possible Low Low Likely Almost Certain Identified and classified risk A). Political Risk R1 R2 R3 B). Contractual Risk R1 R2 R3 R4 Low Rare Unlikely Significant Significant Significant Probability Possible Catestropic Low Low Significant Low Likely Significant Significant Significant Significant Almost certain High Insignificant Significant High High High High High Consequences Minor Moderate Major Catastrophic

428 405 Risks falling in very low and low zones of P-C matrix shall be eliminated from quantification, as these risks shall have negligible effect on objectives of RMC business in terms of cost. Risks falling in Significant and high zones of P-C Matrix shall have potential Consequences on RMC business objectives in terms of cost and thus shall be considered for quantification. These risks shall actually have substantial influence on objective of a company running RMC plant and are to be taken into account for risk quantification. 4. Risk Quantification using EMV analysis In this step of proposed approach, risks which actually may cause substantial cost increase shall be quantified to get an idea about total project risks in term of production and supply cost. A quantification format is proposed for this purpose, which shall be used to gather the data related to probability and consequences of the significant and high exposure risks in term of cost. The effect of time factor i.e. cost related to delay shall also to be included in each risk. Team of project manager with key personnel at respective plants shall discuss together and after reaching consensus, shall fill required details about individual risks as well as about their interdependency, if exists. This approach is explained stepwise in the following paragraphs. 4.1 Assigning basic occurrence probability to selected risks Team members shall decide about the probability of occurrence of risks i.e. chance of risks actually occurring, after discussing, brainstorming and reaching consensus. For example, the basic occurrence probability of a particular risk can be decided as 70% by the team members after reaching consensus. This means that there are 70% chances of occurrence of that particular risk and there shall be 30% chance of non occurrence of that particular risk. 4.2 Selecting scale for probabilities for different cost consequences In the proposed system, scale for cost consequences shall be used where a range of cost consequences in terms percentage of the average monthly production and supply cost of RMC shall be given and associated probabilities shall be filled by team members after reaching consensus. This scale is shown below in Table 4. Table 4: Scale with a Range of cost consequences and associated probabilities Cost Consequen ces(in terms of Average Monthly Production and supply cost of RMC) Probability 0-1% (In terms of average monthly producti on and supply cost of RMC specify) 1%-2% (In terms of monthly producti on and supply cost of RMC - specify) 3% -5 % (In terms of the monthly production and supply cost of RMC - specify) 5%-10 % (In terms of the monthly production and supply cost of RMC (specify) 10 % and above (In terms of average monthly producti -on and supply cost of RMC - specify) (Here it means: What is the probability that consequences due to a particular risk will lead to 0-1% cost consequences (loss) with respect to the average monthly production and supply cost of RMC from the respective plant, 1 to 2% cost consequences (loss) with respect to the average monthly production and supply cost of RMC from the respective plant and so on). Note: Above classes being mutually exclusive, sum of the probabilities for all the ranges of consequences should be 100%. The scale for cost- consequences and associated probabilities is subjected to modification, considering various factors like age of the plant, technology adopted, seasonal variations in demand of RMC, monthly yearly turnover etc. Experience shall influence the responses while filling the above table. 4.3 Interdependence and cost consequences It is not that all risks are independent. Many risks have interdependency relations with other risks, i.e. occurrence of one risk can lead to some effect on the cost consequences due to other risk. A quantification format is suggested for this purpose that shall be is used to get these details. There may be an increase or decrease in the cost consequences but these values are needed for the calculations proposed in this approach for risk quantification. The format for obtaining cost consequences due to independencies is presented below in Table 5.

429 406 Effect on(say) Risk R1 Due to occurrence of (say)risk R2 Due to occurrence of (say)risk R3 Due to occurrence of (say)risk R4 Table 5: Interdependency Format % Increase in cost consequence Respective team of project managers and key personnel, after reaching consensus, shall write the percentage increase or decrease in cost consequence of risks (loss) in term of average monthly production and supply cost. For example, as shown in Table 5, influence of say risks R2, R3 and R4 on say risk R1 can be filled by team members. This Format shall be used for interdependent risks to find changes in cost consequences 4.4 Calculations for risk quantification % Decrease in cost consequence In the proposed approach, Expected Monetary Value (EMV) analysis shall be used as a tool to carry out risk quantification. EMV is a product of risk event probability and risk event consequences. Risk event probability is an estimate of probability that a given risk will occur (Basic Occurrence probability). The calculations using EMV analysis in the proposed risk quantification approach shall be as below - 1. The lowest and highest cost consequences related to each risk are considered as Low1 and High 1 values. As the consequences are described in scales, the mid-point of each class is taken as cost consequences for calculation. Example For class 1-2% - 1.5% taken for calculations Similarly, For class 3-5% - 4% is taken for calculations Expected Monetary Value 1 is calculated for every risk using following formula - Expected Monetary Value 1 = Cost consequence of an individual risk x Probability of this cost consequence (Eqn-1) 2. Next step is to consider basic occurrence probability of each risk and multiply it with its Expected Monetary Value1.This shall give Expected Monetary Value 2 for a particular risk. Thus, Expected Monetary Value 2 = Basic occurrence Probability of an individual risk x Expected Monetary Value 1 (Eqn-2) Modification is also applied to Expected Monetary Value 2 for interdependencies, in order to get Final Expected Monetary Value. Low 2, High 2 and Final Expected Monetary Value is determined using following formula. (Refer Table 4 for clarity of this formula) Low 2 = Low 1+ [(Low 1 x %change in a particular risk say R1 due to occurrence of another risk say R2) x Basic occurrence probability of risk R2 ] + [(Low 1 x %change in a particular risk say R1 due to occurrence of another risk say R3) x Basic Occurrence Probability of Risk R3 ] + [( Low 1 x %change in a particular risk say R1, due to occurrence of another risk say R4) x Basic occurrence probability of risk R4] (Eqn-3) High 2 = High 1+ [(High 1 x %change in a particular risk say R1 due to occurrence of another risk say R2) x Basic occurrence probability of another risk R2 ] + [(High 1 x %change in a particular risk say R1 due to occurrence of another risk say R3) x Basic Occurrence Probability of Risk R3 ] + [(High 1 x %change in a particular risk say R1 due to occurrence of another risk say R4) x Basic occurrence probability of another risk R4] (Eqn-4) Final Expected Monetary Value = Expected Monetary Value 2 + [(Expected Monetary Value 2 x %change in a particular risk say R1 due to occurrence of another risk say R2) x Basic Occurrence Probability of R2] + [(Expected Monetary Value 2 x %change in a particular risk say R1 due to occurrence of another risk say R3) x Basic Occurrence Probability of R3] + [(Expected Monetary Value 2 x %change in a particular risk say R1 due to occurrence of another risk say R4) x Basic Occurrence Probability of R4] (Eqn-5) The total risk, in terms of cost, varies between the sum of Low 2 values and sum of High 2 values, for all the risks considered for quantification. Proposed approach also gives the sum of Expected Monetary Value of all the risks, which is calculated in a proposed approach as Final Expected Monetary Value.

430 Conclusion The proposed paper presents the risk quantification approach for internal as well as external risks in RMC plants. The information is gathered through the interviews and discussion with the team of key personnel working in RMC plants at Mumbai, Navi Mumbai, Noida, Bangalore, and Pune in India. A checklist of risk is generated as an outcome of this study. Subjective Ratings for both, probability of occurrence and consequences were also gathered from the same teams for screening the risks having substantial influence on objective of a company running RMC plants. Risk quantification approach proposed in this paper, using EMV is a simple and effective tool to quantify risks in terms of cost. The system can be used to find - - Range within which the individual risk (in terms of cost) may vary - Range within which the total risks in RMC plant (in terms of cost) may vary - Expected monetary value of the risks in RMC plant The approach can be used by the RMC plant owners for deciding upon risk response strategies. It can be used fairly for decision making at the starting point of every RMC manufacturing and supply contract. It helps in identifying the high risk areas which need to be controlled and monitored for the achievement of objectives RMC business in terms of cost. This approach can be made suitable for incorporating and implementing with a computer aided decision support system, provided precise data is made available. References [1] Ashley,D.B., Construction project Risks: Mitigation and Management, Proc.,PMI/Internet Joint Symp., Project Management Institute, Drexel Hill, Pa., 1981,pp [2] Ammar Ahmed., Berman,K., Sataporn A., A review of techniques for risk management in projects, Benchmarking: An International Journal, Volume 14,No.1,2007,pp.22-36, [3] Akintoye, A., Project risk management practice: The case of a South African utility company, International Journal of Project Management, Vol. 26, 2008, pp [4] Boodman, D. M. Risk Management and Risk Management Science: An overview, Paper presented at the Session of Risk Management, TIMS 23 rd. Annual Meeting of Institute of Management Sciences, 1977,Greece. [5] Baloi D. and Andrew, D.F., Modeling global risk factors affecting construction cost performance, International journal of project management,vol.21, 2003, pp [6] Carbone T.A. and Tippett D.D., Project Risk Management Using the Project Risk FMEA, Engineering Management journal, Volume 16, No. 4, 2004,pp [7] Faber, W., Protecting giant projects: study of problems and solutions in the area of risk and insurance, Wills Faber, London, England [8] Hertz, D.B., and Thomas, H Risk analysis and its application, John Wiley and Sons,Inc., New York,1983. [9] [10] / jobs / language / english / search / job / / 12 / 29 /2005 risk mgmt. [11] Hillson David (a) Extending the risk process to managing opportunities, International Journal of project management. Vol.20,2000, pp [12] Hillson. D.(b), Use a Risk Breakdown Structure (RBS) To Understand Your Risks, Proceedings of the Project Management Institute Annual Seminars and Symposium, October2002, pp 3-10, San Antonio, Texas, USA [13] Indian Standard , Bureau of Indian Standard, New Delhi. [14] Johnson, J. and Rood, O. E., Elements of a fair and equitable profit determination for construction contract negotiations, Draft Report CERL,1977. [15] Jamal, F. AL-Bahar. and Keith C. C., Systematic Risk Management Approach for Construction Projects, Journal of Construction Engineering and Management, Vol. 116, No. 3, September, 1990, pp [16] Lifson, M.W. and Shaifer E. F. Jr. Decision and Risk Analysis For Construction Management, John Wiley and Sons, Inc., New York, [17] Mason, G. E., A quantitative risk management approach to selection of construction contract provisions, Technical Report no 173, Construction Institute, Dept. of Civil Engg., Stanford Uni.,Stanford, Calif., [18] Molenaar, K. R., Framework for Measuring Corporate Safety Culture and Its Impact on Construction Safety Performance, Journal of Construction Engineering and Management, June, 2009, pp [19] National Ready Mix Concrete Association: http// [20] Osama Ahmed Jannadi and Salman Almshari, Risk assessment in Construction, Annual Journal of Construction Engineering and Management, ASCE, Sept.- Oct, 2003, pp [21] PMBOK, A Guide to the project Management body of knowledge, Project Management Institute, [22] Royer P.S, Risk Management: The undiscovered Dimension of Project Management, PM Network, Volume.14, edition, 2000, pp.31-40, [23] Thevendran Vicknayson and Mawdesley M.J, Perception of human risk factors in construction projects. An exploratory study, International Journal of Project Management Vol.22, 2004,pp

431 408 [24] Zia, H., Risk management for overseas construction projects, International journal of Project Management, Vol.13, No. 4, 1995, pp First Author R.C.Walke is has done his bachelors in Civil Engineering and Masters in Engineering Constructions and Management. He is pursuing Ph.D.in the area of Risk Management. He was in civil Engineering Industry for seven years before coming to academics. At present he is working as an Assistant Professor in Fr. C. Rodrigues Institute of Management Studies, University of Mumbai, India. His areas of Interest are Project Management, Risk Management and Supply Chain Management. Second Author Prof. Dr. Vinay Topkar is a Head of Civil and Environmental Engineering Department in V.J.T.I., University of Mumbai, India. He has worked as Dean- Academics in V.J.T.I. and his areas of research interest are Project Management and Decision Sciences Third Author Dr. Sajal Kabiraj is a Professor of Operations and Supply Chain Management in FCRIMS, University of Mumbai, India. Sajal is a Post Doctoral Fellow, PhD, MS, MBA, Bachelors in Chemical Engineering. He obtained his PhD from Indian Institute of Information Technology & Management, Gwalior, India (An Apex Govt of India Institute) and Masters in International Logistics and Supply Chain Management from Jonkoping International Business School, Sweden. He is the recipient of Best Teacher Award 2008 for teaching and research excellence amongst all universities and business schools in India. He has published numerous papers in refereed international journals and has taught at the post graduate and doctoral levels in universities in Sweden, Germany, Austria, Malaysia, Canada, China, UAE and India. He is also a registered PhD supervisor and examiner. His areas of research interest are Business Analytics, CRM and International Business.

432 409 Rule Based Machine Translation of Noun Phrases from Punjabi to English Kamaljeet Kaur Batra 1 and G S Lehal 2 1 Dept. of Comp Sc. & IT, DAV College, Amritsar, Punjab, India 2 Dept of Comp Sc & Engg., Punjabi University, Patiala, Punjab, India Abstract The paper presents automatic translation of noun phrases from Punjabi to English using transfer approach. The system has analysis, translation and synthesis component. The steps involved are pre processing, tagging, ambiguity resolution, translation and synthesis of words in target language. The accuracy is calculated for each step and the overall accuracy of the system is calculated to be about 85% for a particular type of noun phrases. Keywords: Tagger, Ambiguity resolver, Transliteration 1 Introduction Machine Translation (MT), also known as automatic translation or mechanical translation, is the name for computerized methods that automate all or part of the process of translating from one human language to another.[2] Machine Translation is the need of the hour. It helps in bridging the digital divide and is an important technology for globalization. The mechanization of translation has been one of humanity s oldest dreams. The work is done to convert a noun phrase from Punjabi to English. 2 Approach followed The transfer architecture not only translates at the lexical level, like the direct architecture, but syntactically and sometimes semantically. The transfer method will first parse the sentence of the source language. It then applies rules that map the grammatical segments of the source sentence to a representation in the target language. The rules, which are used for the structural transformation of phrase, for solving the ambiguity problem, all are stored in the database. The indirect approach, first of all, divides a phrase into words, tags each word using morph database, resolves ambiguity, translates each word using bilingual dictionary, and then synthesize the translated words using rules of English language. 3 Steps followed for translation 3.1 Pre processing Since the phrases are taken from number of sentences, there are different types of phrases, Pre processing module change the phrase to a particular format so that it can be translated with more accuracy. Eg System only works for simple noun phrases and if a phrase is either complex or compound, it is divided into two or more simple phrases. The structure of simple phrase is limited to a particular format. The above said part of Pre processor is manual and not automated. The automated part of pre-processor performs the following tasks Identifying Collocations It combines the adjoining words from the sentence to a single word by checking them from the database created of joined words. Some of the noun phrases also contain words that can be joined and represents a single equivalent in English. Eg ipqw ji (pita ji), mwqw ji (mata ji), these words have a single equivalent as father and mother Identifying Named Entities In certain cases named entities can be recognized by their preceeding words which can be sri, srdwr, srdwrni, srimqi, kumwri in the input phrase.

433 410 sri rmysl cwvlw (shri ramesh chawla), srdwr hrpriq ismg (sardar harpreet singh)these named entities will then be send to transliteration module. 3.2 Tokenization The output of pre processor is then send to the tokenizer which divides the given phrase on the basis of spaces between them into constituents called tokens which are then passed to further phases. 3.3 Morph Analyzing and Tagging The next step is to tag each word with the grammatical information about it. In Punjabi grammar, the parts of speech for noun phrase include noun, pronoun, adjective, preposition, conjunction etc. Tag contains the information about grammatical category of word, gender, number, person and the case in which it can be used. The information is stored in the morph database. Tag can be arranged in the form grammatical category -gender-personnumber-case. The fields not applicable to a particular category are left blank. E.g. Tags for the word Brw (Bhra) are n-m- -s-d, n-m- -p-d. The above tag for the word shows that it can be used as noun with masculine gender, singular as well as plural and in direct case. The complete information for the tags is available from the morph database. In Punjabi, a word can have number of tags as a particular word can be used in number of ways. The tagger first checks the category of each word from the database and then adds Gender, Number, Person or Case information to it. [6,7] For example, in case of nouns person information is not in use whereas for personal pronouns person information is used. 3.4 Ambiguity Resolution The rules considering the tags for surrounding words are used for resolving ambiguities at different levels. Before the step of ambiguity resolution, each word is attached with number of tags. Since a particular word may have number of tags, there is need to check which tag is applicable to a particular word in a sentence, for example a word present in a noun phrase of Punjabi can be tagged with a noun as well as an adjective tag. For this purpose, there is need to apply certain rules depending upon the grammatical category of preceding or succeeding words. These rules should be prioritized. First level of ambiguity exists when a particular word can have number of tags of different grammatical category. The rules should check the grammatical category for the surrounding words so that it can conclude the tag of that particular word. Eg. Consider the two noun phrases jvwn mumfw (javan munda) and the phrase swry jvwn (sarey javan). In the first phrase, jvwn is an adjective followed by a noun and its English equivalent is young whereas in the second phrase, it is a noun preceded by an adjective which should be translated as soldier. Second level of ambiguity that has been resolved is,when there are number of tags that shows a particular word as noun, but can be used as singular or plural. as tags for the word bmdy(bandey) are nm- -s-o and n-m- -p-d. The tagged word can be noun in singular or a noun in plural. Eg. In the phrase, bhuq swry bmdyy (bahut sarey bandey). In this case we should select the tag n-m- - p-d and its appropriate word in English is men,whereas in the phrase moty bmdy ny (mote bandey ne), the tag for bmdy(bandey)should be nm- -s-o and its appropriate meaning is man. Such type of ambiguity can be resolved by considering the number ie. Singular or plural of the sentence in which the phrase should be used. Similarly the ambiguity related with the number and gender for demonstrative pronouns is resolved by considering the gender and number for the sentence. 3.5 Translation using Bilingual dictionary Next step in translation is the use of a bilingual dictionary to translate each word in Punjabi to its English equivalent. There are certain words used in Punjabi language which are of English origin,as skul, ticr, fwktr etc. Such words should be written as it is. 3.6 Transliteration of Proper nouns While translating each word using the dictionary, there are certain out of vocabulary words such as names of persons, names of cities etc., these all are proper nouns, and these should be passed to the transliteration module. Also there are certain words which are recognised at the preprocessing phase as names of persons, those should also be transliterated. Transliteration means to write them sensing the characters in the words e.g. mnjiq in Punjabi is transliterated in English as manjeet, m for m, n for n, j for j, ee for I, t for q. This transliteration process uses a database of transliterating characters and also certain rules to insert vowels wherever needed.

434 Synthesis After getting English equivalent of each word in Punjabi sentence, it should be synthesized to the phrase in English. Since the order of occurrence of words is different in target language than the source language, the approach used while synthesis is indirect approach, so certain rules have been build to synthesize the phrases to target language. These rules of language are also stored in the rule base of English. 4 Tools used in Translation 4.1 The Punjabi Morphological Analyzer Morphological analysis is the identification of a stem-form from a full word- form.. For example, the analyzer must be able to interpret the root form of mumfy as mumfw and the its GNP(Gender- Number-Person) information A Punjabi morph analyzer developed at Advanced centre for technical development of Punjabi language is being used for analyzing the exact grammatical structure of the word. The morph database used in the system includes, the information about every word in Punjabi, with the information about its gender, number, person, case, tense etc. Every inflected word also contains the root word from where it is derived. The database contains more than one lakh words from which 63,000 are the inflected nouns which are derived from about 18,000 root nouns. The database contains the grammatical category of each word and also the inflected words it can form. From this database, the tagger gets the information and tag each word of the phrase. 4.2 The Punjabi- English Dictionary phrase rules etc. The knowledge base contains the rules for resolving the ambiguity of number of grammatical categories of words on the basis of type of surrounding words. Rules, not only check the grammatical category, but also number, gender or person in some cases. Rule base also contains the information about its synthesis, that while it is of same order or different. All the rules in the database are arranged according to priority. Phrase Rules are represented as context free grammar. Since these are recursive in nature, the number of rules is not very large, but in some cases, priorities are set depending upon the type of phrases for which the system is being made. 5 Architecture of a Machine Translation System This section outlines the overall architecture of the Punjabi to English MT system for noun phrases. The system is based on the transfer approach, with three main components: an analyzer, a transfer component, and a generation component. The analysis component which assigns tags to the input phrases by means of Punjabi grammatical rules. The transfer component builds target language equivalents of the source language grammatical structures by means of a comparative grammar that relates every source language representation to some corresponding target language representation. The generation component which provides the target language translation.[2,13] Punjabi Noun Phrase Pre Processor Morph analyzer Analysis Component Tagger Dictionaries are the largest components of a MT system in terms of the amount of information they hold. If they are more than simple word lists, the size and quality of the dictionary limits the scope and coverage of a system, and the quality of translation that can be expected. The dictionary contains the English equivalent of all the Punjabi words. The dictionary is combined with the morph database and used for the translation of words of Punjabi Phrase. There are more than one lac words in the dictionary and it is being upgraded. Morph database Rule base of English Rule base of Punjabi Punjabi English Dictionary Translation Component Transliteration Or Translation of words 4.3 Rule Base The rule base is a database consisting of the structural transformation rules, ambiguity rules, English Noun Phrase Generation Component Synthesizer Fig 1 Architecture of the System

435 412 Fig 1 shows the block diagram for the architecture of a Punjabi to English Machine Translation System. In the figure, the rectangle shows the step followed while translation and the oval shows the databases and knowledge bases used. 6 Example Consider a Punjabi Noun Phrase [3] R.M.K. Sinha and Anil Thakur, Divergence Patterns in Machine Translation between Hindi and English, 10th Machine Translation summit (MT Summit X), Phuket, Thailand, September 13-15, (2005), [4] Aniket Dalal, Kumara Nagaraj, Uma Sawant,Sandeep Shelke and Pushpak Bhattacharyya, Building Feature Rich POS Tagger for Morphologically Rich Languages, ICON 2007, Hyderabad, India, Jan, swry dysl dy jvwn After Tagging swry (iaj-m- - -) dysl(n-m-s- -d,n-m-p-d) dy(ipo ) jvwn(n-m-s- d-, n-m-p- -d,iaj-b- - -) Here there are two tags for jvwn ie inflected adjective and noun, but according to the rules, it is considered as noun with plural as there is no succeeding noun and the adjective signifies the plural. After resolving ambiguity, the tagged words are the translated and combined into target phrase. swry dy jvwn dysl iaj n ipo n all soldiers of country 7 Training and Testing After training the system with about 2000 phrases, testing is performed with new 500 sentences and and accuracy at different levels are calculated. The first phase which resolves the ambiguity for different grammatical category and assigns tag to each word in a sentence was found to have approximately 75.54% accuracy. Overall accuracy of translation is 85.33%. In case of translation, the output phrase is considered correct, even if the translated equivalent may not be grammatically very correct, but signifies the true meaning of the Punjabi phrase. References [1] R.M.K. Sinha and Ajay Jain, AnglaHindi:An English to Hindi Machine Translation System, MT Summit IX, New Orleans, USA, Sept.23-27, [2] S. Dave, J. Parikh and P. Bhattacharyaa. Interlinguabased English-Hindi Machine Translation and Language Divergence. Machine Translation 16(4) (2001) [5]Akshar Bharati, Vineet Chaitanya, Amba P. Kulkarni, Rajeev Sangal Anusaaraka: Overcoming the Language Barrier in India. (informal publication) Electronic Edition (link) BibTeX [cs.cl/ ] [6] Computational Paninian Grammar for Dependency Parsing Dipti Misra Sharma,LTRC, IIIT,Hyderabad, NLP Winter School [7] Akshar Bharati, Rajeev Sangal: Parsing Free Word Order Languages in the Paninian Framework. ACL 1993: [8] Akshar Bharati, Rajeev Sangal: A Karaka Based Approach to Parsing of Indian Languages. COLING 1990: [9] R M K Sinha, Some thoughts on computer processing of natural Hindi.. Annual convention of Computer Society of India, 1978, pp [10] Shachi Dave and P Bhattacharya Knowledge Extraction from Hindi Text, Journal of institution of Electronic and Telecommunication Engineers Vol.18, No.4 July [11] Vartika Bhandari, R M K Sinha and Ajai Jain, Disambiguation of Phrasal Verb Occurrence for Machine Translation, Proc. Symposium on Translation Support Systems (STRANS2002), Kanpur, India, March 15-17, [12] R M K Sinha, A Sanskrit based Word-expert model for machine translation among Indian languages., Proc of workshop on Computer Processing of Asian Languages, Asian Institute of Technology, Bangkok, Thailand, Sept.26-28, 1989, pp [13] R M K Sinha, R & D on Machine Aided Translation at IIT Kanpur: ANGLABHARTI and ANUBHARTI Approaches., Invited paper at Convention of Computer Society of India, (CSI.96), Banglore, [14] R M K Sinha, Correcting ill-formed Hindi sentences in machine translated output. Proceedings of Natural Language Processing Pacific Rim Symposium (NLPRS.93), Fukuoka, Japan, 1993, pp

436 413 [15] R Jain, R M K Sinha, A Jain, Translation between English and Indian Languages, Journal of Computer Science and Informatics, March 1997, pp [16] R M K Sinha and others, ANGLABHARTI: A Multilingual Machine Aided Translation Project on Translation from English to Hindi., IEEE International Conference on systems, Man and Cybernetics,Vancouver, Canada, 1995, pp [17] R.M.K. Sinha and Anil Thakur, Synthesizing Verb Form in English to Hindi Translation: Case of mapping Infinitive and Gerund in English to Hindi, Proceedings of International Symposium on Machine Translation, NLP and Translation Support System(iSTRANS-2004), November 17-19,2004, Tata Mc Graw Hill, New Delhi, pp:52-55 [18] Smriti Singh, Mrugank Dalal, Vishal Vachani, Pushpak Bhattacharya and Om Damani, Hindi Generation from Interlingua, Machine Translation Summit (MTS 07), Copenhagen, September, [19] Debasri Chakrabarti, Gajanan Rane and Pushpak Bhattacharyya, Creation of English and Hindi Verb Hierarchies and their Application to English Hindi MT, International Conference on Global Wordnet (GWC 04), Brno, Czeck Republic, January, 2004.

437 414 A Study Of Image Segmentation Algorithms For Different Types Of Images Krishna Kant Singh 1, Akansha Singh 2 1 Deptt. Of Electronics & Communication Hermes Engineering College Roorkee, India 2 Deptt. Of Information Technology, AKGEC Ghaziabad, India Abstract In computer vision, segmentation refers to the process of partitioning a digital image into multiple segments (sets of pixels, also known as superpixels).image segmentation is typically used to locate objects and boundaries (lines, curves, etc.) in images. More precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain visual characteristics.the result of image segmentation is a set of segments that collectively cover the entire image, or a set of contours extracted from the image (see edge detection). Each of the pixels in a region are similar with respect to some characteristic or computed property, such as color, intensity, or texture.due to the importance of image segmentation a number of algorithms have been proposed but based on the image that is inputted the algorithm should be chosen to get the best results. In this paper the author gives a study of the various algorithms that are available for color images,text and gray scale images. Keywords: image segmentation, region growing, marker 1. Introduction All image processing operations generally aim at a better recognition of objects of interest, i. e., at finding suitable local features that can be distinguished from other objects and from the background. The next step is to check each individual pixel to see whether it belongs to an object of interest or not. This operation is called segmentation and produces a binary image. A pixel has the value one if it belongs to the object; otherwise it is zero. Segmentation is the operation at the threshold between low-level image processing and image analysis. After segmentation, it is known that which pixel belongs to which object. The image is parted into regions and we know the discontinuities as the boundaries between the regions. The different types of segmentations are Pixel-Based Segmentation: Point-based or pixel-based segmentation is conceptually the simplest approach used for segmentation. Edge-Based Segmentation: Even with perfect illumination, pixel based segmentation results in a bias of the size of segmented objects when the objects show variations in their gray values.darker objects will become too small, brighter objects too large. The size variations result from the fact that the gray values at the edge of an object change only gradually from the background to the object value. No bias in the size occurs if we take the mean of the object and the background gray values as the threshold. However, this approach is only possible if all objects show the same gray value or if we apply different thresholds for each objects.an edgebased segmentation approach can be used to avoid a bias in the size of the segmented object without using a complex thresholding scheme. Edge-based segmentation is based on the fact that the position of an edge is given by an extreme of the first-order derivative or a zero crossing in the second-order derivative.

438 415 Region-based methods focus attention on an important aspect of the segmentation process missed with point-based techniques. There a pixel is classified as an object pixel judging solely on its gray value independently of the context. This meant that isolated points or small areas could be classified as object pixels, disregarding the fact that an important characteristic of an object is its connectivity.if we use not the original image but a feature image for the segmentation process, the features represent not a single pixel but a small neighborhood, depending on the mask sizes of the operators used. At the edges of the objects, however, where the mask includes pixels from both the object and the background, any feature that could be useful cannot be computed. The correct procedure would be to limit the mask size at the edge to points of either the object or the background. But how can this be achieved if we can only distinguish the object and the background after computation of the feature? Obviously, this problem cannot be solved in one step, but only iteratively using a procedure in which feature computation and segmentation are performed alternately. In the first step, the features are computed disregarding any object boundaries. Then a preliminary segmentation is performed and the features are computed again, now using the segmentation results to limit the masks of the neighborhood operations at the object edges to either the object or the background pixels, depending on the location of the center pixel. To improve the results, feature computation and segmentation can be repeated until the procedure converges into a stable result. Model-Based Segmentation : All segmentation techniques discussed so far utilize only local information. The human vision system has the ability to recognize objects even if they are not completely represented. It is obvious that the information that can be gathered from local neighborhood operators is not sufficient to perform this task. Instead specific knowledge about the geometrical shape of the objects is required, which can then be compared with the local information. This train of thought leads to model-based segmentation. It can be applied if we know the exact shape of the objects contained in the image. 2. Color Image Segmentation algorithm The human eyes have adjustability for the brightness, which we can only identified dozens of gray-scale at any point of complex image, but can identify thousands of colors. In many cases, only utilize gray-level information can not extract the target from background; we must by means of color information. Accordingly, with the rapidly improvement of computer processing capabilities, the color image processing is being more and more concerned by people [8]. The color image segmentation is also widely used in many multimedia applications, for example; in order to effectively scan large numbers of images and video data in digital libraries, they all need to be compiled directory, sorting and storage, the color and texture are two most important features of information retrieval based on its content in the images and video. Therefore, the color and texture segmentation often used for indexing and management of data; another example of multimedia applications is the dissemination of information in the network [9]. Today, a large number of multimedia data streams sent on the Internet, However, due to the bandwidth limitations; we need to compress the data, and therefore it calls for image and video segmentation. 2.1 Seed Region Growing Algorithm And Watershed Algorithm The basic idea of region growing method is a collection of pixels with similar properties to form a region. The steps are as follows: (i) find a seed pixel as a starting point for each of needed segmentation. (ii) Merge the same or similar property of pixel (Based on a pre-determined growing or similar formula to determine) with the seed pixel around the seed pixel domain into the domain of seed pixel. (iii) These new pixels act as a new seed pixel to continue the above process until no more pixels that satisfy the condition can be included. The seed region growing algorithm is proposed by Adams and Bischof, Metmert and Jackway further described the dependency relationship between pixels in the seed growth: (i) The first order of dependence occurs when the number of pixels has the same difference ratio as their vicinity. (ii) The second order of dependence occurs when a pixels has the same difference ratio as their vicinity

439 416 Frank and Shouxian Cheng applied the automatic seed selection method, they selected seed which can represents needed segmentation region based on certain similarity criteria and proposed a strategy to solve the above two pixels dependence [3,14]. The watershed algorithm is more representative in the application of mathematical morphology theory for image segmentation. Watershed algorithm is a regionbased segmentation techniques image that uses image morphology [4]. Watershed algorithm is an iterative adaptive threshold algorithm. The idea of watershed algorithm is from geography, it see gradient magnitude image as a topographic map, the gradient magnitude in correspond with altitude, the different gradient in correspond with the peak and basin in valley in the image. It sees every object of image (including background) as a separate part nd requested there must have one tag at least in the each object (or seed points). Marker is knowledge about the object based on application-oriented; it is selected by the operator manually or by automatic process. The objects can use watershed algorithm to transform and develop regional growth after maker. 3. Gray-scale Image Segmentation The segmentation of image raster data into connected regions of common gray-scale has long been seen as a basic operation in image analysis. In texture analysis, just this type of segmentation is possible after individual pixels in an image have been labelled with a numberic classifier. In preparing images for used in geographic information systems (GIs) this segmentation is usually followed by the production of a vector representation for each region. The original algorithm fbr segmentation, developed by Rosenfeld-pfaltz, described a two pass 'sequential algorithm' for the segmentation of binary images. The key feature of the Rosenfeld-pfaltz algorithm is that the image is raster-scanned, first the forward direction, fiom top left to bottom right, then backwards. During the fwward pass, each pixel is located a region label, based on information scanned through; the regions so demarcated may have pixels with more than one label therein.during the backwards pass, a unique label is assigned to each pixel. Hence this classic algorithm can be described as a twepass algorithm. In a previous paper Cohen [6] presented a one-pass algorithm was presented fbr the segmentation of gray-scale images. Cohen's single pass algorithm proceeds to label pixels on a forward pass, exactly as in Rosenfeld-Phltz, except that during the same forward pass, a look-up-table is prepared, that reveals the connectivity of pixels that have different labels. For most purposes, the labelling of the pixels found the first pass, combined with the look-up-table, provides a complete segmentation, but to actually output an image with unique pixel labels in each region, a pass through the image using the look-up table is required. A new parallel region segmenting and labelling algorithm is available, that is applicable to gray-scale images, and is appropriate to coarse scale parallel programminmg. The key feature of this algorithm is the geometric splitting of the image into rectagular blocks, with one pixel overlap at joins. Then using Cohen's one pass algorithm, each region is separately labelled. Then by examination of the ovalap regions, the connectivity of diffaent region labels is determined, through connectivity tables, and finally the overall image is completely segmented into connected domains of common gray-scale. The parallelisable algorithm for the segmentation of gray-scale images involves involves performing the one-pass algorithm on rectangular sub-images, with a a single row or column overlap. What is thus produced is a label for each image pixel, together with a connectivity LUT for each region. Then, fiom the overlap rows and columns produce overlap tables, showing how labels in each region are related. 4. Text Segmentation : It is well known that text extraction, including text detection, localization, segmentation and recognition is very important for video auto-understanding. In this paper, we only discuss text segmentation, which is to separate text pixels from complex background in the sub-images from videos. Text segmentation in video images is much more difficult than that in scanning images. Scanning images generally has clean and white background, while video images often have very complex background without prior knowledge about the text color.although there have been several successful systems of video text extraction, few researchers specially study text segmentation in video images deeply. The used strategies could be classified into two main categories: (1) difference (or top-down) and (2) similarity based (or bottom-up) methods. The first methods are based on the foregroundbackground contrast. For example, fixed threshold value method [2], Otsu s adaptive thresholding method [3], global & local

440 417 thresholding method [4], Niblack s method [5] and improved Niblack method [6], et al. In general, they are simple and fast, but fail when foreground and background are similar. Alternatively, the similarity based methods cluster pixels with similar intensities together. For example, Lienhart uses the split & merge algorithm [7], Wang et al. combine edge detection, watershed transform and clustering [8]. However, these methods are unstable, since they exploit many intuitive rules about text shape. As an alternative, Chen et al. convert text pixel clustering to labeling problem using Gibbsian EM algorithm [9]. This method is effective but too time consuming. The main problem of most existing methods is that they are sensitive to text color, size, font and background clutter, since they simply exploit either general segmentation method or some prior knowledge. To overcome these problems a new algorithm based on stroke filter is available which discovers the intrinsic characteristics of text and design a robust algorithm specially for text segmentation. In this algorithm stroke filter (SF), describes the intrinsic characteristics of text in terms of scale, orientation and response, a stroke feature based text polarity determination method is available and local region growing method for segmentation refinement based on stroke features and global & local statistic similarities. 5. Conclusion Image segmentation has become a very important task in today s scenario. In the present day world computer vision has become an interdisciplinary field and its applications can be found in any area be it medical, remote sensing, electronics and so on. Thus, to find a appropriate segmentation algorithm based on your application and the type of inputted image is very important. In this paper the author has explained and suggested a few application specific segmentation algorithm which also take into consideration the type of image inputted like color, gray scale and text. References [l] A. Rosenfeld and D. pfaltz, Sequential operatons in Digital Picture Processing J.A.C.M. (1966) EN0 4 pp [2] Bergmann, E.V., B.K. Walker, and B.K. Levy, The Research on Stereo Matching Algorithm based on Region-growth. Journal of Guidance, Control, and Dynamics, (5): p [3] Bergmann, E. and J. Dzielski, computer vision and image undwestanding Dynamics, (1): p [4] Tanygin, S. image dense stereo matching by technique of region growing,.journal of Guidance, Control, and Dynamics, (4): p [5] Lee, A.Y. and J.A. Wertz, Harris operator is used to improve the exact position of point feature, (1): p [6] Palimaka, J. and $B.V. burlton, fast computation of matching value for binocular stereo vision. 1992: Hilton Head Island. p About The Authors K.K.Singh is currently working as Assistant Professor in ECE department of Hermes Engineering college. He holds B.Tech (EI) and M.Tech (VLSI) degree. He has more than five years of teaching experience. He has published a number of popular text books including Digital Communications, VLSI Technology, Automatic Control Systems, Mobile Computing, Digital Image Processing, Network Analysis and Synthesis and IT Infrastructure management. He has also presented and published a number of papers in national/international journals/conferences. His areas of specialization are Digital Communications, VLSI Technology, Automatic Control Systems, Networks and many more. Akansha Singh is currently working as Assistant Professor in IT department of AKGEC, Ghaziabad. She holds B.Tech (CS) and M.Tech (CS) honors degree. She has several years of teaching experience. She has published a number of popular text books including Web Technology, IT Infrastructure Management, Mobile Computing, Digital Image Processing, Network Analysis and synthesis. She has also presented and published a number of papers in national/international journals/conferences. Her areas of specialization are Web Technology, Mobile Computing, Digital Image Processing and many more.

441 418 Software Architecture, Scenario and Patterns R.V. Siva Balan 1, Dr. M. Punithavalli 2 1 Department of Computer Applications, Narayanaguru College of Engineering, kanyakumari, India. 2 Director & Head Department of Computer Applications, Sri Ramakrishna College of Arts and Science for women, Coimbatore, India. Abstract The software engineering projects [22, 23] reveals that a large number of usability related change requests are made after its deployment. Fixing usability problems during the later stages of development often proves to be costly, since many of the necessary changes require changes to the system that cannot be easily accommodated by its software architectural design. This costs high for the practitioners and prevents the developers from finding all the usability requirements, resulting in systems with less than ideal usability. The successful development of a usable software system therefore must include creating a software architecture that supports the optimal level of usability. Unfortunately, no architectural design usability assessment techniques exist. To support software architects in creating a software architecture that supports usability, practicing a scenario based assessment technique that leads to successful application of pattern specification is undergone. Explicit evaluation of usability during architectural design may reduce the risk of building a system that fails to meet its usability requirements and may prevent high costs incurring adaptive maintenance activities once the system has been implemented. Keywords: use-case, patterns, usability, scenarios, patterns specifications 1. Introduction Scenarios have been gaining increasing popularity in both Human Computer Interaction (HCI) and Software Engineering (SE) as engines of design. In HCI scenarios are used to focus discussion on usability [3] issues.they support discussion to gain an understanding of the goals of the design and help to set overall design objectives. In contrast, scenarios play a more direct role in SE, particularly as a front end to object oriented design. Use case driven approaches have proved useful for requirements elicitation and validation. The aim of use cases in Requirements Engineering is to capture systems requirements. This is done through the exploration and selection of system user interactions to provide the needed facilities. A use case is a description of one or more end to end transactions involving the required system and its environment. The basic idea is to specify use cases [8] that cover all possible pathways through the system functions. The concept of use case was originally proposed in Objectory [8] but has recently been integrated in a number of other approaches including the Fusion method and the Unified Modeling Language [7]. In the software design area, the concept of design patterns has been receiving considerable attention. The basic idea is to offer a body of empirical design information that has proven itself and that can be used during new design efforts. In order to aid in communicating design information, design patterns focus on descriptions that communicate the reasons for design decisions, not just the results. It includes descriptions of not only what but also why. Given the attractiveness and popularity of the patterns approach, a natural question for RE is: How can requirements guide a patterns-based approach to design? A systematic approach to organizing, analyzing, and refining nonfunctional requirements can provide much support for the structuring, understanding, and applying of design patterns during design. 2. Software architecture The challenge in software development is to develop software with the right quality levels. The problem is not so much to know if a project is technically feasible concerning functions required, but instead if a solution exists that meets the software quality requirements, such as throughput and maintainability. Traditionally the qualities of the developed software have, at best, been evaluated on the finished system before delivering to the customer. The obvious risks of having spent much effort on developing a system that eventually did not meet the quality requirements have been hard to manage. Changing the design of the system would likely mean rebuilding the system from scratch to the same cost. The result from the software architecture design activity is a software

442 419 architecture. But, the description of that software architecture is far from trivial. A reason is that it is hard to decide what information is needed to describe software architecture, and hence, it is very hard to find an optimal description technique. In the paper by Perry and Wolf [2] the foundations for the study of software architecture define software architecture as follows: Software Architecture = {Elements, Form, Rationale} Thus, software architecture is a triplet of (1) the elements present in the construction of the software system, (2) the form of these elements as rules for how the elements may be related, and (3) the rationale for why elements and the form were chosen. This definition has been the basis for other researchers, but it has also received some critique for the third item in the triplet. In [15] the authors acknowledge that the rationale is indeed important, but is in no way part of the software architecture. The basis for their objection is that when we accept that all software systems have inherent software architecture, even though it has not been explicitly designed to have one, the architecture can be recovered. However, the rationale is the line of reasoning and motivations for the design decisions made by the design, and to recover the rationale we would have to seek information not coded into software. Software system design consists of the activities needed to specify a solution to one or more problems, such that a balance in fulfillment of the requirements is achieved. A software architecture design method implies the definition of two things. (i) A process or procedure for going about the included tasks. (ii) A description of the results or type of results to be reached when employing the method. From the software architecture point-of-view, the first of the aforementioned two, includes the activities of specifying the components and their interfaces, the relationships between components, and making design decisions and document the results to be used in detail design and implementation. The second is concerned with the definition of the results, i.e. what is a component and how is it described. The traditional object-oriented design methods, e.g. (OMT [12], Booch [6], Objectory [8]) has been successful in their adoption by companies worldwide. Over the past few years the three aforementioned have jointly produced a unified modeling language (UML) [7] that has been adopted as de facto standard for documenting object-oriented designs. 3. Scenarios Scenarios serve as abstractions of the most important requirements on the system. Scenarios play two critical roles, i.e. design driver, and validation/illustration. Scenarios are used to find key abstractions and conceptual entities for the different views, or to validate the architecture against the predicted usage. The scenario view should be made up of a small subset of important scenarios. The scenarios should be selected based on criticality and risk. Each scenario has an associated script, i.e. sequence of interactions between objects and between processes [13]. Scripts are used for the validation of the other views and failure to define a script for a scenario discloses an insufficient architecture. Fig View model design method The 4+1 View Model presented in [17] was developed to rid the problem of software architecture representation. Five concurrent views (Fig. 1) are used; each view addresses concerns of interest to different stakeholders. On each view, the Perry/Wolf definition [2] is applied independently. Each view is described using its own representation, a so called blueprint. The fifth view (+1) is a list of scenarios that drives the design method. 4. Usability concerns The work in this paper is motivated by the fact that this also applies to usability. Usability is increasingly recognized as an important consideration during software development; however, many well-known software products suffer from usability issues that cannot be repaired without major changes to the software architecture of these products. This is a problem for software development because it is very expensive to ensure a particular level of usability after the system has been implemented. Studies [21, 22] confirm that a significant large part of the maintenance costs of software systems is spent on dealing with usability issues. These high costs can be explained because some usability requirements will

443 420 not be discovered until the software has been implemented or deployed. 5. Patterns Software engineers have a tendency to repeat their successful designs in new projects and avoid using the less successful designs again. In fact, these different styles of designing software systems could be common for several different unrelated software engineers. This has been observed in [18] where a number of systems were studied and common solutions to similar design problems were documented as design patterns. The design and use of explicitly defined software architecture has received increasing amounts of attention during the last decade. Generally, three arguments for defining an architecture are used [14]. First, it provides an artifact that allows discussion by the stakeholders very early in the design process. Second, it allows for early assessment of quality attributes [29,25]. Finally, the design decisions captured in the software architecture can be transferred to other systems. Our work focuses on the second aspect: early assessment of usability. Most engineering disciplines provide techniques and methods that allow one to assess and test quality attributes of the system under design. For example for maintainability assessment code metrics [23] have been developed. In [3] an overview is provided of usability evaluation techniques that can be used during software development. Some of the more popular techniques such as user testing [9], heuristic evaluation [10] and cognitive walkthroughs [1] can be used during several stages of development. Unfortunately, no usability assessment techniques exist that focus on assessment of software architectures. Without such techniques, architects may run the risk of designing a software architecture that fails to meet its usability requirements. To address to this problem we have defined a scenario based assessment technique (SALUTA). Fig. 2 Usability Framework The concept has been successful and today most software engineers in are aware of design patterns. The concept has been used for software architecture as well. First by describing software architecture styles [16] and then by describing software architecture patterns [5] in a form similar to the design patterns. The difference between software architecture styles and software architecture patterns have been extensively debated. Two major viewpoints are; styles and patterns are equivalent, i.e. either could easily be written as the other, and the other view point is, they are significantly different since styles are a categorization of systems and patterns are general solutions to common problems. Either way styles/patterns make up a common vocabulary. It also gives software engineers support in finding a well-proven solution in certain design situations. The Software Architecture Analysis Method (SAAM) [20] was among the first to address the assessment of software architectures using scenarios. SAAM is stakeholder centric and does not focus on a specific quality attribute. From SAAM, ATAM [19] has evolved. ATAM also uses scenarios for identifying important quality attribute requirements for the system. Like SAAM, ATAM does not focus on a single quality attribute but rather on identifying tradeoffs between quality attributes. SALUTA can be integrated into these existing techniques. 6. Pattern Specifications Pattern Specifications (PSs) [25, 26] are a way of formalizing the structural and behavioral features of a pattern. The notation for PSs is based on the Unified Modeling Language (UML) [26]. A Pattern Specification describes a pattern of structure or behavior and is defined in terms of roles. A PS can be instantiated by assigning modeling elements to play these roles. The abstract syntax of UML is defined by a UML metamodel. A role is a UML metaclass specialized by additional properties that any element fulfilling the role must possess. Hence, a role

444 421 specifies a subset of the instances of the UML metaclass. A PS can be instantiated by assigning UMLmodel elements to the roles in the PS. A model conforms to a pattern specification if its model elements that play the roles of the pattern specification satisfy the properties defined by the roles. Pattern specifications can be defined to show static structure or dynamic behavior. Here we concern with specifications of behavior but it should be noted that any class roles participating in pattern specifications must be defined in a Static Pattern Specification (SPS), which is the PS equivalent of a class diagram. be hidden. This has advantages for requirements engineers not trained in state-based techniques. An Interaction Pattern Specification defines a pattern of interactions between its participants. It consists of a number of lifeline roles and message roles which are specializations of the UML metaclasses Lifeline and Message respectively. The IPS in Fig. 4 formalizes the Observer pattern. Role names are preceded by a vertical bar to denote that they are roles. Fig. 3 Pattern Specification Process Model Fig. 4 Conforming Sequence Diagram An IPS can be instantiated by assigning concrete modeling elements to the roles. 7. Functional and non-functional patterns Non-functional requirements (NFRs) are pervasive in descriptions of design patterns. They play a crucial role in understanding the problem being addressed, the tradeoffs discussed, and the design solution proposed. However, since design patterns are mostly expressed as informal text, the structure of the design reasoning is not systematically organized. In particular, during the design phase, much of the quality aspects of a system are determined. Systems qualities are often expressed as non-functional requirements, also called quality attributes e.g. [28,29]. These are requirements such as reliability, usability, maintainability, cost, development time, and are crucial for system success. Yet they are difficult to deal with since they are hard to quantify, and often interact in competing, or synergistic ways. Each lifeline role is associated with a classifier role, a specialization of a UML classifier. Fig. 4 shows an example of an IPS and a conforming sequence diagram. The separation of specification concerns are maintained at the state machine level with composition of the functional need and nonfunctional need of requirements from the scenario level, the state machines need never be seen by the requirements engineer. Composition is specified purely in terms of scenario relationships and the composed state machine of the execution of the requirement and cancellation that are generated can Fig. 5 Non-functional patterns as Requirements During design such quality requirements appear in design tradeoffs when designers need to decide upon particular structural or behavioral aspects of the system. Applying a design pattern may be understood as transforming the system from one stage of

445 422 development to the next. A good design needs the identification of architectural design decisions that improve usability, such as identification of usability patterns [29]. 8. Conclusion Use cases are a popular requirements modeling technique, yet people often struggle when writing them. They understand the basic concepts of use cases, but find that actually writing useful ones turns out to be harder than one would expect. One factor contributing to this difficulty is that we lack objective criteria to help judge their quality. Many people find it difficult to articulate the qualities of an effective use case. We have identified approximately threedozen patterns that people can use to evaluate their use cases. We have based these patterns on the observable signs of quality that successful projects tend to exhibit. Construction guidance is based on use case model knowledge and takes the form of rules which encapsulate knowledge about types of action dependency, relationships between actions and flow conditions, properties of objects and agents, etc. Based on this knowledge rules, help discovering incomplete expressions, missing elements, exceptional cases and episodes in the use case specification through pattern specification. They support the progressive integration of scenarios into a complete use case specification. References [1] C. Wharton, J. Rieman, C. H. Lewis, and P. G. Polson, The Cognitive Walkthrough: A practitioner's guide., in Usability Inspection Methods, Nielsen, Jacob and Mack, R. L., John Wiley and Sons, New York, NY., [2] D.E. Perry, A.L.Wolf, Foundations for the Study of Software Architecture, Software Engineering Notes, Vol. 17, No. 4, pp , October [3] E. Folmer and J. Bosch, Architecting for usability; a survey, Journal of systems and software, Elsevier, 2002, pp [4] F. Buschmann, R. Meunier, H. Rohnert, M.Stahl, Pattern-Oriented Software Architecture - A System of Patterns, John Wiley & Sons, [5] F. Buschmann, R. Meunier, H. Rohnert, M.Stahl, Pattern-Oriented Software Architecture - A System of Patterns, John Wiley & Sons, [6] G. Booch, Object-Oriented Analysis and Design with Applications (2nd edition), Benjamin/Cummings Publishing Company, [7] G. Booch, J. Rumbaugh, I. Jacobson, The Unified Modeling Language User Guide, Object Technology Series, Addison-Wesley, October [8] I. Jacobson, et. al., Objectoriented software engineering. A use case approach, Addison- Wesley, [9] J. Nielsen, Heuristic Evaluation., in Usability Inspection Methods., Nielsen, J. and Mack, R. L., John Wiley and Sons, New York, NY., [10] J. Nielsen, Usability Engineering, Academic Press, Inc, Boston, MA., [11] J. Bosch, Design and use of Software Architectures: Adopting and evolving a product line approach, Pearson Education (Addison-Wesley and ACM Press), Harlow, [12] J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen, Object-oriented modeling and design, Prentice Hall, [13] K. Rubin, A. Goldberg, Object Behaviour Analysis, Communications of ACM, September 1992, pp [14] L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, Addison Wesley Longman, Reading MA, [15] L. Bass, P. Clements, R. Kazman, Software Architecture in Practice, Addison Wesley,1998. [16] M. Shaw, D. Garlan, Software Architecture - Perspectives on an Emerging Discipline, Prentice Hall, [17] P.B. Kruchten, The 4+1 View Model of Architecture, IEEE Software, pp , November [18] R. Gamma et. al., Design Patterns Elements of Reusable Design, Addison.Wesley, [19] R. Kazman, M. Klein, M. Barbacci, T. Longstaff, H. Lipson, and J. Carriere, The Architecture Tradeoff Analysis Method, Proceedings of ICECCS'98, [20] R. Kazman, G. Abowd, and M. Webb, SAAM: A Method for Analyzing the Properties of Software Architectures, Proceedings of the 16th International Conference on Software Engineering, [21] R. S. Pressman, Software Engineering: A Practitioner's Approach, McGraw-Hill, NY,1992. [22] T. K. Landauer, The Trouble with Computers: Usefulness, Usability and Productivity., MIT Press., Cambridge, [23] W. Li and S. Henry, OO Metrics that Predict Maintainability, Journal

446 423 of systems and software, Elsevier, 1993, pp [24] R. France, D. Kim, S. Ghosh and E. Song, A UMLBased Pattern Specification Technique, IEEE Transactions on Software Engineering, Vol. 30(3), [25] D. Kim, R. France, S. Ghosh and E. Song, A UMLBased Metamodeling Language to Specify Design Patterns, Proceedings of Workshop on Software Model Engineering (WiSME), at UML 2003, San Francisco, [26] Unified Modeling Language Specification, version 2.0 January 2004, In OMG, [15] J. Warmer and A. Kleppe, The Object Constraint Language: Getting Your Models Ready for MDA, 2 nd Edition, Addison-Wesley, [27]Boehm BW. Characteristics of software quality. North-Holland Pub. Co., Amsterdam New York [28]Bowen TP. Wigle GB. Tsai JT. Specification of software quality attributes (Report RADC-TR-85-37). Rome Air Development Center, Griffiss Air Force Base NY [29] Architecting for usability; a survey, Prof. Dr.M.Punithavalli is currently the Director & Head of Department of Computer Applications, Sri Ramakrishna College of Arts and Science for women, Coimbatore, India. She is actively working as the Adjunct Professor in the department of Computer Applications of Ramakrishna Engineering College, India. Lect. R.V.SivaBalan is currently working as the Lecturer in the Department of Computer Applications, Narayanaguru College of Engineering, India. He is a research scholar in Anna University Coimbatore, India.

447 424 Efficient 2.45 GHz Rectenna Design with high Harmonic Rejection for Wireless Power Transmission Zied Harouni 1, Lotfi Osman 1 and Ali Gharsallah 1 1 Department de physique, Faculté des sciences de Tunis, Laboratoire d'electronique El Manar,2092, Tunisia Abstract The purpose of this work is to propose an efficient microstrip rectenna operating on ISM band with high harmonic rejection. The receiving antenna with proximity coupled feeding line implemented in a multilayer substrate. The rectenna with integrated circular sector antenna can eliminate the need for an low pass filter (LPF) placed between the antenna and the diode as well as produce higher output power, with maximum conversion efficiency of 74% using a 1300 Ω load resistor at a power density of 0.3 mw/cm². Keywords: WPT, Rectenna, Rectifying circuit, Proximity coupled antenna, Defect ground structure. 1. Introduction Rectifying antenna (rectenna) which can convert RF energy to DC power plays an important role in free space wireless power transmission (WPT). Over the last century, the development of rectenna for space solar power transmission (SSPT) [1] as well as WPT [2] had great achievement with specific functions; and the applications e.g., actuator [3] or wireless sensors [4]. The typical rectenna in the prior literatures [5] [7] basically consists of four elements: antenna, low pass filter (LPF), diodes, and DC pass capacitor. The initial development of rectenna focuses on its directivity and efficiency for great power reception and conversion, hence, large array [8] was usually adopted for microwave power reception. Afterward, many functions were added to enhance the performance of the rectenna array, such as arbitrary polarization [9], dual-polarization [10], CP [11], and dual band [12]. Besides, for the antenna integrated with nonlinear circuits, such as diodes and FETs, it is well known that harmonics of the fundamental frequency would be generated. The unwanted harmonics cause problems of harmonics re-radiation and efficiency reduction of rectenna; then the LPF is required to suppress harmonics to improve system performance and prevent harmonics interference. For size reduction and cost down, the antenna with harmonic rejection property was proposed to eliminate LPF [13]. In this paper, a microstrip rectenna with harmonic rejection property is proposed it shown in figure 1. Feeding line Figure 1. Proposed rectenna with harmonic rejection 2. Antenna design Antenna (2 nd harmonic rejection) h2 h1 DGS (3 nd harmonic rejection) Feeding line and Rectifying circuit Ground DGS Via Rectifying circuit Diode Via Antenna V out C Via Via Tmm4 The rectangular radiating patch is printed on the side of the first substrate while the microstrip feed line is on the upper side of the second substrate, the ground plane, and the dumbbell shape slot, are on lower side of the second substrate. The relative permittivities and the thickness are ε r1 =2.2, ε r2 =4.5, h 1 =1.575 mm and h 2 =1.524 mm. We should emphasize that the value of ε r1 has been chosen small to enhance the patch radiation. Similarly, the R L Duroïd 5880

448 425 quantity ε r2 has been chosen so high to reduce the size of microstrip feed line compared to the radiating element. The line is dimensioned for 50Ω characteristic impedance and a bandwidth of mm. The length and width of the patch are 34.2 mm and 34.9 mm respectively, which are dimensioned to resonate at 2.45GHz frequency. The slot in the ground plane, whose dimensions are given on the Figure 2. The electromagnetic energy is coupled from the microstrip feed line to the patch, the slot avoid a frequency stop band. (a) 50Ω 50Ω e1 e2 e4 e3 Fig. 1 S-parameters and side view of the DGS used to reduce the third harmonic in the proposed design, e1=0.255mm, e2= 2. 95mm, e3=2.1mm, e4=2.84mm The use of a DGS allows the apparition of a stop band controlled by tuning the dimensions of the slot. The S parameter result of the DGS is shown in figure 2. (b) Fig. 3 Field distribution (V/m) at 4.9 GHz (a) and 7.35 GHz (b). Figure 3 shows the current distribution at 4.9 GHz and 7.35 GHz 3. Rectenna measurements The receiving antenna and rectifying are connected by SMA connectors as shown in Fig. 4. It contains a linearly polarised patch antenna designed at 2.45 GHz by using HFSS software[14]. The rectenna contains one HSMS2860 commercial Schottky diodes in a SOT23 package. The zero bias junction capacitance Cj0 is 0.18 pf and the series resistance Rs is 5 V. Fig. 2 Simulated and Measured reflection coefficient versus frequency. The measured return loss impedance bandwidth is about 2.6% for a 6.4 db gain at 2.45GHz operating frequency. It can be noted that the mismatches at the harmonics frequencies 4.9GHz and 7.35GHz are db and db respectively. Fig. 4 Photograph of the proposed rectenna The experiments have been carried out in anechoic chamber. The transmitting antenna is a standard linear polarized horn with gain Gt of 12 db. The rectenna is located at the distance r of 70 cm, which is the far region

449 426 of the horn. The output DC voltage and overall efficiency have been measured against power density from the Friss transmission equation(1). 2 Pr PG t tgr (1) 4r where Pt is the transmitting power; Gr is the receiving antenna gain; is the free space wavelength at 2.45 GHz. So the RF-DC conversion efficiency is calculated by formula (2). V R out 2 L r (2) Pr The rectenna is illuminated by a linearly polarised incident plane wave of 20 V/m (0.10 mw/cm²) at its broadside. On the transmitter side, we have used a 30 db gain power amplifier at 2.45 GHz connected to a signal generator. The output DC voltage across the resistor load has been measured by a voltmeter. DC voltage (V) Efficiency (%) 3 2,5 2 1,5 1 0,5 0 0,01 0,03 0,06 0,09 0,12 0,15 0,18 0,21 0,24 0,27 0,3 Power density (mw/cm²) ,01 0,03 0,06 0,09 0,12 0,15 0,18 0,21 0,24 0,27 0,3 Power density (mw/cm²) Fig. 5 Measured DC voltages and rectenna efficiency against power density The measured output DC voltages and overall efficiency are shown in Fig. 5. In the power density range (0 0.3 mw/cm²), the measured rectenna efficiency is above 74% from 0.3 mw/cm² power density and the corresponding output DC voltage is 2.9 V over a 1300 Ω optimised load resistance. The measured results show that the output voltage and efficiency increase when the power density increases. In applications, the antenna and rectifying circuit can be integrated directly on one substrate by omitting SMA connectors. Without the loss of SMAs, the efficiency would be higher. 4. Conclusion An efficient rectenna design, based on a series diode circuit topology is proposed. An optimised length of the feeding line and defect groud structure are used to reject the second and the third harmonics. No input low pass filter is needed, thus reducing the insertion losses and the dimensions of the circuit. The rectifying circuit has been optimised at 2.45 GHz for an input power of 10 dbm. The rectenna exhibits a measured efficiency of 74 % at 0.3 mw/cm² power density and an output DC voltage of 2.9 V. 5. Acknowledgment We thank D. Delcroix and the Esycom laboratory of University of Marne-La-Vallée in Paris. References [1] P. E. Glaser, An overview of the solar power satellite option, IEEE Trans. Microw. Theory Tech., vol. 40, no. 6, pp , Jun [2] W. C. Brown, The history of power transmission by radio waves, IEEE Trans. Microw. Theory Tech., vol. 32, no. 9, pp , Sep [3] Epp, L.W., Khan, A.R., Smith, H.K., and Smith, R.P.: A compact dualpolarized 8.51-GHz rectenna for high-voltage (50 V) actuator applications, IEEE Trans. Microw. Theory Tech., 2000, 48, (1), pp [4] Farinholt, K.M., Park, G., and Farrar, C.R.: RF energy transmission for a low-power wireless impedance sensor node, IEEE Sensors J., 2009, 9,(7), pp [5] H. Takhedmit, L. Cirio, B. Merabet, B. Allard, F. Costa, C. Vollaire and O. PiconEfficient 2.45 GHz rectenna design including harmonic rejecting rectifier device, Electronics letters 10th June 2010 Vol. 46 No. 12

450 427 [6] Tzong-Chee Yo, Chien-Ming Lee, Chen-Ming Hsu, and Ching-Hsing Luo, Compact Circularly Polarized Rectenna With Unbalanced Circular Slots, IEEE TRANSACTIONS ON ANTENNAS AND PROPAGATION, VOL. 56, NO. 3, MARCH 2008 Since 1991, he was with the Department of Physics at the Faculty of Sciences, Tunis. His current research interests include antennas, multilayered structures and microwave integrated circuits. [7] M. Ali, G. Yang, and R. Dougal, Miniature Circularly Polarized Rectenna With Reduced Out-of-Band Harmonics, IEEE antennas and wireless propagation letters, vol. 5, 2006 [8] R. M. Dickinson, Performance of a high-power, GHz receiving array in wireless power transmission over 1.54 km, in IEEE MTT-SInt. Microw. Symp. Dig., Jun. 1976, vol. 76, no. 1, pp [9] J. A. Hagerty and Z. Popovic, An experimental and theoretical characterization of a broadband arbitrarilypolarized rectenna array, in MTT-S Int. IEEE Microw. Symp. Dig., May 20 25, 2001, vol. 3, pp [10] J. O. McSpadden and K. Chang, A dual polarized circular patch rectifying antenna at 2.45 GHz for microwave power conversion and detection, in IEEE MTT-S Int. Microw. Symp. Dig., May 1994, vol. 3, pp [11] Y.-Y. Gao, X.-X. Yang, C. Jiang, and J.-Y. Zhou, A circularly polarized rectenna with low profile for wireless power transmission, Progress In Electromagnetics Research Letters, Vol. 13, 4-49, 2010 [12] Y. H. Suh and K. Chang, A high-efficiency dualfrequency rectenna for and 5.8-GHz wireless power transmission, IEEE Trans. Microw. Theory Tech., vol. 50, no. 7, pp , Jul [13] Ji-Yong Park, Sang-Min Han,Tatsuo Itoh, A Rectenna Design With Harmonic-Rejecting Circular-Sector Antenna, IEEE Antennas and wireless propagation letters, vol. 3, [13] ANSOFT CORPORATIONS, HFSS V.11- Software based on the finite element method. Zied Harouni was born in France in 1980, he received his master s degree in electronic from the Faculty of Sciences of Tunis, Tunisia, in 2006, where he prepare his PhD degree. His research interests microwave transmission power. Lotfi Osman he received his PhD degree, He is currently working at the Ecole supérieur de telecommunication de Tunis. His research interests antennas and modelling in microwave integrated circuits. Ali Gharsallah Professor in the faculty of Sciences of Tunis, he received the engineering s degree in radio-electrical from the Ecole Supérieure de Telecommunication de Tunis in 1986 and the PhD degree in 1994 from the Ecole National d Ingénieurs de Tunis.

451 IJCSI CALL FOR PAPERS JANUARY 2011 ISSUE Volume 8, Issue 1 The topics suggested by this issue can be discussed in term of concepts, surveys, state of the art, research, standards, implementations, running experiments, applications, and industrial case studies. Authors are invited to submit complete unpublished papers, which are not under review in any other conference or journal in the following, but not limited to, topic areas. See authors guide for manuscript preparation and submission guidelines. Accepted papers will be published online and indexed by Google Scholar, Cornell s University Library, DBLP, ScientificCommons, CiteSeerX, Bielefeld Academic Search Engine (BASE), SCIRUS, EBSCO, ProQuest and more. Deadline: 05 th December 2010 Notification: 10 th January 2011 Revision: 20 th January 2011 Online Publication: 31 st January 2011 Evolutionary computation Industrial systems Evolutionary computation Autonomic and autonomous systems Bio-technologies Knowledge data systems Mobile and distance education Intelligent techniques, logics, and systems Knowledge processing Information technologies Internet and web technologies Digital information processing Cognitive science and knowledge agent-based systems Mobility and multimedia systems Systems performance Networking and telecommunications Software development and deployment Knowledge virtualization Systems and networks on the chip Context-aware systems Networking technologies Security in network, systems, and applications Knowledge for global defense Information Systems [IS] IPv6 Today - Technology and deployment Modeling Optimization Complexity Natural Language Processing Speech Synthesis Data Mining For more topics, please see All submitted papers will be judged based on their quality by the technical committee and reviewers. Papers that describe on-going research and experimentation are encouraged. All paper submissions will be handled electronically and detailed instructions on submission procedure are available on IJCSI website (). For more information, please visit the journal website ()

452 IJCSI PUBLICATION 2010

453 IJCSI The International Journal of Computer Science Issues (IJCSI) is a well established and notable venue for publishing high quality research papers as recognized by various universities and international professional bodies. IJCSI is a refereed open access international journal for publishing scientific papers in all areas of computer science research. The purpose of establishing IJCSI is to provide assistance in the development of science, fast operative publication and storage of materials and results of scientific researches and representation of the scientific conception of the society. It also provides a venue for researchers, students and professionals to submit ongoing research and developments in these areas. Authors are encouraged to contribute to the journal by submitting articles that illustrate new research results, projects, surveying works and industrial experiences that describe significant advances in field of computer science. Indexing of IJCSI 1. Google Scholar 2. Bielefeld Academic Search Engine (BASE) 3. CiteSeerX 4. SCIRUS 5. Docstoc 6. Scribd 7. Cornell's University Library 8. SciRate 9. ScientificCommons 10. DBLP 11. EBSCO 12. ProQuest IJCSI PUBLICATION

International Journal of Computer Science Issues

International Journal of Computer Science Issues International Journal of Computer Science Issues Security Systems and Technologies Volume 2, August 2009 ISSN (Online): 1694-0784 ISSN (Printed): 1694-0814 IJCSI PUBLICATION www.ijcsi.org IJCSI proceedings

More information

International Journal of Computer Science Issues

International Journal of Computer Science Issues IJCSI International Journal of Computer Science Issues Volume 8, Issue 5, No 1, September 2011 IJCSI PUBLICATION www.ijcsi.org IJCSI proceedings are currently indexed by: IJCSI PUBLICATION 2011 www.ijcsi.org

More information

National Institute of Technology Patna DEPARTMENT OF MECHANICAL ENGINEERING

National Institute of Technology Patna DEPARTMENT OF MECHANICAL ENGINEERING National Institute of Technology Patna DEPARTMENT OF MECHANICAL ENGINEERING Global Conference on Renewable Energy (GCRE-2015) 19-21 October, 2015 In today s scenario Renewable Energy sector is growing

More information

Universities- East. Universities- West

Universities- East. Universities- West Introduction This booklet provides examples of recognition of Cambridge International Examinations qualifications in universities and colleges in India. Cambridge International A and AS Levels, Cambridge

More information

Keywords: Information Retrieval, Vector Space Model, Database, Similarity Measure, Genetic Algorithm.

Keywords: Information Retrieval, Vector Space Model, Database, Similarity Measure, Genetic Algorithm. Volume 3, Issue 8, August 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Effective Information

More information

Carnegie Mellon University Office of International Education Admissions Statistics for Summer and Fall 2015

Carnegie Mellon University Office of International Education Admissions Statistics for Summer and Fall 2015 Carnegie Mellon University Admissions Statistics for and Fall 2015 New International Students and Fall 2015 Undergraduate 344 15.2% Master's 1599 70.6% Doctorate 167 7.4% Exchange 73 3.2% 81 3.6% Total

More information

ICSES Journal on Image Processing and Pattern Recognition (IJIPPR), Aug. 2015, Vol. 1, No. 1

ICSES Journal on Image Processing and Pattern Recognition (IJIPPR), Aug. 2015, Vol. 1, No. 1 2 ICSES Journal on Image Processing and Pattern Recognition (IJIPPR), Aug. 2015, Vol. 1, No. 1 1. About ICSES Journal on Image Processing and Pattern Recognition (IJIPPR) The ICSES Journal on Image Processing

More information

3RC TIMES ENGINEERING RANKING SURVEY 2015 - METHODOLOGY

3RC TIMES ENGINEERING RANKING SURVEY 2015 - METHODOLOGY 3RC TIMES ENGINEERING RANKING SURVEY 2015 - METHODOLOGY The objective of this research was to arrive at a list of top engineering institutes in India. The study had two major modules i.e. Perceptual Rating

More information

The International journal of Software Engineering & Applications (IJSEA) ISSN: 0975-9018 (Online); 0976-2221 (Print) SCOPE OF THE JOURNAL The International journal of Software Engineering & Applications

More information

ACM Survey on PhD Production in India for Computer Science and Information Technology

ACM Survey on PhD Production in India for Computer Science and Information Technology ACM Survey on Production in India for Computer Science and Information 2012 2013 Pankaj Jalote Director and Professor, IIIT Delhi The purpose of this study is to collect reasonably reliable data on production

More information

Carnegie Mellon University Office of International Education Admissions Statistics for Summer and Fall 2013

Carnegie Mellon University Office of International Education Admissions Statistics for Summer and Fall 2013 Carnegie Mellon University Admissions Statistics for and Fall 2013 New International Students and Fall 2012 Undergraduate 270 14.3% Master's 1301 68.7% Doctorate 192 10.1% Exchange 99 5.2% 31 1.6% Total

More information

World Consumer Income and Expenditure Patterns

World Consumer Income and Expenditure Patterns World Consumer Income and Expenditure Patterns 2014 14th edi tion Euromonitor International Ltd. 60-61 Britton Street, EC1M 5UX TableTypeID: 30010; ITtableID: 22914 Income Algeria Income Algeria Income

More information

Science and Engineering Research Board (A Statutory body under Department of Science & Technology, Government of India) (ITS Section)

Science and Engineering Research Board (A Statutory body under Department of Science & Technology, Government of India) (ITS Section) Science and Research Board (A Statutory body under Department of Science &, Government of India) (ITS Section) The International Travel Support Scheme (ITS) Committee considered the applications of the

More information

College of Information Technology Faculty Members

College of Information Technology Faculty Members College of Information Technology Faculty Members 1. Hessa Jassim Al-Junaid, Assistant Professor, PhD, 2006, University of Southampton, MSc, 2001, University of Bahrain, BSc, 1996, University of Bahrain,

More information

Sulfuric Acid 2013 World Market Outlook and Forecast up to 2017

Sulfuric Acid 2013 World Market Outlook and Forecast up to 2017 Brochure More information from http://www.researchandmarkets.com/reports/2547547/ Sulfuric Acid 2013 World Market Outlook and Forecast up to 2017 Description: Sulfuric Acid 2013 World Market Outlook and

More information

Global Access Information. Conferencing

Global Access Information. Conferencing Conferencing Global Access Information Global Access allows audio conferencing participants the ability to join calls from around the globe using local and freephone dial-in numbers. Dialing Information

More information

Editorial for Summer Edition

Editorial for Summer Edition Editorial for Summer Edition of the SOCIETAS ET IURISPRUDENTIA 2015 Dear readers and friends, let me introduce the second issue of the third volume of SOCIETAS ET IURISPRUDENTIA, an international scientific

More information

UGC Human Resource Development Centre Jawaharlal Nehru University, New Delhi

UGC Human Resource Development Centre Jawaharlal Nehru University, New Delhi Course coordinator: Dr. Rakesh Batabyal, Centre for Media Studies, School of Social Sciences, JNU Email: [email protected], [email protected] 1. Summary UGC Human Resource Development Centre Jawaharlal

More information

Carnegie Mellon University Office of International Education Admissions Statistics for Summer and Fall 2010

Carnegie Mellon University Office of International Education Admissions Statistics for Summer and Fall 2010 Carnegie Mellon University Admissions Statistics for and Fall 2010 New International Students and Fall 2010 Undergraduate 208 16.1% Master's 799 61.7% Doctorate 177 13.7% Exchange 80 6.2% 31 2.4% Total

More information

Selected Students for Rass Capital, MBA 2014 Batch, on 2 nd December, 2013. S. No Name Branch Result. 1 Amit Sinha MBA Selected

Selected Students for Rass Capital, MBA 2014 Batch, on 2 nd December, 2013. S. No Name Branch Result. 1 Amit Sinha MBA Selected Selected Students for Rass Capital, MBA 2014 Batch, on 2 nd December, 2013. S. No Name Branch Result 1 Amit Sinha MBA Selected 2 Anand Kumar Singh MBA Selected 3 Anubhav Tiwari MBA Selected 4 Deepak Kumar

More information

JoSAA 2016 : Course wise vacancy status after round 2 seat acceptance

JoSAA 2016 : Course wise vacancy status after round 2 seat acceptance JoSAA 2016 : Course wise vacancy status after round 2 seat acceptance S. No. itute Name Br Branch Name 1 101 Indian itute of Technology Bhubaneswar 4109 Civil Engineering 40 40 0 0 2 101 Indian itute of

More information

Contact Centers Worldwide

Contact Centers Worldwide A Contact Centers Worldwide Country Tel.no. Supported lang. Contact Center Albania Algeria 852 665 00 +46 10 71 66160 Angola 89900 +34 91 339 2121 (Port) and Portuguese +34 913394044 +34 913394023 (Por)

More information

Overall Ranking of Top Engineering Colleges

Overall Ranking of Top Engineering Colleges Overall Ranking of Top Engineering Colleges Ranking of Top Engineering Colleges in India Ranking of Top Torch Bearer Engineering Colleges of India 1 Indian Institute of Technology, Kharagpur, West Bengal

More information

Low Voltage Complementary Metal Oxide Semiconductor Based Internet of Things Enable Energy Efficient RAM Design on 40nm and 65nm FPGA

Low Voltage Complementary Metal Oxide Semiconductor Based Internet of Things Enable Energy Efficient RAM Design on 40nm and 65nm FPGA International Journal of Smart Home Vol. 9, No. 9 (21), pp. 37- http://dx.doi.org/1.1427/ijsh.21.9.9. Low Voltage Complementary Metal Oxide Semiconductor Based Internet of Things Enable Energy Efficient

More information

89% 96% 94% 100% 54% Williams 93% financial aid at Williams. completion statistics $44,753 76% class of 2013 average four-year debt: $12,749

89% 96% 94% 100% 54% Williams 93% financial aid at Williams. completion statistics $44,753 76% class of 2013 average four-year debt: $12,749 financial aid at Average - $, financial aid is comprehensive, covering books, health insurance, study abroad costs, travel, and personal expenses % % % % cost met by average % of with demonstrated need

More information

Appendix 1: Full Country Rankings

Appendix 1: Full Country Rankings Appendix 1: Full Country Rankings Below please find the complete rankings of all 75 markets considered in the analysis. Rankings are broken into overall rankings and subsector rankings. Overall Renewable

More information

Data Modeling & Bureau Scoring Experian for CreditChex

Data Modeling & Bureau Scoring Experian for CreditChex Data Modeling & Bureau Scoring Experian for CreditChex Karachi Nov. 29 th 2007 Experian Decision Analytics Credit Services Help clients with data and services to make business critical decisions in credit

More information

Cisco Global Cloud Index Supplement: Cloud Readiness Regional Details

Cisco Global Cloud Index Supplement: Cloud Readiness Regional Details White Paper Cisco Global Cloud Index Supplement: Cloud Readiness Regional Details What You Will Learn The Cisco Global Cloud Index is an ongoing effort to forecast the growth of global data center and

More information

COST Presentation. COST Office Brussels, 2013. ESF provides the COST Office through a European Commission contract

COST Presentation. COST Office Brussels, 2013. ESF provides the COST Office through a European Commission contract COST Presentation COST Office Brussels, 2013 COST is supported by the EU Framework Programme ESF provides the COST Office through a European Commission contract What is COST? COST is the oldest and widest

More information

Doctoral degrees in library and information science in India during 2003-2008: A study

Doctoral degrees in library and information science in India during 2003-2008: A study Annals of Library and Information Studies 262 ANN. LIB. INF. STU., DECEMBER 2009 Vol. 56, December 2009, pp. 262-266 Doctoral degrees in library and information science in India during 2003-2008: A study

More information

State-wise List of Directors (Health Services)

State-wise List of Directors (Health Services) State-wise List of Directors (Health Services) Name of State/UT Andaman and Nicobar Islands Andhra Pradesh Arunachal Pradesh Assam Bihar Chandigarh Chhattisgarh Contact Details of Dr. S.K. Paul, Port Blair,

More information

International Journal of Advanced Information Technology (IJAIT) ISSN : 2231-1548 [Online] ; 2231-1920 [Print]

International Journal of Advanced Information Technology (IJAIT) ISSN : 2231-1548 [Online] ; 2231-1920 [Print] International Journal of Advanced Information Technology (IJAIT) ISSN : 2231-1548 [Online] ; 2231-1920 [Print] SCOPE OF THE JOURNAL International journal of advanced Information technology (IJAIT) is a

More information

Composition of Premium in Life and Non-life Insurance Segments

Composition of Premium in Life and Non-life Insurance Segments 2012 2nd International Conference on Computer and Software Modeling (ICCSM 2012) IPCSIT vol. 54 (2012) (2012) IACSIT Press, Singapore DOI: 10.7763/IPCSIT.2012.V54.16 Composition of Premium in Life and

More information

Guidelines for verification of Genuineness of Educational Certificate

Guidelines for verification of Genuineness of Educational Certificate Guidelines for verification of Genuineness of Educational Certificate The applicant should come in person between 8 a.m. and 3.30 pm. to the IVS Global Services Private Limited located at the Business

More information

Top 15 Engineering Colleges Ranked by State

Top 15 Engineering Colleges Ranked by State Top 15 Engineering Colleges ed by State ANDHRA PRADESH 1 Jawaharlal Nehru Technological University Hyderabad College of Engineering, Hyderabad 2 K. L. University (Koneru Lakshmaiah Education Foundation),

More information

Make the invisible visible! SENSORS WITH EXCELLENT BACKGROUND SUPPRESSION

Make the invisible visible! SENSORS WITH EXCELLENT BACKGROUND SUPPRESSION Make the invisible visible! SENSORS WITH EXCELLENT BACKGROUND SUPPRESSION photoelectric sensors Thanks to its vision for innovation and technological enhancement, Contrinex keeps on setting new standards

More information

Global Network Access International Access Rates

Global Network Access International Access Rates Global Network Access International Access Rates We know that you need to communicate with your partners, colleagues and customers around the world. We make every effort to understand the difficulties

More information

SunGard Best Practice Guide

SunGard Best Practice Guide SunGard Best Practice Guide What Number Should I Use? www.intercalleurope.com Information Hotline 0871 7000 170 +44 (0)1452 546742 [email protected] Reservations 0870 043 4167 +44 (0)1452

More information

Percentile wise cut off list of CAT allied institutes

Percentile wise cut off list of CAT allied institutes Percentile wise cut off list of CAT allied institutes Institute Name Expected CAT %ile ACCMAN Institute of Management, Greater Noida 40 + APIIT Business School, Panipat 40 + Accurate Institute of Management

More information

Preliminary results of survey on public projects performed May - July 2014

Preliminary results of survey on public projects performed May - July 2014 DEC-212/7/D/HS4/1752, financed by the National Science Centre of Poland. Preliminary results of survey on public projects performed May - July 214 with kind support of PMI Government Community of Practice

More information

Schedule of Accreditation issued by United Kingdom Accreditation Service 21-47 High Street, Feltham, Middlesex, TW13 4UN, UK

Schedule of Accreditation issued by United Kingdom Accreditation Service 21-47 High Street, Feltham, Middlesex, TW13 4UN, UK Schedule of United Kingdom Service 21-47 High Street, Feltham, Middlesex, TW13 4UN, UK ISO/IEC 17021:2011 to provide environmental management systems certification Kitemark Court Davy Avenue Knowlhill

More information

Establishment of Multi-Disciplinary Research Units (MRUs) in Government Medical colleges /Research Institutions

Establishment of Multi-Disciplinary Research Units (MRUs) in Government Medical colleges /Research Institutions Establishment of Multi-Disciplinary Research Units (MRUs) in Government Medical colleges /Research Institutions This scheme has been approved to establish 80 Multidisciplinary Research Units (MRUs) in

More information

The International Baccalaureate

The International Baccalaureate The International Baccalaureate Guide to university recognition in India January, 2015 IB mission statement The International Baccalaureate aims to develop inquiring, knowledgeable and caring young people

More information

Enterprise Mobility Suite (EMS) Overview

Enterprise Mobility Suite (EMS) Overview Enterprise Mobility Suite (EMS) Overview Industry trends driving IT pressures Devices Apps Big data Cloud 52% of information workers across 17 countries report using 3+ devices for work Enable my employees

More information

JoSAA 2016 : Course wise vacancy status after round 3 seat acceptance

JoSAA 2016 : Course wise vacancy status after round 3 seat acceptance JoSAA 2016 : Course wise vacancy status after round 3 seat acceptance S. No. 1 101 Indian itute of Technology Bhubaneswar 4109 Civil Engineering 40 40 0 0 2 101 Indian itute of Technology Bhubaneswar 4110

More information

How To Find Out What Countries Do With Management System Certification

How To Find Out What Countries Do With Management System Certification PAULO SAMPAIO University of Minho, School of Engineering, Systems and Production Department Campus Gualtar 4710-057 Braga, Portugal [email protected] MANAGEMENT SYSTEMS: A GLOBAL PERSPECTIVE Summary

More information

RESUME. Dr. Rudra Prakash Maheshwari. Indian Institute of Technology Roorkee 247 667, India. 25th June, 1960

RESUME. Dr. Rudra Prakash Maheshwari. Indian Institute of Technology Roorkee 247 667, India. 25th June, 1960 RESUME DR. R. P. MAHESHWARI Department of Electrical Engineering Indian Institute of Technology Roorkee 247 667, India Phone: +91-1332-285596 (Off.) +91-1332-272611, 285116 (Res.) FAX: +91-1332-273560

More information

Cisco IOS Public-Key Infrastructure: Deployment Benefits and Features

Cisco IOS Public-Key Infrastructure: Deployment Benefits and Features Data Sheet Cisco IOS Public-Key Infrastructure: Deployment Benefits and Features Introduction to Public Key Infrastructure Public Key Infrastructure (PKI) offers a scalable method of securing networks,

More information

When was UNCITRAL established? And why?

When was UNCITRAL established? And why? The significance of technology neutrality in support of trade facilitation 6 June 2013 Jaesung Lee (Secretary of Working Group IV on Electronic Commerce) Ahreum Lee (Former Legal Officer) Secretariat Vienna,

More information

Enhanced Boosted Trees Technique for Customer Churn Prediction Model

Enhanced Boosted Trees Technique for Customer Churn Prediction Model IOSR Journal of Engineering (IOSRJEN) ISSN (e): 2250-3021, ISSN (p): 2278-8719 Vol. 04, Issue 03 (March. 2014), V5 PP 41-45 www.iosrjen.org Enhanced Boosted Trees Technique for Customer Churn Prediction

More information

2015 Country RepTrak The World s Most Reputable Countries

2015 Country RepTrak The World s Most Reputable Countries 2015 Country RepTrak The World s Most Reputable Countries July 2015 The World s View on Countries: An Online Study of the Reputation of 55 Countries RepTrak is a registered trademark of Reputation Institute.

More information

Doctor of Philosophy in Computer Science

Doctor of Philosophy in Computer Science Doctor of Philosophy in Computer Science Background/Rationale The program aims to develop computer scientists who are armed with methods, tools and techniques from both theoretical and systems aspects

More information

Cloud Computing for Agent-based Traffic Management Systems

Cloud Computing for Agent-based Traffic Management Systems Cloud Computing for Agent-based Traffic Management Systems Manoj A Patil Asst.Prof. IT Dept. Khyamling A Parane Asst.Prof. CSE Dept. D. Rajesh Asst.Prof. IT Dept. ABSTRACT Increased traffic congestion

More information

CALL for PARTICIPATION

CALL for PARTICIPATION CALL for PARTICIPATION In conjunction with PREMI 2013 IUPRAI Workshop on Big Data: A Soft Computing Perspective Date: 14.12.2013 Place: ISI, Kolkata The main challenges in handling Big Data lie not only

More information

The World Market for Medical, Surgical, or Laboratory Sterilizers: A 2013 Global Trade Perspective

The World Market for Medical, Surgical, or Laboratory Sterilizers: A 2013 Global Trade Perspective Brochure More information from http://www.researchandmarkets.com/reports/2389480/ The World Market for Medical, Surgical, or Laboratory Sterilizers: A 2013 Global Trade Perspective Description: This report

More information

C.V. Personal Information

C.V. Personal Information Personal Information C.V. Name : Mohammed Amoon Ahmed Sharaby. Place of birth : Menouf - Menoufia, Egypt. Date of birth : 9 / 2 / 1974. Specialization : Computer Science & Engineering Distributed Computing

More information

STAR VIDYA LOAN SCHEME. List of premier educational Institutions in Engineering, Medical, Law & Management spears covered under this scheme:

STAR VIDYA LOAN SCHEME. List of premier educational Institutions in Engineering, Medical, Law & Management spears covered under this scheme: STAR VIDYA LOAN SCHEME List of premier educational Institutions in Engineering, Medical, Law & Management spears covered under this scheme: Sr.No. Institutes under Vidya Loan Scheme LIST A (Max. loan amount

More information

National Conference on TIME SERIES, ANALYTICS & RECENT ADVANCES IN STATISTICAL MODELLING NCTAS - 2015

National Conference on TIME SERIES, ANALYTICS & RECENT ADVANCES IN STATISTICAL MODELLING NCTAS - 2015 National Conference on TIME SERIES, ANALYTICS & RECENT ADVANCES IN STATISTICAL MODELLING NCTAS - 2015 Under the theme of MODELLING THE PRESENT THROUGH PAST FOR FUTURE DEMANDS DURING 24 25 AUGUST 2015 VENUE:

More information

BIG DATA IN HEALTHCARE THE NEXT FRONTIER

BIG DATA IN HEALTHCARE THE NEXT FRONTIER BIG DATA IN HEALTHCARE THE NEXT FRONTIER Divyaa Krishna Sonnad 1, Dr. Jharna Majumdar 2 2 Dean R&D, Prof. and Head, 1,2 Dept of CSE (PG), Nitte Meenakshi Institute of Technology Abstract: The world of

More information

Brochure More information from http://www.researchandmarkets.com/reports/1339929/

Brochure More information from http://www.researchandmarkets.com/reports/1339929/ Brochure More information from http://www.researchandmarkets.com/reports/1339929/ The 2011 World Forecasts of Machine Tools That Remove Material by Laser or Light, Photon, Ultrasonic, Electro-Discharge,

More information

Logix5000 Clock Update Tool V2.00.36. 12/13/2005 Copyright 2005 Rockwell Automation Inc., All Rights Reserved. 1

Logix5000 Clock Update Tool V2.00.36. 12/13/2005 Copyright 2005 Rockwell Automation Inc., All Rights Reserved. 1 Logix5000 Clock Update Tool V2.00.36. 1 Overview Logix5000 Clock Update Tool 1. 1. What is is it? it? 2. 2. How will it it help me? 3. 3. How do do I I use it? it? 4. 4. When can I I get get it? it? 2

More information

PNB PRATIBHA- NEW EDUCATION LOAN SCHEME. *For students of IIMs/IITs/ NITs/ other premier institutes.

PNB PRATIBHA- NEW EDUCATION LOAN SCHEME. *For students of IIMs/IITs/ NITs/ other premier institutes. PNB PRATIBHA- NEW EDUCATION LOAN SCHEME *For students of IIMs/IITs/ NITs/ other premier institutes. *At 10.75% ROI for girl students and 11.25% for male students# Education loan Scheme for students of

More information

Global Education Office University of New Mexico MSC06 3850, Mesa Vista Hall, Rm. 2120 Tel. 505 277 4032, Fax 505 277 1867, geo@unm.

Global Education Office University of New Mexico MSC06 3850, Mesa Vista Hall, Rm. 2120 Tel. 505 277 4032, Fax 505 277 1867, geo@unm. Global Education Office University of New Mexico MSC06 3850, Mesa Vista Hall, Rm. 220 Tel. 505 277 4032, Fax 505 277 867, [email protected] Report on International Students, Scholars and Study Abroad Programs

More information

CISCO CONTENT SWITCHING MODULE SOFTWARE VERSION 4.1(1) FOR THE CISCO CATALYST 6500 SERIES SWITCH AND CISCO 7600 SERIES ROUTER

CISCO CONTENT SWITCHING MODULE SOFTWARE VERSION 4.1(1) FOR THE CISCO CATALYST 6500 SERIES SWITCH AND CISCO 7600 SERIES ROUTER PRODUCT BULLETIN NO. 2438 CISCO CONTENT SWITCHING MODULE SOFTWARE VERSION 4.1(1) FOR THE CISCO CATALYST 6500 SERIES SWITCH AND CISCO 7600 SERIES ROUTER NEW FEATURES New features of the Cisco Content Switching

More information

Curriculum Vitae. PhD (Computer Science) Course Work Completed University : Bharathiyar University, Tamilnadu, India

Curriculum Vitae. PhD (Computer Science) Course Work Completed University : Bharathiyar University, Tamilnadu, India Curriculum Vitae Sreekanth Rallapalli Senior Lecturer, Faculty of Computing, Botho University, Gabarone, Botswana, Africa E mail: [email protected] [email protected] PROFESSIONAL

More information

INTERNATIONAL OVERVIEW John Wilkinson SVP Sales & Products

INTERNATIONAL OVERVIEW John Wilkinson SVP Sales & Products INTERNATIONAL OVERVIEW John Wilkinson SVP Sales & Products DE- C I X N G N L A U N C H E V E N T 2 Introduction XConnect provides secure, managed ENUM Registries and SIP based peering services to enable

More information

41 T Korea, Rep. 52.3. 42 T Netherlands 51.4. 43 T Japan 51.1. 44 E Bulgaria 51.1. 45 T Argentina 50.8. 46 T Czech Republic 50.4. 47 T Greece 50.

41 T Korea, Rep. 52.3. 42 T Netherlands 51.4. 43 T Japan 51.1. 44 E Bulgaria 51.1. 45 T Argentina 50.8. 46 T Czech Republic 50.4. 47 T Greece 50. Overall Results Climate Change Performance Index 2012 Table 1 Rank Country Score** Partial Score Tendency Trend Level Policy 1* Rank Country Score** Partial Score Tendency Trend Level Policy 21 - Egypt***

More information

The big pay turnaround: Eurozone recovering, emerging markets falter in 2015

The big pay turnaround: Eurozone recovering, emerging markets falter in 2015 The big pay turnaround: Eurozone recovering, emerging markets falter in 2015 Global salary rises up compared to last year But workers in key emerging markets will experience real wage cuts Increase in

More information

Dr. Mohammad Amjad has obtained his B.Tech. in Computer Engineering from Aligarh Muslim University Aligarh, India in 1997 with first class.

Dr. Mohammad Amjad has obtained his B.Tech. in Computer Engineering from Aligarh Muslim University Aligarh, India in 1997 with first class. Dr. Mohammad Amjad has obtained his B.Tech. in Computer Engineering from Aligarh Muslim University Aligarh, India in 1997 with first class. He obtained his M.Tech. (Information Technology) degree from

More information

BT Premium Event Call and Web Rate Card

BT Premium Event Call and Web Rate Card BT Managed Event and BT Self-Managed Event (also referred to as Express, Plus and Premium) Conference Bridge and Call for Booked Audio Conferencing Services will comprise the following for each phone-conference:

More information

Name Qualification Designation Specialization Experience (in years)

Name Qualification Designation Specialization Experience (in years) Department of & Name Qualification Designation Specialization Experience (in years) BHANU KAPOOR SUDHIR MAHAJAN SUMEET DUA Master and Doctorate of from Southern Methodist University, Dallas, Texas. BE

More information

An Algorithm for Automatic Base Station Placement in Cellular Network Deployment

An Algorithm for Automatic Base Station Placement in Cellular Network Deployment An Algorithm for Automatic Base Station Placement in Cellular Network Deployment István Törős and Péter Fazekas High Speed Networks Laboratory Dept. of Telecommunications, Budapest University of Technology

More information

Dividends Tax: Summary of withholding tax rates per South African Double Taxation Agreements currently in force Version: 2 Updated: 2012-05-22

Dividends Tax: Summary of withholding tax rates per South African Double Taxation Agreements currently in force Version: 2 Updated: 2012-05-22 Dividends Tax: Summary of withholding tax rates per South African Double Taxation Agreements currently in force Version: 2 Updated: 2012-05-22 Note: A summary of the rates and the relevant provisions relating

More information

Building on +60 GW of experience. Track record as of 31 December 2013

Building on +60 GW of experience. Track record as of 31 December 2013 Building on +60 GW of experience Track record as of 31 December 2013 Can data and analysis make a difference on turbine performance? Proven technology. For Vestas, it is more than a saying it is something

More information

International Journal of Computer Science, Engineering and Information Technology(IJCSEIT)

International Journal of Computer Science, Engineering and Information Technology(IJCSEIT) International Journal of Computer Science, Engineering and Information Technology(IJCSEIT) ISSN: 2231-3117 [Online] ; 2231-3605 [Print] SCOPE OF THE JOURNAL International Journal of Computer Science, Engineering

More information

Global Effective Tax Rates

Global Effective Tax Rates www.pwc.com/us/nes Global s Global s April 14, 2011 This document has been prepared pursuant to an engagement between PwC and its Client. As to all other parties, it is for general information purposes

More information

Triple-play subscriptions to rocket to 400 mil.

Triple-play subscriptions to rocket to 400 mil. Triple-play criptions to rocket to 400 mil. Global triple-play criptions will reach 400 million by 2017; up by nearly 300 million on the end-2011 total and up by 380 million on the 2007 total, according

More information

Overall Ranking of Top B-Schools of India

Overall Ranking of Top B-Schools of India CSR-GHRDC B-School Survey 2011 Overall Ranking of Top B-Schools of India Group Name of the B-Schools Infrastructure Faculty, Admission, Placement (160) Total (320) (1400) (455) (465) Supreme B-School of

More information

Consolidated International Banking Statistics in Japan

Consolidated International Banking Statistics in Japan Total (Transfer Consolidated cross-border claims in all currencies and local claims in non-local currencies Up to and including one year Maturities Over one year up to two years Over two years Public Sector

More information

Raveh Ravid & Co. CPA. November 2015

Raveh Ravid & Co. CPA. November 2015 Raveh Ravid & Co. CPA November 2015 About Us Established in 1986 by Abir Raveh, CPA & Itzhak Ravid, CPA 6 Partners, 80 employees Located in Tel Aviv, Israel wide range of professional services highly experienced

More information

Enhancement of QoS in Mobile Network through Channel Allocation using Software Agents

Enhancement of QoS in Mobile Network through Channel Allocation using Software Agents www.ijcsi.org 407 Enhancement of QoS in Mobile Network through Channel Allocation using Software Agents Nitin Muchhal 1, Swapnil Jain 2, Yogesh Sharma 3 1 Department of Electronics and Communication, Sagar

More information

Title ISSN SJR H index Country Foundations and Trends in Information 1554 1 Retrieval

Title ISSN SJR H index Country Foundations and Trends in Information 1554 1 Retrieval Title ISSN SJR H index Country Foundations and Trends in Information 1554 1 Retrieval 0677 Q1 6,536 12 United States 2 Swarm and Evolutionary Computation 2210 6502 Q1 3,364 8 Netherlands 3 IEEE Transactions

More information

The face of consistent global performance

The face of consistent global performance Building safety & security global simplified accounts The face of consistent global performance Delivering enterprise-wide safety and security solutions. With more than 500 offices worldwide Johnson Controls

More information

ANNEXURE II COURSE EQUIVALENCE

ANNEXURE II COURSE EQUIVALENCE ANNEXURE II COURSE EQUIVALENCE Candidates who obtained the eligible UG/PG degree under Full-time regular mode from Tamil Nadu Government established State Universities, Central Universities, IITs, NITs,

More information

Accuracy counts! SENSORS WITH ANALOG OUTPUT

Accuracy counts! SENSORS WITH ANALOG OUTPUT Accuracy counts! SENSORS WITH ANALOG OUTPUT OTHER APPLICATIONS: KEY ADVANTAGES: Distance measurement Positioning Profile detection Deformation monitoring Vibration monitoring Process monitoring Detection

More information

ASAP implementation approach for SAP ERP implementation has five major phases as shown in below picture. Fit and Gap Analysis (FGA) is very critical

ASAP implementation approach for SAP ERP implementation has five major phases as shown in below picture. Fit and Gap Analysis (FGA) is very critical ASAP implementation approach for SAP ERP implementation has five major phases as shown in below picture. Fit and Gap Analysis (FGA) is very critical part of the second phase of project blueprinting where

More information

Excerpt Sudan Fixed Telecommunications: Low Penetration Rates Get a Boost from Broadband Internet and VoIP Services

Excerpt Sudan Fixed Telecommunications: Low Penetration Rates Get a Boost from Broadband Internet and VoIP Services Excerpt Sudan Fixed Telecommunications: Low Penetration Rates Get a Boost from Broadband Internet and VoIP Services This report is part of Pyramid Research s series of Africa & Middle East Country Intelligence

More information

TRANSFERS FROM AN OVERSEAS PENSION SCHEME

TRANSFERS FROM AN OVERSEAS PENSION SCHEME PENSIONS PROFILE DECEMBER 2011 TRANSFERS FROM AN OVERSEAS PENSION SCHEME = Summary A simplified guide to the process: 1. Individual requests transfer from their overseas pension scheme to their UK registered

More information

GURU GHASIDAS VISHWAVIDYALAYA BILASPUR (C.G.)

GURU GHASIDAS VISHWAVIDYALAYA BILASPUR (C.G.) Roll List For Course :5 Years Integrated UG/PG in Forensic Science (B. Sc.+M.Sc.),Center : Guru Ghasidas AASHISH KUMAR 14159713210967 10011910003 AAYUSHI PATHAK 1415952108098 10011910004 ABHILASHA EKKA

More information

Modeling and Design of Intelligent Agent System

Modeling and Design of Intelligent Agent System International Journal of Control, Automation, and Systems Vol. 1, No. 2, June 2003 257 Modeling and Design of Intelligent Agent System Dae Su Kim, Chang Suk Kim, and Kee Wook Rim Abstract: In this study,

More information

INTERNATIONAL AIR SERVICES TRANSIT AGREEMENT SIGNED AT CHICAGO ON 7 DECEMBER 1944

INTERNATIONAL AIR SERVICES TRANSIT AGREEMENT SIGNED AT CHICAGO ON 7 DECEMBER 1944 State INTERNATIONAL AIR SERVICES TRANSIT AGREEMENT SIGNED AT CHICAGO ON 7 DECEMBER 1944 Entry into force: The Agreement entered into force on 30 January 1945. Status: 130 Parties. This list is based on

More information

Senate Committee: Education and Employment. QUESTION ON NOTICE Budget Estimates 2015-2016

Senate Committee: Education and Employment. QUESTION ON NOTICE Budget Estimates 2015-2016 Senate Committee: Education and Employment QUESTION ON NOTICE Budget Estimates 2015-2016 Outcome: Higher Education Research and International Department of Education and Training Question No. SQ15-000549

More information

Introducing Clinical Trials Insurance Services Ltd

Introducing Clinical Trials Insurance Services Ltd Introducing Clinical Trials Insurance Services Ltd Important Staff Richard Kelly Managing Director Richard joined CTIS in 2006 having previously managed the Pharmaceutical wholesale division at Heath Lambert

More information

National Conference On Product Design and Manufacturing (NCPDM 2015)

National Conference On Product Design and Manufacturing (NCPDM 2015) National Conference On Product Design and Manufacturing (NCPDM 2015) For November 21-22, 2015 Sponsored by TEQIP II Organized by Mechanical Engineering Department Motilal Nehru National Institute of Technology

More information