Вы находитесь на странице: 1из 616

Proceedings

2009 International Conference


on Computer Engineering and Technology

ICCET 2009

Volume I
Proceedings

2009 International Conference


on Computer Engineering and Technology

Volume I

January 22 - 24, 2009


Singapore

Edited by
Jianhong Zhou and Xiaoxiao Zhou

Sponsored by

International Association of Computer Science & Information Technology

Los Alamitos, California


Washington • Tokyo
Copyright © 2009 by The Institute of Electrical and Electronics Engineers, Inc.
All rights reserved.

Copyright and Reprint Permissions: Abstracting is permitted with credit to the source. Libraries may photocopy
beyond the limits of US copyright law, for private use of patrons, those articles in this volume that carry a code at
the bottom of the first page, provided that the per-copy fee indicated in the code is paid through the Copyright
Clearance Center, 222 Rosewood Drive, Danvers, MA 01923.

Other copying, reprint, or republication requests should be addressed to: IEEE Copyrights Manager, IEEE Service
Center, 445 Hoes Lane, P.O. Box 133, Piscataway, NJ 08855-1331.

The papers in this book comprise the proceedings of the meeting mentioned on the cover and title page. They reflect
the authors’ opinions and, in the interests of timely dissemination, are published as presented and without change.
Their inclusion in this publication does not necessarily constitute endorsement by the editors, the IEEE Computer
Society, or the Institute of Electrical and Electronics Engineers, Inc.

IEEE Computer Society Order Number P3521


BMS Part Number CFP0967F
ISBN 978-0-7695-3521-0
Library of Congress Number 2008909477

Additional copies may be ordered from:

IEEE Computer Society IEEE Service Center IEEE Computer Society


Customer Service Center 445 Hoes Lane Asia/Pacific Office
10662 Los Vaqueros Circle P.O. Box 1331 Watanabe Bldg., 1-4-2
P.O. Box 3014 Piscataway, NJ 08855-1331 Minami-Aoyama
Los Alamitos, CA 90720-1314 Tel: + 1 732 981 0060 Minato-ku, Tokyo 107-0062
Tel: + 1 800 272 6657 Fax: + 1 732 981 9667 JAPAN
Fax: + 1 714 821 4641 http://shop.ieee.org/store/ Tel: + 81 3 3408 3118
http://computer.org/cspress customer-service@ieee.org Fax: + 81 3 3408 3553
csbooks@computer.org tokyo.ofc@computer.org

Individual paper REPRINTS may be ordered at: <reprints@computer.org>

Editorial production by Lisa O’Conner


Cover art production by Joe Daigle/Studio Productions
Printed in the United States of America by The Printing House

IEEE Computer Society


Conference Publishing Services (CPS)
http://www.computer.org/cps
2009 International Conference
on Computer Engineering
and Technology

ICCET 2009
Table of Contents
Volume - 1
Preface - Volume 1 ...........................................................................................................................................xiv
ICCET 2009 Committee Members - Volume 1..................................................................................xvi
ICCET 2009 Organizing Committees - Volume 1..........................................................................xvii

Session 1
Overlapping Non-dedicated Clusters Architecture .................................................................................................3
Martin Štava and Pavel Tvrdík
To Determine the Weight in a Weighted Sum Method for Domain-Specific
Keyword Extraction ..................................................................................................................................................11
Wenshuo Liu and Wenxin Li
Flow-based Description of Conceptual and Design Levels ................................................................................16
Sabah Al-Fedaghi
A Method of Query over Encrypted Data in Database ........................................................................................23
Lianzhong Liu and Jingfen Gai
Traversing Model Design Based on Strong-Association Rule for Web
Application Vulnerability Detection .......................................................................................................................28
Zhenyu Qi, Jing Xu, Dawei Gong, and He Tian
Attribute-Based Relative Ranking of Robot for Task Assignment ....................................................................32
B.B. Choudhury, B.B. Biswal, and R.N. Mahapatra
A Subjective Trust Model Based on Two-Dimensional Measurement .............................................................37
Chaowen Chang, Chen Liu, and Yuqiao Wang
A Genetic Algorithm Approach for Optimum Operator Assignment in CMS ................................................42
Ali Azadeh, Hamrah Kor, and Seyed-Morteza Hatefi

v
Dynamic Adaption in Composite Web Services Using Expiration Times .......................................................47
Xiaohao Yu, Xueshan Luo, Honghui Chen, and Dan Hu
An Emotional Intelligent E-learning System Based on Mobile Agent
Technology .................................................................................................................................................................51
Zhiliang Wang, Xiangjie Qiao, and Yinggang Xie
Audio Watermarking for DRM Based on Chaotic Map ......................................................................................55
B. Lei and I.Y. Soon
Walking Modeling Based on Motion Functions ...................................................................................................60
Hao Zhang and Zhijing Liu
Preprocessing and Feature Preparation in Chinese Web Page Classification ..................................................64
Weitong Huang, Luxiong Xu, and Yanmin Liu
High Performance Grid Computing and Security through Load Balancing .....................................................68
V. Sugavanan and V. Prasanna Venkatesh
Research of the Synthesis Control of Force and Position in Electro-Hydraulic
Servo System ..............................................................................................................................................................73
Yadong Meng, Changchun Li, Hao Yan, and Xiaodong Liu

Session 2
Features Selection Using Fuzzy ESVDF for Data Dimensionality Reduction ................................................81
Safaa Zaman and Fakhri Karray
PDC: Propagation Delay Control Strategy for Restricted Floating Sensor
Networks .....................................................................................................................................................................88
Xiaodong Liu
Fast and High Quality Temporal Transcoding Architecture in the DCT
Domain for Adaptive Video Content Delivery .....................................................................................................91
Vinay Chander, Aravind Reddy, Shriprakash Gaurav, Nishant Khanwalkar,
Manish Kakhani, and Shashikala Tapaswi
Electricity Demand Forecasting Based on Feedforward Neural Network
Training by a Novel Hybrid Evolutionary Algorithm ..........................................................................................98
Wenyu Zhang, Yuanyuan Wang, Jianzhou Wang, and Jinzhao Liang
Investigation on the Behaviour of New Type Airbag ........................................................................................103
Hu Lin, Liu Ping, and Huang Jing
Performance Evaluation of PNtMS: A Portable Network Traffic Monitoring
System on Embedded Linux Platform ..................................................................................................................108
Mostafijur Rahman, Zahereel Ishwar Abdul Khalib, and R.B. Ahmad
PB-GPCT: A Platform-Based Configuration Tool .............................................................................................114
Huiqiang Yan, Runhua Tan, Kangyun Shi, and Fei Lu
A Feasibility Study on Hyperblock-based Aggressive Speculative Execution
Model .........................................................................................................................................................................119
Ming Cong, Hong An, Yongqing Ren, Canming Zhao, and Jun Zhang

vi
Parallel Method for Discovering Frequent Itemsets Using Weighted Tree
Approach ...................................................................................................................................................................124
Preetham Kumar and Ananthanarayana V S
Optimized Design and Implementation of Three-Phase PLL Based on FPGA .............................................129
Yuan Huimei, Sun Hao, and Song Yu
Research on the Data Storage and Access Model in Distributed Environment .............................................134
Wuling Ren and Pan Zhou
An Effective Classification Model for Cancer Diagnosis Using Micro Array
Gene Expression Data .............................................................................................................................................137
V. Saravanan and R. Mallika
Study and Experiment of Blast Furnace Measurement and Control System
Based on Virtual Instrument ..................................................................................................................................142
Shufen Li and Zhihua Liu
A New Optimization Scheme for Resource Allocation in OFDMA Based
WiMAX Systems .....................................................................................................................................................145
Arijit Ukil, Jaydip Sen, and Debasish Bera
An Integration of CoTraining and Affinity Propagation for PU Text
Classification ............................................................................................................................................................150
Na Luo, Fuyu Yuan, and Wanli Zuo

Session 3
Ergonomic Evaluation of Small-screen Leading Displays on the Visual
Performance of Chinese Users ...............................................................................................................................157
Yu-Hung Chien and Chien-Cheng Yen
Curvature-Based Feature Extraction Method for 3D Model Retrieval ...........................................................161
Yujie Liu, Xiaolan Yao, and Zongmin Li
A New Method for Vertical Handoff between WLANs and UMTS
in Boundary Conditions ..........................................................................................................................................166
Majid Fouladian, Faramarz Hendessi, Alireza Shafieinejad, Morteza Rahimi,
and Mahdi M. Bayat
Research on Secure Key Techniques of Trustworthy Distributed System .....................................................172
Ming He, Aiqun Hu, and Hangping Qiu
WebELS: A Multimedia E-learning Platform for Non-broadband Users .......................................................177
Zheng He, Jingxia Yue, and Haruki Ueno
Implementation and Improvement Based on Shear-Warp Volume Rendering
Algorithm ..................................................................................................................................................................182
Li Guo and Xie Mei
Conferencing, Paging, Voice Mailing via Asterisk EPBX ................................................................................186
Ale Imran and Mohammed A. Qadeer
A New Mind Evolutionary Algorithm Based on Information Entropy ...........................................................191
Yuxia Qiu and Keming Xie

vii
An Encapsulation Structure and Description Specification for Application
Level Software Components ..................................................................................................................................195
Jin Guojie and Yin Baolin
Fault Detection and Diagnosis of Continuous Process Based on Multiblock
Principal Component Analysis ..............................................................................................................................200
Libo Bie and Xiangdong Wang
Strong Thread Migration in Heterogeneous Environment ................................................................................205
Khandakar Entenam Unayes Ahmed, Md. Al-mamun Shohag, Tamim Shahriar,
Md. Khalad Hasan, and Md. Mashud Rana
A DSP-based Active Power Filter for Three-phase Power Distribution Systems .........................................210
Ping Wei, Zhixiong Zhan, and Houquan Chen
Access Control Scheme for Workflow .................................................................................................................215
Lijun Gao, Lu Zhang, and Lei Xu
A Mathematical Model of Interference between RFID and Bluetooth in Fading
Channel ......................................................................................................................................................................218
Junjie Chen, Jianqiu Zeng, and Yuchen Zhou
Optimization Strategy for SSVEP-Based BCI in Spelling Program Application ..........................................223
Indar Sugiarto, Brendan Allison, and Axel Gräser

Session 4
A Novel Method for the Web Page Segmentation and Identification .............................................................229
Jing Wang and Zhijing Liu
Disturbance Observer-Based Variable Structure Control on the Working
Attitude Balance Mechanism of Underwater Robot ..........................................................................................232
Min Li and Heping Liu
Adaptive OFDM Vs Single Carrier Modulation with Frequency Domain
Equalization ..............................................................................................................................................................238
Inderjeet Kaur, Kamal Thakur, M. Kulkarni, Daya Gupta, and Prabhjyot Arora
A Bivariate C1 Cubic Spline Space on Wang's Refinement .............................................................................243
Huan-Wen Liu and Wei-Ping Lu
Fast Shape Matching Using a Hybrid Model ......................................................................................................247
Gang Xu and Wenxian Yang
A Multi-objective Genetic Algorithm for Optimization of Cellular
Manufacturing System ............................................................................................................................................252
H. Kor, H. Iranmanesh, H. Haleh, and S.M. Hatefi
A Formal Mapping between Program Slicing and Z Specifications ...............................................................257
Fangjun Wu
Modified Class-Incremental Generalized Discriminant Analysis ....................................................................262
Yunhui He
Controlling Free Riders in Peer to Peer Networks by Intelligent Mining .......................................................267
Ganesh Kumar. M, Arun Ram. K, and Ananya. A.R

viii
Servo System Modeling and DSP Code Autogeneration Technology
for Open-CNC ..........................................................................................................................................................272
Shukun Cao, Heng Zhang, Li Song, Changsheng Ai, and Xiangbo Ze
Extending Matching Model for Semantic Web Services ...................................................................................276
Alireza Zohali, Kamran Zamanifar, and Naser Nematbakhsh
Sound Absorption Measurement of Acoustical Material and Structure Using
the Echo-Pulse Method ...........................................................................................................................................281
Liang Sun, Hong Hou, Liying Dong, and Fangrong Wan
Parallel Design of Cross Search Algorithm in Motion Estimation ..................................................................286
Fan Zhang
Influences of DSS Environments and Models on Current Business Decision
and Knowledge Management ................................................................................................................................291
Md. Fazle Munim and Fatima Binte Zia
A Method for Transforming Workflow Processes to CSS ................................................................................295
Jing Xiao, Guo-qing Wu, and Shu Chen

Session 5
An Empirical Approach of Delta Hedging in GARCH Model .........................................................................303
Qian Chen and Chengzhe Bai
Multi-objective Parameter Optimization Technology for Business Process
Based on Genetic Algorithm ..................................................................................................................................308
Bo Wang, Li Zhang, and Yawei Tian
Analysis and Design of an Access Control Model Based on Credibility ........................................................312
Chaowen Chang, Yuqiao Wang, and Chen Liu
Modeling of Rainfall Prediction over Myanmar Using Polynomial Regression ...........................................316
Wint Thida Zaw and Thinn Thu Naing
New Similarity Measure for Restricted Floating Sensor Networks .................................................................321
Yuan Feng, Xiaodong Liu, and Xiangqian Ding
3D Mesh Skeleton Extraction Based on Feature Points ....................................................................................326
Faming Gong and Cui Kang
Pairings Based Designated Verifier Signature Scheme for Three-Party
Communication Environment ................................................................................................................................330
Han-Yu Lin and Tzong-Sun Wu
A Novel Shared Path Protection Scheme for Reliability Guaranteed
Connection ................................................................................................................................................................334
Jijun Zhao, Weiwei Bian, Lirong Wang, and Sujian Wang
Generalized Program Slicing Applied to Z Specifications ................................................................................338
Fangjun Wu
PC Based Weight Scale System with Load Cell for Product Inspection ........................................................343
Anton Satria Prabuwono, Habibullah Akbar, and Wendi Usino

ix
Short-Term Electricity Price Forecast Based on Improved Fractal Theory ....................................................347
Herui Cui and Li Yang
BBS Sentiment Classification Based on Word Polarity ....................................................................................352
Shen Jie, Fan Xin, Shen Wen, and Ding Quan-Xun
Applying eMM in a 3D Approach to e-Learning Quality Improvement ........................................................357
Kattiya Tawsopar and Kittima Mekhabunchakij
Research on Automobile Driving State Real-Time Monitoring System Based
on ARM .....................................................................................................................................................................361
Hongjiang He and Yamin Zhang
Information Security Risk Assessment and Pointed Reporting: Scalable
Approach ...................................................................................................................................................................365
D.S. Bhilare, A.K. Ramani, and Sanjay Tanwani
An Extended Algorithm to Enhance the Performance of the Gridbus Broker
with Data Restoring Technique .............................................................................................................................371
Abu Awal Md. Shoeb, Altaf Hussain, Md. Abu Naser Bikas, and Md. Khalad Hasan

Session 6
Prediction of Ship Pitching Based on Support Vector Machines .....................................................................379
Li-hong Sun and Ji-hong Shen
The Methods of Improving the Manufacturing Resource Planning (MRP II)
in ERP ........................................................................................................................................................................383
Wenchao Jiang and Jingti Han
A New Model for Classifying Inputs and Outputs and Evaluating the DMUs
Efficiency in DEA Based on Cobb-Douglas Production Function ..................................................................390
S.M. Hatefi, F. Jolai, H. Kor, and H. Iranmanesh
The Analysis and Improvement of the Price Forecast Model Based on Fractal
Theory ........................................................................................................................................................................395
Herui Cui and Li Yang
A Flash-Based Mobile Learning System for Learning English as Second
Language ...................................................................................................................................................................400
Firouz B. Anaraki
Recognition of Trade Barrier Based on General RBF Neural Network ..........................................................405
Yu Zhao, Miaomiao Yang, and Chunjie Qi
An Object-Oriented Product Data Management .................................................................................................409
Fan Wang and Li Zhou
Study of 802.11 Network Performance and Wireless Multicasting .................................................................414
Biju Issac
A Novel Approach for Face Recognition Based on Supervised Locality
Preserving Projection and Maximum Margin Criterion ....................................................................................419
Jun Kong, Shuyan Wang, Jianzhong Wang, Lintian Ma, Baowei Fu, and Yinghua Lu

x
Association Rules Mining Based on Simulated Annealing Immune
Programming Algorithm .........................................................................................................................................424
Yongqiang Zhang and Shuyang Bu
Processing Power Estimation of Simple Wireless Sensor Network Nodes
by Power Macro-modeling .....................................................................................................................................428
M. Rafiee, M.B. Ghaznavi-Goushchi, and B. Seyfe
A Fault-Tolerant Strategy for Multicasting in MPLS Networks ......................................................................432
Weili Huang and Hongyan Guo
A Novel Content-based Information Hiding Scheme ........................................................................................436
Jun Kong, Hongru Jia, Xiaolu Li, and Zhi Qi
Ambi Graph: Modeling Ambient Intelligent System .........................................................................................441
K. Chandrasekaran, I.R. Ramya, and R. Syama

Session 7
Research on Grid-based Short-term Traffic Flow Forecast Technology ........................................................449
Wang Xinying, Juan Zhicai, Liu Xin, and Mei Fang
A Nios II Based English Speech Training System for Hearing-Impaired
Children .....................................................................................................................................................................452
Ningfeng Huang, Haining Wu, and Yinchen Song
A New DEA Model for Classification Intermediate Measures and Evaluating
Supply Chain and its Members ..............................................................................................................................457
S.M. Hatefi, F. Jolai, H. Iranmanesh, and H. Kor
A Novel Binary Code Based Projector-Camera System Registration Method ..............................................462
Jiang Duan and Jack Tumblin
Non-temporal Mutliple Silhouettes in Hidden Markov Model for View
Independent Posture Recognition ..........................................................................................................................466
Yunli Lee and Keechul Jung
Classification of Quaternary [21s+1,3] Optimal Self-orthogonal Codes ........................................................471
Xuejun Zhao, Ruihu Li, and Yingjie Lei
Performance Analysis of Large Receive Offload in a Xen Virtualized System ...........................................475
Hitoshi Oi and Fumio Nakajima
An Improved Genetic Algorithm Based on Fixed Point Theory for Function
Optimization .............................................................................................................................................................481
Jingjun Zhang, Yuzhen Dong, Ruizhen Gao, and Yanmin Shang
Example-Based Regularization Deployed to Face Hallucination ....................................................................485
Hong Zhao, Yao Lu, Zhengang Zhai, and Gang Yang
An Ensemble Approach for Semantic Assessment of Summary Writings .....................................................490
Yulan He, Siu Cheung Hui, and Tho Thanh Quan
A Fast Reassembly Methodology for Polygon Fragment ..................................................................................495
Gang Xu and Yi Xian

xi
A Data Mining Approach to Modeling the Behaviors of Telecom Clients ....................................................500
Xiaodong Liu
Simulating Fuzzy Manufacturing System: Case Study ......................................................................................505
A. Azadeh, S.M. Hatefi, and H. Kor
Research of INS Simulation Technique Based on UnderWater Vehicle Motion
Model .........................................................................................................................................................................510
Jian-hua Cheng, Yu-shen Li, and Jun-yu Shi
Modeling and Simulation of Wireless Sensor Network (WSN) with SpecC
and SystemC .............................................................................................................................................................515
M. Rafiee, M.B. Ghaznavi-Ghoushchi, S. Kheiri, and B. Seyfe

Session 8
Sub-micron Parameter Scaling for Analog Design Using Neural Networks ..................................................523
A.A. Bagheri-Soulla and M.B. Ghaznavi-Ghoushchi
An Improved Genetic Algorithm Based on Fixed Point Theory for Function
Optimization .............................................................................................................................................................527
Jingjun Zhang, Yuzhen Dong, Ruizhen Gao, and Yanmin Shang
P2DHMM: A Novel Web Object Information Extraction Model ....................................................................531
Jing Wang and Zhijing Liu
An Efficient Multi-Patterns Parameterized String Matching Algorithm
with Super Alphabet ................................................................................................................................................536
Rajesh Prasad and Suneeta Agarwal
Research on Modeling Method of Virtual Enterprise in Uncertain
Environments ............................................................................................................................................................541
Jihai Zhang
Design of Intrusion Detection System Based on a New Pattern Matching
Algorithm ..................................................................................................................................................................545
Hu Zhang
To Construct Implicit Link Structure by Using Frequent Sequence Miner
(FS-Miner) ................................................................................................................................................................549
May Thu Aung and Khin Nwe Ni Tun
Recognition of Eye States in Real Time Video ...................................................................................................554
Lei Yunqi, Yuan Meiling, Song Xiaobing, Liu Xiuxia, and Ouyang Jiangfan
Performance Analysis of Postprocessing Algorithm and Implementation
on ARM7TDMI .......................................................................................................................................................560
Manoj Gupta, B.K. Kaushik, and Laxmi Chand
NURBS Interpolation Method with Feedrate Correction in 3-axis CNC System .........................................565
Liangji Chen and Huiying Li
Implementation Technique of Unrestricted LL Action Grammar ....................................................................569
Jing Zhang and Ying Jin

xii
Improving BER Using RD Code for Spectral Amplitude Coding Optical
CDMA Network .......................................................................................................................................................573
Hilal Adnan Fadhil, S.A. Aljunid, and R. Badlishah Ahmad
USS-TDMA: Self-stabilizing TDMA Algorithm for Underwater Wireless
Sensor Network ........................................................................................................................................................578
Zhongwen Guo, Zhengbao Li, and Feng Hong
Mathematical Document Retrieval for Problem Solving ..................................................................................583
Sidath Harshanath Samarasinghe and Siu Cheung Hui
Lossless Data Hiding Scheme Based on Adjacent Pixel Difference ...............................................................588
Zhuo Li, Xiaoping Chen, Xuezeng Pan, and Xianting Zeng

Author Index - Volume 1 .............................................................................................................................593

xiii
Preface
Dear Distinguished Delegates and Guests,

The Organizing Committee warmly welcomes our distinguished delegates and guests to the
International Conference on Computer Engineering and Technology 2009 (ICCET 2009), held on
January 22 - 24, 2009 in Singapore.

ICCET 2009, ICACC 2009 and ICECS 2008 are sponsored by International Association of Computer
Science and Information Technology (IACSIT) and Singapore Institute of Electronics (SIE), and the
accepted papers of ICECS 2008 have been included in the ICCET proceeding as a special session. If
you have attended a conference sponsored by IACSIT before, you are aware that the conferences
together report the results of research efforts in a broad range of computer science. These conferences
are aimed at discussing with all of you the wide range of problems encountered in present and future
high technologies. The ICCET 2009, ICACC 2009 and ICECS 2008 are organized to gather members
of our international community of computer and control scientists so that researchers from around the
world can present their leading-edge work, expanding our community’s knowledge and insight into
the significant challenges currently being addressed in that research. The conference Program
Committee is itself quite diverse and truly international, with membership from the Americas, Europe,
Asia, Africa and Oceania.

This proceeding records the fully refereed papers presented at the conference. The main conference
themes and tracks are Computer Engineering and Technology. The conference aims to bring together
researchers, scientists, engineers, and practitioners to exchange and share their experiences, new ideas,
and research results about all aspects of the main conference themes and tracks and discuss the
practical challenges encountered and the solutions adopted. The main goal of these events is to
provide international scientific forums for exchange of new ideas in a number of fields that interact
in-depth through discussions with their peers from around the world. Both inward research; core areas
of computer control and outward research; multi-disciplinary, inter-disciplinary, and applications will
be covered during these events.

The conference has solicited and gathered technical research submissions related to all aspects of
major conference themes and tracks. All the submitted papers in the proceeding have been peer
reviewed by the reviewers drawn from the scientific committee, external reviewers and editorial board
depending on the subject matter of the paper. Reviewing and initial selection were undertaken
electronically. After the rigorous peer-review process, the submitted papers were selected on the basis
of originality, significance, and clarity for the purpose of the conference. The selected papers and
additional late-breaking contributions to be presented as lectures will make an exiting technical
program. The conference program is extremely rich, featuring high-impact presentations.

xiv
The high quality of the program – guaranteed by the presence of an unparalleled number of
internationally recognized top experts – can be assessed when reading the contents of the program.
The conference will therefore be a unique event, where attendees will be able to appreciate the latest
results in their field of expertise, and to acquire additional knowledge in other fields. The program has
been structured to favor interactions among attendees coming from many diverse horizons,
scientifically, geographically, from academia and from industry. Included in this will to favor
interactions are social events at prestigious sites.

We would like to thank the program chairs, organization staff, and the members of the program
committees for their work. Thanks also go to Ms. Lisa O'Conner, CPS Production Editor, Conference
Publishing Services (CPS), IEEE Computer Society, for her wonderful editorial service to this
proceeding.

We are grateful to all those who have contributed to the success of ICCET 2009. We hope that all
participants and other interested readers benefit scientifically from the proceedings and also find it
stimulating in the process. Finally, we would like to wish you success in your technical presentations
and social networking.

We hope you have a unique, rewarding and enjoyable week at ICCET 2009, ICACC 2009 and ICECS
2008 in Singapore.

With our warmest regards,

Yi Xie
January 22 - 24, 2009
Singapore

xv
ICCET 2009 Committee Members
V.Saravanan, Karunya University, India
Gunter Glenda A., University of Central Florida, USA
Wen-Tsao Pan, Jinwen University of Science and Technology, China (Taiwan)
Gopalakrishnan Kasthurirangan, Iowa State University, USA
Anupam Shukla, Indian Institute of Information Technology, India
Wei Guo, Tianjin University, China
Mahanti Prabhat Kumar, University of New Brunswick, Canada
Hrudaya Ku Tripathy, Institute of Advanced Computer and Research, India
Narasimhan V. Lakshmi, University of Newcastle, Australia
Jinlong Wang, Qingdao Technological University, China
Amrita Saha, West Bengal University of Technology, India
Yi Xie, Cagayan State University, Philippines
Sevaux Marc, University of South-Brittany, France
Amir Masoud Rahmani, Islamiz Azad University, Iran
Yang Laurence T., St. Francis Xavier University, Canada
Lau Bee Theng, Swinburne University of Technology Sarawak, Malaysia
Poramate Manoonpong, University of Gottingen, Germany
Tahseen A. Jilani, University of Karachi, Pakistan
Qian Chen, Columbia University, USA
Zhihong Xiao, Zhejiang Wanli University, China

xvi
ICCET 2009
Organizing Committees
Honor Chairs
R. C. Eberhart, Purdue University, USA
A. Kandel, University of South Florida, USA
J.D. Pinter, Dalhousie University, Canada

Conference Chairs
S.R. Bhadra Chaudhuri, Bengal Engineering and Science University, India
Jianhong Zhou, Sichuan University
Xiaoxiao Zhou, Nanyang Technological University, Singapore

Conference Steering Committee


Yi Xie, Cagayan State University, Philippines
Hoang Huu Hanh, Hue University, Vietnam
Kamaruzaman Jusoff, Yale University, USA

Program Committee Chairs


S.M. Aqil Burney, University of Karachi, Pakistan
Nazir Ahmad Zafar, University of Central Punjab, Pakistan
Nashat Mansour, Lebanese American University, Lebanon

Publicity Chairs
Basim Alhadidi, Al Balqa’ Applied University, Jordan
M. Aqeel Iqbal, Foundation University, Pakistan
Brian B.C. Shinn, Chungbuk National University, Korea

xvii
International Conference
on Computer Engineering and Technology

Session 1
2009 International Conference on Computer Engineering and Technology

Overlapping Non-Dedicated Clusters Architecture

Martin Šťava and Pavel Tvrdı́k


Department of Computer Science and Engineering
Czech Technical University in Prague
Prague, Czech Republic
{stavam2,tvrdik}@fel.cvut.cz

Abstract—Non-dedicated computer clusters promise Such a scenario is clearly not well suited for the volunteering
more efficient resource utilization than conventional users. For example, a user who is about to perform a parallel
dedicated clusters. Existing non-dedicated clustering so- compilation on his machine would like to use his granted
lutions either expect trust among participating users, or cluster time, but he can not, since he can perform the cluster
they do not take into account a possibility of running operations only from the cluster itself, not from his machine.
multiple independent clusters on a same set of comput- On the other hand, if there is support for coexistence of
ers. multiple clusters, the machines of volunteering users can
In this paper, we argue how an ability to run multiple form their own clusters and the users can use the granted
independent clusters without requiring trust among cluster time transparently from their machines.
participating users can be capitalized to increase user Second important aspect for attracting users to participate
experience and thus attract more users to participate in non-dedicated clusters is a trust relationship. Users offer-
in the cluster. A generic extension of non-dedicated ing their computers as non-dedicated computing resources
clusters that satisfies these requirements is defined and should not be required to fully trust the cluster administrators
a feasibility of one particular extension is demonstrated and neither should the administrators be required to trust the
on our implementation. users. Any such a trust requirement complicates forming and
expansion of the cluster.
I. I NTRODUCTION
In this paper, we first briefly review the most important
Clusters build from commodity computers are a popular existing architectures. Then we present a relaxation of ex-
computational platform. They are used as a cost-effective isting architecture concepts and argue abouts its advantage
alternative to expensive supercomputers [1], [2], as a scal- over existing systems. A feasibility of the architecture is
able high available solution for commercial applications [3] demonstrated for one particular case on our research clus-
as well as load leveling clusters for ordinary day-to-day use tering solution called Clondike [8].
[4], [5].
A concept of traditional dedicated clusters was extended II. S COPE
by several existing projects [5]–[8] to support utilization
We primarily focus on clusters attempting to provide a
of non-dedicated computers, usually standard workstations.
single system image (SSI) illusion at the operating system
These projects rely on users offering their idle computers to
level. This is a reasonable limitation, since the motivation for
participate in a cluster.
developing SSI clusters is, similarly as in our architecture,
Methods of attracting users to participate vary. Some
in improving user experience.
projects offer only a good feeling from the participation. In
other environments, like university laboratories, the partici-
III. E XISTING ARCHITECTURES
pation may be enforced by a system administrator. The most
interesting method used, however, seems to be a reciprocal The most common form of clustering are dedicated clus-
offer of cluster computing power to volunteering users. In ters. In these clusters, all machines are fully dedicated to the
this case, the users are granted a computing power of the cluster, they all share user account-space, process space, and
cluster proportional to the power they have given to the file system. Kerrighed [9] or OpenSSI [10] are well known
cluster. examples of such clusters.
The reciprocal computing power trading, however, needs An extension of dedicated clusters are non-dedicated clus-
a well suited cluster architecture. In case there is just a single ters [5]–[8]. These clusters consist of one or more dedicated
instance of non-dedicated cluster running, the volunteers machines, forming a core of the cluster, and any number of
cannot use the earned cluster computing power directly from non-dedicated machines. The non-dedicated machines can
their machine, instead they first need to login to the cluster join or leave cluster at any time, but they do not fully belong
and perform their resource demanding computations there. to the cluster even at the time they are joined. This separation

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 3


DOI 10.1109/ICCET.2009.66
is often achieved by running the cluster code inside virtual
machines running on the non-dedicated machines.
An interesting alternative to standard architectures is rep-
resented by the openMosix [4]/Mosix2 [11] projects. Cluster
machines do not share common file-system, but they are still
assumed to share the user account-space. Users of a cluster
are not provided standard SSI features, but rather a different Figure 1. Dedicated cluster. All nodes belong to a single cluster.
SSI depending on a machine they are logged in.
Another significant architecture are multi-clusters. This is
not really an architecture of a single cluster, but the term
refers to clusters interconnected together. Multi-clusters are
gaining popularity during last years as a next logical step
towards an idealized grid solution. Examples of projects
supporting the multi-cluster architecture are Mosix2 [11] or
LSF [12].
Figure 2. Non dedicated cluster. The upper left node is forming a core of
non-dedicated cluster and is using 2 other nodes as non-dedicated nodes.
IV. P ROPOSED ARCHITECTURE

In this section, we define our envisioned architecture.


A basic building block of the proposed cluster can be illustrate schematically the difference among the three types
either a single machine or a dedicated SSI cluster. There of clusters.
can be mixed environments, where some blocks are single Mosix with its architecture is very close to the ONDC
machines and some are clusters. We will refer to these blocks with all nodes as single machines, but its architecture seems
uniformly as nodes in both cases, distinguishing explicitly to be driven more by technical aspects than by an intentional
between clusters and single machines where required. design. The biggest problem with Mosix is that it requires
The nodes can be connected in an arbitrary way, but the a full trust among all participating nodes (and it assumes
key factor is that each node forms a core of its own SSI either shared user account space or a consensus on mapping
cluster, using the other nodes as non-dedicated blocks. By of user ids).
forming a core we mean that it defines its account space, Multi-clusters are as well a special case of ONDC.
file system, and process space. Similarly as Mosix, current projects require trust among the
Every node can possibly form its own administrative participating clusters, which may be a limiting factor in real
domain. In addition, there should be no requirement for deployments.
trust among participating nodes. These two attributes imply The existing grid solutions are close to ONDC especially
a need for strong security model of the architecture imple- when ONDC is used for a large scale deployment in a dis-
mentation. tributed area. The main difference is that the grid solutions
As implied by the definition, every node can use the are primarily targeted only on large scale deployments. In
others as its non-dedicated nodes. When some node is used contrast, ONDC can be useful as well for a local resource
as a non-dedicated block, its own view of SSI still exists. sharing. User having a few machines at home would likely
Moreover, its SSI view is fully separated from the SSI view not use any of grid solutions to interconnect them, but
of the node that is using this node as its non-dedicated node. an ONDC cluster may be a good candidate for that.
Nothing prevents 2 nodes to interact with each other, using The concept of overlapping clusters is similar to virtual
each other as its non-dedicated node. organizations mechanisms (VO) [13], [14]. Modern grid
solutions, like XtreemOS [15], are often based on VOs. The
A node can be used as a non-dedicated node by more
main difference between VO and ONDC concept is that the
than one node. In that case, all SSI views participated by
virtual organizations are designed for a mutual cooperation
the node, including the local view, should be separated from
each other.
Because of the nature of the proposed solution, we will
refer to it in the paper as an overlapping non-dedicated
cluster (ONDC).

V. C OMPARISON WITH OTHER ARCHITECTURES

Non-dedicated clusters are an extension of dedicated


clusters. The ONDC is an extension of the non-dedicated Figure 3. ONDC. All nodes are using the other nodes as non-dedicated
clusters, thus it is a super-set of both. Figures 1, 2, and 3 nodes. All clusters are isolated from each other.

4
agreement and some degree of trust, while our solution does The smaller scale example can be a university computer
not require any relation among cluster users. ONDC is, laboratory. Currently, if the clustering is to be used in this
indeed, based on the assumption that the users does not know environment, there is either a single cluster shared by all
each other and have a very limited trust among themselves. users (enforcing the same environment for them), or there
is some non-transparent job scheduling system, where the
VI. A DVANTAGES OF THE ONDC OVER OTHER
users can send their jobs to be processed. With ONDC, each
ARCHITECTURES
computer can form its own cluster, using resources of any
The key advantage of the ONDC architecture is an unique other computer which is not being used at the moment. In
combination of a system without trust requirements and addition, if any user brings his own laptop, he can simply
ability to form a separate cluster from each participating plug it to the network, and start using the other computers as
node. This combination of features has a high potential for non-dedicated nodes of a cluster based on his laptop (and of
attracting users to participate in the cluster. course, the computers in the laboratory can use his laptop,
By relaxing the trust requirement, users can easily join if it is idle). He does not need any administrator privileges
the cluster. This idea was already leveraged by successful for the computers in the network.
projects like BOINC [1]. If there are trust requirements, Another use case of ONDC are the multi-clusters. There
users generally have to undergo some registration and pos- is a clear demand for such computing platforms, underlined
sibly a (mutual) trust review process, which itself may be by the existence of commercial solutions like Mosix2 or
sufficient to deter users from joining. LSF. The existing solutions could benefit especially from
By allowing a coexistence of multiple independent clus- the security research of the ONDC architecture, as this is
ters we enable a natural user rewarding mechanism, where directly applicable to them.
the users can get back the resources offered to the cluster In a largest scale, the ONDC architecture can be used as
by using the other nodes. a world-wide cluster, similar to the SETI [16] or BOINC [1]
The ability of each node to form its own cluster (and projects. For such a project, a standard non-dedicated cluster
hence export its file system) is another factor contributing can be sufficient. ONDC based solutions could possibly
to easy expansion of a cluster. Any user needs just a common attract larger user base, since users can be rewarded by their
ONDC code and does not need to install or configure offered time with the proportional cluster computing power.
anything specific for the other clusters. The cluster nodes In addition, with ONDC not only single volunteer computers
can immediately use his machine as a non-dedicated node can be connected, but whole clusters and multi-clusters can
and the user’s node can as well immediately use all other be connected and offer their spare computing power. As
machines. long as they are already taking use of (compatible) ONDC
Another advantage of allowing each node to form its infrastructure, it would be a simple configuration task to let
own cluster is a natural option of coexistence of different the participation in the wider cluster build on ONDC.
installations of clusters (even with conflicting versions of
software installed on them) on the same physical hardware. VIII. R ELATIONSHIP WITH MULTI CORE COMPUTING

An important architectural advantage of the ONDC ar- Any project being developed should plan for the future as
chitecture is a better fault-tolerance with respect to stan- well. The ONDC architecture targets on using commodity
dard non-dedicated clusters. Fault-tolerance in standard non- computers. It is always hard to predict future hardware
dedicated clusters relies on fault-tolerance mechanisms of its evolution, but commonly believed future development in the
dedicated core. When the core fails, the whole cluster fails. industry is that the commodity computers are going to have
In ONDC, when some core fails, the cluster formed by this more and more cores, while the cores themselves will not
core stops to work, but all other clusters are still functional become much faster.
(they just possibly loose some processes running on the This is, indeed, a perfect match for ONDC architectures.
crashed node). Clearly, this does not increase fault-tolerance There are 2 main factors. First, the developers of software
of any cluster in the ONDC. But the non-dedicated clusters will have to focus more on the parallelization of common
are generally based on the idea of utilizing idle machines programs. The cpu utilization patterns we can expect are as
and the ONDC allows continuous utilization of those idle follows. Most of the cores would be utilized for a limited
machines even in presence of some cluster failures. time when cpu intensive parallelized tasks are running. For
the rest of the time most of the cores would be idle. Actually,
VII. U SE CASES such patterns are already seen now with current machines.
In order to better illustrate the architecture, we will For example, in IT companies with frequent application
describe a few possible use-cases of ONDC in this section. compilations or in graphical studios where rendering rep-
These are just an illustrative examples. All of the mentioned resents the most CPU intensive operations.
examples can coexist and cooperate as a single instance of ONDC can contribute a lot to such environments. Properly
ONDC. parallelized applications can use other machines computing

5
power at the time of high CPU demand. Assuming that B. Technical background
the limited high cpu demand periods do not always overlap The implementation consists of 3 parts. The lowest level
for all machines, there can be often some spare resources is a kernel patch, that is kept as minimal as possible so that
available in the network (of course, the biggest problem upgrades to new kernels are not unduly complicated. The
here can be support for distributed shared memory and I/O patch consist mostly of a simple hooks for second part of the
bounded tasks, but this is more technical question and is out system that are a kernel modules. These modules implement
of the scope of this paper). most of the lowest level functionality required for process
The second factor contributing to non-dedicated clusters migration and actually the process migration support itself.
generally is the observation that some programs are not This is technically a most complicated part and a description
easily parallelizable (either due to the nature of algorithms or of this implementation is out of the scope of the paper. The
due to a prohibiting complexity of such a parallelization). implementation details can be found in [17].
Users who work mostly with such programs would have Finally, there is a userspace part of the system. It makes
some of their cores idle for most of the time. Machines use of the kernel part of the system, interacting with it via
of these users are good candidates to participate as non- a special control file system (exporting cluster specific data
dedicated nodes in any non-dedicated clustering solution. about processes), system signals (for requesting migration)
Clearly, more research is needed in this area, especially and as well using a standard linux kernel netlink sockets
to measure impact of such a sharing, since the usage of when a bidirectional interaction is required (for example
another core is not for free (cache conflicts, bus contention, non-preemptive scheduling decisions on process execution).
power consumption, etc.) and the cpu is not the only resource The userspace part performs all tasks that do not need to be
consumed by a running application (memory usage, network, directly in kernel, like scheduling, monitoring or information
disk I/O, etc.). distribution. From a practical point of view (coding and
debugging) it is a big advantage to put as much functionality
IX. I MPLEMENTATION as possible to userspace.
The proposed ONDC architecture is quite generic and C. Changes required to support ONDC
there may be many implementations. The existing projects
closest to the ONDC architecture are multi-clusters and Clondike was since the beginning designed to allow
Mosix. They fail, however, to address the trust less nodes cooperation of untrusted parties, so this functionality did
cooperation requirements. To verify our ideas, we have not require any modification to match ONDC requirements.
started development of our own implementation of the archi- In order to allow overlapping clusters, an extension to
tecture. In this section we will briefly describe our system standard Clondike system was required. The system needs
and its technical background, changes required to meet the to allow coexistence of a core node and a detached node
ONDC and how we address 2 key topics - scheduling and on a single physical machine. This way, it can act as a
security/trust handling. core of its own cluster, while still offering its resources to
another cluster. Second related extension is an ability to act
A. Clondike as a detached node of multiple independent clusters. This
is a natural requirement, if we have for example cluster of
The original idea of Clondike [8], [17] was to implement 3 nodes (Alfa, Beta, and Gamma) each of them forming
a first non-dedicated clustering solution based on the Linux its cluster, we would like them to use all other nodes as
operating system. Clondike is still in an experimental re- detached nodes. Therefore Alfa will use Beta and Gamma
search phase, but it already supports most of the require- as detached nodes, while Beta will use Alfa and Gamma as
ments on such systems. detached nodes. Gamma is then acting as a detached node
Clusters based on Clondike consist of one dedicated node, for 2 independent clusters (and as a core node of its own
called core node and a number of non-dedicated nodes called cluster).
detached nodes. This is a typical setup of any non-dedicated
cluster, although some may contain a whole dedicated cluster D. Scheduling
as their core. As outlined in previous sections, the main advantage of
A key feature of Clondike is a support for both preemptive overlapping clusters support is a possibility of a scheduling
and non-preemptive process migration based on process based on reciprocal computing power exchange. Economy
checkpointing. With the migration support, it is possible to inspired market based schedulers [18], [19] studied in a stan-
utilize detached nodes that would sit idle otherwise. The dard non-dedicated Clondike environment [20] seems to be
usage of detached nodes is continuously monitored by the a promising candidate for our goals. Mosix multi cluster
core node and if there is some opportunity to migrate a solution has some support for overlapping clusters and the
core node local process to idle detached node, the migration market based schedulers are one of the scheduling options
mechanisms are used. used [21].

6
Market based schedulers seems to be a better candidate for count is lower then threshold,
ONDC than for standard non-dedicated clusters. In standard do not emigrate task.
non-dedicated clusters with market based schedulers, the 2) Else find the least loaded remote
situation is a bit cumbersome. The user offers his machine node, that is bellow its accepting
to the cluster and gets some credit for that. He can then threshold and try to emigrate there
use this credit for execution of his tasks, but not directly 3) If no remote node is found,
on his machine (since his machine acts as a non-dedicated the task is kept running locally.
node only. In non-overlapping cluster case, the tasks started
This strategy is very simple and has many problems in
locally on detached nodes are not clustered, they are in fact
a real life, none the less it served well for system testing
isolated from the cluster environment as much as possible).
as will be demonstrated in the Performance section. It make
He must login to the cluster core and he can use his credit
use of the cluster overlapping nature and allows reciprocal
only there. In ONDC, he can use his credit transparently
computing power sharing, but unlike the market strategies,
from his machine, since that machine forms a cluster on its
it does not have any fairness guarantees. Obviously, it is
own.
usable only in a smallest scale and only for scheduling
To illustrate the difference between non-dedicated cluster
of sufficiently independent processes (i.e. not for collection
and ONDC we will use an example of 2 nodes cluster,
of closely cooperating highly dependent processes like for
with nodes Alfa and Beta. Let Alfa be a core node of non-
example a MPI application. Such processes may need some
dedicated cluster and Beta a detached node. When somebody
co-scheduling [22] techniques to perform well.)
runs a calculation on Alfa that will use resources on Beta,
the owner of Beta will get a credit to run a comparatively E. Security and trust
expensive calculation on cluster formed by Alfa. To use his
credit, he needs to login to Alfa and execute some process The security functionality and trust management of origi-
there (since Beta is only a detached node). In contrast, in nal Clondike system is directly applicable in ONDC environ-
ONDC case both machines can be a core node. So when the ment. In this section we will briefly review the mechanisms
owner of Beta has credit to execute something on Alfa, he used, details can be found in [23], [24].
can execute a local process and that could be transparently Since non dedicated clusters span over administrative
migrated to Alfa and use the credit there. domain boundaries and they are potentially used in an
Despite the apparent suitability, the market based schedul- untrusted network environment, the line security must be
ing strategies were not yet tested in ONDC version of ensured. Clondike is currently relying on establishing IPSEC
Clondike system and it is a future research topic to do channels between nodes to provide transparent link level
so. Since the scheduler in Clondike resides completely security.
in userspace, it is much easier task to implement a new By the ONDC definition, there should be no trust require-
scheduler than in other similar systems. ment between node owners. From the security point of view,
A simpler and more straightforward scheduling strategy it implies two main possible classes of attacks. First, an
was used in the existing prototype. Each cluster in the owner of machine forming cluster core node can try to send
ONDC version of Clondike has its own scheduler running malicious code to remote machine to get access to that node.
on the cluster core node. This scheduler is tracking load and Second, the owner of machine acting as a detached node can
a count of cluster tasks running on associated detached nodes read anything from memory of cluster processes running on
and it is trying to level the load of these nodes (including his machine. Moreover, he can alter those processes memory
the core node itself, which is preferred for some tasks). The and code.
scheduling decision is performed only at the process start The first attack is technically easy to prevent. The pro-
time, so only non preemptive migration is used. To honor cesses of cluster users run with the least possible privileges
the local user priority over cluster users, the node with some on the detached nodes and thus the detached node is pro-
active local tasks does not accept any cluster jobs, even if tected against these processes.
some scheduler requests such a migration (so, if machine There is no reliable way how to prevent second type
Alfa is running a local user’s job and a scheduler on machine of attacks, where detached node owner reads or modifies
Beta requests a job migration on Alfa, he is refused as long cluster processes running on his machine. The owner of
as the local tasks are running). Similarly, if the machine has the detached node has superuser privileges so he can do
too many remote jobs running on itself, it does not accept basically everything. In some special cases the results of
any new migration requests. remote execution can be quickly verified on the core node,
The scheduling algorithm performed by each node is as but this is not always the case.
follows: Our approach to this issue is based on deferring the
security critical decisions to the cluster users. Each user
1) If local cluster running tasks can specify what programs can run on what machine. In

7
Table 1
addition, the user can specify the files from his file system PARAMETERS OF THE TEST MACHINES . M EMORY IS IN G IGABYTES ,
that can be access from other nodes. All nodes for which BUILD TIME IN FORMAT MINUTES : SECONDS , AND THE SEQUENTIAL
TIME IS IN SECONDS .
no specific rules are specified are considered of a same trust
level, we refer to them as anonymous nodes. The anonymous Name Cores Mem. Build time Seq. time
Alfa 2 4 2:13 6
nodes can as well participate in cluster, the users can use Beta 2 2 3:28 7
them for executing of processes whose results can be either Gamma 2 2 3:46 8
easily verified, or for processes that perform operations with Delta 1 1 6:43 11
non-sensitive data.
To illustrate the decisions the user can make, we will use
example with 3 nodes Alfa, Beta, and Gamma. A user on stigmata. If any of the visited nodes does not have required
Alfa can trust owner of Beta, but trust less (or perhaps do not privilege, the process is terminated.
even know about) machine Gamma. The user would specify
that any process can be migrated to Beta and the Beta can X. P ERFORMACE
access any file on his file system. The user on Alfa has as
well some process that performs some resource demanding,
but easily verifiable operations (NP-complete calculations
are one possible example). He can then specify that this
process can be executed on any node. The process may need
to write result somewhere, so the user may need to give a
write access to some restricted part of the file system to any
node, so that the result can be written.
The user defined restriction has to be obeyed by the
scheduler. The scheduler, however, cannot always know
which files are going to be accessed by a process being
migrated to a detached node. So the processes on the
detached nodes must be monitored for a file system access
requests and when a violating access is detected an action
must be taken. The action can be either rollback to previous Figure 4. Graph with times when a single compilation was started from
process checkpoint, taken before migration to the detached the machine Delta
node, or a process termination. Migration back to core node
is not an option, since the process may be already altered
by the owner of detached node.
The last problem in the user defined restrictions enforce-
ment is a direct result of preemptive migration support.
Thanks to the migration capabilities, the process can visit
many nodes during its life time. An owner of any of visited
detached nodes can alter the process being executed. This
means, the file system access violation checks must not
consider only the node from which they are being performed,
but all nodes that were visited during the process execution.
The problem can be illustrated again on our 3 nodes
cluster example. When a non-sensitive process is migrated to
untrusted node Gamma, the owner can modify the process.
For example, he can change it to delete all accessible files. If
the process gets to execution of these command on Gamma, Figure 5. Graph with times when a single compilation was started from
it will be eventually terminated due to access violation. In the machine Alfa
case the process migrates back to Alfa before executing the
deletion code, and the process visit history is not consulted, There is a vast amount of cases that could be measured.
it would be allowed to execute and all accessible files would We have decided to demonstrate one common possible use
be deleted. case - the parallel compilation. This is a good representative
A solution to this (and related) problem is discussed in of a harder class of problems, as there is relatively big
[24] and a stigmata mechanism is proposed. Each process overhead due to a high communication-to-computation ratio.
is marked by a stigma of all nodes visited and any sensitive Moreover, the applications used were not designed to run in
operation is consulted against user defined rules and all a cluster environment.

8
of this paper to do a detailed analysis of variance (time
variance was in range of few seconds), worst case scenarios,
etc. In cases when multiple concurrent compilations were
measured, the choosen set of results was one with a shortest
time of the compilation on the slowest machine.
The first set of performed tests demonstrates a standard
non-dedicated cluster functionality of Clondike. Figure 4
shows compilation times of a single compilation started
from the slowest machine (Delta). Each group of bars shows
compilation times for different cluster configurations. In
each bar group, there are 3 running times: the best time
achieved in the cluster, the best time achieved in a cluster
with IPSEC, and a theoretical minimum time. The first 2
Figure 6. Graph showing overheads of runs corresponding to Figures 5 and
times are clear. The theoretical optimal time is calculated as
4 both with and without IPSEC. The overheads are expressed in percents. follows:
X
St + ((Ts − St )/(Ts )) ∗ (1/( 1/Ti )),
i∈setof participatingnodes
(1)
where St denotes the sequential part of the compilation,
Ts denotes the time of compilation on the node that started
it, and Ti denotes the sequential compilation time on node i.
The set of participating nodes includes the node that started
the compilation.
The theoretical minimal time accounts for the sequential
time of the calculation, in order to isolate inherent par-
allelization limitations (due to Amdahl’s law) from inef-
ficiencies of the system itself. Ratio of achieved times to
theoretical minimum times calculated this way reflects the
overhead of the system (there is still some inherent limitation
Figure 7. Graph with times when each machine simultaneously started due to network transfers, but this cannot be so easily cleaned
one compilation
up).
There are a few noteworthy observations regarding the
graph on Figure 4. First, the measured times are very good,
In our demonstration, we use standard unmodified gnu even though the overhead is increasing with the number of
tools [25] like make, gcc, etc. The application being nodes, as can be seen on Figure 6. The increasing overhead
compiled is a Linux kernel, which is a sufficiently large is due to inefficiencies of current experimental scheduler
application to benefit from cluster parallelization. that cannot effectively use all machines especially in the
Clondike does not have all security mechanisms imple- end of calculation. The second important observation is
mented yet, but the performance most demanding part of that the overhead due to security (represented by IPSEC)
the security, the IPSec [26] based channel security, was used is apparent, but still quite small (15% in the worst case).
and therefore the performance figures are representative. Quite low security overhead is due to the fact that IPSEC
Tests were performed on a realistic platform, using 4 was configured to run the AES encryption, which is very
heterogeneous computers. All test machines have x86 64bit fast on 64bit platforms.
architecture and are interconnected with a standard 100Mbps In contrast to Figure 4, Figure 5 captures the results of
Ethernet. Table 1 lists all key characteristics of the machines a single compilation started from the fastest machine (Alfa).
used for testing. It is generally hard to compare machines The important observation here is that the compilation has
performance, so rather than meaningless frequency numbers, lower overhead both with and without the IPSEC. The key
the table captures the time it takes to build the kernel on each factor for the lower overhead is the fact that less percentage
of the machines. Another important value is a sequential of work is sent to other machines. In addition, based on the
portion of the build time - this includes mainly the final runtime observation of the system behavior while compiling,
linking. it seems that the scheduler can more effectively use other
Each test was performed 10 times and the presented values machines while running on Alfa. This is, however, an area
represent the minimum time achieved. It is not purpose that requires more research in future.

9
The second set of tests captures an ONDC-specific use [6] C. Kauhaus and A. Schafer, “Harpy: A virtual machine
case in which all machines start a compilation at the same based approach to high-throughput cluster computing,” http:
time. This is a use-case, that cannot be performed on any //www2.informatik.uni-jena.de/∼ckauhaus/2005/harpy.pdf.
[7] R. C. Novaes, P. Roisenberg, R. Scheer, C. Northfleet, J. H.
standard non-dedicated cluster, since only core machines can Jornada, and W. Cirne, “Non-dedicated distributed environ-
use the others in that case. In ONDC, each machine should ment: A solution for safe and continuous exploitation of idle
first do only its compilation and offer resources only after it cycles,” in In Proceedings of the Workshop on Adaptive Grid
is done with that. Results of this test can be seen on Figure 7: Middleware, 2003, pp. 107–115.
each machine completes its work in about the same or better [8] M. Kacer, D. Langr, and P. Tvrdik, “Clondike: Linux cluster
of non-dedicated workstations,” in CCGRID ’05: Proceedings
time than in non-clustered case (the slightly worse times in of the Fifth IEEE International Symposium on Cluster Com-
some cases are only due to random time variations). puting and the Grid (CCGrid’05) - Volume 1. Washington,
Probably the most important number is the time of a DC, USA: IEEE Computer Society, 2005, pp. 574–581.
compilation on the slowest machine (Delta), since it shows [9] “Kerrighed,” http://www.kerrighed.org/.
the total time spent since the start of the compilations till [10] “Openssi,” http://www.openssi.org/.
[11] “Mosix,” http://www.mosix.org/.
the end of the last. If we divide this number by 4, we get [12] “Lsf,” http://www.platform.com/.
an average build time of each of the kernels in this case. [13] M. Coppola, Y. Jgou, B. Matthews, C. Morin, L. P. Prieto, scar
In numbers, it would be around 58 seconds for a non- David Snchez, E. Y. Yang, and H. Yu, “Virtual organization
secured compilation. The best non-secured time measured support within a grid-wide operating system,” IEEE Internet
when starting from Alfa was 1 minute and 2 seconds, so Computing, vol. 12, no. 2, pp. 20–28, 2008.
[14] L. J. Winton, “A simple virtual organisation model and prac-
we can see that this case is even more resource utilization tical implementation,” in ACSW Frontiers ’05: Proceedings
efficient. of the 2005 Australasian workshop on Grid computing and
There can be many other test combinations even for e-research. Darlinghurst, Australia, Australia: Australian
this simple use case, but we believe the presented results Computer Society, Inc., 2005, pp. 57–65.
demonstrate clearly enough that parallelization of a ordinary [15] “Xtreemos,” http://www.xtreemos.eu/.
[16] “Seti,” http://setiathome.berkeley.edu/.
programs can be achieved with acceptable overheads. [17] J. Čapek, “Preemptive process migration in a cluster of non-
XI. C ONCLUSIONS dedicated workstations,” Master’s thesis, Czech Technical
University, June 2005.
In this paper, we have defined an extension of existing [18] K. Lai, L. Rasmusson, E. Adar, L. Zhang, and B. A. Huber-
clustering concepts. We have discussed its relationship with man, “Tycoon: An implementation of a distributed, market-
other architectures and its advantages. We have argued why based resource allocation system,” Multiagent Grid Syst.,
we believe that the architecture is going to be even more vol. 1, no. 3, pp. 169–182, 2005.
[19] R. Buyya, D. Abramson, and S. Venugopal, “The grid econ-
interesting in the future. To verify our ideas, we have
omy,” in Proceedings of the IEEE, 2005, pp. 698–714.
demonstrated feasibility of one possible use case of the [20] M. Koštál and P. Tvrdı́k, “Evaluation of heterogeneous nodes
architecture. in a nondedicated cluster,” in Parallel and Distributed Com-
puting and Systems, 2006.
ACKNOWLEDGEMENTS [21] L. Amar, J. Stosser, A. Barak, and D. Neumann, “Econom-
This research has been supported by the Czech Grant ically enhanced mosix for market-based scheduling in grid
Agency GACR under grant No. 102/06/0943 and by the os,” in 8th IEEE/ACM Int. Conf. on Grid Computing, 2007.
research program MSMT 6840770014. [22] M. Hanzich, F. Gine, P. Hernandez, F. Solsona, and
E. Luque, “Coscheduling and multiprogramming level in a
R EFERENCES non-dedicated cluster,” in Recent advances in parallel virtual
machine and message passing interface, 2005, pp. 327–336.
[1] D. P. Anderson, “Boinc: a system for public- [23] M. Stava and P. Tvrdik, “File system security in the en-
resource computing and storage,” in Grid Computing, vironment of non-dedicated computer clusters,” in PDCAT
2004. Proceedings. Fifth IEEE/ACM International ’07: Proceedings of the Eighth International Conference on
Workshop on, 2004, pp. 4–10. [Online]. Available: Parallel and Distributed Computing, Applications and Tech-
http://dx.doi.org/10.1109/GRID.2004.14 nologies. Washington, DC, USA: IEEE Computer Society,
[2] D. Ridge, D. Becker, P. Merkey, and T. Sterling, “Beowulf: 2007, pp. 445–452.
Harnessing the power of parallelism in a pile-of-pcs,” in [24] M. Kacer and P. Tvrdik, “Protecting non-dedicated clus-
Proceedings, IEEE Aerospace, 1997, pp. 79–91. ter environments by marking processes with stigmata,” in
[3] L. A. Barroso, J. Dean, and U. Holzle, “Web search for Advanced Computing and Communications, 2006. ADCOM
a planet: The google cluster architecture,” Micro, IEEE, 2006. International Conference on, 2006, pp. 107–112.
vol. 23, no. 2, pp. 22–28, 2003. [Online]. Available: http: [25] “Gnu,” http://www.gnu.org/.
//ieeexplore.ieee.org/xpls/abs\ all.jsp?arnumber=1196112 [26] S. Kent and K. Seo, “Security Architecture for the Internet
[4] “openmosix,” http://www.openmosix.org/. Protocol,” RFC 4301 (Proposed Standard), Dec. 2005, http:
[5] K. Kaneda, Y. Oyama, and A. Yonezawa, “A virtual machine //tools.ietf.org/html/rfc4301.
monitor for utilizing non-dedicated clusters,” in SOSP ’05:
Proceedings of the twentieth ACM symposium on Operating
systems principles. New York, NY, USA: ACM, 2005, pp.
1–11.

10
2009 International Conference on Computer Engineering and Technology

To Determine the Weight in a Weighted Sum Method for Domain-Specific Keyword

Extraction

Wenshuo Liu Wenxin Li


Key Laboratory of Machine Perception
Peking University
Beijing Supertool Internet Technology Co.Ltd
Beijing, China
{lwshuo, lwx}@pku.edu.cn

Abstract—Keyword extraction has been a very traditional Traditional methods focused on efficient algorithms
topic in Natural Language Processing. However, most to improve the performance of the task of keyword
methods have been too complicated and slow to be applied extraction. This paper presents a method emphasizing on
in real applications, for example in web-based system. This doing enough and effective preparing works, in order to
paper proposes an approach which will complete some simplify the real extraction process. The difference is
preparing works focusing on exploring the linguistic illustrated in Figure 1. While in traditional methods,
characteristics of a specific domain. This part can be every step must be performed for every document, the
completed once and for all and thus reduce the burden in weight extraction part in my work is finished once and for
the real extraction process. It is a weighted sum method and all. In my work, keyword extraction involves assigning
the preparing work focus on finding out the weight. Once we scores to each candidate words considering various
have the weight, the extraction can be completed by features, sort the candidates according to the score and
addition, multiplication and sort, which are quite simple for choose the few top ones. Four different features are used:
modern computer. Experimental results show the TF×IDF, the part-of- speech (PoS) tag, relative position
effectiveness of the proposed approach. of first occurrence and chi-square statistics. Some
experiments show that, the weighted sum of the feature
I. INTRODUCTION vector can be a good choice for the score, as long as we
have a proper weight vector. Different domains have
Keyword extraction is the process of extracting a few
different characteristics in the usage of word, so a certain
salient words from a certain text and using the words to
weight vector working well in one domain might be
summarize the content. This task has been widely studied
totally ineffective in another domain. The weight vector is
for a long time in the natural language processing
mainly the domain-specific information we here need to
communities, because it is important for many text
explore. This article is primarily about constructing a
applications, such as document retrieval. Domain-specific
model to learn the weight vector. The model is very much
keyword extraction came into sight when researchers
like a perceptron.
found out fully exploiting domain-specific information
can greatly improve the performance of this task.

978-0-7695-3521-0/09 $25.00 © 2009 Crown Copyright 11


DOI 10.1109/ICCET.2009.136
II. RELATED WORK TF×IDF (T, D) = P[term in D is T] × log P[T in a
Probabilistic methods and machine learning have Document]. (1)
been widely used in the task of keyword extraction. Peter The TF is measured by counting the times that term
D. Turney (1999) developed the system GenEx. The T occurs in document D, and the IDF by counting the
system exploited genetic algorithm and used to be the number of documents in the corpus in a specific domain.
state of the art. Eibe Frank, Gordon W. Paynter, Ian B. POS
H.Witten, Carl Gutwin, and Craig G. Nevill-Manning
When inspecting manually assigned keywords, the
(1999) described a simple procedure, called KEA, which
vast majority turns out to be nouns. But there are still
was based on Naïve Bayes. KEA was proved to be
differences between different domains. For example, in
equally effective compared with GenEx, and even
entertainment news, keywords might always be people’s
outperformed when fully exploiting domain-specific
names, which are nouns. But in sports field, verbs are also
information. Hulth (2004a) and Hulth (2004c) presented
quite important. We count the occurrences for each kind
approach using supervised machine learning. Their
of PoS tag as manually assigned keywords in the whole
approaches constructed the prediction models from texts
corpus and then divide by the total number of keywords.
with manually assigned keywords. Graph-based
For example, when we consider noun:
algorithms have also been explored. Xiaojun Wan, PoS(noun)=
Jianwu Yang and Jianguo Xiao (2007) proposed an manually assigned keywords which are noun
iterative reinforcement approach to simultaneously manually assigned keywords
finishing the task of keywords extraction and document
(2)
summarization. Their approach fully exploited the
The results are numbers between 0 and 1 and they
sentence-to-sentence, word-to-word, and sentence-to-
indicate which kinds of words are more likely to be
word relationship.
keywords in the target domain.
III. DATA REPRESENTATION C. Relative Position of First Occurrence
The input document will be first split up to get Not only the occurrence, but also the location of the
separate terms. However, the terms themselves are terms is important. Terms occurring in, for example,
useless. It is their attributes that matter. In this article, I headlines and in sentences at certain positions, such as in
choose four attributes, as mentioned above, to form a the first sentence of paragraphs, are shown to contain
feature vector for each candidate keywords. Web page more relevant terms. This feature is calculated as the
articles, which are classified into suitable domains, are number of words that precede its first appearance, and
used for training and testing. Those articles all have then divided by the document’s length. For example,
manually assigned keywords for the model to learn. For considering term T in document D:
any document, each candidate words will be represented
RPFO(T,D) =
as a four-dimension feature vectors. Words which are so
common that they have no differentiating ability, such as
the position of first appearance
“的”, have been stored in a stop list and removed during the length of the document
pre-processing. (3)
A. TF×IDF The result is a number between 0 and 1 and indicates
the proportion of the document preceding the term’s first
TF×IDF combines term frequency (TF) and inverse
appearance.
document frequency (IDF). It is designed to measure how
specific a term T is to a certain document D:

12
D. Chi-Square Statistic use the result to update the weight by adding the result to
For term T and Domain D, chi-square statistic is it. For example, when we consider the feature TF×IDF:
defined as: E (keywords 'TF × IDF )
β TF×IDF =
CHI (T , D) = (n11 × n22 − n12 × n21 ) ∑ TF × IDF (5)
(n11 + n12 + n21 + n22 ) (4) E (non − keywords ' TF × IDF )
× −
(n11 + n12 )(n21 + n22 )(n11 + n21 )(n12 + n22 ) ∑ TF × IDF
In the equation, n11 indicates the times that T occurs After similar calculation we have a vector β
in domain D, n21 indicates the times that terms other than as ( β TF×IDF, β PoS, β FirstOccurence, β Chi ) for update.
T occur in domain D, n22 indicates the times that terms
other than T occur in domains other than D, n22 indicates So after the nth article, we update the weight vector
the times that T occurs in domains other than D. The chi- ω by: ωn+1 = ωn +β
square statistic is used to test the dependence between a
term and a domain. The higher this value is, the more (6)
dependent term T is on the domain D. If n11×n22-n12×n21 > Thus with every article, we examine the difference
0, then term T is positively relevant to domain D, and if between keywords and non-keywords, and update the
n11×n22-n12×n21 < 0, then term T is negatively relevant to weight vector according to the difference. And finally we
domain D. have a weight vector.

IV. TRAINNING MODEL V. EXPERIMENTS AND EVALUATION

As the title suggested, it is a weighted sum method We scraped 2563 web pages from
and finally in the real extraction task all have to be done http://tech.mop.com/. All texts are about information
are multiplication, addition and sort. So far we have technology (IT). 1563 of them were used for training and
talked about how candidate keywords are generated and 1000 for testing. The whole text and the keywords
represented. In order to get the weighted sum of the four- manually assigned in the meta
dimension feature vector, we still miss the weight vector. keywords tag were extracted. We used the Chinese lexical
We need weights because the four features have different analysis system ICTCLAS (Institute of Computing
discriminating ability. Apparently the more the feature Technology, Chinese Lexical Analysis System) to
can discriminate between keywords and non-keywords, complete word segmentation and PoS tagging. This
the higher weight it should be assigned. We can find the system is developed by Chinese Academy of Science.
weight manually and actually that is the inspiration of this The weight vector we get for this IT domain is
work. But doing it manually is too time-consuming if we (66.59, 22.76, 8.250, 4.202). On average, 6.8 keywords
try to determine weight vectors for many domains. We are manually assigned per text. In the following
use some learning ideas from perceptron. experiments we choose 7 words with the highest scores as
All the articles in the training corpus are with the keywords. The extracted 7 words are compared with
manually assigned keywords. The weight vector is the manually assigned keywords. The results are
initially set to all zero, namely (0, 0, 0, 0). In every presented in Table 1, which shows: precision(P);
article, first on each dimension we examine the average recall(R); and F-measure(F) .
value of keywords and non-keywords respectively, P refers to the proportion of automatically selected
calculate the difference between them, and divide the keywords which are also manually assigned. R refers to
results by the sum of all candidate keywords. Then we

13
the proportion of manually assigned keywords selected by the weighted sums, which are used to rank the candidate
this method. keywords, are not fully exploited. If used properly, they
If we denote: might well benefit text categorization, document retrieval,
ASMA = the number of terms both automatically and other natural language processing tasks
selected and manually assigned
AS = the number of terms automatically selected
ACKNOWLEDGMENT
MA = the number of terms manually assigned
Then P and R are defined as: I’d like to thank Minghui Wu, Xuan Zhao, Hao Xu,
ASMA Songtao Chi and Chaoxu Zhang from Beijing Supertool
P= (7)
AS Internet Technology Co.Ltd for all the help and
R is defined as: suggestions they have provided.
ASMA I also want to thank Chun-Tsung Endowment Fund for
R= (8)
MA giving me a chance to take part in real research.
F-measure combines precision and recall. It is usually I would especially like to take the opportunity to thank
used as a standard information retrieval metric: professor Von-Wun Soo, who has been so kind and given
2× P× R me a lot of valuable instructions while I was in National
F= (9)
P+R Tsing Hua University.
After observation, we found out that the keywords REFERENCE
manually assigned are not all reliable, so we manually [1] Xiaojun Wan, Jianwu Yang and Jianguo Xiao. 2007.
refined 200 documents. 100 of them are used for training Towards an iterative reinforcement approach for
simultaneous document summarization and keyword
and others for testing. Table 1compared the performance extraction. In proceedings of the 45th Annual Meeting of
the Association of Computational Linguistics (ACL’07). pp.
of our method on different data set. The second 552-559. Prague, June 2007
experiment shows a significant increase. This method [2] Anette Hulth and Beáta B. Megyesi. 2006. A study on
automatically extracted keywords in text categorization. In
relies heavily on the data. As long as the data is reliable, the proceedings of the 21st International Conference on
Computational Linguistics and 44th Annual Meeting of the
this method can perform quite well. Association of Computational Linguistics. pp 537-544.
Sydney, July 2006
VI. CONCLUSION AND FUTURE WORKS [3] Anette Hulth. 2004a. Enhancing linguistically oriented
automatic keyword extraction. In the proceedings of the
In this article, we explored a new method on domain- Human Language Technology conference/North American
Chapter of the Association for Computational Linguistics
specific keyword extraction. This method focuses on Annual Meeting (HLT/NAACL 2004). Boston, May 2004
doing enough and effective preparing works to explore [4] Anette Hulth. 2004b. Reducing false positives by expert
combination in automatic keyword indexing. In: Nicolov,
the linguistic characteristics of a specific domain, and N., Botcheva, K., Angelova, G., and Mitkov, R., (eds.),
Recent Advances in Natural Language Processing (III),
thus simplifies the real extraction task. And experiments Current Issues in Linguistic Theory (CILT), pp. 367–376.
John Benjamins.
show
[5] Anette Hulth. 2004c. Combining Machine Learning and
Natural Language Processing for Automatic Keyword
TABLE I. THE PERFORMANCE Extraction. (Ph.D. thesis.) Department of Computer and
Systems Sciences, Stockholm University.
P R F [6] Anette Hulth. 2003. Improved automatic keyword
extraction given more linguistic knowledge. In proceedings
raw data 0.449 0.554 0.496 of the Conference on Empirical Methods in Natural
Language Processing (EMNLP’03), pp.216-223. Sapporo,
refined data 0.644 0.732 0.685 July 2003.
[7] Takashi Tomokiyo and Matthew Hurst. 2003. A language
model approach to keyphrase extraction. In proceedings of
that it did lead to a better performance. However, there the 2003 Conference on Empirical Methods on Natural
are still much to improve. We still can not make sure the Language Processing (EMNLP’03). Sapporo, July 2003.

weight vector we get is the optimum solution. Moreover,

14
[8] Li sujian, Wang Houfeng, Yu shiwen and Xin Chengsheng.
2003. News Oriented automatic Chinese keyword
indexing, Sighan workshop ACL’03, Sapporo, July 2003.
[9] Peter D. Turney. 2000. Learning algorithms for keyphrase
extraction. J. Information Retrieval. pp.303-336. NRC
44105
[10] Eibe Frank, Gordon W. Paynter, Ian H.Witten, Carl
Gutwin, and Craig G. Nevill-Manning. 1999. Domain-
specific keyphrase extraction. In the proceedings of the
16th International Joint Conference on Artificial
Intelligence (IJCAI’99), pp. 668-673.
[11] Peter D. Turney. 1999. Learning to extract keyphrase from
text. Technical Report ERB-1057, National Research
Council, Institute for Information Technology, 1999

15
2009 International Conference on Computer Engineering and Technology

Flow-based Description of Conceptual and Design Levels

Sabah Al-Fedaghi
Computer Engineering Department
Kuwait University
Kuwait
sabah@alfedaghi.com

Abstract—Building an Information System involves a first conceptual modelling but the modeller must take special care
phase of conceptual modeling of the “real world domain,” then not to confuse software aspects with aspects of the real world
a second phase of design of the software system. For being modelled.”
describing the software system, object-oriented methods and The problem with this approach is “that such languages
languages (e.g., UML) are typically used. For the system [e.g., UML] possess no real-world business or organizational
analysis process that produces the conceptual description, meaning, i.e., it is unclear what the constructs of such
object-oriented techniques or their semantic extensions are languages mean in terms of the business” [9]. The Object-
used. This paper concentrates on UML as the most widely used oriented IS design domain deals with objects and attributes,
language for these purposes. It proposes an alternative to
while the real-world domain deals with things and properties.
extending UML, through development of a conceptual
It is known that UML lacks constructs to facilitate rich
modeling methodology based on the notion of flow. This flow
model provides a conceptually uniform applied description
conceptual modeling. Scott W. Ambler observed that
that is appropriate for the system analysis phase. “although the UML is in fact quite robust, the reality is that it
isn’t sufficient for your modeling needs” [3]. He then
Keywords-conceptual modeling; UML; software system suggested using “UML as a base collection of modeling
analysis techniques which you then supplement with other techniques
to meet your project’s unique needs” [3].
I. INTRODUCTION There are many proposed UML extensions to enhance its
capabilities through incorporating semantic features for
Understanding and communication processes in the conceptual modelling. However, UML has been developed
business and organizational domain are an essential aspect of with the specific intention of designing and describing
development of information systems. Conceptual modeling software. In contrast, conceptual modeling languages are
is a technique that represents the “real world domain” and is intended specifically for describing the application domain.
used in this understanding and communication. The resultant Works that extend UML for use in conceptual modelling
model serves as a guide for the subsequent information claim that UML can be used in both systems analysis and
systems design phase that involves description of the system design; thus it eases the transition between these two
software system under development. This later phase stages. This paper argues that it is not a matter of lacking
typically utilizes object-oriented techniques to model the appropriate conceptual structures, but rather that UML is
software system. In this paper, UML is used as an example inherently an unsuitable tool for use in conceptual modeling.
of an object-oriented modeling language and methodology. Furthermore, the paper argues that enhancing UML to
An information system (IS) represents a real business incorporate the semantics necessary for conceptual modeling
establishment. It should reflect the reality of an organization will not lead to achieving the desired results. Instead we
and its operations. Consequently, building IS begins by present a new conceptual model called the flow model (FM).
drawing a picture of the business establishment as part of a We claim that FM provides conceptually a “better”
real-world domain. A conceptual model is a picture description. FM has not yet been formalized; however, its
describing this real world domain independent of any aspects features suggest that it is also appropriate for the system
of information technology. On the other hand, the IS design design phase. These claims are illustrated in Fig. 1.
phase is concerned with describing the information system
through design models intended to describe the software Strongly claimed Weakly claimed
system. UML is an important tool in both of these processes.
According to Bell [4], “production of UML diagrams, as Conceptual model (real world domain descriptions)
opposed to the engineering content behind them, is the single
most important activity in the software-development life FM FM
cycle.” Researchers have examined and some proposed UML Semantically FM + (Needs further
extending the use of object-oriented software design extended UML research)
UML
languages such as UML (e.g., Evermann and Wand [10];
Dussart et al. [7]; Opdahl and Henderson-Sellers [12]). Information system design and software modeling
According to Evermann and Wand [9], “UML is suitable for Figure 1. The claims in this paper.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 16


DOI 10.1109/ICCET.2009.130
1. It is stored.
II. THE FLOW MODEL 2. It is destroyed.
The flow model (FM) was first introduced by Al-Fedaghi 3. It is disclosed and transferred to another sphere.
[2] and has been used since then in several applications such 4. It is processed in such a way that it generates implied
as information requirements [1]. Even though this section is information (e.g., a is the father of b and b is the father of c
simply a review the basic model, it includes new illustrations generates the information that a is the grandfather of c).
of the model. 5. It is processed in such a way that it generates new
information (e.g., comparing certain statistics generates the
A flow model is a uniform method to represent things information that Smith is a risk).
that “flow,” i.e., are exchanged, processed, created, 6. It is used to generate some action (e.g., upon decoding
transferred, and communicated. “Things that flow” include or processing the information, the FBI sends its agents to
information, materials (e.g., manufacturing), money, etc. To arrest the spy who wrote the encoded message).
simplify the review of FM, we introduce flow in terms of In the uses substage, information is not a patient. The
information flow. patient is a term that refers to the thing that receives the
Information goes through a sequence of states as it moves action.
through stages of its lifecycle, as follows: The storage and uses/actions sub-stages (called
1. Information is received (i.e., it arrives at a new sphere, gateways) can be found in any of the five stages; however, in
like passengers arriving at an airport). the release and transfer stages, information is not usually
2. Information is processed (i.e., it is subjected to some subject to these sub-stages, so we apply these sub-stages only
type of process, e.g., compressed, translated, mined). to the receiving, processing, and creation stages without loss
3. Information is disclosed/released (i.e., it is designated of generality. To illustrate the “gateway” sub-stage, consider
as released information, ready to move outside the current that a person in Barcelona uses the Internet to ask a person in
sphere, like passengers ready to depart from airports). New York whether it is raining in New York. First, the query
4. Information is transferred (disclosed) to another flows to the receiving stage of the person in New York. The
sphere, e.g., from a customer’s sphere to a retailer’s sphere). New Yorker’s reception of the query triggers an action such
5. Information is created (i.e., it is generated as a new as physical movement to look outside to check whether it is
piece of information using different methods such as data currently raining. The gateway in his/her information system
mining). transforms the information flow to an action flow.
6. Information is used (i.e., it is utilized in some action,
analogous to police rushing to a criminal’s hideout after
receiving an informant’s tip). Using information indicates III. UML VS. FM
exiting the information flow to enter another type of flow To illustrate the advantages of FM-based conceptual
such as actions. We call this point a gateway in the flow. modeling, we compare UML and FM description. The
7. Information is stored. Thus, it remains in a stable state discussion will include some important features of FM.
without change until it is brought back to the stream of flow Fig. 3 shows a typical example of an UML graph [13].
again.
8. Information is destroyed. Created

Communicated
The first five states of information form the main stages of
Processed

the stream of flow, as illustrated in Fig. 2.


When information is stored, it is in a sub-stage because it Disclosed
occurs at different stages: when information is created
(stored created information), processed (stored processed
information), or received (stored received/row information).
The five-stage scheme can be applied to individuals and to Received
organizations. It is reusable because a copy of it is assigned
to each agent. Suppose that a small organization has a Figure 2. States of information.
manager and a secretary. Additionally, it has two
departments with two employees in each department. Shop
Therefore, it comprises nine information schemes, one for
the organization at large, one for the manager, one for the
secretary, one for department 1, and so forth. Sell product
The five information states are the only possible
“existence” patterns in the stream of information. To follow
the information as it moves along different paths, we can Customer
start at any point in the stream. Suppose that information Customer Vender
enters the processing stage, where it is subjected to some
process. The following are ultimate possibilities for the Figure 3. Typical UML graph.
information:

17
The figure includes two use cases: Sell product and Shop
Customer support. In UML, the two actors seem to be Customer Disclosure Vender
directly connected to the interior of Shop. They are
connected to the shop indirectly through having the two use Creation Creation
cases in the Shop. Conceptually, this in an ambiguous Creation
connection. Processing
Processing
The Shop is an active entity in the interaction. The usual Processing
Sell product
situation is that every thing that is received, processed,
created, released, and communicated by the two use cases is
first received, processed, created, released, and Receiving Cust. support Receiving
communicated by the Shop. The “Shop” is different from
“Sell products” and “Customer support.” It may be argued Disclosure Disclosure
Receiving
that “Sell products” is that part of the Shop that interacts
with the customers. Still, in the general case, the “global
sphere” of the Shop may or may not allow this direct Communica- Communication
Communica-
interaction. tion tion
The point here is that the semantics of the “lines”
connecting the Shop to Customers and Vendors is
ambiguous. Additionally, the kind of connection is not clear. Figure 4. FM description that corresponds to figure 3.
Apparently, the “Sell product–Customer support” connection
indicates flow of information (e.g., order, response to order),
and/or money. The vendor-“Sell product–Shop” connection Example: Imagine the following scenario:
may also denote these flows. There is apparent materials - The customer creates an order for a product.
(products) flow in customer-“Customer support” and vendor- - The “sell product” module in the shop receives the
““Customer support.” If we replace shop with “Market,” order and processes it.
then the semantics of the connections represent everything: - The “sell order” module sends the request to another
eggs, money, personnel, materials, etc. processing module, “customer support,” to deliver the
The actors in the UML description of Fig. 3 are modeled product to the customer.
as black boxes without interiors. The shop’s description - The “customer support” module sends a request to the
seems to be incomplete. Consider the following hypothetical vendor to deliver the product to the customer.
situations: - The vendor receives the request, creates the product,
1. A system that registers only information. For example, and delivers it to the customer.
a time clock hat reads information on ID card and registers Fig. 5 shows the resultant flows in the scenario.
the ID.
2. A system that reads information and processes it. For
Shop’s informational
example, a time clock that scans employees’ fingerprints
Customer’s 5 Vender’s
then searches in a fingerprint database to allow entrance. information Disclosure information
3. A system that reads data, processes it, then produces sphere sphere
new information. For example, a machine that reads health Creation
data of a person, compares it with tables to decide whether
the person is fit for a certain job or not. Processing
Processing
These three situations are represented in UML by an
actor, a use case. Nevertheless, each may necessitate Creation Sell product 7
different requirement that should be understood at this level 1 3 4
by all participants. For example, generating personal Receiving
Customer. support
information may be governed by privacy rules.
Fig. 4 shows an FM description that corresponds to Fig. Disclosure
3. In FM, Shop and the actors are spheres. Spheres can Receiving
receive, process, create, release, and communicate (transport) Communica- 2
these flowing things. “Sell product” and “Customer support” tion Communication 6
are processes in the Shop. The “flowing things” are
information, products, and money. Each of these flows is
represented by its own flow in the actual conceptual. Customer’s Receiving Vender’s physical
physical 9 sphere Manufacturing
However, Fig. 4 is drawn in a very general way to illustrate sphere
different directions of flow. The following example shows Transport Transportation Releasing
specific types of flows. 8

Figure 5. Example FM with two types of flow.

18
In Fig. 5, there are two types of flows: information flow assumptions than the minimum needed. The system acts on
(orders and requests) and physical products flow. At circle 1 actors and actors act on the systems; thus from the functional
in the figure the customer creates an order. It flows from the point of view they are all interacting entities. Roles (a term
creation stage to the disclosure stage, then to the used extensively in UML-related works) are different kinds
communication stage. The order crosses to the shop’s of interactions between two spheres. When two systems
informational stage at circle 2. It flows to “sell order” in the interact with each others, then both are actors.
shop’s processing stage (circle 3). Distinguishing between the system and the actors is
The figure shows the remaining three spheres where the suitable for computer developers. In computer science, there
creation stage is omitted because it is unused. The “sell are—most of the time—two sides: computer and
order” module sends to the “customer support” module to applications. This is not a central concern in FM. Secondly,
initiate a request to deliver the product (circle 4). The the notion of actors is introduced for lack of a common
disclosure stage causes the creation of delivery request that is notion that covers systems, human beings, and other
to be released to the vendor (circle 5). The delivery request information spheres. The five stages schema in FM provides
flows to the vendor’s informational sphere (circle 6). Then, it such a general notion. UML mixes information spheres with
flows to its processing stage, which triggers (circle 7) actual such notions as events. In FM, events are products of
actions in the vendor’s physical sphere. Notice that the spheres. No spheres means no events.
dotted arrow indicates change in the type of flow, from The only thing that distinguishes “the system” from other
informational flow to actions flow. The triggered flow does actors is that the system is the central actor. Every actor
not necessarily start from the communication/transporting interacts with the system. Interactions among actors are
stage. In this last sphere the product is created usually minimal and related to their interactions with the
(manufactured) and transported to the customer (circle 8). system. FM is more general; it represents any type of
Finally, the customer’s transporting action (e.g., going to the interaction topology. This is especially important for a
post office) allows him/her to receive the product. network environment. In FM the basic concept is sphere,
Such a scenario is understood by the customer, the shop regardless whether spheres (e.g., actors) are in the interior or
manager, analysts, and software developers. Even though the exterior of any sphere (e.g., system). In UML we may also
FM model appears to be an “extensive” description in introduce artificial actors such as those representing common
comparison with the UML description, the FM behavior shared by a number of different actors.
representation is simple because of its repeated application of Conceptually, this makes the concept of actors very
the five-stages schema and the uniform application of a confusing. Actors in this case are abstractions of something
single flow in each sphere. We claim that the FM description common to outsiders. In FM, these are, again, spheres just
is a “better” (i.e., more complete, more uniform) conceptual like any other spheres.
tool than UML. Our weaker claim is that FM can be The FM approach is suitable for describing
complemented with some UML structures such as procedural generalizations (e.g., specialization, inheritance, or sub-
control flow inside the modules “sell product” and “customer classing) as structural relationships among actors. In FM,
support.” there is a uniform modeling of interiors and exteriors of
spheres. An information sphere (as an example of a sphere)
IV. COMPARISONS OF SOME FEATURES <includes> information spheres regardless whether they are a
FM differs from UML in its basic structure and system’s information spheres or not. Similarly, UML
components. Further research may lead to inject some UML associations are associations among spheres regardless
constructs into FM. This section compares some of their whether they are systems or not. This conceptual
features. generalization eliminates a great deal of UML technicalities
but also allows more expressive power, since we can now
A. Actors and Spheres model the interior flow (stages) of all assemblies.
In UML, an actor is an outsider who interacts with the Additionally, the flow of information may eliminate the
system. “Outside” here refers to controllability (the system specification of certain kinds of associations among UML
cannot control the outsider). However, interaction between actors. For example, "navigable association" that indicates
the system and actors embeds controllability of interaction one actor controlling or "owning" the interactions can be
from either side. Controllability in UML refers to the interior reflected in FM by the flow of information. Simply, a sphere
processes of an outsider that the system cannot control. does not “turn on” until the flow reaches it (it receives
It is observed that “ad hoc mixing of abstract notation (2- information). This happens when the controlling sphere
D ovals, boxes), stick figures and 3-D elements make UML allows the flow of information to the controlled sphere. The
appear jarring. More effort could have been made to direction of arrows in FM has one meaning: flow of
construct a uniform and aesthetically pleasing information from one sphere to another. We will not discuss
representation” (Reference.com, 2008). In FM there is no these details, but the sweeping generalization of notions
necessity for differentiation between actors and the system. accompanied by zooming in on interiors of spheres promises
Actors and the systems are simply spheres of information abundant modeling benefits. Notice that FM allows
that interact (hence communicate) with each other. All are interaction between different spheres. In UML, these
“outside,” but interact with each other. This is in line with interactions cannot be represented in the same diagram as the
Occam's razor, where one should not make more system.

19
It is important to notice that use cases are not (internal)
design tools, rather they are “communication,” meaning they
Administrator User specify requirements and features as they are commonly
understood by participants including users, managers, and
Server Browser developers.
In UML, Use Cases are supposed to be top-level service
Start/Stop Set Target that the system provides to its actors. Internal behavior
Browser URL within the system should not appear in the top system level.
Server The status of common Use Cases (those used by parts of the
Serve Page Serve Page system and actors) is not clear. In FM, it is easy to identify
Use Cases of outside spheres through identifying where they
cross the sphere’s boundary. Here we achieve simplification
Figure 6. The interactions between a user, a web browser, and in addition to preserving identification of Use Cases.
the server it contacts (From [6]).
V. UML WITH SEMANTICS
Instead of UML, this section discusses some proposals to
enrich UML with semantics. There are many extensions of
Example: Suppose we want to diagram the interactions UML in this direction; consequently, to achieve some depth
between a user, a Web browser, and the server it contacts. in making comparisons with FM methodology, we will
Fig. 6 shows the resultant description. concentrate on works that constrain UML constructs in order
UML does not allow drawing interaction lines between to align it with conceptual modeling.
the actors because it is not clear what the interactions mean. Evermann and Wand [9] proposed “to extend the use of
Thus, at the least we would draw two diagrams. Fig. 7 shows object-oriented design languages [such as UML] into
different FM information spheres and possible flow of conceptual modeling for information system analysis.” The
information among them. proposed semantics are used to derive modeling rules and
B. Use cases guidelines on use of object oriented languages for business
domain modeling. Fig. 8 shows an example of UML class
Use Case Diagrams are descriptions of the relationships diagram (from Evermann and Wand [9]). It depicts a
between a group of Use Cases and participants (e.g., actors situation typically found in object-oriented models.
who interact with the system) in the process. The Diagrams Clearly, the description is not suitable for conceptual
tell what the system should specify and facilitate requirement models. It is loaded with technical consideration. More
specifications and communication among users, customer, importantly, it employs heterogeneous notions. Consider the
and developers. Use Cases can <<include>> Use Cases. edge between Customer and order. It is supposed to stand for
a relationship between them. What type of relationship can
exist between a customer (a person or corporation) and
Browser “order”? Apparently, “order” means a request to purchase
Processing something. Ontologically, there is nothing in the “real world
Processing domain” called “order.” It is an act of some agent. Ordering,
requesting, objecting, demanding, expressing, signaling, etc.
Start/Stop Set Target Receive have a similar ontological nature: acts of an agent.
URL Page
Customer
Serve Page Order 1 Name
dateReceived Address
Server is Prepaid
creditRating():string
number:String
Receiving price:Money
Disclosure Disclosure
Personal
Communication Coperate Customer customer
Line items 1 ContactName
Communication Receiving CreditCard#
creditRating
Order Line creditLimit Customer
Quantity:integer Remind()
Price:money billForMonth(Integer) Sales rep
Communication Communication IsSatistied:boolean
1 Product 0..1 Employee
Disclosure Receiving
Disclosure Receiving
Processing Figure 8. Example UML class diagram without ontological
Processing semantics (from [11]; used by [9])
Creation User Administrato
Creation

Figure 7. Interactions among several infospheres

20
What is the relationship between an agent and its acts? In Fig. 9, the arrows (except in the product sphere)
The answer is “acts flow out of agents,” in the sense that represent the flow of orders. The black boxes represent the
agents create, process, receive, transfer, and communicate customers. According to our understanding of the case, the
acts. So is having the order stand side by side with its actor corporate customer’s sphere contains the employee’s sphere.
(e.g., creator, processor) conceptually disturbing? The best Hence, orders are created in the corporate sphere either by
we can do is to explain the edge between Customer and the corporation itself or by some of its employees. Orders are
Order as actor/actee correspondence. “Order” is a type of also created for individual customers. The flow from these
“things that flow.” sources of orders are received by the company (circles 1 and
As mentioned previously, in UML, an actor is an outsider 2). We assume that the company has two units: one to
who interacts with the system. control the queue of orders (the Order Line box) and one to
In FM, orders and products are “things that flow,” as shown deliver products (the Product box).
in Fig. 9. A property is defined in FM as something that The company divert the flow to the Order Line sphere
flows in entities. Notice that each entity in FM has multiple (circle 3), which in turn triggers (circle 4) the Product sphere
spheres, just as a human being has several “systems”: to release the product (circle 5). The FM description can
digestive system, musculoskeletal system, nervous system, include a great deal more details; however, we tried to stick
etc. Food does not flow in the nervous system, and obtaining to what is expressed by the UML model. The dotted arrow in
oxygen is not the business of the digestive system. Similarly, the figure denotes a change in the type of flow from “flow of
a business information sphere—here, we do not mean orders” to “flow of products.” To simplify the figure, the
computer information system denoted previously as IS—is unused internal arrows have been removed.
different from its physical sphere, which is different from its
money sphere, etc.

1 Company 2 Receiving
Receiving
Transporting
Processing
Transporting

Transporting
Processing Receiving
Releasing
Releasing
Releasing
Creation
Processing
Creation Personal customer
Creation
Corporate customer
3

Receiving Transporting 4 Creation


Employee Releasing
Transporting

Receiving
Processing Receiving
Releasing
Order Releasing
Releasing Line
Processing Processing

Creation Creation Transporting Product


5

Figure 9. FM description of the system in Figure 8.

21
International Conference on Conceptual Modeling,
We claim that the FM model as described in Fig. 9 is a Yokohama, Japan, Nov. 27-30, 2001.
conceptualization that is suitable for both systems analysts [11] Fowler M., and Kendall, S. (2000). UML distilled: A brief
guide to the standard object-oriented modelling language.
and software developers. The flow notion is familiar in Addison-Wesley, Reading, MA
analysis, where many flow-based models are used, such as [12] Opdahl, A., and Henderson-Sellers, B. (2002). Ontological
the circular flow model used by economists and the supply evaluation of the UML using the Bunge-Wand-Weber model.
chains used in operation research. It is also suitable for Software and Systems Modeling, 1(1), 43-67.
software developers, where the control flow is a basic [13] Reference.com (accessed March, 2008), Unified Modeling
concept in computer science. Language,
http://www.reference.com/browse/wiki/Unified_Modeling_La
VI. CONCLUSION nguage
This paper has examined the problem of building a
conceptual model of “real world domain” as part of the
process of developing a business information system. For
this purpose object-oriented techniques are utilized, typically
based on UML as an object-oriented modeling language. In
addition, extensions of UML are proposed for conceptual
modeling. While such efforts are commendable, this should
not hinder the researchers from seeking fundamentally
different approaches. The flow model introduced in this
paper is drastically different in nature from UML. However,
there is a possibility that it can complement and be
complemented by UML in developing new methodologies
for conceptual modeling.

REFERENCES

[1] Al-Fedaghi, S. “Software Engineering Interpretation of


Information Processing Regulations”, IEEE 32nd Annual
International Computer Software and Applications
Conference (IEEE COMPSAC 2008), Turku, Finland, July
28 - August 1, 2008.
[2] Al-Fedaghi, S. “Some aspects of personal information
theory,” 7th Annual IEEE Information Assurance Workshop,
United States Military Academy, West Point, NY, 2006.
[3] Ambler S. W. (2007). Be Realistic About the UML: It's
Simply Not Sufficient
http://www.agilemodeling.com/essays/realisticUML.htm
[4] Bell, A. E. (2004.). Death by UML Fever, Communication of
the ACM, Vol. 2, No. 1 – March.
[5] Bunge, M. A. (1977) Ontology I: the furniture of the world,
Vol. 3. D. Reidel Publishing Company, Dordrecht, Holland.
[6] Carnegie Mellon University (accessed March 2008), UML
Use Case Diagrams: Tips and FAQ, accessed March 2008.
http://www.andrew.cmu.edu/course/90-754/umlucdfaq.html
[7] Dussart, A., Aubert, B. A., and Patry, M. (2002). An
evaluation of inter-organizational workow modeling
formalisms. Working paper, Ecole des Haute Etudes
Commercials Montreal.
[8] Evermann, J. (2005). Thinking Ontologically {Conceptual
versus Design Models in UML, In: Rosemann, M. and Green,
P. (eds.) Ontologies and Business Analysis. Idea Group
Publishing, 82-104.
[9] Evermann, J., and Wand, Y. (2005). Ontology based object-
oriented domain modelling: fundamental concepts,
Requirements Eng 10: 146–160.
http://www.mcs.vuw.ac.nz/~jevermann/EvermannWandRE05
.pdf
[10] Evermann, J. and Wand, Y. (2001). Towards ontologically
based semantics for UML constructs. In H. Kunii, S. Jajodia,
and A. Solvberg, editors, Proceedings of the 20th

22
2009 International Conference on Computer Engineering and Technology

A Method of Query over Encrypted Data in Database

Lianzhong Liu and Jingfen Gai


Key Laboratory of Beijing Network Technology, School of Computer Science and Engineering
Beijing University of Aeronautics and Astronautics
Beijing, 100083 China
lz_liu@buaa.edu.cn, gaijingfen0313@163.com

Abstract—The encryption mechanism is an effective way scheme has been improved compared with the pairs
to protect the sensitive data in database from various coding method and the traditional method.
attacks. When the data is encrypted, the query
performance degrades greatly. How to query encrypted II. RELATED WORK
data efficiently becomes a challenge. In this paper, a H. Hacigumus et al. introduced DAS model [3] , in
scheme to support query over encrypted data is proposed. which database is provided as a service to the client.
Firstly, we extend two-phase framework to complete Then in [4] they proposed two-phase query, in which
query, constructing different indexes for different data
the query is completed on the client side and the server
types. A new method to construct Bucket index for
side together, and they have proposed bucket index,
numeric data is proposed and bloom filter compression
algorithm is used for the character string, which will be
which support the range query for the numeric data.
saved in database as a numeric data. We analyzed the And they combined privacy homomorphism technique
false positive probability of bloom filter to get optimal to support arithmetic computation [5] . Bijit Hore
parameters. Experiment results show the performance of further optimized the bucket index method on how to
our scheme has improved. partition the bucket to get the trade between the
security and query performance [6] . The methods
Keywords-query; encrypted data; Database; security based on index is supported by DBMS, and focused on
the query performance at the cost of storage space.
I. INTRODUCTION There are also some researches on the fuzzy query
of character string. Zhengfei Wang proposed pairs
Database is the most important part of information coding function to support fuzzy query over the
System, enterprise databases hosts much important data, encrypted character data [7] [8] . Pairing coding
while they are threatened by inside and outside attacks. method encodes every adjacent two characters in
Database encryption, as an active protect mechanism, is sequence and converted original string directly to
an effective way to protect data integrality and privacy. another characteristic string by a hash function. This
When data is encrypted, how to query encrypted method can’t deal with singe character, and could
data becomes important and challenging. Many perform badly for big character string. Paper [9] had
researches adopt two-phase query method, avoiding proposed characteristics matrix to express string and
full table decryption; in which constructing index for the matrix will also be compressed into a binary string
encrypted data is the key to improve performance. We as index. Every character string need a matrix size of
construct different indexes to support different 259x256, it is large and will lead to much computation;
computations for different data types in two phase in addition, the length of index has come to more than
query, the first of which returns coarse result by using hundred bits, which is not suitable for storage in
index, and the other of which decrypts the encrypted database.
result and does a refined query.
We perform range query of numeric by constructing III. THE ARCHITECTURE OF ENCRYPTED DATABASE
a bucket index, and complete fuzzy query of characters
effectively by using the bloom filter as the encrypted A. Encrypt storage model
index. Firstly, we use triple to express a character R( A1 ,..., Am ,..., An )
string as a set, build bloom filter on it according to the We use to represent a database
real situation, then convert the bloom filter into a relation model, and we classify the data into sensitive
numeric data, since a character string’s match is usually and not-sensitive. Our encryption scheme base on
not as quick as the match of a numeric data [2] . We column-level, the column-level encryption minimizes
analyze the relation of the parameters that affect the the number of bytes encrypted, with flexible choice of
false positive probability. The experimental results encrypted fields and good efficiency especially for only
shows that the performance of the queries in our a few fields sensitive. A compromise solution between

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 23


DOI 10.1109/ICCET.2009.173
performance and security can be achieved by only the two proxies. Store Module or Querying Translator
encrypting the sensitive fields [1] . deal with it according to SQL type, using metadata in
In order to fasten the query of encrypted data, we Security Dictionary to translate user SQL.
got encrypted column and index column for every The Store Module will turn the insert SQL into a
sensitive column data. We build different types of corresponding one with data encrypted. The query
index to support different computations. Encrypted Translator will split an original query over unencrypted
column is used for equation query, which is another relations into: (1) a corresponding query over encrypted
virtue of column level encryption. We build bucket relations to run on DBMS, (2) a client-query for post-
index to support range query, mainly for numeric data processing results of the server-query, which will be
and date data. And we construct index using bloom sent to QRF (Querying Result Filter) as a querying
filter for character data to support fuzzy query. condition. QRF takes the encrypted result as input, and
Corresponding encryption relation can be expressed as then computes every record by the query condition,
E
( E
R S A1 ,..., Am ,..., An , A1S ,... ArS ,... AmC (1)
) decryption function will be called when encrypted data
involved, output of process is exact query result set,
where the column with upper E stands for the and then QRF sends the result to application through
encryption column, the column with upper S stands for the secured communication. In fact, the essential of two
the bucket index column, and C stands for the index phase query is generation and use of index.
column for character string. They are expressed as
follows: IV. CONSTRUCT BUCKET INDEX FOR NUMERIC DATA
AiE = Encryt ( Ai ), AiS = Sindex( Ai ), AiC = Cindex( Ai ) (2) The construction of index should follow two
Where we assume Encrypt() is the encrypt function, principles, firstly the index filters false record
Sindex() is the bucketIndex() function and Cindex() is efficiently, and secondly it should be safe enough not
the function generating the character index. to leak the true value. Moreover there are many data
types in DBMS, and there will be many types of
B. The process of encrypted data queries. For example, character data need equation and
Our scheme extends two-phase query framework [4] fuzzy query, numeric data needs equation and range
as shown in Fig.1, an Encryption/Decryption Engine query, while date data needs query with “between…and”. It
layer is added between application and DBMS. Every is not possible an index supporting all computations, so
time an application puts forward a query, the we built different types of indexes according to the data
application interface on its own side accepts it and type.
transfers it to the E/D Engine. The application interface Different from the bucket index in DAS [4] , we
is the only thing we provide to applications like setting construct order-preserving bucket index for numeric
a client proxy, in contrast, we have an application data by a series computations, without storing and
listener for listening request come from every accessing the metadata about partition information,
application interface on the E/D engine side like setting which also enhance the data security. The computations
a server proxy. The communication between are as follows:
application and the E/D engine depends on interact of Step 1: we divide every data with a Seed, in order
to get the quotient and residue, and we got the digit
Store Module
To Store Encrypted data number of a numeric data. So we have IB as the initial
(with encryption)
bucket number.
v−r
Insert
Security IB = digitNum(v) || (3)
Application
interface
Dictionary
seed
Coarse Querying on
Select Encrypted data Step 2: In order to enhance the security of the
Application/
Web Browser
Querying Translator
bucket number, we have the IB blurred. We take a
Querying DBMS
Result monotone increasing function (F(x)) to transform IB, in
Querying
condition this way we have final bucket index, and the true value
Encrypted
data
Plain
text
is obscured and safe on the condition that F(x) is secure.
Querying Result Filter
( With decryption ) It is proved easily that a larger v will have a larger
Temp Query Result
IB, also a larger F(IB), this characteristic will support
range query for numeric data, see details in [4] . Seed
Encryption/Decryption Engine and F(x) are the only ones we need to protect, which
Figure 1. Architecture of storage and query of encrypted data
also decides the query efficiency.

24
V. CONSTRUCT INDEX FOR CHARACTER STRING the character string will be mapped to a m-bits array
Large quantities of string data are used in many comprised of ‘0’ or ‘1’, which will then be stored in the
applications and fuzzy query is used frequently. How to database as index in the form of numeric. In this way, a
execute a query efficiently over the encrypted string fuzzy query over character data equivalent is a
data are the emphases of this paper. membership query over the bloom filter only by simple
& operation of numeric data, not full-table decryption
A. Triple for character string any more.
In this section, we construct a triple to present a C. Analysis of the false positive probability for bloom
character string, which can express the characters in the filter
string and the relations of the characters. It is defined
as follows: The key of our method is to minimize the false
Definition 1 Triple for a character string: For a records returned, which depends on false positive
string s=’ c1 c2 ….. cn’, we have w presenting the set of probability of the bloom filter, while the false positive
word split by blank, comma and full stop characters. u probability depends on multiple factors. We need to
presents the set of characters in s. r is used to describe analyze these relations. The probability of a false
the relationship of adjoining characters. So the triple is positive for an element is
k
comprised of these three, At last we have t = w, u , r . ⎛ ⎛ 1⎞ ⎞
kn k
f= (1 − p ) = ⎜1 − ⎜1 − ⎟ ⎟ ≈ ⎛⎜1 − e m ⎞⎟
k − kn
(4)
⎜ ⎝ m⎠ ⎟ ⎝ ⎠
B. Bloom filter on the triple ⎝ ⎠
where a large m and a small n both have a large f, and f
( )
A Bloom filter is a simple randomized data
structure that answers membership query with no false is smallest when k = (ln 2) ⋅ m [12] .
n
negative and a small false positive probability [11] , It is
When a query condition is “LIKE %matchStr%”,
space-efficient, using m-bits array for representing a set
the probability of a not-matched record returned is
S={s1,s2,…,sn}. Initially, all bits in the bit array are set
to 0. A bloom filter uses k independent random hash f NUMBER( matchStr ) , where NUMBER(matchStr) stands for
functions h1,…,hk with range {0,…,m-1}. For each the number of elements that matchStr has. So we have
element s ∈ S , the bits hi(s) are set to 1 for 1 ≤ i ≤ k . To the larger matchStr is, the smaller of a false record
check if an element x is in S, is to check whether all returned probability gets.
hi(x) are set to 1, if not, then clearly x is not a member In practice, k must be an integer, and smaller k
of S, if all hi(x) are set to 1, we think that x is in S with might be preferred since they reduce the amount of
false positive probability [12] . computation necessary. When k=1, we will see that it
becomes pairs coding function, we can say pairs coding
String s= ”a1a2…an” is a special case of bloom filter. By the conclusion
above, pairs coding function has
String[] w={w1 …wn} ⎛ 1⎞
n
−n
f = 1 − p = 1 − ⎜1 − ⎟ ≈ 1 − e m , k = 1 (5)
⎝ m⎠
String[] r={r1,r2 …rn} char[] u={a1,a2 …ar} ( )
The more (ln 2) ⋅ m is close to 1, the better of the
n
false positive probability is, where n is the number of
s1 s2 si Sn
elements, and m is the total bits size of the index. So if
n is large, a larger m will be needed, or else the false
Si positive probability will be high.
D. Algorithm of index based on bloom filter
.

The bloom filter algorithm we used is as described


h1 h2 hk
in Fig. 3 where we use MD5 to get k hash functions,
m-bits array and then convert all the hash positions to numeric as
index.
0 m Now we can convert the LIKE query over encrypted
Figure 2. The bloom filter built on triple relation to the query over the index attribute. Assume
the condition for a query is “WHERE Ai like
We build bloom filter index on the triple according ‘%matchStr%”, we first get the index value of
to the real situation, which is shown in Fig 2. Every ‘matchStr’, then the condition changed to WHERE AiS
element in the u and r will be encoded into multiple &value=value. Take ORDERS relation as an example,
positions of the binary string with the tag of ‘1’, then we make index for the sensitive column is o_comment,

25
Fig. 4 is the query over ORDERS, and the sensitive
column is O_COMMENT. We compare the method of
pairs coding and bloom filter when k=1, which shows
the improvement of our method. Fig. 5 is query about
PART, and the sensitive column is P_CONTAINER.
Also we compare our method to pairs coding method
extended by different k and traditional method, the
result shows the improvement of the bloom filter based
index is obvious.
k=1,m=31 bloom filter
1.2
pairs coding
fullTable Decryption
y 1
t
i
l
i
b
a 0.8
b
o
r
p 0.6
y
r
e
u
q 0.4
e
s
l
a
f 0.2

0
1 2 3 4
order.comment like %String%

Figure 4. Comparison of bloom filter, pairs coding and


Figure 3. The bloom filter algorithm traditional methods

let len=2,m=31,k=4. When a query is ‘o_comment like bloom filter,k=2


‘%unusual%’’, we get the index value is 480497654 comparsion between extended pairs coding,k=3
with the same parameters. Then a converted query different methods extended pairs coding,k=2
condition is pairs coding,k=1
1
fulltable decrypt
bitand(e_comment, 480497654)= 480497654 (6) 0.9
y
t 0.8
i
VI. THE EXPERIMENT AND THE ANALYSIS l
i 0.7
b
a
b 0.6
We leave the efficiency of bucket index out of o
r
p 0.5
account of this paper. Purpose of our experiments is to y
r
e 0.4
test the performance of fuzzy query among our method, u
q 0.3
pairs coding and the traditional method. According to e
s 0.2
l
a
TPC-H standard, we use the tool of Benchmark Factory f 0.1
for Database to make our database, we take scale=1, 0
we use table ORDERS and PART as experimental data 1 2part.container
3 like4 %string%5 6

source. The encryption algorithm is DES, length of the Figure 5. Comparison of different index methods
Key is 128; programming language is Java; the
environments are windows XP, P4 2.66 CPU, 1G RAM
and database is Oracle 10g. VII. CONCLUSION
We have the following definition of false query We proposed a query scheme to query encrypted

probability: data efficiently by using different types of index for
Definition 2 We assume the number of tuples different data, and then converted the query over the
returned in the first phase of the query is n1, and the sensitive attribute into the query over the index
number of tuples satisfying the original query is attribute in two phase query. We construct a bucket
n2, n1 ≥ n2 , then the false query probability is: index without saving the metadata of every partition,
n1 − n 2 which enhance the security of the sensitive data. We
fq = (7) focus on the fuzzy query over encrypted character
n1
string. Firstly, we use a triple to denote a string, using
By the way fq is different from f, f is the probability bloom filter to check the existence of elements of the
of an element not in the set being taken as a member, Triple. Thirdly, we analyzed the parameters of bloom
and fq is the proportion of get the wrong records, while filter to get the minimal false positive probability.
fq can reflect f. We get fq by executing the fuzzy query Finally, we evaluated the performance and efficiency of
over encrypted relation, and got n1, n2 recorded. our two phase query. Compared with conventional

26
queries and the pairs coding method, the experimental [5] H. Hacigumus, B. Iyer, and S. Mehrotra. “Efficient execution
results show the performance improved. of aggregation queries over encrypted relational databases”. In
the proceedings of Database Systems for Advanced
Applications (DASFAA), 2004, pp. 125-136.
ACKNOWLEDGMENT
[6] B. Hore, S. Mehrotra and G. Tsudik. “A Privacy-Preserving
This work is partly supported by the National Index for Range Queries”. In Proceedings of the 30th VLDB
High-Tech Research and Development Plan of China Conference, 2004, pp. 720–731.
under grant No. 2005AA113040 and the Co-Funding [7] Z. Wang, J. Dai, W. Wang and B.L. Shi. “Fast Query over
Encrypted Character Data in Database”. Communications In
Project of Beijing Municipal Education Commission Information and Systems, 2004, pp.289-300.
under Grant No. JD100060630.
[8] Z.F. Wang, W. Wang and B.L. Shi. “Storage and Query over
Encrypted Character and Numerical Data in Database”. In
REFERENCES Proceedings of the 2005 The Fifth International Conference on
[1] S. Sesay, Z. Yang, J. Chen and D. Xu. “A secure Database Computer and Information Technology, 2005, pp. 591-595.
Encryption Scheme”. Consumer Communications and [9] H. Zhu, J. Cheng and R. Jin. “Execution Query over Encrypted
Networking Conference (CCNC), 2005, pp. 49-53. Character Strings in Databases,” Frontier of Computer Science
[2] Y. Zhang, W. Li and X. Niu. “A Method of Bucket Index over and Technology, 2007, pp. 90-97.
Encrypted Character Data in Database”. Intelligent Information [10] Y. Ohtaki. “Partial Disclosure of Searchable Encrypted Data
Hiding and Multimedia Signal Processing, 2007, pp. 186-189. with Support for Boolean Queries”, Availability, Reliability
[3] H. Hacigumus, B. Iyer and S. Mehrotra. “Providing Database and Security (ARES08), 2008, pp. 1083-1090.
as a Service”. In the Proceedings of the International [11] J. Bruck, J. Gao and A. Jiang. “Weighted Bloom Filter”.
Conference on Data Engineering (ICDE), 2002, pp. 29-38. Information Theory, pp. 2304-2308, 2006.
[4] H. Hacigumus, B. Iyer, C. Li and S. Mehrotra, “Executing SQL [12] M. Mitzenmacher. “Compressed Bloom Filter”. IEEE/ ACM
over encrypted data in the database service provider model,” In Transactions on Networking, vol. 10, no. 5, 2002, pp. 604-612.
ACM SIGMOD Conference, 2002, pp. 216-227.

27
2009 International Conference on Computer Engineering and Technology

Traversing Model Design Based on Strong-association Rule for Web Application


Vulnerability Detection

QI Zhenyu1, XU Jing1, GONG Dawei1, TIAN He1


Institute of machine intelligence, Nankai University
TianJin, China, 300071
qi_zhenyu@hotmail.com; xujing@nankai.edu.cn; flyingdonkeycn@msn.com; fyonatian@hotmail.com

Abstract—With more important function in information algorithm to get some high-related rule by analyzing
society, software dependability has been in higher demand. transaction data stored in database. In section 3 we will
Web application vulnerability has become one of the biggest discuss association rule.
threats for software security. Detecting and solving Finally, this paper presents one traversing model,
vulnerability is the effective way to enhance software which provides strong support for simulating attack
dependability. Most active method traverses all web links model and then give some method to traverse web page
and interactive units in traversing step, which is easy to aiming to detect web application vulnerability.
cause low efficiency and no pertinence. This paper focuses
on characteristic of web application, especially web pages II. OVERVIEW OF HITS ALGORITHM
and presents one traversing model based on high-related
rule, which make detection more efficient. From hacker’s When one page links to another page, it means that
view, this model applies the HITS algorithm to generating a there exists some logical relation between them. Some
series of pages which may be used by hackers as attacking. links from different pages but to one page could display
Due to ignoring content in web pages for HITS algorithm, the importance of this page. So lots of link information
we adapt improved Apriori algorithm to get optimized can be used as an important resource to find content
frequency set, on basis of which we deduce high-related rule correlation.
between properties of interactive unit and way of attacking. HITS algorithm mines the link structure of the Web
Finally, this paper presents the traversing model for web and discovers the thematically related Web communities
application vulnerability detection. [1, 2] that consist of ‘authorities’ and ‘hubs’. Authorities
are the central Web pages in the context of particular
Keywords-software dependability; Web Vulnerability; HITS query topics. For a wide range of topics, the strongest
algorithm; Apriori algorithm authorities consciously do not link to one another. Thus,
I. INTRODUCTION they can only be connected by an intermediate layer of
relatively anonymous hub pages, which link in a
Web application has been applied into many kinds of correlated way to a thematically related set of authorities.
field. More popular web application becomes, more These two types of Web pages are extracted by iteration
vulnerability can be used as attacking. But the speed of that consists of following two operations.
∑y ∑x
vulnerability detection development is slower obviously.
Therefore, active detection method simulating hacker xp = q , yp = q (1)
q→ p p →q
becomes the development trend. Can we find out attack
point from so much information as quickly as hacker in For a page p, the weight of Xp is updated to be the sum
the web pages? The answer is yes. Traversing problem in of Yp over all pages q that link to p: where the notation
vulnerability detection is presented on basis of this q→p indicates that q links to p. In a strictly dual fashion,
consideration. the weight of Yp is updated to be to the sum of Xp.
Web application not only consists of web pages, but Therefore, authorities and hubs exhibit what could be
also hyper links、active links、active interactive units, called mutually reinforcing relationships: a good hub
which contain lots of logical relations. These relations is points to many good authorities, and a good authority is
the right thing hackers look for, because logical relation pointed to by many good hubs?
means that there could be data stream between pages. HITS algorithm gives every page two weight:
Web pages which are browsed and interacted most authorities weight and hub weight. Finally it outputs a
frequently are the pages which interest hackers most. series of pages with highest weight. Kleinberg [3]
HITS is the classical algorithm based on hyperlinks. It demonstrates that this algorithm convergence. Other
distinguishes the importance of links according to weight. papers [4], [5] also have description of this algorithm.
But pagerank based on weight has nothing to do with Firstly, HITS gets start set which consists of pages
initial parameter selection [6], which will be through initial URL and then generate base set on basis of
demonstrated in section 2. Therefore, these pages getting it. The base set includes pages pointed by start set and
high weight by HITS algorithm are the place easy to others pointing to start set. The rest of algorithm mainly
generate vulnerability. They provide basis for effective works in the base set. We define Xp and Yp as
detection but bring unavoidable cursoriness. non-negative integers for every page in the base set. If the
Although the result of HITS is good, there are still value of Xp is big, the page will be considered a good
some problems. Because this algorithm ignores the authority; if the value of Yp is big, the page will be
relation between content of web pages and way of considered a good hub.
attaching. Therefore, this model adapt association rule We can mark pages by integers like {1,2,…,n} and
define their n×n Adjacency Matrix. If Pi points to Pj, then

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 28


DOI 10.1109/ICCET.2009.79
the value in matrix of (i, j) is 1, else 0. Similarly, we This is taken to be the probability P(A B). The rule has
define authority weight and hub weight as x=(x1, x2, …, confidence c in the transaction set D if c is the percentage
xn), y=(y1, y2, …, yn), then the matrix form of formula (1) of transactions in D containing A that also contain B. This
is: is taken to be the conditional probability, P (B|A). That is,
x ← AT y , y ← Ax (2) confidence(A->B)= P (B|A)=support(A B) /
support(A)=c , support(A->B)=P(A B)=s.
Stretching out formula (2) we can get:
The popular association rules Mining is to mine strong
x ← AT y ← AT Ax ← ( AT A ) x , association rules that satisfy the user-specified both
minimum support threshold and confidence threshold.
y ← Ax ← AAT y ← ( AAT ) y (3) That is, minconfidence and minsupport.
Therefore, vector x, y can be deduced by formula (3). If support(X)≥minsupport, X is frequent itemsets.
According to Linear Algebra theory, Iterative sequences Frequent k-itemsets is always marked as LK. If
will convergence at Eigenvector by standardization. In support(A->B)≥minsupport and
other words, hub weight and authority weight are intrinsic confidence(A->B)≥minconfidence , A->B is strong
property of page. So it has nothing to do with initial correlation. Several Theorems are introduced as follows:
vector and selected parameter [6]. (1)If A⊆B,support(A)≥support(B).
(2)If A⊆B and A is non-frequent itemset,then B is
III. ASSOCIATION RULE EXTRACTION IN WEB non-frequent itemset.
APPLICATION (3) If A⊆B and B is frequent itemset,then A is
In client side web page is actually HTML document, frequent itemset.
which can be got and read by user easily. When we
B. Apriori algorithm
collect all HTML documents of one web application
displaying in the client side, all of them constitute Apriori algorithm is an influential algorithm for mining
document database. HTML document is actually general frequent itemsets for Boolean association rules, employs
text plus special tag. These tags are keywords for an iterative approach known as a Level-wise search,
analyzing HTML document. We can find out some where k-itemsets are used to explore (k+l)-itemsets. First
association rules in web pages. This type of analysis the set of frequent 1-itemsets is found. This set is denoted
collects keywords displaying together and then find their L1,then L1 is used to find L2, the set of frequent
relation. 2-itemsets, which is used to find L3, and so on, until no
Admittedly, keywords in HTML should be collected; more frequent k-itemsets can be found. The finding of
some keywords in webpage document also should be paid each Lk requires one full scan of the database. The
attention such as username, password, search, upload, problem of mining association rules can be decomposed
download etc. Because there is association between these into two major steps: 1) Find out all frequent itemsets; 2)
text and interactive form corresponding to some Use the frequent itemsets to generate the strong rules.
keywords. Since main source where hackers get Once all frequent itemsets from transactions in a database
information is information in webpage, it is important to D have been found, it is straightforward to generate
find relationship between web application page and strong association rules from them, where strong
hacker attack. association rules satisfy both minimum support and
Association analysis deals with etyma and then minimum confidence. In the meantime, these association
removes useless words. After pre-processing, we could rules should satisfy the minimum weighted
find a series of keywords. Finally, association rule [7-9] interestingness.
could be used as extracting high-related rule. In database, C. Improved Apriori algorithm API
every document could be viewed as a transaction, and
keywords in document could be viewed as items. So Based on the Apriori algorithm, an improved algorithm
database could be displayed as follows: for association rule mining named APL is proposed.
{document_id, set_of_keywords} Based on a strategy of transaction database fuzzy pruning,
APL reduces the size of the database and improves the
A. Association Rule efficiency of the algorithm. It doesn't like the Apriori
Association rules mining can he stated as follows: Let which fixes a new candidate after each complete database
scanning. It can add new candidate at any start point. It
I = (i1 , i2 ,..., im ) be a set of items.
dynamically values the support of all the counted itemsets.
Let D = (T1 , T2 ,..., T j ,...., Tn ) , the task-relevant data, be If all the subsets of an itemset are frequent, the itemsets
will be as a new candidate. Based on the definition of the
a set of transactions in a database, where each transaction
frequent itemset, if itemset I is not frequent, namely P (I)
T j (j=1,2,⋯ ,n) such that T j ⊆ I . Each transaction < minsupport, if we add item A into I, the result itemsets
is assigned an identifier, called TID. Let A he a set of (I U A) can not be more frequent than I, so I U A is not
items, a transaction T is said to contain A if and only frequent.
if A ⊆ I . An association rule is an implication of the Theorem 1: Any item set in Lk must be the super set of
a certain item set in Lk-1.
form A → B where A ⊆ I , B ⊆ I and Theorem 2: If a transaction does not contain any item
A ∩ B = ∅ . The rule A → B holds in the transaction set in Lk-1, then deleting this transaction will not affect
set D with support s, where s is the percentage of the calculation of Lj (j > k)
transactions in D that contain A B (i.e., both A and B). The conclusion of Theorem 1 and Theorem 2 is that a

29
transaction contains no item set in Lk-1, that is to say document. It is fundamental for detection to collect more
when it is 0, the transaction can be deleted from the information that hackers are interested in. As figure1 this
database. Regarding the "0" here, can it be further paper designs one traversing model based on strong
changed? If the 0 can be replaced by a bigger number, association.
then it will be faster to prune the database obviously. HITS algorithm outputs a series of high-weight pages
Based on the thinking above, we extend theorem 1 and by inputting initial URL. Through response from server,
theorem 2, and put forward more theorems below: these URL requests get pages in the form of document.
Theorem 3: Any item set in Lk must be the super set of Each document is stored in database, which provides data
k certain item sets in Lk-1. for analysis. By association rule algorithm we can get a
Theorem 4: If a transaction contains less than k item frequent itemsets. But its performance is not good enough.
sets in Lk-1, then deleting this transaction will not affect So we combine APL and feedback from database to
the calculation of Lj (j > k) enhance performance. Through several cycle of
Theorem 3 and 4 guaranteed this conclusion: during optimizing, it is quicker and better. Finally, this strong
every time calculating the support of Lk, if a transaction association will be used to direct vulnerability design in
contains less than k+1 item sets in Lk, mark this simulating attack.
transaction a delete and consider no more in the scans
later. Compared with theorem 1 and 2, evidently theorem V. DATA IN WEBPAGE
3 and 4 can delete more invalid transactions. In HTML document there are links, filename, input
The improved algorithm, APL deletes more invalid field、hidden field、selection field of form. We locate
transactions, further reduces the records which will be these data mainly by HTML tags. For example, find
scanned next time, and improves the efficiency of the <href> to locate links and find <form> to locate several
algorithm. kinds of field in forms. In all kinds of data, the most
D. Strong association in Web Application Vulnerability important ones are dynamic forms and links.
Detection Content embedded in Tag <href> should be found to
get web pages, such as <a
Algorithm: Use the mediate results of database href=http://news.sina.com.cn/20080110/n33543.shtml
scanning last time to prune the database. It deletes more class=red>alcate bell</a>. What need to pay attention is
transactions, prunes the database with larger scale, and that URL should be indeed part of web application.
further reduces the time needed by the next scan. Traversing depth and breath could be set in advance. We
Input: Transaction database D, minimum support must avoid traversing same page repeatedly, which could
threshold minsupport lead to a dead cycle.
Output: All the frequent item sets in the database D. Dynamic form is to generate dynamic web pages by
L1= {large 1-itemsets} sending request to server. All kinds of CGI program are
return L1 responsible for responding dynamic form. So input and
for(k=2; Lk-1≠null; k++){ output of CGI program is the object we concern most.
Ck=Apriori-gen (Lk-1); Content in the dynamic form is actually Input box
//the item set that new generated embedded in the tag <form>.
Forall transations t D { Typical form is listed as follows:
If (Ldelete=0) { <FORM name=" myform”
Lt=subset (Lk, t); //the candidate item set action=http://myWEB/a.cgi method=" post”>
contained in t <input type=hidden name=site value='com'
Forall candidates l Lt length-10>
l.count++; <input type=text name=ABC Value="abc"
If (|Lt |<k+l) { length=10>
t.delete=1; //make a delete mark}}} <input type=hidden name=chatlogin
Lk={l k| l.count > minsupport } value='in'>
return L = kLk; //return all the frequent item sets <input type=hidden name=product
According to the output of API, it is easy to find out value='mail'>
that hackers attack web application vulnerability when <input type=submit name=sumbmission
interactive. We can deduce strong relation between value=“submit”>
interactive properties and attack type, which provides </FORM>
support for traversing on purpose. So this paper presents Dynamic form can be located by finding keywords
one traversing model more efficient from hacker’s view. <form> and then we get the properties of form by some
IV. TRAVERSING MODEL BASED ON STRONG keywords like method, post, get, text, hidden, name,
value, length. If there are dynamic forms in response,
ASSOCIATION RULE
corresponding request must include these forms. They
From hackers’ view, it is their final purpose to find could be used by predictable technology based on
weakness in web application. They will look for useful experiment, which conclude programmer’s tradition、rules
information continuously and then do attack on purpose in IT field. It is meaningful to combine experience of test
by this information. export to web application traverse.
As for web application, hackers can not browse source
code directly. They do interaction by browser as general VI. CONCLUSION AND FURTHER WORK
users. So they get information just by analyzing HTML This paper presents one traversing model for Web

30
application vulnerability detection, which improve the Proc. of 9th ACMSIAM Symposium on Discrete Algorithms. Also
efficiency in the traversing process. The model gets a set Appeared as IBM Research Report RJ 10076, 1997-05
of web pages by HITS algorithm. This set provides [4] Chakrabarti S, Dom B E, Gibson D, et al. Mining the Link
Structure of the World Wide Web. IEEE Computer, 1999, 32(8)
dataset for Apriori algorithm. Strong association between
[5] Bharat K, Henzinger M R. Improved Algorithms for Topic
interactive properties and attack types could be got and Distillation in a Hyperlinked Environment. In Proceedings of the
then support the simulating attack model. ACM-SIGIR, 1998
Admittedly, it is necessary to design a reasonable way [6] Kleinberg J. Authoritative Sources in a Hyperlinked Environment.
to store data which was got from page documents. How to Proc. of 9th ACMSIAM Symposium on Discrete Algorithms. Also
search easily, how to take less space and how to avoid Appeared as IBM Research Report RJ 10076, 1997-05
redundancy is our future work. [7] R Agrawal ,T Imielinski,A Swami.Mining Association Rules
between Sets of Items in large Database[C].In:Proceedings of the ACM
AKNOWLEDGMENT SlGMOD Conference on Management of Data.1993:2O7—216
[8] Agrawal R, Srikant R. Fast algorithms for mining association
The research work here is sponsored by Tianjin rules in large database[R]. Technical Report FJ9893, San Jose, CA: IBM
Science and Technology Committee under contract Almaden Research Center, 1994.
08ZCKFGX01100 and 06YFJMJC0003. [9] Agrawal R, Srikant R. Fast algorithms for mining association
rules [A]. In: Proc of 20th Int Conf Very Large Databases (VLDB’94)
[C]. CA: [s.n.], 1994. 487-499
REFERENCES
[1] Kleinberg J, Lawrence S. The Structure of the Web. Science,
2001, 294: 1849-1850
[2] Flake G W, Lawrence S, Giles C L. Efficient Densification of
Web communities. In Proc. of the Sixth International Conference on
Knowledge Discovery and Data Mining (ACM SIGKDD-2000),
2004:150-160
[3] Kleinberg J. Authoritative Sources in a Hyperlinked Environment.

Figure 1. Traversing Model

31
2009 International Conference on Computer Engineering and Technology

Attribute-based Relative Ranking of Robot for Task Assignment

B.B.Choudhury B.B.Biswal R.N.Mahapatra


Department of Mechanical Engineering Department of Mechanical Engineering Department of Mechanical Engineering
NIT Rourkela, Orissa, India NIT Rourkela, Orissa, India SIT Bhubaneswar, Orissa, India
e-mail:bbcnit@gmail.com e-mail:bibhuti.biswal@gmail.com e-mail:rabindra@silicon.ac.in

all these becomes a difficult task at times. Fortunately, a


Abstract-Availability of large number of robot configurations number of tools and resources are becoming available to
has made the robot workcell designers think over the issue of help designers select the most suitable robot for a new
selecting the most suitable one for a given set of operations. application. However, none of these solutions can take care
The process of selection of the appropriate kind of robot must of all the demands and constraints of a user specific robotic
consider the various attributes of the robot manipulator in workcell design. Eventually the designers must use the
conjunction with the requirement of the various operations available information and make their own decisions. In this
for accomplishing the task. The present work is an attempt to paper, we propose a new mathematical based methodology
develop a systematic procedure for selection of robot based on for robot selection to help designers identify feasible
an integrated model encompassing the manipulator attributes robots, and then outline the most appropriate cases for
and manipulator requirements. The developed procedure can
smoothing robot selection process. It deals with the issues
advantageously be used to standardize the robot selection
of using past experiences or cases to understand, plan for,
process with view to perform a set of intended tasks. The work
is also aimed at creating an exhaustive list of attributes and
or learn from novel situations. The results of this study will
classifying them into different distinct categories. The coding help robot workcell designers to develop a more efficient
scheme for the attributes and the relative ranking of the and effective method to select robots for robot applications.
manipulators are illustrated with example. Offodile et al. [1] developed a coding and classification
system which was used to store robot characteristics in a
Keywords-Multirobot,Relative ranking , Attributes. database, and then selected a robot using economic
modeling. Liang and Wang [2] proposed a robot selection
I. INTRODUCTION algorithm by combining the concepts of fuzzy set theory
and hierarchical structure analysis. The algorithm was used
Recent developments in information technology and to aggregate decision makers’ fuzzy assessments about
engineering sciences have been the main reason for the robot selection attributes weightings, and to obtain fuzzy
increased utilization of robots in a variety of advanced suitability indices. Rao and Padmanabhan [3] proposed a
manufacturing facilities. Robots with vastly different methodology based on digraph and matrix methods for
specifications are available for a wide range of applications. evaluation of alternative industrial robots. A robot selection
The selection of robots to suit a particular application and index was proposed that evaluates and ranks robots for a
production environment from among the large number given industrial application. The index was obtained from a
available in the market has become a difficult task. Today’s robot selection attributes function, in turn obtained from the
market provides variety of robot manipulators having robot selection attributes digraph. The digraph was
different configurations and capabilities.The capability of a developed based on robot selection attributes and their
robot manipulator can be assessed through parameters like relative importance for the application considered. The
number of joints, type of joints, joint placement, link authors suggested step by step procedure for evaluation of a
lengths and shapes, workspace, manipulability, ease and robot selection index. Zhao and Yashuhiro [4] introduced a
speed of operation, etc. The speed of operation significantly genetic algorithm (GA) for an optimal selection and work
depends on the complexities of the kinematic and dynamic station assignment problem for a computer-integrated
equations and their computations. Hence, in order to select manufacturing (CIM) system. Boubekri et al. [5] developed
a suitable robot, both aspects of kinematics and dynamics an expert system for industrial robot selection considering
should be looked into. Selecting the right kind of robot for functional, organizational and economical factors in the
an application is not easy. In addition, just meeting the selection process. The use of DEA for robot selection has
customer requirements can be a challenge. The addition of been addressed by Khouja [6]. Huang and Ghandforoush
system integration in workcell design processes may further [7] stated the procedure to evaluate and select the robot
complicate the picture. However, the parameters that depending on the investment, budget requirements and
determine the capability of the robot is heterogeneous in comparing the suppliers of the robots.But they had assumed
natrure and therefore, formulating an integrated model with that the user knows which robot to buy and the question
was from whom to buy.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 32


DOI 10.1109/ICCET.2009.205
II. MANIPULATOR ATTRIBUTES can be coded as per the parameters coding scheme
With the growth in robot applications, large numbers of mentioned in Table II.
robots are available for various manufacturing applications. TABLE II. THE CODING SCHEME
Proper identification of manipulator attributes is critically
important when comparing various alternative robots. Parameter Parameter coding scheme Code
General 1 2 3 0 0
6
Sometimes it may be possible to arrive at a rational choice Physical 4 5 6 7 8 9 10 4 0 0 0 0 0 6
without formal application of some quantitative or semi- Performance 11 12 13 14 15 16 17 0 5 0 0 5 0 1
quantitative methodology by mere articulation of what 18 0
attributes are important in the context of particular Structure 19 20 7 0
alternatives under consideration. However, in most cases the Application 21 0
user needs to be assisted in identifying the robot attributes Sophistication 22 23 0 0
Control 24 25 26 27 28 29 3 0 0 1 0 0
logically. A robot manipulator can be specified by a number Availability 30 31 0 0
of quantitative attributes such as payload capacity, Task 32 33 34 35 4 4 8 5
repeatability, horizontal reach, etc. However some attributes
such as built quality, after sales service etc. cannot be TABLE III. IDENTIFICATION CODE
expressed quantitatively. These may be expressed by a rate on Sl. Attribute Information Code
the scale of (say 1-10). There are some attributes which are 1. Price range 0
informative in nature, such as type of drive, the coordinate 2. Type of robot 0
system, which may be denoted by some number whose 3. Arm geometry Any one 6
numerical value will have no significance .There are also 4. Type of actuators Any one 4
attributes of which the quantification is not available and 5. Weight of the robot 0
6. Size of the robot 0
needs to be done by some mathematical model and analysis. 7. Type of grippers supported 0
For instance reliability can be expressed in terms of Mean 8. Number of axes 0
Time Between Failure (MTBF) or Mean Time To Repair 9. Space requirements of the 0
(MTTR) methods. Attributes like life expectancy may be 10. Maximum reach 1000 mm 4
estimated through experimentation, if not mentioned by the 11. Types of end effectors 0
manufacturer. 12. Payload of the robot 5kg 5
13. Workspace 0
TABLE I. MAJOR ATTRIBUTES FOR MANIPULATOR AND TASK 14. Stroke 0
15. Velocity 50 deg/sec 5
Attribute type Parameter 16. Accuracy 0
17. Repeatability ±0.02mm 1
18. Resolution 0
General Price range, Type of robot and Arm geometry
19. Degree of freedom 2 7
Physical Type of actuators, Weight of the robot,
20. Type of joints 0
Size of the robot, Type of grippers
21. Working environment 0
supported, Number of axes ,Space
22. Maintainability 0
requirements of the robot, Maximum
23. Safety features - 0
reach
24. Control of robotic joints Any one 3
Performance Workspace,Payload of the robot, Stroke, 25. Gripper control - 0
Maximum end effector speed, Accuracy, 26. Sensors 0
Repeatability, Resolution 27. Programming method Any one 1
28. Number of input channels - 0
Structure/architecture Degree of freedom (DOF) availability, Type of 29. Number of output channels - 0
joints 30. Down time 0
31. Reliability 0
Application Working environment 32. Space 4
33. Time 4
Sophistication Maintainability and Safety features 34. DOF required 8
35. Force 5
Control/feedback system Control of robotic joints, Gripper control,
Sensors, Programming method, Number of
input and output channels of the controller The identification code in Table III specifies the attribute
information with the allotted code in the respective cells. The
Availability/reliability Downtime and Reliability identification of various pertinent attributes and their
values, rates and estimates help the user for create a
Task Space, Time, DOF, and Force
database. These data individually or collectively help the
user to select the most suitable robot for a task that he
intends to perform. Although the number of joints, axes,
and degree of freedom (DOF) are usually considered as
The manipulator attributes are found out based on its
basic parameters, the sequence of joints and their respective
broad area as general parameters, physical parameters,
orientations and arrangements are left untouched. The
performance based, etc. are given in Tabel. I. The attributes
robots with same number of joints and joint sequence but

33
with different joint orientations will have different to one attribute under consideration. Therefore an element
performance characteristics. This architecture gets dij of the decision matrix ‘D’, gives the value of jth
representation in the formulation of the problem for the attribute in the row (non-normalized) form and units,
present work. The ease of operation, termed as for the i th robot.
manipulability, can be quantified as manipulability measure The normalized specification matrix, ‘N’, is then
and can be used as an attribute. The main attributes have formed from the decision matrix, ‘D’. Normalization is
been broken down to sub-attributes and sub-sub-attributes used to bring the data within particular range. Moreover,
so that the robot manipulator can be identified in very it provides the dimensionless magnitudes. This
precise and detailed manner. The information supplied by phenomenon is used to calculate the normalized
the manufacturer to the user is not sufficient and it is specification matrix. The normalized specification matrix
required to be more elaborate. The ‘0’ represents that the has the magnitudes of all the attributes of the robots on
information relating to the particular cell is not available. the common scale of 0 to 1. It is a value, which indicates
This coding scheme can be used as it is for the visual the standing of that particular attribute magnitude when
comparison between two robots up to certain extent. It compared to the whole range of the magnitudes for all
allows faster comparison in various formats. candidate robots. An element n ij of the normalized
matrix ‘N’ can be calculated as;
III. THE ROBOT SELECTION PROCESS
The robot selection criteria should include the key
parameters such as; degrees of freedom, pay load, swept d ij 1/ 2
area, maximum reach, maximum speed, cost, and nij =
⎛ m ⎞
repeatability. Based on different robot applications, some of
⎜∑
⎜ d 2⎟
ij ⎟
the robot selection criteria can be ignored and others may ⎝ i =1 ⎠
become critically important. Recent advances in robotics
technology allow robotic workcell engineers to design and
implement more complex applications than ever before. where, d ij is an element of the decision matrix, ‘D’.
Further, some of these considerations also make the robot The next step is to obtain information from the user
selection process more complicated. There will be few or the group of experts on the relative importance of
attributes, which will have direct effect on the selection one attribute with respect to another. Values of all such
procedure. These attributes may be set aside as 'pertinent comparisons are stored in a matrix called as weight
attributes' as necessitated by the particular application and/or matrix, ‘W’, where wij contains the relative importance of
the user. The threshold values to these 'pertinent attributes' ith attribute over the jth attribute. The value obtained
may be assigned by obtaining information from the user and from the weight matrix is applied to the normalized
the group of experts. Henceforth the selection procedure specifications since all attributes have different
focuses solely on the pertinent attributes leaving out the importance while selecting the robot for particular
rest. On the basis of the threshold values of the pertinent application. The matrix, which combines the relative
attributes, a shortlist of robots is obtained. This is achieved by weights and normalized specification of the candidates,
scanning the database for those attributes, one at a time, to is weighted normalized matrix, ‘V’. It gives the true
eliminate the robot alternatives, which have one or more of comparable values of the attributes. This can be
these attribute values that fall short of the minimum required obtained as follows:
(threshold) values. To facilitate this search procedure an
identification system has been made for all the robots in the ⎡ w 1n 1,1 w 2 n 1,2 … w n n 1,n ⎤ ⎡ v1,1 v1, 2 v1,n ⎤
database. The robot selection system can be divided into ⎢w n … ⎥ ⎢v ⎥
V=⎢ ⎥ = ⎢ 2,1 ⎥
1 2,1
four activities; i) operation requirements and data library of ⎢ ⎥ ⎢ ⎥
robots, ii) coding scheme, iii) selection of attributes, and iv) ⎢ ⎥ ⎢ ⎥
⎢⎣ w 1n m,1 w 2 n m,2 … w n n m,n ⎥⎦ ⎢⎣ v1,1 v1,1 v1,1 ⎥⎦
ranking of robots. The first activity mainly consists of
listing the requirements of robots and the desired
operations. The robot selection attributes are identified for
the given application and the robots are shortlisted on the
basis of the identified attributes satisfying the requirements. V. ILLUSTRATIVE EXAMPLE
A mini-database is thus formed which comprises these The example considers a task of pick-and-place, to be carried
satisfying solutions i.e., alternatives which have all attributes out by a suitable robot where it is expected to avoid some
satisfying the acceptable levels of aspiration. The problem is obstacles. The minimum requirement for this application is
now one of finding out the optimum or best out of these tabulated in Table IV. The objective values of the robot
satisfying solutions. The selection procedure, therefore, needs selection attributes, which are given in Table V. are of
to rank these solutions in order of merit. The first step is to different dimensions and units.Hence they are normalized.
represent all the information available from the database In order to demonstrate and validate the methodology of the
about these satisfying solutions in the matrix form. Such a proposed method five robots with different configurations
matrix is called as decision matrix, ‘D’. Each row of this and capabilities are considered.
matrix is allocated to one candidate robot and each column

34
⎡ MR DF PL VL AG AT CM RT RP SC TE DF1 FR ⎤
⎢ 13 2 6 1 3 1 6 0 .5 1 1 6 13 2 ⎥⎥

TABLE IV. MINIMUM REQUIREMENT OF A ROBOT ⎢ 12 3 5 2 4 2 5 1 1 .5 2 5 12 3 ⎥
⎢ ⎥
⎢ 11 4 4 3 5 3 4 1.5 2 3 4 11 4 ⎥
Sl Parameter Values ⎢ 10 5 3 4 6 4 3 2 2.5 4 3 10 5 ⎥
⎢ ⎥
⎢ 9 6 2 5 7 5 2 2 .5 3 5 2 9 6 ⎥
W =⎢ 8 7 1 6 8 6 1 3 3 .5 6 1 8 7 ⎥
1 Load capacity minimum 5 kg. ⎢ ⎥
⎢ 7 8 1 6 9 6 1 3 3 .5 6 1 7 8 ⎥
2 Repeatability 0.02 mm ⎢ 6 9 2 5 10 5 2 2 .5 3 5 2 6 9 ⎥
3 Velocity at least 50 deg/sec ⎢ ⎥
⎢ 5 10 3 4 11 4 3 2 2.5 4 3 5 10 ⎥
4 Types of drives any one ⎢ ⎥
⎢ 4 11 4 3 12 3 4 1.5 2 3 4 4 11 ⎥
6 Degree of freedom at least 2 ⎢ 3 12 5 2 13 2 5 1 1 .5 2 5 3 12 ⎥
7 Arm geometry any one ⎢ ⎥
⎣ 2 13 6 1 14 1 6 0 .5 1 1 6 2 13 ⎦
8 Control mode any one
9 Robot programming any one
Step 3: Calculation of the normalized specification
matrix.
⎡0 .844 0 . 713 0 .877 0 .796 0 . 876 0 .344 0 .691 0 .979 0 . 674 0 . 259 0 .339 0 .447 0 .447 ⎤
⎢ 0 .428 0 .475 0 .438 0 .437 0 .388 0 .241 0 .461 0 .195 0 .505 0 .287 0 .398 0 .447 0 .447 ⎥
⎢ ⎥
N = ⎢ 0 .171 0 .356 00 .146 0 . 331 0 . 174 0 . 803 0 .345 0 .039 0 .337 0 .323 0 .435 0 .447 0 .447 ⎥
⎢ ⎥
⎢ 0 .171 0 .285 0 .109 0 .199 0 . 174 0 .241 0 .276 0 .019 0 .337 0 . 571 0 .406 0 .447 0 .447 ⎥
TABLE V. CRITERIA FOR ROBOT SELECTION ⎣⎢ 0 .155 0 . 237 0 .072 0 .159 0 .145 0 .344 0 .345 0 .019 0 . 252 0 .647 0 . 61 0 .447 0 .447 ⎦⎥

Step 4: Calculation of normalized value (N.V.),



Criteria Robot-1 Robot-2 Robot-3 Robot-4 Robot-5
Maximum Reach(MR) 1000 2000 5000 5000 5500 ranking factor ( σ =W * N), and total score σ.
DOF(DF) 2 3 4 5 6
Payload(PL) 5 10 30 40 60 Step 5: Calculating the average of the ranking factors
Velocity(VL) 50 90 120 200 250 of all the robots
Arm geometry(AG) 4 9 20 20 24
Actuator(AT) 7 10 3 10 7 TABLE VI. RANKING FACTOR WITH ONE SET OF WEIGHTAGE
Control mode(CM) 4 6 8 10 8 OF ROBOT-1
Repeatability(RT) 0.02 0.1 0.5 1.0 1.0
Robot programming(RP) 3 4 6 6 8 Parameter Value N.V W Ranking factor(σ) ∑σ
Space(SC)* 0.5 0.45 0.4 0.3 0.2 MR 1000 0.844 13 10.972
Time(TE)* 0.359 0.3 0.28 0.3 0.2
DOF(DF1)* 3 3 3 3 3 DF 2 0.713 2 1.462
Force (FR)* 5 5 5 5 5 PL 5 0.877 6 5.262
VL 50 0.796 1 0.796
AG 4 0.876 3 2.628

35.7715
*These values pertain to task-1 of the fifteen tasks AT 7 0.344 1 0.344
actually considered for the problem. However only CM 4 0.691 6 4.146
RT 0.02 0.979 0.5 0.4895
one task has been considered for calculation due to
RP 3 0.674 1 0.674
page constraints. SC 0.5 0.259 1 0.259
The normalized values of all these parameters are TE 0.359 0.339 6 2.034
taken to form the decision matrix. The procedure for the DF1 3 0.447 13 5.811
selection of the robot is as follows FR 5 0.447 2 0.894

The calculation of the total ranking factor, ∑ σ, for one set


:Step 1: Formation of decision matrix, ‘D’. weights in robot-1 is presented in Table VI. The
⎡ MR DF PL VL AG AT CM RT RP SC TE DF1 FR ⎤
⎢1000 2 5 50 4 7 4 50 3 2 2.78 3 5 ⎥⎥
calculations of ranking factors are made for the other robots

⎢2000 3 10 90 9 10 6 10 4 2.22 3.33 3 5 ⎥
with a total of 12 different sets of weights. The values of
D =⎢ ⎥ these ranking factors for all the robots are given Table VII.
⎢5000 4 30 120 20 3 8 2 6 2.5 3.57 3 5 ⎥
⎢5000 5 40 200 20 10 10 1 6 3.33 3.33 3 5 ⎥
⎢ ⎥ V.RESULTS AND DISCUSSION
⎣⎢5500 6 60 250 24 7 8 1 8 5 5 3 5 ⎦⎥

The robots are arranged in order of their ranking factor


based on the significant attributes chosen keeping the
application of the robots in view. However, before a final
Step 2: Formation of weight matrix, ‘W’. decision is taken to select a new robot, the factors such as
economic considerations, availability, management constraints
and corporate policies, etc. may be considered. These factors
were not previously considered in coding and evaluation.
According to the results obtained and the analysis thereby,
Robot-5 and Robot-4 has the highest ranking factors should
be recommended as the best robot alternative. The 1st and

35
2nd ranked robots have the highest figures amongst all the TABLE VII. VALUES OF TOTAL RANKING FACTOR
robots. As a result of the application of both numerical and
Robot Value of ∑ σ with different set of weights.
qualitative inputs and outputs, two robot alternatives are
Robot-1 35.7355, 36.799, 37.8625, 38.926, 39.9895, 41.053,
found to be more efficient compared to other candidates. In 41.798, 42.2245, 42.651, 43.0775, 43.504,
order to discriminate between these two robot alternatives Robot-2 23.7325, 24.1855, 24.6385, 25.0915, 25.5445,
the ranking factor should be looked at. The ranking curves 25.9975, 26.4325, 26.8495, 27.2665, 27.6835,
of robots are shown in Fig. 1. The average values of the 28.1005, 28.5175
ranking factor are presented in Fig. 2. Robot-3 17.5315, 18.6095, 19.6875, 20.7655, 21.8435,
22.9215, 23.2805, 22.9205, 22.5605, 22.2005,
21.8405, 21.4805
Robot-4 16.1235, 16.8095, 17.4955, 18.1815, 18.8675,
19.5535, 19.8415, 19.7315, 19.6215, 19.5215,
19.4015, 19.2915
Robot-5 17.2025, 17.688, 18.1735, 18.659, 19.1445, 19.63,
19.857, 19.8255, 19.794, 19.7625, 19.731, 19.6995

TABLE VIII. SCORES OF ROBOT


Sl. No Robot Average Relative Relative
Ranking Factor Ranking Rating
1 Robot-1(R-1) 40.6293 4 Low
2 Robot-2(R-2) 26.17 3 Medium
3 Robot-3(R-3) 21.304 2 Medium
4 Robot-4(R-4) 18.703 1 High
Figure 1. Ranking curves of robots 5 Robot-5(R-4) 18.703 1 High

The present work is aimed at developng a generalized


tool to combine manipulator attributes and task
requirements in a comprehensive manner for relative
ranking of the manipulators.In the intial phase of the
formulation ,35 attributes of the robots are identified and
consciously coded to take care of the characterstics of a
robot manipulator precisely. The methodology developed
through this work can be applied to any similar any similar
set-up .This is sure to help the designers and users in
selecting the robots correctly for the intended application.
REFERENCES
[1] O.F.Offodile ,P.K.Lambert and R.A.Dudek. “Development of a
computer aided robot selection procedure (CARSP)”. Int J Prod Res 1987;
25:PP.1109–12.
[2]A.M.Layek , L.J.Resare. “Algorithm based decision support system for
Figure 2. Comparison of robots the concerted selection of equipment in machining/assembly cells”,
International Journal of Production Research, 2000, 38:PP.323–339.
Although ranking of robots on the basis of the [3]R.V.Rao , K.K.Padmanabhan, “Selection, identification and
manipulators parameters alone has been attempted by some comparison of industrial robots using digraph and matrix methods”,
Robotics and Computer Integrated Manufacturing,2006, 22:P.373–383.
previous researchers, ranking of the robots in view of
[4] L.Zhao ,T. Yashuhiro, “Genetic algorithm for robot selection and work
performing a given set of tasks is a novel attept. The station assignment problem” Computers & Industrial Engineering
present work considers practcal aspects and takes and takes ,1996,31:PP.599–602.
experimental data to form an integrated model for relative [5]N. Boubekri , M.Sahoui and C. Lakrib, “Development of an expert
ranking of the available candidate robots. On the basis of system for industrial robot selection”. Comput Ind Eng ,1991; 20:PP.119–
the ranking factors the robots are rated as ‘Low’, ‘Medium’ 27.
and ‘High’ and in relation to the group of the robots under [6] M.Khouja, and D.E. Booth, “Fuzzy clustering procedure for evaluation
consideration and are shown in Table VIII.The procedure and selection of industrial robots”. Journal of Manufacturing Systems,
provides a coding system for robots depicting the various 1995, 14, PP.244- 251.
attributes. It recognizes the need for, and processes the [7] P.Y. Huang, P. Ghandforoush, “Robotics procedures given for
information about, relative importance of attributes for a evaluating selecting robots”, Industrial Engineering 16 , 1984,
given application without which inter-attribute comparison pp. 44–48.
is not possible. Essentially the present work contributes to
developing a methodology based on matrix methods which
helps in selection of a suitable robot from among a large
number of available alternative robots

36
2009 International Conference on Computer Engineering and Technology

A Subjective Trust Model based on two-dimensional measurement*

Chang Chaowen1,2, Liu Chen2, Wang Yuqiao2


1. School of Electronic and Information Engineering, Xi’an Jiaotong University, Xi'an, China
2. Institute of Electronic Technology, Information Engineering University, Zhengzhou, China
ccw@xdja.com

Abstract model [5] brought in the concept of experiences to


describe and measure the trust relationship. Beth
Trust models like Beth, Jøsang and EigenRep model classifies the trust into direct trust and
evaluated trust degree by the history of interactions or recommendation trust. Jøsang proposed a trust
the reputations, and some other learners brought fuzzy management model based on subjective logic [6][7], and
theory, cloud model into the researches of trust brought in the concept of evidence space and opinion
management. All of these models based on the space to describe the trust relationship and measure it.
trustee’s outer information. However it is more This model bases on the Beta distribution function of
reasonable to get the evaluations by both the outer expression for posteriori probability estimates of
information and the inner attributes. Aiming this issue, binary events, gives the pcdf (probability, certainty
this paper gets the trustee’s inner attributes through density, functions) which is characterized by the
the remote attestation mechanism under the trusted number of positive events and negative events that are
computing specification of TCG, and then combines observed. EigenRep model [8] is a classic global trust
the history of interactions, and designs a trust model model at present. The kernel of it’s is that if entity
based on two-dimensions (attributes, experiences) in someone wants to know global reputation values of
order to make the evaluation of the trust degree more any entity K, it needs to get the trust information of K
flexible and reliable. The experiments show that this from entity J who has interacted with K.
two-dimensions-based model can not only avoid the What all of these typical models considered is the
trust accumulation spoofing better but also calculate outer information of the trustee, it’ll result in some
the initial trust value more effectively. problems [9]: (1) Using events probability to describe
and measure trust relationship will result in confusion
1. Introduction between the subjectivity of trust and the random
M.Blaze brought forward the concept of trust probability. Maybe it is not very reasonable. (2) Most
management and the corresponding trust model system of these calculate arithmetical average value to
PolicyMaker[1] and KeyNote[2] for the first time in integrate the trust degree from different
1996. It is very difficult to give a standard definition recommendation paths. It is hard to eliminate the
because of the complexity of trust relationship and the impact of malicious recommendation. (3) Although
variety of application requirement. At present the study these models have calculating formula about trust,
of trust management models can be divided into two most of them don’t have an effective way to get the
parts: Credential-based models and Evidence-based initial trust degree.
models[3]. In the Credential-based models, e.g. The literature [10] proposed a new method based on
PolicyMaker[1], KeyNote[2], REFEREE[4], the essence fuzzy theory according to the third party’s trust values
of trust is using a precise and reasonable method to of recommendation so that the assess of users trust
describe or deal with the complicated relationships; values become more flexibility and more reliable. The
whereas the Evidence-based models consider literature [11] defined the assurance trust and global
subjectivity, inaccuracy and evolvement adequately. In reputation, described the trust relationship effectively,
the open environment, the Evidence-based models are assured the anonymity of entities and the secrecy and
able to reflect the variety of the environment. integrity of trust value and prevents aiming cheat and
There are some classic Evidence-based models, e.g. combining cheat. The literature [12] proposed a
Beth model, Jøsang model and EigenRep model. Beth formalism method for subjective trust using cloud

*
This work was supported by National High Technology Research and Development Program of China (863 Program, No.2007AA01Z479)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 37


DOI 10.1109/ICCET.2009.86
model, and a qualitative reasoning mechanism of trust 3. A trust model based on two-dimensional
cloud to enable trust-based decisions.However, these measurement
ameliorations merely consider the outer information as As above, present models emphasize particularly on
the same as classic models instead of the inner only one factor, the outer factor or inner factor. So it is
attributes of the trustee. hard to avoid being unilateral. Combining the remote
As we know, for everything, there are close attestation mechanism under the trusted computing
relevancy between outer information and inner specification of TCG with the interaction experience
attributes, outer information is the phenomena and between the two parties, estimating trust degree of the
inner attributes is the essential, based on which, we trustee synthetically can make the measured results
adopt the remote attestation mechanism under the more accurate.
trusted computing specification of Trusted Computing 3.1 Definition and Properties of Trust
Group(TCG) [13] to get the inner characteristic of 1) Roles in Trust Relationship
trustee. Trustor: The proposer of the interacting services. It
is also the verifying party.
2. Get inner attributes base on TCG Trustee: The provider of the interacting services. It
remote attestation is also the verified party. In our model system, the
TCG offers a specification for the trusted computing trustee must set the TPM chip.
and security technology definition and development of 2) Definitions
industrialized criterion [13]. The Trusted Platform Definition 1: Trust is to believe others, is a cognitive
Module (TPM) [14][15] is the foundation stone of trusted process that trustor believe the trustee has the ability to
computing. In the trusted node with TPM, any module meet its requests through judging the inner attributes
must be measured before it obtain the control right, and the outer behaviors of trustee. This definition
and the measured values should be preserved in the emphasize that although trust is a subjective behavior,
Platform Configuration Register (PCR) to prevent it must base on the objective.
them from being tampered. Definition 2: Trust degree is the quantitative
Integrity measurement [16][17] is a very important denotation of trust grade. This paper has used
function of trusted computing. Based on TPM, the subjective logic-based model for reference, used the
measurement values in PCRs cannot be tampered and ternary aggregate {b,d,u} to describe the trust
written in advance. When a attestation begins, trustee relationship. The aggregate is in the situation:
convey the PCR values, Stored Measurement Log B + d + u = 1, { b ,d ,u }∈[0, 1]3
(SML) and other correlative information to remote b is the trust degree, d is the distrust degree and u is the
trustor by a trusted way [18], the trustor then can incertitude degree. All of them are continuous values.
estimate the security state of the trustee according as Definition 3: Inner attributes trust degree is the trust
the integrity report, thereby determines whether degree of trustee’s inner attributes, here it means the
interact with it. The specification of TCG has defined trust grade of integrity of the platform configurations.
the protocol for the remote attestation [14], which offers Definition 4: behavior trust degree is the trust degree
us an effective method to get the inner information of of trustee’s outer behaviors; here it means the trust
trustee. Based on the remote attestation protocol, we grade of interactions history with other nodes or the
can know the main application attributes’ present state recommendation of others and so on.
is trusted or not, thereby we can evaluate the trust Definition 5: integrated trust degree is the mean value
degree at a bran-new aspect. of the inner attributes trust degree and the behavior
However, the platform configurations may not trust degree by weight.
reflect the actual state of the platform sometimes [19][20]. 3) Properties of Trust
For example, when software updates, the configuration According to the definitions above, trust is a
will be changed and attested unsuccessfully, but the dialectic unification of subjective and objective, and it
platform state is still secure and trusted. What is more, should have some properties:
even though platform state attests successfully, the Property 1: Uncertainty means it is hard to describe
interaction between the two parties may also get fail trust in an accurate way; there is no absolute trust or
because of the trustee’s low enthusiasm to offer some absolute distrust. Thereby uncertainty can also be
services to trustor. So it is also not integrated and called relativity.
objective to evaluate the trust degree only by the TPM- Property 2: Asymmetry means trust is one-way, A
based attestation. trusts B doesn’t mean that B trusts A too.

38
Property 3: Incomplete transitivity means A trusts B Behavior trust degree describes the trusted situation
and B trusts C, but A could not trust C completely even of the trustee’s outer behaviors. We use the theory of
though B recommends it. Some other literatures think evidence space in Jøsang model [21][22] for reference,
trust has the transitivity, thus it is hard to avoid the regard the events that have been validated
malicious recommendation effectively. In this paper, unsuccessfully as the negative events and the events
we suppose that recommendation is only a reference that have been validated successfully as the positive
but not the unattached way to calculate trust degree. events. Assume r denotes the number of the positive
events and s denotes the number of the negative events,
3.2 Descriptions of Trust Relationship we can calculate the behavior trust degree TO = {bO, dO,
1) Inner attributes trust degree evaluation algorithm uO} by the formula:
(1) Through the TCG protocol, trustor gets the r
configurations integrity information which is needed in bo =
trustee’s platform, the information contains PCR r + s +1
values, SML and so on. s
do =
(2) Validate the configurations integrity of trustee r + s +1 (3-3)
platform, and get the number f of the PCR values
1
which have been validated unsuccessfully in uo =
PCR0 ,PCR1 , … , PCRn. Assume that the n + 1 - f r + s +1
PCR values which have been validated successfully 3) Integrated trust degree evaluation algorithm
have the same trusted situation, the ternary aggregate is Integrated trust degree is the mean value of the inner
{bS, dS, uS}. Here, bS denotes the possibility that the attributes trust degree and the behavior trust degree by
module has not been impacted by the malicious code weight. Assume WI is the weight of inner attributes
(modules may impact each other due to non-isolation). trust degree and WO is the weight of behavior trust
The f PCR values which have been validated degree, WI +WO=1, we can calculate the integrated trust
unsuccessfully have the same trusted situation too; the degree T = {b,d,u} by the formula:
ternary aggregate is {bF ,dF, uF}. Here, dF denotes the b = WIbI + WObO
possibility that a single PCR value which has been d = WIdI + WOdO (3-4)
validated unsuccessfully may destroy the security of
the system (That a PCR value is validated u = WIuI + WOuO
unsuccessfully doesn’t mean the system is threatened 4) the Initial Trust Value of Integrated trust degree
predicatively, e.g. when a software updates can result In the initial state, there were no interactions between
in the fail validation but it is hurtles). We can calculate the two parties, the parameters r = 0, s = 0, the
the inner attributes trust degree TI = {bI,, dI , uI} by a behavior trust degree is TO = {0,0,1}, and the
simple formula: integrated trust degree T = {b,d,u} is:
n +1− f f b = WIbI
bI = bS + bF d = WIdI
n +1 n +1 (3-5)
n +1− f f u = WIuI + WO
dI = dS + dF From this formula, we can see that the initial trust
n +1 n +1 (3-1) value can be obtained by the inner attributes trust
n +1− f f degree, i.e. validating the configurations integrity of
uI = uS + uF trustee’s platform.
n +1 n +1
In the situation that trust neither the trust degree nor
3.3 Evaluation of Trust
distrust degree doesn’t attenuate, both uS and uF is 0.
Trustor sets the threshold T0 ={b0,d0,u0}, the set of
The formula is:
threshold bases on the context and the subjective
n +1− f f
bI = bS + bF factors of the trustor, we don’t discuss how to set the
n +1 n +1 threshold in this paper. The evaluation of trust contains
n +1− f f three conditions as follows:
dI = dS + dF Condition 1: integrated trust degree satisfies
n +1 n +1 (3-2) T(b) ≥ T 0(b0 ) ; T(d) < T 0(d 0 ) ; T(u) < T 0(u 0 )
uI = 0 Then trustor regards trustee trusted, the
2) Behavior trust degree evaluation algorithm interactions are allowed.

39
Condition 2: integrated trust degree satisfies successfully when configurations are all right, f=0,
T(b) < T 0(b0 ) ; T(d) ≥ T 0(d 0 ) ; T(u) < T 0(u 0 ) {bS,dS,uS}={1,0,0}; After running of the malicious
code, the integrity has been destroyed, the number of
Then trustor regards trustee distrusted, the PCR values which are validated unsuccessfully is 2,
interactions are un-allowed.
f=2 , {bS,dS,uS}={0.4,0.6,0}, {bF,dF,uF}={0.2,0.8,0};
Condition 3: integrated trust degree satisfies
In initial time, the number of positive events r=5 and
T(b) < T 0(b0 ) ; T(d) < T 0(d 0 ) ; T(u) ≥ T 0(u 0 ) the number of negative events s=5; there are 40 times
Then trustor sends requests to validate the of interactions between the two parties totally, the
configurations integrity of trustee’s platform. former 30 times are successful and the later 10 times
are unsuccessful, the malicious code run to destroy the
4. Emulation experiment and analysis integrity of the platform at the 15th time. WI=0.8,
4.1 Experiment 1: Avoid Malicious Accumulation of WO=0.2, the threshold T0={0.5,0.3,0.2}. Fig.1 has
Trust Degree described the trend of trust degree in our model, the
The calculating formula of the subjective logic-based Jøsang model and the assurance-based model in which
model is as formula 3-3. There is a problem in this
method: Assume that trustee offered services honestly
at the first stage, so that the trust degree could
accumulate to a very high grade; then it offered one
malicious service suddenly, the trustor would have not
the least guard and suffer a serious loss. We call this
problem as malicious accumulation of trust degree.
The subjective trust model based on assurance [11] has
proposed the concept of attenuation element that can
decrease the impact about the above problem.
Attenuation element β ∈ {0,1} , β m denotes the β
Fig.1 the Trend of Trust Degree
value at the m time. The smaller this value is, the more
The analysis of the result: In the former 30 times, all
obviously the trust degree attenuates, and the faster the
interactions are successful, the trust degree in the
interacting experience is forgotten. The trust degree is
Jøsang model will accumulate to a high level gradually.
influenced mainly by the latest interactions. The
Until the first time that interaction is fail, the trust
variety of β can also reflect the stability of the degree will play down. The trust degree in the
interactions, if they are instable, β value will decrease. assurance-based model descends much faster than the
At the beginning, we can suppose that every Jøsang model when interactions begin to fail, but it
interacting evidence will influence the trust degree doesn’t avoid the threat from happening. The model
equally, i.e. β1 = 1 . Then every time the interacting based on two-dimensions could detect the startup of
the malicious code, the trust degree is at a high level at
result changes, β decreases a certain value ∂ until to the beginning, and descends to a quite low level
a certain lower limit. The assurance-based trust model immediately when the malicious code runs, so that
can make the trustor who suffered loss adjusts its states, some loss can be avoided.
but it cannot avoid the cheat from happening. The trust
model based on two-dimensions proposed in this paper 4.2 Experiment 2: Set Initial Trust Value
can avoid the cheat effectively. We will contrast this Assume that trustee is the malicious node who has
model with the subjective logic-based model and the destroyed the integrity of the platform. Parameters are
assurance-based trust model to illuminate its advantage set as follows: The number of PCR values which are
in anti-cheat aspect. applied by the trustor is 10, i.e. n+1=10; the number of
At the beginning of this experiment, the PCR values which are validated unsuccessfully is 2,
configurations of trustee’s platform are all right. After f=2; the number of positive events r=0 and the number
the two parties interacted successfully for some times, of negative events s=0; {bS,dS,uS}={0.4,0.6,0},
malicious code destroyed the integrity of the platform {bF,dF,uF}={0.2,0.8,0}, WI=0.8, WO=0.2; the
but trustee concealed it deliberately and continued to threshold T0={0.5,0.3,0.2}.
offer the service. Parameters are set as follows: The node repeats to join into the network 5 times
The number of PCR values which are applied by the independently. Using the formula of our model, the
trustor is 10, i.e. n+1=10; PCR values are all validated initial values are all {0.36, 0.64, 0}, and the

40
mechanism of random number get 5 distinct initial World Wide Web Conference Budapest: ACM Press, 2003:
values. 123-134.
Tab.1 the Initial Trust Value for 5 Random Numbers [9] Li Xiao-yong, Gui Xiao-lin. Research on Dynamic Trust
Seq. 1 2 3 4 5 Model for Large Scale Distributed Environment. Journal of
Initial 0.4, 0.9, 0.8, 0.2, 0.6, Software,Vol.18, No.6, June 2007,pp.1510-1521. (in Chinese)
values 0.5, 0.1, 0.1, 0.7, 0.2, [10]Zhang Yan-qun, Zhang Chen. Model of trust values
0.1 0 0.1 0.1 0.2 assess based on fuzzy theory. Computer Engineering and
The analysis of the result: There will be a very large Design, vol.28 No.3.Feb.2007.
possibility (the probability in this experiment is 3/5) to [11]Gao Cheng-shi, Fu Jiang-liu, Shen Chang-xiang, Liu Yi.
result in that trustor trusts the malicious node and Subjective Trust Model Based on Assurance in Open
Network. Journal of Information Engineering University,
interacts with it by the mechanism of random number.
vol.8 No.2.Jun,2007. (in Chinese)
5. Conclusions [12]Meng Xiang-yi, Zhang Guang-wei, Liu Chang-yu, Kang
In the open networks, the Evidence-based trust Jian-chu, Li He-song. Research on Subjective Trust
models consider subjectivity, inaccuracy and Management Model Based on Cloud Model. Journal of
evolvement adequately. The classic Evidence-based System Simulation, vol.19 No.14,July,2007. (in Chinese)
trust models considered trustee’s outer information, so [13]TCG Best Practices Committee. Design, Implementation,
that the essential characteristics of trustee cannot be and Usage Principles for TPM-Based Platforms Version 1.0.
May 2005.
reflected directly and exactly. This paper designs a
[14]Trusted Computing Group(TCG). TPM Specification
trust model based on two-dimensions to make the v1.2 Design Principles. [EB/OL]. https://www.trusted
evaluation of the trust degree more flexible and computinggroup.org/specs/TPM/, 2005.
reliable. The experiments show that this two- [15] Trusted Computing Group(TCG) . Trusted platform
dimensions-based model can not only avoid the trust module protection profile,July 2004.
accumulation spoofing better but also calculate the [16] Reiner Sailer,Xiaolan Zhang,Trent Jaeger, Leendert Van
initial trust value more effectively. However, the Doorn. Design and Implementation of a TCG-Based Integrity
improved model does not consider the Measurement Architecture[A]. In:Thirteenth Usenix Security
recommendation trust, so it is needed to be studied in Symposium[C]. San Diego, CA : USENIX press, 2004:223–
the future works. 238.
[17]Xinwen Zhang, Michael J.Covington, Songqing Chen
and RaviSandbu. SecureBus:Towards Application-
6. References Transparent Trusted Computing with Mandatory Access
[1]M.Blaze,J.Feigenbaum,J.Lacy,Decentralized Trust Man- Control[A]. In: ASIACC'07[C],Singapore:ACM Press,2007:
agement, Proceedings of the 1996 IEEE Symposium on 117-126.
Security and Privacy,IEEE Computer Society,Washington, [18]Trusted Computing Group.TCG Software Stack(TSS)
DC,USA,1996,pp.164-173. Specification v1.2.[EB/OL]. https://www.trustedcomputing
[2] Jøsang A . A Logic for Uncertain Probabilities[J]. group.org/specs/, 2006.
International journal of Uncertainty , Fuzziness and [19]Sadeghi, A.-R. and C. Stueble. Property-based
Knowledge-based Systems,2001,9(3):279—311. Attestation for Computing Platforms: Caring about properties,
[3] Yuan Shi-jin.The Research on Key Technologies of Trust not mechanisms. in New Security Paradigm Workshop
Management. Doctor Degree Paper for Fudan University. (NSPW).2004.
2004. (in Chinese) [20]L. Chen, R. Landfermann, H. Loehr, M. Rohe, A.-
[4] Chu Y-H , Feigenbaum J , La Macchia B et R.Sadeghi, and C. Stuble. A protocol for property-based
al . REFEREE : trust management for Web applications attestation. In Proceedings of the 1st ACM Workshop on
[J].World Wide Web Journal,1997;2(2):l27~139 Scalable Trusted Computing (STC’06). ACM Press,2006.
[5] Beth T, Borcherding M, Klein B. Valuation of trust in [21] A.Jøsang, Subjective Evidential Reasoning[C],
open networks. In: Gollmann D, ed. Proceedings of the Proceeding of the 9th Internation Conference on Information
European Sysposium on Research in Security (ESORICS). Processing and Management of Uncertainty in Knowledge-
Brighton: Springer-Verlag, 1994. 3-18. Based Systems (1PMU 2002), Anecy, france, 1-5 July, 2002.
[6] Jøsang A, Knapskog S J. A Metric of Trusted Systems, [22] A.Jøsang, E.Gray, and M.Kinateder. A Model for
Global IT Security[M]. Wien: Austruan Computer Society, Analysing Transitive Trust. Web Intelligence and agent
1998. 541-549. Systems. Amsterdam:IOS Press 2005.
[7] Jøsang A. Trust-based Decision Making for Electronic
Transactions [EB/OL]. Proceedings of the 4th Nordic
Workshop on Secure Computer System(NORDSEC’99),
http://security.dstc.edu.au/staff/ajosang/paper.html, 1999.
[8] S Kamvar, Schlosser MT. EigenRep: Reputation
Management in P2P Networks[C].In: Proceedings of the 12th

41
2009 International Conference on Computer Engineering and Technology

A Genetic Algorithm Approach for Optimum


Operator Assignment in CMS

Ali Azadeh, Hamrah Kor, Seyed-Morteza Hatefi


Department of Industrial Engineering and Center of Excellence for Intelligent Base Experimental Mechanics and
Department of Engineering Optimization Research, College of Engineering, University of Tehran, Iran
Aazadeh@ut.ac.ir,hkor@ut.ac,ir,s_m_hatefi@yahoo.com

Abstract—This paper presents a decision making approach For solving MADM problems, it is generally necessary to
based on a hybrid GA for determining the most efficient know the relative importance of each criterion. It is usually
number of operators and the efficient measurement of given as a set of weights, which are normalized, and which
operator assignment in cellular manufacturing system (CMS). add up to one. The importance coefficients in the MADM
The objective is to determine the labor assignment in CMS methods refer to intrinsic “weight”. Some works deserve
environment with the optimum performance. We use The GA
for getting near optimum ranking of the alternative with
mention because they include information concerning the
accordance to fitness function. Also, the GA approach is methods that have been developed for assessing the weights
performed by employing the number of operator, average lead in a MADM problem. The entropy method is the method
time of demand, average waiting time of demand, number of used for assessing the weight in a given problem because,
completed parts, operator utilization and average machine with this method, the decision matrix for a set of candidate
utilization as attributes, and Entropy method for determining scenarios contains a certain amount of information. In other
the weight of attributes. Furthermore, values of the attributes words, the entropy method works based on a predefined
procured by means of simulation. decision matrix. Since there is, in scenario selection
problems, direct access to the values of the decision matrix,
Keywords - Genetic Algorithm, simulation, decision making,
Entropy method, Visual SLAM, CMS . Introduction
the entropy method is the appropriate method. Entropy, in
information theory, is a criterion for the amount of
uncertainty, represented by a discreet probability
I. INTRODUCTION distribution, in which there is agreement that a broad
distribution represents more uncertainty than does a sharply
Cellular manufacturing systems are typically designed as packed one. The Entropy idea is particularly useful for
dual resource constraint (DRC) systems, where the number investigating contrasts between sets of data.
of operators is less than the total number of machines in the Figure 1 presents the proposed simulation and multi
system. The productive capacity of DRC systems is attribute approach for optimum operator assignment.
determined by the combination of machine and labor We begin by defining the system and its components. The
resources. Jobs waiting to be processed may be delayed system is a set of permanent and temporary entities taking
because of the non-availability of a machine or an operator into consideration the entities attributes and relationships
or both. This fact makes the assignment of operators to between them. This set is directed to achieve a specified
machines an important factor for determining the objective. Permanent entities, such as machines and
performance of cellular manufacturing (CM) systems and manpower in a manufacturing system, are named as a
therefore, the development of a multifunctional workforce a server. Temporary entities are incorporated into the system
critical element in the design and operation of CM represented within the simulation model and they pass and
systems.[5] then leave the system. The attributes of each entity are
considered as an entity characteristic, which is required for
II. METHODOLOGY
identifying the temporary entities.
This paper presents a GA approach for select the Examples of entity characteristic are arrival time, part
optimum operator allocation (for further information about number, and processing time of the system with each
GA method see [4]). First, we generate most scenarios and temporary entity [8].
run them in the Visual SLAM software (for to obtain the
extinct answer, we consider number of run equal 30) [7].
Then, by GA solve the problem and specify the best
scenario. In the section fourth, we show empirical
illustration.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 42


DOI 10.1109/ICCET.2009.211
Data Collection

Input data

Define scenarios

Generation of outputs data


by computer simulation

GA for operator D: Decoupler Station:


assignment
Operator
Operator movement when out of work
Operator movement with parts

Final assignment: By utilizing GA Figure. 2: The existing manned cell example for the case model.

Alternatives consisted of reducing the number of


Figure. 1: The overview of the integrated GA Simulation approach operators in the cell is as follows in details:
1. eight operators (one operator for each machine)
III. PROBLEM DEFINITION 2. seven operators (one operator to only two machines
and one operator for each of others)
Manned cells are a very flexible system that can adapt to 3. six operator (one by one operator to two by two
changes in the customer’s demand or changes quite easily machines and one operator for each of others)
and rapidly in the product design. The cells described in 4. five operators (one by one operator to two by two
this study are designed for flexibility, not line balancing. machines and one operator for each of others)
The walking multi-functional operators permit rapid 5. four operators (one by one operator to two by two
rebalancing in a U-shaped. The considered cell has eight machines and one operator for each of others)
stations and can be operated by one or more operators, 6. six operators (one by one operator to three
depending on the required output for the cell. The times for machines and one operator for each of others)
the operations at the stations do not have to be balanced. 7. four operators (one by one operator to three
The balance is achieved by having the operators walk from machines and one operator for each of others)
station to station. The sum of operation times for each 8. three operators (one by one operator to three
operator is approximately equal. In other words, any machines and one operator to only two machines)
division of stations that achieves balance between the 9. five operators (one operator to four machines and
operators is acceptable. Operators perform scenario one operator for each of others)
movements in cell. Once a production batch size arrives to 10. three operators (one operator to four machines
the cell, it is divided to transfer batch sizes. Transfer batch and one by one operator to two by two machines)
size is the transfer quantity of intra-cell movements of 11. three operator(one operator to four machines and
parts. The ability to quickly rebalance the cell to obtain one operator to three machines and one operator to
changes in the output of the cell can be demonstrated by the one machine)
developed simulation model. The existing manned cell 12. two operator(one by one operator to four by four
example for a case model is presented in Fig. 2. [1] machines)

43
In simulation experiments, when the machines are assigned composed 36 scenarios, is considered as a 64-bit
to the operators, the cycle time of the bottleneck resource is chromosome. Then, according with the sequence in the
chosen close as possible as to the cycle time of the operator. chromosome, the total distance among the first scenario
The developed model includes the some assumptions and which can be scenario from 1 to 36 and our goal (scenario
constraints as follows: 37), the second scenario with the first and the next with
ƒ The self-balancing nature of the labor assignment upper ranked scenario are calculated respectively. The total
accounts for differences in operator efficiency. distance mentioned above is a dependent variable to
ƒ The machines have no downtime for the simulated scenarios’ positions in the array. Consequently, in each
time. chromosome we can find a new value for total distance.
ƒ The time for the operators to move between machines Undoubtedly, the best sequence of the scenarios is an array
is assumed to be zero. The machines are all close to each which has the minimum total distance with high internal
other. cohesion among its scenarios. In fact, our fitness function is
ƒ The sum of the multi function operation times for each a multivariate combination that its most prominent
operator is approximately equal components are total distance and variance. The above
ƒ There isn’t any buffer for the station work. concepts of genetics are achieved through a set of well-
As mentioned, outputs collected from simulation model are defined steps as follows:
the average lead time of demand, the average of waiting
time of demand, average operator and machine utilization Step 1: Normalize the index vectors. The six attributes must
and number of completed parts per annum. The results of be normalized and have same order to be used in GA.
the simulation experiment are used to compare the Indicesܺଵ , ܺଶ and ܺଷ have opposite order than the rest of
efficiency of the alternatives. Each labor assignment the indices.
scenario considers 3 shifts which 1, 2 or 3 shift per day. Step 2: Standardize the indices ܺଵ – ܺ଺ .They are
Moreover, a flexible simulation model is built by Visual standardized through predefined mean and standard
SLAM which incorporates all 36 scenarios for quick deviation for each index.
response and results. Furthermore, ability to quickly
rebalance the cell to obtain changes in output of cell can be Step 3: Define the production module. This module is
demonstrated by simulation model. defined to create and manipulate the 50-individual
So in the developed model different demand levels and part population by filling it with randomly generated
types have taken into consideration. System performance is individuals. Each individual is defined by 64-bit string.
monitored for different workforce levels and shift by means Step 4: Define recombination module which enlists four
of simulation. In simulation experiments, each of the sections:
received demand’s parts has a special type and level. The • Tournament selection operator chooses individuals with
types of parts that cell can product and levels of demand probability 80% from the population,
within cell determined as two and three in experiment. The This is considered as a popular type of selection methods in
time processing of jobs for each of the station works is GA. The basic concept in tournament is that the best string
related to the part type. The objective of scenarios consists in the population will win both its tournaments, while the
of reducing the number of operators in the cell is observing worst will never win, and thus never be selected. However,
how the operation is distributed among the operators. After in this study, the other kinds of selection methods named
deletion of transient state, the 36 scenarios are executed for sigma scaling and rank selection are considered in order to
2000 hours (250 working days, each day composed of 3 best determine method.
shifts, each shift consist of 8 hours of operation). Each • Uniform crossover operator which combines bits from the
scenario also replicated 30 runs to ensure reasonable selected parents with the probability 85%.
estimates of means of all outputs could be obtained. • Mutation operator consists of making (usually small)
The Table I shows Output of the simulation model. alterations to the values of one or more
Genes in a chromosome
IV. APPLICATION OF GA MODEL • Regeneration operator which is used to create 100-
36 scenarios are selected as the core of our study. The individual generations.
main structure of GA in this study is formed based on the Step 5: Define evaluation module:
assumption which describes that the best scenario among The fitness function to determine the goodness of each
them could be a scenario with the indices in which each is individual based on the objectives is defined by total
the maximum value of its possible values. Therefore, the distance and variance that can be shown by:
scenario 37 a scenario with the best possible attribute,
called our goal in the problem, which illustrates the
maximum present abilities in operator assignment. To
achieve the appropriate rank (array), every possible array,

44
VI. SIGNIFICANCE
We have inspired the GA approach from the TOPSIS
methodology. As we know the TOPSIS methodology is
based on minimum distance from best scenarios and
maximum distance from the worst alternative. In this GA
approach our goal is to obtain total ranking in all scenarios
that their fitness function is the least distance between
scenarios. We are not looking for the best and the worst
In mentioned formula, ݀ ்௢௧௔௟ indicates total distance solution, but also the solution between these two point are
between adjacent scenarios [9]. important for us, this is the difference this approach and
The evaluating operator assesses the ability of each current methods. As you can see in the following Table our
chromosome to satisfy the objective. Therefore, our GA method satisfies this goal.
motivation to obtain the best array in this problem is to
minimize the fitness function mentioned above. After VII. ANALYSIS OF VARIANCE (ANOVA)
producing 1000 generations we reach the best fitness
ANOVA is used to evaluate the effects of the optimum
function value, 295.362, related to the chromosome which
operator assignment in CMS model. DMU’s efficiencies
can be shown by the sequence, at Table I.
are considered for GA model in comparison with DEA and
V. RESULTS PCA methods. First, it is tested whether efficiencies have
the same behavior in GA ( ߬ͳ ), DEA ( ߬ʹ ), PCA ( ߬͵ )
According to results, the scenario 12-2 that one by one models. Furthermore, it is tested whether the null
operator to four bye four machines with two shifts for day,
hypothesis Ho: ߤଵ ൌ ߤଶ ൌ ߤଷ is accepted. It is concluded
assigned to the system is the most efficient. The second
that the three treatments differ at ߙ ൌ ͲǤͲͷ . Furthermore,
best scenario is the scenario 12-1 that similar to scenari12-2
the least significant difference (LSD) method is used to
but the shift per day is one. The third scenario is the 9-1
compare the pairs of treatment meansߤଵ ǡ ߤଶ ܽ݊݀ߤଷ . That is
that five operators (one operator to four machines and one
Ho:ߤ௜ ൌ ߤ௝ for all i് ݆. The results of LSD revealed that at
operator for each of others) with the one shift per day.
ߙ ൌ ͲǤͲͷ ߤଵ ൐ ߤଶ ǡ ߤଷ and ߤଶ ൐ ߤଷ and hence treatment 1
(GA) produces a significantly greater efficiencies than
TABLE I. GA SOLUTION other treatments. The advantage of the
GA model with respect to efficiencies is shown in Table
II, III.
scenario rank Scenario rank
31 1 8 19
TABLE II. ANOVA
35 2 27 20
25 3 30 21 Sum of Adj Mean
Source DF F P
34 4 24 22 Squares Square
28 5 33 23 block 3 112.0
243.972 81.324 0.0
10 6 20 24 8
treatment 35 80.65 2.3044 3.18 0.0
26 7 11 25
error 105 76.18 0.7256
19 8 4 26
13 9 17 27 Total 143 400.8147
22 10 21 28
7 11 15 29 TABLE III. MULTIPLE COMPARISONS

23 12 5 30 Mean
(I) (J) 95% Confidence
Difference Std. Error Sig.
36 13 12 31 VAR VAR Interval
(I-J)
32 14 2 32 Lower Upper Lower Upper Lower
16 15 18 33 Bound Bound Bound Bound Bound
29 16 9 34 GA DEA 2.40335(*) .24957 .000 1.9099 2.8968
14 17 3 35 PCA 3.38752(*) .24957 .000 2.8941 3.8809
1 18 6 36 DEA GA -2.40335(*) .24957 .000 -2.8968 -1.9099
Score 295.362 PCA .98417(*) .24957 .000 .4907 1.4776
PCA GA -3.38752(*) .24957 .000 -3.8809 -2.8941
DEA -.98417(*) .24957 .000 -1.4776 -.4907
* The mean difference is significant at the .05 level.

45
[2] V.I. Cesani, H.J. Steudel, “A study of labour assignment
VIII. CONCLUSION
flexibility in cellular manufacturing systems”, Computers
In this study, we used GA, as a powerful method, to rank & Industrial Engineering, vol.48, no.3, pp. 571–591. 2005
the operator assignment problem based on the attribute [3] T.Ertay, D. Ruan ,” Data envelopment analysis based
discussed in this paper. As shown in Table I, the two decision model for optimal operator allocation in CMS”,
Scenarios, 31 and 6 are determined as the best and the European Journal of Operational Research, vol. 164, pp. 800–
worst respectively. Furthermore, GA approach able to 810, 2005.
[4] S.E.Haupt, R.L.Haupt, ”Practical genetic algorithm”,
ranking the alternative by near optimum fitness function second edition, John Wiley, 1998
.the GA method based on the minimum distance between [5] D. J. Johnson, U. Wemmerlov, “On the relative
order of the scenarios, in fact, GA determine the best performance of functional and cellular layouts—an analysis
solution by ranking with minimum distance. In this study, of the model-based comparative studies literature”,
for us, determining the best order of scenarios important Production and Operations Management, vol.5, no.4, 309–
rather than just best and worst solution, in fact, this is the 334, 1996.
main difference with the previous research [1, 2, 3, and 6]. [6] M. Khouja, “The use of data envelopment analysis for
For future effort proposed the hybrid simulation which technology selection”, Computers and Industrial
GA and simulation software operate simultaneous and Engineering, vol. 28, no. 2, pp. 123–132, 1995
[7] A. B. Pritsker, “Introduction to simulation and SLAM II”,
select useful scenario. Fourth Edition, John Wiley and system publishing
Corporation, 1995.
[8] O. Shanian, O. Savadogo, “TOPSIS multiple-criteria
REFERENCES decision support analysis for material selection of metallic
bipolar plates for polymer electrolyte fuel cell”, Journal of
[1] A.Azadeh, M. Anvari, “Implementation of Multivariate Power Sources, vol. 159, pp. 1095–1104, 2006
Methods as Decision Making Models for Optimization of [9] V. Ebrahimipour, A. Azadeh, K. Rezaie, K. Suzuki,” A
Operator Allocation by Computer Simulation in CMS,” In GA–PCA approach for power sector performance ranking
proceeding of the 2006 summer computer simulation based on machine productivity” , Applied Mathematics and
conference,2006,Calgary, Canada Computation, vol. 186, pp. 1205–1215, 2007.

46
2009 International Conference on Computer Engineering and Technology

Dynamic Adaption in Composite Web Services Using Expiration Times

YU Xiaohao, LUO Xueshan, CHEN Honghui


HU Dan
Department of Information System and Management
Airforce Engineering University,
National University of Defense Technology
Changsha 410073, China
Xi’an Shaanxi 710077, China
yxhtgxx@yahoo.com.cn

Abstract—A key challenge in composite web processes is that process to be unchanged for T times. The web process will
the quality of participating services changes during the life be recomposed after T times. It is time consuming and may
time of the process. It is necessary to find an available lead to frequent unnecessary computations. In [4], the value
equivalent service to substitute the failed component which has of changed information with expiration times (VOC) and
been made unavailable. In this paper different from the Query-Cost are used to judge if it is deserved to choose a
previous method based on recompositing the web process, we new plan when the service parameter changes. This method
present an approach of discovering the “same skill” web can assure to select the best plan and reduce the computation
services to replace the expired one by using the service times, but it also need to recompose web services when
expiration times.
compute the expected cost of following the optimal policy,
Keywords-Web service adaption; Service matching; π ∗ .In [3],the authors use pre-defined event-condition-
Expiration times action rules as a workflow adaptation strategy. When a
change occurs in the environment, the event will be triggered
I. INTRODUCTION to adapt the workflow. While this method proposes a usually
used basis for performing contingency actions and has been
In volatile environments[2] where the Quality of Service
implement in many BPEL execution engine, this method also
(QoS) items such as deadlines, quality of products, and cost
has limit that in unpredictable conditions or complex
of services may change frequently, the composite web
workflows it can’t list all possible actions and preconditions
process may become invalidate if it not update with the
that may arise. [11] offers an architecture of Relevance-
changes. As an example, consider an information fusion
Driven Exception Resolution but there is no algorithm of
application. There are a number of web services (WS) for
how to select the “same skills” services. Doshi et al. [12]
giving information about a certain target. To complete a task
offers a solution by using Bayesian learning. However, the
we may design a web process using web service composite
Bayesian learning method does not have any advantage in
method [5,7,10]. When the web process executes, the
the time consuming of updating the parameters, and the
previous selected web service may not satisfy the designer’s
approach may bring on plan recomputations that can’t bring
requirement because of the unstable communication link,
about any change to the failed Web process.
target change or service unavailable. A straightforward
approach to solve the problem is to try a different process for III. DEALING WITH WEB PROCESS USING EXPIRATION
achieving the same goal. It is time consuming and ignores TIMES
the fact that different service providers may provide “same
skill” [11] web services. In these cases, we suppose that the Existing approach for Web Service Composition
failed web services may be substituted by a new one formulate the problem in different ways, depending mainly
identified in UDDI registry center. In this context, we on how to select the optimal web services to meet the user’
considere the “task” as a capability offered by a web service. requirements. However, because the characteristics of the
The replacement service should have the “same skill” with service providers who participate in a web process may
the failed one i.e. to have same functionality and QoS. change during the life-cycle of a process [11], these web
By using the insight that service providers are often able process systems are currently ill-suited for dealing with
to guarantee that the QoS items will persist for some amount exceptions effectively. To address the changes of web
of time [2,4], the paper presents a process adaption services, [2, 4] use the insight that service providers are often
framework and algorithm that can support dynamic service able to guarantee that their reliability rates and other quality-
selection of a failed task. t
of-service parameters will remain fixed for some time exp ,
II. RELATED WORK after which they may vary, While this is similar in concept to
Recently, researchers are increasingly turning their t
our approach. WS providers may define exp in a WS-
attention to managing processes in volatile environments. Au Agreement document. In this paper, instead of finding the
et al. [2] provide a T-correct algorithm to ensure the web optimal policy and calculate the query-cost, we take an

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 47


DOI 10.1109/ICCET.2009.146
architecture and an algorithm to find “same skill” services in (EE). When a web service expired and the BPEL
order to replace the one that expired in the composite process orchestrator decides to resolve it by finding and replacing the
flow [8]. task that stopped the web process, the sequence of process
performed are presented below step by step. In step1 when
A. Definition SM module detects a BPEL execution exception, it sends a
We assume that Task1 is already functioning in BPEL signal/message tagged by the failed component id to EE
execution. If Task1 expires then we will choose Task2 to module to stop the execution. In step 2 FD module analyses
replace it. To find “same skill” service Task2, we define two causations of the exception and then send the failed service’s
matching rules as follows: characters (Input and Output parameter, QoS and so on) to
(1)Input/output matching: Inputs and outputs are the CSM module which will update the database of
functional attributes of a web service. Note that descriptions replacement policy. Here the replacement policy can be pre-
of inputs and outputs go beyond the specifications employed defined policies or “default”[11] (all attribute values of the
in a WSDL specification, since the WSDL is machine- replacement task need not only to be the Input/Output
oriented types, whereas the input/output matching includes matching but also QoS “better” than the corresponding
higher-level semantics. To formally express these semantics, attributes of the failed task), “minimize-cost”, “maximize-
domain ontologies or do-main taxonomies can be employed reputation” and so forth. To keep the “default” not changing
[6,9]. In the web service replacement, the operation names with time, it will be updated only when a component failed at
can different but the input and output must semantic the first time. In step 3 the CSM module returns the
equivalent. Motivated by functional match and current replacement web service characters. Using this message in
concept similarity techniques [1], we set out from the step 4, the FR module decides the execution path and selects
following two rules to define a Input/Output semantic match. the required web service in UDDI to replace the failed one.
I I
In these two rules, task 1 and task 2 are the input set of Task1 The EE module executes the new web process in step 5.
O O
and Task2, task 1 and task 2 are the output set of Task1 and
Task2. These two rules which make the Input set of Task1
equal or contain Task2’s and also make the Output set of
Task2 equal or contain Task1’s semantically to ensure that
Task2 adapt to the web process context of the failed web
service Task1.
Rule 1:
for each i ' ∈ I task2 there exist an i ∈ I task 1 and i ' ⊇ i ;
here i ' ⊇ i indicate that i = i ' or i is the subclass of i '
Rule 2:
for each o ∈ Otask1 there exist an o ' ∈ O task2 and o ⊇ o ' ;
here o ⊇ o ' indicate that o = o' or o ' is the subclass of o
Fig. 1: Service Replacement Framework
(2)QoS matching: There is a set of metrics that measure
the Quality of Service. These kinds of QoS properties have
been emphasized on previous research works [5], such as C. Algorithm
availability, successful execution rate, execution cost, In Fig. 2, we show the algorithm for adapting the web
reputation, frequency. Two providers of same task process in volatile environment. When there is an exception,
supporting the same generic Input and Output may have The algorithm will select the “same skill” web service to
different values of QoS. Consider two web services that are replace the expired one (line 4-17). Notice that a web service
functional equivalent, i.e. they have the same Input/Output might expire while query the “same skill” web service, we
attributes. Also, suppose Task1 which has response must anticipate this and add those services in advance to the
availability A1 and cost C1 has already functioned in BPEL set, ES (in line 14). In line 11, the algorithm invokes the
execution, then when Task1 is failed to complete, if the ∗
following condition is true Task2 can replace Task1 in the procedure which finds the service s that can assure T times
web process: fixed to replace the expired one. The parameter T is
*
(Input/Output matching) AND (A2 ≥ A1) AND (C1≥C2) designated by the police. In line 12, the t[s ] is set zero,

B. Adaption Framework because the service s is the newly selected service. In line
Fig.1 shows the proposed service selection framework t
14, the times query is added to the other executing services,
which is designed to support the dynamic adaption in during which other services may expire. If there is no
composite web services using expiration times. In the Figure, expired services and the web process runs successfully, each
the framework is composed of 5 modules: Service
Monitoring Module (SM), Failed diagnosing Module (FD), tresponse
service’s execution times will be added by (In line
Failed Recovery Module (FR), Composition service
Management Module (CSM) and Execution Engine Module
tquery
18-20). In the algorithm the times is the times spend to

48
t recomposition with the component increasing. That is
find the “same skill” web service and the times response is because the recomposition of a web process will consume
the times spend during the web process successfully more and more time when the component number of a web
executing. process increases. However the recomposition method may
be more efficiency, when there is no satisfied web service for
the failed component. Under this condition we can avoid the
time of finding the failed one by modify the Policy.
In Fig. 4(b), we compare the runtimes taken in effectively
executing the web process when we increase the average
web services expiration times. Notice that the successful
execution times of a web process increase with the expiration
times increasing. That is because the shorter are the web
services’ expiration times the longer times that spend on
finding replacements or recompositing a web process.

(a) The components change

Fig. 2: Service Replacement algorithm

IV. EXPERIMENT
In this section we simulated our algorithm using a web
process scenerio with several web service components in
Fig. 3. For each component we randomly created some
relevant web services by using the OWLS_TC V26. We (b) The expiration times change
change some web service description profiles such as giving
each service an expiration times randomly from 1s to 20s, Fig. 4: Successful execution times of a web process using different method
building the ontology relationship between web services’
interface description. In our experiment, we randomly In the experiment we can find that out approach is
selected a web service for each component as an excellent in increasing the execution times of a web process
initialization. We compare the successful executing times when there are replacements of the failed web services.
with the method based on process recomposition.
V. CONCLUSION AND FUTURE WORK
In this paper we deal with dynamic adaption of web
process in volatile environments. To reuse the available web
services in a web process and increase it’s execution times,
we propose an intelligently web process adapting method by
finding the failed services’ replacement. First we define the
two conditions that must be satisfied when we select the
“same skill” web services. Then we present the process and
algorithm of our approach to deal with the expired web
service.
Fig. 3: Experiment Scenerio Our future work is to abstract the Business Process
Language (BPEL) to make the process language support the
The result is shown in Fig. 4(a). It can be seen that the dynamic adaption of the web process. We will also study the
average execution times of the web process using our storage strategy of “same skill” web services to accelerate
approach are longer than the method based on process the searching times in UDDI registry center.

49
REFERENCES [6] K. Sivashanmugam, K. Verma, A. Sheth,.: Adding semantics to web
services standards. Proceedings of the 1st International Conference on
[1] A.. Fernandez, S. Ossowski: Exploiting Organisation Information for Web Services (2003)
Service Coordination in Multiagent Systems: Proc. Of 7th int. Confon
Autonomous Agents and Multiagent System ,May,12-16., 2008. 257- [7] A. Charfi, M. Mezini,.: Aspect-Oriented Web Service Composition
264(AAMAS 2008). with AO4BPEL. Proceedings of the European Conference on Web
Services (2004)
[2] T. C. Au, U. Kuter, and D. S. Nau. Web service composition with
volatile information. In International Semantic Web Conference, 52- [8] P. Wohed, M. Dumas,.: Analusis of Web Services Composition
66, 2005. Language: the Case of BPEL4WS,200-215. Spriner-Verlag Berlin
Herdelberg.
[3] R. Muller, U. Geriner, and E. Rahm. Agentwork: a workflow system
supporting rule-based workflow adaption. Journal of Data and [9] OWL services Coalition: OWL-S: Semantic markup for web
Knowledge Engineering., 51(2):223-256, 2004. services(2004) OWL-S White Paper
http://www.daml.org/services.owl-s/1.1/owl-s.pdf.
[4] J. Harney, P. Doshi. Speeding up Adaption of Web Service
[10] D. Nau, T.C. Au, O. Ilghami, W. Murdock, D. Wu,: SHOP@: An
Compositions Using Expiration Times. International World Wide
HTN planning system. JAIR 20(2003)379-404.
Web Conference Committee May 8-12, 2007. 1023-1032(WWW
2007). [11] Kareliotis Christos, Vassilakis Costas, Georgiadis Panayiotis,:
[5] Liangzhao Zeng, Boualem Benatallah. Quality Driven Web Service Toward Dynamic Relevance-Driven Exception Resolution in
Composite Web Services.
Composition. International World Wide Web Conference Committee.
May 20-24, 2003(WWW 2003). [12] P. Doshi, R. Goodwin, R. Akkiraju, and K. Verma.: Dynamic
workflow composition using markov decision process. Journal of
Web Services Research(JWSR), 2(1):1-17,2005.

50
2009 International Conference on Computer Engineering and Technology

An Emotional Intelligent E-learning System Based on


Mobile Agent Technology

Zhiliang Wang, Xiangjie Qiao, Yinggang Xie


School of Information Engineering
University of Science & Technology Beijing
Beijing, China
wzl@ies.ustb.edu.cn, qxj7711@163.com, yinggangxie@163.com

Abstract—The emergence of the concept “Affective individuals with more positive affect exert more effort on
Computing” makes the computer’s intelligence no longer be a computer-related tasks. The Artificial Psychology theory put
pure cognitive one. Current e-learning systems cannot instruct forward by Professor Zhiliang Wang [1] proposes imitating
students effectively since they do not consider the emotional human psychology activities with artificial machines
state in the context of instruction. In this paper, we construct (computers, objective function algorithm) by means of
an emotional intelligent e-learning system based on mobile information science. It offers the theoretical and modeling
agent technology. A dimensional model is put forward to basis for realizing the emotional intelligence in e-learning
recognize and analyze the student’s emotion state and a virtual systems. In this project, we construct a virtual teacher agent
teacher’s avatar is offered to regulate student’s learning
to communicate with students in the process of learning. The
psychology with consideration of teaching style based on his
virtual teacher can respond to student’s current state to
personality trait. A “man-to-man” learning environment is
built to simulate the traditional classroom’s pedagogy in the regulate their emotion to optimum by words or expressions.
system. Thus we can establish a harmonious environment for human
and computer’s interaction, with an emphasis upon “man-to-
Keywords-emotional intelligent; two-dimension model; man” instruction.
mobile agent; virtual teacher Moreover, to process largely emotional computation on
the web, system would occupy the bandwidth frequently.
I. INTRODUCTION Therefore we shall consider the cost of the network, the
whole system’s basic architecture and technological support.
Learning is one of the cognitive process affected by one’s Traditional paradigms for building distributed applications
emotional state [3]. While Current E-learning system is are RPC and most recently its object cousins RMI and
referred to as cognitive education. Though Intelligent CORBA. For this class of paradigms, functionality of
Tutoring Systems (ITS) can provide individualized applications is partitioned among participating nodes.
instruction by being able to adapt to the knowledge, learning Different participants use message-passing to coordinate
abilities and needs of each individual student, they are still distributed computation. Computation itself is partitioned,
not as effective as one-on-one human tutoring. In a word, participants exchange intermediate results and other
nowadays learning systems are lack of emotional interaction synchronization information. While for Mobile Agent
in the context of instruction. They cannot simulate the paradigm, computation is migrated toward resources. This
traditional classroom scenario: The teacher and students can will largely reduce the data flow in the Internet. It also has its
face to each other in the class. As Wu Qinglin [4] said, an particular characteristics of Mobility, Autonomous,
educational psychologist, an effective individualized learning Personalized and Adaptive to diminish network’s load,
system should be not only intelligent but also emotional. So conquer the network’s latency, adapt to a new environment
E-learning systems should have emotional intelligence to dynamically, and improve the system’s robustness and fault
meet the need. In our project, we will take the student’s tolerance. In this paper, we try to experiment with such
emotional state into account by analyzing his learning paradigm---Aglet. Aglet is the shorthand for agent plus
psychology or motivation. Researchers in neurosciences and applet. It provides us an infrastructure for building
psychology have found that emotions are widely related to distributed applications based on mobile agent technology.
cognition, they exert influences in various behavioral and It’s easy for us to implement the information’s gathering and
cognitive process, such as attention, long-term memorizing, retrieval by utilizing its mobility property.
decision-making, etc[6][7]. Rozell and Gardner’s [8] study
pointed out that when people have negative attitudes towards II. THE ARCHITECTURE BASED ON MOBILE AGENT
computers, their self-efficacy toward using them reduces, The system’s architecture is as shown in Figure1. Next
which then reduces their chances of performing computer- we will introduce every server and component’s
related tasks well compared to those with positive attitudes functionality and role in the system.
towards computers. This research also emphasized that

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 51


DOI 10.1109/ICCET.2009.17
III. STUDENT’S LEARNING PSYCHOLOGY MODEL
We often try to estimate a person’s internal state by
observing facial expressions, a visible change in heartbeat,
voice inflections and even eye and other body movements.
To interact most effectively, it is often useful for us to try to
gain insight into “invisible” human emotions and thoughts
by interpreting these non-verbal signals. Teachers use these
non-verbal signals to make judgments about the state of
students to improve the accuracy and effectiveness of
interactions. This non-verbal communication is completely
lost when people communicate with computers [11].
In our research, the emotion of a student is mainly
recognized by facial expression captured by a camera. By
Figure 1. System’s architecture analyzing the facial expression, we can get the student’s
learning psychology. Here, we utilize a two-dimension
The E-learning Service Center Server (ESCS) is in model to describe a student’s emotion. That is interest level
charge of the general management of the system. It will and attention level.
initialize the entire environment (e.g. Classroom Server, Interest level is mainly depended on the distance between
Student Server’s Creation), monitor other servers’ activity, student and computer. General speaking, if the student is
provide registration service and cooperate with other agent interested in the instruction he will sit more nearer the
systems. computer to care the learning material. By computing the
When a student enters our system, the system will firstly student’s face area obtained by the camera, the interest level
provide three services in a web page for him to choose as he can be achieved [13] (See Equation (1)). Here, the Ei is the
likes. One is “Class”, which is provided for students to have
classes. The second is “Question and Answer” and the third x is the face area, the xF max is the
Interest level, the
is “Online Test”. These three functions are all implemented
based on mobile agent technology. maximum face area can be detected, and the x F min is the
When students want to have classes with our system, the minimum face area can be detected.
information about the courses and teachers will be offered. If ⎧ 0 x ≤ xF min
the student is the first time to use our system, he should
⎪ 1
⎪⎪⎛ x − xF min ⎞2
firstly register his information and wait for the system’s
verification. After the student passes the verification, he can
Ei = ⎨⎜ ⎟ x ≤x≤x
start his class with a virtual teacher say hello to him. At the ⎜ x − x ⎟ F min F max (1)
same time, the ESCS will send Student Server Management ⎪⎝ F max F min ⎠
Agent (SSMA) to create the Student Agent (SA) and manage ⎪ 1 xF max ≤ x
other agents in Student Agent Server. Each student will ⎪⎩
match one SA respectively. On the other hand, the ESEC If the student pays much attention to the instruction, his
will create Teacher Agent and send it to the Teacher Agent pupil will become much bigger than usual. Attention level is
Server. And the Classroom Server will receive the Mobile to detect whether the student is learning carefully enough
Student Agent’s request to dispatch a Virtual Teacher Agent [13] (see Equation (2)). Here, the E a is the Attention level,
(VTA) to begin a class. Information Gathering Agent (IGA)
will start to gather pedagogical information and provide the x is the space between eyelids, the pi is current
useful pedagogical tactics for VTA through data mining
mechanism. Here the VTA shall do four things in the context interest level, the xe max is the maximum of averaged pupil
of instruction. First, Listening to the student’s changing state size and the xe min is the minimum of averaged eyelids’
especially emotional state. Second, analyzing the student’s
emotional and cognitive data to decide next action. Third, distance.
Regulating the student’s state by doing some activities such ⎧ 0 x ≤ xe min
as words expression or facial expression. Fourth, Receiving ⎪ 1
student’s question and return the answer to the student. VTA ⎪ ⎛ x ⎞ 2
tell the ESEC to create a Mobile Query Agent (MQA) and ⎪⎪⎜ p − xe min ⎟
dispatch it to every campus aglet server that has registered in Ea = ⎨⎜ i ⎟ xe min ≤ x ≤ xe max (2)
the ESEC and the query result will then be fetched and ⎜ xe max − xe min ⎟
arranged well to the students.
⎪⎜ ⎟
⎪⎝ ⎠
⎪ 1 xe max ≤ x
⎪⎩
Finally we get the general learning psychology of the
student by Equation (3). Here, the C is the student’s

52
cognitive evaluation value, α, β, γ is the weight of Ei , E a of one emotion x changes to another emotion y. On the
other hand, the change of teaching style can be obtained by
and C respectively.
(6). For each dimension of personality according to the
P = αEi + β Ea + γC 2 (α + β + γ = 1) OCEAN model, θ ep defines a weight of personality factor
2 2
(3)
p for emotion e. For example, θ joyO is the weight of
IV. VIRTUAL TEACHER’S EMOTION MODEL personality factor O for the joy emotion. And Wi denotes
Positive affects are fundamental in cognitive the percentage of each dimension of personality. Finally we
organization and thought processes; they also play an
important role to improve creativity and flexibility in can get the new emotion esn +1 by equation (7).
problem solving [8]. Reciprocally, negative affects can
block thought processes [9]. It is an illusion thinking that TABLE I. TEACHING STYLE VS. OCEAN
learning environments that don't consider motivational and OCEAN Teaching Style
emotional factors are adequate. Since there is not a real Openness Active
teacher or a real classroom in an e-learning environment, we Conscientiousness Responsible
Extraversion Energetic
construct a teacher’s avatar as a virtual teacher to analyze Agreeableness Easy-going
student’s emotion state and give proper regulation to adjust Neuroticism Rigorous
their negative emotion.
The virtual teacher’s emotional model contains three
modules: Sense Module (SM), Thinking Module (TM) and ⎡ p xx p xy p xz ⎤
⎢ ⎥
Behavior Module (BM). p s = ⎢ p yz p yy p yz ⎥ (4)

STB =< SM , TM , BM > ⎢ p zx p zy p zz ⎥⎦



⎡ p xx p xy p xz ⎤
The virtual teacher will listen to the student’s learning ⎢ ⎥
state through VTA by Sense Module. Once the SM senses Δes = e p s = [x s , y s , z s ]⎢ p yz
n
s p yy p yz ⎥ (5)
the changing it will inform the TM to analyze the student’s ⎢ p zx p zy p zz ⎥⎦
state and decide how to regulate the student’s state by doing ⎣
some activities like words or facial expression. Thinking ⎡θ aa θ ab θ ac ⎤
Δ p = [Wa , Wb , Wc ]⎢⎢θ ba θ bb θ bc ⎥⎥
Module is also a control module, it is made up of knowledge
and personality. Knowledge is just as the regulation rule; it (6)
depends on the psychological and pedagogical theory and ⎢⎣θ ca θ cb θ cc ⎥⎦
experience. As every person has his own personality, we
take the virtual teacher’s teaching style as his personal trait. esn+1 = esn + Δes + Δp = esn + esn ps + Δp = [xl , yl , zl ] (7)
For example, some teachers are rigorous while some are
easy-going with his students. And the words and phrases
will be different according to their teaching style as well.
For instance, when the teacher wants to give the student
suggestion, rigorous teacher may express as “You
should…”, “let’s…”, while the easy-going teacher will say
“I suggest that you…”, “Perhaps you would like to…” or
“Maybe you could…” etc.
The change of the virtual teacher’s emotional state
depends on two factors: external stimuli and teaching style.
External stimuli are the student’s new emotional states.
Meanwhile, we adopt the OCEAN model [12] to map the
teaching style (see Table 1). To effectively regulate the
student’s state, three couple (six) emotions are employed in
the model: joy and angry, pride and sad, hope and
disappointment (see Figure 2). The virtual teacher’s avatar Figure 2. Various emotions for the virtual teacher
is revised from the Ken Perlin’s applet program
(http://mrl.nyu.edu/~perlin/). Suppose the probability of V. TESTBED
changing Emotion is Ps (see (4)), and then the change of the
We have constructed a prototype and developed some
emotion will be (see (5)). The p xy means the probability agent modules to test the effectiveness of the architecture.

53
Figure 3 (a) shows the classroom server’s management VI. CONCLUSION AND FUTURE WORK
interface and (b) is the student’s learning window. The In this paper, we have constructed an emotional
virtual teacher will respond to the student’s emotion state intelligent e-learning system based on mobile agent
through verbal or non-verbal expressions. Students can ask technology. The system’s functionalities include: (1)
to the teacher whenever they are confused with the Students can quickly find the course-related information and
instruction and answer the questions forwarded by the virtual the data share is well implemented; (2) Students can
teacher as well. communicate with the real teacher or the virtual teacher
emotionally; (3) Students can do online testing to test
themselves independently. In the future work, we will revise
the details of our system and find some school students to
test the system’s performance.
ACKNOWLEDGMENT
This paper is supported by the National Natural Science
Foundation of China Grant #60573059 and Natural Science
Foundation of Beijing Grant #KZ200810028016.

(a) Classroom server’s management window REFERENCES


[1] Wang Zhiliang. Artificial Psychology-a most Accessible Science
Research to Human Brain. Journal of University of Science and
Technology Beijing, 22 (5), 478-481, (2000).
[2] Picard, R. W.. Affective Computing. MA: MIT, 1997
[3] D. Goleman. Emotional Intelligence. New York: Bantam Books,
1995.
[4] Wu Qinglin. Pedagogical Psychology---to Pedagogue. Shanghai:
East China Normal University Press, 2003.
[5] E.J. Rozell, W.L. Gardner. Cognitive, motivation, and affective
processes associated with computer-relatedperformance: a path
analysis. The Journal of Computers in Human Behavior,16 (2000),
199–222, 2000.
[6] Damasio, A. (1994) Descartes Error – Emotion, Reason and the
Human Brain. Putnam Press, NY.
[7] Frasson, C. Using cognitive Agents for Building Pedagogical
(b) Student’s learning window Strategies in a Multistrategic Intelligent Tutoring System. Bayonne:
Deuxième journée Acteurs, Agents et Apprentissage, 1998.
Figure 3. System’s interface
[8] Isen, A. M. Positive Affect and Decision Making. Handbook of
Emotions, 2000.
In addition, we have carried out the incremental testing
[9] Idzihowski, C. Baddeley, A. Fear and performance in novice
to test the system’s scalability. Table 2 shows the time of parachutists. Ergonomics, 30, 1463-1474, 1987.
feedback when query all the sub agent systems. [10] Reed, G. F. Obsessional cognition: performance on two numerical
tasks. British Journal of Psychiatry, 130, 184-185, 1977.
TABLE II. TESTING RESULT [11] Sarrafzadeh, A. Hosseini, H.G. Fan, C. Overmyer, S.P. Facial
subsystem’s time for obtaining the time for obtaining all expression analysis for estimating learner’s emotional state in
number first data data intelligent tutoring systems. Proceedings of the 3rd IEEE International
Conference on Advanced Learning Technologies,2003, pages 336-
2 13.5s 15.7s
337.
3 13.7s 17.6s
4 14.2s 21.3s [12] P.T. Costa and R.R. McCrae. Normal personality assessment in
5 14.5s 22.5s clinical practice: The NEO personality inventory. Psychological
Assessment, (4): 5-13,1992.
[13] Yinggang Xie, Zhiliang Wang, Lijuan Wang, An Ping, Xiangjie
Qiao. Affective Recognition Based on Approach-Withdrawal and
Careness, ISAI’062006-08.

54
2009 International Conference on Computer Engineering and Technology

Audio Watermarking for DRM based on Chaotic Map

B. Lei I. Y. Soon
School of Electrical and Electronic Engineering, School of Electrical and Electronic Engineering,
Nanyang Technological University, Nanyang Technological University,
Singapore, 639798 Singapore, 639798
leib0001@ntu.edu.sg

Abstract—This paper focuses mainly on using chaos schemes mainly focus on image and video copyright
encryption to protect AVS audio efficiently. A novel protection [1-3]. However, audio watermarking
digital watermarking approach is introduced for audio methods have, to our knowledge, not been studied
copyright protection. A meaningful gray image embedded much. Early work on audio watermarking embedding
into digital compressed audio data is researched by
quantizing MDCT coefficients (using integer lifting
achieved inaudibility by placing watermarking signals
MDCT) of audio samples based on chaotic map. The in perceptually insignificant regions. One popular
proposed watermarking algorithm can extract the choice was the higher frequency region [4]. In some
watermarking image without the help from the original systems, the Fourier transform magnitude coefficients
digital audio signal. The experimental results show that are replaced with the watermarking sequence. Some
the proposed digital watermarking approach is robust to previous works on MP3 are always based on the
the audio degradations and distortions such as noise frequency-selective method that selects different
adding, compression, low pass filtering, resampling, and frequency coefficients to be encrypted. For a review of
re-quantization. The digital watermarking scheme is able the early watermarking schemes and main
to provide a feasible and effective audio copyright
requirements of a watermarking scheme, the reader
protection.
may consult [5].
The majority of watermarking schemes proposed to
Keywords-component; formatting; style; styling; insert
(key words) date use watermarking generated from pseudorandom
number sequences. As a single seed will reproduce the
same sequence of numbers each time the generating
function is iterated. Pseudorandom sequences have an
I. INTRODUCTION
advantage in that they can be easily generated and
recreated. Chaotic functions have been used to
Digital audio watermarking embeds inaudible generate watermarking sequences [6-8]. Similar to the
information into digital audio data for the purposes of pseudorandom number sequence, a single seed (along
copyright protection, ownership verification, covert with an initial value) will always reproduce the same
communication, and/or auxiliary data carrying. With sequence.
the widespread infusion of digital technologies and the Another trend in digital audio watermarking is to
ensuing ease of digital content transport over the combine watermarking embedding with the
Internet, Digital Rights Management (DRM) of compression or modulation process. The integration
multimedia data have therefore become of a critical could minimize unfavorable mutual interference
concern. Audio Video coding Standard (AVS) is between watermarking and compression, especially
China's second generation source coding\decoding preventing the watermarking from being removed by
standard with fully Intellectual Properties. As the sixth compression. In one scheme, watermarking embedding
part of AVS standard, AVS DRM aims to offer the is performed during vector quantization. The
universal and open interoperable standard for various watermarking is embedded by changing the selected
DRM requirements in digital media industry. Audio code vector or the distortion weighting factor used in
content protection also plays an important role in many the searching process. Although the audio
digital media applications. watermarking methods described above have their own
Digital watermarking technique has received a great features and properties, they share some common
deal of attention recently in industry and academic problems as follows:
community, but currently digital watermarking

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 55


DOI 10.1109/ICCET.2009.196
(l) The amount of hidden information is small. For on the mapping. The chaotic sequence has the
example, some of them can only embed pseudo- character which is sensitive to initial values and
random bit sequence or binary image. random alike. The simplest chaotic sequence is one
(2) The detection procedure needs the original dimensional logistic map which is unimodal and
digital audio signals. defined as xk 1 P xk (1  xk ), xk  (0,1) , where
(3) The robustness and invisibility are not so good, 0  P d 4 is bifurcation parameter. In practice, when
for the Human Auditory System (HAS) is not taken
into account adequately.
P is restricted within narrow limits, i.e. 3.57  P d 4 ,
(4) Most of transform domain digital audio xk is in chaotic state, which can be used to select
watermarkings have round-off error problems, because embedding points randomly.
they utilize the floating point calculation.
In this paper, we introduce a new adaptive digital
audio watermarking algorithm based on the III. BINARY IMAGE WATERMARKING EMBEDDING
quantization of MDCT coefficients (Integer Lifting AND EXTRACTION
MDCT). The features of the proposed algorithm are as
follows:
(1) Embedded watermarking as meaningful gray A. System Model
image.
(2) Blind detection without resorting to the original There are three ways to embed the binary image as
digital audio signal or any other side information. watermarking to audio A:
(3) Integer lifting MDCT to solve round-off error A 'i Ai  D xi (1)
problems. A 'i Ai (1  D xi ) (2)
This paper proceeds as follows. Section 2 describes
the proposed watermarking generation. In Section 3, A 'i Ai e axi (3)
the watermarking embedding and detection procedures Where Ai is the audio transform coefficient, and a
are provided. Section 4 shows the experimental results
and discussions. Conclusions are given in Section 5. is embedding stretch factor. We adopt equation (2) as it
can be adaptable to Ai change. Our proposed
embedding and extraction scheme can be seen in
II. GENERATION OF WATERMARKING WITH
Figure 1.
CHAOTIC MAPS
Original AVS Compressed Watermarked AVS
audio encoder bitstream audio decoder
The majority of watermarking generation schemes
proposed to date use a pseudorandom number
Scrambling with Watermarking Watermarking Extracted
generator to create a watermarking sequence which is chaotic sequence embedding
key
extraction watermark

embedded in the cover work. A chaotic function is


unpredictable, indecomposable and yet contains Figure 1. Proposed embedding and extraction scheme
regularity which is sensitive to initial conditions. The
motivation for using a chaotic function to generate a
watermarking is that a single variable seeding the
chaotic function will always result in the same output B. Pre-processing of Image Watermarking
(mapping) when certain constraints or initial conditions
are placed on the mapping. The use of chaotic If the watermarking is visually differentiable
functions for the generation of watermarking has been M 1 u M 2 binary image which can be represented as:
previously proposed [9-11], for example, the Bernoulli W {w(i, j ), 0 d i  M 1 , 0  j  M 2 } (4)
Map, Skew Tent Map and also logistic Map. In this
study, the logistic map was selected, as it is a well- where w(i, j )  {0,1} . Because W is a two-dimension
behaved chaotic function which has been extensively binary image, we should do some dimension reduction
studied. operation if we want to embed it into audio Ai . The
The watermarking is generated using deterministic
two-dimension image is converted to one-dimension
chaotic maps. The primary advantage is that it is
sequence with equation (5).
possible to investigate the spectral properties of the
V {v(k ) w(i, j ), 0 d i  M 1 , 0 d j  M 2 , k i * M 2  j}
resulting watermarking. A single variable, seeding the
chaotic function will generate the same output (map) (5)
when certain constraints or initial conditions are placed

56
To eliminate the similarity in the neighboring elements Where De ( k ) {De (k )( m), 0 d m  N } ˈ De (k )( m) is
and enhance the watermarking robustness, we adopt the kth audio data.
the linear recursive shifter to sort all the elements in (5) Choose the intermediate frequency coefficient:
the random sequences. We choose the median coefficients in the MDCT
V p sort (V ) {v p (k ) v(k '), 0  k , k '  M1 M 2 } (6) domain to satisfy the digital audio signal.
After sorting, the k ' elements in V will shift to K (6) Embedding watermarking: Adaptively modify
elements in the v p . To further improve the the medium coefficient De (k )(mw ) by sorting to
watermarking anti-attack ability, we modulate the embed v p (k ) .
watermarking sequence by chaotic signal and generate ­° De (k )(i)(1  av p (k )), mk  i  m(k  1)
chaotic sequence {r (l )} with secret seed K, then use De '(k )(i ) ®
°̄ De (k )(i)otherwise 13)
{r (l )} to modulate {v p (k )} and get {s(l )} with m
where m is modulation factor, a is stretching factor
modulation factor seen as follows.
which can be changed to control the watermarking
s (l ) v p ( «¬1/ m »¼ k ) † m(1) embedding intensity. If a is too small, the embedding
v p ( k ), r (1)  {0,1}(0 d k  mM 1 M 2 ) signal is too small to be perceptible, which is weak in
(7)
anti-interference. If a is too large, it can reduce the use
Chaotic modulation has the advantages of high anti-
value of the signal and cause the hearing distortion,
interference ability, low-power spectral density and
however, it is robust to the attack. The value can be
higher confidentiality. But it is based on the increase of
chosen according to the application.
the signal capacity to improve the robustness.
(7) Inverse MDCT: Do the inverse MDCT of D 'e
A 'e (k ) IMDCT ( D 'e (k )), 0 d k  ( M 1 u M 2 ) (14)
C. Watermarking Embedding

There is original audio signal with L sampling data (8) Replace A 'e with Ae to get the final
and M 1 u M 2 binary image. In this paper, we employ watermarking signal.
MDCT transform to embedded watermarking W. The
detailed embedding process can be shown as follows:
(1) Segmentation: Segment M 1 u M 2 data with D. Watermarking Extraction
length N from A and denoted as:
Ae { Ae (k ), 0 d k  ( M 1 u M 2 )}  (8) The watermarking extraction algorithm is expressed
Where Ae (k ) is expressed as: as follows:
Ae (k ) {a (k u N  i ), 0 d i  N } (9) (1) Segmentation: Segment digital audio signal Ae .
(2) Watermarking dimension reduction: Because the (2) MDCT: Do the MDCT of Ae and Ase .
image is two-dimension, it should be converted to one (3) Extract watermarking:
dimension shown in equation (9) before it is embedded
1
into audio signal. s '(l ) ( Dse (k )(l )  De (k )(l )), mk d l  m(k  1)
V {v(k ) w(m1 , m2 ), a u De (k )(l )
(10) (15)
0 d m1  M 1 , 0 d m2  M 2 , k m1 u M 2  m2 }
(4) Generate the chaotic sequence{r (l )} with key K,
After the dimension reduction, w(m1 , m2 ) in the image
and then do the Exclusive OR operation to
W can be expressed with v (k). get {vsp '(l )} :
(3) Pseudo random sequence sorting: To eliminate
the correlation in the neighboring elements, we adopt vsp '(l ) s '(l ) † r (l )
(16)
the linear recursive shift register to sort all the elements (5) Reconstruct {vsp '(k )} from {vsp '(l )} , if the sum
in V to improve the robustness.
V p sort (V ) {v p (k ) v(k '), 0 d k , k '  ( M 1 u M 2 )} of the m segments is more than > m / 2@  1 , then
(11) watermarking {vsp '(k )} is 1, otherwise, it is 0.
(4) Apply MDCT: Do the MDCT to all the audio (6) Inverse sorting: The one-dimension sequence
data can be obtained by inverse sorting which is expressed
De (k ) MDCT ( Ae (k ), 0 d k  ( M 1 u M 2 )  2) as:

57
Vs {vs ( k ) vsp ( k '), 0 d k , k '  M 1 M 2 } extracted results are displayed in Figure 3. The PSNR
(17) after embedding is 40.23dB. The original and
The watermarking is increased to 2-D dimension, embedded watermarking audio is very similar visually
therefore, the finally extracted watermarking image is and aurally which also can be seen from the
shown in equation (18). waveforms.
Ws {ws (i, j ) vs (k ), 0 d i  M1 ,0 d j  M 2 , k i * M 2  j}
(18)
water
IV. EXPERIMENT AND RESULTS mark
A. Watermarking Security Test
water water
The security test is shown in Figure 2. With right
key, seed=0.38, watermarking can be extracted mark mark
correctly. However, if the seed=0.3800001, the
watermarking can not be recovered correctly. With
only 0.0001 differences, the images are quite different Figure 3. Watermarking embedding and extraction comparison
which means we can not extract the watermarking
without correct key. To test the robustness of the watermarking, the
embedding audio watermarking is under a variety of
attacks, such as re-sampling, low pass filtering,
clipping, noise and AVS compression attack. The
watermarking is extracted from the audio signal and
computed the similarity of the original and embedded
Figure 2. Watermarking security test ( Left: extracted image with audio watermarking. Without any processing, the
correct key, right: extracted image without correct key) normalized correlation coefficient of the extracted
watermarking is 1. The attacks are realized as follows:
B. Watermarking Attack Experiment and Analysis

To remove the effect of observer’s experience,


experiment and device conditions, and other objective
and subjective effect, PSNR and normalized coefficient
are adopted to objectively assess the original and a b c d
extracted watermarking.
PSNR˖
max w '2 ( n)
PSNR ( w, w ') 10 log10 (19)
1
N
¦ (w '(n)  w(n))2 e f g
Figure 4. Extracted watermarkings after attacks (a. original
Normalized Coefficient (NC) ˖
watermarking. b. re-sampling attack, re-quantization attack, d.
M1 M 2
adding noise attack, e. low pass filter attack, f. clipping attack, and
¦¦ w(i, j )w (i, j )
i 1 j 1
s g. AVS compression attack)
NC ( w, ws ) (20)
M1 M2
(1) AVS attack: The audio bitstream goes through
¦ w (i, j ) ¦ w
i 1
2

j 1
s
2
(i, j ) the encoder and decoder. The compression ratio is 10:1
(2) Clipping: Cut 10% of the original audio.
In this paper, we use 22.05 KHz sampling rate, 8bit (3) Low pass filter: Using Butterworth filter, cutoff
quantization resolution and the length of the mono
frequency is 22.05 kHz, the order is 6.
channel audio signal is 30s. The audio signal contains
(4) Median filter: 4 order median filter.
the speech, popular, country and classic music. A
(5) Gaussian noise: Embedding Gaussian noise
64×64 binary image after chaotic encryption was
embedded to the original audio. The initial value of whose mean is 0 and variance is 0.01.
chaotic sequence is 0.8 and P 2 . The embedding and (6) Re-sampling: Up-sample the original audio to

58
22.05 kHz, then down-sample to 11. 025 kHz [2] J., Ruanaidh., S.,Pereira, “A secure robust digital image
watermarking”, Electronic imaging: processing, printing and
(7) Re-quantization: Quantize the audio frequency publishing in colour, 1998.
from 16-bit to 8-bit, and then quantize it back to 16-bit. [3] R.,Venkatesan, M., Jakubowski, “Image watermarking with
After various attacks, the extracted watermarkings better resilience”. In: Proceeds ICIP, 2000.
are described in Figure 4. we can see that, the [4] M., Barni, F., Bartolini, and A., Piva, “ Improved wavelet-
algorithm can resist some attacks and maintain based watermarking through pixel-wise masking”, IEEE Trans
Image Process, vol. 10, pp.783–91, 2001.
robustness. It can basically meet the application
[5] Identification and protection of multimedia information.
requirements for AVS DRM and copyright protection. Special issue on Proceedings of the IEEE 87, 1999.
Moreover, it is secure and easy to implement. [6] A. Tefas, A., Nikolaidis A N., Nikolaidis, V., Solachidis, S.,
Tsekeridou, and I., Pitas, “Markov chaotic sequences for
correlation based watermarking schemes”, Choas, Solitons &
V. CONCLUSIONS Fractals vol. 17, pp.567–573, 2003.
[7] RL., Devaney, “A first course in chaotic dynamical systems –
theory and experiment”. Cambridge, MA: Perseus Books;
In this paper, AVS audio watermarking embedding, 1992.
extraction and detection for DRM is realized based on [8] S., Tsekeridou, V., Solachidis, N., Nikolaidis, A., Nikolaidis,
chaotic map in the MDCT domain. In the MDCT A., Tefas, and I., Pitas, “Bernoulli shift generated
domain, the watermarking intensity and capacity can be watermarkings: theoretic investigation”,In: Proceedings of
IEEE international conference on acoustics, speech and signal
modified adaptively. The chaotic key is introduced into processing, pp. 1989–1992,2001.
the standard AVS audio bitstream to improve
[9] A., Nikolaidis A and I., Pitas, “Comparison of different chaotic
robustness. The experiment shows that the proposed maps with application to image watermarking”, In: Proceedings
algorithm and scheme can resist some attacks while of IEEE international symposium on circuits and systems,
retain good quality. This scheme can be applied to the pp.509–512, 2001.
AVS DRM for copyright protection. [10] A., Mooney and JG., Keating, “Noisy optical detection of
chaos-based watermarkings” in: Proceedings of SPIE Photonics
North vol.5579, pp.341–350, 2004.
REFERENCES [11] A., Mooney amd JG. Keating, “The impact of the theoretical
properties of the logistic function on the generation of optically
[1] C.L, Podichuk and E.J., Delp., “Digital watermarking: detectable watermarkings”, In: Proceedings SPIE, Technology
Algorithms and applications”. IEEE Signal Processing for Optical Countermeasures, Optics/Photonics in Defence and
Magazine, vol.14, no.4, pp. 33-46, 2001. Security, pp. 120–129, 2004.

59
2009 International Conference on Computer Engineering and Technology

Walking Modeling Based on Motion Functions

Hao Zhang Zhijing Liu


School of Computer Science and Technology School of Computer Science and Technology
Xidian University Xidian University
Xi’an, P. R. China Xi’an, P. R. China
zhanghao@xidian.edu.cn liuzhijing@vip.163.com

Abstract—A modeling method of motion-function is presented


to represent the motion in detection of video images within the II. THEORETIC MODEL
physical and motional characters of body. It concentrates on The physical characters of human and motion are utilized
the characters of video surveillance, with the examples of in this model, and three functions between body biometrics
walking videos, and results in walking functions by extracting and time, which are the proportion of step length to human
and dealing with the data from the experiments. On this basis,
stature and time, human silhouette and time, the coordinates
more experiments are required to validate all coefficients in
of human centroid and time, are constructed. Then body
functions, and induce final expressions of gait function and
modeling. motions can be detected in term of these factors, such as
walking, running, jumping, creeping etc.
Keywords-computer vision; video surveillance; motion A. The Relationship between the Proportion of Step
recognition; motion-function; biometrics
Length to Human Stature and Time
First of all, because of the restriction on physical factors,
I. INTRODUCTION the step length is certain to be restricted by human stature.
The vision analysis [1] of body motion in computer Videlicet, step length and stature accord with the proportion,
vision consists of detection, tracking, identification and and it is universal to body motion. Next, while walking,
action understanding in the sequences of video images. human’s arms and legs move periodically. It is universally
Because of the demands for sensitive scenarios, including that body motion is periodic.
banks, airports, customs and so on, it is an important
research domain to identify body movement without B. The Relationship between Human Silhouette and
surveillance in long distance. Time
There are three main methods [2] of action identification, As video information represents 3D in the form of 2D, it
for example, based-on template, probability-network and is difficult to extract human model of 3D directly. Human
syntactic technique. Many scholars, such as Murase and silhouette of 2D can be extracted directly, consequently, the
Sakai [3], Shutler [4], Johnson and Bobick [5], Brand [6,7], states of body motion are determined by the variations of
Oliver [8], Kitani [9], Liang Wang [10] and so on, devoted rectangles’ areas, and the variations of body motion are
themselves into this domain and presented many identifying detected in consequence.
methods. With the characters of video surveillance [11],
there are many factors existing in environmental restriction C. The Relationship between the Coordinates of Human
in application of identifying methods based-on gait, so that it Centroid and Time
does not meet the applicable demands of video surveillance. Body motion in video information is equal to mechanism
As a result, on the basis of Long Ye’s idea [12], we utilize motion of a body in physics. In physics, the centroid of body
the consecutive characters of video information with the is an important reference point of mechanism motion in
physical law, and present a method of motion-function to study. Its definition is a system of particles made of N ones,
analyze body motion. Then we analyze the data of body whose mass center is the centroid of system. In the study of
motions and induce and validate the functions furthermore. body motions, the centroid is the reference point and
The rest of the paper is organized as follows. Section 2 described the physical parameters, such as orientation,
introduces the theoretic model on biometrics. Section 3 velocity etc, which reflect the state of motion, so that the
describes modeling and functions in motion information. goal of detection in body motion is achieved.
Section 4 discusses the experimental results. Conclusive
remarks are addressed in the final section, Section 5. III. MODELING AND FUNCTIONING
As shown in Fig. 1, two walking videos of 90° and 45°
are selected, which are the angles between recording
orientation and body motion one. For short, they are labeled
as 90° video and 45° one respectively. On the basis of these,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 60


DOI 10.1109/ICCET.2009.12
some experiments are implemented. There are several steps
as follows: detecting body motion, extracting human
silhouette with background subtraction, labeling with
rectangle, as shown in Fig. 1, finding the data of length (l),
width (w) and center coordinates (x, y) of the rectangle. By
formula, the areas of rectangles are calculated, and then
motion cycles are analyzed in order to induce the expressions
of walking function.

Figure 2. The data and fitting curves on the


proportion of step length to stature

The fitting curve of 90°video:

2π π
f = 0.15 ⋅ sin( ⋅ (t − − 0.06)) + 0.38 (2)
0.7 2
(a) 90°video
The fitting curve of 45°video:


f = 0.04 ⋅ sin( ⋅ (t − 0.325)) ⋅ exp(0.5 ⋅ t ) + 0.36 (3)
0.68

B. The Relationship between Human Silhouette and


Time
In video surveillance, due to the restrictions of recorders
and algorithm, the exact silhouette of human is not extracted
directly and immediately. As a result, the areas (s) of
rectangles on human silhouette are computed by Eq. 4, and
(b) 45°video are utilized to represent equivalently. On the basis of data
extracted, the proportions (g) of areas of rectangles between
Figure 1. The walking videos of 90°and 45° adjacent frames in video images are found by Eq. 5, as
shown in Fig. 3.
A. The Relationship between the Proportion of Step
Length to Stature and Time s(i ) = l (i ) ⋅ h(i ),1 ≤ i ≤ tn , (4)
By physical characters of human, the proportion of
walking racer’s step length to stature in competition is
si +1
between 0.6 and 0.7 [13], by means of statistical data of g (i ) = ,1 ≤ i ≤ tn − 1, (5)
videos, it concludes that the proportion of step length and si
stature is between 0.5 and 0.6. The proportions (f) of step where tn is time of video.
length to stature are calculated by Eq. 1. The data are fitted by means of the proportion of areas of
rectangles to time, as shown in Fig. 3, and the expressions
w(i ) were induced as follows:
f (i ) = ,1 ≤ i ≤ tn , (1) The fitting curve of 90°video:
l (i )

g=0. 35 ⋅ si n( ⋅ (t − 1.4)) + 1.02 (6)
where tn is time of video. 0.7
The discrete data are represented and fitted with time (t), The fitting curve of 45°video:
as shown in Fig. 2. Therefore, the expressions of the 2π
proportions of step length to stature in videos of 90° and 45° g = 0.25 ⋅ sin( ⋅ (t − 0.78)) − 0.17 ⋅ exp(−0.628 ⋅ x) + 1.1 (7)
0.68
are induced, as shown in Eq. 2 and 3.

61
Figure 3. The data and fitting curve on the proportion of the Figure 4. The data and fitting curves on the
rectangle areas for the adjacent frames distance of adjacent rectangle centers

C. The Relationship between the Coordinates of Human IV. EXPERIMENTAL RESULTS


Centroid and Time
The experimental results above conclude three arrays of
In mechanism motion, human centroid is used to describe expressions on walking function in 90° and 45° videos, as
physical parameters of body motion, as its consequence, a shown in Table 1.
method [14] to calculate the centroid is presented and With the experiments on testing set, the relative errors of
applied to the representation of silhouette characters [10]. In main parameters of walking functions, such as period (T),
video surveillance, because of the recording angles and so amplitude (A), phase (P), and offset (B, C, D), were less than
on, it is not easy to calculate the centroid by extracting data. 10%, so the expressions were proved to be valid.
Consequently, the center of rectangle is used to replace the The expressions and results above prove that human
centroids equivalently. In addition, by means of extracting actions, angles, periods and velocity are determined by
data, Euler distance is used as follow: variation of the relevant parameters.
V. CONCLUSION
d = ( x − x0 ) 2 + ( y − y0 ) 2 (8)
The identification of body motion is one of main and
latest orientation on study. Based on the laws of mechanism
where (x0, y0) is an initial pixel of video to represent the motion, the characteristic data of human walking are
distance of body motion. The data are extracted, as shown in extracted from videos. These data are fitted by the characters
Fig. 4. of video surveillance to find the expressions of walking
By means of the relationship between distance (d) and function. Meanwhile, the validity of expressions is proved by
time (t), the data were fitted, as shown in Fig. 4. As a result, experimental results. The expressions of human walking
the expressions were induced, as shown in Eq. 9 and 10. derived from the experiments are with the characters of high
The fitting curve of 90°video: efficiency in computation. Consequently, it will be applied to
video surveillance in order to detect and affirm abnormal
d = 77.38 ⋅ t + 1.354 (9) actions.
On basis of the experiments, the functions of human
The fitting curve of 45°video: walking are studied at large. In contrast, other simply ways
of actions, such as running, jumping, and complex ones
which consist of many simply ones, remain to be studied and
d = 74.48 ⋅ t − 7.224 (10) presented further.

TABLE I. THE EXPRESSIONS OF WALKING FUNCTIONS

Video Type The Fitting Curves of 90°Video The Fitting Curves of 45°Video
2π 2π
f f = A1 ⋅ sin( ⋅ (t − P1 )) + B1 f = A1' ⋅ sin( '
⋅ (t − P1' )) ⋅ exp( B1' ⋅ t ) + C1'
T T
2π 2π
g g=A2 ⋅ si n( ⋅ (t − P2 )) + B2 g = A2' ⋅ sin( '
⋅ (t − P2' )) + B2' ⋅ exp(C2' ⋅ x) + D2'
T T
d d = A3 ⋅ t + B3 d = A3' ⋅ t + B3'

62
ACKNOWLEDGMENT [6] Brand M. Understanding manipulation in video. In Proc Int Conf
Autom Face Gest Recogn, 1996, pp. 94-99.
The research was supported in part by the Ministry of [7] Brand M, Oliver N, Pentland A. Coupled hidden markov models for
Education of the People’s Republic of China and Research complex action recognition. In Proc IEEE Comput Soc Conf Comput
Project (Guangdong Province. No. 2006D90704017). The Vision Pattern Recognit, 1997, pp. 994-999.
authors would also like to thank the anonymous reviewers [8] Oliver N M, Rosario B, Pentland A P. Bayesian computer vision
for their valuable comments that resulted in an improved system for modeling human interactions. IEEE Trans Pattern Anal
manuscript. Mach Intell, vol. 22, no. 8, pp. 831 – 843, Aug. 2000.
[9] Kitani K M, Sato Y, Sugimoto A. Deleted interpolation using a
REFERENCES hierarchical Bayesian grammar network for recognizing human
activity. In Proc IEEE workshop on VS PETS, 2005, pp. 239-246.
[10] WANG Liang, HU Wei-Ming, TAN Tie-Niu. Gait-Based Human
[1] WANG Liang, HU Wei-Ming, TAN Tie-Niu. A Survey of Visual Identification. Chinese Journal of Computers, vol. 26, no. 3, pp. 353-
Analysis of Human Motion. Chinese Journal of Computers, vol. 25, 360, Mar. 2003.
no. 3, pp. 225-237, Mar. 2002.
[11] Weiming Hu, Tieniu Tan, Liang Wang, Steve Maybank. A Survey on
[2] DU You-tian, CHEN Feng, XU Wen-li, Li Yong-bin. A Survey on Visual Surveillance of Object Motion and Behaviors. IEEE Trans
the Vision-Based Human Motion Recognition. Chinese Journal of Syst Man Cybern Pt C Appl Rev, vol. 34, no. 3, pp. 334-352, Aug.
Electronics, vol. 35, no. 1, pp. 84-90, Jan. 2007. 2004.
[3] Murase H, Sakai R. Moving object recognition in eigenspace [12] YE Long, FU Jie, ZHANG Qin, LIU Jian-bo, WANG Hui. Gait
representation: gait analysis and lip reading. Pattern Recognit Lett, Tracking Based on Motion Functional Modeling. Journal of
vol. 17, no. 2, pp. 155-162, Feb. 1996. Communication University of China (Science and Technology), vol.
[4] Shutler J, Nixon M, Harris C. Statistical gait recognition via temporal 14, no. 3, pp. 13-16, Sept. 2007.
moments. In Proc IEEE Southwest Symposium on Image Analysis [13] XIONG Xi-Bei, YAO Guo-Qiang, XU Shu-Kui. Basic Text of Track
and Interpretation, 2000, pp. 291-295. and Field. Beijing Sport University Press, Beijing, 1997.
[5] Johnson A, Bobick A. A multi-view method for gait recognition using [14] FAN Yi-fang, ZOU Liang-chou, YUAN Zhi-run. Research on the
static body parameters. In Proc International Conference on Audio- Locating of Image Centroid of Human Body Movements——Locating
and Video-based Biometric Person Authentication, 2001, pp. 301- the Human Body Centroid. Journal of Guangzhou Institute of
311. Physical Education, vol. 24, no. 3, pp. 35-37, 2004.

63
2009 International Conference on Computer Engineering and Technology

Preprocessing and Feature Preparation in Chinese Web Page Classification

Weitong Huang Luxiong Xu


Department of Computer Science and Technology Fujian Normal University, Fuqing Brunch
Tsinghua University Fuqing, Fujian,China
Beijing,China,100084 xlx@fjnu.edu.cn
huangwt@tsinghua.edu.cn

Yanmin Liu
Department of Computer Technology and Applications
Qinghai University
Xining, Qinghai,810016
lyanmin@qhu.edu.cn

Abstract—A detailed design and implementation of a Chinese Chinese word segmentation, stopword removal, stemming,
web-page classification system is described in this paper, and and vocabulary selection.
some methods on Chinese web-page preprocessing and feature
preparation are proposed. Experimental results on a Chinese
web-page dataset show that methoss we designed can improve
the performance from 75.82% to 81.88%.

Keywords- Text classification, Chinese web-page


preprocessing, Feature preparation

I. INTRODUCTION
With the rapid development of Internet, the amount of
web-pages has been increasing dramatically. While
providing all-embracing information, the large collections of
web-pages bring people great challenge: how to find what
they need. In order to organize and utilize information
effectively, people hope to classify web-pages according to
their contents. Web-page classification is widely applied in
the field of vertical search, personalized search, etc. Web- Figure 1. A Chinese Web-page Classification System
page classification has been a hotspot in the research domain
of text mining and web mining. In this paper, we will
introduce a Chinese web-page classification system we 1) HTML Parsing
implemented. The system design and our proposed methods The purpose of HTML Parsing is to remove html code
will be described in section 2. In Section 3, the experimental that is irrelevant and extract text. We save the parsing result
results on a Chinese web-page dataset are shown as well as as files of XML format for further preprocessing and feature
some discussions. Finally, we conclude our work in Section extracting. The procedure of HTML Parsing is as follows:
4. Firstly, remove html source code embedded in tags such
as “style”, “script”, and “applet”. Reserve the attributes of
II. SYSTEM DESIGN AND IMPLEMENTATION
“meta” and “a” and discard attributes of other tags. The
A. System Architecture reason is that the attributes of tags is not much helpful to
classification task except those of “meta” and “a”.
There are three parts in our Chinese web-page Secondly, we add user-defined tags for text in a web-
classification system: web-page preprocessing, feature page, because no special tags are prepared for text in
preparation, and web-page classification. The system standard HTML. The rule is: the “plain text”, i.e. the non-
architecture is illustrated in Figure 1. hyperlink text is identified by “text” tag, while the hyperlink
B. Web-page Preprocessing text is identified by “anchor” tag. Following the above rule,
a HTML web-page can be represented as a HTML tag tree,
In the whole data mining task, 60% of the work is data
whose leaf nodes are plain text identified by “text” tag or
preprocessing. There are six procedures in web-page
hyperlink text identified by “anchor”.
preprocessing: HTML parsing, English lexical analysis,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 64


DOI 10.1109/ICCET.2009.72
Usually the page layout is controlled by “table” tag, <body> part includes two types of text. One is plain text
while the tables along the two sides, the top and the bottom which is content related, and the other is hyperlink text.
are often noises such as navigation bar and ads. Once there Assigning different weight to different parts can improve
is a HTML tag tree described above, some algorithms [1] the quality of classification. Our experiments are in section
[2] can be applied to remove noises and extract content text. 3.2.
In this paper, we adopt a more simple and effective method
D. Feature Selection
to remove noises. Through experiments (see section 3.2), we
discover that in a content page (not a hub page), the One difficulty in text classification is the high dimension
hyperlink text is usually used for navigation or of feature space. The task of “feature selection” is to remove
advertisement. So it is effective to remove noises to only less important words from the feature space. Many feature
discard hyperlink text. selection methods have been studied, for example,
2) English Lexical Analysis and Chinese Word document frequency (DF), information gain (IG), mutual
Segmentation information (MI), and x'-test (CHI). [3][4] compared the
In English lexical analysis, spaces are usually used for above four methods. The result shows that IG and CHI gain
separators, while there are no separators between words in the best performance; DF has comparable performance with
Chinese text. Therefore, Chinese lexical analysis is a IG and CHI, and it has the advantage of simplicity and low
prerequisite to Chinese information processing. As we computation complexity; MI is the worst.
know, there are two open source Chinese word We adopt document frequency selection in our system. The
segmentation projects. One is ChineseSegmenter [5] which assumption of this method is: the features (words) with low
works with a version of the maximal matching algorithm. document frequency have small influence on the
classification accuracy.
When looking for words, it attempts to match the longest
We use the revised formula below to compute the
word possible. This simple algorithm is surprisingly
effective. Institute of Computing Technology in China document frequency of word wt .
developed a Chinese lexical analysis system ICTCLAS [6] freq ( wt , Ci )
using an approach based on multi-layer HMM. freq( wt ) = ∑
Ci ∈C num(Ci )
ICTCLAS includes word segmentation, Part-Of-
Speech tagging and unknown words recognition. freq ( wt , Ci ) is the document frequency of wt in
Because of ICTCLAS’s higher precision, we adopt it as the class Ci ; num(Ci ) is the number of documents in class Ci .
Chinese word segmentation module in our classification
system.
3) Stopword Removal and Stemming E. Classifier
Words with high frequency are not only helpless to 1) Naïve Bayes Classifier
distinguish documents but also increase the dimension of The Naïve Bayes Classifier is a simple but effective text
feature space. Such words are called stopword. We maintain classification algorithm. It performs very well in practice
a stopword list containing 580 English words and 637 with high accuracy. Given a document and a classifier, we
Chinese words, which is used for stopword removal. In determine the probability P (c j | d i ) that the document
English, many words have variations. Using stemming [7],
words having the same stem can be considered as to be belongs in class c j by Bayes’ rule and the naïve Bayes
equal. assumption:
4) Vocabulary Selection |d i |
A sentence in natural language is made up of words of P(c j | di ) ∝ P(c j ) P(di | c j ) ∝ P(c j )∏ P( wdi ,k | c j )
different parts of speech, such as nouns, pronouns, articles, k =1
verbs, adjectives, adverbs, prepositions, and conjunctions.
Among them, nouns and verbs express more semantic P (c j ) indicates the document frequency of class c j
meaning. So it is a feasible way to choose only nouns and relative to all other classes; P ( wt | c j ) indicates the
verbs as feature words in order to reduce feature space,
remove noises and improve classification quality. We use frequency that the classifier expects word wt to occur in
ICTCLAS[6] to extract nouns and verbs from a sentence,
and the experiments are in section 3.3.
documents in class c j ; wdi ,k denotes the k th word in

C. Feature Extraction and Weighting document di .


HTML web-pages are semi-structured text. A web-page 1 + ∑ d ∈D N ( wt , di ) P(c j | di )
consists of two parts: <head> part and <body> part. The P( wt | c j ) = i

| V | + ∑ s =1 ∑ d ∈D N ( ws , di ) P(c j | di )
|V |
former includes “meta” and “title” which are the summary
i
description of the whole page, and the latter is the actual
content text that we can see visually. The content text in the

65
V is the vocabulary; D is the set of training Section 2.2.1 has defined plain text, i.e. the non-
hyperlink text in web-pages, which are always correlated
documents; N ( wt , d i ) is the count of the number of times with the topic of the web-pages and contain few noises. We
word wt occurs in document di ; P (c j | d i ) ∈ {0,1} extract only the plain text in every web-page as a feature
extraction scheme, and compare it with the one extracting the
1 + ∑ d ∈D P(c j | di ) full text. Figure 2 shows the experimental results. When the
P (c j ) = i
amount of feature words varies from 1,000 to 10,000, the
|C |+| D| average Micro-F1 of full-text-scheme is 75.82%, while
| C | is the number of classes. | D | is the number of plain-text-scheme gets to 78.93%. The results shows that the
scheme of extracting only plain text as features can improve
training documents. the classification quality by 3.11%, by effectively removing
2) Evaluation Measure the noises in the web-pages.
We use the standard measures to evaluate the
performance of our classification system, i.e. precision,
recall and F1-measure[8].

III. EXPERIMENTS
A. Chinese Web-page Dataset
We download 6745 Chinese web-pages from
http://www.sohu.com/ as our training set, and 2814 web-
pages from http://www.sina.com.cn/ as our test set. These
web-pages are distributed among 8 categories. Table 1
shows the amount of documents in both training and test set
in each category. We have excuses to choose training set Figure 3. Classification Results of Different Header-Weighting Schemes
and test set from two different sources. Our former work
show that the performance on the dataset from only one data The header of a web-page, which is concise and exact,
source is surprisingly high (usually above 95%), but that is reflects how the page author highly generalized the content
not the real world. We decide to use the test set of a on the web-page. Properly raising the header weight in the
different source to evaluate the effect of training. feature space can improve the classification quality. We
have done an experiment to get the ratio of the header
TABLE I. CHINESE WEB-PAGE DATASET weight to the body text weight: Choose 4,000 feature words
by document frequency method, and compare the different
Category Name Training Set Test Set (from
classification quality when the ratio of the header weight to
(from sohu) sina)
Auto 841 351 the body text weight varies from 2:1 to 10:1.
Business 630 263 C. Vocabulary Selection
Entertainment 1254 523
Health 784 327
House 736 307
IT 1050 438
Sports 841 351
Women 609 254
Sum 6745 2814
B. Feature Extraction and Weight Distribution

Figure 4. Classification Results using vocabularies of different parts of


speech

The results, illustrated in figure 3, shows Micro-F1 is


79.75% when header and body text share the same weight,
and Micro-F1 rises up as the header weight is raised until
gets to a maximum when the ratio of the header weight to
the body text weight is 5:1. Therefore, we let the ratio of the
Figure 2. Classification Results of Different Feature Extraction Schemes header weight to the body text weight to be 5:1. Figure 2

66
shows the experimental results of feature extraction after We are satisfied with our improvement, because many cases
raising the header weight. The figure shows the average cannot be assigned to only one category absolutely. For
Micro-F1 goes up from 78.93% to 82.00% thanks to example, web-pages about women’s health information can
increasing the header weight. be classified into the category “Health” as well as the
We do the research on different candidate vocabularies category “Women”, but this is the real world.
including all words, nouns and verbs. The results are
illustrated in figure 4. The classification result of using only IV. CONCLUSION
nouns and verbs is clearly better than that of using all In this paper, a series of web-page preprocessing and
words, which means nouns and verbs are enough to reflect feature preparation methods are proposed. Through
the content of a web-page and can eliminate the noises experiments, we give the following conclusions: extracting
caused by pronouns, adjectives, quantifiers, adverbs, and only “plain text” can eliminate noises in web-pages
consequently improve the classification quality. effectively; both raising the header weight and choosing
D. Final Experimental Results only nouns and verbs as candidate features can improve the
classification quality. On our Chinese web-page dataset, the
Considering the experimental results comparisons and proposed methods improve the measurement Micro-F1
analysis mentioned above, we set down a final web-pages greatly, from 75.82% to 81.88%, compared to full-text
classification scheme: extract the plain text in web-pages, method. In the future, we will enrich our Chinese web-page
raise the ratio of the header weight to the body text weight dataset and do experiments on larger and more datasets.
to 5:1, choose nouns and verbs as features, select 4,000
feature words using document frequency method, and use
Naïve Bayes classifier to train and test the Chinese web- REFERENCES
page dataset. The precision and recall of each category is [1] Lawrence Kai Shih and David R. Karger. Using URLs and Table
illustrated in Table 2. Micro-F1 is 81.88% when we use the Layout for Web Classification Tasks. In Proceedings of WWW’04,
preprocessing and feature preparation methods mentioned New York, New York, USA, 2004
above. In comparison, Micro-F1 is only 75.82%, showed in [2] Chengjie Sun, Yi Guan. A Statistical Approach for Content
Extraction from Web Page. Journal of Chinese Information
figure 2, if we extract the full text and don’t use special Processing, 2004, 18(5): 17~22.
feature preparation methods. [3] Yiming Yang, and Jan O. Pedersen. A Comparative Study on Feature
Selection in Text Categorization. In Proceedings of ICML, Nashville,
TABLE II. CLASSIFICATION RESULTS OF EACH CATEGORY Tennessee, USA, 1997
Category Name Precision Recall [4] Songwei Shan, Shicong Feng, and Xiaoming Li. A Comparative
Auto 87.69% 83.19% Study on Several Typical Feature Selection Methods for Chinese
Business 87.72% 76.05% Web Page Categorization. Computer Engineering and Applications,
2003, 39(22): 146~148.
Entertainment 85.89% 95.41%
Health 64.39% 69.11% [5] Chinese Segmenter:
House 84.56% 82.08% http://www.mandarintools.com/segmenter.html
IT 70.54% 90.18% [6] ICTCLAS:
Sports 97.90% 92.88% http://www.nlp.org.cn/project/project.php?proj_id=6
Women 87.69% 44.88% [7] Porter Stemming Algorithm:
Micro-F1 81.88% http://www.tartarus.org/martin/PorterStemmer/
[8] C.J.van Rijsbergen. Information Retrieval. Butterworth, London,
1979, 173~176

67
2009 International Conference on Computer Engineering and Technology

HIGH PERFORMANCE GRID COMPUTING AND SECURITY THROUGH


LOAD BALANCING

V.Prasanna Venkatesh V.Sugavanan


Final year Final year
Department Of Information Technology Department Of Information Technology
St.Joseph’s College Of Engineering, St.Joseph’s College Of Engineering
Chennai, India Chennai, India
E-mail: vprasanna.1310@gmail.com E-mail: sugavanan.v@gmail.com

Abstract Introduction

It has always been a great deal to balance The topic chosen here for discussion,
both security and performance. But here elaborates on the basic concepts of grid
we have presented a scenario in which a computing and load balancing and their
local scheduler of a networked system can advantages, and advocates the
schedule its jobs on and across other development of a new technique, a
systems in the network securely. There by technique which doesn’t try to eliminate
creating an environment in which no the short comings of either of the
system is idle when even two systems are concepts, but involves the combination of
communicating. This clubs both the advantages of both of these concepts,
distributed computing and load sharing. and try to throw light on the tremendous
Thus high performance is assured. potential that this technique possesses for
When we look onto the other side of the providing high performance output in the
coin of such networked systems, security distributed network, along with
concerns arise. These issues are handled enhancement in resource utilization and
by employing new level of managerial optimization.
systems called Authenticated Distribution The discussion proceeds by explaining
Managers (ADMs) for managing the co- about a grid system and discusses the load
operating systems. ADM does the work of sharing ideas of the grid, and emphasize
job division and integration based on the on its advantage of high resource
security implications of its Authenticator. utilization.
Any system can select any other system as The section following the discussion about
an ADM and transfer its security policies grid computing explains about the
to it. Thus the security is not compromised advanced methods of load balancing,
even if there is load distribution across which provides various security
various systems. Thus we have presented implementations and protocols that
an overview of a high performance provide highly secure operations.
network without security being The new technique that we discuss later
compromised. on, combines these two advantages, that is,
Keywords: it detects a new opening in the security
Security, High Performance, Load implementations of load balancing by
sharing, balancing, Authenticated distributing them through a grid system,
Distribution Managers (ADM), job which allows faster implementation of
division, Security Authentication.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 68


DOI 10.1109/ICCET.2009.77
these security measures and in an efficient explored as much as the other areas of
manner. distributed systems. The obvious
Thus, in our new technique, we try to drawback of such kinds of new systems
implement security in grid computing by would be the security implementations.
using the advanced security provided by For this reason, we look for systems that
load balancing systems in a grid system have well established security
for producing high performance, high implementations that can be performed
resource utilization and high-speed faster through a grid system.
systems.

Grid computing:

A grid is defined as a group of nodes that


are connected to each other through a
number of connecting paths for JAVA C PYTHON
CLIENT CLIENT CLIENT,etc
communication. Grid computing allows a
cluster of loosely coupled computers to
perform large tasks or tasks that generally
consume more resources and time than is
feasible for a single system. This is a type
of parallel computing technology in which
the computers involved, called “nodes”,
are almost completely independent of each
MANAGEMENT INTERFACE
other in terms of resources, timing and
synchronization aspects. These nodes are
more heterogeneous than those present in Security,
other distributed systems. The nodes authentication and
involved in the process are voluntary, and other protocol
implementation
the interaction and mediation between the
nodes of the grid are performed through a
JAVA C PYTHON
management interface. All transactions in SERVICE SERVICE SERVICE,etc
the grid are performed through the
management interface.
Advantage:
A grid computing system as discussed
above provides sharing of a task that a
single node is unable to perform. Hence, it
utilizes its available resources to provide Load Balancing:
enhanced performance. this is the main
feature of grid computing, that is, high Load balancing is the process in which the
performance through enhanced resource entire workload on a system can be
utilization. distributed among the nodes of a network
so that resource utilization and time
Disadvantage: management can be enhanced in the
Grid computing is a new concept and the network.
implications in this field have not been

69
This technique is very useful in providing Advantage:
optimization of the resources of the The notable feature of the load balancing
network, where in, the server manages the concept, from the above discussion, is the
distribution of the workload among the highly advanced security implementations
nodes of the network. The server that through various security and
performs this task is called the “Load authentication protocols.
Balancer”. This feature can as well be combined with
The main features of a load balancer are: the grid concept to enhance its security
implementations.
Security:
The load balancer provides security of Disadvantage:
data that needs to be shared between The drawback of this concept lies in the
systems at the time of load balancing. fact that implementation of so many
These security aspects involve the security features on each and every node
implementation of available security in a grid system results in enormous time
protocols like: consumption. This will ultimately cause
the main feature of grid systems to suffer
1. The SSL (Secure Socket attrition, namely, higher performance by
Layer) protocol for providing faster outputs.
TLS(Transport Layer It is thus unfeasible to implement the
Security) , security of a load balancing system to each
2. Protection against DDoS and every node of the grid system every
(Distributed Denial of Service) and time two or more nodes are
3. Security through firewalls. communicating.
The approach discussed below provides a
Authentication: simple, feasible solution to the above
Authentication is required in load situation and aims at solving it by
balancing when the load is distributed to combining the above two concepts into a
many nodes in the network. It is necessary single system.
that each of the client systems are
authenticated nodes of the network so that Approach:
data transfer can be performed.
Thus, authentication of the client To attain this goal, we primarily explore
systems is an important aspect of the the inherent parallelism principles of most
discussion. complex problems, through the prism of
their immanent natural distributed
Reliability: parallelism, and to find effective and
Load balancing techniques provide efficient methods of implementation of
reliability through redundancy, which is security aspects required for the
indispensable in any network that distributed environment to provide
implements high security. reliability to the entire network.
Redundancy is required also for We now implement the usage of the
authentication services and in the security aspects of a load balancing
implementation of the basic feature of system, by integrating them in a set of
distributed systems, namely, parallelism. loosely coupled system in a grid. This is
performed by using the concept of

70
distribution of security implementation A primary node designates the
throughout a grid, where, every node has Authenticated Distribution Manager. The
access to the grid only after authentication ADM can be chosen from a set of idle
have been performed by the respective systems present in the grid. Once the
management agent. primary node obtains its ADM, it hands
Hence, in a grid system, since every node over its security systems and protocol
is authenticated, it is possible to distribute implementations to the ADM. The ADM
the security aspects of one node in the then identifies other idle nodes in the grid
system by implementing them through and distributes to each of these nodes, the
other nodes in the grid, whose states are load of security implementation for the
monitored by a specially designated Primary node.
system in the grid. In this way, the load of security
Such a system in the grid is called the implementation for one node in a grid can
Authenticated Distribution Manager be balanced between all the idle nodes
(ADM). present in the grid, thus reducing the time
requirements for the security
implementation and also providing
optimization of resources in the grid.
Communicating
system

ADM
Primary node
Distribution of
security
implementation of
primary
node, by ADM.
Idle nodes in the grid

Role of the ADM: Advantages:

In a grid system, when a node is in The advantages of this new technique are
communication with a system, which may listed as follows:
or may not be part of the grid, it needs to 1. High security to grid systems.
implement its security standards and 2. High performance to grid systems
protocols. This node, which requires through faster security
security implementation, is called the “ implementations.
Primary node ”. 3. Improved efficiency in grid
computing.

71
4. Utilizing resources of a grid system
for security implementation.
5. Improved resource optimization by
utilizing idle nodes in a grid.
Key References :
Scope for future research:
1. Asser.N.Tantawi, Don Towsley,
The possibility of certain drawbacks in the Optimal static load balancing in
new approach discussed can be in the distributed computer systems, in
implementation of distribution algorithms the Journal of ACM, Volume 32,
in the ADM. issue 2, pages 445-465.
Constraints may occur in situations where 2. Parvin Asadzadeh, Rajkumar
none of the nodes in the grid system might Buyya, Chun Ling Kei, Deepa
be idle. In such situations, it might be Nayar, and Srikumar Venugopal,
necessary to maintain at least one node Global Grids and Software
called the “master node”, that will Toolkits, Technical Report,
pretend to be always idle in a grid, and GRIDS-TR-2004-5, Grid
perform only the functions of the ADM. Computing and Distributed
Any further possibilities in the above- Systems Laboratory, University of
discussed technique, is available for Melbourne, Australia, July 1, 2004.
research and further areas are to be
explored in future.

Conclusion and future vision:

Thus, we enable the implementation of


high performance in the grid system by
balancing the load of security
implementation, thereby reducing the time
requirement for a task in the grid, and also
implement the security of the grid system,
using load balancing between the idle
nodes of the grid. This in turn allows
resource optimization.
The idea discussed above allows
integration of the two major futuristic and
fast developing techniques used in
distributed environments, namely, grid
computing and load balancing, that
perform nullification of each others’
drawbacks by implementing one technique
within another’s domain, that not only
integrates their advantages, but also
provides tremendous scope for
development of security as well as
performance of any distributed system.

72
2009 International Conference on Computer Engineering and Technology

Research of The Synthesis Control of Force and Position in Electro-Hydraulic


Servo System

Yadong Meng, Changchun Li, Hao Yan, Xiaodong Liu


School of Mechanical, Electronic and Control Engineering, Beijing Jiaotong University, Beijing,
100044, China
06116282@bjtu.edu.cn

Abstract control force application accurately. Literature [1]


discusses all kinds of force application system with
The synthesis control of force and position in influence in detail. The other one system is position
electro-hydraulic servo system has been applied to control system with force feedback, The force
some special occasions. Analyzed a typical system feedback signal influence on position control, but the
which adopted this kind of control algorithm , position control is the final task of system, We regulate
Applying unchanged structure theory, the compensated system according the force feedback value to ensure
transfer function has been deduced, the compensated position control[2-4], or to keep the force unchanged [5] ,
state-space model is presented. Considering the In such a system, the force control is auxiliary of the
synthesis control should meet the requirement to force position control.
and position at the same time , introduced the linear
quadratic performance fonctionelle, the optimized 2. System description and modeling
control formula of the synthesis control of force and
position on total state feedback has been deduced . The 2.1. System description
simulation results proved that the compensated state-
space model has more superior performance. Fig.1 shows a typical synthesis control system,
which contained two proportion valves, two symmetry
1. Introduction hydraulic cylinders, an elastic load, a position sensor,
and two pressure sensors. The left side subsystem is
The electro-hydraulic servo system aim at the force force application control system; the right side
control or the position control independently is familiar. subsystem is position control system, an elastic load
In some special occasions, the force control and the between two cylinder rods. The time-position curve of
position control in one system need to be run the right side cylinder rod is given, the time-force
simultaneously, they always disturb each other, but application curve of the left side cylinder rod is given
their performance (given curves) should be met simultaneously, and there is no relation between two
together. This kind of control task has been widely given curves. The value measured by force sensor is
studied in robotic field [6,7], but few works have been the elastic force of spring, the driving force of the left
done in electro-hydraulic servo system. side force application control system is worked out
In some existing electro-hydraulic servo systems, from pressure difference multiplied by efficient area.
we faced with the demand of force control The system parameters as follows: F 0 is the given
accompanied by position control, but we considered it driving force, F1 is the practical driving force, D 0 is
as a special case. For example, The load simulator used the given cylinder rod position, D 1 , D 2 are practical
commonly in aerospace field, it is a typical force position of the two cylinder rods respectively, W 1 1 , W 2 1
application system disturbed by position interference
are input signal amplifiers, W 1 2 , W 2 2 are transfer
signal, the position interference signal is a random
signal uncontrolled, The purpose of each control functions of two amplifiers respectively, W 13 , W 23 are
algorithm applied on this system is to eliminate the transfer functions of two proportion valves
position interference, so, The equivalent input of respectively, W 1 4 is coefficient of force-electro
position interference signal to system is zero. We can transform, W 2 4 is coefficient of position-electro

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 73


DOI 10.1109/ICCET.2009.35
transform, I 1 , I 2 are electric current to two proportion B1V = W13 I 1 (7)
valves respectively, m 1 , m 2 are total mass of two B2V = W23 I 2 (8)
cylinder rods respectively, A 1 , A 2 are efficient area of
I1 = W12 ( F0W11 − F1W14 ) (9)
two cylinders respectively, V 1 , V 2 are overall volume
of pipeline and cylinder of two cylinders respectively, I2 = W22 ( DW
0 21 − D2W24 )
(10)
K 1 B , K 2 B are flow coefficient of two proportion The elastic force of load spring:
valves respectively, K 1 p , K 2 p are flow-pressure Fs = K s ( D1 − D 2 ) (11)
coefficient of two proportion valves respectively,
C 1 t , C 2 t are total leakage coefficient of two cylinders 2.3. The system transfer function
respectively, β e is the bulk elastic module of
hydraulic oil, K s is the elasticity coefficient of spring, The coefficient of feedback W14 and W24 are relative
F s is the elastic force of elastic load. to the operation of system feedback signal , We need to
study system open circuit transfer function at first ,
D0 This two coefficients is set to zero while deducing
W21 system open circuit transfer function .
F0 For the left side force application subsystem , It have
two input and single output , The two input signals are
W11 W22
: The given driving force of the left side cylinder F0 ;
I1
I2 −
The practical position of the right side cylinder D 2 .
W12
W24 The single output signal is: The practical driving force
D1
− of the left side cylinder. For the right side position
control subsystem , It have two input and single output
, The two input signal are : The given cylinder rod
D2 position of the right side system D 0 ; The elastic force
W14
of elastic load Fs . The single output signal is: The
Fig.1 System circuit practical position of right side cylinder rod D 2 .
According to equations (1)(3)(5)(7)(9) , We can
2.2. The system fundamental equations
deduce the transfer function relative to input signal F0
This is a typical synthesis control system, It has two and D 2 , output signal F1 .
input signals: the given driving force and the given F1 ( s ) =
position, two output signals: practical driving force and
⎛ m1 2 ⎞ (12)
practical position. According to the basic working ⎜ s + 1 ⎟ W 1 2W 1 3 K 1 B A1W 11 ⋅ F0 − A12 s ⋅ D 2
theory of electro-hydraulic servo system[1,8], The load ⎝ Ks ⎠
flow equations of the two proportion valves as follows: m 1V1 3 m 1 ⎛ V ⎞ A2
s + K 1t s 2 + ⎜ 1 + 1 ⎟ s + K 1t
Q 1 L = K 1 B B 1V − K 1 p P1 L (1) 4βeK s Ks ⎝ 4βe K s⎠
Q2 L = K 2 B B2V − K 2 p P2 L (2) Where K 1t = K 1 p + C 1t is total flow-pressure
Where Q1 L , Q 2 L are load flow of two cylinders coefficient of left side force application subsystem.
respectively , B1V , B2V are opening of the two According to equations (2)(4)(6)(8)(10) , We can
deduce the transfer function relative to input signal D 0
proportion valve cores respectively , P1 L , P2 L are load
pressure of the two proportion valves respectively . and Fs , output signal D 2 .
The load flow equations of the two cylinders: D2 (s ) =
V (3) ⎛ V2 ⎞
Q1 L = A1 sD1 + C1t P1 L + 1 sP1 L
4βe ( A2 K 2 BW 23W 22W 21 ) D 0 − ⎜ s + K 2 t ⎟ Fs (13)
⎝ 4βe ⎠
V2 (4)
Q2 L = A2 sD2 + C 2 t P2 L + sP2 L m 2V 2 3 ⎛K V ⎞
4βe s + m 2 K 2 t s 2 + ⎜ s 2 + A22 ⎟ s + K 2 t K s
4βe ⎝ 4βe ⎠
The movement equations of two cylinder rods:
Where K = K + C is the total flow-pressure
m1 s 2 D1 = F1 + K s ( D 2 − D1 ) (5) 2t 2p 2t

coefficient of right side position control subsystem.


m2 s 2 D2 = A2 P2 L + Fs (6)
The transfer function equations (12)(13) do not
The equations relative to feedback and gain: contain the feedback elements, they are open circuit

74
transfer function. The system control block diagram ⎛ V ⎞⎛ 1 ⎞ (15)
can be draw out according to the system foundation T2 = ⎜ 2 s + K 2 t ⎟⎜ ⎟
equations, Fig.2. ⎝ 4βe ⎠⎝ W23 K 2 B ⎠
The system structure has changed after
compensation. The force application control system
3. Construct the compensated state-space changed into a SISO system which input signal is F 0
model and output signal is F1 . The position control system
3.1. Compensated by unchanged structure changed into a SISO system which input signal is D 0
theory and output signal is D 2 . The transfer function
equations (12) (13) change to:
The literature [1] discussed unchanged structure ⎛ ⎞
theory in detail, and the structure compensation has ⎜ W ⋅W W K A ⎟ (16)
F1 = ⎜ 11 12 13 1 B 1 ⎟ ⋅ F0
been done to the electro-hydraulic position control ⎜ V1 ⎟
⎜ s + K 1t ⎟
system and the electro-hydraulic force application ⎝ 4 βe ⎠
system respectively. Applying suitable structure W 21 ⋅ W 22W 23 K 2 B
D2 = ⋅ D0 (17)
compensation can improve the system response speed, A2 s
eliminate strong outer interference. In this design, Two
structure compensation elements have been applied
simultaneously, in order to eliminate the cross 3.2. The compensated state-space model
influence between force application subsystem and
position control subsystem. The blocks connected to The state-space equation is the foundation of
dashed line in Fig.2 are the structure compensation modern control theory. For the multi input and multi
blocks. output system, the state-space model is more suitable.
According to equation (16), set the given driving
m1s − force F 0 = u 1 , the practical driving force F1 = x 1 ,
D2 leads to the following equation:
Ks s s
m1 s 2 + K s m1 s 2 + K s
x1 = a11 x1 + b11u 1 (18)
D1 4 β e K 1t 4 β eW11 ⋅ W12W13 K 1 B A1
A1 Where a 1 1 = − b11 =
V1 V1
W13 K1B A12 According to equation (17), set the given cylinder
B1V
− 1 rod position D 0 = u 2 , the practical cylinder rod
F1
W12 W13 K1B A1 V1
s + K1t position D 2 = x 2 , leads to the following equation:
4βe
F0 x 2 = b22 u 2 (19)
W11
W 2 1W 2 2 W 2 3 K
D0
W21
Fs
1 A2
− Where b 2 2 =
A2
2B

m2 s2 A2
P2L From the equations (18)(19), we can deduce the
⎛ V2 ⎞⎛ 1 ⎞ following state-space equations:
⎜ s + K2t ⎟⎜ ⎟ V2 K
⎝ 4βe ⎠⎝ W23 K2 B ⎠
s + 2t x = Ax + Bu
4β e A2 A2 (20)
− y = Cx
B2V K 2 B D2
W22 W23 1 s Where
A2 ⎡x ⎤ ⎡F ⎤ ⎡a 0⎤ ⎡b 0⎤
x = ⎢ 1⎥ = ⎢ 1 ⎥ , A = ⎢ 11 , B = ⎢ 11 ⎥
Fig.2 Frame chart of the system ⎣ x2 ⎦ ⎣ D2 ⎦ ⎣0 0 ⎥⎦ ⎣ 0 b22 ⎦
The input signal of the compensation element in the ⎡u ⎤ ⎡F ⎤ ⎡1 0⎤
, u = ⎢ ⎥ = ⎢ ⎥ , C=⎢
1 0
force application system is the left side cylinder rod
⎣ u 2 ⎦ ⎣ D0 ⎦ ⎣0 1⎥⎦
velocity D 1 , The compensated transfer function is : The equation (20) is the compensated state-space
A1 (14) model of the synthesis control of force and position
T1 =
W 13 K 1B control system, this model is based on two
The input signal of the compensation element in the compensated elements added in system, the additional
position control system is right side cylinder load compensated elements are relative to the accuracy of
pressure P2 L , The compensated transfer function is : the compensated model.

75
−1
4. Realization of The linear quadratic g ≈ ⎡⎣ P B Q 2− 1 B T − A T ⎤⎦ C T Q1 z (27)
optimized control The state curve on optimized control submits to the
follow equation:
4.1. Application of the linear quadratic x ( t ) = ⎡ A − B Q 2− 1 B T P ⎤ x ( t ) + B Q 2− 1 B T g
⎣ ⎦
(28)
optimized control The optimized control u * ( t ) contained state
The control algorithm which is presented by the variable x ( t ) , This optimized control formula make
linear quadratic optimized control is the function of use of all state information of system , construct the
system state variables, the closed loop optimized closed loop feedback control on base of all state
control by state feedback can be obtained. variable , and this formula is achieved easily in electro-
Because the synthesis control of force and position hydraulic servo system , we can measure the pressure
in electro-hydraulic servo system had two input control in the two sides of cylinder , The driving force of
variables, at the same time, asked two output variables cylinder can be worked out , The other variables can be
meet the requirement, Introduced the performance measured easily .
fonctionelle is convenience. Due to the state variables
change at any moment, we change equation (20) as 5. The simulation of system
follow:
x ( t ) = Ax ( t ) + Bu ( t ) (21) In this design, we adopted physical model
y ( t ) = Cx ( t ) simulation, the simulation parameters as follows: the
given driving force curve is a standard sinusoid, the
The initial condition of the system is:
period is 2s, the amplitude is 10N, the minimum is
x (t0 ) = x0 (22) 45N, the maximum is 55N. The given position curve is
The quadratic optimized control problem as follows : a standard sinusoid too, the period is 1s, the amplitude
Set the demand output is z ( t ) , the output error is is 10mm, the minimum is -5mm, the maximum is
5mm.
e (t ) = z (t ) − y (t ) (23)
The signals of given force and given position are
The performance fonctionelle is standard sinusoid signals, but the periods are different,
1 tf
J = ∫ ⎡⎣ eT ( t ) Q1e ( t ) + u T ( t ) Q2 u ( t ) ⎤⎦ dt (24) the coupling influence is seriously. Keep the other
2 t0 conditions no change, the simulation executed on non
Where Q 1 , Q 2 are positively definite matrixes. compensated model and compensated model.
The explanation are: in time segment ⎡⎣ t 0 , t f ⎤⎦ ,
looking for the optimized control u ( t ) , make the
Practical force (N)
Given force (N)

performance fonctionelle reach minimum value . The


explanation on the synthesis control of force and
position control are: In certain time segment, make the
practical driving force and the practical position accord
with the given driving force and the given position , at
same time , The consumed power should be less as far
as possible .
Time (s)
4.2. The realization of the optimized control Fig.3 The given force and practical force before
compensation
The above optimized control problem belongs to The Fig.3 shows the curves of given driving force
multi tracker problem in the optimized control. The and practical driving force on base of non compensated
real substance is to keep the lesser error, so to reach the model , Fig.4 shows the curves of given driving force
optimized control of consumed power and error. and practical driving force on base of compensated
Solving the equations should introduce Riccati model .The Fig.5 shows the curves of given position
equation, the solution as follow[9] : and practical position on base of non compensated
The optimized control: model, Fig.6 shows the curves of given position and
u * ( t ) = − Q 2− 1 B T P x ( t ) + Q 2− 1 B T g (25) practical position on base of compensated model.
Where P, g are satisfied with the follows equation: Compared the Fig.3 and Fig.4, we can deduce that
the error reduce after model compensation, and the
− PA − AT P + PBQ2−1 BT P − C T Q1C = 0 (26)
error of force application system disturbed by position

76
influence near by the minimum force value is compensated state-space model is a simplified double
restrained. Compared the Fig.5 and Fig.6 , The input and double output system., introduced the linear
practical position curve is more close to given position quadratic performance fonctionelle, the optimized
curve , The speed of system response increase, the control formula of the synthesis control of force and
position error decrease. position on total state feedback have been deduced,
The simulation result indicated, utilized compensated
state-space model, The control performance of system
Practical force (N)

have been improved obviously.


Given force (N)

References
[1] Changnian LIU, Optimization design theory of hydraulic
servo system, Beijing: Metallurgical industry press, 1989, 08,
pp. 229-282.
Time (s)
Fig.4 The given force and practical force after [2] Yongjian FENG, “The Self-adaptation Control Model for
compensation Eliminating Surplus Force Caused by Motion of Loading
System”, MACHINE TOOL & HYDRAULICS, no.4, pp.53-
55, 2002.
Practical position (mm)
Given position (mm)

[3] Xinmin WANG, Weiguo LIU, “ Neural-network Internal


Feedback Control for Electro-hydraulic Servo Loading ”,
ACTA AERONAUTICA ET ASTRONAUTICA SINICA, vol.
28, no. 3, pp. 690-694, 2007.

[4] Liwen WANG, Yuhua LI, “ A Study of Suppress


Strategy for Extra Force on Control Loading Hydraulic Servo
System ” , MACHINE TOOL & HYDRAULICS , vol.36, no.1,
Time (s) pp. 87-89, 2008.
Fig.5 The given position and practical position
[5] Changchun LI, Yadong MENG, Xiao-dong LIU,
before compensation XinZHOU, “Motion Synchronization of Electro-hydraulic
Servo System”, ACTA ARMAMENTII, vol.28, no.6, pp. 765-
768, 2007.
Practical position (mm)
Given position (mm)

[6] Yun ZHANG , Zhi LIU, “ Neural network robotic control


for a reduced order position/force model ” , CONTROL
THEORY & APPLICATIONS , vol. 24, no. 4, pp. 541-545,
2007.

[7] Xianlun WANG, Yuxia CUI, Jing HUANG, “ Intelligent


Force/Position Control of Robotic Manipulators Based on
Fuzzy Logic ”, JOURNAL OF SIMULATION, vol. 19, no.11,
Time (s) pp. 2467-2471, 2007.
Fig.6 The given position and practical position after
compensation [8] Hongren LI, Hydraulic control system, Beijing: National
defence industry press, 1981, 06, pp. 55-67.
6. Conclusion [9] Bao LIU, Modern control theory, Beijing: China machine
press, 2004, 07, pp. 272-292.
The force control circuit and the position control
circuit in one electro-hydraulic servo system are
compensated by unchanged structure theory
simultaneously, established system state-space model
on base of the compensated transfer function, this

77
International Conference
on Computer Engineering and Technology

Session 2
2009 International Conference on Computer Engineering and Technology

Features Selection using Fuzzy ESVDF for Data Dimensionality Reduction

Safaa Zaman and Fakhri Karray


Electrical and Computer Engineering Department
University of Waterloo
Waterloo, Canada
szaman@pami.uwaterloo.ca, karray@pami.uwaterloo.ca

Abstract—This paper introduces a novel algorithm for features filter approaches. The wrapper method [13, 14, 15, 16]
selection based on a Support Vector Decision Function (SVDF) exploits a machine learning algorithm to evaluate the
and Forward Selection (FS) approach with a fuzzy inferencing goodness of features or feature set. It provides better
model. In the new algorithm, Fuzzy Enhancing Support Vector performance in the selection of suitable features since it
Decision Function (Fuzzy ESVDF), features are selected employs a performance of learning algorithm as an
stepwise, one at a time, by using SVDF to evaluate the weight evaluation criterion. The most used wrapper methods are
value of each specified candidate feature, then applying FS Forward Selection (FS), Backward Elimination (BE), and
with the fuzzy inferencing model to rank the feature according Genetic search. In contrast, the filter method does not use
to a set of rules based on a comparison of performance. Using a
any machine learning algorithm to filter out irrelevant and
fast and simple approach, the Fuzzy ESVDF algorithm
produces an efficient features set and, thus, provides an
redundant features; instead, it uses the underlying
effective solution to the dimensionality reduction problem in characteristics of the training data to evaluate the relevance
general. We have examined the feasibility of our approach by of the features or feature set by some independent measures
conducting several experiments using five different datasets. such as distance measures, correlation measures, and
The experimental results indicate that the proposed algorithm consistency measures [17, 18]. The most used techniques in
can deliver a satisfactory performance in terms of classification this area are the Chi-Square measure, information gain, and
accuracy, False Positive Rate (FPR), training time, and testing odds ration. In general, wrapper approaches demand heavy
time. computational resources, but they can achieve better results
than filters due to the fact that they are tuned to the specific
Keywords-Features selection, features ranking, support interaction between an induction algorithm and its training
vector machines, support vector decision function, Sugeno fuzzy data. However, they tend to be much slower than feature
inferencing model. filters because they must repeatedly call induction algorithm
and must be re-run when a different induction algorithm is
I. INTRODUCTION used.
This paper introduces a new features selection and
Dimensionality reduction [11, 12] is an important topic in
ranking method. This method, Fuzzy Enhancing Support
machine learning. Elimination of useless (irrelevant and/or
Vector Decision Function (Fuzzy ESVDF), integrates the
redundant) features enhances the accuracy of the
Support Vector Decision Function (SVDF) and Forward
classification while speeding up the computation. This
Selection (FS) approaches with the fuzzy inferencing model
elimination also simplifies the classification by searching for
to select the best features set as an application input. It is
the subset of features that best classifies the training set, and
simple and fast. Moreover, the Fuzzy ESVDF improves
allows the extraction of perfectly interpretable rules, thus
overall system performance of many applications.
improving the overall performance of the classifier and
overcoming many problems such as the risk of “overfitting.” II. BACKGROUND
Moreover, it helps us to understand the data and reduces the
measurements and storage requirements. This section introduces a brief description of Support
Current dimensionality reduction methods can be Vector Machines (SVMs) and features ranking, FS approach
categorized into two classes: features extraction and features and fuzzy inferencing systems.
selection. Features extraction [4, 5] involves the production A. SVMs and Feature Ranking
of a new set of features from the original features in the data
SVM is a machine learning method that is based on
through the application some mapping. The dominant
statistical learning theories [20]. The SVM classifier
features extraction techniques are Principle Component
computes a hyperplane that separates the training data in two
Analysis (PCA), Linear Discriminant Analysis (LDA). On
different sets corresponding to the desired classes. Since
the other hand, features selection [6, 7, 8, 9, 10] selects the
there are often many hyperplanes that separates the two
“best” subset of the original features. It reduces the number
classes, the SVM classifier picks the hyperplane that
of features and removes irrelevant, redundant, or noisy data.
maximizes the margin. Training SVM is a quadratic
In terms of features selection, several researchers have
proposed identifying important features through wrapper and

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 81


DOI 10.1109/ICCET.2009.36
optimization problem with bound constraints and linear performance results (the classification accuracy and the
equality constraints. training time).

n
C. Fuzzy Inferencing Systems
1 n
max W (α ) = ∑ α i − ∑ αiα j yi y j K ( xi , x j ) (1) A fuzzy inferencing model (also called knowledge based
i =1 2 i =1, J =1 system) is a system that is able to make perceptions and new
n inferences or decisions using its reasoning mechanism, “the
Subject to C ≥ α i ≥ 0, ∑ α i yi = 0 (2) inference engine”, by interpreting the meaning of the new
i =1 coming information to the database within the capabilities of
For testing with a new data z : the existing knowledge base [21]. An inference model
s consists of three basic components:
f = w, φ ( z ) + b = ∑ α tj ytj K ( xtj , z ) + b (3) 1. Database, which is a short term memory that contains
j =1 the current status of the problem, inference states, and
s the history of solutions to date. Therefore, any new
w = ∑ α tj ytiφ ( xtj ) (4) information that is generated from external sources
j =1 (sensors or human interfacing) is stored in the database.
2. Knowledge base, which contains knowledge and
Where α is a lagrange multiplier, x is the input, y is the expertise in the specific domain. Specifically, it contains
output, b is a bias value, K is a kernel function, and C is domain specific facts and heuristics that are useful for
trade off parameter between error and margin. solving problems.
The contribution weight of each feature can be calculated 3. Inference engine, which is the driver program of the
using Support Vector Decision Function (SVDF). This knowledge based system. Depending on the new coming
decision function is a simple weighted sum of the training data to the database, the inference engine operates on the
patterns plus a bias, b , as in (5). The value of F ( X ) knowledge in the knowledge base to solve problems and
arrives to conclusions. This reasoning mechanism also
depends on both the X i and Wi values, where the absolute
involves a fuzzification process that transforms input
value of Wi measures the strength of the classification. If Wi values from crisp numerical values into fuzzy sets, and a
is a large positive/negative value, then the i th feature is one defuzzification process that maps output control values
of the major features for the positive/negative class; from fuzzy sets back to crisp numerical values.
There are various fuzzy inferencing models. The most
otherwise, if it is close to zero, the i th feature does not common ones are the Mamdani fuzzy model, and Sugeno
contribute significantly to the classification. Moreover, if fuzzy model [21]. The output of the first model is a fuzzy set
X i has a positive value, then it belongs to the positive class; that is obtained by aggregating the qualified fuzzy sets using
otherwise, it belongs to the negative class. the min max compositional rule of inference. Defuzzification
n is therefore required on the output in order to produce a crisp
F ( X ) = ∑ Wi X i + b (5) control signal. However, the second model (Sugeno model)
i =1 generates crisp consequence for each rule and then the
B. Forward Selection (FS) Approach overall crisp output is obtained using the weighted average
method. Sugeno model is used by the work of in this paper.
The Forward Selection (FS) approach [19] selects the
most relevant variables (features/attributes) based on III. PROPOSED APPROACH (FUZZY ESVDF)
stepwise addition of variables. In the FS approach, variables
We propose a new features selection approach based on
are progressively incorporated into larger and larger subsets.
SVDF and FS with a fuzzy inferencing model. This
This approach yields nested subsets of variables, but it is not
approach, Fuzzy ESVDF, selects the features in a stepwise
guaranteed to find the optimal solution.
way, one at a time, while evaluating the weight (rank) of
The FS approach starts with the initial variable being
each specified candidate feature by using (4). Through this
selected for the features subset, and then the predictor
process, if the added feature increases the system
variables are added one by one to the features subset.
performance, it will stay in the features subset; otherwise, it
Through this process, if the added variable increases the
will be removed. As shown in Fig. 1, the algorithm starts by
system evaluation criterion, it will stay in the features subset;
picking three features from the features set (S1) with the
otherwise, it will be removed. The process continues until
highest weight values (S1 contains all the features with
either all variables are used up or some stopping criterion is
weight values equal to or greater than one; the weight value
met. The FS approach does not necessarily find the best
is calculated using (4)) and putting them in the features set
combination of variables; however, it results in a
(S2) and then calculates the classification accuracy and
combination that comes close to the optimum solution. In
training time for features set (S2). The feature with the next
our case, the initial variable (feature) is the feature with
highest weight value from the features set (S1) is added to
maximum weight value (the weight is calculated using (4)),
the features set (S2) while calculating their performance
and the system evaluation criterion is the system
metrics. Through this process, two types of comparisons are
made: a local fuzzy comparison and a global fuzzy

82
comparison. The local fuzzy comparison compares the “decrease” with their corresponding membership functions
performance of the features set (S2) with the performance of as shown in Fig. 2. “Increase” refers to the case where the
the previous features set (S2); if the first value is less than percentage of change (accuracy and time calculated by current selected
the second value, the added feature is ignored; otherwise, it features – accuracy and time calculated by previous selected features) in the
is kept in the features set (S2). In the global fuzzy training time and accuracy is slightly positive. This means
comparison, the classification accuracy of the features set that the training time and accuracy slightly increase after a
(S2) is compared with the global accuracy, which is equal to feature is added. “Same” refers to the case where the training
the minimum of two values: the accuracy of all the features time and accuracy remain almost the same. The system has
and the accuracy of the features set (S1). If the classification one output ranging from “0” to “1” where “0” represents a
accuracy of the features set (S2) is equal to or greater than non-important feature, and “1” represents an important
the global accuracy value, the algorithm will stop and the feature in the detection process.
features set (S2) will be the selected features set. The knowledge base is implemented by means of “if-
The local fuzzy comparison is ranked according to a then” rules. Nine rules are needed to describe the system and
fuzzy system that takes two inputs: the percentage of rank each feature as “important” or “non-important,”
increase or decrease in the training time as one input, and the according to the following rules:
percentage of increase or decrease for the accuracy as the 1. If training time decreases and accuracy decreases,
second input. It compares the performance of the features set then the feature is non-important
(S2) with the performance of the previous features set (S2). 2. If training time decreases and accuracy has no
The first and the second input variables (percentage of changes, then the feature is important
change in the training time and in the accuracy) are 3. If training time decreases and accuracy increase, then
represented by three fuzzy sets: “increase,” “same,” and, the feature is important
4. If training time has no changes and accuracy
decreases, then the feature is non-important
[1] Calculate the Global Accuracy
Calculate the accuracy and training time of all (41) features 5. If training time has no changes and accuracy has no
(Accuracy41, Train41), changes, then the feature is important
6. If training time has no changes and accuracy
Calculate the accuracy and training time of the features with
weight >= 1 (Accuracy, Train), increase, then the feature is important
7. If training time increases and accuracy decrease, then
Pick the Global accuracy the feature is non-important
If Accuracy41 >= Accuracy
Global = Accuracy 8. If training time increases and accuracy has no
Else changes, then the feature is non-important
Global = Accuracy41
End if
9. If training time increases and accuracy increases,
then the feature is non-important
[2] Create the features set The global fuzzy comparison compares the classification
Sort the features set(S1)in descending order depend on its
weight values, accuracy of the features set (S2) with the global accuracy.
Pick the first three features as an initial features set (S2), The comparison is ranked according to a fuzzy system that
Calculate the Accuracy and Training time of S2 (Accuracy1, takes only one input variable (percentage of change in the
Train1)
If (Global equal or less than Accuracy1) accuracy). This input variable is represented by three fuzzy
Exit; sets: “increase,” “same,” and “decrease” with their
Else corresponding membership functions, as shown in Fig. 3.
continue_loop= 1,
count_loop = 0; “Increase” refers to the case where the percentage of change
Do while (continue_loop ==1) & (count_loop <= length(S1)) (selected features set accuracy – global accuracy) in the
Add the next feature f(i) from S1 into S2, accuracy is slightly positive. This means that the training
Calculate the accuracy and training time of S2
(Accuracy2,Train2) accuracy slightly increases after a feature is added. “Same”
If (Accuracy2 less than Accuracy1) and (Train2 greater than refers to the case where there is no change in accuracy. The
Train1)
Remove f(i) from S2,
system has one output ranging from “0” to “1” where “0”
count_loop = count_loop + 1; represents a loop to continue, and “1” represents a loop to
Else stop.
Accuracy1 = Accuracy2,
Train1= Train2, The knowledge base is implemented with three “if-then”
count_loop = count_loop + 1; rules. Only three rules are needed to describe the system and
If (Global equal or less than Accuracy1) decide whether or not to add features to the features set (S2):
continue_loop = 0,
End if 1. If accuracy increases, then stop adding feature
End if 2. If accuracy unchanges, then stop adding feature
End while 3. If accuracy decreases, then continue adding feature
End if

[3] The selected features set = S2

Figure 1. The Fuzzy ESVDF Algorithm.

83
In the third dataset, the Hill and Valley Dataset, each
record represents 100 points on a two-dimensional graph.
When plotted in order (from 1 through 100) on the Y co-
ordinate, the points will create either a Hill or a Valley [22].
This dataset contains 1212 samples; of which 612 are hill
samples (50.5 %) and 600 are Valley samples (49.5 %). Each
instance is characterized by 100 real-value attributes.
Input 1: Time The fourth dataset, Wisconsin Breast Cancer (WBC),
describes characteristics of the cell nuclei present in the
image as either benign or malignant [22]. This dataset
contains 699 samples; of which 458 are benign samples
(65.52 %) and 241 are malignant samples (34.48 %). Each
instance is characterized by nine attributes.
The last dataset, KDD Cup 1999 data [23], contains
TCP/IP dump data for a network by simulating a typical U.S.
Air Force LAN to configure and evaluate intrusion detection
Input 2: Accuracy systems. This dataset contains 6000 samples; of which 3000
are normal samples (50 %) and 3000 are attack samples (50
%). Each instance is characterized by 41 attributes.
B. Experimental Settings
Our experiment is divided into two main steps. First, we
apply the proposed algorithm (Fuzzy ESVDF) to select the
appropriate features set for each dataset. Second, we validate
the results by using any classifier type.
Output: Feature Rank In the first step, the proposed algorithms were applied ten
times with training and testing data. Each time, about 40% of
the samples were randomly selected as the testing dataset;
Figure 2. Sugeno Fuzzy Inferencing Model for the Local Comparison
the remaining 60% were used as the training dataset.
NN and SVM classifiers are used to evaluate the proposed
IV. EXPERIMENTS AND RESULTS algorithms in the second step. We carried out five validation
experiments for each different dataset (SPECT Heart
For evaluating the performance of our proposed Dataset, WDBC dataset, Hill and Valley dataset, WBC
approach, we choose five different datasets; four datasets are dataset, and IDS dataset). Each experiment was repeated ten
taken from the UCI Irvine Machine Learning Repository times with a random selection of the training and the testing
[22], and the fifth one is KDD Cup 1999 data [23]. In this data with different ratios, which are ((training %) / (testing
section, we initially describe the content of different datasets %): 50/50, 40/60, 60/40, 30/70, and 70/30).
and the experimental settings. Follow by some experimental
results and discussion.
A. Datasets Description
The Five real datasets are considered; four datasets are
taken from the UCI Irvine Machine Learning Repository
[22], and the fifth one is KDD Cup 1999 data [23]. The
objective is to select a subset for the features using the Fuzzy
ESVDF algorithm, and then to evaluate these selected
features using both Neural Networks (NNs) and Support Input 1: Accuracy
Vector Machines (SVMs).
The first dataset, the SPECT Heart Dataset, describes the
diagnosis of cardiac Single Proton Emission Computed
Tomography (SPECT) images [22]. It contains 267 samples,
of which 55 are normal (20.6 %) and 212 are abnormal (79.4
%). Each instance is characterized by 44 attributes.
The second dataset, Wisconsin Diagnostic Breast Cancer
(WDBC), describes characteristics of the cell nuclei present
in the image as either benign or malignant [22]. This dataset Output: Action
contains 569 samples; of which 357 are benign samples
(62.74 %) and 212 are malignant samples (37.26 %). Each
Figure 3. Sugeno Fuzzy Inferencing Model for the Global Comparison
instance is characterized by 30 real-value attributes.

84
C. Experimental Results TABLE II. COMPARISON OF DIFFERENT DATASETS USING NNS

Fuzzy ESVDF was applied to the different datasets Dataset No. Attributes Acc. FPR
Training Testing
(SPECT Heart Dataset, WDBC dataset, Hill and Valley Time Time
dataset, WBC dataset, and IDS dataset) to select the best SPECT Selected Set (5) 74.14 % 0.082 33.940 0.006
features set for the application. To evaluate our approaches, Heart Complete Set (44) 66.77 % 0.189 325.534 0.030
we used NN and SVM classifiers to classify a record as Selected Set (4) 94.85 % 0.036 38.031 0.012
being either zero or one (binary classification). The results WDBC
Complete Set (30) 94.63 % 0.069 206.144 0.013
of the classifier SVMs for Fuzzy ESVDF for all datasets are
Hill and Selected Set (11) 77.93 % 0.085 105.638 0.019
presented in Table 1. The results of the classifier NNs for
Fuzzy ESVDF for all datasets are presented in Table 2. The Valley CompleteSet(100) 75.84 % 0.270 2488.83 0.047
different datasets are compared with respect to different Selected Set (3) 95.91 % 0.035 43.738 0.016
WBC
performance indicators: number of features, classification Complete Set (9) 95.05 % 0.059 72.475 0.015
accuracy, False Positive Rate (FPR is the frequency with Selected Set (7) 99.64 % 0.003 221.928 0.047
which the application reports malicious activity in error), IDS
Complete Set (41) 99.65 % 0.002 911.680 0.075
training time, and testing time. Table 3 compares execution
times for Fuzzy ESVDF approach for the five different
datasets. For the WDBC dataset, by using SVMs, the classification
accuracy, training time, and testing time based on the
D. Discussion selected features set are very near to the accuracy of the
As shown in Table 1 and Table 2, there is a dramatic system based on the complete features set. However, there is
reduction in the number of features for all datasets after the obvious improvement in FPR, which is reduced from
application of Fuzzy ESVDF. For the SPECT Heart Dataset, 0.128536 to 0.03932, as shown in Table 1. Table 2 shows
the number of features is reduced from 44 to 5 (cut nearly significant improvement in training time for the selected
88.6 %). For the WDBC dataset, the number of features is features. The proposed algorithm reduces the training time
reduced from 30 to 4 (cut nearly 86.7 %). For the Hill and from 206.144 sec to 38.031 sec. However, classification
Valley dataset, the number of features is reduced from 100 to accuracy, FPR, and testing time in both experiments (using
11 (cut nearly 89 %). For the WBC dataset, the number of the four features selected from the Fuzzy ESVDF algorithm,
features is reduced from 9 to 3 (cut nearly 66.67 %). Finally, and using the entire 30 features) are nearly the same.
for the IDS dataset, the number of feature is reduced from 41 For the Hill and Valley dataset, Table 1 shows a
to 7 (cut nearly 82.92 %). significant improvement in classification accuracy, FPR,
For the SPECT Heart Dataset, by using SVMs, the training time, and testing time for the selected 11 features
classification accuracy based on the selected features set is (attributes) from the complete 100 features set. On the other
76.73 %, which is better than the classification accuracy for hand, Table 2 shows that the classification accuracy for both
the complete features set, which is equal 69.43 %. Moreover, features sets (11 selected features and the entire 100 features)
FPR, training time, and testing time are also improved, as are nearly the same. However, there is obvious improvement
shown in Table 1. The NN classifier shows obvious in training time (it is reduced from 2488.825 sec to 105.6376
improvement in training and testing time. The five selected sec), testing time (it is reduced from 0.0186 sec to 0.0128
features from the Fuzzy ESVDF algorithm reduce the sec), and FPR (it is reduced from 0.270454 sec to 0.084815
training time from 325.53 sec to 33.94 sec and the testing sec).
time from 0.03 to 0.0064. The classification accuracy and For the WBC dataset, by using SVMs, the overall system
FPR are also improved, as shown in Table 2. performance is improved based on the selected features set,
as shown in Table 1. On the other hand, Table 2 shows no
significant improvement in classification accuracy, FPR, and
TABLE I. COMPARISON OF DIFFERENT DATASETS USING SVMS testing time between using the selected three features and all
Training Testing nine features. However, the training time is improved (it is
Dataset No. Attributes Acc. FPR reduced from 72.4746 sec to 43.7376) based on the selected
Time Time
SPECT Selected Set (5) 76.73% 0.063 0.33 0.01
features.
Finally, for the IDS dataset, for the SVM classifier,
Heart Complete Set (44) 69.43% 0.134 0.376 0.015
classification accuracy and FPR for the selected seven
Selected Set (4) 96.65% 0.039 0.452 0.00 features does not show significant differences to that of using
WDBC
Complete Set (30) 96.42% 0.129 0.476 0.012 all 41 features. However, there is an obvious improvement in
Hill and Selected Set (11) 69.13% 0.109 23.588 0.088 the training (it is reduced from 5.182 sec to 2.41 sec) and
Valley CompleteSet(100) 66.77% 0.591 42.45 0.152 testing time ( it is reduced from 0.17 sec to 0.054 sec), as
Selected Set (3) 96.75% 0.019 0.678 0.012
shown in Table 1. On the other hand, the NN classifier
WBC shows significant improvement in training and testing time.
Complete Set (9) 94.72% 0.049 0.85 0.016
The seven selected features from the Fuzzy ESVDF
Selected Set (7) 99.61% 0.002 2.41 0.054
IDS algorithm reduce the training time from 911.68 to 221.93 sec
Complete Set (41) 99.70% 0.006 5.182 0.17 and the testing time from 0.075 to 0.047. The classification
and FPR in both experiments are nearly the same.

85
TABLE III. EXECUTION TIME COMPARISON FOR THE DIFFERENT classification process by optimizing the selected features
DATASETS
SVDF and studying the correlation between features through
Dataset
No. of No. of Execution Time the application of the Forward Selection (FS) approach. The
Complete Set Selected Set (sec) fuzzy inferencing model is used to accommodate the
SPECT Heart 44 5 125.093 learning approximation and small differences in decision
WDBC 30 4 87.215 making steps in the FS approach.
Hill and Valley 100 11 3000.025
The proposed approach, Fuzzy ESVDF, applied the
SVDF based on FS with the fuzzy inferening model to select
WBC 9 3 0.725
the most effective features set for an application. The
IDS 41 7 134.792 sec proposed approach (Fuzzy ESVDF) has many advantages
that make it attractive for many features selection
Comparing the different datasets according to execution applications.
time, Table 3 shows that the proposed approach, Fuzzy First, employing a reduced number of features by SVMs
ESVDF, becomes slow when the number of features may be more advantageous than other conventional features
increases to 100 features. As is shown, when the number of selection methods [13, 15, 24, 25]. The advantage becomes
features is around 50 features, the algorithm is reasonably more conspicuous for many applications as our experiments
fast and when this number doubles (to 100 features), show. With SVMs, satisfactory performance could be
execution time increases greatly (more than doubling). Also, obtained much more easily than with other approaches.
in the case of WBC dataset, the number of features is nine Second, evaluating features weights through SVDF and
and when the number of features triples (the case of the studying the correlation between these features through the
WDBC dataset), the execution time more than triples. On the application of the FS algorithm enables the approach to
whole, this amount of time does not depend on the number select efficiently the appropriate features set for the
of features only; but, it depends on how fast SVMs are, classification process.
because the ranking approach depends on the system Third, ESVDF is considered to be a selection features
performance (classification accuracy and training time) that approach regardless of the type of classifier used, making
is calculated by SVMs. Moreover, the SVDF used in this this approach a suitable features selection method for other
approach also depends on SVMs. applications, as we showed through our experiments.
In summary, the experimental results demonstrate the Finally, this approach is simple and efficient and it does
feasibility of the proposed approach. The proposed approach, not require parameters initialization.
Fuzzy ESVDF, for features selection based on SVMs and FS To evaluate the proposed approach, we used SVM and
with the fuzzy inferencing model, gives the best performance NN classifiers with five different datasets (SPECT Heart
in terms of training and testing time while retaining high Dataset, WDBC dataset, Hill and Valley dataset, WBC
classification accuracy regardless of the classifier used. dataset, and IDS dataset). The experimental results
Consequently, the selected features subset is representative demonstrate that our approach can reduce training and
and informative and, thus, can be used to replace the testing time with high classification accuracy. Thus, it
complete features. In addition, this approach is considered to combines good effectiveness with high efficiency. It
be a selection features approach regardless of the type of produces an efficient features subset, so it provides an
classifier used, making this approach a suitable features effective solution to the dimensionality reduction problem in
selection method for many applications. Moreover, the general. On the other hand, the efficiency of Fuzzy ESVDF
proposed algorithm is simple and does not require that many depends on how SVMs are able to classify the dataset, which
parameters be initialized, facilitating the retention or may obstruct the modification and maintenance processes
modification of the system design and allowing this model to and impede the use of this approach in some types of
be used in a real time environment. applications. Moreover, it can not guarantee the optimal
solution in terms of minimizing the number of features to the
V. CONCLUSIONS AND FUTURE WORKS least number, but in all situations, it gives a satisfactory
SVDF is used to rank the input features by giving a features number with excellent performance results.
weight value for each of them; however, by using the Future work will involve planning to investigate the
weights only, as proposed in previous works [14, 16], we are possibility and feasibility of implementing our approach in
unable to specify the appropriate features set for a detection real time applications. We are planning also to improve our
process because selecting features with the highest rank approach and decrease its execution time.
values (weight) can not guarantee that combining these
REFERENCES
features can create the best features set based on the
correlations among candidate features. Moreover, limiting [1] S. Zaman, and F. Karray. Feature Selection for Intrusion Detection
System Based on Support Vector Machine. 6th Annual IEEE
the number of selection features to a specific value (e.g., 6 or Consumer Communications & Networking Conference IEEE CCNC
11 as it is mentioned in the previous works) as an indicator 2009. 10 - 13 January 2009. Unpublished
for highest rank value may affect system performance. Our [2] S. Zaman, and F. Karray. Fuzzy ESVDF approach for Intrusion
new approach overcomes these limitations by proposing a Detection Systems. The IEEE 23rd International Conference on
Fuzzy Enhanced Support Vector Decision Function (Fuzzy Advanced Information Networking and Applications (AINA-09). May
ESVDF). The Fuzzy ESVD approach improves the 26-29, 2009. Unpublished

86
[3] H. Wei and S. Bilings. Feature Subset Selection and Ranking for Data [25] H. Gao, H. Yang, X. Wang. Ant Colony Optimization Based Network
Dimensionality Reduction. IEEE Transaction on Pattern Analysis Intrusion Feature Selection and Detection. The Fourth International
and Machine Intelligence. Page(s): 162-166, January 2007. Conference on Machine Learning and Cybernetics, Guangzhou,
[4] A. Jain, R. Duin, and J. Mao. Statistical Pattern Recognition: A Page(s): 18-21, August 2005.
Review. IEEE Trans. Pattern Analysis and Machine Intelligence, vol.
22, no. 1, Page(s): 4-37, January 2000.
[5] A.R. Webb, Statistical Pattern Recognition, second ed. Wiley, 2002.
[6] W. Krzanowski, Selection of Variables to Preserve Multivariate Data
Structure Using Principal Components, Applied Statististics, vol. 36,
no. 1, Page(s): 22-33, 1987.
[7] P. Mitra, C. Murthy, and S. Pal, “Unsupervised Feature Selection
Using Feature Similarity”. IEEE Trans. Pattern Analysis and
Machine Intelligence, vol. 24, no. 3, Page(s): 301-312, March 2002.
[8] B. Krishnapuram, A. Hartemink, L. Carin, and M. Figueiredo, “A
Bayesian Approach to Joint Feature Selection and Classifier Design.”
IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 26, no.
9, Page(s): 1105-1111, September 2004.
[9] M. Law, M. Figueiredo, and A. Jain. Simultaneous Feature Selection
and Clustering Using Mixture Models”. IEEE Trans. Pattern
Analysis and Machine Intelligence, vol. 26, no. 9, Page(s): 1154-
1166, September 2004.
[10] S. Pal, R. De, and J. Basak, “Unsupervised Feature Evaluation: A
Neuro-Fuzzy Approach.” IEEE Trans. Neural Networks, vol. 11, no.
2, Page(s): 366-376, March 2000.
[11] P. Cunningham. Dimension Reduction. Technical Report. UCD-CSI-
2007-7. August 8th, 2007.
[12] I. Fodor. A Survey of Dimension Reduction Techniques. Technical
Report UCRL-ID-148494, Lawrence Livermore Nat’l Laboratory,
Center for Applied Scientific Computing, June 2002.
[13] Khaja Mohammad Shazzad, Jong Sou Park. Optimization of Intrusion
Detection through Fast Hybrid Feature Selection. The Sixth
International Conference on Parallel and Distributed Computing,
Applications and Technologies, 2005, (PDCAT’05), Page(s): 264 –
267, 05-08 Dec, 2005.
[14] S. Mukkamala and A. Sung. A Framework for Countering Denial of
Service Attacks. 2004 IEEE International Conference on Systems,
Man and Cybernetics, Page(s): 3273 – 3278, 10-13 Oct. 2004.
[15] A. Hofmann,T. Horeis, and B. Sick. Feature Selection for Intrusion
Detection: An Evolutionary Wrapper Approach. 2004 IEEE
International Joint Conference on Neural Networks, Page(s): 1563-
1568, 25-29 July 2004.
[16] Mukkamala, and A.Sung. Detecting Denial of Service Attacks Using
Support Vector MachinesS. The 12th IEEE International Conference
on Fuzzy Systems, 2003, Page(s): 1231 – 1236, 25-28 May 2003.
[17] M. Dash, H. Liu , and H. Motoda. Consistency based feature
selection. Proceedings of the 4th Pacific-Asia Conference on
Knowledge Discovery and Data Mining (PAKDD 2002). Page(s). 98-
109, 2002.
[18] H. Almuallim and T. Dietterich. "Learning Boolean Concepts in the
Presence of Many Irrelevant Features", Artificial Intelligence, vol. 69,
nos. 1-2, Page(s): 279-3051994.
[19] A. Tamilarasan, S. Mukkamala, A. Sung, and K. Yendrapalli. Feature
Ranking and Selection for Intrusion Detection Using Artificial Neural
Networks and Statistical Methods. 2006 International Joint
Conference on Neural Networks (IJCNN’06), Page(s):4754 - 4761,
July 16-21, 2006.
[20] A. Smola. Statistical Learning Theory and Support Vector Machines.
Technical Report, IEEE 2001.
[21] F. Karray, C. Silva, “soft Computing and Intelligent Systems Design:
Theory, Tools and Applications”, first edition, 2004.
[22] http://archive.ics.uci.edu/ml/
[23] http://www.ll.mit.edu/mission/communications/ist/index.html
[24] V. Golovko, L. Vaitsekhovich, P. Kochurko and U. Rubanau.
Dimensionality Reduction and Attack Recognition using Neural
Network Approaches. International Joint Conference on Neural
Networks, 2007, Page(s): 2734-2739, 12-17 Aug. 2007.

87
2009 International Conference on Computer Engineering and Technology

PDC: Propagation Delay Control Strategy for


Restricted Floating Sensor Networks

Liu Xiaodong
College of Information Science and Technology
Ocean University of China, Qingdao, China
liuxiaodong.ouc@gmail.com

Abstract—Restricted Floating Sensor (RFS) proposed by Yunhao III describes our experiment and discusses results we obtain
Liu is an important model in offshore data collection. There is a from experiment. Finally, the conclusion is given in Section
need for highly precise, real-time in many offshore monitoring. IV.
In this paper, we propose a Propagation Delay Control (PDC)
strategy for RFS networks. This strategy can modify the
transmission delay adaptively depending on users together with II. DESIGN OF PDC
the changeful condition of wireless links. The experiment shows In this section, we mainly describe the design of PDC in
our work is succeeding in changing propagation delay by orders. detail. In this paper we assume all nodes transmit data at a
fixed frequency, let p stands for the fixed transferring rate of
Keywords- Bit error rate; Propagation delay; Sensor network
nodes. Throughout this paper, we denote D as the length of
I. INTRODUCTION packet data item and denote H as the length of header.
There are significant interests in analyzing the siltation of The architecture of PDC is shown in Fig. 1 c). Firstly we
the estuary and harbor. For example, H. H. Harbor, the second give the design of the FW Module. Let vij denotes node of the
largest harbor for coal transportation (6.7 million tons per year) network, where i stand for the layer, and j for the sequence
in China, currently suffers from the increasingly severe
problem of silt deposition along its sea route (19 nautical miles number of the same layer. Let V = {vij } .
long). The sea route has always been threatened by the silt Let S (vi0 j0 ) = {vij | vij ∈ V , i = i0 + 1, j ∈ J i0 j0 } denote the
from the shallow sea area. Monitoring sea depth costs this
harbor more than 18 million US dollars per year. In [1], aggregation of all child nodes of vi0 j0 in the RFS network,
Yunhao Liu proposed a Restricted Floating Sensor (RFS)
model. By locating such sensors, the sea depth can be where J i0 j0 contains all the sequence number of these nodes.
estimated efficiently without the help of extra ranging devices. Because of the movement of nodes, S (vi0 j0 ) and J i0 j0 are
To adjust propagation delay on request is required by RFS variables. For each node according to BER , the definition of
networks. For example, the amount of siltaanytion in H. H. the node’s weight for transmission time (weight, for short) is
Harbor is mainly affected by tide and wind blow. The highly
1
variable nature of wind brings more intensive effects. Records given as follows: w(vij ) = (1)
show that strong winds with wind forces of 9 to 10 on the (1 − BER) ( H + D )
Beaufort scale hit H. H. Harbor from Oct. 10th to Oct. 13th in
3
2003. The storm surge brought 970,000 m of silt to the sea w(vij ) is the average number of
It is easy to know that
route, which suddenly decreased the water depth from 9.5m to packets required for successfully transferring D bits data.
5.7m and blocked most of the ships weighing more than 35 Then we give the definition of First Weight as follows:
thousand tons. In this situation, the siltation of the Harbor
changes in a moment. There need a shorter propagation delay Definition 1: to any node vi0 j0 in the RFS network, the
to ensure the safety of the channels. On the other hand, a longer
response interval is necessary to reserve energy in better First Weight (FW) of node vi0 j0 is specified by the maximum
weathers. of FW of it’s child nodes, that is:
In this paper we propose a Propagation Delay Control
strategy (PDC) to control the transmission time. This strategy fw(vi0 j0 ) = max{ fw(vi0 +1, j )} + w(vi0 j0 ) (2)
gets the Waiting Time (WT) by modifying the First Weight j∈J i0 j0
(FW) and the Second Weight (SW) dynamically depending on
orders from users. Our experiment site lies in the east coastal So it is straight forward the first weight of leaf nodes is:
area of Qingdao, as shown in Fig. 1 a). We organize this paper
as follows: in section II, we discuss the PDC strategy. Sections fw(vdepth, j ) = w(vdepth , j ) (3)

This project is funded by the Chinese National High Technology Research


and Development Plan (863 program) under Grant No. 2006AA09Z113, by
Key Project of Chinese National Programs for Fundamental Research and
Development (973 program) under Grant No. 2006CB303000.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 88


DOI 10.1109/ICCET.2009.232
FW
BER model FW

T AT AT
ΔT model SW

d SW SW
model
PDC Strategy

a) Our experiment site b) Topology model for RFS networks c) The architecture of PDC strategy

Figure 1. PDC strategy for RFS networks

Then we design the SW Module. As discussed in the subtree, a message carrying the information of ΔT ( L j ) and
introduction, nodes in RFS network float within a restricted
area. The topology is variable because of the restricted sw(v1, j ) will be passed to nodes of subtree L j . To nodes on
motility. Thus an amended method is needed to deal with the different layers, the following expression is used to work their
variability.Firstly we give a definition which is important in own transmission time:
describing the variability:
Definition 2: to any node vi0 j 0 in the RFS network, let sw(vik ) fw(vik )
at (vik ) = × ΔT ( L j ) + (7)
d (vi0 +1, j , vi0 j0 ) denotes the shortest distance ever detected sw(v1 j ) p
between vi0 +1, j and vi0 j0 . Let d min (vi0 +1, j ) denotes the Theorem 1: the propagation delay of L j is less than T.
distance between vi0 +1, j and it’s nearest parent node. The
Proof: to the root node v1, j , the at (v1, j ) is
Second Weight (SW) of node vi0 j0 is specified by the
fw(v1, j )
summation of w(vi0 j0 ) and the weighted sw(vi0 j0 ) , that is: ΔT ( L j ) + . To any other node in the subtree
p
sw(vi0 j0 ) = tw(vi0 j0 ) + fw(vi0 j0 ) (4) sw(vik ) fw(vik )
L j , at (vik ) is × ΔT ( L j ) + . From
d min (vi0 +1, j ) sw(v1 j ) p
Where tw(vi0 j0 ) = max{ × sw(vi0 +1, j )} . d min (vi0 +1, j )
j∈J i0 j0 d (vi0 +1, j , vi0 j0 ) sw(vi0 j0 ) = max{ × sw(vi0 +1, j )} + max{ fw(vi0 +1, j )}
j∈J i0 j0 d (vi0 +1, j , vi0 j0 ) j∈J i0 j0

It is straight forward that sw(vdepth , j ) = 0 (5)


We have sw(vi ,k ) < sw(vi−1, j ) , where i >1
In the PDC strategy, each node should transmit their SW to
their parent node. And the sink node will finally receive sw(vik )
and i, j , k ∈ J i0 j0 . That <1 is . For
sw(v1, j ) . The transmission time of nodes will be worked out sw(v1 j )
according to the FW and SW.
fw(vi0 j0 ) = max{ fw(vi0 +1, j )} + w(vi0 j0 )
j∈J i0 j0
Finally we give the design of WT unit. Let L1 stand for the
subtree with the root of v1, j . With the limitation of propagation That is fw(vi ,k ) < fw(vi−1,k ) , Then we have

delay (denoted by T ), the sink work out the limit of at (v1, j ) > at (vik ) where i > 1

propagation delay of L j : ΔT ( L j ) = T −
sw(v1 j )
(6) As shown in (6), at (v1, j )  = T +
( fw(v 1, j ) − sw(v1 j ) )
p p
fw(v1, j ) From (4) we know sw(vi0 j0 ) = tw(vi0 j0 ) + fw(vi0 j0 ) ,
The adjust time of v1, j : at (v1, j ) = ΔT ( L j ) +
p d min (vi0 +1, j )
For tw(vi0 j0 ) = max{ × sw(vi0 +1, j )} ≥ 0
It is clearly thatΔT ( L j ) and wt (v1, j ) is affected by j∈J i0 j0 d (vi0 +1, j , vi0 j0 )
many factors, among which T is the most dominating.
We have
After getting the upper limit of propagation delay for each

89
fw(v1, j ) − sw(v1 j ) = fw(v1, j ) − (tw(v1, j ) + fw(v1, j ) ) ≤ 0 60 70

( fw(v ) − sw(v1 j ) )
60
50

) =T + 1, j
≤T
50

Thus we have at (v1, j


40

Requested Response Time

Interval of Packets
40

p 30

30

From (7) we know that at (vik ) is also dominated by T .


20
20

10
10

From theorem 1 we know the adjust time of the root node is the
longest in it’s subtree. This ensures the propagation delay is
0 0
10 30 60 30 10 10 30 60 30 10
Interval of Packets Requested Response Time

within the limitation.


Figure 2. the Adjustability of Response Time on Request
From the introduction we know there are various conditions
leading to changes of the propagation delay. We will discuss
(7) is efficient in these different conditions. TABLE I. CONDITIONS OF WEATHERS

Factors
The propagation delay should be shorten when storm Conditions
wind scale wave height(m)
comes, that is t < T . one 1-2 0.5

From (6) we know ΔT ′( L j ) < ΔT ( L j ) . two 8-9 3

From (7) we know the transmission time of each node can it is vital for RFS nodes to minimize energy consumption
fw(vik ) during radio communication to extend the lifetime of the
be shortened by × (ΔT ( L j ) − ΔT ′( L j )) network. So we will evaluate the performance of PDC. Here
fw(v1 j ) we compare PDC with other transmission time control
mechanisms and discuss their effect on efficient transmission
In this case, under the time-sensitive requirement, all nodes and energy saving. Because the condition of channel between
just transfer data gathered within the limitation of delay in nodes is variable in different weathers, we compare the
stead of waiting for every child node. In the same way we can performance PDC in terms of different wind scale and wave
change the propagation delay back to normal to decrease the height. These conditions are shown in table I.
energy consumption when the storm is over.
Fig. 9 displays the adaptability to the change of propagation
From the discussion we know (7) is suitable for all these delay. These three figures are in different weather conditions.
conditions. This algorithm modifies transmission time of nodes From Fig. 9 we get the adaptability in condition one is better
depend on the limitation of delay afforded by users. And from than in other two worse conditions. This is mainly because the
(9) and (10) we know that because of differences over BER, interval between nodes caused by bad weathers.
FW, degree and etc, the transmission time of each node will be
different. So different nodes won’t send data at the same time
and this will decrease the probability of collision and ease IV. CONCLUSION
network congestion. All of these will be helpful to dampen In this paper we proposed a Propagation Delay Control
congestion, reduce the number of collisions resulting in fewer strategy for large scale RFS networks. The experiment shows
retransmissions and could converge the propagation delay to a our work is succeeding in changing propagation delay by
certain set point. orders. However the complete system is designed to scale to
hundreds of sensors covering the sea area off Qingdao. Thus
Except T, all information is stored in the memory in this our future work will focus on designing an improved strategy
strategy. The sink only needs to send a message containing the for large-scale RFS networks.
new limitation of propagation delay (denoted by t ) when there
is a need to change the propagation delay. Each node will work
out the new adjust time easily by the following algorithm 3: REFERENCES
[1] Zheng Yang, Mo Li, Yunhao Liu, Sea Depth Measurement with
Restricted Floating Sensors. The 28th IEEE Real-Time Systems
III. EXPERIMENT Symposium[C], Tucson,2007: 469-478.
[2] [2] Tingxin Yan, Limin Sun, Principle and Performance Evaluation of
In our experiment, we take LEPS introduced by SUN Routing Protocol in TinyOS[J]. Computer Engineering, 33:112-114.
Limin et al. as the routing protocol. In this section, we evaluate [3] Raghunathan V.,Schurgers C.,Park S.,et. Energy Aware Wireless
the performance of PDC strategy. Microsensor Networks[J]. IEEE Signal Processing
Magazine,2002,19(2):40-50.
We are deploying the working system in Qingdao, China. [4] Spragins J D., Hammond J L., Pawlikowski K. elecommunications:
We use TelosB motes and Tiny OS as our development basis. Protocols and Design [M]. Boston; Addison Wesley Publishing
Current system consists of 23 sensor nodes deployed in the Company,1991.
field, reporting sensing data continuously to the base station. [5] He Tian, Blum Brian M, Stankovic John A.,Abdelzaher T. AIDA:
The data centre of Ocean Sense has been launched and most of Adaptive Application Independent Aggregation in Sensor Networks
our data can be seen on internet. With limited power resources, [J].ACM Trans on Embedded Computing System, 2003, 3(2): 426-457.

90
2009 International Conference on Computer Engineering and Technology

Fast and high quality temporal transcoding architecture in the DCT domain
for adaptive video content delivery

Vinay Chander1 Aravind Reddy2 Shriprakash Gaurav3


vinay87@gmail.com aravind_k_iiitm@yahoo.co.in gaurav.agnos@gmail.com

Nishant Khanwalkar4 Manish Kakhani5 Shashikala Tapaswi6


nis.iiitm@gmail.com manishkakhani@gmail.com stapaswi@iiitm.ac.in
1, 2, 3, 4, 5, 6
Department of Information Technology,
Indian Institute of Information Technology and Management, Gwalior, MP, INDIA

Abstract variety of end devices that exist in today’s internet and


also because of the varying constraints of the channels
Video communication over the Internet is that make up networks [7]. In this paper, we attempt
becoming increasingly popular today. Transmission of to help with the problem of video content delivery to
videos over networks has always been a problem due heterogeneous end devices over channels of varying
to reasons like high bandwidth requirement, lossy capacities by proposing a fast and efficient temporal
channels (especially wireless links, low bit rate two transcoding architecture, which operates completely in
way communication links etc), huge file sizes and the the compressed domain [3, 12]. An overview of the
large variety of end terminals with different other approaches for video content adaptation can be
constraints. In this paper, we limit ourselves to found in [1, 2 and 6].
solving the problem of bandwidth and end terminal A video may be considered as a stream of frames
frame rate requirements in the context of video played at quick succession with very short time
content distribution over the internet. We propose an intervals, which is viewed and interpreted by the end
efficient temporal transcoding architecture in which user(s). This fact brings about an important feature
motion change is considered. For motion vector which is exploited to reduce the transmitted data size.
composition, both bilinear interpolation vector First of all, short time interval between consecutive
selection (BIVS) and forward dominant vector frames means that the contents should be very close to
selection (FDVS) are used. Our architecture operates each other, which can be made use of by dropping the
entirely in the DCT domain, unlike some less important frames .Since the final user of the video
architectures, which operate partially or fully in the stream is a human, the biological features of human
pixel domain, thus avoiding computationally visual system should be considered and the priority in
expensive operations of inverse DCT and DCT. The preserving data should be based on these features. In
re-encoding errors are also minimized. The macro temporal transcoding of videos, pre-encoded frames
block coding types are re-judged to reduce drift may be dropped from incoming sequence to freely
errors. We have implemented the algorithms and adjust the video to meet network and client
carried out experiments for Mpeg 1 video sequences requirements [4, 5 and 14].
and the results are found to be promising. Thus we propose an architecture which adapts the
incoming compressed video to the end terminal’s
Keywords: Video transcoding, DCT domain, frame rate constraint as well as the bandwidth of the
motion based frame skipping, motion vector available channel by using a motion based frame
composition and prediction error re-calculation skipping algorithm [5, 11] to skip frames. This
method involves calculation of motion activity of the
1. Introduction frames .Motion activity gives a measure of the motion
in a frame and is defined as the sum of the motion
The eminence of digital video on the internet is vector components in that frame. We use the modified
increasing by the day. Video content delivery has definition of motion activity [11], which is found to be
many issues associated with it. This is due to the large better. If the motion activity is larger than a given
threshold, the frame cannot be skipped, since it has

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 91


DOI 10.1109/ICCET.2009.174
considerable motion, and so transcoding this frame which inverse quantization is carried out, thus further
improves the quality and smoothness of the video minimizing the re-encoding errors. Thus we compute
sequence delivered. The architecture is described in the quantized DCT coefficients for non-skipped
greater detail in the next section. frames entirely in the DCT domain.
Our architecture allows skipping of B frames as To summarize our work, in this paper we present a
well as P frames. When the P frames are dropped, the fast frame skipping transcoding architecture that
motion vectors that refer to the dropped frames operates entirely in the DCT domain, which
become invalid and need to be recalculated with accelerates the transcoding process. The smoothness
respect to their new reference frames that are part of and quality of the transcoded video stream is also
the transcoded bit stream. Also, the quantized DCT maintained by using an efficient motion based frame
coefficients of residual signal of non-skipped frames skipping algorithm. The rest of the paper is organized
become invalid as they may refer to the reference as follows. In Section 2, we explain our transcoding
frame(s) which no longer exist(s) in the transcoded architecture. Section 3 describes the macro block re-
bit-stream. So, it becomes necessary to re-compute the encoding scheme, which covers three parts: (i) Re-
new set of quantized DCT coefficients with respect to judging macro block types under different situations
the past reference frame(s) that will act as reference in (ii) Motion vector composition and (iii) Recalculation
the transcoded bit-stream. of the residual signal. Section 4 briefly summarizes
Thus, for performing the recalculations and our implementation and Section 5 presents the
validating the transcoded frames, we present our experimental results obtained. Finally, the conclusion
scheme to re-judge the macro block coding types to and future scope is given in Section 6.
minimize the drift errors [4]. We calculate the new
motion vectors using motion vector composition. We 2. Transcoding architecture
implement a scheme, where in both bilinear
interpolation vector selection (BIVS) [8] and forward The block diagram of our transcoding architecture
dominant vector selection (FDVS) [9] are used. The is as depicted in Figure: 1.
method which is appropriate for the macro block Firstly, the input bit stream is parsed by a variable
under consideration is employed to make the process length decoder (VLD) which performs the extraction
computationally cheap yet, achieving good results of header information, frame coding modes, macro
.The pixel-domain approach for re-calculating the block coding modes, motion vectors and the quantized
prediction residual involves high computation due to DCT information for each macro block. This is
the computationally expensive operations of inverse followed by the calculation of motion activity for each
DCT, DCT. Also, re-encoding errors are incurred in frame in the video. For this, we use the modified
performing DCT and re-quantization. We re-calculate definition of motion activity, which is briefly described
the new quantized DCT coefficients of the prediction below [11].
residuals by processing the quantized DCT coefficients ……. (1)
available from the incoming stream even in the case of
MC macro blocks. This is achieved using the block (MA)m is the motion activity of a macro block, k is
translation method [13, 15]. This differs from [4], in a properly tuned constant and |xm| and |ym| are the

Figure 1. Transcoding Architecture

92
motion vector components. Since an intra macro block smoothness and quality of the output video are
is produced when there are many prediction errors maintained to a very good extent. The results are
(namely, the macro block is largely different from the presented and described in section 5. The final list of
reference area in the previous frame), they are the frames to be skipped includes both B frames as
assigned the maximum motion activity value, equal to well as P frames.
the maximum size of the motion vectors, which Since B frames are non-reference frames, they are
corresponds to the search range used by the motion first dropped from the bit stream and no re-encoding is
estimation procedure. In this way, we take into required in this case. The dropping of P frames is
account of intra macro blocks also in the motion performed next. This order is followed to avoid
activity computation. The motion activity of a frame is redundant re-encoding of frames. Dropping P frames
calculated by summing up the motion activities of all requires a re-encoding scheme because the motion
the macro blocks of that frame, as given by equation vectors and prediction residuals of frames that refer to
(2). the dropped P frame become invalid. Our re-encoding
….. (2) scheme is presented in the following section. The P
frame skipper (portion of figure: 1, which follows the
Once the motion activities are computed, the next B frame skipper) includes a switch S, which updates
step involves application of a motion based, frame the DCT domain buffer for the quantized DCT
skipping algorithm as described in [11].The algorithm coefficients of the residuals, depending on the coding
is presented below: mode of the macro blocks. When the switch opens, the
transcoder performs the motion compensation in the
Algorithm for frame skipping DCT domain. After the new motion vectors and
Motion-based Policy (frame f): prediction residuals are calculated, the output is fed to
if(f = first frame) Thr(f)=0; a variable length coder (VLC), thus producing the
else Thr(f)= (Thr(f-1)+ MA (f-1))/2; final bit stream.
if MA(f)<= Thr(f) skip f
else transcode f 3. Re-encoding architecture

Thus, after performing this step, an initial list of When P frames are dropped, the frames that are
frames that can be skipped are available. Then, we part of the transcoded bit stream need re-encoding.
select a value N (which we name as the quality factor), Consider a GOP (in the display order),
which is done in such a way that the frame rate as well IBBPBBPBBPBBPBB. Suppose the 7th frame (P
as the bit rate is reduced sufficiently to meet the frame) is dropped, the 2 B frames that precede it (5th
requirements. This value of N gives the number of and 6th frames), the B frames (8th and 9th frames)
frames to skip per GOP (Group Of Pictures). After that appear after it and the subsequent P frame (10th
this, the frames contained in the list are sorted by their frame) need to be modified.
motion activities. Then, using the value N, the final
list of frames that are to be skipped from the incoming Macro block Type Conversions and re-encoding:
bit stream is obtained, that is the N frames with the
least motion activities amongst a GOP, are skipped. Case 1: Intra macro blocks need no changes, as
By experiments, it is observed that till N=3, the they do not contain references.

Figure 2. New prediction errors computation for non-MC macro blocks


Description: Rt is the frame being modified ; Rt-1 is the skipped frame and Rt-2 is the new temporal
reference of Rt. MBt is the macro block ,which is being modified ; MBt-1 is the skipped macro block and
MBt-2 is the new reference area of MBt. Q[DCT(et)] is the original error term, Q[DCT(est)] is the
s s
modified error term and similarly Ut and Vt are original vectors of MBt , U t and V t are their modified
values .

93
Case 2: In a B frame that appears before the does not lie within the macro block boundary (figure:
dropped frame, if the macro block is (Forward) 3), then we have the sub-cases 3.2.1 and 3.2.2, which
predicted, then it requires no changes. But if the follow:
macro block is (Backward) predicted or (Forward + Sub-cases 3.2.1 and 3.2.2 cover the motion vector
Backward) predicted, then it is converted into an Intra composition scheme used. We implement a scheme,
macro block and is replaced by the referenced picture where in both bilinear interpolation vector selection
area .It is found that the increase in bit rate due to this (BIVS) and forward dominant vector selection
is not significant, since the percentage of these macro (FDVS) are used. The method which is appropriate for
block types are quite low. If the referenced area does the macro block under consideration is employed to
not lie within the macro block boundary, then its make the process computationally cheap yet, leading
quantized DCT coefficients can be calculated from the to good results.
incoming quantized DCT coefficients of its
neighbouring macro blocks (available from the DCT 3.2.1. MB1t , MB2t-1, MB3t-1, MB4t-1 are all Inter
domain buffer).The Block Translation method, that is Coded: If all the involved macro blocks (MB1t, MB2t-
available in literature [13, 15] achieves this. And in 1, MB3t-1, MB4t-1) are Inter Coded , then we use the
case the neighbouring macro blocks are not Intra Bilinear interpolation [8] to find the resultant vector.
coded, they can be found out by recursively tracing the Hence, the final modified vector can be found by
vectors. For this purpose, motion vector composition simple vector addition (equations 3, 4). The new
(as covered in 3.2.1 and 3.2.2) may be required. prediction error is calculated entirely in the DCT
Case 3: In the frames that appear after the dropped domain [15] unlike some architectures that operate
frame, if the macro block is (Backward) predicted, partially in the pixel domain [10].The linear property
then no change is needed. In case of Forward of DCT is used and since DCT (et) and DCT (et-1) are
predicted macro blocks, if the referenced area lies divisible by quantizer step-size, the newly quantized
within the macro block boundary, we have the DCT coefficients of prediction error for MBt are given
following sub-cases. (figure: 2): by:
Q[DCT(est)] = Q[DCT(et)] + Q[DCT(et-1)] …..(5)
3.1. Intra coded macro block: If the referenced where,
macro block (MBt-1) is Intra coded (which is not the Q[DCT(et-1)] = Q[DCT(MBt-1)] - Q[DCT(MBt-2)]
case in figure 2), then MBt is converted into an Intra … (6)
macro block.
Where Q[DCT(MBt-1)] and Q[DCT(MBt-2)] can be
3.2. Inter coded macro block: If the referenced found by the block translation method .
macro block (MBt-1) is Inter coded (Forward
predicted), then the vector of the referenced macro 3.2.2. One of the four (MB1t , MB2t-1, MB3t-1,
block is simply added to the vector of MBt, which MB4t-1) is an Intra macro block: If one of the four
gives the modified vector: (MB1t , MB2t-1, MB3t-1, MB4t-1) turns out to be an
Ust = Ut + Ut-1 ......(3) Intra macro block , then we find out if there exists an
Vst = Vt + Vt-1 Inter macro block, among the neighboring ones and
…..(4) whether the referenced area overlaps more than 3/4th
in area with it . If it exists, then FDVS [9] is used to
Where Ust and Vst are the modified components of find the resultant vector. Hence, the final modified
the motion vector of MBt. But if the referenced area vector can be found by simple vector addition

Figure 3. New prediction errors computation for non-MC macro blocks

94
(equations 3, 4). Otherwise the macro block is re- 1. The new values of bits per frame.
encoded as an Intra macro block. There by, a good 2. The quantized DCT coefficients of the
tradeoff between bit rate reduction and video quality is modified frames.
achieved. 3. The new motion vectors.
4. The re-judged coding types of the macro blocks
Case 4: In the frames that appear after the dropped
frame, if the macro block is (Forward + Backward) We reconstructed the new frames by performing
predicted, then the Forward vector needs to be inverse quantization and inverse DCT to compare
modified and is done in the same way as discussed them with the frames from the original video
above for case: 3. After the new forward vector is sequence. The results are presented in the next
found, the new quantized DCT coefficients can be section.
found out by the equation given below:
5. Experimental results
Q[DCT(est)]= Q[DCT(et)] + (Q[DCT(et-1)]/2) ...(7)
We conducted experiments over mpeg-1 videos to
Which can be derived as follows: evaluate the performance of our transcoding
architecture and the results for three sample mpeg-1
We have the 3 equations as follows: video sequences are presented. The three video
sequences, ACT60.mpg, ADVERTISMENT.mpg
Q[DCT(est)] = (Q[DCT(MBt)] - Q[DCT(MBt-2)])/2 and SCHONBEK.mpg are compressed mpeg-1 videos,
+(Q[DCT(MBt)] - Q[DCT(MBt+1)])/2 .....(8) each with a resolution of 160×120 and having 15
frames per GOP with the following sequence:
Q[DCT(et)] = (Q[DCT(MBt)]-Q[DCT(MBt-1)])/2 IBBPBBPBBPBBPBB. The average PSNR (peak
+(Q[DCT(MBt)]-Q[DCT(MBt+1)])/2 .....(9) signal to noise ratio) values for N=3, 4 frames per
GOP, are calculated and presented below. Table 1
Q[DCT(et-1)] = Q[DCT(MBt-1)] - Q[DCT(MBt-2)] gives the results for the video sequences (percentage
.....(10) reduction in the stream size, average PSNR values,
Eq:8 – Eq:9 – (Eq:10)/2 gives us the required and input and output frame rates for the N=3 and
equation . N=4).
From the results obtained, we observe that the
4. Implementation average PSNR value decreases with increase in the
value of the quality factor (N), which is a direct
In this section, we give a brief overview of our consequence of increase in the drift errors with the
implementation. We have carried out our increase in the value of N. The result obtained is found
implementation for Mpeg-1 videos. The Mpeg-1 video to be promising. We also took observations on the
stream is taken as the input along with the quality smoothness of the output video, by showing the input
factor (N), which is decided by the channel capacity and output video sequences to a group of 30 people.
and the target frame rate. The input is processed to get From their feedback it is observed that the output
the details of video stream including the required video is found to be very good till quality factor (N) =3
header information, the motion vectors and the (for a GOP of size 15). We also present few images
quantized DCT coefficients of each macro block. This below, to show the comparison between the visual
is done using mpeg_stat, which is a free tool available quality of the reconstructed reference frames (for N=3,
on [16]. We have implemented our algorithms in C++, N=4) and the original frame taken from the input
which includes four header files namely, video. Figure 4(a) is a frame from the original
declarations.h, frame_modifier.h, block_dct.h and sequence, ACT60.mpg and 4(b), 4(c) correspond to
Huffman.h containing functions for motion activity the reconstructed frames for N = 3 and 4 respectively.
calculation, motion vector composition, re-calculation Similarly figures 5(a), 5(b) and 5(c) are images taken
of prediction errors and computation of the number of from the original and reconstructed sequences of
bits in the modified frames (this helps in evaluating ADVERTISMENT.mpg respectively.
the size of the output video stream).Thus the output
generated by our modules include:

95
Table 1. Average PSNR, % reduction in stream size, change in frame rate for 3 sample
mpeg-1 video sequences
Input video Input Quality Factor (N =3) Quality Factor (N=4)
sequence frame % Averag Output % Averag Output
rate reduction in e PSNR Frame reduction e PSNR Frame
(fps) stream size (dB) rate in stream rate
(fps) size (fps)
ACT60.mpg 29.97 26.32 37.19 23.97 36.31 35.82 21.97

ADVERTISME 23.97 28.85 36.53 19.17 35.22 34.29 17.57


NT.mpg

SCHONBEK.mp 29.97 26.79 35.47 23.97 35.55 33.78 21.97


g

(a) Original frame (b) for N=3 (c) for N=4


Figure 4. Sample frame taken from ACT60.mpg

(a)Original frame (b) for N=3 (c) for N=4


Figure 5. Sample frame taken from ADVERTISMENT.mpg

6. Conclusion & future work domain. Also, the re-encoding errors are low because
the quantized DCT coefficients are directly
We have proposed a temporal transcoding manipulated upon. The Macro block coding re-
architecture, which helps in solving the problem of judgement scheme and the re-calculation of the
video transmission over networks, which constitute prediction residuals reduce the cumulative errors.
channels of low bandwidth and end terminals with From the results we have obtained, this architecture
varying frame rate constraints. The architecture skips works well in terms of the output video quality for
frames (both reference and non reference frames) on both videos with high motion as well as low motion,
the basis of motion and is low in complexity because while having a low computational complexity.
the transcoding is carried out completely in the DCT One of the areas that still seem to be open is the
design of efficient frame skipping policies. The

96
literature consists of frame skipping policies which are [8] J. N. Hwang, T. D. Wu and C. W. Lin. “Dynamic Frame-
mainly defined by motion information in an Skipping in Video Transcoding.”, IEEE Transactions on
experimental way. It would be interesting to Consumer Electronics, Vol. 44, pp. 88-98, February 1998.
investigate this problem in an analytical way by the [9] J. Youn, M. T. Sun and C. W. Lin, “Motion Vector
Refinement for High-Performance Transcoding”, IEEE
use of tools like dynamic programming and
Transactions on Multimedia, Vol. 1 (1), pp. 30-40, March
randomization to design new frame skipping 1999.
strategies. [10] K.T. Fung, Y. L. Chan, and W. Siu, “New architecture
for dynamic frame skipping transcoder,” IEEE Transactions
References on Image Processing, vol. 11, pp. 886–900, August 2002.
[11] M.A. Bonuccellit, F. Lonetti and F. Martelli,
[1] Ahmad I., Xiaohui Wei, Yu Sun and Ya-Qin Zhang, “Temporal transcoding for mobile video communication,”
“Video transcoding: an overview of various techniques and The Second Annual International Conference on Mobile and
research issues,” IEEE Transaction on Multimedia, Ubiquitous Systems: Networking and Services, 2005,
Volume:7, Issue: 5, on page(s): 793- 804, Oct. 2005 MobiQuitous 2005, pp 502- 506, July 2005.
[2] A. Vetro, C. Christopoulos, and H. Sun, ‘Video [12] Susie Wee, Bo Shen, John Apostolopoulos,
Transcoding Architectures and Techniques: An Overview”, “Compressed-Domain Video Processing” Hewlett-Packard
IEEE Signal Processing Magazine, vol.20, no.2, pp.18-29, Laboratories Technical Report HPL-2002-282 to be
Mar.2003. published in CRC Handbook on Video Databases, October –
[3] Chia-Wen Lin, Yuh-Reuy Lee, “Fast algorithms for 2002.
DCT-domain video transcoding,” International Conference [13] T. Shanableh and M. Ghanbari, “Hybrid DCT/pixel
on Image Processing, 2001 Proceedings. 2001, Volume:1, domain architecture for heterogeneous video transcoding,”
on page(s): 421-424, Publication Date: 2001. Signal Processing: Image Communication, vol.18,
[4] Chunrong Zhang, Shibao Zheng, Chi Yuan and Feng September 2003.
Wang, “A novel low-complexity and high-performance [14] V. Patil and R. Kumar, “An Arbitrary Frame-Skipping
frame-skipping transcoder in DCT domain,” IEEE Video Transcoder,” IEEE International Conference on
Transactions on Consumer Electronics, Volume: 51, Issue: Multimedia and Expo., ICME 2005, pp 1456-1459, July
4, on page(s): 1306- 1312, Nov. 2005. 2005.
[5] H. Shu and L. P. Chau, “Frame-skipping Transcoding [15] V. Patil and R. Kumar, “A DCT domain frame-skipping
with Motion Change Consideration”, Proceedings of the transcoder,” IEEE International Conference on Image
2004 International Symposium on Circuits and Systems, Processing, ICIP 2005, Volume: 1, on page(s): I-817-20,
vol.3, pp.773-776, May 2004. 11-14 Sept. 2005.
[6] J. Xin, C.W. Lin, and M.T. Sun, “Digital Video [16] mpeg_stat. A video analyzing tool for mpeg-1 videos
Transcoding”, Proceedings of IEEE, vol.93, no.1, pp.84-97, http://bmrc.berkeley.edu/ftp/pub/multimedia/mpeg/stat/
Jan.2005.
[7] Jens Brandt, Ing. Lars Wolf, “Multidimensional
Transcoding for Adaptive Video Streaming,” Proceedings of
the 17th International workshop on Network and Operating
Systems Support for Digital Audio and Video
(NOSSDAV'07), june-2007.

97
2009 International Conference on Computer Engineering and Technology

Electricity Demand Forecasting Based on Feedforward Neural Network


Training by A Novel Hybrid Evolutionary Algorithm
Wenyu Zhang Yuanyuan Wang
College of Atmospheric Sciences, Lanzhou School of Mathematics & Statistics, Lanzhou
University, Lanzhou 730000, China University, Lanzhou, 730000, China
yuzhang@lzu.edu.cn liangjzh07@lzu.cn
Jianzhou Wang Jinzhao Liang
School of Mathematics & Statistics, Lanzhou School of Mathematics & Statistics, Lanzhou
University, Lanzhou, 730000, China University, Lanzhou, 730000, China
wjz@lzu.edu.cn Chejxh07@lzu.cn

Abstract networks, such as slow training rate, easy to trap into


local minimum point, and bad ability on global search
Electricity demand forecasting is an important index etc [4].
to make power development plan and dispatch the In recent years, the swarm intelligent methods such
loading of generating units in order to meet system as Particle Swarm Optimization (PSO) algorithm,
demand. In order to improve the accuracy of the artificial immune algorithm and Artificial Fish Swarm
forecasting, we apply the feedforward neural network Algorithm (AFSA) are applied in the function
for electricity demand forecasting. Inspired by the idea optimization and parameters optimization. These
of Artificial Fish Swarm Algorithm, in this paper we algorithms reflect different better properties with their
proposed one hybrid evolutionary algorithm which characteristics such as scalability, fault tolerance,
based on PSO and AFSA methods through crossing adaptation, speed, autonomy, and parallelism in the
over the PSO and AFSA algorithms to train the different applications. Tao[5] applied the PSO
feedforward neural network. This proposed method algorithm in Optimization, but the PSO algorithm has
has been applied in a real electricity load forecasting, the disadvantages such as: sensitive to initial values,
the results show that the proposed approach has a easily trapping into local optimum, premature
better generalization performance and is also more convergence, parameters selection problems, slow
accurate and effective than the feedforward neural convergence in the later stage of the evolution.
network trained by particle swarm optimization. The AFSA has strong ability of avoiding local
extremum and achieving global extremum, its usage is
1. Introduction flexible and convergence speed is fast. This algorithm
has been applied in nonlinear function optimization,
With the establishment of the electric power market, parameter estimation, short-term load forecasting of
a high forecast precision is much more important than power system, etc. AFSA and PSO are much similar in
before. The inaccuracy or large error in the forecast not their inherent parallel characteristics, whereas
only means that load matching is not optimized but experiments show that they have their specific
also influences the stability of the power system advantages when solving different problems. What we
running. The traditional models of the load forecasting would like to do is to obtain both their excellent
such as the time series model, regression analyses features by synthesizing the two algorithms. This paper
model [1] are too simple to simulate the complex and proposes a novel approach based on the above
fast change of the power load [2]. mentioned idea. The method called AFSA-PSO-
In order to improve the accuracy of the forecasting, parallel-hybrid evolutionary (APPHE) algorithm. The
in this paper, we apply the feedforward neural network main idea of the hybrid algorithm is to divide the
for electricity demand forecasting. Artificial neural particles into two, the first particles execute the AFSA
networks technology is an effective way to solve the algorithm while the second particles execute the PSO
complex non-linear mapping problem. Feedforward algorithm simultaneously, and then find the largest
neural network is a kind of neural networks, which has fitness in the two systems. The whole system only has
a better structure and been widely used [3]. But there a largest fitness and a best position, the best solution
are still many drawbacks if we simply use neural should be transmitted back to PSO populations.
Afterward the two subsystems execute the PSO

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 98


DOI 10.1109/ICCET.2009.76
algorithm simultaneously, and then find the largest where q is the number of total training samples,
fitness in the two systems. Output the best solution and
yi − Ci is the error of the actual output and desired
k k
stop if the termination criterion is satisfied. And then
we apply the AFSA-PSO-parallel-hybrid evolutionary output of the ith output unit when the kth training
algorithm to train the feedforward neural network. The sample is used for training. We defined the fitness
results which are compared with feedforward neural function of the ith training sample as follows:
network trained by particle swarm optimization (PSO)
algorithm show much more satisfactory performance, fitness( xi ) = E ( X i ) (2)
converges quickly towards the optimal position,
convergent accuracy and can avoid overfitting in some When the APPHE algorithm is used in evolving
extent. weights of feedforward neural network, every particle
The remainder of this paper is organized as follows: represent a set of weights and bias.
Section 2 provides a brief description of Multi-layer
feed forward ANN, PSO, AFSA and APPHE
algorithm. Section 3 describes the research data and 2 .2 The PSO algorithm
experiments. Section 4 summarizes and analyzes
empirical results and discusses the conclusions and The PSO Algorithm was first proposed by Kenney
future research issues. and Eberhart in 1995 [9] and could be performed by
the following equations:
2. Methodology t +ϕ1⋅rand1⋅(pid −xid)+ϕ2 ⋅rand2 ⋅(pgd −xid)](3)
vid(t +1)=k⋅[vid()
2.1. Multi-layer feedforward neural network xid (t + 1) = xid (t ) + vid (t + 1) (4)
where i = 1, 2, … , m. d = 1, 2, … , D , rand1 and
An FNN, consists of an input layer, one or more
hidden layers and an output layer. Every node in each rand 2 are random numbers uniformly distributed
layer is connected to every node in the adjacent layer.
Supposed that the input layer has n nodes; the hidden within [0,1] . vid ∈ [−vmax , vmax ] and vmax is a
layer has H hidden nodes; output layer has O output designated value. Moreover, in order to guarantee the
nodes. In this paper, the hidden transfer function and convergence of the PSO algorithm, the constriction
the output transfer function are both sigmoid function. factor k is defined as follows
The computed output of the ith node in the output layer 2
is defined as follows [7]: k= (5)
H n
2 − ϕ − ϕ 2 − 4ϕ
yi = f (∑ (wij f (∑ v jk xk + θvj ) + θwi )), i = 1, , O (1) Where ϕ = ϕ1 + ϕ2 , ϕ > 4 . Usually, when the
j =1 k =1
constriction factor is used, ϕ is set to 4.1
where yi is the output of the ith node in the output ( ϕ1 = 2.05, ϕ2 = 2.05 ), and the constriction factor k
layer; xk is the input of the kth node in the input layer; is 0.729.
wij is the connective weight between nodes in the
2.3. Standard AFSA Algorithm
hidden and output layers; v jk represents the connective
weight between the nodes in the input and hidden Artificial Fish Swarm Algorithm was first proposed
in 2002 [6]. In this paper, we adopt [10] to describe the
layers; and θ wi (or θ vj ) are bias terms that represent
AFSA Algorithm.
the threshold of the transfer function f .
2.3.1 The structure of algorithm and definition
The learning error E can be calculated by the
following formulation [8]: Suppose that the searching space is D-dimensional
and N fish form the colony. The AF individual state
can be expressed with vector: X = ( x1 , x2 , … , xD ) ,
q O
Ek
E=∑ where Ek = ∑ ( yi − Ci ) ,
k k 2

k =1 q * O i =1 where xi (i = 1,…, D) is the variable to be searched


for the optimal value; AF food consistence at present
position can be represented by: FC = f ( X ) , and

99
FC is the objective function; the distance between the forward a step to the fellow centers. Mathematically
AF individuals can be expressed as: xck − xik
xinextk = xik + Random( Step ) (8)
d i , j = X i − X j ; Visual represents the vision Xc − Xi
distance; Step is the maximum step length and δ is Otherwise executes the behavior of searching food. If
crowd factor. n f = 0 , AF executes the behavior of searching food.
(3) Following behavior
2.3.2 The description of behavior
Let X i denote the AF states at present, and find
(1) Searching behavior
X min , in which FCmin is the minimum value of its
We randomly select a new state X j
in current state
fellows in the near fields (d i , j ≤ Visual ) , if
X i ' s visual field. If FCi > FC j in the minimum
problem, it goes forward a step in this direction; FCmin / n f < δ FCi , which means that the fellow
otherwise, select a state X j randomly again and X min has high food consistence and the surrounding is
judge whether it satisfies the forward condition. If it not very crowded, forward a step to the fellow X min .
can’t satisfy after try _ number times, it moves a
Mathematically
step randomly. The mathematical expression is as x m in k − x ik
follows: x inextk = x ik + Random ( Step ) (9)
X m in − X i
⎧ x jk − xik
⎪xinext = xik + Random(Step) FC j < FCi Otherwise executes the behavior of searching food. If
⎪ X j − Xi n f = 0 , AF executes the behavior of searching food.
⎨ (6)
⎪ (4)Bulletin
⎪⎩xinextk = xik + Random(Step) FCi ≤ FC j Bulletin is used to record the optimal AF's state and
the AF food consistence at present position. Update the
Where k = 1,2, ⋅⋅⋅, D ; x jk , xik and xinext represent the bulletin with the better state of the AF’s, the final value
k element of state vector X , X and AF’s state of the bulletin is the optimal value of the problem, the
j i
state of which is the optimal solution of the system.
vector at the next X inext respectively.
time
Random ( Step ) represents a random number in the 2.3.3 Select the behavior
range [0, Step ] , FC i , FC j are food consistence of According to the character of the problem, the AF
evaluates the environment at present, and then selects
state X i , X j . Meaning of symbols in following an appropriate behavior. For example, the simplest
formula is same with these. way is trial method. Evaluate the values derived by
(2) Swarming behavior swarming behavior and following behavior, and
An AF with the current state Xi seeks the implement the behavior whose result is the minimum.
The acquiescent behavior is searching food.
companion's number in its current neighbourhood
where satisfy d i , j < Visual ; and calculate their 2.4. AFSA-PSO-parallel-hybrid evolutionary
centre X c , FCc denotes the food
position algorithm
consistence of the center position and n f denotes the The performance of the novel algorithm is described
as follows:
number of its fellows in the near fields, if n f ≥ 1, X j 1. Divide the particles into two, and then initialize
explores the center position of its fellow. AFSA and PSO subsystems respectively.
Mathematically 2. Execute AFSA and PSO simultaneously.
nf 3. Find the best solution in the two systems, and then
xck = (∑ x jk ) / n f (7) transmit the best solution back to PSO populations.
j =1 4. The two subsystems execute PSO algorithm
simultaneously.
If FC c / n f < δ FC i , which means that the fellow 5. Memorize the best solution as the final solution and
center is high and surroundings is not very crowded, stop if the best individual in one of the two

100
subsystems satisfies the termination criterion. If not, We collected 28-day hour load series from a state of
go to step 2. The flow chart of the APPHE algorithm Australia, a 672-observation series as experiment data
is shown in figure 1. analysis and forecasting will be done with it. In this
paper we use an FNN with the structure of 5–5–1 to
address the problem. Multi-layer feedforward ANN is
trained with 26-day hour load series and then forecast
the next two days.
Supposed that every weight in the network was
initially set in the range of [− 60 ,60 ] , and all the bias in
the network were set in the range of [−50,50 ] . The
maximum velocity assumed as 2 and the minimum
velocity as -2. The population size is 45. The maximal
iterative step is 500. In the AFSA algorithm parameters
setting, try _ number = 15 , δ = 1.3 , Visual = 1 . 4 ,
Step= 1.5 . And the embedding dimension d is 5.
Simulations are performed in matlab7.1 with a 2.8GHZ
Pentium PC.
Two error metrics are employed to evaluate the
prediction performance, one is the related index
defined as:
n

∑ [Y i − Y i ] 2
R 2
= 1− i =1 (13)
n
Fig.1 Flow chart of APPHE algorithm

i =1
[Y i − Y ] 2
3. Application Where Yi is the actual data, Yi is the forecasting
3.1 Problem description data, Y is the average of the time series
In this paper, we adopt [11] to analyse the problem. {Yi , i = 1, 2, , n} , n is equal to 24. The closer R 2
Supposing that a time series {xk }, k = 1, 2, , N , is is to the value 1, the more satisfactory performance is.
given, using the delays method, we represent the data The other is the relative error defined as:
in d -dimensional space by vectors n
| Yi − Yi |
X k = [ xk , xk +1 , , xk + ( d −1) ], ∑i =1 Yi
.
where d is the embedding dimension. Time series n
prediction is to deduce the future values of a time The results are as follows. Figure 2 is the predictions
series according to its past values. We can use the map of the next two days’ load series. From figure 2, we
f to make the prediction. The prediction can be can know that the predictions based on APPHE-FNN
described as algorithm are closer to the actual data than PSO-FNN
algorithm’s. The process of training via the APPHE-
X k +T = f ( X k ) (10)
FNN algorithm and PSO-FNN algorithm are showed in
f :(xk , xk+1, , xk+(d−1) ) →(xk+T , xk+1+T , , xk+(d−1)+T ) (11) figure 3. In figure 3, it shows that the PSO-FNN may
rapidly stagnate, and the solution no longer improves
xk + ( d −1) +T = g ( xk , xk +1 , , xk + ( d −1) ) (12) anymore, while the APPHE-FNN can still search
g is an unknown function, and T is the prediction solution progressively till the global optimum is found.
It’s found from table 1 that the related index and the
step. Here T = 1 means one-step-ahead prediction,
relative error of the APPHE-FNN algorithm for the
and T > 1 means multi-step prediction. In this work, predicted 2 consecutive days are obviously much better
we try applying feedforward neural network to than PSO-FNN algorithm’s. Through the comparison
estimate the unknown function g . analysis, it can be seen that the APPHE-FNN
algorithm has a more accurate forecasting capacity and
3.2 Simulation considerably better convergence than the PSO-FNN.

101
that the proposed method can be used to many other
Table 1 The prediction results about R 2 and relative error
for 2 consecutive days complex time series forecasting such as financial series
Algorithm 27th 28th and hydrological series forecasting.
2 0.92 0.86
APPHE-FNN R
Relative error 2.71% 3.82%
Acknowledgment
2 0.85 0.81 The research was supported by the NSF of Gansu
PSO-FNN R
Province in China under Grant (ZS031-A25-010-G).
Relative error 3.92% 5.64%

11000
References
actual data
PSO-FNN [1] Niu Dongxiao, Cao Shuhua, Zhao lei, et al. Power Load
10500
APPHE-FNN Forecasting Technology and Its Application. Beijing: China Electric
10000 Power Press, 2001.
Electricity Load Forecasting(MW)

[2] Dongxiao Niu, Jinchao Li, Jinying Li, et al. Daily Load
9500 Forecasting Using Support Vector Machine and Case-Based
9000
Reasoning, 2007 Second IEEE Conference on Industrial Electronics
and Applications, 2007, pp:1271-1274.
8500 [3] Changrong Wu, Mingquan Ye, The application of BP neural
networks in hospital multifactor time series forecast, Fujian
8000
Computer, No.1, pp.38-39, Jan 2005.
7500
[4] Shu-xia Yang, Ning Li, Power Demand Forecast Based on
Optimized Neural Networks by Improved Genetic Algorithm,
7000 Proceedings of the Fifth International Conference on Machine
Learning and Cybernetics, Dalian, 13-16 August 2006, pp:2877-
6500
0 5 10 15 20 25 30 35 40 45 50 2881.
hours [5] Tao Xiang, Xiaofeng Liao, Kwok-wo Wong, An improved
Fig.2 The prediction results based on APPHE-FNN algorithm particle swarm optimization algorithm combined with piecewise
200 and PSO-FNN algorithm respectively linear chaotic map, Applied Mathematics and Computation, Volume
APPHE-FNN 190, Issue 2, 15 July 2007, pp:1637-1645.
180 PSO-FNN
[6] Li Xiaolei, Shao Zhijiang, Qian Jinxin. An optimizing method
160 base on autonomous animates fish-swarm algorithm [J].Systems
Engineering Theory and Practice.2002, 11:32-38.
140
[7] Chern-Hwa Chen, Jong-Cheng Wu and Jow-Hua Chen,
120 Prediction of flutter derivatives by artificial neural networks, Journal
Fitness

100
of Wind Engineering and Industrial Aerodynamics, In Press,
Corrected Proof, Available online 7 April 2008.
80
[8] Jing-Ru Zhang, Jun Zhang, Tat-Ming Lok, Michael R. Lyu, A
60 hybrid particle swarm optimization–back- propagation algorithm for
feedforward neural network training, Applied Mathematics and
40
Computation, Volume 185, Issue 2, 15 February 2007, pp: 1026-
20 1037.
0
[9] J.Kennedy and R.Eberhart, “Particle swarm optimization”, in
0 50 100 150 200 250 300 350 400 450 500 Proceedings of the IEEE International Conference on Neural
Iteration
Networks (Perth, Australia), IEEE Service Center, Piscataway,
Fig.3 Fitness curves of FNN based on APPHE algorithm pp:1941-1948, 1995.
and PSO algorithm respectively [10] Yi Luo, Juntao Zhang and Xinxin Li, The Optimization of PID
Controller Parameters Based on Artificial Fish Swarm Algorithm,
Proceedings of the IEEE International Conference on Automation
4. Conclusions and Logistics August 18 - 21, 2007, Jinan, China, pp:1058-1062.
[11] Xiaodong Wang, Haoran Zhang, Changjiang Zhang , et al, Time
In this paper, feedforward neural network trained by series prediction using LS-SVM with particle swarm optimization,
Advances in Neural Networks, 2006, Vol.3972, pp: 747-752.
AFSA-PSO-parallel-hybrid evolutionary algorithm is
proposed for electricity demand forecasting. The
results show that the proposed algorithm has a better
ability to escape from the local optimum and a better
predicting ability than PSO-FNN algorithm. And the
high precision has a significant impact on the
economic operation of the electric utility since many
decisions based on these forecasts have significant
economic consequences.
It should be pointed out that, although the processes
are focused on electricity load forecasting, we believe

102
2009 International Conference on Computer Engineering and Technology

Investigation on the Behaviour of New Type Airbag*


Hu Lin,Liu Ping Huang Jing
The State Key Laboratory of Advanced Design &
College of Mechanical Engineering
Manufacture for Vehicle Body
University of Shanghai for Science and Technology Hunan University
Shanghai, China, 200093 Changsha, China ,410082
Hulin888@sohu.com luckycitrine@163.com

Abstract -This research a new type airbag system (NAB) was likely induced by the “membrane” loading at relative late
developed in this study which consists of two flat layers and a deployment time[2]. It is believed that the side-effect would
middle layer with tube-type structure. The objective of the new be minimized if the early development pattern of the airbag
airbag system is to enhance the occupant safety in passenger car can be controlled. Proper development of the airbag system
collisions with reduction of injury risks for small and OOP
depends on several factors, including the structure of the
occupants. A prototype of the airbag was built up with volume 40
litters. The performance of the prototype airbag was investigated airbag, the inflation system, the ignition system and the
using static deployment test and sled crash test with Hybrid III ignition time etc. Development of the traditional airbag would
dummy. A FE model of the airbag was developed and validated require a powerful inflation system and quick response of the
using results from the airbag deployment test and sled crash test. ignition system, which put high requirements on the systems
In order to determine the potential for occupant protection, and thus resulting high costs. To reduce possible side-effect of
computer simulations of the OOP occupant with NAB and the the airbag system and to have suitable requirement on the
normal driver-side airbag (DAB) are carried out using HYBRID- inflation system, a sandwiched tube-type airbag system (NAB)
III FE model. Results indicated that the NAB airbag need less gas [3]was developed (Zhong, 2005) and evaluated in this paper.
than the DAB to get the same load and displacement curve, and
the leading velocity of NAB is lower than that of DAB. In the II. METHOD AND MATERIALS
OOP simulation, the acceleration of dummy head using NAB is
smaller than that using DAB. A prototype of the NAB was developed, which consists of
an upper layer flat airbag, a lower layer flat airbag and a
Index Terms - Sandwiched airbag, OOP occupant protection, middle layer of tube-type airbags. The upper layer flat airbag
sled crash test, finite element model is designed to touch the occupant on crash, and the middle
I. INTRODUCTION layer tube-type airbags are designed to support the upper layer
and the lower layer. The whole NAB’s volume is about 40 L.
Airbags have been proven to be very helpful in protecting In the event of a crash, the middle layer is first and mostly
drivers and passengers in many cases of automotive crashes. inflated while the other two layers are inflated later and less
However, side-effects may be serious if the system is not rapidly. Two groups of deployment tests using DAB and NAB
carefully designed, manufactured and used[1]. One common were performed to support and validate the computational
side-effect is that it may harm occupants, especially for modeling efforts and compare their deployment properties;
children and small women, when it deploys improperly on then the sled test and virtual tests were used to estimate the
crash (Chritina et al., 1998; John et al., 1993; Alex et al., protection efficiency of the NAB; finally the parametric study
1995). Because to achieve occupant protection during a crash was carried out to find the more sensitive and critical design
using a fully-deployed airbag to dissipate the frontal crash variables to occupant injuries.
forces experienced by the driver over a larger body area and Experimental Set-up - An experimental inflation device
gradually decelerate the occupant’s head and torso to prevent was designed as shown in Figure 1. The experimental devise
contact with other interior surfaces, the airbag itself must can be used to inflate the airbag and provide gas with
deploy rapidly in less than 50 milliseconds. Consequently, an prescribed pressure and leakage.
occupant positioned extremely close to the airbag module at The whole deployment system mainly consists of an air
the time the airbag begins to inflate is exposed to highly compressor, a tank, fast-acting valves and sensors (shown in
localized forces. Two phases of airbag deployment have been figure 1). The air compressor 1 provides compressed air to the
associated with high, injury-causing localized forces: the tank 4. The outlet of fast-acting valve is connected to the inlet
punch-out phase and the membrane-loading phase. According of the new structure airbag. Pressure sensor 9 and 6 are
to the findings of biomechanics research, field automotive separately used to transfer tank pressure signal and airbag
accident and laboratory test, chest and neck are the most inside pressure signal to computer. Safety valve 3 prevented
vulnerable objects subjecting injuries during airbag interacting the system from pressure overloading. Solenoid valve 2
with OOP occupant. It has been found that chest injury often functions as a switch between air compressor and tank. A/D
associates with airbag “punch out” force and occurs at very board 8 does the conversion from pressure voltage signal to
early stage of the airbag deployment, but neck injury is more numerical signal. The NAB system and traditional airbag
*
Supported by Shanghai Leading Academic Discipline Project,
Project N.J50503

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 103


DOI 10.1109/ICCET.2009.60
system are tested with the device in different loading
conditions. The features of the airbag deployments were
examined.

(a) (b)
Fig.2 (a) out of position 1 (b) out of position 2

III. NUMERICAL MODEL AND EXPERIMENTAL VALIDATION


Fig.1 Layout of the airbag test system: 1.Air Compressor 2.Solenoid Valve
3.Safety Valve 4.Air Tank 5.Fast Acting Valve 6,9. Pressure Sensor NAB model - The NAB system is modeled with 18408
7.Fixed Airbag 8.A/D Board.
Belyschko-Tsay membrane elements. Material properties of
Airbag deployment test - The behaviors of the NAB
Nylon 66 are assigned to the membrane elements. Contact
system are investigated using an experimental device as
interface is defined between the airbag and the dummy’s head,
shown in Figure 1. The NAB system and traditional airbag
neck,chest and hands. Self-contact interface is also defined
system are tested with the device in conditions of static and
within the airbag system.
dynamic deployment: (1) static deployment without impact,
Static deployment -The high speed films from static airbag
and (2) dynamic deployment with impact.
deployment are shown in Figure 3a. The dynamic stiffness of
Sled crash test - To examine the actual behavior of the
the airbag system is estimated through dropping composite
NAB system in protecting occupants, sled crash tests are
blocks onto the inflated airbag. Experimental results show that
carried out by using a 50% HYBRID-III dummy with standard
by adjusting the pressure alone equivalent dynamic stiffness
safety belt at impact speed of 35 km/h. as shown in Figure 4a.
properties may be obtained with different types of airbags. It
Two energy absorbing square metal beam of the size
means that the NAB system has the potential to provide
120×120×500 in mm with thickness of 1.2 mm. The airbag is
similar load-displacement feature as the traditional airbag
mounted at an angle of 60 degrees with horizontal plane. The
system would do although the NAB system requires much less
tested NAB system is inflated with gas storage on the sled,
gas. Figure 3b shown the simulation results which are similar
providing a prescribed pressure to the system. The
with that from deployment tests.
acceleration signal of the dummy’s head and the test sled is
measured and recorded.
Virtual testing - Simulations of the static and dynamic
deployment of the NAB system were carried out by using LS-
DYNA program to study the feature of inflation process. Then,
computer simulation was also conducted with the HYBRID-III t=0ms t=10ms t=20ms t=30ms t=45ms
dummy FE models. In response to side-effects of an airbag in (a)
low- and moderate-severity crashes, FMVSS 208 issued by
NHTSA in May 2000, proposed that static OOP tests should
be a mandatory requirement starting in 2003. These tests
include performance requirements to ensure that airbags
t=0ms t=10ms t=20ms t=30ms t=45ms
developed in the future do not pose an unreasonable risk of
(b)
serious injury to OOP occupants[4]. In the FMVSS-208
Fig.3 (a)The airbag during inflation test; (b) Simulation of the deployment
NPRM, for the 5th percentile female "low risk deployment", process of the NAB
the two test positions for OOP situations are as shown in Sled test - Figure 4a shows the 50th percentile HYBRID III
Figure 2. dummy response and contact with NAB at 50 ms in the sled
According to above requirement, the 5th percentile adult crash test. The measured acceleration peak value is 16 g at the
female dummy OOP virtual tests were used to do parametric dummy head center of gravity.
analysis. The driver position 1(~ISO 1) is to obtain maximum
neck loading (membrane) and the driver position 2 (~ISO 2) is
to obtain maximum chest loading (punch out) from the
deploying air bag. Finally, the virtual test results with DAB
and NAB were compared.

(a) test at 50 ms (b) simulation at 50 ms

104
Fig.4 (a) Sled crash test of the NAB with HIII dummy; (b) Simulation of the Pa) at time 0.035s. DAB reached its peak value (0.1445×MPa)
interaction of the NAB with the dummy
at time 0.037s. So , NAB can use less gas to reach the same
From virtual testing using FE model, the dummy response airbag inner pressure.
and contact with the airbag at 50 ms is shown in the Figure 4b,
which is comparable with the crash test result. The time
history plot of head accelerations measured from test is
presented and compared in Figure 5, and the magnitude and
duration of the head acceleration curves are reasonable good.
The validated NAB module model will be applied in the OOP
occupant simulation as discussed in the next paragraph.
200
Head acceleration (m/s2)

Simulation
160 Sled test

120 Fig.7 Volume history plot

80

40

0
0,000 0,020 0,040 0,060 0,080 0,100 0,120
Time (s)

Fig.5 The time history plots of dummy’s head acceleration from sled crash
test and simulation of the sled test
Comparison of deployment property of NAB and DAB -
To compare the NAB and normal DAB’s deployment property
Fig.8 Pressure history plot
and assess the relative potential of different airbag designs to
cause injury, two groups of static deployment simulations Ⅳ. AIRBAG-DESIGN PARAMETRIC STUDY
were conducted. The first group of simulation is to measure
the leading-edge speed between the normal DAB and NAB, Design variables and control levels - Some of the design
the normal DAB and NAB have the same volume (40 L), parameters that might affect the airbag module performance in
drivers' OOP conditions are: airbag structure, vent hole,
either their inflators’ parameters. Figure 6 shows the different
inflator tank pressure characteristics such as the slope and the
leading-edge velocity results from the static deployment
simulation. From the time history plot of the leading-edge peak, venting during inflation, cover break out force, fabric
velocity, the peak value of the normal DAB is 53.9 m/s at time material property e.g. density, modulus of elasticity, porous
property, etc[5]. The parametric study was carried out in two
0.0225 s, and the NAB is 27.6 m/s at time 0.0025 ms. Reed et
steps, In the first step, some initial design parametric about
al. recorded some ARS 3 (Abrasion Rating System) abrasions
to human skin at a contact speed of 234 km/h (65m/s), so the NAB’s structure have been carried out, mainly to judge the
possible abrasion injury caused by NAB is lower than ARS 3, influence of tether and vent hole to NAB. The collocation of
tether, the length of tether, the mass flow rate, the size and
and is lower than the possible abrasion injury caused by DAB
location of vent hole are selected as design variables[6]. The
also.
design variables and their control levels are showed in Table
1.
Table 1 Design Variables and control levels
Control level
Design Variable
1 2 3 4
A=Tether collocation Col 1 Col2 Col 3 Absence
B=Tether Length 100% 90% 80% 70%
C=Vent hole Area 1110mm2 80% 70% 110%
D=Vent hole
Pos1 Pos2 Pos3 Pos4
circumferential Position
E=Vent hole Radial
Fig.6 Leading-Edge Velocity comparison Pos1 Pos2
Position
In the second group of simulation, the normal DAB’s
F=Mass flow rate 100% 70%
volume is 60 L and the NAB’s volume is 40 L, their leakage
In the second step, based on the research results of the first
area was set to the same value (1152 mm2), also use the same
step of the parametric study, the influence of inflator
inflator’s parameters. Figure 7 shows volume history plot of
characteristics and fabric material properties are discussed,
two types of airbag. NAB reached its maximum volume value
and the design variables and their control levels are showed in
at time 0.036 s, normal DAB reached its maximum volume
Table 2.
value at time 0.039 s. Figure 8 shows the pressure history plot
Table 2 Design Variables and control levels
of two types of airbag. NAB reached its peak value (0.214M

105
Control level Parametric virtual tests results - The virtual tests results
Design Variable
1 2 3 for parametric study are shown in Table 3.
G= inflator Pressure peak (kpa) 120 160 200 Table 3 virtual test results
H=inflator Pressure slope (ms) 0 4.5 6.5 Dummy Chest My
NO. HIC36 Fz(N) Pcom Nij
I=fabric material Density (kg.m-3) 541 721 901 pos G (Nm)
J=fabric material Porous property 0 50 100 1 8.5g 182.0 650 15.0 0.019228 0.264300
Object function definition - According to the findings of 2 2.7g 271.1 1200 -35.0 0.021403 0.883049
biomechanics research, field automotive accident and 3 4.3g 191.0 370 17.5 0.017891 0.208264
laboratory test, head, chest and neck are the most vulnerable 4 9.0g 243.8 1250 25.0 0.022394 0.483455
objects subjecting injuries during airbag interacting with OOP IP 5 36g 195.1 1500 31.0 0.057342 0.586598
occupant. In order to valuate NAB’s protection performance 6 9.0g 1131 3600 28.5 0.264523 1.111706
synthetically, the minimizing occupant injuries, US NCAP 7 3.0g 244.6 1600 28.0 0.020036 0.593016
Injury Index— PCOMB and neck injury criteria N ij are chosen as 8 11.5g 266.4 2250 25.0 0.024956 0.741187
9 13.0g 187.5 800 30.0 0.021954 0.399734
the object functions. PCOMB can presents both HIC and chest
1 7.8g 273.1 1500 75.0 0.023451 0.870469
acceleration as only one function. It is formulated as following 2 7.5g 279.6 950 68.0 0.023699 0.683555
[7]. 3 27.5g 352.8 1800 90.0 0.047185 1.044563
Object Function = MIN ( P ) COMB
(1) 4 8.2g 318.6 1180 95.0 0.026487 0.917027
Where, OOP1 5 18.0g 302.3 1400 75.0 0.031829 0.844696

PCOMB = PHEAD + PCHEST − ( PHEAD × PCHEST )


6 18.0g 1061 -2100 81.0 0.225341 1.063818
(2)
7 23.0g 297.1 1150 95.0 0.036827 0.909295
PH E A D and PCHEST are defined as following: 8 10.0g 482.7 -1900 96.0 0.042145 1.109046
9 10.5g 333.7 1750 90.0 0.028680 1.031676
1
PHEAD = (3) 1 7.0g 217.7 1050 -28.0 0.020170 0.729635
1 + EXP ( 5.02 − 0.00351 × HIC36 ) 2 8.0g 223.4 1120 -27.0 0.020887 0.731283
1 3 28.0g 263.4 1300 -29.0 0.042293 0.810461
PCHEST = (4)
1 + EXP ( 5.55 − 0.00693 × CHESTG )
4 7.8g 220.4 1220 -26.0 0.020650 0.740663
OOP2 5 10.0g 242.0 1450 -30.0 0.022805 0.865515
N ij can present both upper neck force and upper neck 6 11.5g 246.8 1300 -32.0 0.023882 0.859642
moment, it is formulated as following: 7 20.0g 216.8 1300 -22.0 0.029033 0.695707
Fz My 8 11.5g 246.7 1500 -31.0 0.023877 0.894795
N ij = + 9 12.0g 268.7 1400 -38.5 0.025381 0.991972
Fcritical M critical (5) Analysis of results - The Design Exploration Tools of
Simulation matrix - After formulation of design problem, iSIGHT is used to analyze the previously mentioned virtual
to provide enough representative test data, a design of test results, the ANOVA, pareto plots and main effects graphs
experiment (DOE) analysis was conducted to design the test are recorded. ANOVA is the statistical analysis of the
matrix; for the first step of parametric study, the orthogonal contribution of each factor or their interactions to the variance
array is defined as L16 ( 4 × 2 ) matrix. And for the second
4 3 2
of a response [8]. R in ANOVA means the coefficient of
step of parametric study, the orthogonal array is defined as L9 determination, in another word it is a measure of the accuracy
4
( 3 ) matrix. of the model fit. The pareto plots indicate the relative effect of
The traditional test work generally changes one design each design variable on occupant injury. The main effects
variable’s value at one time and other variables maintain graphs indicate the desirable direction for each design
invariable, so the number of experiments will be very big and variable.
can’t get the mutually affecting relations of these variables. In order to make NAB provide good protection for occupant
The method by using orthogonal array to arrange experiments under all conditions, the choice of design variables should be
permits many variables change simultaneously; it can reduce considered synthetically. Based on above three scenes
the experiment numbers greatly and can be possible to parametric analysis, we can draw a conclusion that ‘the
estimate the effect of these variables more precisely. pressure slope of inflator’ and ‘the porous property of fabric’
Simulations are accomplished in each case of table 3 and are sensitive to occupant neck injury, ‘the pressure peak of
table 4 using validated LS-DYNA simulation models, the 5th inflator’ is sensitive to occupant head and chest injuries. And
percentile female dummy seated in three postures: in-position, the predicted desirable direction for each design variable are
out-of-position 1 and out-of-position 2. According above as follows: the pressure peak of inflator should be chosen
orthogonal array experiment matrix, LD-DYNA simulations lower level, the pressure slope of inflator should be chosen
lower or medium level, the density and porous property of
are not required 3 × 34 times but only 27. fabric should be chosen medium or higher level.
Ⅴ. RESULTS AND ANALYSIS Effectiveness of NAB - Adjust the parameters of NAB to
the direction of design improvement according to above

106
parametric analysis, and a series of virtual tests were carried [3] Zhong, Z H and He, W. Sandwiched Tube-Type Airbag, Patent
CN200410046609.9, 2005.
out with 5th percentile female dummy and 50th percentile
[4] Raj Roychoudhury, Dana Sun, Mohamed Hamid , Craig Hanson. 5th
male dummy sitting on position 1 and position 2, 60 L normal Percentile Driver Out of Position Computer Simulation, SAE paper, No
DAB and 40 L NAB are used respectively, then total 8 2000-01-1006.
simulations were carried out. The purpose is to verify NAB’s [5] William Mu, Driver out-of-position injuries mitigation and advanced
restraint features development. ESV 17th Conference.
protective efficiency to different stature drivers.
[6] J Huang, Z Zhong, L Hu, and D Liu. Modeling and Simulation of
The normalized values with respect to percentages of Sandwiched Tube-Type Airbag and its Optimization using Design of
injuries caused by DAB are shown in figures 9. The recorded Experiments, Part D: J. Automobile Engineering, Proc. IMechE Vol. 221.
injury criteria include: 15ms HIC, 3 ms clip, chest deflection, [7] Seybok Lee, Soongu Hong. A Shape and Tether Study of Mid-Mounted
Passenger Airbag Cushion Using Design of Experiments. 9th
neck tension, neck compression and Nij. International MADYMO User's Meeting, Como,Italy . 10-
5th-OOP1 5th-OOP2 50th-OOP1 50th-OOP2 11th,October,2002 , page1-5.
[8] Neter, J., Wasserman, W., Kutner, M., Applied Linear Statistical Models:
1
STAB injury/DAB injury

0.9 Regression, Analysis of Variance, and Experimental Designs. Irwin


0.8 Publishing. Boston, MA, 1990. R. P. Van Zuydam. A driver’s steering aid
0.7 for an agricultural implement, based on an electronic map and real-time
0.6 kinematics DGPS, Computer and Electronics in Agriculture, 24(2005),
0.5
0.4 p153-163.
0.3
0.2 Hu Lin was born in Hunan province P.R.China on September 4,
0.1
0 1978.Hu Lin got doctor degree of mechanical engineering from
HIC15 3ms-Clip Chest-D Neck-T Neck-C Nij Hunan University in 2008, and focuses on the research of
Automotive Safety and Electronics. He has published 25 articles.
Fig.9 NAB Injury comparison with DAB (Corresponding author to provide mobile phone: 086-
It is seen that all the injury ratios are less than 1, which 15821431148 ;E-mail: hulin888@sohu.com )
indicate that the NAB could decrease the risk of OOP
occupant’s injury and provide better protection.
Ⅵ. CONCLUSION
Results from computer simulation and sled crash tests show
that the NAB system has good potential to provide effective
protection to occupants as the traditional airbag system would
do. At the same time, the NAB system would require less gas
for the airbag to take the same amount of space, the inflation
system can be made smaller and less expensive. At least two
advantages may be obtained. Firstly, the system can be
exploded more rapidly to take as much space as possible
between the occupant and the automobile interiors. Secondly,
the upper layer which would impact the occupant becomes
softer, which is desirable to avoid unexpected injuries to the
occupants.
Numerical results also indicate that the NAB system would
give less harm to the occupant if the ignition takes place
properly. However, the actual performance of the NAB system
in commercial product has to be examined with an actual
inflation system activated by a matched ignition system.
Nevertheless, the authors believe that the concept and
prototype of the NAB system is worthwhile to be exploited for
improvement of the airbag for occupant protection. Further
investigation will be performed subsequently to develop a new
airbag product.
REFERENCES
[1] M. U. Khan, M. Moatamedi, A review of airbag test and analysis.
International Journal of Crashworthiness, Volume 13, Issue 1 February
2008 , pages 67 – 76.
[2] Jörg Hoffmann, Michael Freisinger, Mike Blundell, Manoj Mahangare,
Peter Ritmeijer, Investigation Into the Effectiveness of Advanced Driver
Airbag Modules Designed for OOP Injury Mitigation. In: Proceedings of
the 20th International Technical Conference on the Enhanced Safety of
Vehicle, paper NO. 07-0319-O

107
2009 International Conference on Computer Engineering and Technology

Performance Evaluation of PNtMS: A Portable Network Traffic Monitoring


System on Embedded Linux Platform

Mostafijur Rahman, Zahereel Ishwar Abdul Khalib, R. B. Ahmad


School of Computer and Communication Engineering,
Universiti Malaysia Perlis,
P.O. Box 77, d/a Pejabat Pos Besar,
01007 Kangar, Perlis, Malaysia.
Email : mostafijur21@hotmail.com

Abstract— The principal role of embedded software is the developed to make efficent usage of the limited
transformation of data and the interaction with the resources.
physical world stimulus. The main concern in developing The Internet has been growing dramatically over the
embedded software for network application is the lack of past several years, in terms of the amount of traffic
published best practice software architecture for
usage as well as connectivity. With this rapid growth,
optimizing performance by means of reducing protocol
processing overhead, memory usage, and power the Internet is used for increasingly diverse and
consumption. This paper presents the implementation , demanding purposes, which lead to frequent changes in
operation and performance evaluation of the portable network status, yet raised performance is required.
network traffic monitoring system (PNtMS) on an Therefore, it is crucial to monitor the network, in order
embedded Linux platform. The system has been designed to understand the network behavior and to react
to capture network packets information from the network appropriately. Thus it will help us to design and provide
and performs some statistical analysis, which includes more efficient network for the future network. The
providing data on the volume and types of traffic principal work of network monitoring software includes
transferred within a LAN, traffic generated per node,
collecting data from the Internet or intranet and analysis
number of traffic going through or comming from a
system or application which is causing bottleneck, and the of those data. The common features of a network
level of peak traffic. These data are then stored into the log monitoring software includes, providing data on the
files, and the traffic information can be shown through volume and types of traffic transferred within a LAN,
web browser or onboard LCD. Result shows that PNtMS traffic generated per node, number of traffic going
is performing at par with an existing network protocol through or comming from a system or application which
analyzer with minimal usage of RAM ( 578 KB), low end is causing bottleneck, and the level of peak traffic [3].
processor (133MHz) and storage(less than 1GB). According to a survey, commercial Embedded Linux
owns approximately 50 percent more share of the new
Keywords- embedded linux; network monitoring; single
project market than either Microsoft or Wind River
board computer. Systems [4]. The Technology Systems (TS) [5] provides
Single Board Computer (SBC) with TSLinux operating
system(OS). It is built to develop applications for a very
small target that does not require a keyboard, video,
I. INTRODUCTION floppy disks, and hard drives. Linux is a multi-tasking,
Rapid growth of hardware technologies brings large multi-user, multi-processing operating system and
variety of smaller hardware architectures and platform purposely made for the required application and target
orientation that has been leading a large demand of hardware, and thus attempts to be the optimized form of
embedded software. So, programmers are focusing the kernel for a specified application. The primary goal
more and more on to developing software on embedded for this work is to see how TSLinux could cope with the
system to make it portable and platform independent. limitations inherent in a low end embedded platform in
The principal role of embedded software is the producing reliable embeddded traffic monitoring
transformation of data and the interaction with the system.
physical world [1]. Embedded softwares are marked The main problem of developing embedded
with the stamps as: timeliness, concurrency, liveness, software is inadequate software architecture and get
reactivity, and heterogeneity [2]. Because of the better performance in order to reduce protocol
resource limitation in terms of processing power, processing overhead, memory usage, and power
memory and power consumption, the PNtMS was consumption. In this paper, the design, implementation
and performance evaluation of the PNtMS into

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 108


DOI 10.1109/ICCET.2009.37
embedded system will be discussed. The system has data; the data transmission and data access is done by
been designed to capture network packets information TCP or UDP connection and web page respectively.
from a switch and perform some statistical analysis, This system is used to monitor river or beach, and large
then store into log files. The traffic information can be scale area such as in agricultural and environmental
shown through web browser or onboard LCD. fields. It can be used to read analog sensor such as for
The proposed work was to develop portable network sewer or septic early warning system.
monitoring and protocol analysis software into an
embedded Linux board. One of the main
requirements for this work was to write the code as III. TS-5400 SBC
generically as possible so that it could be ported to other The Technology Systems (TS) provides different types
Linux based SBC’s, like TS-5000 and TS-7000 serieses of Single Board Computer (SBC). Among the model
etc. The hardware platform setup and the device driver TS-5400 was choosen for this research, because of its
are expected to serve as a development platform for compatible architecture. The TS-5400 SBC runs on a
implementing a well designed PNtMS. AMD Elan520 processor at 133 MHz (approximately
10 times faster than 386EX based products) with
dimension 4.1" X 5.4". The processor AMD Elan520
II. RELATED WORK was designed with a memory management unit (MMU)
Nowadays researchers are focusing their research on that supports Linux and many other operating systems.
small devices. They overlook the size, weight, cost, It shows worst case interrupt latencies of under 7
interchangeability and consistency of the hardware and microseconds [10]. The core support is 32-bit
try to make it portable and reliable with better instruction set. The other features of TS-5400 are it is
performance. Numerous works have been done in the fanless with temperature range -20° to +70°C and
the embedded system area. power requirement 5V DC @ 800 mA. It has 16MB of
Work by Li and Chiang [6] proposed the high speed SDRAM, 2MB flash disk, dual 10/100 Mbps
implementation of a TCP/IP stack as a self-contained ethernet interface-autosense, compact flash (CF) card
component, which is independent of operating system interface as IDE0, matrix keypad interface on DIO2,
and hardware. For adapting TCP/IP stack as a self- alphanumeric LCD interface , 3 PC/AT standard serial
contained component for embedded systems, zero-copy ports with 16 Byte FIFOs support. As a general purpose
mechanism has been incorporated for reducing controller, it provides a standard set of peripherals [5].
protocol-processing overhead, memory usage and Here CF card in the socket appears as a hard drive to the
power consumption. In this mechanism, data from a operating system.
Network card is directly received in the user buffer and TSLinux and DOS being an embedded distribution
the data from the user buffer is directly sent to the OSs, are installed into (CF) and onboard chip
network card. respectively. The PNtMS was developed into TS-Linux.
The navigation system for an autonomous TSLinux is an open source project and compact
underwater vehicle using TS-7200 was developed by distribution based on GPL and GPL like licensed
Sonia thakur [7]. The objectives of the work were the applications and was developed from “Linux From
implementation of a driver for the external ADC and the Scratch” and Mandrake. Although TSLinux is fairly
GPS receiver on a Linux SBC and to demonstrate the generic, it is custom made to be used on a Technologic
use of such a setup in autonomous navigation system. System's Single Board Computer, and is unsupported in
Ahmad Nasir Che Rosli [8] implemented the face any other use [11]. The version of TSLinux is 3.07a.
reader for biometric identification using SBC (TS- For development, TSLinux providers provide
5500). In his research the system was able to capture development tools on their web site. The features of
face image, execute image preprocessing (such as color TSLinux includes, Glibc (V2.2.5), Kernel (V2.4.18 and
space conversion, motion analysis, grayscale 2.4.23), Apache web server with PHP, Telnet server and
modification and image scaling), and to perform client, FTP server and client, BASH, and other basic
biometric identification based on iris detection. It is utilities. The total footprint is less than 18 MB (requires
used for security purposes. 32 MB or larger CF card).
R. B. Ahmad and W. M. A. Mamat [9] implemented
a web-based data acquisition system using 32bit SBC
(TS-5500). In their research the system was able to take
analog reading through sensor and convert it into digital

109
IV. SOFTWARE DEVELOPMENT development, but it is not the only possible setup that
should work. The communication between the
A. Preliminary setup development host and the target hardware is shown in
In TS-5400, Keypad(4x4) and LCD panel(24x2) are Figure-1.
used as I/O device. In this system keypad driver module
needs to be mounted into the kernel module. Because of C. Operation of the system
this, a device driver file TSKeypad is created into the
/dev/SBC/ location. Here Tskeypad file is used for input
funtion. Again there are three ways to transfer file from Our focus is to reduce memory usage and CPU
desktop PC to TS-5400 using FTP, ZMODEM, and processing, as well as power consumption. To adapt
Secure copy. To activate FTP and secure copy , PNtMS components for resource-limited embedded
dropbear script is run as a deamon. To start program system, the pre-allocated memory are used rather than
automatically the network file is needed to be allocating them at run time if buffers are needed at
configured as DHCP for eth0 NIC. memory managemet. The functionality of the PNtMS
constitutes processing of TCP/IP network traffic with
respect to network protocol analysis and traffic
B. Development environment monitoring. Here the gathered packet headers were
It is usual practice for most embedded system analysed based on the header information at the TCP/IP
developments not to support onboard compilation. The protocol suit [13]. Figure 2 shows the components
cross platform compilation is the mechanism used to element of PNtMS.
develop the firmware. The same goes with the target
platform for this research, whereby the board requires
cross compilation for its application development. The
TSLinux 3.07a operating system running onboard does
not integrates a C compiler in its set of supported
utilities. Apart from that, since the kernel version of the
target OS (kernel 2.4.23) does not match the kernel
version of the development platform ( kernel 2.6.20-16).
The compatibility of the developed application has to
resort to chroot during the compilation to ensure with Figure 2. Component involve in the PNtMS
the C libraries.
The structural breakdown of the PNtMS can be
generically segregated into three parts which can be
mapped into different layers of the OS. The first part is
probe, that has to do with capturing all incoming
packets from the Network. This part operates at the
network layer and captures data physically through the
Network Interface Card ( NIC ). This functionality is
realized through the usage of libpcap library package
[14]. Basically, this part forces the NIC to run in
promiscous mode.
The probe itself doesn’t process packet header at all,
but transfers packets to storage without any packet
loss.[15] The next layer (kernel layer) contains the
functionality for data acquisition and places the data
Figure 1. Embedded Linux development host and target system into a special memory region (called kernel buffer) to
interconnection setup [12]
be read and used by a seperate user-application program
(third layer). The packet filter extracts each packet
On the host machine, minicom (a text-based modem
header information and stores into data buffer for
control and terminal emulation program for Unix-like
further analysis. After a while analyzer analyzes all
operating system) is used to communicate with the
captured data. In the analyzer part, the available hosts
target embedded system through serial port. This
are selected and updated their information. Then host
particular setup is common in embedded linux

110
information are sorted according to their total capture inputed time interval, packets are captured then
bytes. The maximum 31000 packets can be captured analyzed and displayed. Keypad can control the
and more than 200 hosts information can be stored in program such as start and stop , and control the system
every interval. All of these are performed because of such as restart and shutdown. Some system information
memory limitation. After analysis, all hosts information also can be shown through LCD panel; such as system
is saved into a file for monitoring through a web IP, memory and CPU usage, and browsable web address
browser. Some statistical data are shown through 24x2 that shows total traffic information. The browser was
LCD panel. The System is controlled by 4x4 matrix developed using HTML and PHP code. Some special
keypad. Figure 3 shows option are set through the web browser; such as options
to shutdown and restart the system. Also we can see
ethernet status, process status, disk usage, memory
usage through the web browser. Figure 4 and 5 show
some statistical information of the available traffics and
hosts.

Figure 3. The complete System Setup

Figure 5. Web based individual host statistics into TS-5400

V. RESULT AND PERFORMANCE EVALUATION


This section presents the results and performance
evaluation of PNtMS after being integrated into
TSLinux OS and Wireshark (V0.99.4). Table 1 shows
the experimental platform that we used to evaluate the
software. We compared our embedded software with
Wireshark because it is renown. In this, the traffic
measurement and the analysis were carried out at
Embedded Kluster Lab, University Malaysia Perlis. The
Figure 4. Web based traffic statistics into TS-5400
experimnt assumes that the traffic is typical Internet
traffic, and the characteristics of the analysis results can
the complete system setup of PNtMS with TS-5400. In be applied to the whole Internet.
this system, keypad is used to set input data such as The PNtMS program is used to capture packets and
bandwidth(Kbps) and time interval. If the original
store into a buffer to analyze. Each packet and available
bandwidth is greater than inputed one, alarm is host size limits ares set at 94 and 66 bytes respectively.
displayed into LCD, when the traffic is peak. Within the We tried to use limited memory and display traffic

111
information as possible as we can. On the other hand, in All packet headers of the packets transferred on the
Wireshark, each packet size limit is 65535 bytes, so it network during a 1 h period on September 15, 16, 17
can store more information about a packet. Eventhough and 23, 2008 were captured from the same network.
wireshark is high performance protocol analyzer with The duration was rather short, but we did several
more features we want to evaluate the performance of experiments at different times and the results showed
PNtMS with it. very similar traffic characteristics.

Table 1. Exprimental Platform


TS-5400 PC
Architechture AMD Elan520 at 133 MHz Intel(R) Pentium(R)4 CPU 2.66 GHz
processor, 16MB RAM (Avg. Processor, 256MB RAM, 80GB secondary
14.23MB already used), 1GB storage
secondary storage
Type Embedded SBC Desktop PC
Dimention 4.1" x 5.4" Larger than TS-5400
Weight and portability Less than 1 Kg. and portable More than 1 Kg. and not portable
OS TS-Linux 3.07a UBUNTU 7.04
Linux Kernel 2.4.23 2.6.20-16-generic
NIC 10/100 Ethernet Realtek RTL8139 Family PCI Fast Ethernet
I/O interface Keypad (4X4) and LCD(24X2) Keyboard and Monitor

Table2. Performance Comparison


TS-5400 PC
Software Name PNtMS Wireshark (0.99.4)
Compiled With gcc (2.95) , libpcap GTK+ 2.10.11, Glib 2.12.11, libpcap
0.9.5 in development 0.9.5, libz 1.2.3, libpcre 6.7, ADNS,
environment GnuTLS 1.4.4, Gcrypt 1.2.3, Port Audio
<=V18, gcc 4.1.2
Execution Type Sequential Sequential
Avg. CPU Usage (%) 0.725 3.150
Avg. RAM Usage (%) 4.175 14.675
Avg. Packets/Sec. 7.347 6.661
Avg Packet size 470.883 439.958
Avg. Data Rate 3.378 KBps 2.862 KBps

a) Network Layer Protocol b) Transport Layer Protocol c) Application Layer Protocol

Figure 6. Different layers protocols statistics.

Figure 6 clearly demonstrate that the PNtMS can capture takes place through TCP protocol. A small number of
three types of network traffics and protocols capture state ICMP(62 packets) packets are also captured and put into the
using the percentage. In the Figure 3b percentage of overall statistics. At the same time Wireshark captured
TCP(65%) traffic dominates as majority of communication network and transport layer protocol such as, IP(76.88%),

112
ICMP(0.26%), TCP(59.69%) and UDP(15.97%); services Hardware Architecture and Software Development," in
such as, DNS(0.83%), Netbios(11.74%), SSH(17.90%) and Proceeding of the 2nd International Conference on
HTTP(25.96%). This is only the glimps of what PNtMS Informatics, Petaling Jaya, Selangor, Malaysia, 2007.
presents while performing the protocol analysis. From the [10] M. Breinich, "Online book on real-time simulation of a
satellite link using a standard PC running Linux as operating
analysis we can conclude that PNtMS is successfully
system,” Salzburg, Austria, 2002.
developed into limited usable memory ( 578 KB), processor [11] Technologic System Inc., "Technologic System Web Page,"
and storage. 2008.
[12] C. Hallinan Embedded Linux Primer: A Practical Real-
World Approach. New York: Prentice Hall PTR, 2007.
VI. CONCLUSION [13] D. C., Lynch, and M. T. Rose, Internet System Handbook.
Network performance measurement is an important Reading, MA, USA: Addison-Wesley, 1993.
aspect of network management. In this article, we compared [14] V. Jacobson, C. Leres, and S. McCanne, "Tcpdump," in
Manual Page, 1997.
and analyzed PNtMS with desktop base high performance
[15] T. Kushida, "An empirical study of the characteristics of
network analyzer (Wireshark). Our work focuses on how to Internet traffic," Computer Communications, vol. 22, pp.
obtain better performance by using limited resources on TS- 1607-1618, 1999.
5400 and show more statistical analysis result and make
PNtMS user friendly. From the result we can conclude
about the evaluation and validation of the PNtMS through
the implementation and protocol analysis. The challenging
future work is to use database into CF(1GB) for monitoring
long term traffic history. The most challenging future work
is to extend PNtMS so that it can be used to monitor and
analyze switched network such as fast ethernet and gigabit
ethernet and make it to perform better.

REFERENCES

[1] L. Xuejian, Y. Jing, and W. Minghui, "A heterogeneous


evolutional architecture for embedded software," in
Computer and Information Technology, 2005. CIT 2005. The
Fifth International Conference on, 2005, pp. 901-905.
[2] E. A. Lee, "Embedded Software " in Advances in Computers,
Current ed. vol. 56 M. Zelkowitz, Ed. London: Academic
Press, 2002
[3] J. W. K. Hong, S. S. Kwon, and J. Y. Kim, "WebTrafMon:
Web-based Internet/Intranet network traffic monitoring and
analysis system," Computer Communications, vol. 22, pp.
1333-1342, 1999.
[4] D. Geer, "Survey: Embedded Linux Ahead of the Pack,"
Distributed Systems Online, vol. 5, pp. 1-6, October 2004.
[5] TS Product, "Technologies Systems , PC/104 Single Board
Computers and Peripherals for Embedded Systems.
[6] L. Yun-Chen and C. Mei-Ling, "LyraNET: a zero-copy
TCP/IP protocol stack for embedded operating systems," in
Embedded and Real-Time Computing Systems and
Applications, 2005. Proceedings. 11th IEEE International
Conference on, 2005, pp. 123-128.
[7] S. Thakur and J. M. Conrad, "An embedded Linux based
navigation system for an autonomous underwater vehicle," in
SoutheastCon, 2007. Proceedings. IEEE, 2007, pp. 237-242.
[8] A. N. C. Rosli, A. Y. M. Shakaff, R. B. Ahmad, M. Rizon,
and W. M. A. Mamat, "Face Reader for Biometric
Identification using Single Board Computer and
GNU/Linux," in International Conference on Robotics,
Vision, Information, and Signal Processing, Penang,
Malaysia, 2007.
[9] W. M. A. Mamat, R. B. Ahmad, and M. R. M. Juhari, "Data
Acquisition System Using 32 Bit Single Board Computer:

113
2009 International Conference on Computer Engineering and Technology

PB-GPCT

A Platform-Based configuration tool

Yan huiqiang, Tan runhua, Shi kangyun, Lu fei


Institute of Design for Innovation, Hebei University of Technology, TianJin, China
E-mail: yanhuiqiang@ scse.hebut.edu.cn

Abstract design methods is to distinguish between module based


and scale based platform[4]. For brevity, the design
In this paper, the Platform-based generic product approach of platform is not discussed in this paper. The
configuration tool(PB-GPCT) is presented which is relationship between product families and platform is
developed by Institute of Design for Innovation, Hebei showed in Figure 1. In terms of customer’s
University of Technology. The PB-GPCT is designed to requirements, firstly, platform is determined; then
be used by sales engineers for the configuration of different products are derived by selecting different
complex products, so that customers can get components which obey the constraints among
customized products in tolerable time. Comparing with platforms and components.
other configurators, platform is introduced into PB- Platform 1
Product family
GPCT. Being a structure-based and domain Component 1
Component 2 Product 1
independent system, the PB-GPCT can be used in Platform 2
User requirements

Component 3 Product 2
different companies without doing any modification. In Component 4 Product 3
Platform 3
order to achieve this goal, knowledge-based
configuration methods are employed. The Component n
Platform m
configuration model, Configuration knowledge and
configuration constraints are discussed in this paper. Constraints
Product n

1. Introduction Figure 1. Relationship between platform and


product family
With the competitiveness become more and more Mittal & Frayman defines configuration as a form
violent in industries, companies have to support Mass of design, which selects assembly of components from
Customization to keep low cost and meet individual a set of pre-defined components to meet customer’s
requirements at the same time. Product families design requirements[5]. Configuration is described as selecting
is the most important method to implement Mass objects and their relations from a set of objects and a
Customization. Product families design usually is set of relations according to customer’s requirements
based on platform. Meyer and Lehnerd define a [6]
. Both definitions emphasize product is composed of
platform as a “set of common components, modules, or components and relationship among components;
parts from which a stream of derivative products can configuration is choosing components from a set of
be efficiently created and launched” [1]. Muffato pre-defined components to construct the products.
defines platform similarly as: “a relatively large set of Corresponding to these definitions, a product
product components that are physically connected as a configuration is defined as a tool which supports the
stable sub-assembly and are common to different final product configuration process so that all the design and
models” [2].So that the platform is the components and configuration rules which are expressed in a product
the constraints among them from which different configuration model are guaranteed to be satisfied [7].
products can be derived. There are several methods for Configuration model is the product model which is
designing a platform. Simpson et al. give two types of scoped within the conceptualization of configuration
platform design methods: (1) top-down and (2) domain. The configuration model is defined as set of
bottom-up [3]. Another way of categorizing platform pre-designed components, rules on how these can be

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 114


DOI 10.1109/ICCET.2009.20
combined into valid product variants and rules on how instance. Virtual component and physical components
to achieve the desired functions for a customer [8]. But all have component instance associated with it.
from viewpoint of product family design, it is different However, the properties of physical component are
as stated above. To this end, platform-based given by product experts before configuration, the
configuration is introduced into PB-GPCT. properties of virtual component are assigned by sales
This paper is organized into 4 sections. In section 1, engineers at the configuration phase.
the concept of platform-based configuration is
introduced. In section 2, the technique relevant to
configuration is discussed. In section 3, the
maintenance and analysis of constraints is presented.
Lastly, the implementation of PB-GPCT and future
works is discussed.

2. Configuration model

2.1. Configuration model definition

PB-GPCT defines the configuration model (CM) as:


CM = ({P1,…Pm}, {C1,…Cn},{R1,…Rs}). Ci is the
element of the product model which is called
component type; Pi is platform which is composed of Figure 2. Part of configuration model of
component instances and component types; Ri is configurable pc
constraints among platforms and component types. Relations. The taxonomies of relations are Part-of
Corresponding to this, configuration defines as: and Is-a. ComponentA part-of componentB means that
Solution space= f(CMi,{R1,…Rn}). CMi is the componentB is part of componentA, e.g. CPU,
configuration model which the platform has been VideoCard and HD-Unit are parts of MotherBoard.
designated in term of customer’s requirements. ComponentB Is-a componentA means that
Namely, configuration is the process to instantiate componentB is a kind of componentA, e.g. IDE-Unit
configuration model. and SCSI-Unit are two kinds of HD-Unit.
Rules. Rules not only include the constraints among
2.2. Configuration model representation component types, but also include the constraints
among component instances. The taxonomies of
UML (Unified Modeling Language) is the leading constraints are unary, binary, global and incrementally
industrial object-oriented modeling language for constraints [9].
software engineering. It is also widely accepted to Platform. Platform consists of common elements
describe product model, so that PB-GPCT selects from which a range of products can be derived. For a
UML to describe configuration model. OCL (Object configurable PC, the platform elements are
Constraint Language) is a formal language used to MotherBoard and CPU. Sales engineer first selects
describe expressions on UML models. CCL platform (determine the MotherBoard and CPU)
(Configuration Constraint Language) is based on OCL according to customers requirements, then based on the
which is used to describe the constraints of the platform other components are chosen.
configuration model. Part of configuration model of
configurable PC expressed by UML and CCL is 2.3. The taxonomies of Configuration
showed in Figure 2. The configuration model is knowledge
composed of components, relations among components
and rules represented by CCL. Being knowledge extensive system, knowledge
Component type. There are two kinds of representation is critical to configuration tool.
component types. One is virtual component which does Configuration tasks are summarized to have the
not have a physical correspondence, e.g. HD-Unit and following characteristics [10]:
CPU. The other is physical component which typically (1) A set of components in the application domain.
has a bill-of-material associated with it, e.g. VideoCard (2) A set of relations between the domain
and MotherBoard. components.
Component instance. When all the properties of (3) Control knowledge about the configuration
component are given values, we call it Component process.

115
3. Configuration constraints
How to write and evaluate constraints is core of PB-
GPCT. Maintenance and valuation of constraints is
show by Figure 5.

Figure 3. Configuration knowledge

Corresponding to this viewpoint, the configuration


knowledge is categorized into component knowledge,
Figure 5. Maintenance and valuation of
constraint knowledge and control knowledge.
However, as stated above, PB-GPCT is different from constraints
this view. The Configuration knowledge of PB-GPCT
is showed in Figure 3. 3.1. Edit constraints
Component knowledge. It is the element of
product, which describes product architecture utilizing The Object Constraint Language (OCL) is an
UML. expression language based on first-order logic which
Constraint knowledge. It describes the rules enables the definition of constraints on object-oriented
among components types utilizing CCL. models. However, writing constraint expressions in
Component Instance knowledge. Component OCL is an error prone task. CCL is sub collection of
Instance is component type which is instantiated by OCL which can be written easily using the edit
product experts. In general, component instance is windows showed in Figure 6.
mass-produced component.
Platform knowledge. It is the sub collection of
component instances from which individual products
can be derived.
Control knowledge. It is used to control the
process of configuration. In terms of configuration
policy, different control knowledge will be required.
According to Figure 3, all the knowledge is
managed by product experts except for control
knowledge . The main tables which stores
Configuration knowledge are showed in Figure 4.

Figure 6. CCL constraint edit windows

The following are two constraint examples in


Figure 2.
Constraint1:MotherBoard.port = CPU.port
Constraint2:MotherBoard.port = HD-Unit.port
Comparing with OCL, the following grammars of
OCL[11] are not supported by CCL.
Let Expressions. The let expression allows one to
define a variable that can be used in the constraint.
Figure 4. Main tables storing configuration Tuples. A tuple consists of named parts, each of
knowledge base which can have a distinct type.

116
Messages. It is used to specify the communication 4. Implementation
between classes.
For brevity, the detail of CCL is not discussed in The configurator PB-GPCT employs the popular
this paper. language C#, which is more efficient than java; and
uses SQL server 2000 as the Database. The main GUI
3.2. Constraint patterns is showed in Figure 7. In order to support extensibility
and upgradeability, Plug-in architectures are employed,
Writing constraint expressions is a time-consuming since plug-in architectures can quickly customize
task, though users can do it flexible using edit window applications by mixing and matching the plug-ins, or
showed in Figure 7. To address these issues, PB-GPCT write new plug-ins for missing functions. Constraints
constraint patterns provides a repository of constraint analysis and constraints evaluation are main plug-in
patterns that encapsulate the expertise needed to easily component of the system.
and quickly add constraints to a model. Constraint
patterns are predefined constraint expressions that can
be instantiated and subsequently configured for
developing constraints in a concise way. The
taxonomies of constraint patterns are Atomic
Constraint Patterns and Composite Constraint
Patterns[12]. The following patterns are supported now.
(1) AttributeValueRestriction pattern.
(2) UniqueAttributeValue pattern.
(3) Exists pattern.
(4) ForAll pattern.
(5) IfThenElse pattern.

3.3. Analysis of constraints Figure 7. The system of PB-GPCT

After finish inputting the constraints, PB-GPCT has


to ensure the form of the constraints is correct through 5. Conclusions and Future works
Lexical analysis and Syntactic analysis.
In this paper, the theory of PB-GPCT is presented.
(1) Lexical analysis. It distinguishes between the
It has been applied to TIANJIN NO. 2 MACHINE
identifiers and the keywords of CCL. Let Expressions
TOOL CO., LTD. Using this software, the average
is not supported by CCL, so that the identifiers are designing time has been declined from more than one
component type names, component instance names and month to about one week.
the properties of the component types. The result of However, there will be numerous constraints for
this process is a sequence of the tokens which will be complicated products in configuration model.
the input of the Syntactic analysis. Consequently, contradictory constraints may be
(2) Syntactic analysis. The task of syntactic analysis defined inadvertently. A future extension might
is to determine whether constraint expressions are support constraint consistency check.
correct input by user. PB-GPCT employed the LL (1) Another task for the future will be support 3-D
[13]
approach to do the analysis because Left recursive configurations which make WYSIWYG(What You See
and Backtracking do not exist in the grammars of CCL. Is What You Get) feasible in the system.

3.4. Valuation of constrains 6. Acknowledgment


At configuration phase, PB-GPCT has to evaluate It is a project supported by Natural science in
the configuration items, which selected by user, to Tianjin City (07JCZDJC08900) and National Natural
ensure to be consistent with constraints. In order to Science Foundation of China (50675059).
realize this function, constraints are transformed into
first logic sentence [14]at the first step; then the first 7. References
logic sentence is transformed into specific language to
execute to evaluate the constrains. [1] Meyer, M. H. & Lehnerd, A. P. The power of product
platforms. The Free Press. 2000. New York, NY. ISBN 0-
648-82580-5.

117
MATADOR Conference, D.R. Hayhurst (ed.) Springer-
[2] Muffato, M. Introducing a platform strategy in product Verlag, July 2000 93-98.
development. International . 60-61. pp. 145-153. 1999.
Journal of Production Economics. [9] Ander Altuna, Alvaro Cabrerizo. “Co-operative and
Distributed Configuration”. NOD 2004 September 27-30
[3] Simpson, T., Maier, J., & Mistree, F. Product platform 2004 Erfurt, Germany.
design: method and application. Research in Engineering
Design. vol. 13. No. 1. pp. 2-22. 2001. [10] A.GuenterandC.Kuehn. “Knowledge-Based Configurati
on-Survey and Future Directions”. In XPS-99 Proceedings,
[4] Simpson, T.W. Product platform design and Lecture Notes in Artificial Intelligence No.1570,Springer-
customization: Status and promise. AIESAM, Special issue: Verlag, Wuerzburg, 1999.
Platform product development for mass customization. Vol
10. No. 1. Jan 2004. [11] OMG. Object Constraint Language Specification 2006.

[5] Mittal, S. & Frayman, F. (1989). Towards a generic [12] M. Wahler, J. Koehler, and A. D. Brucker. Model-
model of configuration tasks. In the 11th IJCAI, pages 1395- Driven Constraint Engineering. Electronic Communications
1401, San Mateo, CA, Morgan Kaufman. of the EASST, 5, 2007.

[6] A.GuenterandC.Kuehn. “Knowledge-Based Configurati [13] Chen ying.Principle of Compilation. 2006.Beijing.


on-Survey and Future Directions”. In XPS-99 Proceedings,
Lecture Notes in Artificial Intelligence No.1570,Springer- [14] A. Felfernig, G. Friedrich, and D. Jannach. Generating
Verlag, Wuerzburg, 1999. product configuration knowledg Internationa bases from
precise domain extended UML models. In Proceedings of the
[7] Görel Hedin, Lennart Ohlsson, John McKenna.In Conference on Software Engineering and Knowledge
Proceedings of the 8th International Symposium on System Engineering (SEKE’2000), pages284-293, Chicago,USA,
Configuration Management (SCM-8), Brussels,July20-21, 2000.
1998. LNCS-1439, pp 107-126, Springer-Verlag.

[8] K. OLDHAM, “Modelling Knowledge used in the Design


of Hosiery Machines”. Proceedings 33 International

118
2009 International Conference on Computer Engineering and Technology

A feasibility study on hyperblock-based aggressive speculative execution model

Ming Cong, Hong An, Yongqing Ren, Canming Zhao, Jun Zhang
Department of Computer Science and Technology Key Laboratory of Computer System and Architecture
University of Science and Technology of China Chinese Academy of Sciences
Hefei, 230027, China Beijing, 100080, China
mcong@mail.ustc.edu.cn, han@ustc.edu.cn, {renyq, zcm, junzh}@mail.ustc.edu.cn

Abstract—Speculation execution model which executes sequential blocks simultaneously on the processor substrate, with all but
programs in parallel through speculation is an effective technique one executing speculatively. It’s obvious that the feasibility
for making better use of growing on-chip resources and exploiting of aggressive execution model depends largely on the
more instruction-level parallelism of applications. However, effectivity and prediction accuracy of speculation. However,
accompanied high communication overheads and roll-back as speculation in high-ILP processors become more
penalties can not be neglected. This paper focuses on analyzing the aggressive, the number of mis-speculation increases with
feasibility of aggressive speculation execution model and finding growing numbers of inflight instructions/ blocks. Although
an appropriate degree of “aggressiveness” under hyperblock- many mechanisms have been proposed for speculative
based execution model. We analyze the characteristic of control
execution, efficiency is still limited because of mis-
dependences and data dependences between adjacent hyperblocks,
and propose a quantitative analysis method to detect data
speculation penalties, high communication overheads and etc.
dependences on hyperblock-based execution model, and then This paper focuses on the analysis of hyperblock-based
evaluate the feasibility of aggressive speculative execution model aggressive execution model. We concentrate on finding a
on 8 applications from SPEC2K. Our experiments show most tradeoff and maximum potential of aggressive execution that
applications can get high prediction accuracy on control-flow from can be exploited, and analyze dependent behaviors of
hyperblock-based prediction mechanisms, especially SPECFP. applications under this model. At the aspect of control-flow,
Furthermore, we analyze factors which impact expected prediction we evaluate performance of three branch predictors, and
depth and find depth depends more on application than predictors. estimate the expected prediction depth, and then analyze the
effecting factors of aggressive speculation with control-flow.
Keywords-hyperblock; speculative execution; prediction; In the view of data-flow, we propose a quantitative analysis
control dependence; data dependence of data dependence on hyperblock-based execution model,
and analyze the distributions of data dependences between
I. INTRODUCTION hyperblocks and their impacts on the depth of prediction.
We evaluate the feasibility of aggressive speculative
Modern CMOS technology brings the increasing number execution model on 8 applications from SPEC2K. Our
of transistors on one chip, so how to effectively utilize the experiments show that most applications have good
growing resources and exploit more parallelism to accelerate predictability, and high prediction accuracy on control-flow
applications is an urgent problem for computer architects. can be gained by using hyperblock-based branch prediction
However, to expose potential of instruction-level parallelism mechanisms, especially SPECFP applications. Furthermore,
(ILP), control-flow and data-flow constraints inherent in a we analyze factors which impact expected prediction depth,
program must be overcome. Speculative execution [1] which and find that it depends more on applications themselves
executes programs aggressively has become a mainstream than predictors, and expected prediction depth differs
technique to reduce the impacts of dependences in high depending on the characteristics of each application.
performance microprocessors. The rest of this paper is organized as follows. Section II
The block-based execution model [4] has been proposed describes the aggressive execution model in detail, and
to enlarge the instruction window, which may achieve high analyzes it in the aspects of both control dependences and
ILP and high resource utilization. Recent works on data dependences. Section III experimentally evaluates and
computer architectures, such as TRIPS and Multiscalar, use analyzes the feasibility of aggressive execution, which
block-atomic(tasks in Multiscalar [4]) execution, in which corresponds to the part in section II. Section IV introduces
each block is fetched, executed, and committed atomically, related works on aggressive execution models. Finally in
behave like a conventional processor with sequential section V we make our conclusions.
semantics at the block level. A hyperblock [2][3] is a set of
predicated basic blocks combined by compiler in which II. HYPERBLOCK-BASED AGGRESSIVE EXECUTION
control flow only enters from the top, but may exit from one MODEL
or more locations. With hyperblock, larger instruction
window and more ILP can be achieved than basic block. Current researches of ILP processors focus on exposing
Similar to the multi-issue in superscalar, block-based more inherent parallelism in an application to obtain higher
execution model utilizes additional resources to execute more performance. To effectively exploit ILP in programs, the

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 119


DOI 10.1109/ICCET.2009.30
dependences between instructions need to be detected and the accuracy of prediction, we use two HRT, one for
avoided to prevent pipeline stalls, among which control updating the prediction information, the other for recovering.
dependence and data dependence are of the most importance. Local predictor: Local branch predictor keeps two tables.
One is a local BHT indexed by the low-order bits of each
A. Speculation execution on the control-flow branch instruction’s address; it records T/NT history of N
1) Differences between hyperblock branch predictor most recent executions of each branch, which is different
and conventional predictor from global predictor. The other is a PHT indexed by the
Branch predictions are made based on branch history generated value from the branch history in BHT. Local
information, so that the accuracy of predictors depends on prediction is slower than global prediction because it requires
the frequency of historical representation of previous branch two subsequent table lookups for each prediction, but it may
target address. Branch predictions in hyperblock-based be favorable for deep prediction of a certain local branch.
model have high parallelism, but their mechanisms are much Tournament predictor: Since different branches may be
different with those in conventional superscalar processors predicted better with either local or global techniques,
from following aspects. tournament predictor uses a choice predictor to dynamically
First, in superscalar model, each branch has only one exit select the best method between two prediction for each
so that one bit of exit information is enough for representing branch, it is nearly as accurate as local predictor, and almost
taken or not taken (T/NT); while in block-based model, each as fast as global predictor. The choice prediction is made
block has several exit points, predicting the exit taken out of from the table of 2-bit prediction counters indexed by path
multiple possible exits is a multi-way branching problem, history; processor trains counters to prefer the correct
some bits of exit ID or target address of the branch should be prediction whenever the local and global predictions differ.
reserved as the exit information. b) Block target address prediction
Secondly, dedicated adder in the fetch mechanism and Block branch target address determined by the exit
branch target buffer (BTB) of RISC architectures can be instruction is the starting block address of next task. After
used to compute PC relative target addresses before they are the exit is predicted, we use both predicted exit and branch
computed by ALU(s) in execution stage; but in hyperblock- address to determine the target. Conventional methods
based model, the variable block sizes and different target usually use BTB and RAS, in which BTB handles prediction
addresses which exit may correspond to force us to predict of branch and call exit, RAS predicts address of return exits
target addresses of all exit point. with known types of each exit, this will certainly degrade
Thirdly, A return address stack (RAS) used for return prediction accuracy and increase its complexity. So we only
address prediction makes it more accurate, and the type of use BTB for the prediction, which is easy and versatile.
branch instruction can be easily got from a pre-decoder in
RISC architectures, but the type of exit points in blocks is
hard to get before block committing. So we need a
mechanism to predict the type of exit points.
2) Design space of hyperblock-based branch predictors
In this section we describe the design space of
hyperblock-based branch predictors in detail. Based on
conventional branch predictors and the characteristics of
hyperblocks, we consider a two-level predictor [5] which Figure 2. Structure of the BTB
predicts the first branch that will be taken in a hyperblock.
As shown in Figure 1, the first level predicts the exit point, As shown in Figure 2, each item of BTB maintains target
and then the second level produces the branch target address. addresses of several exit and hysteresis bits, indexed by the
block address and exit ID which was predicted by branch
predictor, to obtain the Block Target Address.
3) Evaluation of three branch predictors
In this section we evaluate prediction accuracy of exit
predictors with block target address predictor presented
Figure 1. 2-level hyperblock-based branch predictors
previously on 8 benchmarks from SPEC2000. Both Global
predictor and Local predictor are configured to be 16384
a) Exit predictor: Corresponding to branch behaviors
96%
of conventional branch predictors, the predictors for exit [7] 94%
can be organized around following methods. 92%
Prediction Accuracy

90%
Global predictor: Global predictor indexes the table of 88% Global
86% Local
bimodal counters with the recent global history integrated 84% Tournament
with branch instruction addresses to get branch behavior. In 82%
hyperblock-based model, we replace the T/NT stored in 80%
78%
Pattern History Table (PHT) with exit numbers of each 76%
block; branch behaviors in History Register Table (HRT) are ammp art bzip equake gzip mcf vortex parser

also replaced by recent exit history of blocks. In addition, for Figure 3. prediction accuracy of three branch predictors

120
Branch Predictor with Global-Predictor Branch Predictor with Local-Predictor Branch Predictor with Tournament-Predictor
100%
f

100% 100%

f
90% 90% 90% ammp
Prediction Accuracy

Prediction Accuracy

Prediction Accuracy
80% 80% 80% art
70% 70% 70% bzip
60% 60% 60% equake
50% 50% 50% gzip
40% 40% 40%
mcf
30% 30% 30%
20% 20% 20% vortex
10% 10% 10% parser
0% 0% 0%
1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 6 7
Prediction Depth Prediction Depth Prediction Depth
(a) (b) (c)
Figure 4. Prediction accuracy of different branch predictor

entries, Tournament predictor contains 8192 entries for both


global and local predictor; The BTB has 1024 entries. III. EXPERIMENTAL EVALUATION
From Figure 3, it is clear that global predictor performs
better than local predictor on art, bzip, gzip and mcf in which A. Methodology
global histories is predominant; but equake and vortex on Our experiments are performed on the TRIPS toolchain
which local histories have more impact perform better with which supports hyperblock-based multi-level speculation.
the local predictor. The tournament predictor takes full TRIPS is a block-atomic execution model, the size of
advantage of global and local histories, achieves better instruction window can reach up to 1024 by speculation. It
performance than both of them. contains compiler (Scale [3]), functional simulator tsim_arch
and cycle-accurate simulator tsim_proc [6]. Tsim_proc can
B. Speculative execution on the Data-flow generate trace files containing all events of the simulating
Data dependence is an important factor that influences process. Although our experiments are based on TRIPS, our
effectivity of multi-level speculative execution. In this research is not limited to this architecture but aims at all
section, we conduct a quantitative analysis of data current hyperblock-based execution models. We use 8 whole
dependence on hyperblock-based execution model, and benchmarks written in C from SPEC2000 benchmark suite,
analyze its impact on the depth of prediction. To be able to including 3 float point benchmarks: art, ammp, equake, and
obtain benefits from data speculation, we must execute 5 integer benchmarks: gzip, mcf, parser, vortex, bzip2.
instruction streams correctly, so we make two assumptions
before the analysis: (1) A perfect branch predictor is B. The Speculative execution on control dependence
assumed. (2) No complexity of hardware implementation is between hyperblocks
taken into accounts. These assumptions would not affect the Large instruction window is built to issue more
analysis of the natural characteristic of programs. independent instructions per cycle, but the effective size of
The dependent relation between instructions in traditional instruction window is limited by the depth of control-flow
processors can be described by dependence-distance (the speculation, so we evaluate the feasibility of predicting more
number of instructions between data producers and aggressively and analyze the appropriate depth of prediction.
consumers); but it is no longer applicable for measuring First, we evaluate prediction accuracy with different
hyperblock-based model, because different impacts of prediction depths; then we depict the depth distribution and
instructions on separating producer and consumer, and predictability for all applications; finally, we analyze the
instructions in the same block can execute in parallel. expected prediction depth of different applications based on
instructions distribution, which can help us adopt appropriate

Dependence depeth = ∑ Pi × i (1) prediction depth while studying aggressive execution model,
and we analyze impacts of expected prediction depth on
i =1
different predictors and configurations.
We define the term “Dependence depth” to measure the 1) Evaluate predictors with certain prediction depth
degree of dependences between blocks. There i denotes the We evaluate prediction accuracy of global and local
distance from current block; Pi denotes the proportion of predictors with certain prediction depths (range from 1~7),
instructions which have dependence with instructions in the as in figure 4, the prediction accuracy decreases while
previous ith block to the total number of instructions within prediction depth increases, but the depressive gradient slows
current block. Dependence depth describes the dependence down with deeper depths, and most applications still keep a
strength between blocks. The larger dependence depth means high prediction accuracy even the prediction depth is up to 7.
the weaker dependent strength, so that we can exploit more This demonstrates deeper prediction is feasible to most
parallelism from inter-blocks. And it is proportional to the applications. Global and local predictor both have strengths
potential depth of speculated execution, which means on different types of applications with small depths, but local
programs could benefit from speculating more blocks predictor performs better with the increase of depth, which
according to larger dependence depth. indicates that it is more powerful for deeper speculative
execution. Tournament predictor performs best as it can
adapt to pattern of applications with both previous predictors.

121
100%

Instructions distribution in blocks


40
90%
35
Proportions of blocks

80%
70% 30
60% >10 25 rd_reg insts
50% 6~10
load insts
20
40% 2~5
15 normal insts
30% 0~1
20% 10
10% 5
0%
0
ammp art bzip equake gzip mcf vortex parser
mcf gzip vortex bzip2 parser art ammp equake
Figure 5. Proportion of blocks VS. prediction depth
Figure 8. Numbers of dependence instructions

2) Distribution of Prediction depth on blocks Figure 7 describes the expected prediction depth with
We introduce a quantitative method for denoting the tournament predictor which is configured with 16x the size
potential of deep prediction of distinct applications of old PHT. From the results, we can see configurations of
intuitively. We predict each block with unbounded depths predictors have less impact on the expected prediction depth.
until the prediction cannot continue; thus each application In most applications, low prediction accuracy is not made by
can be divided into several block sequences with various the conflict on PHT, but comes from the characteristic of
block numbers. According to a statistical analysis of applications, we should consider more improvements on the
different prediction depths among various sequences, we can predictors in order to better adapt to patterns of applications.
estimate the potential of deep prediction for applications.
Figure 5 illustrates the proportion of blocks that predicted C. The Speculative execution on Data dependence
with different prediction depths (0~1, 2~5, 6~10, 10~∞) on 1) Numbers of dependent instructions in applications
tournament predictor, among which the depth 0 indicates Data dependence between hyperblocks arises from the
blocks cannot be predicted. Vortex, art and ammp have high load or register-read instructions (dependent instructions).
proportions with deeper prediction depth; bzip and gzip are Figure 8 presents a statistic of the numbers of overall
just the opposite in which the former group can be predicted instructions, load instructions and register-read instructions
aggressively and the latter are less predictable. within hyperblocks. Although these values are closely related
3) Expected Prediction Depth to compiles, we can still find that the number of dependent
Prediction depth distribution can not reflect actual quality instructions is considerable in hyperblock, from approxima-
of prediction depth for applications, so we further introduce tely 18% in gzip to 52% in ammp. We would not achieve the
the Expected Prediction Depth, mean value of prediction anticipated speedup if we only increase speculative depths
depth distribution that reflects the magnitude of prediction without considering the impact of data dependence.
and even prediction accuracy. 2) Distribution of data dependences
Figure 6 shows the expected prediction depth evaluated Previous statistic of instructions number only reflects the
under the condition that size of local and global PHT is ubiquitous of data dependence under block-level execution
configured to 16348, we can see that the types of predictors model, but cannot completely substitute for the data
have big impact on the expected prediction depth. For each dependence behaviors. Results may be inequable while a
predictor, applications has distinctive results, we can see block has data dependences with blocks located in different
values of ammp, art, mcf and vortex exceed 10, and others place, so we further analyze the distribution of data
are around 5, which also shows that these applications can dependence (Figure 9). Most data dependence of a
accommodate well to such prediction model. hyperblock comes from its previous adjacent blocks, our
14 experiments show 20% or even 40% [parse] of data
Expected Prediction Depth

12
dependence locates in two adjacent blocks, and an average of
10
Global 40% or even 60% [parse] locates in six contiguous blocks.
8

6
Local These differences are totally attributed to the natural
Tournament
4
characteristics of applications.
2 The unbalanced distribution on data dependences is not
0 what we expect, as we cannot make subsequent blocks
ammp art bzip equake gzip mcf vortex parser
executed even increasing the speculation depth because of
Figure 6. Expected prediction depth the serious dependence between adjacent blocks.
100%
16
90%
Expected Prediction Depth

14 >64blocks
80%
Expected speculation depth

12 33~64blocks
70%
10 17~32blocks
Old 60% 11~16blocks
8
New 50% 9~10blocks
6 7~8blocks
40%
4 5~6blocks
30%
2 3~4blocks
20%
<=2blocks
0 10%
ammp art bzip equake gzip mcf vortex parser 0%
mcf gzip vortex bzip2 parser art ammp equak e

Figure 7. Expected prediction depth with different configured predictor Figure 9. Distribution of data dependence in applications

122
45
40
V. CONCLUSIONS
Data Dependence Depth

35
Hyperblock-based execution model can tremendously
30
25 improve the size of instruction windows for high ILP and
20 good performances. Since enlarging a hyperblock would
15
10
become more difficult under the constraints of compiler
5 technology and inherent characteristics of applications, we
0 introduce a preliminary evaluation of aggressive execution
mcf gzip vortex bzip2 parser art ammp equake
model. Our experiments concentrate on the characteristics of
Figure 10. Data dependence depth in applications dependence distribution and prediction depth in views of
70
speculative execution both on control-flow and data-flow.
mcf Under this model, most applications have good predicta-
Expected speculation depth

60

50
gzip bility, high prediction accuracy and expected prediction
vortex
40 bzip2
depth with control-flow prediction mechanisms; and
30 parser expected prediction depth which reflects the degree of
20
art predictability mainly depends on applications themselves
10
ammp
equake
rather than predictors. Moreover, although prediction
0
accuracy on control-flow decreases while prediction depth
increases, it remains high within acceptable bounds. Finally,
.5
%

%
.5%

.5%

.5%

.5%

.5%
27
20

25

30

35

40

45

50
22

32

37

42

47
<=
<=

<=

<=

<=

<=

<=

<=

we introduce a quantitative method for denoting speculative


<=

<=

<=

<=

<=

Figure 11. Expected speculation depth VS. Different dependence depth execution potentials for distinct applications intuitively, and
analyze the distributions of data dependences between
3) Dependence Depth and Expected Prediction Depth hyperblocks and their impacts on depth of prediction. As we
Figure 10 shows dependence depth of applications, figure observes, many applications have high expected prediction
11 shows expected speculation depth under the constraints of depth, but whether they are suitable for aggressive executing
certain data dependence proportion. As in equake, the depends on data dependences between adjacent hyperblocks.
expected speculation depth is only up to 5 with less than
47.5% data dependence because data dependence within 6 ACKNOWLEDGEMENT
blocks is 48.696% (Fig. 9), bigger than 47.5%. Applications This research was supported financially by the National
of SPECINT have low speculation depths less than 10(4~8 Basic Research Program of China under contract
on average), in contrast, applications of SPECFP have better 2005CB321601, the Natural Science Foundation of China
speculation depth that up to 64 with 50% data dependence. grant 60633040, the National Hi-tech Research and
IV. RELATED WORK Development Program of China under contract
2006AA01A102-5-2, the China Ministry of Education &
Speculative executions on hyperblocks mainly focus on Intel Special Research Foundation for Information
two directions. One is resolving control-flow between Technology under contract MOE-INTEL-08-07.
hyperblocks such as Multiple Branch Predictors and Region
Predictors, the other is Predication which converts control REFERENCES
dependence to data dependence by merging multiple control [1] A. Uht, V. Sindagi, and K. Hall, "Disjoint eager execution: An
flows into a single control flow. optimal form of speculative execution," Micro-28, Dec. 1995, pp.
Yeh et al. [5], Seznec et al. and Conte et al. studied multi- 313-325.
branch predictors that typically predict 2 or 3 targets at a [2] T. N. Vijaykumar. “Compiling for the Multiscalar Architecture”. In
time, then Wallace et al. used saturating counters to predict Doctor of Philosophy at the university of Wisconsin 1998.
multiple branches. Exit predictor is a region predictor first [3] Aaron Smith, Jon Gibson, Bertrand A. Maher, Nicholas Nethercote,
Bill Yoder, Doug Burger, Kathryn S. McKinley, “Compiling for
proposed by Pnevmatikatos et al. [8] in the context of EDGE Architectures”. In Proceedings of the International Symposi-
Multiscalar processor, and subsequently refined by Jacobson um on Code Generation and Optimization, 2006, pp. 185-195.
et al. [7], exit predictors predict only the first branch that will [4] S. A. Mahlke, D. C. Lin, W. Y. Chen, R. E. Hank, and R. A.
leave a code region (such as a Multiscalar task). The local, Bringmann, “Effective Compiler Support for Predicated Execution
global and path-based exit predictors, folding of exit Using the Hyperblock”, In Proceedings of the 25th International
histories and hysteresis bits in PHT we used in this paper are Symposium on Microarchitecture, Dec. 1992, pp. 45-54.
proposed from Jacobson et al. [5] T.Y. Yeh and Y. Patt. Two-level adaptive branch prediction. In
Proceedings of the 24th International Symposium on
Predication of individual instructions was first proposed Microarchitecture, pages 51–61, 1994.
by Allen et al. in 1983 and implemented in the wide-issue
[6] TRIPS toolset, available from: http://www.cs.utexas.edu /~trips/dist/
Cydra-5. Mahlke et al. [4] first developed the modern notion
[7] Q. Jacobson, S. Bennett, N. Sharma, and J. E. Smith. Control flow
of hyperblock, extended by August et al. who proposed a speculation in multiscalar processors. In Proceedings of the 3rd
framework to balance control speculation and predication International Symposium on High Performance Computer
through smart basic block selection at hyperblock formation. Architecture, Feb. 1997.
Dynamic predication [3] predicates dynamically at run-time [8] D. Pnevmatikatos, M. Franklin, and G. S. Sohi. Control flow
and allows predicating without predicated ISA support. prediction for dynamic ilp processors. In Proceedings of the 26th
Annual International Symposium on Microarchitecture, 1993.

123
2009 International Conference on Computer Engineering and Technology

Parallel Method for Discovering Frequent Itemsets Using Weighted Tree Approach

Preetham Kumar Ananthanarayana V S


Department of Information and Communication Department of Information Technology
Technology National Institute of Technology Karnataka
Manipal Institute of Technology, Surathkal, India.
Manipal, India anvs1967@gmail.com
prethk@yahoo.com

Abstract— Every element of the transaction in a transaction set D if c is the percentage of transactions in D
transaction database may contain the components such as item containing A that also contain B. This is taken to be the
number, quantity, cost of the item bought and some other conditional probability, P(B|A). That is,
relevant information of the customer. Most of the association Support(AÆB)=P(A∩B)=s, Confidence(AÆB)=P(B|A) =
rules mining algorithms to discover frequent itemsets do not Support(AÆB)/Support (A)=c.
consider the components such as quantity, cost etc. In a large Mining of association rules is to find all association rules
database it is possible that even if the itemset appears in a very that have support and confidence greater than or equal to the
few transactions, it may be purchased in a large quantity. user-specified minimum support and minimum confidence
Further, this may lead to very high profit. Therefore these respectively [2]. This problem can be decomposed into the
components are the most important information and without following sub problems:
which it may cause the lose of information. This motivated us
All itemsets that have support above the user specified
to propose a parallel algorithm to discover all frequent
minimum support are discovered. These itemset are called
itemsets based on the quantity of the item bought in a single
scan of the database. This method achieves its efficiency by
the frequent itemsets.
applying two new ideas. Firstly, transaction database is For each frequent itemset, all the rules that have user
converted into an abstraction called Weighted Tree that defined minimum confidence are obtained.
prevents multiple scanning of the database during the mining The second sub problem, i.e., Discovering rules for all given
phase. This data structure is replicated among the parallel frequent itemsets and their supports, is relatively
nodes. Secondly, for each frequent item assigned to a parallel straightforward as described in [1].
node, an item tree is constructed and frequent itemsets are Discovering frequent itemsets, considered as one of the
mined from this tree based on weighted minimum support. most important tasks, has been the focus of many studies in
the last few years. Many solutions have been proposed using
sequential or parallel algorithms based on user defined
Keywords-attribute;cost;component;parallel;Weight minimum support. However, the existing algorithms depend
heavily on massive computation that might cause high
I. INTRODUCTION dependency on the memory size or repeated I/O scans of the
datasets. The published parallel implementations of
The goal of knowledge discovery is to utilize those
association rule mining inherited most of these problems in
existing data to find out new facts and to uncover new
addition to the new costly communication cost most of them
relationships that were previously unknown, in an efficient
need. Parallel association rule mining algorithms currently
manner with minimum utilization of the space and time.
proposed in the literature are not sufficient for large datasets,
Mining association rules is an important branch of data
and new solutions, that do not heavily depend on the
mining, which describes potential relations among data items
repeated I/O scan, less reliant on memory size, and do not
(attribute, variant) in databases, the well-known Apriori
require a lot of communication costs between nodes, still
algorithm [3] was proposed by R. Agrawal et al., in 1993.
have to be found. In addition, the existing algorithms
Mining association rules can be stated as follows: Let I={i1,
discover all frequent itemsets based on user defined
i2, … im } be a set of items. Let D, the task-relevant data, be
minimum support without considering the components of the
a set of transactions, where each transaction T is a set of
transaction such as weight or quantity, cost and other
items such that T ⊆ I. The quantities of items bought are not
relevant information of the customer which lead to profit.
considered. Each transaction is assigned an identifier, called
This motivated us to design a new parallel algorithm that
TID. Let A be a set of items, a transaction T is said to
is based on the concept of Weighted Tree.
contain A if and only if A ⊆ T. An association rule is an
implication of the form AÎB, where A ⊆ I, B ⊆ I, and II. PROPOSED METHOD
A∩B= . The rule AÆB holds in the transaction set D with
support s, where s is the percentage of transactions in D that
contain AUB (i.e., both A and B). This is taken to be the This algorithm is divided into two phases. The first one
probability, P(A∩B). The rule AÆB has confidence c in the requires only one scan of the database and generates a

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 124


DOI 10.1109/ICCET.2009.194
special disk-based data structure called Weighted Tree. In
the second phase, the Weighted Tree obtained is reduced to
contain only frequent items and then all the branches of the
tree are sorted according to the increasing order of the
frequency. This tree is called an ordered Weighted Tree. This
tree is replicated among nodes and mined in parallel.
The weighted minimum support is the minimum weight
an itemset has to satisfy to become frequent. If an itemset
satisfies user defined weighted support then we say that it is
weighted frequent itemset.
Consider a sample database given in Table 1, in which
every element of each transaction represents either quantity Figure 1. Branch of a Weighted Tree
or cost of the respective attribute or item.

Table 1. Sample Database


Figure 2 represents the Weighted Tree corresponding to
the Sample Database given in the Table 1.

It may so happen that an itemset appears in a very few


transactions in a large quantity or cost which leads to profit
will not qualify as frequent itemset based on user defined
minimum support. This results in a lose of information. In
the sample database given in the Table 1, if user defined
minimum support is 2 transactions then an item D is not
frequent and will not appear in the set of frequent itemsets
even though if it is bought in large quantity and leads to
Figure 2 .Weighted Tree for Table1
more profit than other frequent items.
Structure of Weighted tree
The idea of this approach is to associate each item with all
transactions in which it occurs.The Weighted tree has two The Parallel Algorithm
different nodes and its branch is shown in the Figure 1.
The first type of node labeled with attribute contains This algorithm involves 3 steps. They are
attribute name and two pointers, one pointing to the nodes A. Construction of Weighted Tree
containing transaction ids and weights and another is a child B. Removal of infrequent attributes of Weighted Tree
pointer pointing to the next attribute. This node represents C. Arrange the attribute lists of Weighted Tree in an
the head of that particular branch. increasing order of their weighted minimum support
The second type of node has 2 parts. First part is labeled TID D. Parallel mining of frequent itemset at different nodes for
represents a transaction number or id and second part of assigned items based on weight.
which is labeled weight, indicates quantity purchased in that
transaction or cost or other components. This node has only A. Algorithm for constructing Weighted Tree
one pointer pointing to the next object having this particular Input: The database D
attribute. Output: Weighted Tree
for each attribute weight w in a transaction t ∈ D do
begin
Create a node labeled with weight w and add this

125
node to the respective attribute node. containing only frequent items would be available to each
end processor to generate all globally frequent patterns with
minimum communication cost at parallel node level. This
replication is executed from a designated master node.
B. Removal of infrequent attributes of Weighted Tree

Input : w_min_sup = weighted minimum support


Output: Reduced Weighted Tree.
for each attribute in a Weighted tree do
begin
if sum(weights of all nodes) < w_min_sup then
remove that branch from the tree
end
For example, In the above case if we consider min_sup=3
then only attributes A and C are frequent in the database. The
attributes B and D are found to be infrequent.
If we consider w_min_sup = 10 then the attributes A, C
and D will be frequent in the database. The reduced
Weighted Tree of Table 1, is shown in Figure 3.

Figure 4. Ordered Weighted Tree

D. Parallel mining of frequent itemset at different nodes


for assigned items based on weight.
This approach relies on distributing frequent items among
the parallel nodes. After ordering the frequent items by their
support, starting from the least frequent, each processor
successively receives one item. The process is repeated until
all items are distributed. In other words, if we have m
processors, and n trees need to be built, assuming m< n then
processor1 builds the tree for the least frequent item.
Processor 2 builds tree for the next least frequent item, and
so on up to processor m. After that processor 1 takes item
m+1 and so on until all n items are distributed.
Each parallel node is responsible for generating all
frequent patterns related to the frequent items associated to
that node. To do so each node reads sub-transactions for each
Figure 3. Reduced Weighted Tree of Table 1 frequent items directly from the Ordered Weighted Tree,
then builds independent and relatively small trees for each
frequent item in the transaction database called item tree.
C. Arrange the attribute list in an increasing order of Each parallel node mines separately each one of these item
their weighted minimum support trees as soon as they are built. The trees are discarded as
In Figure 4, we see that attribute D ahs weight 10, C has 12 soon as mined. Finally, all frequent patterns generated at
and A has 19. The attribute lists are sorted in increasing each node are gathered into master node to produce the full
order of their weights and is shown in Figure 4 and is called set of frequent patterns.
Ordered Weighted Tree. The each node of the item tree consists of item number
The ordered Weighted Tree is replicated among all and its count and two pointers called child and sibling
parallel nodes. By doing so a full set of transaction database

126
pointers. The child pointer points to the following item and Apply downward closure property[1] to get all frequent
sibling pointer points to the sibling node. itemsets from MI which contains all maximal frequent
In our example, if we need to mine the Ordered Weight itemsets. If w_min_sup =10 then applying above algorithm,
Tree in Figure 4, using 2 processors machine with weighted we see that at node 1, Tree for D does not contain any other
minimum support is equal to 10, the starting node for each node except itself. Therefore it is ignored. Similarly, tree
parallel node would be D, the first frequent item. Processor 1 corresponding to A contains only one node and is also
finds all frequent patterns related to items D and A. ignored. Therefore at node 1 only frequent itmestes are one
Processor 2 would generate all frequent patterns related to itemsets, {D} and {A}.
item C. Similarly, at node 2, item tree corresponding to C is built.
The first an item tree is built for item D. In this tree for D, The maximal path corresponding to this tree is {A, C}. The
all frequent items which are more frequent than D and share weight of {AC} = 18 is greater than user defined weighted
transactions with D participate in building the tree. The tree minimum support. Hence it is frequent. Also all its subsets
starts with the root node containing the item D. For each sub- are frequent by using downward closure property.
transaction containing the item D with other items that are Hence Fw = { {A}, {C}, {D},{ A, C}}.
more frequent than D, a branch is formed starting from the
root node.
If more than one frequent items share the same prefix, III. THEORETICAL ANALYSIS
they are merged into one branch and their count fields are
incremented. Figure 5 illustrates trees for frequent items D, A. Construction of Weighted Tree
C and A. In a transaction database D, if there G transactions, then G
transactions have to be read by the algorithm to construct
Weighted Tree. Therefore, this tree can be constructed in
O (G) steps.
If the average length of the transaction t is equal to m
weights, then there will Gm nodes in the tree. In the worst
case, if there are M weights and G transactions in D, then
there will be GM nodes in a Weighted Tree.

B. Reduction of Weighted Tree


If there are m attributes, then reduction of Weighted Tree is
in O (m).
If there are k infrequent items then Reduced Weighted Tree
will contain (m-k) attribute lists with at most G (m-k) nodes.

C. Arrange the attribute list in an increasing order of


Figure 5. Item Trees for items D, C, A
their weighted minimum support
If there are n attributes in the reduced Weighted tree then
The tree for any frequent item say f contains only nodes arranging them in an increasing order of the weight is in
labeled with items that are more frequent or as frequent as f O (n2).
and share at least one transaction with f. Based on this
definition, if A has weight greater than B then tree for B is D. Parallel mining of frequent itemset at different nodes
larger than the tree for A. In other words, the higher the for assigned items based on weight.
support of a frequent item, the smaller its tree is. If there are n frequent items then there will be n item trees.
Input: A Ordered Weighted tree, w_min_sup Each processor will construct one tree at a time. If there are
Output: set of all frequent itemsets at node i. m processors and n trees, m<n then this step is in O( n/m).
for every assigned item I, construct item tree for I
containing transactions associated with I at node i. Merits
Traverse item tree for I In our research we have implemented this algorithm and
for each maximal path from a root to a leaf in the tree for found that this algorithm is better than Apriori and FP-tree
an item I algorithm.
begin (i)This method is space as well as time efficient than Apriori
T= {elements from I to leaf with weight} since it involves candidate generation method and requires
if sum of weights of elements of [T] >= w_min_sup multiple scan over the database. Whereas, our method
MI= {elements from I to leaf with weight} requires only one scan of the database.
end (ii) The algorithm FP-Tree requires 2 scans to discover all
frequent itemsets and mining patterns involve construction of

127
the condition based tree, which involves header table. Our [3] Han, J., Pei, J., Yin, Y. “Mining Frequent Patterns without Candidate
method uses item tree to mine maximal frequent itemsets and Generation”, Proc. of ACM-SIGMOD International Conference
Management of Data. Dallas, TX, 2000, 1-12.
does not involve header table.
[4] Han J, Pei Jian, Runying Mao(2004) ” Mining Frequent Patterns
without Candidate Generation: A Frequent Pattern Tree Approach” ,
IV. CONCLUSION Data Mining and Knowledge Discovery, Kluwer Academic Publishers,
Netherland” 53-87.

The Parallel algorithm for discovering frequent itemsets [5] Agrawal Charu and Yu Philip,(1998) “ Mining Large Itemsets for
association rules. Bulletin of the IEEE Computer Society Technical
based on weight is a new method and is found to efficient committee on Data Engineering, 21, No.1.
when compared to Apriori and FP-tree. As such, we are still
working on it with the aim of extending the application of [6] Ananthanarayana V. S, Subramanian, D.K., Narasimha Murthy
M.(2000). “Scalable, distributed and dynamic mining of association
this algorithm to various kinds of databases. rules” In Proceedings of HIPC'00. Springer Verlag Berlin,Heidelberg,
559-566.

[7] O.R.Zaiane, M. El-Hajj, and P. Lu. “Fast parallel association rule


mining without candidacy generation” In Proc. of the IEEE 2001
V. REFERENCES International Conference on Data Mining, San Jos, CA, USA,
December 2001
[1] Arun K Pujari “Data mining Techniques”: Universities Press(Indis)
Private Limited. Hyderbad, 20003, India.

[2] J. Han and M. Kamber, “Data MiningConcepts and Techniuqes”: San


Franscisco, CA:. 2004, Morgan Kaufmann Publishers.

128
2009 International Conference on Computer Engineering and Technology

Optimized Design and Implementation of Three-Phase PLL Based on FPGA

Yuan Huimei, Sun Hao,Song Yu


College of Information Engineering, Capital Normal University, Beijing, 100048, China
yuanhmxxxy@263.net, sh_1983@sina.com

Abstract has analyzed the influence of three-phase PLL


detecting the error of phases when interference, such as
An optimized method to design and implement digital asymmetry, harmonic and migration etc., exists in
three-phase phase-locked loop (PLL) based on FPGA is
presented in this paper. The PLL fits in electric power system
voltage signal. Three-phase PLL would obtain better
as well as other fields. At first, principle and basic structure performance, if system can separate positive and
of the PLL including phase discriminator, loop filter and negative voltage and feedback positive voltage[6]. This
voltage controlled oscillator (VCO) are introduced, then algorithm usually is implemented using DSP
these modules are designed in VHDL language with blocking
design method. In order to save logic resource of FPGA, an
technology by software because of its complexity. But,
optimized method called chip area sharing is adopted. At the in this way, it will take a lot of CPU time, and the
same time, a new method which combines CORDIC performance is limited. To implement three-phase PLL
algorithm with look-up table algorithm is put forward in this using field programmable gate array (FPGA) by
paper to generate sine function. This new method can both
increase calculating speed and guarantee accuracy of hardware is a new design scheme. This method is a
results. At last, the design is implemented on Altera’s FPGA pure hardware approach to parallel process signals and
chip EP1C12Q240C8. It is verified that the design can save able to achieve high performance.
logic resource of FPGA largely, and it is also proved that the The research of principle, system components and
PLL can track the variation of frequency and lock the basic
phase well. implementation algorithm based on FPGA is
represented in this paper at first. Then, the components
of this three-phase PLL, such as phase discriminator,
loop filter and voltage controlled oscillator (VCO),
1. Introduction
etc., are designed using VHDL. In order to save logic
resources of FPGA, this design is improved by using
Flexible electric power transmission system which is
chip area sharing improvement scheme. A new
widely used in electricity system requires accurate and
algorithm which is combined with CORDIC algorithm
real-time voltage phase information of the system, so
and look-up table is proposed to generate sine function
phase tracking is one of the most important
aiming to increase computing speed and improve the
components in the system[1]. The frequency and phase
accuracy of results. At last, this improvement design is
of voltage in the electric network are indispensable.
inspected on ALTERA’s FPGA Cyclone
Analog or digital phase-locked loop (PLL) is widely
EP1C12Q240C8. The result shows that this
used in general instruments to achieve zero detection
improvement scheme is able to increase the computing
[2]. However, when the rectifier notch appears in the
speed, reduce the usage of logic resource and track the
signal, the method mentioned above cannot do
variation of frequency and lock the base phase well.
anything about it. Discrete fourier transform (DFT) is
the most commonly used method to detecting
frequency and phase, because this way could suppress
harmonic wave well[3]. But using asynchronous 2. Principle of three-phase PLL
sampling, which means the width of sampling window
is not equal to integer times of the signal, would cause PLL is composed by three main components: phase
measurement error because of spectrum leakage [4]. [5] discriminator (PD), loop filter (LF) and voltage

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 129


DOI 10.1109/ICCET.2009.74
controlled oscillator (VCO), which is shown in ud = uαuuα −uβuuβ
Fig.1.Three-phase equilibrium voltage can be =Us KL sin(ω0t +θ1 −ω0t −θ2 ) (5)
described as follows formula (1).
=Us KL sin(θ1 −θ2 )
Assuming PLL starts to lock, we can know, phase
error (θ1 − θ 2 ) is zero or infinitesimal, so the value of
KL cos θ sine function in (5) may be equal to the phase error
proximately. Then, formula (5) could be rewrite as
ud = U s K L (θ1 − θ 2 ) = K d (θ1 − θ 2 ) (5)
1 Where, K d = U s K L .
s
In order to guarantee both the performance of LP
ω0 and stability of the dynamic system[7], proportional-
integral (PI) filter is used in this paper. As the result,
KL sin θ the transfer function of LP would be described as
U f (s) K
= Kp + l (7)
Fig.1 Block diagram of three-phase PLL U d (d ) s
⎛ ⎞ Where, K p is proportional gain and Kl is integral
⎜ sin(θ ) ⎟ gain.
⎜ ⎟
2π From the Fig.1 we can see that the input of VCO
uabc = U s ⎜ sin(θ − ) ⎟ (1)
⎜ 3 ⎟ u f (t ) is the output of adaptive low-pass filter. In order
⎜ ⎟
⎜⎜ sin(θ + 2π ) ⎟⎟
to get a transfer function of the phase of PLL, the VCO
⎝ 3 ⎠ module should generate an output of phase signal θ 2 .
The output of PLL, θ (t ) can be stated as follows:
Where, uabc = [ua ub uc ]
T
θ(t) = ∫ [ω0 +Δω(λ)]dλ =ω0t + ∫ Kvuf (λ)dλ
t t
could be transformed as (8)
−∞ −∞
T
uαβ = ⎡⎣uα uβ ⎤⎦ in αβ 0 coordinate through transform Then, using θ 2 (t ) = θ (t ) − ω0 t to replace the formula
matrix A, where (8), we can obtain
θ 2 (t ) = ∫ K v u f (λ )d λ
t

⎛ 1 1 ⎞ (9)
−∞
1 − ⎟
2⎜ 2 2 In this way, the VCO is able to be simply expressed as
A= ⎜ ⎟ (2)
3⎜ 3 3⎟ an integrator with a gain K v , and the transfer function
⎜0 − ⎟ of this integrator is
⎝ 2 2 ⎠
θ 2 (s) K v
Then, according to vαβ 0 = Avabc , we can get = (10)
U f (s) s

⎧ua = U s sin(ω0 t + θ1 )
⎨ (3)
⎩ub = U s cos(ω0 t + θ1 ) 3. FPGA design of three-phase PLL
Where, θ1 (t ) = ω1 (t )t + ϕ1 (t ) − ω0 t , and ω0 which is
assumed as a constant here is center frequency of 3.1. FPGA design of PD
VCO. From Fig.1, we can know, in the calculation of
PD’s feedback input uuα and uu β are the cosine three-phase PLL, three-phase voltage needs to be
and sine function of θ with the gain of K L , which are converted to two-phase voltage through the matrix
shown as formula (4): operations at first. Then, this two-phase voltage should
multiply with the closed-loop feedback and do addition
⎧⎪uuα = K L cos θ u
operator to get the d-axis component d we need.
⎨ (4)
⎪⎩uu β = K L sin θ However, if we process following the design described
as Fig.1, we need do multiplication 10 times, addition
The output of PD is expressed as follows: 10 times and trigonometric calculation 4 times totally.

130
It will take up a lot of logic resource in that way. After is locked by PLL. The design of this PLL system is
analyzing the design described above, we find out if shown in Fig.2.
we use d, q coordinate transformation directly, there is

T
⎡⎣ud uq ⎤⎦ = Tdq uabc 4. Optimization of design
(11)
⎡ 2 2 ⎤ As we described above, to complete all of the
⎢cosθ cos(θ − 3 π ) cos(θ + 3 π )⎥
Where, Tdq = ⎢ ⎥ . computation would use nine multipliers, but it is a
⎢ sin θ sin(θ − 2 π ) sin(θ + 2 π ) ⎥ waste of logic resource of FPGA. After analyzing
⎢⎣ 3 3 ⎥⎦ the
Then, we could obtain cos θ

1 3 Kl
ud = ua cos θ + ub [− cos θ + sin θ ] ua
2 2 uaubuc
(12) ub
⎡ 1 3 ⎤ uc θ1
+ uc ⎢ − cos θ − sin θ ⎥ 2π
⎣ 2 2 ⎦ cos(θ −
3
)
θ

We only need to implement the formula (12), and Kv


the program only needs to do multiplication 5 times, θ2 1
2π s
addition 5 times and trigonometric calculation twice to 3 cos(θ + )
2 3
complete the calculation. In this way, the workload and
complexity of computation are greatly reduced, and a sin θ
Kl
lot of logic resource of FPGA is saved at the same
time. Fig.2 Block diagram of FPGA design of
three-phase PLL
3.2. FPGA design of LF and VCO
system, we find that the process has its time sequence,
so to resolve this problem, we use time division
The result of input voltage signal θ1 and θ 2 of the
multiplexing (TDM) technology to reuse one multiplier
system in (6) implements the unit negative feedback of
iteratively. Every multiplication will have a fixed slice
the system’s output. And the closed-loop feedback of
to complete computation. In this way, the whole
the system is
system only need one hardware multiplier and logic
resource of the FPGA is able to be saved greatly.
Kd K p ( z) z (c − z )
Φ( z ) = = Kc (13) Another important part of this system is sine, cosine
1 + Kd K p (z) z − az + b
2
function generator which is usually implemented by
Kd Kv K p Kd Kv K p c + 2 using the method of look-up table. However, look-up
Where, Kc = , a= ,
table would take up a lot memory resource of FPGA.
1 + Kd Kv K p Kd Kv K p + 1
One of the solutions is CORDIC algorithm [8].
1 K
b= , c = 1 − l T and T is sampling CORDIC works by rotating the coordinate system
1 + Kd Kv K p Kp
through constant angles until the angle reduces to zero.
frequency. The angle offsets are selected such that the operations
Analyzing the formula (13) can shows when on X and Y are only shifts and adds. CORDIC would
T > 2 K p / Kl , this PLL system is unstable because the not take up any memory of FPGA, but it also have flaw
opened-loop zero point is out of the unit circle. which is the accuracy of CORDIC is limited by its
Nevertheless, K p , Kl and T decide the dynamic own. A new scheme which is combined with CORDIC
performance of the system. and look-up table is proposed in this paper in order to
At the end of the system, a sine and cosine function improve the CORDIC or look-up table individual.
generator is designed in order to supply the feedback Because of the symmetrical characteristic of sine and
for this system, according to phase information which cosine function, we only need to build up a table

131
including the information of a quarter of one period to period of fundamental wave, if the input has steady
minimize the table [9]; also it can improve the phase. The results show that the utilization of resource
accuracy of CORDIC. Table 1 lists the usage of logic on FPGA is greatly reduced after optimization. And
resource on ALTERA’s FPGA Cyclone the processing speed also meets the requirement of the
EP1C12Q240C8 in the way of look-up table, CORDIC system.
and combined way.
The usage of logic resource in this system is greatly
reduced by improvement scheme mentioned above.
Fig.3 shows the design of three-phase PLL after
optimization. In Fig.3, the number 1, 2, 3 …9 means
the slice taken up by calculation.

Table1 Usage of FPGA’s logic resource


Memory(
Method LEs M4K
ROM)(bit) Fig.4 Hardware simulation result of this system
Look-up table 242 180224 4
CORDIC 1335 0 0
Combined 675 9216 3
Table2 Usage of resources on EP1C12Q240C8 before
method and after optimization of three-phase PLL
Rate of
Resource Usage of resource
ua ub sin θ cos θ uc EP1C12Q240C8
on FPGA resource utilization/
%
LES (Look-up table) 12060 2546 21
1
cosθ Kv Kl Kl Memory/Bit ( Look-up 239616 13824 6
2π 2π s
cos(θ − ) ua cos θ + ub cos(θ − ) table)
3 3
2π LES(CORDIC) 12060 1210 10
+uc (θ + )
3
3 Memory/Bit ( 239616 0 0
2
θ1 − θ2
2π CORDIC)
cos(θ + )
3 LES ( Combined 12060 983 8
θ method)
Memory /Bit ( 239616 9216 4
Fig.3: Block diagram of FPGA design of Combined method)
three-phase PLL after optimization

6. Conclusion
5. Results of experiment
This paper has proposed an optimized method to
We use VHDL to implement this design and verify design and implement digital three-phase PLL based
the design on ALTERA’s FPGA Cyclone on FPGA. Basic modules of the PLL including PD, LF
EP1C12Q240C8. Here, we set K v = 128 , K p = 0.5 and and VCO are designed in VHDL language as IP cores;
sampling frequency T = 12.8KHz . Table 2 lists the and an optimized method called chip area sharing is
usage of resource on Cyclone EP1C12Q240C8 before adopted in order to save logic resource on the chip. A
and after optimization of this three-phase PLL. Fig.4 new method which combines CORDIC algorithm with
shows the result of hardware simulation. look-up table algorithm has been put forward to
In Fig.4, clk is the system clock, here we set it as generate sine function, and results show this new
25KHz, u1, u2, u3 represents the three-phase voltage; scheme is able to both increase calculating speed and
and the dataout is the output of this three-phase PLL. guarantee accuracy of results. It is also proved that the
In the picture, we can see that this three-phase PLL PLL can track the variation of frequency and lock the
could stably output phase information on the third basic phase well.

132
Acknowledgment [4] hadke A.G., Thorp J. S, Adamiak M.G. A New
Measurement Technique for Tracking Voltage Phasors,
Local System Frequency, and Rate of Change of Frequency,
The authors would like to thank Beijing Science & IEEE Transactions on Industry Electronics,1996, 43(6): 609-
Technology Government for financially supporting this 615.
work by project of Beijing Technology New Star (No.
2006B58). [5] Kyo Chung.A Phase Tracking System for Three Phase
Utility Interface Inverters, IEEE Trans. on Power Electronic
2000. 2000: 431-438.

References [6] J. Lee, J. K. Kang, S. K. Sul. A New Phase Detecting


Method for Power Conversion Systems Considering
[1] Sang-Joon Lee, Jun-Koo Kang, Seung-Ki Sul.A New Distorted Conditions in Power System, Thirty-Fourth IAS
Phase Detecting Method for Power Conversion Systems Annual Meeting IEEE Conf. Record ′99.1999: 2167-2172.
Consid-ering Distorted Conditions In Power System,
Industry Applications Conference Conf. Record of the [7] YANG Shi-Zhong, Li Xiao-Chun. Foundation of Phase
IEEE’99[C]. 1999: 2167- 2172. Lock Technology, Beijing: People Post-office Press. 1978, 8:
100-102.
[2] G. C. Hsieh, J. C. Hung. Phase-Locked Loop techniques-
a survey, IEEE Transactions on Industry Electronics,1996, [8] Uwe Meyer-Baese. Digital Signal Processing with Field
6(43): 609-615. Programmable Gate Arrays, Second Edition, Springer Press
Ltd, 2004, (2) : 79-82.
[3] IEEE Working Group Report. Synchronized Sampling
and Pastor Measurements for Relaying and Control, IEEE [9] Wu Po, GUO Yu-Hua, WEN Liang-Yu. Improvement
Transactions on Power Delivery, 1994, 19(1): 339-442. and Implementation of One Phase Power Phase-Locked Loop
based on FPGA, Power Electronics, 2007, (4): 80-82.

133
2009 International Conference on Computer Engineering and Technology

Research on the Data Storage and Access Model in Distributed Environment1

Wuling Ren Pan Zhou


College of Computer and Information College of Computer and Information
Engineering, Zhejiang Gongshang Engineering, Zhejiang Gongshang
University, Hangzhou, Zhejiang, 310018, University, Hangzhou, Zhejiang, 310018,
China China
rwl@zjgsu.edu.cn zhoupan@pop.zjgsu.edu.cn

Abstract
In this paper, we study the architecture of data
In order to improve the data access efficiency and center according to the characteristic of distributed
enhance the security in IT systems, a layered access computing environment. A security access control
control model with classified distributed storage in model is presented based on the above study.
distributed environment is presented[1,2]. In the model,
information is stored in numbers of physical 2. The architecture of data storage in
distributed storage nodes. The storage architecture is distributed computing environment
logically organized into four classes, which includes
active data storage, static data storage, backup data The design of data central of distributed
storage and data warehouse. Data access efficiency computing environment must consider the security of
is increased because most applications will information. The data central collects the massive
concentrate on active data storage or static data primary data and all kinds of regeneration
storage where the most recently and frequently used summarized information in each subsystem, therefore
data are stored. Data security access is controlled the design of data central must realize security
through a 3-layered access control model based on control of each kind of database information, prevent
RBAC model[3,4]. The three layers include operation the invasion of illegal user, and maintain the integrity
layer, data logic security shield layer and application and uniformity in the procedure of data gathering,
layer. Operation layer and application layer are to storage, transmission and processing in each
control the authorized access for system managers subsystem of distributed computing environment. [6]
and application end users respectively. The data According to information characteristics, we
logic security shield layer is to shield the difference discuss the data storage architecture structure of data
among the database safety control organizations. It central system structure. The information may be
is appreciated after the model has been applied to roughly divided into four kinds in the distributed
Zhejiang Fuchunjiang Limited Company. computing environment.
The first kind of information is the foundation data
1. Introduction in the distributed computing environment, including
system parameter, product information, the material
It is particularly important while the information information, customer information, supplier
security in distributed computing system. The information, staff code, department code in each
security system guarantees data can and only can be subsystem and so on. These information is shared in
accessed by the authorized users, whatever the various subsystems, and has high frequency to use. In
request comes from domestic or external. The the distributional data management environment, we
encrypted centralism authorization provides trustable must adopt effective method to maintain the integrity
login, it keeps privacy and consistency of data in and uniformity of visiting to these data in various
system. Backup and restore quickly and reliably is a subsystems.
mandatory requirement of digital system. Data is The second kind of information is the model
well protected by good security design and meta-data in each subsystem[2], including t the model
implementation. The security system is the critical of process control standards and its executing log.
part of data centre in the distributed computing This is the main information in distributed computing
environment. executing environment. The information is so much

1
Foundation item: Project supported by the National Science & Technology Pillar Program, China(No.2006BAF01A22), and the Science &
Technology Research Program of Zhejiang Province, China (No.2006C11239)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 134


DOI 10.1109/ICCET.2009.89
that we must control their depositing cycle. In the example: the operation mistakes, such as incautious
regular circumstances, we only record and retain the deletion, the computer hardware breakdown, hard
information which exceptionally occurs or not yet disk expiration and so on). The latter refers to the
completely processing in the system. That authority of data, namely who can use the
information is the basis of dynamic adjusting the information and how to use it.
system procedure, modeling the executing
parameters and the management control standard. 3.1 Information protection
The third kind of information is the process
information. The primary data gathers from each In the distributed computing environment, the
related subsystem. One of the tasks of distributed information of active data storage and static data
computing system is to process this information storage is the protection object[7]. The information in
effectively. the reserve data storage is their backup, in order to
The fourth kind of information passes through the prevent the system from accident collapses, and
distributed computing environment processing, guarantee the security of information. The active data
compiles processing the history data material, which storage is organized by the database form, and the
we call the data warehouse. storage medium is the hard disk; Static data storage
The data central data storage system is composed and reserve data storage is organized by file form,
by five parts, as figure 1 shows. One of the parts is and the medium is the hard disk, the magnetic tape or
the current data storage. It deposits the information CD-ROM.
which is used presently and in high frequency in the The method of data transfer includes various date
system, such as the system foundation information, storages as followings:
the primary data and so on. Another part is the Data transfer:Information transfers between the
historical data storage. It deposits the information active data storage and historical data storage. It
which is used presently and in low frequency in the means information transferred among the database or
system. These two parts constitute the active data tables. We can use programs to realize the procedure.
storage. Another part is the static data storage. It Data export/load:Information transfers between
deposits information which id used in the lowest the static data storage and historical data storage. We
frequency in the system, such as some original can use the database tool EXPORT/IMPORT which
documents processing in several years ago. The last the database management system provides to realize.
part is the backup data storage. We must set up the They will dump the data to text file. If the database
backup system for the above data storage in order to management system has not provided this kind of
prevent the system from accident collapses and lose tool, then it need program to realize this function
of data, and guarantee the security of information.
Data backup/recovery:
(1) Information transfers between the active data
storage and reserve data storage . It can use the hard
disk or the magnetic tape as the reserve medium to
backup the information by the copy/restore tool
which provided by the database management system
or the operation system. Thus the backup information
is stored in the hard disk as files.
(2) Information transfers between the static data
storage and reserve data storage. It can use the file
copy tool to realize the procedure.

3.2 Information Access Control

In the distributed computing environment system,


the complete safety control model is as figure 2
shows. Except administrator, other operators can
only be able to visit the distributed computing
Figure 1. The architecture of data storage in
environmental information through the application
distributed computing environment
subsystem.
In figure 2, system configure file, parameter file
3. The design of database security refer to the operation system-level file which need
security control and should be controlled by the
The data security including two aspects, one is the application system.
data protection (or we call anti-damage nature), File system safety and security control is to carry
another aspect is the data security. The former avoids out the security control of system configure file,
the unintentional destruction of information (for

135
parameter file with the safety control mechanism of 4 Summary
operating system, with the encryption method which
defined by user. This paper discussed the architecture structure of
The data central management system provides the data centre in the distributed computing environment,
data central safety control level. Primary cognizance and presented a layered security access control model.
data central information authorized operation has the In classified distributed storage model, the data
same effect as well as data central manager's security distributed in each physical storage node is organized
control. into four components which includes active data
The main function of the data logic security shield storage, static data storage, backup data storage and
level is to shield the difference among the database data warehouse. The layered access control mode is
safety control organization, the file system safety presented based on RBAC model. Security control is
control and the security mechanism, so as to provide distributed in three layers, namely management layer,
the consistent support way for the application system operation layer and application layer. The system has
security control mechanism. been applied to Zhejiang Fuchunjiang limited
The security control layer is responsible for the company. It was well evaluated.
authority of the application system. It takes the role
of privilege grant. It decides functions the operator 5.References
can use, which data the operator can access or modify,
how long the privilege is available. Application [1] K. Hammer. Web Services and Enterprise Integration,
operating is granted by the security control layer. A EAI Journal, 11, 2001.
triple is used to describe the three objects: (operator, [2] Bruce Lownsbery, Helen Newton.The Key to Enduring
operation, operated object). The security control Access: Multi-organizational Collaboration on the
layer determines its granting by matching the certain Development of Metadata for Use in Archiving Nuclear
triple in triple database. Application system defines Weapons Data.
other 2-truple and triples, such as (operator, manager [3] David F. Ferraiolo, Role-Based Access Control, Artech
of operator), to extend flexibility, which delegates House, 2003.
[4] J. Kwon, C.-J. Moon, Visual modeling and formal
privileges to other operator or group. Effective time
specification of RBAC constraints using semantic web
can be also added in the triples to solve the technology, Knowl. Based Syst.(2008),
temporary authorized problem. doi:10.1016/j.knosys.2008.02.007 I.
[5] Soomi Yang, An Efficient Access Control Model for
Highly Distributed Computing Environment.
Distributed Computing - IWDC 2005, pub: Springer
Berlin/Heidelberg, doi:10.1007/11603771.
[6] Yu Hwanjo, Yang Jiong, et al., Classifying Large Data
Sets Using SVMs with Hierarchical Clusters,
SIGKDD’03, Washington, DC, USA. 2003, 8.
[7] Shigeki YAMADA,Access Control for Security and
Privacy in Ubiquitous Computing Environments.
IEICE Transactions on Communications 2005
E88-B(3):846-856; doi:10.1093/ietcom/e88-b.3.846.
[8] Ninghui Li, Mahesh V. Tripunitara, Security analysis in
role-based access control. ACM Transactions on
Information and System Security (TISSEC), v.4 n.9,
Nov 2006.

Figure 2. The 3-layered access control model in


distributed computing environment

136
2009 International Conference on Computer Engineering and Technology

An effective classification model for cancer diagnosis using micro array


Gene expression data

Dr.V. Saravanan, R.Mallika,


Department of Computer Applications, Department of Computer Science
Karunya School of Science and Humanities, Sri Ramakrishna College of Arts and Science for
Karunya University,Coimbatore,India Women, Coimbatore, India
tvsaran@hotmail.com mallikapanneer@hotmail.com

Abstract-Data mining algorithms are commonly In classification analyses of microarray data,


used for cancer classification. Prediction models gene selection is one of the critical aspects
were widely used to classify cancer cells in human [4[5][6][7]. Efficient gene selection can
body. This paper focuses on finding small number drastically ease computational burden of the
of genes that can best predict the type of cancer.
subsequent classification task, and can yield a
From the samples taken from several groups of
individuals with known classes, the group to which much smaller and more compact gene set
a new individual belongs to is determined without the loss of classification accuracy [8][9].
accurately. The paper uses a classical statistical In microarray classification analyses, the main
technique for gene ranking and SVM classifier for objective of gene selection is to search for the
gene selection and classification. The methodology genes, which keep the maximum amount of
was applied on two publicly available cancer information about the class and minimize the
databases. SVM one-against- all and one-against- classification error [10].
one method were used with two different kernel With the help of gene expression obtained from
functions and their performances are compared
microarray technology, heterogeneous cancers
and promising results were achieved.
can be classified into appropriate subtypes and
Keywords: Classification; SVM one-against- all; the challenge of effectiveness in cancer
SVM one-against-one; Gausssian; RBF. prediction lies when there are high dimensional.
Supervised machine learning can be used for
I. INTRODUCTION cancer prediction, which uses a part of the
Micro array technology has made the modern dataset as training set and the uses the trained
biological research by permitting the classifier to predict the samples in the rest of the
simultaneous study of genes comprising a large data set to evaluate the effectiveness of the
part of the genome [1]. In response to the rapid classifier. [11]. With DNA microarray data,
development of DNA Micro array technology, selecting a compact subset of discriminative
classification methods and gene selection genes from thousands of genes is a critical step
techniques are been computed for better use of for accurate classification. Selection of important
classification algorithm in microarray gene genes using statistical technique was carried out
expression data [2][3]. in various papers such as Fisher Criterion,
The goal of classification is to build a set of Signal-to-Noise, traditional t-test, and Mann-
models that are able to correctly predict the class Whitney rank sum statistic [12], chi-squared test,
of different objects. The input to such models is Euclidean distance [13] and the some of the
a set of objects (i.e., training data), the classes, classification algorithms used were SVMs, k-nn
which these objects belong to (i.e., dependent [14], Genetic algorithms (GA) [16] Naïve bayes
variables), and a set of variables describing (NB)[15]. This paper used the two publicly
different characteristics of the objects (i.e., available cancer dataset Lymphoma and Liver.
independent variables). Once such a predictive In 2003, Tibshirani [17] successfully classified
model is built, it can be used to predict the class the lymphoma data set with only 48 genes by
of the objects for which class information is not using a statistical method called nearest shrunken
known. The key advantage of supervised centroids and used 43 genes for SRBCT data.
learning methods over unsupervised methods Lipo Wang [11] 2007 proposed an algorithm in
like clustering is that by having an explicit finding out minimum number of gene up to 3
knowledge of the classes the different objects genes with best classification accuracy using C-
belong to, these algorithms can perform an SVM and FNN.
effective feature selection if that leads to better Tzu-Tsung [27], 2008 proposed a classification
prediction accuracy. method to classify the causality of a disease is of
two stages. Gene Selection mechanism with

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 137


DOI 10.1109/ICCET.2009.38
individual or subset gene ranking as the first B. Gene Selection-SVM one-against-all and one-
stage and classification tool with or without against-one
dimensionality reduction as the second stage. SVMs are the most modern method applied to
This paper proposes an efficient methodology classify gene expression data, which works by
using statistical model for individual gene separating space into two regions by a straight
ranking and data mining models for finding line or hyper plane in higher dimensions. SVMs
minimum number of gene rather than thousands were formulated for binary classification (2
of genes, which can be used to give good classes) but cannot naturally extend to more than
classification accuracy. Furthermore, the paper two classes. SVMs are able to find the optimal
compares the SVM one-against- all, SVM one- hyper plane that minimizes the boundaries
against-one classifiers with kernel functions between patterns [19]. SVMs are power tools
gausssian and RBF (heavy tailed RBF) using two used widely to classify gene expression data
databases for Lymphoma cancer and Liver [21][22]. How to effectively extend SVM for a
cancer. Their performances are compared with multi-class classification is still an ongoing
their respective training time and accuracy. research issue [23]. This paper gives effective
methodology to classify a multi-class problem
II METHODOLOGY .To extend SVM for multi-class classification,
SVMs were designed with SVM one-against-
A. Gene Ranking -ANOVA p-values one, SVM one-against-all. This paper efficiently
ANOVA is a technique, which is frequently uses the varieties of SVM such as one-against-
used in the analysis of microarray data, e.g. to all method (SVM-OVA) and SVM one-against-
assess the significance of treatment effects, and one (SVM-OAO) method with heavy trailed
to select interesting genes based on P-values. RBF and Gaussian kernel function.
[18]. The ANOVA test is known to be robust and The SVM-OAA constructs ‘n’ binary SVM
assumes that all sample populations are normally classifier with the ith class separating from all
distributed with equal variance and all other classes. Each binary SVM classifier creates
observations are mutually independent. a decision boundary, which can separate the
The approach chosen in this paper is the one-way group it represents from the remaining groups
ANOVA that performs an analysis on comparing For training data t = (X1, Y1), (X2, Y2)…(Xt,
two or more groups (classes) for each gene and Yt); Xn ∈ Rn and n=1…t, Yn =1.. K is the class
returns a single p-value that is significant if one labels corresponding to Xn. The nth SVM solves
or more groups are different from others. The Min ½ (wi)Twi + C Σ tj=1 ξji
most significantly varying genes have the i i
w biξ
smallest p-values.Of all the information (wi)Tφ(xj) +bi ≥ 1 - ξji , if yj =i,
presented in the ANOVA table, if the p value for (wi)Tφ(xj) +bi ≤ -1+ ξji, if yj ≠ i,
the F- ratio is less than the critical value ( ), and ξji ≥ 0.j =1…t, (1)
then the effect is said to be significant. In this Where each data xi is mapped to the feature
paper the α value is set at .05, any value less space by function φ and c the penalty parameter.
than this will result in significant effects, while The Radial basis function (RBF) is the most
any value greater than this value will result in popular choice of kernel functions used in
non-significant effects. The very small p-value Support Vector Machines, which can be
indicates that differences between the column represented by
means are highly significant.
The probability of the F-value arising from two K (Xi, Xj) ≡ e-γ | Xi – Xj |2 (2)
identical distributions gives us a measure of the
significance of the between-sample variation as Where Xi is the support vector of the ith class and
compared to the within-sample variation. Small Xj is the support vector for the new higher
p-values indicate a low probability of the dimensional space and γ is the tuning parameter.
between-sample variation being due to sampling RBF kernel can be able to give the same decision
of the within-sample distribution, small p-values as that of RBF network. [23].
indicate interesting genes. The paper uses the p- The SVM-OAO method was first used by [28]. It
values to rank the important genes with small constructs n (n-1)/2 classifiers in which each one
values and the sorted numbers of genes are used is trained on the data for 2 classes. The
for further processing classification problem for the training data with
ith and jth class is shown as

138
The average 5-fold accuracy for each run was
Min ½ (wij)Twij + C Σ tj=1 ξjij calculated and average error rate in training were
w b ξj
ij ij ij calculated. Table .1 shows the average Training
(wij)Tφ(xt) +bij ≥ 1 - ξjij , if yt =i, accuracy for training all possible gene pairs. In
(wij)Tφ(xt) +bij ≤ -1+ ξjij, if yt ≠ j, all the cases SVM one-against-all was superior
to all other methods were well proved.
ξjij ≥ 0. (3) The method used the gene subsets that achieved
100% CV accuracy for the training samples and
III RESULTS AND DISCUSSION retrained the classifier. Then the classifier was
used to predict the samples in the testing dataset.
The proposed methodology was applied to the
publicly available cancer database namely Liver Fig.1 plots the gene pairs (4,6) that shows a good
and Lymphoma cancer. This section reports the separation of 3 classes-DLBCL, FL, CLL with
experimental results of all the datasets exhibiting clear boundaries, which can be able to predict for
the SVM varieties such as one-against-all and a doctor for the 3 subtypes of lymphoma.
one-against-one with different kernel functions Furthermore Table.2 shows the best prediction
RBF and Gaussian. accuracy for the gene pair (4,6) was achieved
using SVM one-against-all method with RBF
A. Lymphoma dataset kernel function (OAA-RBF) from the top 20
genes. It should be noted that all the genes after
The methodology was applied to the lymphoma ranking were given numbers in ascending order.
dataset with 4026 genes and 62 samples with 3
class namely DLBCL, CLL and FL, the subtypes
pf Lymphoma cancer.
The dataset was with few missing data. The K-
Nearest neighbor algorithm as used by [18] with
k=3 was used and the missing data were filled.
Half of the samples were picked randomly for
training and all the samples for testing. For the
training dataset with 4026 X 31 dimensions
ANOVA p-value was calculated for each gene
and the top ranked genes were selected .All
possible combinations of the top n genes were Figure.1 gene expression level of gene pairs showing good
generated. For n number of top genes all possible separation of different classes for Lymphoma dataset
combinations are n (n+1)/ 2!Using these
combinations, the databases were trained using TABLE.2. COMPARATIVE RESULTS OF TESTING
ACCURACY OF ALL ALGORITHMS- LYMPHOMA
SVM one-against-all and one-against-one. DATA
The performance of the classifier was validated
using cross validation (CV) technique with 5- Top OAA- OAO-
folds. For 5 folds, the samples in the training gene OAA-RBF GAU OAO-RBF GAU
dataset was randomly divided into 5 equal parts,
10 96.77 91.94 95.16 91.94
classification was performed for 5 runs, using the
20 98.39 95.16 96.77 95.16
4 parts as training and the other as testing.
30 98.39 96.77 98.39 96.77
TABLE.1 AVERAGE 5 FOLD CROSS- 50 96.77 96.77 98.39 98.39
VALIDATIONACCURACY OF ALL ALGORITHMS- 100 96.77 98.39 93.55 98.39
LYMPHOMA DATA
Top OAA OAA OAO OAO In comparison with previous works, proposed
gene RBF GAU RBF GAU method proves well for the number genes needed
10 91.97% 91.54% 91.43% 91.04% to achieve best accuracy. Comparisons of results
20 91.32% 88.98% 91.02% 88.62% with previous work are shown in Table.3
30 92.04% 88.50% 91.95% 88.70%
50 91.99% 88.18% 91.90% 88.71%
100 90.33% 86.49% 90.32% 87.14%
Each time the classifier was trained, a different
test set was used, so that over 5 runs of the
classifier, all the samples were used as test set.

139
TABLE .3 RESULT COMPARISON- LYMPHOMA DATA

Method Accuracy No of genes


Proposed method 98.39% 2
Extreme Learning
machine (24) 97.33% 10
Bayes with 93% 30
Local SVM (26)
SVM-KNN (25) 96% 50

Figure.2 Plot showing best separation for liver dataset that


achieved the best test accuracy for Liver data
B.Liver Dataset
Liver dataset (http://genome- Fig.3 show the results for each SVM variety. The
www.stanford.edu/hcc) has 2 classes HCC and figure shows the number of gene pairs that
non-tumor liver for 1648 genes for 156 achieved 100% CV accuracy using the top 100
observations in which 82 are from HCC and 74 genes for Liver and Lymphoma dataset. As
from non-tumor livers. Unlike the Lymphoma observed in the figure, SVM one-against-all with
dataset, which were with the prediction of RBF kernel function has higher or nearing 100%
subtypes in Lymphoma cancer, the Liver dataset training accuracy gene pairs for the liver and
were from the cancerous and non-cancerous lymphoma dataset.
tissue. The problem is to predict whether the
samples are from cancerous or non-cancerous
tissue. The methodology adopted for lymphoma

top 100 genes


dataset was applied. Randomly half of the 400
observation was selected for training and all 300
samples for testing. 200 OAA-RBF
100
As with that of Lymphoma dataset, it was well 0
OAA-GAU
proven that SVM one-against-all with RBF OAO-RBF

Liver
Lymphoma
kernel can achieve better prediction accuracy OAO-GAU
compared to all other varieties for liver dataset as
well. This is depicted well in Table.4
.
TABLE.4 COMPARATIVE RESULTS OF TESTING Figure.3 Maximum number of gene pair that achieved 100%
ACCURACY OF ALL ALGORITHMS FOR LIVER DATA
CV Accuracy for Lymphoma and Liver dataset.

Top OAA- OAA- OAO- OAO- IV. CONCLUSION


gene RBF GAU RBF GAU
10 94.87 94.87 94.87 94.23 In this paper an efficient classification method
20 97.44 96.15 94.87 96.79 for cancer diagnosis problem using microarray
30 95.51 96.33 96.69 95.15 data was presented. The paper used a classical
50 94.87 94.87 94.87 94.23 statistical technique for gene ranking. From the
results of the two datasets, it was found that
100 92.31 92.95 96.79 91.67
SVM one-against-all classifier with RBF kernel
function (SVM OAA-RBF) achieves better
From the Plot in Fig.2 the gene pairs (13,23) for
classification results. On application of SVM
liver dataset, a doctor can able to diagnose that a
one-against-all and one-against-one to the
patient has HCC if and only if the expression
Lymphoma and Liver datasets it was found that
level is less than 0.75 and greater than –0.3
SVM one-against-all with RBF kernel function
otherwise the tissue is of a patient without tumor.
outperforms with the other. Though the
computational time for training was longer,
SVM one-against-all could achieve the best
prediction accuracy. The results were promising
when compared with previous works as well.
The future work shall extend with different
classifier and gene ranking methods

140
REFERENCES [15] Andrew D. Keller, MichH Schummer, Lee Hood,
Walter L. Ruzzo, Bayesian Classification of
[1] Per Broberg, Statistical methods for ranking DNA Array Expression Data, Technical Report
differentially expressed genes Molecular Sciences, UW-CSE-2000-08-01August 2000
AstraZeneca Research and Development Lund, [16] Juan Liu, Hitoshi Iba, Selecting Informative
S-221 87 Lund, Sweden 7 May 2003 Genes with Parallel Genetic algorithms in Tissue
[2]Hong Chai and Carlotta Domeniconi, An Classification, Genome Informatics 12: 14–23
Evaluation of Gene Selection Methods for Multi- (2001).
class Microarray Data Classification, [17] R. Tibshirani, T. Hastie, B. Narasimhan, and
Proceedings of the Second European Workshop G. Chu, Class Prediction by Nearest Shrunken
on Data Mining and Text Mining in Centroids with applications to DNA Microarrays,
Bioinformatics, 2001 Statistical Science, vol. 18, pp. 104-117, 2003.
[3] J. Jaeger, R. Sengupta, W.L. Ruzzo, Improved [18] O.Troyanskaya, Missing values estimation
gene selection for classification of Microarrays, methods for DNA Microarrays, Bioinformatics,
Pacific Symposium on Biocomputing 8:53-64(2003) vol.17, pp.520-525, 2001
[4] Li Y, Campbell C, Tipping M, Bayesian automatic [19] Mingjun Song, Sanguthevar Rajasekaran, A
relevance determination algorithms for greedy correlation-incorporated SVM-based
classifying gene expression data, Bioinformatics Algorithm for gene selection, 21st International
2002, 18:1332-1339 Conference on Advanced Information Networking
[5] Diaz-Uriarte R, Supervised methods with genomic and Applications workshop, 2007,IEEE
data: a review and cautionary view. Data analysis [21] Elena Marchiori, Michele Sebag, Bayesian
and visualization in genomics and protenomics learning with local support vector Machines
2005, 193-214. for cancer classification with gene expression
[6] Hua J, Xiong Z, Lowey J, Suh E, Dougherty ER data”, Evo Workshops 2005:74-83
:Optimal number of features as a function of [22] Yoonkyung Lee, Cheo Koo Lee, Classification of
sample size for various classification rules. multiple cancer types by
Bioinformatics 2005, 21:1509-1515 Multicategory support vector machines using gene
[7] Jirapech Umpai T, Aitken S: Feature selection and expression data, Vol. 19 no. 9 2003,
classification for microarray data analysis: Bioinformatics
Evolutionary methods for identifying predictive [23] Chih-wei Hsu and chih jen Lin, A comparison of
genes. BMC Bioinformatics 2005, 6:148. methods for multiclass Support Vector machines,
[8] Ben-Dor A, Bruhn L, Friedman N, Nachman I, IEEE transactions on neural networks, 2002
Schummer M, Yakhini Z ,Tissue classification [24] Runxuan Zhang, Guang-bin Huang, Narasimhan
with gene expression profiles. Proceedings of the Sundararajan, P.Saratchandran, ”Multicategory
fourth annual international Conference on classification using an Extreme learning machine
Computational molecular biology 2000, 54-64 for microarray gene expression cancer
[9] Blanco R, Larranaga P, Inza I, and Sierra B: Gene diagnosis”, IEEE/ACM transactions on
selection for cancer classification using wrapper Computational Biology and Bioinformatics,
approaches. International Journal of Pattern Vol.4, No.3, July- September 2007
Recognition and Artificial Intelligence 2004, [25] Sung Bac cho, Hong Hee won,” Machine learning
18(8): 1373-1390 . in DNA microarray analysis for cancer
[10] Ji-Gang Zhang, Hong-Wen Deng, Gene selection classification, First Asia pacific Bioinformatics
for classification of microarray data based on the conference, 2003
Bayes error, BMC Bioinformatics 2007, [26] Elena Marchiori, Michele Sebag “ Bayesian
8:370doi: 10.1186/1471-2105-8-370. learning with support vector machines for cancer
[11] Lipo Wang, Feng Chu, and Wei Xie, Accurate classification with gene expression data”,
Cancer Classification Using Expressions of Very Springer Link, LNCS, 2005
Few Genes, IEEE/ACM Transactions on [27] Tzu-Tsung Wong, Ching-Han Hsu, Two-stage
computational biology and bioinformatics, vol. 4, classification methods for microarray data,
no. 1, January-march 2007. Science Direct, Expert Systems with Applications
[12] Venu Satuluri, A survey of parallel algorithms for 34(2008) 375-383.
classification, March 15, 2007. [28] U.Krebel,B.Scholkopf ,C.J.C.Burges,A.J.Smola
[13] Yvan Saeys, I ˜naki Inza and Pedro Larra˜naga, A Pair wise classification and Support Vector
review of feature selection techniques in Machines ,Advances in Kernel Methods –Support
bioinformatics. Bioinformatics Advance Access VectorLearning,pages255-268,
published August 24, 2007. Cambridge,MA,1999,MIT Press .
[14] Yeo lee chin, Safaai Deris, A study on gene
selection and classification Algorithms for
classification of microarray Gene expression
data, Jurnal Teknologi (D), 43 (D). pp. 111-124.
ISSN 0127-9696

141
2009 International Conference on Computer Engineering and Technology

Study and Experiment of Blast Furnace Measurement and Control System Based on
Virtual Instrument

Li Shufen Liu Zhihua


Beijing Union University Beijing university of chemical and technology
Beijing, China Beijing, China
zdhtshufen@buu.com.cn Liuzhihua714@sina.com

Abstract—This article mainly introduces a blast furnace This system has the following functions:
measurement and control system, which based on the virtual system parameters setting function
instrument development platform LabView. The hardware Real-time measurement and display function
takes the ADAM4000 series data acquisition module of Real-time control function
Advantech as the core. The system can replace the massive Sound and light alarm function
display instruments, finish monitoring the furnace conditions Data storage, browsing and report printing functions.
in the production process, and realize to manage the historical
data. B. Hardware design
The measurement and control system is mainly
Keywords-LabView; Data Acquisition Module; Instrument; composed of sensors, measuring transmitter, acquisition
the Furnace Condition
card, computer, printer, the executive drives and actuator.
The application of sensors should consider two factors: the
I. INTRODUCTION site environment and the measurement request. The
Virtual Instrument is a new technology which is ADAM4000 series of data acquisition module developed by
developed in the 1990s. It is the integration of computer and Advantech can accept the standard signal from the sensor so
bus technology, microelectronic, measurement and control as to omit some of the transmitter. High-performance
technology. LabView is a virtual instrument development computer is used in the host computer. The actuator is the
platform for many fields, which is developed by the drive circuit used to drive the regulating valve. Diagram of
American NI Corporation. It has a simple graphical the basic system components is shown in figure 1.
programming environment and powerful hardware-driven
features, and more a friendly visual simulation interface. It furnace
has been widely used in various fields, such as: fault
diagnosis, detection, process control, equipment design and
so on[1]. sensor annunciator executor
This system takes the blast furnace system of the No.1
Iron making of Tang gang as the design model. As the site
signal is complex and multi-species, the amount of signal
acquisition is large. Even worse, the operating mode has
ADAM4018 ADAM4050 ADAM4021
manual control and PLC control, the data records have
computer records and manual records, of which the data
amount is also great. All these make it difficult to measure
and control the condition of blast furnace. The ADAM4000
series signal acquisition module is characterized as the ADAM4520
acquisition of many kinds of signals, band rate-setting, work
stability and RS-485 communication function. So it is very
suitable for the measurement objects.
host
II. SYSTEM FUNCTIONS AND HARDWARE DESIGN
Figure 1. Diagram of the basic system
A. System Functions
In this system, the serial COM2 was used and the band
In the production process of blast furnace, it is necessary
rate system was set as 9600b/s. Since hot-air and the furnace
to measure all the signals of each furnace point, such as the
bottom temperature is high, we can use the S-type
temperature, the pressure and other physical quantities, to
temperature sensor. Its temperature ranges from 500 to
ensure the quality and safety of the production. In addition, it
1750 and it can convert signal below +22mV. The
also needs to show, record and storage the measuring
remaining temperature sensors adopted K-type, the
information.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 142


DOI 10.1109/ICCET.2009.242
temperature ranges from 0 to 1000 and it converts signals detection because this will affect the stability of the system.
below +50mV. Through the compensation lead, temperature For example, if there is an error on the hardware module
sensor directly connected to the analog input module 4018. address, the corresponding parameter will have an error too,
Output of the module was automatically selected,4021 and this will cause serious consequence to the production.
analog output module set output range 0~5V to control So it is very important to correctly set up the hardware and
regulating valve, while 4050 digital input and output module software[2].
set the working methods as “40”. I have also met some problems in the experimental
III. SOFTWARE DESIGN debugging process, the followings are some solutions:
1) 4250 operates normally and hardware connects
A. software function correctly, but the computer detects no module. The reasons
are:
a The module address is duplicated.
1. display the parameters of furnace points: the workers
can know all points’ pressure, temperature, flow rate and the b Serial band sate is not consistent with the module
furnace condition through the host computer screen. band rate.
2. set the system alarm limit : in order to ensure high- 2) Module operates normally, but the collection data
quality products and safety production, we can set the quality shows abnormal, even with special symbols. The reasons
assurance and security assurance of the relevant parameters are:
,respectively. a Error on interception of character or operation of
3. flashing alarm and manual operation: the alarm will be the software program.
operated if any of the parameters of measurement points b The signal source for the data acquisition module
exceed the set limit, and then notify the workers what the has hardware error.
reason is. Meanwhile, if necessary, we can switch to manual c No power supply for the signal source.
operation to directly adjust output signal for emergency. 3) ADAM drivers can find the modules, but LabView
4. data management: the operators need to register in the procedures can’t detect any modules[3], the reasons are:
display interface before they began to work, and procedure a The ADAM driver is not closed, it has been
will record the furnace conditions every 10 seconds. occupying the serial.
Everyday these data will form a daily document. In each of b LabView procedure has errors.
the data records, it contains both the workers’ number and 4) System running very slow. the reasons are:
their working time, and in the event of fault or when it a Data acquisition delayed too long
alarms the current data can be stored and printed. These
b Interruption in data collection process
measures can make it convenient to query, analysis and
investigate the production data. c The data acquisition module which needs to scan
responses disordered.
B. Level of Software Function d Enter wrong direction.
According to the practical production, the level of e The impact of other procedures.
software modules is based on the problems which may
V. DATA PROCESSING
happen on the production process and the requirement for
production management. So the software mainly has the Through displaying each point’s acquisition data, we can
following functions: use the key parameters to complete the control ,and set the
1. signal acquisition and display, the site temperature, representative parameters(such as: there are four signals T1,
pressure, flow, location and other signals can be shown. T2, T3, T4 of the furnace top temperature, take T1 as
2.the equipment control, after filtering and giving PID representative parameter ) as the alarm limits.
Software system will read the key parameters, compare
operations to the acquisition signals, we can output the
with the settings and execute PID calculations then output
control signals, then control the air valve opening, and then
the adjusting signals. Storage signals have also taken the
to adjust the parameters such as temperature and pressure to ways of representative parameters, which can save a lot of
achieve the objective of adjusting furnace condition. space to the data files. And it can also display the scattered
3.single-function, including setting parameters, human- data in a centralized way in the function of data analyze.
computer interaction, data management and other functions.
VI. CONCLUSION
IV. MAJOR TECHNICAL PROBLEMS AND SOLUTIONS
Based on the virtual instrument development platform,
It is a key process to operate and debug software for the the measurement and control equipment can significantly
system. In the practical production, if directly applying the improve the testing efficiency, increase testing functions and
system, there will inevitably cause great loss. So it must improve system performance and to improve the accuracy
have a quite accurate simulation system to complete the and precision control. Virtual instrument has already got a
debugging system before running in the field. very universal application in developed countries, while in
Before operating the system, we must finish the hardware china the traditional instruments are still in the separation
setting as the requirement and complete the hardware from computer. Therefore, it will be very conducive for the

143
development of china’s measurement and control technology [1] ZhaoYong, The status and development trend of virtual instrument
to use virtual instrument technology to transform traditional software platform technology. Foreign Electronic Measurement
Technology, 2002(1).
equipment. And it will greatly improve the production
[2] XuYun, Virtual instrument data acquisition based on serial
efficiency and reduce the production costs. communication. Instrument technology and sensor, 2002(1).
REFERENCES [3] YangLeping, LabView programming and application, Electronics
Industry Press..
.

144
2009 International Conference on Computer Engineering and Technology

A New Optimization Scheme for Resource


Allocation in OFDMA based WiMAX Systems
Arijit Ukil, Jaydip Sen, Debasish Bera
Wireless Innovation Lab, Tata Consultancy Services
BIPL, Saltlake-91, Kolkata, India
arijit.ukil@tcs.com

Abstract— In this paper, an efficient scheme to optimize (PF) based optimization heuristically tries to balance the
resource allocation for dynamic OFDMA based WiMAX systems fairness among the users in terms of outcome or throughput,
is presented, which provides priority estimated resource while implicitly maximizing the system throughput in a
allocation with individual QoS provisioning. Our proposed greedy manner. PF optimization problem as instantaneous
scheme dynamically assigns OFDMA resources to the users to
optimize the overall system performance in heterogeneous traffic
maximization of the sum of logarithmic user data rate in
and diverse QoS based WiMAX systems. To achieve this goal, we multi-carrier systems is considered in [4], which selects a
have introduced priority indexed long-term (PILTPF) resource user-carrier mapping where the logarithmic sum of the user is
allocation algorithm, which dynamically allocates the OFDMA maximized.
resources to the users to meet their QoS requirement, which is It is very much computationally expensive to satisfy each
dependent on user’s derived priority profile. It also considers the user’s instantaneous data rate requirement in an optimum way.
time diversity gain achieved in long-term computation of In order to be practically feasible, previous research work [5]
Proportional Fair (PF) metric. PILTPF algorithm emphasizes on proposes low complexity suboptimal algorithms. But the
individual user’s true priority in allocating system resources in approach of resource allocation based on instantaneous
order to maintain as well as optimize the requirements of
different QoS classes, existing in the current and next generation
guarantee of QoS does not consider the temporal diversity of
broadband wireless networks like WiMAX. Simulation results mobile wireless channel. Considering the channel dynamics
show considerable improvement of performance due to priority and the fine granularity of OFDMA systems in both frequency
based resource allocation with long term PF calculation with and temporal domain, it is quite obvious that mean QoS
respect to traditional PF algorithm. guarantee in long term for resource allocation would provide
Keywords— WiMAX, OFDMA resource allocation, QoS, long- better performance, specifically for delay-tolerant traffic.
term fairness, time-diversity gain, scheduling Another degree of freedom in QoS guarantee is the priority
of the user. A good resource allocator or scheduler generally
I. INTRODUCTION depends on the business model of the operator. QoS guarantee
The next generation broadband wireless applications is an important feature. Mostly, user satisfaction of a well-
require high data rate, low latency, minimum delay, real-time served user increases only marginally by increasing the QoS
applications; in short highly demanding Quality of Service level even further. However, if the QoS level is declined
(QoS), which cannot be realistically provided unless the below some threshold, the satisfaction level drops
limited system resources, bandwidth and transmitter power are significantly. Premium users are the users with higher priority,
intelligently used and properly optimized. Optimization who enjoy the privilege to get the best and uninterrupted
approaches basically attempt to dynamically match the service even if it has bad channel condition, affected the most
requirements of data-link connections to the physical layer with degraded service quality. By assigning considerable
resources available to maximize some system metric. The resources to premium users like UGS class in WiMAX, the
optimization objective and algorithm developed so far for limited system resources can not be properly utilized, which is
dynamic resource allocation in OFDMA systems mostly not what the service provider would like. So an integrated
consider instantaneous gain in system performance, where the scheme to simultaneously satisfy the individual QoS (user
system is either to attain maximum aggregate throughput or to requirement) as well as provide system performance
provide fairness among the users or to have a trade-off maximization (service provider requirement) is very much
between them. It was shown in [2] that in order to satisfy the required. So, it is quite likely that QoS provision should play a
objective of maximizing the total capacity, each subcarrier major role in deciding resource allocation and should be
should be allocated to the user with the best gain on it, and the coupled together.
power should be allocated using the water-filling algorithm From this perspective we propose an efficient resource
across the subcarriers. The principle of the resource allocation allocation scheme with integrated QoS provisioning by
taken in [3] is to allow the user with least proportional evaluating and assigning priority index to each user and a
capacity to use that particular subcarrier. Large gain in biased optimization based on the assigned priority index. The
throughput can be achieved through multiuser raw rate proposed PILTPF algorithm attempts to allocate the OFDMA
maximization by exploiting multi user diversity (MUD) but subcarriers to the users to achieve its minimum mean data-rate
simultaneously fairness must be guaranteed. Proportional Fair requirement within few frame duration with a degree of

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 145


DOI 10.1109/ICCET.2009.10
biasness to the higher priority users in heterogeneous traffic Pkn is the transmit power for nth subcarrier when transmitted
condition. The objective of the PILTPF algorithm is to
simultaneously provide long term fairness, QoS and system P
to kth user, which is equal to . Let Rknt = f( hknt )be the
optimization in order to satisfy the requirement both user and N
the service provider. PILTPF algorithm is very much suitable instantaneous achievable rate for kth user when nth subcarrier is
and practical for wireless broadband systems like WiMAX,
allocated at tth time instant and Rkt is the achieved data rate
LTE,IMT-A for its simplicity and mean QoS guarantee
feature. Simulation results also show the performance of the kth user at allocation epoch t and Rkt is expressed as,
improvement by PILTPF algorithm over unbiased N
B
conventional Proportional Fair algorithm.
The paper is organized as follows. In section II system
Rkt =
N
∑ρn
knt f (hknt ) (1)
model and problem formulation are presented. In section III
Unbiased Instantaneous Proportional Fair Optimization  
 hknt × Pkn 
2
problem is discussed. PILTPF algorithm and the concept of
f( hknt ) = log 2 1 +
priority indexing of the users are presented in section IV.

 B 
Simulation results roughly based on Mobile WiMAX Scalable  NT × 
OFDMA-PHY and analysis of the results are presented in the  N 
next section. Section VI provides the summary, conclusion  
and future scope of work. N  hknt × Pkn 
2

Rkt = ∑ ρ kn x log 2 1 +  (2)


II. SYSTEM MODEL AND PROBLEM FORMULATION  B 
 
n =1
NT ×
OFDMA is the standard multiple access scheme for next  N 
generation wireless standards like WiMAX, LTE, IMT-A. N K
OFDMA is basically Multi-user-OFDM. OFDMA is
characterized by a fixed number of orthogonal subcarriers to ∑∑ ρ
n =1 k =1
knt =N (3)
be allocated to the available users [1]. OFDMA resource
allocation algorithms dynamically assign mutually disjoint where ρ knt is the subcarrier assignment matrix at allocation
subcarriers to the users by taking the advantage of MUD to epoch t, if the nth subcarrier is assigned to kth user at tth time
meet the some specified system performance objective with instant, then ρ knt equals to 1, otherwise 0. In practice the
the help of knowledge of the channel condition available from
achieved data rate is less than that of what equation (2) suggests
channel state information (CSI). Multiuser OFDMA system
as there exists a few dB SNR gap. SNR gap in simplified [5]
architecture with Subcarrier Allocation and Dynamic Priority
Index Estimator module is shown in Fig. 1. A single cell term can be approximated as ∆ gap = -ln(5BER)/1.6. Then Rkt
downlink wireless cellular network with one base station (BS) becomes:
serving total K users is considered, each of which requires
 
certain QoS guarantee. The interference from adjacent cells is N  hknt × Pkn 
2
treated as background noise. The total available bandwidth B
is partitioned into N equal narrowband OFDMA subcarriers;
Rkt = ∑ρ ktn x log 2 1 +
 B 
 x ∆ gap (4)
 
n =1
B NT ×
the the subcarriers are denoted as s1, s2 ….sN, where sn =  N 
N As shown in Fig. 1, OFDMA subcarrier allocation architecture
Hz and in order to overcome frequency selective fading si is consists of three components, namely, Subcarrier allocation
chosen to be sufficiently smaller than the coherence Module, Priority Index Estimator and Scheduler. Priority
bandwidth of the channel. Each OFDMA subcarrier n, Index Estimator calculates the unique priority of each of the
belonging to user k, is subject to flat fading, path loss and user based on maximum buffer size; minimum data rate
shadowing with channel gains H = { hkn }. In addition, the requirement, maximum tolerable delay and QoS class of the
user and assigns each user with a unique priority index. Let
signals suffer from AWGN noise, which has Gaussian
distributed with zero mean with psd N0 and total noise power the available QoS classes be Qm , where 1≤m≤M. For an
is assumed as N T . Subcarrier allocation epoch is assumed to example, in WiMAX there exists five (M=5) QoS classes;
be less than the channel coherence time. Perfect channel UGS, ertps, nrtps, rtps and BE. UGS and ertPS class users are
characteristic is assumed in the form of channel state given the highest priority and should be satisfied with their
information (CSI). The QoS of the kth user is described by the QoS requirement all the time. PI k denotes the priority index
minimum individual rate requirement = [γ1, γ2, ……….., γK] of kth user and PI k is function of the maximum buffer size,
in bits/sec. Total available Transmitter Power is P. PILTPF
algorithm is simplified by equally distributing the total Signal to Noise Ratio (SNR), maximum latency and QoS class
available transmitted power as performance can hardly be of the kth user:
deteriorated by equal power allocation to each subcarrier [6].

146
PI k = f (Qk , bs k , γ k , δ k ) (5) R
k* = arg max knt (8)
where bs k is the maximum buffer size and δ k maximum Rkt
k
tolerable delay.
Subcarrier Allocation Module (Fig. 1) with the help of 1 1
Rkt = (1 − ) Rkt −1 + Rkt −1 (9)
PILTPF algorithm allocates OFDMA subcarriers to the users. ∆τ ∆τ
The scheduler decides, in each frame, how to schedule the The constraint of the system in order to provide QoS is:
packets for transmission. Basically, subcarrier allocation
module does the frequency domain mapping of the user to the
Rkt ≥ γ k ∀k (10)
subcarriers, scheduler does the time domain mapping of the The optimization and sub-optimization schemes (6-10)
users to the time-slots. Priority Index Estimator considers discussed so far deals with maintaining QoS guarantee
system constraints and based on user’s QoS class maps the instantaneously and without any provision to provide
QoS metric of delay, buffer-size, minimum data rate privileged service to the higher priority users. Traditional PF
requirement to a priority value, unique to each users. can only support a loose delay-bound QoS requirement, which
is not suitable for real-time multimedia services where the
III. UNBIASED INSTANTANEOUS PROPORTIONAL FAIR delay bound QoS requirement is stringent, which demands
OPTIMIZATION modification of the traditional approach of PF optimization to
Proportional Fairness (PF) in OFDMA system maximizes handle diverse QoS based traffic. PF is also not the most
the sum of logarithmic mean user rates [5, 7]. PF scheduler optimized solution for delay-tolerant applications, like nrtps,
maintains fairness by the law of diminishing return. BE class traffic in IEEE 802.16. To take full advantage of the
time-diversity gain, inherent to the nrtps and BE class of
Subc traffic, a QoS class-biased proportional fair optimization has
User1 arrier
1
to be introduced, which is discussed in the next section.
T
S
r
c
… h
a IV. PRIORITY BASED PROPORTIONAL FAIR OPTIMIZATION AND
buffer1 n ALGORITHM
User… e
K d s
Subc
u arrier
m Unbiased instantaneous Proportional Fair Optimization as
l i
e
N t
described in (6-10) is based on instantaneous computation of
bufferK
r t Wirel proportional fair metric ( PF ) and the resultant optimization
QoS e ess
K, r does not consider the time diversity and priority of the users. PF
calculates achievable data rate of individual user instantaneously
Priori
Subcarri CS
(8-9). The mean data rate achieved ( Rkt ) is computed as
ty
Index er I moving average to imply a notion of low pass filter [7] for the
Estim Allocatio {h
kn} purpose of providing fairness.
QoS1 ator P n
I
Wireless channel is normally very much dynamic in nature.
k Long term optimization for system performance improvement
Fig. 1. Priority based Resource Allocation module yields time diversity gain. The priority of the user, which is
N K
basically the monotonically increasing assurance of QoS, should
PF t = max ∑∑ ln R kt (6)
be taken into account to provide the premium users’ QoS
guarantee. Traditional PF optimization (6-10) does not consider
n =1 k =1
user’s priority and treats every user equally and unbiased way.
Equation (5) can be more generalized when PF is defined
This kind of subcarrier allocation may deprive the higher priority
as follows [6]:
user with bad channel condition to maintain its QoS. Priority

 ∑ Rknt  index is already introduced in equation (5). The simplest way of
PF t = ∏ 1 + n∈N incorporating user priority is to give the chance to the highest
 (7)
priority user to get allocated by the best of the subcarriers. But
k∈K  (∆τ − 1) Rkt 
  that will be the strict priority based subcarrier allocation. The
advantages incurred by considering the parameters like
where PF t is the proportional fairness index at tth instant,
maximum buffer size, maximum latency should be taken in to
∆τ is average window size or the period between successive account, which relaxes the strict priority and reflects the true
priority.
allocations and Rkt is the average data rate achieved of the
PILTPF algorithm exploits the time diversity as well as
user k at the preceding allocation instant. The above equation considers the priority of the user by calculating priority index
(7) is the optimal PF subcarrier allocation, but can not be based PF metric in long term to meet the constraint of minimum
implemented due to its high computational complexity. The rate requirement. PILTPF has two parts and operates
suboptimal form [7] is where subcarrier n is allocated to k* sequentially. First part estimates the user’s priority based on (5)
user when and the next one is subcarrier allocation.

147
Priority estimation evaluates the dynamic priority of the priority of the user is estimated by PI k , which converts the
user based on its current QoS class, available buffer–size,
traditional PF optimization as weighted PF optimization.
delay limit and minimum data rate requirement. PI is highest
for UGS class and for rest PI is estimated as below: Higher the priority of the user, higher the magnitude of PI k
Qk × γ k and more is the chance to get the subcarrier allocated even in
PI k = (11)
(bs kMAX ) (
− bs k t × δ MAX − δ t
) bad channel condition and high Rkt . Equations (11-15)
describes PILTPF optimization scheme. It can also be noted
where bskMAX , bsk t , δ MAX , δ t are the maximum buffer-size, from (13) that more time diversity gain would be achieved
used buffer-size, maximum delay-limit and elapsed delay for with the increasing value of δ kMAX , in fact.
kth user at current allocation instant (t). For, NDC traffic,
δ MAX − δ t = 1 . It can be clearly seen that: Lim P (ω k → γ k ) = 1
δ kMAX →∞
Above equation is the condition of absolute convergence to
PI k → ∞ , when bs kMAX − bsk t
or δ MAX − δ t → 0 the QoS requirement with probability one. This is due to the
Equation (11) is based on the notion that user’s priority will fact that in wireless mobile environment over long duration,
increase as the urgency for user’s allocation to resources time diversity gain becomes high and the mean channel
becomes higher. This (11) can also be termed as urgency condition ( Rkn ) follows similar distribution according to the
based priority assignment, which attempts to avoid QoS
violation to the maximum extent as well as minimize the Bernoulli’s Law of Large Numbers, which justifies the
outage probability. It can be noted in traditional resource intuitive interpretation that the expected value of a random
variable is basically long-term average when sampled
allocation, priority mostly depends on the value Qk only, repeatedly and can well be considered as independent and
which is termed as strict priority, where as, in priority index identically distributed (i.i.d) random variable with mean µ k .
estimation function (11), all the QoS related PHY and MAC
parameters are taken into account, which reflects the true Then theoretically, Lim TDgain = µ k
δ kMAX →∞
priority of the user and it is highly dynamic.
Subcarrier allocation part assigns the appropriate PILTPF optimization utilizes this performance gain for its
subcarrier to the user to optimize the system performance. It attempt to converge to γ k (14) by relaxing the QoS constraint
exploits the TD gain whenever possible. The optimization is of minimum data rate as statistical mean value. Maximum
modified PF. Subcarrier allocation module selects k* user to system optimization is obtained when all each user’s
assign n-th subcarrier based on:
Tk
allocation is complete only when t = δ kMAX , ∀k , which
PI k × Rknt exploits the time-diversity gain of each and every users.
k* = arg max (12) Based on the optimization scheme (11-15) the proposed
k Rkt t =1 PILTPF algorithm is described as below:
Tk T
where, Rkt = E ( Rkt ) t =1 (13) Step1: Set initial mean achievable data rate: E ( Rkt ) =ε
t =1
The constraint of optimization utilizes the TD gain. Instead of and t=0 , where ε is a small number.
instantaneous data rate guarantee, it assures long-term average Step 2: Find
PI k , ∀k as per (11)
data rate.
Tk Step2: Find the user k* as per (12) for all the subcarriers
E ( Rkt ) t =1 ≥γk (14) Step3: Calculate the data rate achieved as
N
Tk = ∂ kMAX
∑ρ
(15)
per Rkt = knt × Rknt for all the users at tth instant
PILTPF optimization as described does not depend on the n =1
moving average value of Rkt nor does the PF metric is Step4: Find the mean data rate achieved by the kth user at tth
instant.
calculated instantaneously. Instead it calculates both the PF T
metric and Rkt in a window of Tk and allocates the Step5: if E ( Rkt ) t =1 ≥ γ k , find next best k, else continue

subcarrier to the user in a way to maintain its minimum Step6: t= t+ T f and go to Step 2
average data rate requirement within Tk time duration (14).
V. SIMULATION RESULTS AND ANALYSIS
If Tk = T f , where T f is the allocation instant; the problem is
To investigate the performance of PILTPF algorithm,
purely proportional fair. More the value of Tk , the more simulation results under the system parameters and simulation
ergodic the optimization scheme becomes and with higher scenario given in Table 1 is presented in this section. The
system parameters are roughly based on Mobile WiMAX
granularity in T f , better optimization can be obtained. The Scalable OFDMA-PHY. Frequency Reuse factor of 1 is taken

148
so that all the subcarriers can be assigned to the users. VI. SUMMARY AND CONCLUSION
Subcarrier allocation instant is taken as equal to be equal to We have proposed an efficient but simple OFDMA
the frame duration (5ms), which is assumed to be less than resource allocation algorithm, which has shown the
coherence time of the channel. A random heterogeneous mix characteristics of better performance and QoS guarantee in
of UGS,ertps, ertps, nrtps, BE traffic with varying QoS metric long-term than the conventional suboptimal PF algorithm in
like delay, buffer-size, minimum data rate are taken for QoS diversified heterogeneous traffic condition. PILTPF is of
simulation purpose. Simulation results are shown in Fig. 2, 3 very practical importance and can well be implemented for
and 4. next generation broadband wireless systems like LTE,
Fig. 2 is showing the comparison of achievable data rate of WiMAX, IMT-A to improve the overall system
the users by PILTPF and PF algorithm. It also shows the performance.
minimum data rate requirement of individual user as QoS
profile. Fig. 2 clearly shows that PILTPF algorithm follows
QoS profile for all the users where as in PF algorithm some of
the users get deprived and achieved very less data rate than
their minimum requirement due to the inherent feature of its
instantaneous PF metric computation. If the deprived user, say
10th user (fig. 2) is a high priority customer, then the
allocation is very much unacceptable from service provider as
well as user perspective. In Fig. 3 a bar chart comparing the
performance of PILTPF and PF algorithm is depicted. From
Fig. 2 and 3, it can be interpreted that as PILTPF considers
both the priority of the user and the time diversity gain, so it
results in better performance both in terms of throughput and
QoS guarantee. The unevenness in assigning subcarrier by Fig. 3. Chart comparison between PILTPF and PF
conventional PF algorithm becomes more visible when more
number of users exists. In that highly complex scenario of
large number of users, it is depicted in Fig.4 that PILTPF at
least attempts to follow the QoS profile in order to preserve
the importance of priority of the users. However, in a less
number of users and good channel condition throughout the
entire cell, the difference between the PF and PILTPF
diminishes.
TABLE I
Simulation Parameters
Available Bandwidth 1.25 MHz
Number of users 20/30
Number of sub-carriers 72
BER 10-3
SNR_gap -ln(5BER)/1.6
Channel model Rayleigh Fig. 4. User Achievable throughput by PILTPF and PF algorithm when
Modulation 16QAM number of users = 30
Frequency reuse factor 1
Channel sampling frequency 1.5 MHz REFERENCES
Maximum Doppler 100Hz [1] Ahmad R, et al. “Multi-Carrier Digital Communications Theory and
Applications of OFDM”. 2nd ed. Springer.
[2] Rhee et al. “Increase in capacity of multiuser OFDM system using
dynamic subchannel allocation”. IEEE VTC., pp. 1085–89, May 2000.
[3] Z. Shen, et al, “Adaptive resource allocation in multiuser OFDM
systems with proportional rate constraints,” IEEE Trans. Wireless
Communication, vol. 4, no. 6, pp. 2726–2737, Nov. 2005.
[4] Hoon Kim and Youngnam Han, “A Proportional Fair Scheduling for
Multicarrier Transmission Systems”, IEEE Communication Letters, pp.
210-212, vol.9, no.3, March 2005.
[5] Abolfazl Falahati, Majid R. Ardestani. “An Improved Low-Complexity
Resource Allocation Algorithm for OFDMA Systems with
Proportional Data Rate Constraint”, ICACT, pp. 606-611, 2007.
[6] Wei Xu, et al."Efficient Adaptive Resource Allocation for Multiuser
OFDM Systems with Minimum Rate Constraints", IEEE ICC, pp.
5126-5131, 2007.
[7] Christian Wengerter, Jan Ohlhorst, Alexander Golitschek Edler von
Elbwart., “Fairness and Throughput Analysis for Generalized
Fig. 2. User Achievable throughput by PILTPPF and PF algorithm when Proportional Fair Frequency Scheduling in OFDMA.”, IEEE VTC,
number of users = 20 Vol.3,pp.1903-1907, 2005.

149
2009 International Conference on Computer Engineering and Technology

An Integration of CoTraining and Affinity Propagation for PU Text


Classification

Na Luo1,2, Fuyu Yuan3 , Wanli Zuo1


1
College of Computer and Science and Technology,
JiLin University, Changchun, JiLin, 130012, China
2
Department of Computer,
Northeast Normal University, Changchun, JiLin,130117, China
3
State Key Laboratory of Electroanalytical Chemistry,
Changchun Institute of Applied Chemstry Chinese Academy of Sciences, 130022, China
Luon110@nenu.edu.cn, wanli@jlu.edu.cn, yuanfuyu@yahoo.com.cn

Abstract excluding the positive class (e.g. sample of non-


homepage should represent the Internet uniformly
Under the framework of PU(Positive data and excluding the homepages), and (2) manually collected
Unlabeled data), this paper originally proposes a negative training examples could be biased because of
three-setp algorithm. First, CoTraining is employed for human’s unintentional prejudice, which could be
filtering out the likely positive data from the unlabeled detrimental to classification accuracy. For above
dataset U. Second, affinity propagation (AP) approach reason, PU classification has been an important
attempts to pick out the strong positive from likely problem.
positive set which is produced in first step. Those data This paper has two main contributions. The first is
picked out can be supplied to positive dataset P. the proposal of employment CoTraining for purifying
Finally, a linear One-Class SVM will learn from both unlabeled dataset. Unlike former PU algorithm [2,3]
the purified U as negative and the expanded P as exploiting reliable negative dataset, CoTraining iterates
positive. Because of the algorithm's characteristic of to purify unlabeled dataset by filtering out some likely
automatic expanding positive dataset, the proposed positive examples. The behind rationality is that
algorithm especially performs well in situations where purifying the unlabeled data by filtering out a small
given positive dataset P is insufficient. A fraction positive data is much easier than exploit a
comprehensive experiment had proved that our small but reliable negative dataset. Moreover, the
algorithm is preferable to the existing ones. likely positive data being filtered out can also be made
use of supplementing positive dataset. Our second
1. Introduction contribution is the employment of affinity propagation
(AP) on likely positive data for expanding positive
Traditionally, a general binary text classifier is built dataset. Finally, a linear SVM will train both on the
by employing some algorithm on the positive dataset purified unlabeled dataset as negative examples and the
and negative dataset. This kind of algorithms are expanded positive dataset as positive examples. Thus,
termed supervised learning algorithm [1]. However, PU problem is transformed to supervised learning
Traditional supervised learning algorithms are thus not problem.
directly applicable because they all require both The remainder of the paper will be organized as
labeled positive and labeled negative documents to follow: Some related works is presented in section 2.
build a classifier. For instance, in order to construct a Details about the proposed algorithm can be found in
”homepage” classifier, one needs to collect a sample of section 3. A number of comparative experiments have
homepages (positive training examples) and a sample been made in section 4. Section 5 will briefly make
of non-homepages (negative training examples). some conclusions.
Collecting negative training examples is especially
delicate and arduous because (1) negative training 2. Related Works
examples must uniformly represent the universal set

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 150


DOI 10.1109/ICCET.2009.131
Probably Approximately Correct (PAC) learning each other by filtering out likely positive examples
from positive and unlabeled examples is proposed. It from the unlabeled dataset of the counterpart. In
defines a PAC learning model from positive and algorithm 1 positive dataset is denoted by P, unlabeled
unlabeled statistical queries. Liu Bing employs a dataset is U, arbitrary document is d, classifier is S, and
weighted logistic regression to PU and originally the purified unlabeled dataset is denoted as pU, L
defines a measure on unlabeled dataset. PEBL is represent the likely positive dataset which is filtered
another two-step approach involving in PU [3]. Unlike out from U. Classify(S,d) signify the label that S
other methods, it attempts to explore the distinguishing assigned to d.
words between positive and unlabeled corpus, then Algorithm 1: CoTraining Algorithm
using these distinguishing words to obtain reliable Input: (P,U)
negative set (RN). Liu Bing etc. reviewed several two- Output: (L,pU)
step PU approaches and proposed his Biased-SVM [2]. 1: Randomly split U set into two set U1, U2, subject to
Combining CoTraining framework with PU is first U1∪U2=U, U1∩U2={}
proposed by Blum and Mitchell [4]. Another 2: Build SVM classifier S10 with P as positive and U1
comprehensive study on Co-Training is made by as negative
Nigam and Ghani [5]. 3: Build SVM classifier S20 with P as positive and U2
as negative
3. The Proposed Algorithm 4: L={}; Q={}; R={}; i=0;
5: while(true)
As mentioned in introduction section, this paper had 6: Q={Classify(S2i,d)==positive, d∈U1}
proposed both the adoption of CoTraining for 7: U1=U1-Q
purifying unlabeled dataset and affinity propagation 8: R={Classify(S1i,d)==positive, d∈U2}
(AP) for expanding positive dataset. Specifically, the 9: U2=U2-R
proposed algorithm can be divided into three steps: 10: if(Q={} and R={})
(1) Purify unlabeled dataset with CoTraining by 11: break
filtering out likely positive set. 12: end if
(2) Employ affinity propagation on likely positive 13: L=L∪Q∪R; i=i+1;
set for supplementing positive dataset. 14: Build SVM classifier S1i with P as positive and
(3) Perform a linear SVM on the purified unlabeled U1 as negative
dataset as negative and the expanded positive dataset 15: Build SVM classifier S2i with P as positive and
as positive. U2 as negative
16: end while
3.1. CoTraining Step 17: L={Classify(S1i,d)==positive and
Classify(S2i,d)==positive, d∈L}
In order to obtain a reliable negative dataset, former 18: pU=U1∪U2
algorithms used to first assigned negative "pseudo-
label" to all unlabeled data and then train on it together 3.2. Affinity Propagation Step
with positive dataset. The result classifier is used again
to assign "pseudo-label" to unlabeled data. Obviously, For the purpose of expanding positive dataset,
such classifier is trained and classifying on the same affinity propagation is adopted. So far as we known,
unlabeled dataset. Theoretically, this classifier is not there is no existing algorithm involving with
likely to assign a confident label. This embarrassment supplementing positive dataset.
can be indeed avoided by out CoTraining algorithm The advantages of affinity propagation clustering[6-9]
which use two individual classifier trained on two over other clustering methods lie in that it’s more
different datasets to purify U iteratively. stable for different initializations. In affinity
Remarkably, the way CoTraining differs from propagation clustering, two kinds of message are
traditional CoTraining [5] is that the two basic exchanged between data points, each of which takes
classifiers are based not on two different feature spaces into account a different kind of competition. Messages
but on two different training datasets of the same can be combined at any stage to decide which points
feature space. are exemplars and, for every other point, which
Specifically, CoTraining consists of two individual exemplar it belongs to. The “responsibility” r(i,k), sent
SVM learners (base classifier) which are built on the from data point i to candidate exemplar point k,
same positive dataset and the different unlabeled reflects the accumulated evidence for how well-suited
datasets. The two base classifiers "help" or "co-purify" point k is to serve as the exemplar for point i, taking

151
into account other potential exemplars for point i. The 5: sum=0
“availability” a(i,k), set from candidate exemplar point 6: for each nd ∈ s ( k , k )
k to point i, reflects the accumulated evidence for how 7: if( nd ∈ P )
appropriate it would be for point i to choose point k as 8: sum=sum+similarity(nd,d)*(1);
its exemplar, taking into account the support from 9: else if( nd ∈ pU )
other points that point k should be an exemplar. To
begin with, the availabilities are initialized as a(i,k)=0, 10: sum=sum+similarity(nd,d)*(-1);
11: end if
and the responsibilities are initialized as r(i,k)=0, Then,
12: end for
the responsibilities and availabilities are iteratively
13: if(sum>0)
computed as:
14: sP = sP ∪ {d };
r (i, k ) ← s (i, k ) − max{a (i, k ' ) + s (i, k ' )} 15: end if
'
k ≠k

a(i, k ) ← min{0, r (k , k ) + ∑ max{0, r (i , k )}}, i ≠ k


' 16:
17:
end for
aP = sP ∪ P;
i ≠i &i ≠ k
' '

a (k , k ) ← ∑ max{0, r (i ' , k )} After AP step, positive dataset is expanded with sP,


i' ≠k
and this technique is especially suited for situations
Where s(i,k) reflects the similarity between the data where the given positive dataset is insufficient.
points i and k. For all i ≠ k, s(i,k) can be set to be the
negative Euclidean distance, namely, s (i, k ) = − xi − xk 2 ; 3.3. Semantic-based Feature Extraction in
while for all i=k, s(k,k) is a varying parameter, and the SVM Algorithm
initialized values of s(k,k) for all ks are set to be equal
to each other because all data points are equally A word possibly has many meanings, WordNet
suitable as exemplars. The affinity propagation takes a expresses a meaning with a synonym sets. If two
real number s(k,k) as its input. The number of features in one category have a common synonym set,
identified exemplars (number of clusters) is influenced we can say that these features represent this category
by the initialized value of s(k,k). As reported in the greatly [10]. In this paper, the semantic feature
literature, the shared value of s(k,k) is set as the median extraction is used by WordNet through the above
of the input similarities (resulting in a moderate examples. First, Documents meaning were determined
number of clusters) or their minimum (resulting in a by overlapping semantics of Documents, Next,
small number of clusters). However, the true number documents meaning found out the features which
of clusters may be a widely changeful value, but not formed documents vector. The algorithm provides the
exactly the moderate number or the small number. So method applying semantic extraction to form positive
in our design, we set the initialized value of s(k,k) document vector for PU problems. Algorithm finds the
varying from minijs(i,j) to their maximum maxijs(i,j), semantic for all the words in the positive set, and the
namely: repeated semantics are the meaning of the multi-sense
s (k , k ) = min s (i, j ) + α ( max s (i, j ) − min s(i, j )) words in the positive set, which represents the meaning
i, j i, j i, j
of the document. The words corresponding to these
where α ∈ [0,1] . semantics construct the important features represented
To quantify the labels, we assign 1 to positive label positive examples, so they can represent the document
and -1 to negative, pU is the purified unlabeled dataset, meaning greatly. Forming the vector of positive
and L is likely positive dataset. In this way, AP pick document by the words is to avoid losing the meaning
out the supplementary set (sP) from likely positive of document with reducing the dimension of document
dataset. vector, and ensure the later classifier. In the process of
semantic feature extraction, multi-sense words are
Algorithm 2: Affinity Propagation Algorithm disambiguated and selected by correct semantic.
Input: (P,pU,k,L) Currently, SVM is the most popular algorithm in
Output: (aP) text classification. The principle of minimizing the
1: sP={}; structure risk enables SVM to be suitable for high
2: for each d ∈ T dimension text data. However, One-Class SVM
3: Rank documents in pU and P according to its algorithm uses only the positive set to train the
similarity to d; classifier. In this paper we had improved the original
4: s ( k , k ) = min s (i , j ) + α ( max s (i , j ) − min s (i , j )) algorithm to form the document vector of positive
i, j i, j i, j examples by above method of semantic feature

152
extraction, and use the document vector to construct concerned, the goal of this step is to purify U by
the classifier. The algorithm of semantic-based feature filtering out the positive example. To measure the
extraction in One-Class SVM is as follows: effect of being purified, the popular F can be a good
choice. In our experiment, after CoTraining step, the
Algorithm 3: Semantic-based Feature Extraction in precision and recall of negative data in pU (purified
One-Class SVM Algorithm unlabeled dataset) are calculated and then combined as
1: Set all semantics appeared in LP follow: f=2*recall*precision/(recall+precision). For
hm_allSyn=NULL, Set semantics appeared the second step, it attempts to expand P with a
repeatedly in LP hm_crossSyn=NULL supplementary set (sP) that is extracted from LP (likely
2: For each document d in LP positive dataset). Obviously, the effect of the second
3: For each word w in d step totally depends on the precision of positive data in
4: For each semantic s of w this supplementary set (sP). Finally, for the third step
5: If not s∈hm_allSyn aiming to build an accurate classifier, F score in test
6: hm_allSyn+=s dataset is employed as measure of the final classifier’s
7: else if not s∈hmcrossSyn accuracy.
8: hm_crossSyn+=s
9: For each document d in LP 4.3 Experiments
10: For each word w in d
11: t=tfidf(w) Experiments are comparing the methods of
12: For each semantic s of w document frequency and semantic feature extraction
13: if(t≠0 and s∈hm_crossSyn) for one-class SVM algorithm, and the process is as
14: output w to the file of document vector of follows:
positive examples
15: sP=LP∪{d} Express data set as the file
16: break of sequence of woks

4. Empirical Evaluation Training set Test set

4.1. DataSets Training the set U Training the set P

We used two popular text collections in our Forming the tfidf vector
experiments. The first one is the Reuters-21578, which
One-Class SVM One-Class SVM classifier Test document
has 21578 documents collected from the Reuters classifier using using semantic feature
newswire. Of the 135 categories, only the most semantic feature extraction based on
represented by
extraction document frequency SVM vector
populous 10 are used. Each category is employed as
the positive class, and the rest as the negative class.
This gives us 10 datasets. The second collection is the
Usenet articles collected by Lang. we use each Fig 1: The system flow chart
newsgroup as the positive set and the rest of the 19 In the experiment, we take two experiments as γ is
groups as the negative set, which creates 20 datasets. 0.1 and 0.7. Table1 provides the average F score of all
For each dataset, 30% of the documents are randomly categories of classifier and shows that our method
selected as test documents. The rest(70%) are used to increases the F score by 11.15 percent as γ is 0.7, and
create training sets as follows: γ percent of the
by 6.45 percent as γ is 0.1. So we draw the conclusion
documents from the positive class is first selected as that out three-step method improves the performance
the documents from the positive set P. Te rest of the of One-Class SVM algorithm, especially when the
positive documents and negative documents are used positive examples are few.
as unlabeled set U. In the data preprocessing, after Table 1 Average F of One-Class SVM classifier
remove stopwords and stemmer, we use tf-idf express datasets γ Average F Previous Best F
document vector. 0.1 0.735 0.716
Reuters
0.7 0.885 0.780
4.2. Evaluation Measure 0.1 0.742 0.632
20Newsgroup
0.7 0.892 0.774
There are three measures evaluate the effects of
three steps respectively. So far as CoTraining step is

153
At last, we had trained the final SVM classifier dataset are listed in Table2. The result proves that the
from the purified unlabeled dataset (pU) as negative combination of three steps is superior to the former PU
and the expanded positive dataset as positive. In order algorithms. Moreover, even if the given positive
to test the final classifier, it is used to classify the data dataset is insufficient, the algorithm still performs well.
in 10 test dataset and the F score corresponding to each

Table 2 F Score of 10 datasets after three steps


γ acq com crude earn grain interest money ship trade wheat Avg
0.7 0.9380 0.8023 0.8705 0.9829 0.9211 0.8073 0.8745 0.8353 0.8822 0.7514 0.8666
0.5 0.9544 0.8527 0.8935 0.9809 0.9021 0.8217 0.8683 0.8742 0.9433 0.8333 0.8924
0.3 0.9642 0.7863 0.9049 0.9779 0.9305 0.7896 0.8541 0.7853 0.8701 0.8000 0.8663

5. Conclusions [3] H.Yu, J. Han, K.C. Chang, “PEBL: Positive example


based learning for Web page classification using SVM”, In:
Proc. of the international conference on Knowledge
This paper combines CoTraining in PU Discovery and Data mining, 2002, pp. 239-248.
classification, and learns the problems of PU text [4] T. Joachims, “Making large-Scale SVM Learning
classification based on affinity propagation and Practical Advances in Kernel Methods-Support Vector
semantic feature extraction. Its goal is that use these Learning”, MIT Press, 1999.
algorithms can improve the performance of classifier. [5] K. Nigam, A. McCallum, S. Thrun, T. Mitchell, “Text
Affinity propagation can improve the performance of Classification from labeled and Unlabeled Documents using
PU classifier when the positive examples are few. EM”, Machine Learning, Vol.39, 2000, pp.103-134.
From the comparison with the method, One-Class [6] H. Chen, D.R.Karger, “Less is more: probabilistic models
SVM increases the F score by 10.183 percent, which is for retrieving fewer relevant documents.” In Proc. of the 29th
Annual Int’l ACM SIGIR Conference on Research and
an important measure of classifier. Development in Information Retrieval, SIGIR’06, ACM,
New York, NY, 2006, pp.429-436.
Acknowledgement [7] K. Song, Y.Tian, W. Gao, T. Huang, “Diversifying the
image retrieval results”, In: Proc. of the 14th Annual ACM
This work was supported by National Nature Int’l Conference on Multimedia, MULTIMEDIA’06, ACM,
Science Foundation of China under Grant New York, NY, 2006, pp. 707-710.
No.60803102, and Technological Development [8] C.X. Zhai, W. W. Cohen, J. Lafferty, “Beyond
independent relevance: methods and evaluation metrics for
Projects of JiLin Province under Grant No.20070533. subtopic retrieval”, In: Proc. of the 26th Annual Int’l ACM
SIGIR Conference on Research and Development in
References Information Retrieval, SIGIR’03, ACM, NewYork, NY,
2003, pp.10-17.
[1] Y. Yang, “An evaluation of statistical approaches to text [9] J. FreyB, D. Dueck, “Clustering by Passing Message
categorization”, Journal of Information Retrieval, Vol.1, No Between Data Points” Science, Vol.315, 2007, pp. 972-976.
1/2, 1999, pp. 67-88. [10] S.Chua, N. Kulathuramaiyer, “Semantic feature
[2] B. Liu, Y.Dai, X. Li, WS.Lee, PS. Yu, “Building text selection using WordNet”, In: Proc. of the 14th Int’l Conf. on
classifiers using positive and unlabeled examples”, In: Proc. Web Intelligence(WI2004), IEEE Computer Society, Beijing,
of the 3rd IEEE int’l Conf on Data Mining, IEEE Computer 2004, pp.166-172
Society, Melbourne, 2003, pp. 179-188.

154
International Conference
on Computer Engineering and Technology

Session 3
2009 International Conference on Computer Engineering and Technology

Ergonomic Evaluation of Small-screen Leading Displays on the Visual


Performance of Chinese Users

Yu-Hung, Chien Chien-Cheng, Yen


Department of Product Design Graduate School of Design Management
Ming Chuan University Ming Chuan University
5 De Ming Rd., Gui Shan District, Taoyuan 5 De Ming Rd., Gui Shan District, Taoyuan
County 333, Taiwan County 333, Taiwan
roland@mail.mcu.edu.tw ccyen0706@yahoo.com.tw

Abstract information. However, display space on mobile devices


is at a premium, with the amount of information that
Leading display represents a mechanism for can be displayed on the small screens at one time
exhibiting temporal information instead of spatial extremely limited. One possibility in overcoming this
information to overcome the limitations of small-screen limitation is to use a leading display, where screen
mobile devices. Previous studies examining this area space can be traded for time to present temporal
focused only on information presented by leading information in a dynamic manner.
displays, the use of such devices may be influenced by Previous Chinese dynamic-display studies have
the context of tasks and adaptability of users was examined the effects of several leading-display factors
somehow disregarded. Actually, mobile interaction is on the visual performance of users, including
often a secondary task performed while doing presentation mode, speed, font size, text/background
something else; the attention of leading-display users color combination, jump length, and Chinese
cannot always be assumed to be only on reading typography [1-4, 6-8]. According to the results of the
leading-display information. Therefore, this studies [1-4, 6-8], speed and presentation mode were
investigation performed a dual-task experiment (a the two most critical factors for visual performance.
search task for static information and a reading task In most leading-display studies, the reading
for leading display information) to examine the effects comprehension of participants in each set of reading
of leading-display factors on the visual performance of conditions has been measured only once. An
users during different stages of usage (whether current assessment of the adaptability of users to leading
usage is the first, second, third, fourth, or fifth day of displays, that is, the connection between visual
usage) for a small screen. The results showed that performance and previous experience in using leading
leading display design factors did not distract displays, requires further investigation. Moreover, the
participants from static information search tasks but majority of leading-display studies have been
did affect participant reading comprehension on conducted under idealized single-task conditions,
leading displays. Speed and presentation mode resulting in a lack of information on how changes in
significantly influenced the participants’ reading the context of tasks affect the ability of users to
comprehension. Consequently, the possible perform effectively. Actually, mobile interaction is
applications of leading displays and the implications of often a secondary task performed while doing
these findings on reading Chinese text are discussed. something else; the attention of leading-display users
cannot always be assumed to be only on reading
1. Introduction leading-display information. Frequently, dynamic
display is a means to present notifying information to
The future is certainly looking mobile and wireless. users while they are reading static information on
Ubiquitous computing and personal networks are displays. Currently, in leading display used on
believed to be the near-future paradigms for our websites, for instance, the string of text moves from
everyday computing needs, essentially giving access to right to left sequentially along a single line within a
any information, anywhere at any time. small screen, which is widely used to show additional
The rapid development of ubiquitous computing has notifying information. In case of presenting notifying
led to the increasing use of mobile devices to read text information, users would be performing other task with

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 157


DOI 10.1109/ICCET.2009.21
attention focusing on the dynamic displays. For the screen was 40 cm. An environment involving both
instance, users can read dynamic information showed leading and static displays was constructed. Text was
on a single-line display of a facsimile machine, and the presented in black on a light gray background. The
tasks of searching and pressing keypads have to be leading display could be maximized to display ten
accompanied with simultaneously. Consequently, it is Chinese characters of 14-point Chinese typography on
important to address the disconnection between the a single-line display. Fig. 2 shows the interface design
actual use of leading display and the effects of leading- in which the leading and static displays are presented
display factors on users’ visual performance in terms of simultaneously on a smart phone.
dual-task scenario.

Figure 1. Example of the experimental


interface used in this study

2. Method
We conducted a 3 × 2 × 5 repeated-measures dual- Figure 2. Photo of the experimental interface
task experiment to examine the effects of speed at showed on an real-world P910i device
250, 350, and 450 characters per minute (cpm). Speed
settings were based on the studies of Chien & Chen Twelve college students (native Chinese speakers)
[2], Lin & Shieh [3],Shieh & Lin [4], Wang, et al. [6], from Taiwan were selected as participants. During the
Wang & Chen [7], and Wang & Kan [8]; presentation experiment, participants searched for 10 of the same
mode (character-by-character or word-by-word) was characters among 100 Chinese characters on the smart
based on studies by Chien & Chen [2], Lin & Shieh phone screen and simultaneously read a 30-character
[3], and Shieh & Lin [4]; and adaptability (day 1–5 of leading-display passage. In each trial, participants were
use) determined the visual performance of Chinese required to finish the search and reading tasks in 30 s.
users in using leading displays to accomplish dual During this period, the leading display repeated
tasks on small screens. continuously. At the end of the time period, the number
The dual tasks, which consisted of a static Chinese- of discovered target characters was recorded.
character search task and a leading-display information Participants were also asked to respond to two
reading task, were conducted on a Sony Ericsson P910i multiple-answer, multiple-choice comprehension
Smartphone (Fig. 1), with all text material displayed on questions based on the leading-display content. At each
a 208 × 320 resolution touch-screen. The smart phone session, participants performed two trials under each
was placed on a 75 cm high table with a desk condition and repeated the same experimental
synchronization stand. The smart phone was positioned procedure on days 1–5.
at an incline of approximately 105°. The distance from
the center of the screen to the desktop was 8 cm, while
the distance from the participants’ eyes to the center of

158
Table 1. Scores of search and comprehension for each independent variable
Independent Static-search Leading-display
variable score comprehension
Mean SD Mean SD
Speed (cpm) 250 0.95 0.11 0.88 0.14
350 0.95 0.09 0.84 0.20
430 0.94 0.08 0.72 0.25
Presentation mode Character-by-character 0.95 0.09 0.76 0.22
Word-by-word 0.94 0.10 0.87 0.17
Adaptability Day 1 0.93 0.12 0.82 0.16
Day 2 0.93 0.09 0.83 0.18
Day 3 0.96 0.07 0.83 0.15
Day 4 0.95 0.07 0.80 0.27
Day 5 0.94 0.11 0.79 0.23

Table 2. ANOVA table for mean comprehension of the leading display


Source Type III Sum of Squares df Mean Square F P
Speed 1.732 2 0.866 14.919 0.000 a
Mode 1.084 1 1.084 21.595 0.001 a
Day 0.127 4 0.032 0.666 0.619
Speed × Mode 0.007 2 0.003 0.055 0.947
Speed × Day 0.581 8 0.073 1.634 0.127
Mode × Day 0.141 4 0.035 2.390 0.065
Speed × Mode × Day 0.302 8 0.038 1.253 0.279
a
Significantly different at =0.01 level.

3. Results Previous studies of visual performance for leading


displays focused only on assessing the adequacy of
Analysis of variance (ANOVA) was applied during leading display design [1, 2, 4]. However, a leading
the statistical analysis of the experimental data and display does not usually appear in isolation and is
Tukey’s HSD (honesty significant difference) test was designed to accompany static information. The effect
used for post hoc comparison. The level of significance of leading display design on visual performance for
was set at α=0.05. static information thus is also an important issue.
In this study, we found that no factors significantly According to the analytical results presented here,
affected the static-information search task score, and none of the leading display design factors distracted
none of the interactions among factors was significant. participants from the static search task, but they did
In contrast, presentation mode and speed significantly influence comprehension. The impact of leading
affected reading comprehension (F1,11= 21.60, p< 0.01; display factors on the static search task was relatively
F2,22= 14.92, p< 0.01 ). Reading comprehension was low. This finding suggests that users can receive more
significantly higher for the word-by-word presentation information using a well designed leading display on
mode than the character-by-character format and was small-screen devices without sacrificing visual
also higher for the 250-cpm speed compared to 350 or performance efficiency on a static-information search
450 cpm. The adaptability factor did not significantly task.
affect reading comprehension, and none of the For the leading display, users had the highest
interactions among factors was significant. Table 1 reading comprehension using the word-by-word
shows the means and standard deviations of static- presentation mode at a speed of about 250 cpm. This
information search scores and leading-display reading finding is in accordance with previous Chinese leading-
comprehension and Table 2 shows the ANOVA display studies [1-4, 6, 7]. Chinese script belongs to the
analysis for the mean comprehension of the RSVP logographic system in which characters are used as
display. writing units, and no salient boundary exists between
characters. The character-by-character presentation
4. Discussions and Conclusions mode on the leading display required that subjects
partially use cognitive resources to divide the
characters into the smallest meaningful units. However,

159
the word-by-word format allowed the addition of [5] F. Sun, M. Morita, and L.W. Stark. Comparative patterns
spaces between words, making the boundaries between of reading eye movement in Chinese and English. Perception
the words more salient; this helped users to divide the and Psychophysics, 37 (6): 502–506, 1985.
Chinese characters into Chinese words, thereby
[6] A.H. Wang, J.J. Fang, and C.H. Chen. Effects of VDT
lowering the cognitive load and promoting reading leading-display design on visual performance of users in
comprehension of dynamic text [2-4]. In terms of user handling static and dynamic display information dual-tasks.
adaptability to leading displays and speed, previous International Journal of Industrial Ergonomics, 32 (2): 93–
studies on leading displays have shown no significant 104, 2003.
improvement in reading comprehension with time of
use increments, and 250 cpm is far slower than the [7] A.H. Wang and C.H. Chen. Effects of screen type,
average Chinese reading speed of 580 cpm [5]. Chinese typography, text/background color combination,
Leading displays present a trade-off between space and speed, and jump length for VDT leading display on users’
time, which is a novel presentation technique to most reading performance. International Journal of Industrial
Ergonomics, 31 (4): 249–261, 2003.
users [3, 4]. Thus, users may need more practice to
familiarize themselves with this novel, temporal- [8] A.H. Wang and Y.F. Kan. Effects of display type, speed,
domain, and dynamic technique. Further studies are and text/background colour-combination of dynamic display
needed to investigate how users acquaint themselves on user’ comprehension for dual tasks in reading static and
with and accept this novel presentation technique by dynamic display information. International Journal of
increasing time of use to improve reading efficiency for Advanced Manufacturing Technology, 23 (1–2), 133–138,
Chinese text dynamically displayed on a small screen. 2004.
The leading of dynamic information displays has
recently been identified as a means of presenting text
on electronic device screens. The results of this study
demonstrate user comprehension of a variety of leading
display designs. Suggestions made in this study may
assist interface designers in developing effective
leading displays that promote improved user
Comprehension for small-screen mobile devices.

5. Acknowledgment
The authors gratefully acknowledge the financial
support from the National Science Council, Taiwan,
Republic of China under Project NSC 97-2221-E-130-
021-.

6. References
[1] C.H. Chen and Y. H. Chien. Effect of dynamic display
and speed of display movement on reading Chinese text
presented on a small screen, Perceptual and Motor Skills,
100: 865–873, 2005.

[2] Y.H. Chien and C.H. Chen. The use of dynamic display to
improve reading comprehension for the small screen of a
wrist watch. Lecture Notes in Computer Science, 4557: 814–
823, 2007.

[3] Y.C. Lin and K.K. Shieh. Reading a dynamic presentation


of Chinese text on a single-line display. Displays, 27 (4–5):
145–152, 2006.

[4] K.K. Shieh and Y.C. Lin. Dynamic Chinese text on a


single-line display: Effects of presentation mode. Perceptual
and Motor Skills, 100: 1021–1035, 2005.

160
2009 International Conference on Computer Engineering and Technology

Curvature-based Feature Extraction Method for 3D Model Retrieval

Yujie Liu, Xiaolan Yao, Zongmin Li


School of Computer Science and Communication Engineering,
China University of Petroleum (east of China)
Dongying 257061, P.R.China
e-mail: liuyujie@hdpu.edu.cn; yaoxiaolan2002@163.com; lizm@hdpu.edu.cn

Abstract—Curvature on the surface of 3D mesh model is [8, 9], area of pieces [13], volume [10], normal
an important discrete differential geometrical descriptor. direction [4, 7], and so on, which are all the shape
It can show the curving degree very well for those models character. As we known, shape is easy to be received to
with curving pieces and the ones with extreme points or humans’ perception directly. Especially, in this paper,
extension components. In this paper, we use mean
curvature and corresponding coordinates of the vertexes
we introduce the curvature on surface of the model to
on the surface as the feature descriptor of model. The show the model well, and use it in retrieval further.
descriptor we defined describes models accurately and In the paper, we present a method based the
keeps invariant for transformation and rotation. curvature on the mesh model surfaces. It got well result
Additionally, we bring EMD (Earth Moving Distance) by doing a retrieval experiments on 314 models in PSB.
method into the similarity measure frame. This The paper left parts are organized as follow: Section 2
comparison way is very efficient and especially adapt to shows the previous works; Section 3 presents our
these conditions: different numbers of the two features, feature extraction method in detail; Similarity
variant or indefinite dimension of the features. Thought measurement is described in Section4 particularly;
several retrieval experiments, the results implied that this
Section 5 is our results show and analysis during
descriptor could be used to find the exact model from the
PSB model library. Particularly for models which are experiment process; At last, there is our conclusion in
made up of curving pieces and those models with extreme Section 6.
points or parts, the result showed much better than other
feature descriptors. II. RELATED WORK
3D model retrieval methods are in the increasing
Keywords—Mean Curvature; Feature descriptor; trend in the past years. Many methods are based on
EMD; 3D model retrieval shape of 3D model, which often use the surface
geometric features to describe models. In [8, 9] Osada
I. INTRODUCTION proposes a descriptor named shape distribution. He
Computer graphics technology and some 3D adopts the shape function of model, which is related to
scanning devices are all improved largely in the past the geometric characters such as distance of the random
decades. More and more 3D models appeared. two points on surface, square root of the triangle area
Meanwhile much more 3D modeling software is made up from the random three points on surface, cube
developed significantly and 3D models are not only in root of volume of the random tetrahedron made up from
large number but also in complex format of data type. model and so on. Then he computes values of one of
How to find the exact model to satisfy the practical the functions and gets a statistic to describe the model.
needs has become a heated topic. So, 3D model However, this means is not very accurate and maybe
retrieval has always been an important research issue suit to classify models rough. Afterwards, Mahmoudi et
during the past decades. It has also been implemented al. make use of curvature function to get seven views of
in many practical areas prevalently. How to describe a the model to describe the model in [10]. Similarly they
model accurately is the key problem in the retrieval also compute a statistic about the function values. There
subject. Generally, the feature we can extract from the are many other means based on this statistic way to
model is to describe the object accurately. Traditional show characteristic of models, such as the normal
classification of these model features goes through two vector on the surface of models [11, 12], histogram
main periods: from the model shape to the content of [13], cord-based method [14], and so on[15,16].
3D models. So in this paper, we concentrated the geometrical
The shape of the model is fundamental and the and topological features on the surface, which show the
lowest level feature. So there are many methods shape characteristics directly, to describe the model. So,
extracting features through the models’ surface shape we try to introduce curvature into the 3D mesh models.
attribute. Distance or geodesic distance on the surface

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 161


DOI 10.1109/ICCET.2009.49
We used the Meyer method to compute the 1
curvature of each vertex on the mesh surface, choose K ( xi ) =
2ΑMixed

j∈N1 ( i )
(cot αij + cotβij )( xi − x j ) (2)
the N biggest curvature vertexes, and combined them
with the standard coordinate position of each vertex to
Where N1 (i ) stands for the neighbor triangles of
show the overall model[7]. This descriptor is invariant
to transformation, rotation, projection and scaling under vertex
xi , and x j is the neighbor of xi , α ij and βij are
canonical coordinate system. Especially, for those
models with smooth surface or distinct topological
xi x j
the opposite angles of the edge respectively,
features, our method shows the better results. these angles relationship is shown in figure1.
Because of our feature is not only related to the At last, according to formulate(3), which shows the
curvature value, but also based on the coordinate vertex x
dates. The conditional similarity comparison method is relationship between the curvature vector of vertex i
not satisfied our needs. In the paper, we applied the and its value, we can get the mean curvature of every
EMD method to measure the similarity between vertex on the triangle mesh surface easily.
different models. This distance belongs to the engineer
K ( xi ) = 2κ H ( xi )n( xi ) (3)
implementation concept; moreover, it can measure the
two models with different dimension features and Note: in all above formulates, the bold font means
weights. WAN Li-Li used this method to compute vector.
distance between the spatial distributions of different
components in every two models [11]. Features and B. Our descriptor
weights in this method can be defined up to you. The Our descriptor is defined by the following
speed of the computation is so fast and it is a well formulate:
metric tool. F ( M i ) = ( P, κ H ) , i = 1, ⋅⋅⋅n;
III. CURVATURE FEATURE EXTRACTION P = {( x j , y j , z j )}, j = 1, 2, ⋅⋅⋅, N (4)
The common used geometrical characters such as
normal vector direction or some other surface angles κ H = {k j }, j = 1, 2, ⋅⋅⋅, N
information often has simple computation and these
features is not considered as the feature of one object Where, F is the descriptor of any model M i in our
directly. They are usually known as the assistant tool
library. It is made up of two sets: P and H , the
κ
combined with other features. In my method, we
compute the differential geometrical attribute—mean former is the coordinates of the vertex on surface of the
curvature, apply it to describe the model directly. model, and the latter is mean curvature. In our
experiment, after analysis of all models we choose
A. Mean curvature computation from PSB, we set N equals to 50 firstly. So, our
Based on the above principle of the finite element descriptor is the feature in 50 dimensional.
method, we compute the Voronoi area of the 1-ring Figure1 shows the curvature result of one face
neighborhood triangles on the model surface, and then model with curving pieces, where the left picture
compute the mean curvature on each vertex [7]. presents the change of the curvature on the model
Firstly, we must use the Voronoi area on surface of surface, and the color from red to blue stands for the
the model. Figure 2 shows the definition of the curvature value from big to small changing; The right
Voronoi briefly. For each point P on the triangle mesh one shows the vertexes of the whole model, and the
surface, connect the circumcenters of its 1-ring green ones are those feature point we have chosen
neighborhood triangles, the area which be constructed according to the curvature value.
is the Voronoi area of the vertex P.
Secondly, the Voronoi areas depend on the types of
mesh triangles. For the non-obtuse triangle, we can
compute the area by the formulate bellow:
1
∑ (cot α ij + cot βij ) xi − x j
2
ΑVoronoi = (1
8 j∈N1 (i ) )

Α
And then we use the mixed area Mixed to compute
the mean curvature vectors by the following formulate: Figure1. The curvature of one face

162
Table1 shows the time our descriptor computation P = {( p1 , w p1 ),( p2 , w p 2 ), ⋅⋅⋅,( pm , w pm )}
cost, we only list four models with different size in Let be
vertexes and faces, and record the time spent to
the first signature with m clusters, where
pi is
compute the mean curvature of all vertexes and the N
biggest ones respectively. It is not difficult to see that wpi
representative of the cluster and is the weight of
the largest model s1734 will only spent 2.3 seconds
approximately on computing the N biggest vertexes; Q = {(q1 , wq1 ), (q1 , wq1 ), ⋅⋅⋅, (qn , wqn )}
the cluster;
and for the small size model s0661, it only spent D = [ d ij ]
0.000858 seconds on computing the feature we want. is the second signature with n clusters. And ,
So, this descriptor is suitable to the library with large dij
number of models, because it has the lower time cost the ground distance matrix where is the ground
and feasible to describe different models. All the time q p
listed is for Intel Celeron M 430 1.73 ghz with 512 distance between cluster i and j . The goal of the
RAM. F = [ f ij ] fij
EMD is to find the flow with the flow
TABLE1I. TIMING OF OUR METHOD NEEDED
between
qi and p j that minimize the overall cost [12].

∑ ∑
Model Verte Faces Time(all Time(N m n
i =1 j =1
fi j di j
ID x vertexes) biggest) EMD ( P , Q ) = (5)
∑ ∑
m n
s0661 71 138 0.000796 0.000858 f
i =1 j =1 i j
s0838 1981 3907 0.022880 0.025905
B. Our Measurement
s0961 21013 40384 0.237080 0.279705
In our method, the signature is composed of the
s1734 31649
160940 1.883898 2.267323 mean curvature and the coordinate values for each
8
vertex on the model surface. We recognized the mean
curvature as the weight of the signature, and defined
IV. EMD SIMILARITY MEASURE
the Euclidian distance between the coordinates of
In this section, we introduce the EMD method to vertexes as the ground distance function. Run the
measure our descriptor and then used it into retrieval process of the EMD comparison, the dissimilarity
experiment. between the different models can be valued and
Traditional comparison method uses Euclidian computed fast.
distance, Minkowski distance,Hausdorff distance and In the experiment, we defined that the
so on. SIG_MAX_SIZE equals 100. Besides our descriptor is
These means are limited to the dimension of chosen the N biggest mean curvature, it needs to make
features and related to the numbers of the feature sure the N will be smaller than 100. If we need to deal
points in two models will be compared. So, for the with other large mesh models, we can change these
sake of avoiding this problem, we adopt the earth constraints and make the SIG_MAX_SIZE much
mover’s distance (EMD) means common used in larger.
engineering implementation in our method.
V. EXPERIMENT RESULT
A. Method Presentation
Our experiment is based on the triangle mesh
Earth mover’s distance can be dating back to the models in PSB benchmark database [13]. We choose
transport problem, and then be implemented in many 314 models from the 1814 models and it contains 47
areas. It can evaluate the dissimilarity between two categories and 37 non-empty classes.
multi-dimensional distribution in some features space After the curvature computation, we applied the
where distance measure between single features, which EMD method to compare the similarity and use the
we call the ground distance is given [12]. model in this database to finish the retrieval process.
Intuitively, given two distributions, one can be seen The evaluation tool we used is also in the PSB
as a mass of earth properly spread in space, the other as benchmark. The experiment results were compared to
a collection of holes in that same space. Then, the the Shape Distribution and EGI descriptors. It
EMD measures the least amount of work needed to fill improved that our method got the well result,
the holes with earth. Here, a unit of work corresponds especially for those models with curving pieces and
to transporting a unit of earth by a unit of ground those with extreme points or parts, the retrieval result
distance. shows much better.

163
A. Retrieval result
The figure 2 shows part of our results for five
models: head, feline, spider, bottle, and face. The first
model plot is the model we want to retrieval, and the
left three are the results showed in order of ascending
dissimilarity.

Figure4. Average precision and recall of all models

From the precision-recall plots of all models (fig. 3)


and all classes (fig. 4) in our experiment, it is notable
Figure2. Retrieval results
that the red line is on above of the green and blue ones.
We don’t list all the retrieval result, because each We can improve the mean curvature descriptor has
result all contains 314 models and they are in great higher retrieval quality than shape distribution and EGI
number. By the Precision-recall diagram we can methods.
compute the precision and recall for each retrieval with VI. CONCLUSION
all the models listed in the retrieval results.
While we compute the P-R curves, we compare our In this paper, we propose a new descriptor for the
method with the Shape distribution and EGI (Extend 3D triangle mesh model. The descriptor combined the
Gaussian image) respectively and get one plot showed vertexes’ mean curvature on the surface of the model
in Fig8 below. and the coordinate position of these vertexes. Using
EMD method to compare features we computed in our
B. The whole efficiency experiments, we found that the descriptor showed well
Applied all the 314 models to do the retrieval results and especially for those models with curving
experiment, got the precision-recall plot of all the pieces and those with extreme points or extending
models and compared it with the other two methods, parts.
the result showed that our descriptor is much more The biggest virtue of our method is to describe the
excellent than the other two. curing pieces and the extreme points or parts of the
model accurately. Moreover, through the retrieval
experiment, our method got well results. On the other
hand, the weakness of the descriptor is that it does not
adapt to the complex models or other models with
plain pieces.
In our future work, we can continue to express the
model with other differential geometrical operators
such as Gaussian curvature, normal curvature and
direction on the mesh surface. We can also combine it
with other features to get much better feature
expression and try to solve the inaccurate description
for other general models with plain pieces.
ACKNOWLEDGEMENTS
This work is supported by National Key Basic
Figure3. Average precision and recall of all classes
Research Program of China (2004CB318006) and
National Natural Science Foundation of China
(60533090, 60573154).

164
REFERENCES [12] E. Paquet, M. Murching, T. Naveen, A. Tabatabai, and M.
Rioux. Description of shape information for 2-D and 3-D
[1] Gray, A. The Gaussian and Mean Curvatures" and "Surfaces Objects Signal. Processing: Image Communication, 6:103-122,
of Constant Gaussian Curvature, Modern Differential 2000.
Geometry of Curves and Surfaces with Mathematica, 2nd ed.
Boca Raton, FL: CRC Press, 1997, pp. 373-380 and 481-500. [13] M. Ankerst, et al. 3D shape histograms for similarity search
and classification in spatial databases. Proc. 6th Intern. Symp.
[2] P.J.Besl and R.C.Jain. Invariant surface characteristics for 3D On Spatial Databases (SSD’99), Hong Kong, China, Springer-
object recognition in range images. Computer Vision, Verlag, 1999.
Graphics, and Image Processing. 33:33-80, 1986.
[14] E.Paquet, Rioux.M. A query by content system for three-
[3] M.Brady, J.Ponce, A.Yuille, and H.Asada. Describing dimensional model and image databases management. In:
Surfaces. Computer Vision, Graphics, and Image Processing, Proceedings of IEEE on Image and Vision Computing, Ottawa,
32(1):1-28, 1985. pp: 345-352, 1997.
[4] Gabriel Taubin. Estimating the tensor of curvature of a surface [15] M. Hilaga, Y. Shinagawa, T. Kohmura, T. Kunii. Topology
from a polyhedral approximation. 5th Intl Conf. on Computer Matching for Fully Automatic Similarity Estimation of 3D
Vision (ICCV’95), 1995. Shapes. In proceedings of ACM SIGGRAPH, pp. 203-212,
[5] Bernd Hamann. Curvature Approximation for Triangulation 2001.
and Quadric-Based Surface Simplification. Journal of [16] Jean-Philippe Vandeborre, Vincent Couillet and Mohamed
Computational Geometry: Theory and Applications, November Daoudi. A Practical Approach for 3D Model Indexing by
1999. combining Local and Global Invariants. Proceedings of the
[6] Szymon Rusinkiewicz. Estimating Curvature and Their First International Symposium on 3D Data Processing
Derivatives on Triangle Meshes. Proceedings of 2nd Visualization and Transmission (3DPVT.2002).
International Symposium on 3DPVT 2004. [17] M. Hilaga, Y. Shinagawa, T. Kohmura, T. Kunii. Topology
[7] Meyer M, Desbrun M, Schroder P, et a1.Discrete Differential- Matching for Fully Automatic Similarity Estimation of 3D
Geometry Operators for Triangulated 2-Manifolds[A] . In: Shapes. In proceedings of ACM SIGGRAPH, pp. 203-212,
Visualization and Mathematics, Berlin, 52-58, 2002. 2001.
[8] O. Robert, F. Thomas, C. Bernard. Shape Distribution. ACM [18] Jurgen Assfalg, et al. Retrieval of 3D Objects using Curvature
Transactions on Graphics, 21(4):807-832, 2002. Maps and Weighted Walkthroughs. Proceedings of 12th
[9] [O. Robert and F. Thomas, “Matching 3D Models with Shape International Conference on Image Analysis and Processing,
Distributions”, ACM Transactions on Graphics, 21(4), pp. 807- 2003.
832, 2002. [19] Wan Lili, Zhao Qinping, Hao Aimin. A Method of 3D Model
[10] Mahmoudi .S, Daoudi. 3D models retrieval by using Retrieval based on the Spatial Distributions of Components.
characteristic views. Proceedings of 16th International Journal of software, 18(11):2902-2913, 2007. (in Chinese).
Conference on Pattern Recognition( ICPR2002), Quebec , 2 [20] Yossi Rubner, Carlo Tomasi, Leonidas J. Guibas. A Metric for
:457~460, 2002. Distributions with Applications to Image Databases.
[11] Paquet. E, Rioux. M. A content based search engine for VRML Proceedings ICCV pp.59-66, 1998.
database. In Proceedings of IEEE Computer Society [21] S. Philip, M. Patrick, K Michael, The Princeton shape
Conference on Computer Vision and Pattern Recognition , benchmark. Proceedings of International Conference on Shape
Santa Barbara , California , USA, pp.541-546, 1998. Modeling, Genova, pp.167-178, 2004.

165
2009 International Conference on Computer Engineering and Technology

A New Method for Vertical Handoff between WLANs and UMTS in


Boundary Conditions
Majid Fouladiana, Faramarz Hendessic, Alireza Shafieinejadc,
Morteza Rahimib, Mahdi M.Bayatc
a
Azad Islamic University, Saveh, Iran c , b Azad Islamic University, Qazvin, Iran
c
Dept. of Electrical and Computer Engineering Isfahan University of Technology, Iran
majidfoladi@yahoo.com, hendessi@cc.iut.ac.ir, a.shafieinejad@ec.iut.ac.ir
m18.rahimi@gmail.com mahdimbayat@gmail.com

Abstract estimated by the received signal strength of each cell.


We propose a new vertical handoff method in which In the vertical case, in addition to channel quality,
the number of signaling and registration processes is other parameters such as service cost, bandwidth,
lowered as a result of reduced utilization of home network delay, traffic, MN speed and movement
agent and correspondent nodes while users are mobile. patterns, must be considered in selecting a suitable
Throughput performance of the integrated network is network. After selecting the proper network, the MN
improved by reducing handoff delays and packet initiates the handoff and connects to the target network.
losses. Special conditions such as boundary condition The handoff process mainly depends on the network
also considered. Performance and delay evaluations architecture and its hardware and software elements.
which done by ns-2 are presented to demonstrate the Different algorithms and protocols have been proposed
effectiveness of the proposed scheme. for this process. Management of handoff protocols in
the network layer is based on MIP1, which introduced
1. Introduction two new elements, Home Agent and Foreign Agent to
address the problems of mobility [3,4]. These agents
Nonhomogenous networks contain a number of provide synchronization, updating and authorization of
wired networks with different technologies. The need user connections and the CoA of the foreign network.
for transparent services to end users makes vertical
handoffs between these networks unavoidable. 1.1 Nonhomogenous integrated networks
Generally, there are two categories of wireless
networks, those such as 3G and 2.5G which provide ETSI has proposed two methods for connecting
low bandwidth services over a wide geographical area, WLANs and 3G networks, loose and tight, as depicted
and those such as WLANs which provide high in Fig. 1.
bandwidth services over a small geographical area.
One of the most challenging problems in these
networks is QoS which must not experience significant
changes during the handoff process. Thus we need to
employ an efficient algorithm for handoff in terms of
initializing and completing the handoff operation [1,2].
Vertical handoff can be divided into upward and
downward cases [1]. In the downward case, the mobile
node (MN) enters a smaller cell from a larger one such
as 3G to WLAN, and in upward case, the MN enters a
Fig. 1: Tight and loose coupling architectures.
larger cell form a smaller one (i.e. WLAN to 3G).
Downward handoff usually has low delay sensitivity In a loose connection, a separate path is provided for
while in the upward case since the MN switches to a 3G traffic, thus the WLAN traffic is not transferred via
cellular network before disconnecting from the WLAN the 3G network and routing to the Internet is via the
delay is not a serious problems. However, in upward WLAN gateway. In this case, 3G networks and
handoff the MN tries to maintain its connection with WLANs can employ different protocols for
the WLAN because of better QoS and lower cost. authentication and accounting [5]. In a tight
In horizontal handoff, the only parameter for
selecting a network is channel quality which is
1
-Mobile IP

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 166


DOI 10.1109/ICCET.2009.166
connection, a WLAN is connected to the 3G network
in the same way as other radio access networks. It In our scheme, we employ a database of user and
becomes a part of the 3G core and all WLAN traffic is WLAN information, denoted the WUD to RNC unit.
transferred via 3G networks. The WLAN WUD contains the geographical position
and general specifications of the networks such as
2. The Proposed method bandwidth, delay and cost, while for users we store an
access and priority list of those WLANs a user can
In our approach the mobile node (MN) locations in connect to. As mentioned above, when a CN requests
the UMTS network are estimated as the MN nears the the position of a MN from the SRNC, the SRNC
WLAN. At an appropriate time, a message is sent to computes the approximate position of the MN and
the MN to turn on its WLAN interface. In this scheme compares it with that stored in the WUD. If the
the UMTS’s SGSNs are considered as FA and also the difference is below the threshold (Rth), a message is
WLAN’s APs in each SGSN are considered as a B sent to the MN to turn on its interface. A comparison
Node for that SGSN. While entering a WLAN from a can be done based on the inequality
UMTS network, the MN gets a new IP address from ( x − x 0 ) 2 + ( y − y 0 ) 2 < ( R − R th ) 2 (1 )
the WLAN.
After assigning the new address, all of the packets where ( x, y ) , ( x0 , y0 ) , R and Rth show the current
from the CN with the old IP address, which is valid for MN position, center of the WLAN, radius of the
the UMTS network, must be tunneled to the MN by WLAN, and the threshold, respectively.
means of this new IP address. On the other hand all In this method, upward and downward handoffs
packets from the MN to the CN must be sent using the differ because it is not possible to use 3GPP estimation
old IP address, routed to the AP, then UMTS, and when the MN is in a WLAN network. In the next
finally forwarded to the MN. We first describe the sections, we explain the upward and downward
process of turning on the WLAN interface, and then handoff techniques.
we explain the details of our protocol for upward and
downward ones. 2.1 Downward handoff
We estimate the location of the MN using 3GPP
methods which can be categorized in four major We assume the MN is connected to the CN via Node
groups [6]: B and moves in the UMTS network. The SRNC
Cell identifier regularly evaluates the MN position and relays this
OTDOA2 information to the CN. If the MN nears a WLAN
UTDOA3 boundary, the SRNC signals the MN. The MN turns on
GPS4 its WLAN interface and searches for advertisement
Regardless of the method employed, while messages from nearby WLAN APs. Next, the MN
connecting to the MN, the CN requests the MN determines if there is an AP with better quality than the
position from the SRNC via the Iu interface. The UMTS network according to a weighted function [7] of
SRNC collects the required information from the the AP parameters.
LMU, evaluates the MN position and finally responds ⎡ ⎤
to the CN [7]. Fig. 2 shows UMTS/WLAN vertical f n = W n = ∑ ⎢ ∏ E sn, i ⎥ ∑ f s , j ( w s , j ) N (Q sn, j ) (2)
s ⎣ i ⎦ j
handoff architecture
If the MN does not find a suitable AP with a cost
function better than current UTMS, it ignores the
handoff process and continues its current connection.
Otherwise, the handoff process shown in Fig. 3 is
initiated. The AP sends the registration request which
contains the new CoA address to the FA, and then the
FA registers the MN and responds to the AP. In
addition, the FA sends a binding update message to
Node B to cleanup the allocated resources. Afterwards,
the FA is informed of the new IP address of the MN
Fig. 2: UMTS/WLAN vertical handoff architecture.
(which is valid in the AP domain).
The received packets from the CN which have the
2 old MN IP address (which is valid in the UMTS
-Observed Time Difference Of Arrival domain), are tunneled to the new IP address by the FA.
3
-Uplink Time Difference Of Arrival Since the source address of the packets from the MN to
4
-Global Positioning System

167
the CN is the old MN address, these packets must first 2.2 Upward handoff
be routed to the AP through the new IP address and
then forwarded to the CN. We consider the MN is connected to the CN in the
WLAN network. In this case, only one upward handoff
is required. While the MN is in the WLAN network
and connected to the CN via the AP, it must
continuously measure the strength of the received
signal and compare it with the threshold Sth. If the
measured strength is below Sth for at least a threshold
interval (Tth), the MN will send a handoff request to
Node B. If the system rejects the request, the MN must
find another network, otherwise it will be
disconnected. At the beginning of the process, Node B
forwards the request to the FA which registers the MN
and then informs Node B. Then all packets sent
between the MN and CN are transmitted through Node
B. Moreover, the FA sends a binding update message
to the AP to cleanup the allocated resources. This
process is illustrated in Fig.5, 6.

Fig. 3: The UMTS to WLAN handoff process.

Fig.5: The WLAN to UMTS handoff process


Fig. 4: Signal flow for downward handoff
M4 Sending target network information, M5: MN
signaling flow, M11-13: Data path for the neighboring
WLAN, M14-15: Data path from the MN to CN.

168
Fig. 7: Special handoff when the source and destination FAs are
similar.

Fig. 6: Signaling flow in an upward handoff starting in the


WLAN, M1-4: Data path between the CN and MN before handoff.

2.3 Boundary conditions

In this section, we consider the case where the


WLAN is not covered by one Node B. For the situation
Fig.8: Signaling for upward handoff when the source and
where the WLAN is covered by two Node Bs, we destination FAs are similar,M1-5: Data path between the CN and
identify two cases based on the number of FAs related MN before handoff.
to these Node Bs, i.e., the Node Bs have a common FA 2.3.2 The case of two Node Bs under two
or different FAs. For these cases the downward FAs
handoff is the same as in Section 2.1 and upward
handoff is the same as in Section 2.2, but when the When a Node B is under coverage of two different
connection begins in a UMTS network, it is different FA (fig. 9) before and after of handoff, while in
than in Section 2.2. This is discussed in detail below. WLAN and the received signal strength is below SRth,
MN received advertisement message from B Node2
2.3.1 Two Node Bs under one FA and then send handoff request to B Node2, this
message must be forwarded along a path B Node2-FA2-
According to Fig.7 , the MN connects to the CN via FA1. This process needs a registeration in CN which
the first Node B and then with a downward handoff causes more delay than previous handoffs. Thus for
enters the WLAN and accesses the CN through the AP. reducing the effects of packet loss, we offer propose
Then the MN exits from the WLAN and enters the that FA1 routed the packets with MN destination via B
second Node B domain. This process is the same as in Node1 and in addition send a copy of them to FA2.
Section 2.2 in spite of the existence of two different As the strength of received signal form AP in MN
Node Bs. Moreover, the protocol is completely become less than treshold, MN sends registeration
transparent to the HA and CN which do not need to request to B Node2 which in its turn forwarded to FA2
know the new IP address of the MN. This part of the and then HA repectively. Affer registeration in HA,
protocol was simulated and the results show an responses was returned to FA2 and then to B Node2.
improvement in handoff delay. For correcting MN address in packets from CN, HA

169
must send updating message to CN too. After this 3. Performance Results
message valid addresss of MN is the one which was
got from FA2. We use NS-2 for simulation [8]. IEEE 802.11b was
For cleanup the resources allocated for MN in B selected for the WLAN in addition to a UMTS
Node1, FA2 send a connection updating message to network. Handoff delay is computed as the difference
FA1 which in its turn forwarded to B Node1. After in time between receipt of the last packet in the
receiving updating message, FA1 must send all of previous network and the first packet in the new
packets with MN destination to FA2 until CN registers network.
the new address of MN. This process is illustrated in Figs. 11 and 12 show the delay in downward
Fig. 10. To eliminate the problem of packet lost during handoff. Fig.11 shows a tight architecure between the
handoff delay, MN sends a message containing the ID AP and SGSN. An improvement was achieved relative
of the last received packet to FA2 via B Node2 which to the MIP protocol. Similar results are shown in
make it possible for FA2 to forward the received packet Fig.12 in which thw FA and AP do not have a wired
with MN destination to MN. Thus the packet lost connection so packets between them are routed through
during handoff is minimized. the Internet. In this case, the Internet delay was
selected randomly between 0 and 55 ms.
For upward handoff, both tight and loose connections
were considered, First the MN initiates connection
with the CN in the WLAN and then enters the UMTS
network. These results are shown in Figs. 13 and 14 for
tight and loose connections, repectively, Second, the
MN connects to the CN via the SGSN address and
enters the WLAN. Then it initiates handoff to UMTS
during the connection with the CN. It is not necessary
to register in this case and a reconnect request to SGSN
is sufficent. Figs.
The above results considered a WLAN that is
completly located within a UMTS network. The results
where the WLAN is located between two Node Bs
under one FA are shown in Figs. 15 and 16 for tight
and loose connections, respectively.

Fig. 10: Upward handoff signaling for different source and


destination FAs,M1-5: Data path between the CN and MN before
handoff.

Fig. 11: Downward handoff delay in tight coupling. Fig. 12: Downward handoff delay in loose coupling.

170
Fig. 13: Upward handoff delay in tight coupling Fig 14: Upward handoff delay in loose coupling

Fig. 15: Upward handoff delay in tight coupling in the case of two Fig. 16: Upward handoff delay in loose coupling in the case of two Node
Node Bs with one FA. Bs with one FA.
between WWAN and WLAN, ,” IEEE Commun.
4. Conclusions Mag., vol. 41, pp.102-108, 2003.
[2] Siddiqui,F.,Zeadally,S.,“Mobility management
We proposed a new vertical handoff method which across hybrid wireless networks: Trends and
does not require any modifications of the WLAN challenges,” Computer Commun., vol. 29, no. 9, pp.
structure. The only change is in UMTS where SGSN 1363–1385, May 2006.
must tunnel packets to the MN after receiving the [3] Perkins, C. and R. Glenn, “IP Mobility Support
new MN address. While in the WLAN, the MN has for IPv4”, RFC 2404, Aug. 2002
two addresses, the UMTS address which is used as [4] El Malki, K., et al., Low Latency Handoffs in
the source and destination of transmitted packets, and Mobile IPv4,Internet Draft, Aug. 2005.
the CoA address which belongs to the WLAN and is [5] Salkintzis, A.K., “Interworking technique and
used for routing packets to the CN via the AP while architecture for WLAN/3G integration toward 4G
in the WLAN. Special conditions such as boundary mobile data networks”, IEEE Wireless Commun., vol.
condition also considered This method reduces the 11, no.3, pp. 50-61, June 2004.
interaction between the CN and HN. The processing [6] 3GPP TS25.331, Radio Resource Control (RRC):
time and handoff delay were both reduced, in both Protocol Specification, Version 6.6.0, June 2005.
coupling tight ones which AP has wired connection [7] McNair, J., and Zhu, F., “Vertical handoff in
with SGSN was considerably reduced and cause a fourth-generation multinetwork environments”, IEEE
higher network throughput. Wireless Commun., vol. 11, no. 3, pp. 8-15, June
2004.
[8] Network simulator. URL http://www.isi.edu/
5. References
nsnam /ns/.
[1] Zhang, Q., Guo, C., Guo, Z., and Zhu, W.,
“Efficient mobility management for vertical handoff

171
2009 International Conference on Computer Engineering and Technology

Research on Secure Key Techniques of Trustworthy Distributed System

Ming He
1.Institute Command Automation, PLA Aiqun Hu Hangping Qiu
Science and Technology University; Information Science and Engineering Institute Command Automation,
2.Information Science and Engineering School, PLA Science and Technology
Institute, Southeast University, Southeast University, University,
Nanjing,China Nanjing, China Nanjing, China;
e-mail: blue_horse@126.com e-mail: aqhu@seu.edu.cn e-mail: qiuhp8887@vip.sina.com

Abstract— To arrive at the goal of intensifying the software. On the one hand, these products make high
trustworthiness and controllability of distributed systems, the requirement for administrators. A few users are able to fall
core function of secure algorithms and chips should be fully short of this kind of demand. On the other hand, as far as the
exerted. Through building the trustworthy model between architecture is concerned, these products are extra add-ons.
distributed system and user behaviors, constructing the
architecture of trustworthiness distributed systems,
They ascribe the passive defensive forms and can not cope
intensifying the survivability of services, and strengthening the with the secure menace which is increasingly variational.
manageability of distributed systems, the secure problem of The secure problems of distributed system need be solved
distributed systems is to be radically solved. By setting up the and provide more reliably and simply controllable means to
trustworthy computing circumstance and supplying the construct the trustworthy environment [2].
trustworthy validation and the active protection based on 3) distributed system is devoid of controllability and
identity and behavior for trustworthy distributed system, we manageability, most remote-behavior is unpredictable
will reach the goal of defending the unaware viruses and At the present time, capability of distributed systems is
inbreak. This research insists that the security, controllability, insufficient in mangy conditions such as user behaviors,
manageability, and survivability should be basic properties of
a trustworthy distributed system. The key ideas and techniques
run-states, controllability and manageability of system
involved in these properties are studied, and recent resource. At the same time, those capabilities are absolutely
developments and progresses are surveyed. At the same time, necessary not only for the security of distributed systems
the technical trends and challenges are briefly discussed. but also for health and continuance of development.
Therefore, new ideas are needed to resolve the problems
Keywords-trustworthy distributed system; trustworthiness; such as security and function of distributed systems. To
controllability; survivability arrive at the goal of intensifying the trustworthiness and
controllability of distributed systems, through building the
I. INTRODUCTION trustworthy model between the distributed system and user
At present, the techniques of distributed system are behaviors, constructing the architecture of trustworthiness
excessive, miscellaneous, and the cost of implementation is distributed systems, intensifying the survivability of
great. The influence on the performance of distributed services, and strengthening the manageability of distributed
system is increasingly complex. The overstaffed abuse is systems, the core function of secure algorithms and chips
gradually revealed. For example: should be fully exerted. The secure problem of distributed
1) distributed system is built on the insecure terminal systems including protection, creditability and
system manageability is to be radically solved. The security of
The most prominent secure problem of terminal system is service of distributed systems is improved effectively and
prone to suffer from the erosion by the worm virus and development of Electronic Commerce and Electronic
Trojan horse. Because the bulk of terminal systems do not Government is promoted healthily and fleetly.
In this paper, we present a new scheme for constructing a
adopt enough safety precautions, some important programs
trustworthy distributed system and make research on secure key
and files will be destroyed. Moreover, other goal systems techniques. In section1, we analyse the situation of security in
will be attacked by the worm virus and Trojan horse. distributed systems and points out the necessity to build
Therefore, these will lead to the drop of performance of the trustworthy distributed systems. In section 2ˈwe introduce
whole distributed system. Distributed system is confronted the notion of trustworthy distributed system. Through
with the serious crisis of trust[1]. building the trustworthy model between the distributed
2) distributed system is scare of the trusted safeguard system and user behaviors, constructing the architecture of
measures trustworthiness distributed systems, intensifying the
Practices indicate that the worm virus and Trojan horse survivability of services, and strengthening the
could not be kept out with firewall, IDS, and antivirus manageability of distributed systems, the security problem of

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 172


DOI 10.1109/ICCET.2009.100
distributed systems is radically resolved in section 3. The quickly querying and updating, and spread to corresponding
significance of this paper is present in section 4. components for correlation computing.
To complete trustworthiness of distributed system, there
II. OVERVIEW OF TRUSTWORTHY DISTRIBUTED SYSTEMS are four problems: 1) Trustworthiness of remote user:
At the present time, there are different cognitions to the trustworthiness of user is the precondition of security in
trustworthy distributed systems: based on dependable distributed system and needs identity authentication terminal
authentication, based on conformity of exiting security system so that termination and user can be controlled
technologies, based on trustworthiness of distributed system, separately by distributed system. 2) Trustworthiness of
based on trustworthiness of service supported by distributed remote platform: trustworthiness of remote platform contains
system. The divergence to opinion may result in illegibility trustworthiness of identity and computing environment.
of definition on trustworthy distributed system and Distributed application is secure only when the platform is
aggrandize difficulty of estimation for maneuverability of credible, otherwise, the remote node may be counterfeit or
resolvent, as well as difference between requirement and controlled by Trojan horse. 3) Trustworthiness of remote
development is magnified. task: when the distributed application id executed, it must be
In this paper, distributed system, user behavior and its partitioned to several independent physical modules which
result is divinable and controllable in the trustworthy need to verify identity and trustworthiness of behavior each
distributed system. Status of behavior can be supervised and other. In that way, initiator of task can affirm that the task
unconventional action can be managed, while aftereffect of has been done inerrably. 4) Trustworthiness of remote action:
action can be estimated. In another word, the trustworthiness comparing with trustworthiness of task, trustworthiness of
of distributed system has a set of attributes that security and action requires to forbid some actions and to restrict activity
survivability must be ensured in user’s view and the of remote user. Controllability of remote action refers to
manageability of distributed system must be supported in distribution and controllability of authority. To achieve the
designer’s view. Around maintenance of trustworthiness and security strategy of whole system, authority of termination
manageability of behavior between components those three must be restricted. The last two problems are more difficult.
attributes of trustworthy distributed system can be
amalgamated to arrive at the goal of trustworthiness of III. KEY TECHNOLOGY OF SECURITY
distributed system, while the conceptions of security, Around algorithm, technology and production of the
survivability, controllability and manageability are distributed system, this research has four steps: (1) a
decentralized and isolating in traditional sense. trustworthy model of distributed system and user behavior is
Unlike conventional researches on security, survivability present based on exiting security technology through
and controllability, which are isolated and separated, the analyzing requirement of trustworthy distributed system. (2)
three properties are closely related in trustworthy distributed a core chip of security is designed and completed. (3) an
system, and are formed an organic whole around archetype is built to intensify security of trustworthy
trustworthiness maintenance and behavior control, which are
distributed system. (4) an estimation theory of trustiness is
divided into three parties, input, process and output, as
depicted in Figure 1. present to verify the archetype. The first is the main step in
the research that the effect to security of distributed system
is studied according to the characteristic of user behavior.
The study on security chip is the foundation of substrate
hardware. All the study is based on the second step. The
perfect archetype is built through amalgamating pivotal
security technologies such as security arithmetic, security
protocol and intrusion prevention. The third step is the
difficulty in the whole study. The last step is the soul of all
the study in which the archetype is verified using
trustworthiness estimation to prefect mechanism of
trustworthiness of distributed system.
Figure 1. Trustworthiness maintenance and behavior control.
The role of security is to reduce vulnerabilities on the A. Trustworthy model
chain of trustworthiness gathering, spreading and processing. Trustworthy model is the pivotal process in
Survivability can be thought of as a special control development of system. In the TCSEC of Us Department of
mechanism, i.e. resources management and schedule under Defense formal description, verification and covert channel
the circumstance of existing misbehaviors. Controllability analysis is needed form Standard B. How to build
provides detailed mechanisms to monitor systems states and trustworthy model which analyzes distributed system and
control misbehaviors. Trustworthiness information is user behavior availably is the precondition to study the
collected by several methods, such as behaviors analysis, trustworthy distributed system. From identity, behavior,
states detection and correlation computing. Then, content and computing environment, the foundational
trustworthiness information is stored on efficient format for method which verifies system trustworthiness is studied

173
through amalgamating method of verifying trustworthiness trustworthy termination system based on building
and traditional Take-Grand model, introducing trusted trustworthy model through secure kernel chip plays an
subject, restricting acquirement and authorization used only important role in the controllability of security system, then
by trusted subjects and adding regulation to verify enhanced security architecture is built in trustworthy
trustworthiness in model, as a result trustworthy model of distributed system. That architecture, which realizes
distributed system and user behavior is built. There are two trustworthy access controllability and supports flexible
primary advantages in that model. Firstly security security strategy, can ensure the security of mechanism.
vulnerability of system can be analyzed by mathematics (1) Enhanced security architecture based on P2P
model because the requirement of trustworthiness of system There is not a central manager in the architecture of P2P
is described abstractly and exactly without implementation to manage nodes and users. Therefore, their trustworthiness
details; secondly security trustworthiness of system is of identity must be authenticated by the trusted third part
improved by the use of formal description and verification. (usually it is the center authentication, CA) and every node
can authenticate destination node through proof supported
by trusted third part (usually it is the signature for certificate
of platform and user identity by CA).
Furthermore, secure kernel chip (SKC) supports
authentication for trusted proxy in own node and verifies its
trustworthiness when the computer system starts. Every
node can verify trustworthiness of trusted proxy on the
Figure 2. a kind of analysis model of trustworthy model.
platform of destination through EK after destination is
The elements in analysis of trustworthiness are present in verified through authentication with signature of CA, since
fig.2. Estimation of trustworthiness of behavior contains authentication of platform contains its authenticated key.
trustworthiness of behavior and identity, while the latter is (2) Enhanced security architecture based on C/S
based on trustworthiness of content such as capability of In distributed system based on topology of P2P
protection and service, recommendation of trust and record authentication to destination is needed to verify particularly
of behavior. in the light of trusted model due to the lack of uniform view
The evaluation of user's behavior is comprehensive of authentication. The latter behavior is safe in the view of
evaluation for user's behavior, which is reflected by user's the owner of authority but unsafe in the view of other node,
past behaviors. In order to get evaluation result effectively, because other node may be controlled through the
we first subdivide user's behavior into behavior attributes, authorization once it is accredited to destination node.
such as security behavior attribute and performance behavior This problem is avoided easily in distributed system
attribute. Then we subdivided behavior attributes once again based on C/S for database management of user and authority
into more small data unit, namely behavior evidences. We is centralized and the view of authorization is consistent for
use the layered, subdivided and quantitative idea to convert all nodes. If authorization is distributed only by server and
the complicated and comprehensive evaluation of user's client must request authority from server, this problem is
behavior into the measurable and computable evaluation of solved easily.
behavior evidences. Thus the evaluation of user's behavior in In the architecture based on C/S, user’s information
the trustworthy distributed system can be solved effectively. including authorization and identity is managed by a trusted
So this method is feasible in engineering. centralized management platform exiting in the server,
B. Secure Kernel chip while a trusted proxy is disposed on the client. The server
verifies identity of client through authorization with its
It is the foundation to trustworthy distributed system on
hardware that SOC technology is adopted to design secure signature. Authorization of client encapsulated in SKC with
kernel chip, also security algorithm and key storage are encryption is requested from server which supports the key
completed inside chip. A security chip which can be applied of decryption. All the authorization of client must be
to different cryptographic algorithms is needed imminently distributed by server and client has no prerogative to
because of different applications with dissimilar authorize any authorization to other client. Therefore, server
cryptographic algorithms. In this paper, a secure kernel chip can know which authorization the client has at any moment
SOC which is constituted with kernel of RISC and multi- and grant or retract some authorization to client.
processor is designed, also that chip measures up to the A simple architecture of trustworthy distributed system
standard of TPM. The chip can be applied to different which avoids disadvantage like traditional affixed security
cryptographic algorithms while the cost and efficiency of mechanism is present in fig.3. To research architecture of
cryptographic algorithm are affected lightly. trustworthy distributed system, there is one point to be
C. Enhanced security architecture realized: physical positions of nodes in distributed system
are dispersed, so that security service is consistent in the
Consulting exiting architectures of security operation view of system.
system this paper puts forward the architecture of

174
Therefore, evaluation theory of trustworthiness which
contains estimation of security, survivability and
manageability is the precondition to monitor and revises
system. It is also insurances of performance of the whole
trusted distributed system. Though there is no absolute safe
system, the ultimate goal of estimation trustworthiness of
distributed system is not to remove weakness completely but
support a scheme to balance service and security for
administrator and a measure to defense attack actively such
as that through building mechanism to describe behavior of
Figure 3. A architecture sketch map of trustworthy distributed system. attack, aggressive behavior is taken out from plentiful
Compared with traditional security architecture, security normal behaviors and access controllability of terminal
controllability is applied in enhanced architecture of system is completed. Emphasizing architecture and
trustworthy distributed system in four aspects: 1) security of quantitative analysis on survivability of distributed system
password: using secure kernel chip of terminal system, based on the transform between problem and space,
hardware-encrypted platform like TCP is completed. estimation of trustworthiness is transformed to a method
Security algorism of key is ensured while encryption or frame of classic problem.
decryption of data and digital signature authentication are
completed, profiting from flexible ability of chip to support IV. CONCLUSIONS
security algorism, perfect machination of key management Trustworthiness is an important aspect to the study on
and security defense. 2) security of identity authentication: it
distributed system. In that paper, trusted computing
is no possibility that counterfeit user can operate system
illegally because security level is heightened and technology and trustworthiness management technology of
certification has three steps “USB Key + password + biology networks are integrated to resolve the conjuncture with
keystroke characteristic” , also the computer is used distributed system and enhance the ability to dispose states
exclusively. Based on the certification technology PKI, the dynamically so that enhanced trustworthy security system is
identity of platform is safe and the risk of defense that built. That system supports a basal strategy to intelligent
counterfeit system intrudes distributed system is reduced, self-adaptive controllability of system security and service
since the identity of platform is the unique sequence code of quality. The study in that paper hasn’t published at present
secure kernel chip with 64-bit in enhanced security system. 3) at home and abroad. The prominent theoretical significance
security of permission assignment: in enhanced security and practice value is present as follows:
system inner process scheduling and outer process access is 1) It is a helpful reference to design and complete the
verified strictly under the instruction of trustworthy model so security system and it is also a direction for study on theory
that permission of system is insured to be safe. 4) security of and method of security controllability in distributed system.
access control: by the trusted monitor in enhanced terminal 2) User’s controllability to distributed system is enhanced
system, trustworthiness of any access is verified to insure the to insure that system authentication is used exactly and
trustworthiness of identity, behavior and computing reduce the risk of system out of control bring by virus and
environment in the access from subject to object. 5) security Trojan horse.
of system audit: all kinds of behavior or event logged in 3) Security can be separated from management. Enhanced
enhanced security system support history of events and security of distributed system is helpful for increasing
supervise afterwards. Based on the enhanced terminal system,
authentication of security laws and deterrence to hacker.
taking advantage of C/S architecture and simplifying strategy
4) Based on trustworthiness of distributed system, the
of authority controllability, the whole view of authority
trustworthiness of network and grid system is improved and
controllability is built on the server. Monitoring of client
the development of remote cooperation and distributed
behavior is completed using trusted proxy of client. After
application is accelerated.
those measures, security management in the whole
distributed system is put into effect to every host and user.
D. Evaluation theory of trustworthiness REFERENCES
[1] Cyber Trust [EB/OL]. http://www.nap.edu/catalog/6161.html,2006.
It is not possible to build a perfect trustworthy distributed
[2] LIN Chuang, REN Fengyuan. New network with trustworthiness and
system, so the quantitatively trustworthiness estimation of controllability as well as expansibility[J]. Software Journal, 2004,
distributed system is valuable. Quantitative research on 15(12): 1815-1821.
trustworthiness could find the weakness and risk in the [3] LIN Chuang, PENG Xuehai. Research on network architecture with
distributed system and improve them. Quantifying of trustworthiness and controllability[J]. Journal of Computer Science
trustworthiness is also at exploring stage. and Technology, 2006, 21(5): 732-739.
Trustworthiness evaluation is performed based on some [4] LIN Chuang, PENG Xuehai. Research on trustworthiness of
network[J]. Computer Journal, 2005, 28(5): 751-758.
preconfigured models, with logic instructions generated to
drive particular control actions, such as forwarding control, [5] LIN Chuang, WANG Yang, LI Linquan. Random model method and
evaluation technology of network security[J]. Computer Journal,
attack prewarning, survivability control, and immunity [8]. 2005, 28(12): 1943-1956.

175
[6] TIAN Junfeng, XIAO Bing, MA Xiaoxue, et.al. Trustworthy model [7] SHEN Changxiang, ZHANG Huanguo, FENG Dengguo, et.al,
and analysis in TDDSS[J]. Computer research and development. 2007, Summarazation of information security[J]. China Science:
44(4): 598-605. E(Information Science), 2007, 37(2): 129-150.
[8] Chuang Lin, Xue-hai Peng, Research on Trustworthy Networks,
China Journal of Computer, May, 2005, 28(5): 751-758,

176
2009 International Conference on Computer Engineering and Technology

WebELS: A Multimedia E-Learning Platform for Non-broadband Users

Zheng HE, Jingxia YUE and Haruki UENO


National Institute of Informatics, Japan
hezheng@nii.ac.jp

Abstract and manager. Some technologies are implemented to


make multimedia contents possible for users without
In this paper, a multimedia-support e-learning wideband network: image-based slide synchronized
platform called WebELS (Web-based E-Learning with audio and cursor movement, media streaming-like
System) for non-broadband users is introduced. The downloading and offline player embedded in the
downloaded content. So that teachers can create or edit
system includes three main modules: editor, player
their own multimedia content by transferring or
and manager. Both asynchronous and synchronous
integrating raw materials, then achieve the contents on
e-learning are supported on this platform. Moreover, WebELS server and manage course list or access
some technologies are implemented to make the permission. Students can access those contents
multimedia contents possible for users without anywhere, anytime without wideband network to study
wideband network at hand: the multimedia content as their own styles. [5]
was converted into slide serials synchronized with
audio and cursor action, the multimedia content 2. System Overview
download is streaming-like, and an offline player
was embedded into the multimedia content. 2.1. Features

1. Introduction WebELS (Web-based E-Learning System) is an


online e-learning platform aiming to not only assist
The rapid development of computer and Internet teachers to develop, deliver or archive multimedia
technologies has made e-learning become an important contents on the web, but also provide students various
education method. One of the most attractive features materials and flexible tools to study in their own
of e-learning is its capability to integrate different learning styles. Some main features are list below:
media such as text, picture, audio and video to create x Browser-based: no download and pre-installation
multimedia content, which can provide flexible are necessary.
information associated with instructional design and x Always-on and Real-time: teachers can archive
authoring skills to motivate the learning interests and their lectures or even carry out virtual classroom
willingness inside students. [1-3] over the Internet by WebELS.
Generally, to support multimedia contents there are x Flexible authoring: all necessary tools to create
three things that a network has to provide: bandwidth, contents online are provided.
consistent quality of service and multipoint packet x Broad file type support: text, audio, video, flash
delivery. Today's multimedia applications have a wide contents with presentation pointer are supported.
range of bandwidth requirements: 64kbps for telephone x Unicode: multi-lingual is supported.
quality audio, 128kbps to 1Mbps for video conference,
1.54Mbps for MPEG video, etc. Therefore, for users in
2.2. Functions
non-broadband areas or without wideband network at
hand, the multimedia e-learning with acceptable quality
2.2.1. Editor. The WebELS editor aims to provide
seems to be an impossible task. [4]
editing toolset for users to develop their own
WebELS system presented in this paper provides a
multimedia contents from raw materials in various
multimedia e-learning platform for non-broadband
formats such as: .DOC, .PPT, .PDF, JPG, .GIF, etc.
users. It includes three main modules: editor, player
Contents title and category should be assigned at first.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 177


DOI 10.1109/ICCET.2009.108
Then those materials are converted into image series side and perform data transformation with database
which are called as slides in this paper. Moreover, server. Database server is to provide data storage for
users can make attractive multimedia contents by achieved contents, supports contents editing, manage
inserting audio synchronized with cursor movements or user information, and verify course dependency. And
some video and flash clips into one slide. all user account information is maintained by SQL
database server.
2.2.2. Player. The WebELS player provides users a
friendly platform to learn multimedia contents online or 3. Multimedia Contents
offline. Usually contents can be presented as the
following delivery modes: pure slide, video clips, audio 3.1. Image-based content
and cursor synchronized slide. The player was designed
as a standard media player and users can easily control An e-learning course based on multimedia contents
their contents. Zoom-in function is available so that may be highly bandwidth intensive and students using
details on slide can be displayed clearly. non-broadband network may have difficulty in playing
and retrieving such contents. The WebELS content is
2.2.3. Manager. The WebELS management toolset presented by a sequence of image frames instead of
was developed to help users manage the achieved video stream. Not only the contents originally prepared
contents including content category, content permission, in PDF, PPT or DOC formats but also those pictures
and log and registration information. used to describe lecture scenes (such as GIF, JPG and
PNG) will be automatically converted into a kind of
2.3. Architecture image format by the WebELS editor before they are
uploaded to the WebELS server.
In WebELS system, implementation of editor,
player and manager is based on a typical
Browser/Server (B/S) structure. Under this structure,
all user interfaces are implemented on web pages. Main
tasks are executed by server side and only small work
is carried out on browser side, it will much lighten the
loads on client-side computers. Moreover, this kind of
system can be accessed and used without downloading
or installing other tools beforehand. Figure 1 describes
the architecture of WebELS system.

㪪㫋㫌㪻㪼㫅㫋㫊 㪙㫉㫆㫎㫊㪼㫉

㪫㪼㪸㪺㪿㪼㫉 㪙㫉㫆㫎㫊㪼㫉 㪘㪻㫄㫀㫅 㪙㫉㫆㫎㫊㪼㫉


㪠㫅㫋㪼㫉㫅㪼㫋

㪮㪼㪹㩷㪪㪼㫉㫍㪼㫉
㪘㫇㪸㪺㪿㪼㩷㪟㪫㪫㪧㩷㪪㪼㫉㫍㪼㫉

㪫㫆㫄㪺㪸㫋㩷㪪㪼㫉㫍㫃㪼㫋㩷㪚㫆㫅㫋㪸㫀㫅㪼㫉

㪡㪪㪧㩷㪧㪸㪾㪼㫊 㪟㪫㪤㪣㩷㪧㪸㪾㪼㫊

㪪㪼㫉㫍㫃㪼㫋㫊

㪛㪸㫋㪸㪹㪸㫊㪼㩷㪪㪼㫉㫍㪼㫉

㪤㫐㪪㪨㪣 㪜㪻㫀㫋㫆㫉 㪝㫉㫆㫅㫋 㪯㪤㪣


㪛㪸㫋㪸㪹㪸㫊㪼 㪘㫇㫇㫃㪼㫋 㪝㫀㫃㪼㫊 㪝㫀㫃㪼㫊 Figure 2. Comparison of picture quality between
image-based and video contents
Figure 1. Architecture of WebELS system
Figure 2 compares picture quality between image-
Web server is responsible for users’ requirements. A based contents provided by WebELS system and video
customized HTTP server handles web-based user contents played by Windows Media Player. Obviously,
interface includes HTML and JSP pages. Java Servlets the image-based picture with 800×600 pixels is clearer
response the interaction with the Java tools on client- and brighter than video picture with 512×342 pixels.

178
So if users have to limit the contents size due to through sound pick-up outfits were encoded into the
network, image-based contents would be a substitution. SPEEX format. Figure 4 illustrates how the SPEEX
Figure 3 is an example of image-based contents with audio files are implemented on WebELS system.
enough resolution to ensure complete details in the
picture. By freely zooming or dragging such content Select one slide to be edit
based on high-quality images, students can see those
fine details which are difficult to recognize in common
video contents. Use sound pick-up No
outfits?

Read audio data from files


Yes

Read audio data from


sound pick-up outfits Decode audio data to raw
format

Encode audio data to


SPEEX format

Save SPEEX audio data


into the selected slide file

Figure 4. Implementation of SPEEX audio files

3.3. A synchronized cursor

In WebELS system, a cursor file is also embedded


into each slide of the contents to simulate lectures’
action. Users can edit the slide and point a cursor onto
corresponding slide to tip the topic they are talking on,
or show the points they want to strengthen. Each slide
has its own timeline in order to: i) record the cursor
positions (x, y) chronologically; ii) store the
information (s, f) for the embedded audio stream file
simultaneously, in which s is the current state (play or
Figure 3. WebELS contents with zoom-in function stop) and f is frame numbers.

3.2. SPEEX audio files Cursor Timeline Audio stream

(x1,y1) (x3,y3) (x6,y6) (xi,yi)


Audio is indispensable part in an e-learning course, t0 t1 t2 t3 t4 t5 t6 t7 tI tn
and vocal files with high quality assist students to (s0,f0) (s1,f1) (s7,f7)
(s4,f4) (s5,f5)
understand lectures more clearly and actively.
Normally, to improve the audio quality would result in f1=f4 f5=f7
large size and heavy load of the contents, which is
unpractical for non-broadband users. Therefore, an
audio format with high quality as well as low size is Figure 5. Synchronization of cursor positions with
necessary. SPEEX is an audio compression format audio stream
designed especially for speech. It is well-adapted to
Internet applications and provides useful features that As Figure 5, the cursor positions are synchronized
are not present in most other codec. SPEEX provides a with audio stream in each slide file by the time shaft.
free alternative to expensive proprietary speech codec For examples: i) when t=t0, (s, f)=(play, 0) and (x,
and lowers the barrier of entry for voice applications. y)=(0, 0), the audio stream is started, and there is no
In WebELS, the audio is embedded into the contents cursor action; ii) when t=t1, (s, f)=(stop, f1) and (x,
by WebELS editor. The audio datum either recorded y)=(x1, y1), the audio stream is paused and the cursor is
and saved previously or simultaneously transmitted pointed to the location (x1, y1) on this slide; iii) when

179
t=ti, (s, f)=(play, fi) and (x, y)=(xi, yi), the audio stream server named GNUMP3d for video-based content and
has processed fi frames and the cursor is pointed to the WebELS server on the same server machine. Then the
location (xi, yi) on this slide. Bandwidth Controller (tool for bandwidth controlling)
Also in Figure 5, a continuous audio stream can be was installed in the client-side computer to simulate
dispersed at different cursor positions according to the various network bandwidths. Figure 6 shows the time
frame numbers recorded by the timeline. Therefore the delay which was necessary to open the two kinds of
duration of audio stream is normally shorter than cursor contents under different network bandwidths. When the
action although both of the actions are simultaneously bandwidth is less than 256Kbps, it was hardly to open
recorded. Compared with real-time recording system, the video-based content; WebELS content could be
the file size of the audio stream which was edited based opened with some delay during playing. And if the
on timeline was decreased. bandwidth is under 10Mbps, WebELS contents were
easier to open compared with video-based contents.
3.4. Comparison
4. Streaming multimedia
Comparison was carried out between video-based
and WebELS content as Table 2. The original content 4.1. General
was a 42-minute video file with AVI format which was
real-time recorded in classroom. Then the video based Streaming multimedia system can not only ensure
content was edited by WebELS editor and converted that teachers create appealing multimedia contents but
into the image-based content with audio and cursor also allow students to access multimedia contents
files attached. From the table, the content size was without wideband network. WebELS server supports
much decreased while the image resolution was streaming-like download.
improved. Moreover, both of the two contents were Basically, the WebELS contents consist of image-
tried out by using 56K modem under the same based slide series and each slide includes the following
condition, and only the WebELS contents can play information: image, timeline, audio and cursor. See
smoothly. Figure 7. The data of contents are stored into each slide
file as separate data packages instead of one complete
Table 2. Comparison between video-based and file. Therefore, a streaming-like download process is
WebELS contents available based on such data packages. And the audio
Video-based WebELS data as well as correspondent cursor data are divided
Size 154MB 3.9MB into some clips, and those clips are also considered as
Image resolution 512×342 800×600 buffering packages.
Streaming quality Time lag and delay Smooth and stable
㪮㪼㪹㪜㪣㪪㩷㪚㫆㫅㫋㪼㫅㫋

80
Video Content
70 㪪㫃㫀㪻㪼㩷㪈 㪪㫃㫀㪻㪼㩷㪉 㪪㫃㫀㪻㪼㩷㫀 㪪㫃㫀㪻㪼㩷㪥
WebELS Content
60 㪪㫃㫀㪻㪼㩷㫀
Time delay (s)

50 㪠㫄㪸㪾㪼
40
㪫㫀㫄㪼㫃㫀㫅㪼
30 㪚㫌㫉㫊㫆㫉 㪚㫌㫉㫊㫆㫉 㪚㫌㫉㫊㫆㫉 㪚㫌㫉㫊㫆㫉
㪺㫃㫀㫇 㪺㫃㫀㫇 㪺㫃㫀㫇 㪺㫃㫀㫇
20

10
㪘㫌㪻㫀㫆 㪘㫌㪻㫀㫆 㪘㫌㪻㫀㫆 㪘㫌㪻㫀㫆
㪺㫃㫀㫇 㪺㫃㫀㫇 㪺㫃㫀㫇 㪺㫃㫀㫇
0
56K 256K 512K 1M 10M
Network bandwidth (bps)
㪚㫃㫀㫇㩷㪈 㪚㫃㫀㫇㩷㪉 㪚㫃㫀㫇㩷㫁 㪚㫃㫀㫇㩷㪤

Figure 6. Comparison of the time delay under


various network bandwidths Figure 7. Data structure of WebELS content

Furthermore, the two kinds of contents were played 4.2. Implementation


under network with bandwidths of 56Kbps, 256Kbps,
512Kbps, 1Mbps and10Mbps to test their sensitivity to Basically, after one data package was downloaded,
network condition. Firstly we installed the streaming the client side’s player would begin to display the slide

180
as one seamless stream. Simultaneously, download of WebELS player, necessary libraries and WebELS
the data package for the next slide was continued. contents. Then such container was converted to a .JAR
Moreover, within the data package of one typical slide, package by the WebELS server. When the download
the size of audio data usually takes a higher percentage was finished, the .JAR package was unpacked and
than image, timeline and cursor data. So we also adopt saved on the client-side computer. The following figure
streaming technology to audio data included in one describes the implementation process of the WebELS
slide. Namely, an audio clip cursor data should be offline player.
downloaded at first, then the slide is displayed and the
users can start to study. While the first audio clip is 㪝㫆㫉㪼㪾㫉㫆㫌㫅㪻㩷㫆㫇㪼㫉㪸㫋㫀㫆㫅 㪙㪸㪺㫂㪾㫉㫆㫌㫅㪻㩷㫆㫇㪼㫉㪸㫋㫀㫆㫅

playing, the next audio clip is being downloaded. 㪚㫆㫇㫐㩷㫃㫀㪹㫉㪸㫉㫀㪼㫊


Suppose a WebELS content consists of N slides
(i=1, 2, …, N), and in each slide the cursor and audio 㪪㫋㪸㫉㫋㩷㪻㫆㫎㫅㫃㫆㪸㪻 㪚㫉㪼㪸㫋㪼㩷㪺㫆㫅㫋㪸㫀㫅㪼㫉 㪚㫆㫇㫐㩷㫇㫃㪸㫐㪼㫉 㪧㪸㪺㫂㩷㪺㫆㫅㫋㪸㫀㫅㪼㫉

data are divided into M clips (j=1, 2, …, M). The 㪜㫅㪺㫉㫐㫇㫋㩷㪺㫆㫅㫋㪼㫅㫋㫊 㪚㫆㫇㫐㩷㪺㫆㫅㫋㪼㫅㫋㫊
process of streaming download in WebELS system is
㪝㫀㫅㫀㫊㪿㩷㪻㫆㫎㫅㫃㫆㪸㪻
described in Figure 8.
㪬㫅㫇㪸㪺㫂㩷㪺㫆㫅㫋㪸㫀㫅㪼㫉

Start 㪙㪼㪾㫀㫅㩷㫋㫆㩷㫊㫋㫌㪻㫐

Set i=1
Figure 9. Implementation of the offline player
Download image and
timeline of slide i

6. Conclusions
Set j=1

Download cursor clip j The paper introduces an e-learning system for non-
and audio clip j
broadband users. In order to ensure the multimedia
Set j=j+1
learning materials accessible under the network with
limited bandwidth, a kind of image-based contents
Is j>M?
No combined with synchronized audio and cursor was
Yes created by an editor module provided by web server.
Set i=i+1
Streaming-like download was implemented so that such
multimedia contents can be displayed smoothly even
No
Is i>N? on client-side non-broadband network. Moreover, an
Yes
offline player was embedded in e-learning content.
The WebELS system has been launched at Internet
End URL http://webels.ex.nii.ac.jp/. Services have been
made available on the Internet and its functions are
Figure 8. Implementation of stream-like download continuously extended to cover user’s requirements.

5. Offline Player 7. References


[1] C.A. Carver Jr., R.A. Howard and W.D. Lane,
WebELS system also provides an offline player for
“Enhancing Student Learning Through Hypermedia
students without settled network connection, it has the Courseware and Incorporation of Student Learning Styles”,
following features: IEEE Transaction on Education, Vol.42, No.1, pp.33-38.
x The offline player was embedded into WebELS [2] P.M. Lee and W.G. Sullivan, “Developing and
contents so all contents are like portable textbook. Implementing Interactive Multimedia in Education”, IEEE
x The interface style is same as online viewer so that Transactions on Education, Vol.39, No.3, pp.430-435.
the offline learning mode can ensure the maximum [3] R. Jain, “A revolution in education”, IEEE Multimedia,
feasibility for users without network. Vol.4, No.1, pp.1-5.
[4] “Web Design Guidelines for Low Bandwidth”,
x The contents bundled with the offline player were
http://www.aptivate.org/webguidelines/Multimedia.html
encrypted in order to protect their copyright. [5] H. Ueno, “Web-based Distance Learning for Lifelong
After users decide to download the e-learning Engineering Education - A Personal View and Issues”,
contents, the WebELS server will automatically create Journal of Information and Systems in Education, Vol.1,
a container which includes three main parts: encrypted No.1, pp.45-52.

181
2009 International Conference on Computer Engineering and Technology

Implementation and Improvement Based On Shear-Warp Volume Rendering


Algorithm
Li Guo Xie Mei
College of Electronic Engineering,University College of Electronic Engineering,University
of Electronic Science and Technology of of Electronic Science and Technology of
China,Chengdu, 610054 China,Chengdu, 610054
dlbasin@163.com xiemei@ee.uestc.edu.cn

Abstract shear-warp [6~7] algorithm based on both image and object


spaces. Owing to the need of resampling after changes of
The shear-warp algorithm is one of the fastest the viewing direction, both the ray-casting and splatting
algorithms based on CPU for volume rendering so far, methods have the problems of large amount of calculation
but it achieves this rendering speed only by sacrificing the and a long time for computing. Therefore, it is difficult to
resulting image quality. This paper presents a new achieve the requirements of interactive applications by
method that makes the resulting image quality much using these two methods. The shear-warp algorithm uses
improved, by mending the resampling values used during a method that factorizes the projection transformation in
the process of image compositing , nearly not affecting the 3D discrete data field to two steps: shear for 3D data
the efficiency of rendering. In this method, two adjacent field and warp for intermediate image. As a result, the
slices are defined as front slice and back slice process of resampling is changed from 3D space to 2D
respectively, according to the direction of the viewing ray. plane, and the nearly interactive speed of rendering is
A cost function is defined for describing the two adjacent achieved based on graphics workstations by reason of the
slices’ effect to the slab between them. The values of the significantly reduced amount of calculation. However,
resampling points in the front slice and back slice are because the resampling just occurs inside of the slices and
inputted to the cost function as its parameters, and the only make a single slice’ value to determine the value of
resulting value can reflect the information of the slab the slab between the two adjacent slices, image quality
more effectively. Compositing this resulting value as usually cannot meet the requirements by reason of the
resampling value will improve the image quality image-aliasing. Based on the problems of traditional
significantly, and overcome the drawback of image- shear-warp algorithm, this paper presents a new method
aliasing in the traditional shear-warp algorithm. by mending the resampling values for image compositing
to make the image quality much improved, with nearly
not affecting the rendering speed. Experiments have
1. Introduction proved this new method’s effects.

The process of building screen image by object’s


geometric model is called rendering, which is the most 2. The shear-warp algorithm
important part during the processes of the scientific
computing visualization. Rendering includes surface The basic principle of the shear-warp algorithm is
rendering [1~3] and volume rendering. The surface shown in figure 1 [8].
rendering algorithm can usually reach a fast speed;
unfortunately, it cannot reflect the whole primal data and
the specific characters.
Volume rendering is also called direct volume
rendering. It transforms the 3D data field to final 2D
image for displaying directly, not needing construct the
geometric describing of object’s surfaces. So, volume
rendering is considered as the most promising rendering
technology in the field of scientific computing
visualization. At the present time, volume rendering (a)
mostly includes ray-casting [4] algorithm based on image
space, splatting [5] algorithm based on object space and

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 182


DOI 10.1109/ICCET.2009.9
1). Transform the volume data to shear space by
translating each slice using Mshear.
2). Project the volume into a distorted 2D intermediate
image in shear space by compositing the resampled slices
together.
3). Transform the distorted intermediate image to
resulting image by warp operation using Mwarp.

3. The improvement
(b) 3.1. Image compositing
Figure 1: (a) Standard and (b) Factorized In this section, we firstly introduce the foundation
viewing transformation
theory of image compositing. Image compositing is to
Let Mview be the view matrix that transforms points from
form the value for each pixel in image along each viewing
object space to image space. The shear-warp algorithm is
ray; by transforming the resampled volume data to color
based on the idea of a factorization of the view matrix
value and opacity value during each slice and compositing
Mview into a shear component Mshear, a warp component
them together. The order of the compositing can be front-
Mwarp and a principle axis transformation matrix P
to-back or back-to-front. In this paper we use the front-to-
M view=M warp •M •P
shear back order as shown in figure 2.
with . As for a parallel
projection, since the shear is parallel to the slices, the cin cout
shear factor (Mshear) just contains a transformation that ci
Eye
simply translates each volume slice, in such a way that the
viewing direction becomes perpendicular to the slices. So αi
the shear matrix Mshear is described as follows: α in α out

⎛1 0 sx 0 ⎞ Figure 2: Front-to-back order compositing


⎜ ⎟
0 1 sy 0 ⎟ We specify colors and extinction coefficients for each
Mshear = ⎜
⎜0 0 1 0⎟
scalar value s of the volume data by transfer functions
⎜⎜ ⎟ c ( s ) and τ ( s ) . The color emitted from one point of the
⎝0 0 0 1 ⎟⎠
volume is determined by c ( s ) τ ( s ) ; thus, the intensity I
The sx and sy represent the translating factors in x-axis
along a viewing ray parameterized by x from 0 to D is
and y-axis respectively, decided by the viewing direction.
given by:
Let Mview3 be the upper-left 3x3 submatrix of Mview, as D x
described like: I = ∫ 0
τ ( s ( x ) ) c ( s ( x ) ) e x p ( − ∫ τ ( s ( x , ) ) d x , ) d x (1)
0

⎛ m11 m12 m13 ⎞


⎜ ⎟
Mview3 = ⎜ m21 m22 m23 ⎟ s(x)
⎜m m33 ⎟⎠
⎝ 31 m32
Then, the values of sx and sy are computed by: si=s(id)

m22m13 − m12m23
sx =
m11m22 − m21m12
id (i+1)d x
m11m23 − m21m13
sy = d
m11m22 − m21m12 Eye
x
The warp factor (Mwarp) that transforms the intermediate Figure 3: Sampling of s(x) along a viewing ray
image to resulting image can be decided by Mview, Mshear While the viewing ray is divided up to n equal segments
−1
M warp = M view • M shear • P −1 of length d=D/n and the s value are constant for each ray
and P with . Because the
segment as shown in figure 3 [8], the formula (1) can be
warp is after the projection, it becomes a 2D operation and
approximated by:
much faster to compute.
Briefly, the shear-warp algorithm consists of three
primary steps as follows:

183
n −1 i −1
occurs just inside of each slice, and the scalar value of
I ≈ ∑ τ ( s (id )) c ( s (id )) d exp( − ∑ τ ( s ( jd )) d )
i=0 j =0
each ray segment is to be constant, as the precondition of
n −1 i −1 image compositing theory mentioned before, with the
≈ ∑ τ ( s (id ))c ( s (id )) d ∏ exp( −τ ( s ( jd )) d )
i=0 j=0
value of s=sf. That is to say the slab’s value is determined
only by the front slice with s=sf, having nothing to do
n −1 i −1

∑ c ∏ (1 − α
≈ i j )
with the back slice. Since the single slice can not represent
i=0 j=0 the slab effectively, the resulting image quality is usually
With the opacity α i of the i-th ray segment defined by poor for users’ requirements.
(i+1) d Considering the relatively poor image quality of the
α i = 1 − exp(− ∫ id
τ ( s ( x ))d x ) traditional shear-warp algorithm, literature [8] introduced a
≈ 1 − e x p ( −τ ( s (id )) d ) pre-integration method, and literature [9] used a resampling
≈ τ ( s (id )) d method of real-time interpolation in the middle section,
but they both increased the amount of calculation. In the
and the color ci defined by
(i+1)d
proposed algorithm, we use the two adjacent slices to
c i ≈ ∫ id
τ ( s ( x ))c ( s ( x ))d x describe the slab, as shown in Figure 5.
≈ τ ( s (id ))c ( s (id )) d viewing ray
≈ α ic ( s ( i d ) )
sb back slice
Then, the final formula of image compositing can be
described as follows:
s = f(sf,sb)
α o u t = α in + (1 − α in ) α i
sf front slice
c o u t = c in + (1 − α in ) c i
(2)
As demonstrated above, it is easy to know the fact that Figure 5: Improved resampling for composting
compositing image by formula (2) is based on the As the slices front and back both contribute to the slab
precondition of each ray segment’s scalar value being between them, we define a cost function f to describe the
constant. effect. Parameters are resampling values of the front and
back slices. The return value s represents the value of the
3.2. Improved method slab, that is, the value for compositing. The more cost
There are two kinds of resampling in shear-warp function close to the real situation, the better the effect of
algorithm. One is resampling in each slice during the rendering. Here we define the cost function as
process of image compositing in shear space; the other is s=f(sf,sb)=w*sf+(1-w)*sb ,where w is the scale factor.
resampling in the intermediate image while warping it to This function is relatively simple and could be a good
the resulting image. We just discuss the first situation in reflection of the slab’s information. When composting, the
this paper. slab’s value s, not sf, is used as the scalar value of the ray
segment. The proposed method has little impact on the
viewing ray
rendering speed, but the image quality is improved a lot
compared with the traditional method attested by our
sb back slice
experiments
s=sf slab
sf front slice 3.3. Results
The traditional and presented shear-warp algorithm are
simulated respectively in Matlab 7.0 on a workstation
Figure 4: The scalar value of a slab in the (Pentium(R) 4 2.40GHZ CPU, 256M memory) using the
traditional shear-warp algorithm same CT slices images coming from West China Center
We define two adjacent slices as a front slice and a of Medical Sciences, Sichuan University. Figure 6 shows
back slice, along the viewing ray direction. Between the the image quality comparison
two slices, a slab is formed as figure 4 illustrated. Scalar
values sf and sb are the values of the resampled points in
the front slice and back slice respectively. The length of
each ray segment is determined by the distance of two
primal adjacent slices and the direction of the viewing ray.
After correction, the length of the ray segment also (a) Traditional elevation
represents the length of the slab. In the traditional shear-
warp method, the resampling operation in shear space

184
Acknowledgment
The authors would like to thank Zhen Zheng for
helping so much in the daily study, thank Wu Bingrong
for providing the medical images for simulation, and
thank Peng Gang for instructing writing papers in English.
(b) Proposed elevation
Finally, thank for all people in 903 staff room.

References
[1] Lorensen W E, Cline H E, “Marching Cubes: A High
Resolution 3D Surface Construction Algorithm”,
Computer Graphics, 21(4), 1987, pp. 163-169.
[2] Doi A, Koide A, “An Efficient Method of
Triangulating Equi-Valued Surfaces by Using
Tetrahedral Cells”, IEICE Transactions, E74(1), 1991,
pp.214-224
[3] Cline H E, Lorensen W E, “Two Algorithms for
(c) Traditional planform Three-dimensional Reconstruction of Tomograms”,
Medical Physics, 15(3), 1988, pp.320-327
[4] Levoy M, “Display of Surfaces from Volume Data”,
IEEE Computer Graphics and Application, 8(3), 1988,
pp.29-37
[5] Westover L, “Footprint Evaluation for Volume
Rendering”, Computer Graphics, 24(4), 1990, pp.367-
376
[6] Lacroute P, Levoy M, “Fast Volume Rendering Using
a Shear-Warp Factorization of the Viewing
Transformation”, Computer Graphics Proceedings,
(d)Proposed planform 1994, pp.451-458
[7] Lacroute P, “Fast Volume Rendering Using a Shear-
Warp Factorization of the Viewing Transformation”,
Technical Report: CSL-TR-95-678, 1995
[8] Schulze J P,Kraus M,Lang U, “Integrating Pre-
integration into the Shear-Warp Algorithm”,
Proceedings of the 2003 Eurographics/IEEE TVCG
Workshop on Volume Graphics Tokyo:ACM
Press,2003,pp.109-118
[9] Sweeney J, Mueller K, “Shear-Warp deluxe: the
Shear-Warp algorithm revisited”, Proceedings of the
Traditional Proposed Symposium on Data Visualization
(e) Partial magnified image Barcelona:Eurographics Association,2002,pp.95-104
Figure 6: Traditional and proposed algorithm’s
image quality comparison
The simulation results show that images produced by
the traditional method of rendering have some visible
stripes, but in the proposed algorithm, the stripes
disappeared, the image quality is improved.

4. Conclusions
By using two adjacent slices’ value to define the slab’s
value, which is more in line with the actual situation, the
proposed algorithm has improved a lot as to the traditional
algorithm. The principle and implementation results both
show that it is effective to obtain a higher image quality,
and almost does not affect the rendering speed

185
2009 International Conference on Computer Engineering and Technology

Conferencing, Paging, Voice Mailing


via Asterisk EPBX
Ale Imran1, Mohammed A Qadeer2
1
Dept of Electronics Engg, Aligarh Muslim University, Aligarh, India
2
Dept of Computer Engg, Aligarh Muslim University, Aligarh, India
{aleimran, maqadeer}@zhcet.ac.in

Abstract—This paper is intended to present theoretical and such as paging, (which may be from one-to-one or many-
implementation details of various important features that to-one, depending on the usage requirements) Interactive
are generally associated with an Asterisk based Voice voice responses (IVR), Conferencing, Voicemail, Music
Exchange i.e. Conferencing, Paging and Voice mailing. on hold to name a few.
Besides this we will be concentrating on the web based
approach for the configuration of the hard phones that will
be used at the clients end. Our approach follows the client-
server model for all subsidiary procedures. The application
is developed in C language and is compatible with all the
versions of Linux, essentially providing PC to PC data and
voice communications.

Keywords-Asterisk, VoIP, PBX, Voicemail, Conferencing,


Paging, ST-302 hardphone.

I. INTRODUCTION
Over the last few years Voice over Internet Protocol
(VoIP) has became an important player in supporting Fig 1: Overview of Asterisk based system [4]
telephony. The contribution in achieving this goal clearly
goes to the various advantages that the technology offers. On top of that we can get interfaces to the operating
Besides being almost free, it provides various other system and programming languages for the extreme in
features which one could say are almost patented with it.. power, optional web based administration interfaces,
To talk of a few would certainly include a reduction in the configuration in SQL databases or flat files, detailed call
bandwidth requirements and availability of a large number logging into a database and many more features. Hence to
of features like for example selective call forwarding and summarize it up, we can say that with Asterisk you can:
rejection [4].
• Provide basic service to Analog and Digital
The development of Asterisk Based Voice Exchange phones.
which works on VoIP takes into consideration the various • Develop a call routing logic in order to choose a
complexities associated with a conventional Private least expensive way to route a particular call.
Branch Exchange (PBX). A conventional circuit switching • Route Incoming and Outgoing voice calls over
based PBX is not only expensive but limited in terms of standard voice lines or the internet.
functionality as well. Asterisk is a complete phone system
• Provide voicemail and teleconferencing services
in software. It can replace large and expensive phone
systems powering thousands of extensions, or it can help • Develop complex or simple interactive menus
users save money on long international call usages. • Operate small or large queues for call centers and
Because being implemented in software, it’s extremely announcing the estimated hold time to the callers
versatile, easy to customize as and easy to extend. • Call other programs on the system .
Asterisk is different for several reasons, the most II. COMPLETE ASTERISK SYSTEM
important being its all software approach. Instead of
switching analog lines in hardware, it routes and A. Set Up of the Work
manipulates Voice over Internet Protocols (VoIP) Packets Asterisk is an open source converged
in software [4]. The backbone of the system generally telecommunications platform designed to allow different
becomes an IP enabled network, and phones can be type of telephony hardware, middleware and software to
hooked into that. However it also supports old analog interact with each other consistently. It provides multiple
phones using gateway devices. layers, managing both TDM and packet voice at lower
layers while offering a highly flexible platform for PBX
Asterisk provides more than what one would expect
and telephonic applications. Asterisk can bridge and
from a conventional PBX. We get a variety of features
translate different type of VoIP protocols such as SIP,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 186


DOI 10.1109/ICCET.2009.209
MGCP, IAX and H.323[2]. In order to set up a Asterisk
based Private branch exchange (PBX), we require the
following 3 major components [3];
• Asterisk based PBX
• Phones at the clients end which may be soft or
hard depending upon the requirements.
• VoIP gateway service in order to enable a
particular user to call others who might be on
PSTN or on the same IP network.
We begin implementing our voice exchange by compiling
the Asterisk system. The following commands help us in
compiling the Asterisk.

cd/root/ale/asterisk
make
make install
make samples
make progdocs

Fig 3: Picture showing ST-302, the IP enabled hardphone.

B. Asterisk PBX configuration


Now we need to create one user in the iax.conf file.
Fig 2: Snapshot after the complete installation [4] This is because the phone is using IAX protocol for being
connected with the Asterisk server. So now we create a
Once it has been successfully installed we can start new user say by the name of user1. This one is now going
Asterisk on the server by running the following to be used with the ST-302 IP phone.
commands:

/root/ale/asterisk-vvvc.

Now since here we are interested in having hard phones


at the client’s end ,we have the choice of selecting a
particular hard phone among the various available ones
and configuring it . ST-302 is an IP enabled hard phone
Fig 4: IAX.conf file
which uses an Inter Asterisk Exchange (IAX) protocol. It
has got two RJ-45 ports, one for connection with a PC type=friend means that the user can make & receive
and another for connection with the existing IP enabled calls, host=dynamic means that the IP is dynamic through
network. We put the Ethernet cable from our network in a DHCP server, allow=all means that the line which this
the port labeled RJ-45 and user will be using, could support all audio codec’s,
use the another Ethernet cable to connect our computer context=test shows that the user is working with the
with the phone. Then we put this cable in the RJ-45 jack extensions in this context of the configuration file
labeled PC. extensions.conf.

187
Now lets have a look on the extensions.conf file that Here configuring the ST-302 with the help of web
we ‘ll be using for setting up the various extensions. interface allows to perform the following operations :
1) Audio Settings: gives a user free hand as far as
selection of various codec’s for the hardphone is
concerned. It may generally depend on the design aspect
and for our implementation we have set this to G.711.
Besides this, it allows for various other added features as
Fig 5: Extensions.conf file
well like for example voice activity detection(vad),
automatic gain control(agc) ,automatic echo cancellation
[test] (aec), jittre size and various others.
Exten=>100,1,answer()
Exten=>100,2,dial(IAX/user1) 2) IAX Settings: The following parameters summarize
Exten=>100,3,hangup() to give up the complete IAX settings:
a) Use service: Enabling this particular feature
Exten=>200,1,answer() allows calls to made through the gatekeeper, if however
Exten=>200,2,dial(IAX/user2) this feature is disabled only IP to IP calls could be made.
Exten=>200,3,hangup() b) Local port: this is the port on which phone will
negotiate registration information with the server.
In the extensions.conf file, working in the [text] section we Generally by default it’s 4569.
have got 2 phone numbers 100 and 200, and for each of
them we have created 3 extensions . When somebody dials 3) Network Setings: includes the features generally
a number 100,the call will be answered by the Answer associated with the networks. It includes local ip, subnet
application.The next application which will be executed is
mask, dns, iptype, ppp id and ppp pin.
the Dial application.User1 is the user which we are going
to use for the ST-302 IP phone. The last extension is using
4) Dial Plan Settings: In this file actions are
the Hangup application. Its purpose is to hang up the line
connected to extensions. Each extension belongs to a
after the conversation is over. Infact its always a good
idea to use this application in the dial plans. So when context, either the default context or a specific context
somebody dials the number 100, the ST-302 phone will that we have created like incoming IAX calls, long
start ringing and call will be connected to this phone. distance outgoing PSTN calls, local calls etc [4].

IV. FEATURES OF ASTERISK


III. CONFIGURATION ON THE ST-302 IP PHONE
Asterisk based telephony solutions offer a rich and
The configurations of the ST-302 IP phone could be flexible feature set. Asterisk offers both classical PBX
done with the help of Web Interface and for this we need functionality and advanced features, and interoperates
to know the IP address of the phone . with traditional standard based telephony systems and
A. Making connections through the Web Interface Voice over IP systems. Asterisk offers the advanced
features that are often associated with large, high end
The web interface has two access modes ie ordinary proprietary PBX’s. Here in this paper we will be
and super. The first does not give the access to the settings concentrating in details on the paging, voicemails and
considering the IAX ,however the super mode gives you conferencing applications of the Asterisk enabled Voice
the access to all the settings ,including the one for the IAX exchange [3].
protocol. The one implemented for the configuration of
ST-302 is super access mode since it allows IAX settings.

Fig 6: Web Interface for the configuration of hard phone. Fig 7: Management & Configuration Modules of Asterisk

188
A. Call Conferencing means that no mandatory downsampling is required.
The Call conference is an Asterisk solution based These two factors in fact provide a rather significant boost
PBX system. The call conference provides conference to the VoIP base conferencing.
room system for use by all users. The call conference
provided by Asterisk based PBX has the following B. Voicemail
features: Security passwords to control access to who can
This feature enables users to record messages for
call into a conference bridge, unlimited simultaneous
incoming calls that are not answered within a specified
conferences, with unlimited participants. Joining a
number of rings, or receive busy treatment, or are
particular conference is as simple as dialing the extension.
transferred directly to the voicemail. Asterisk comes with
Incoming or outgoing calls may be transferred to a
a voicemail storage with storage capacity of more than
conference, or it may be directly dialed [4].
thousand hours and it can be retrieved from any remote
phone or it could be attached with the email as .WAV file
While installing Asterisk on the server, we need to
or to the voice messaging system repository for retrieval
execute the following commands for enabling the
from a phone [4]. By accessing voice portal from any
conferencing feature via the server:
phone user can listen, save, delete or reply to a message
Cd/usr/src/asterisk
received from a one or more than one group members
Cd/app_conference
with introductory messages. Moreover users have the
Make clean
option of marking a particular message as urgent or
Make
confidential.
Make install
The first thing we need to do is to create the mail box for
Once the conferencing feature has been installed,
asterisk to use, with the help of the following utility
compilation of the conferencing application, we need to
Usr/src/asterisk/addmailbox.
make the following changes in the configuration files :
Moreover we also need to edit the configuration files of
[Conferences]
voicemail ie
Exten=>s,1,wait(1)
vi voicemail.conf
Exten=>s,2,digit timeout,5
Exten=>s,3,response timeout,8
Now we need to locate the IAX section where we have
Exten=>s,4,background
added the entries for the extensions, the lines should like
Exten=>s,5,waitexten(20)
this:
Exten=>s,6,goto(s,4)
Exten=>1, 1, dial (IAX/100,20, tr)
Exten=>XXXX,1,DBget(pass=conferences/${exten});
Exten=>2, 1 dial (IAX/200,20, tr)
Exten=>XXXX,2,gotoIf($[“xxx${pass}”=” xxxNONE”
Exten=1000,1,dial(IAX,100&IAX,200,20,tr)
Exten=>XXXX,3,read(secret,pls-enter-conf-password,10)
Exten =>1000,2,voicemail,u9999
Exten=>XXXX,30,conference(${EXTEN}/MTV)
Exten=>1000,102,voicemail,b9999
Exten=>XXXX,31,hangup
Exten=>XXXX,40,playback
Now what we have done over here is that when extension
Exten=>XXXX,41,hangup
1000 rings ,the first thing we do is dial phone number
1and phone number2 ie 100 and 200 make them ring for
[confhelper]
20 seconds. If the extension is not answered in 20
Exten=>in,1,answer()
seconds, the second entry will be executed which is a
Exten=>in,2,background()
voicemail. The mailbox is specified by u9999 at the end
Exten=>in,3,response timeout()
of the line. Moreover there are two more things noticeable
Exten=>in,4,hangup()
over here, the first is that the priority number has jumped
Exten=>out,1answer()
to 102.This is in fact quite a useful feature of Asterisk
Exten=>out,2,background
which signifies that when the call comes and if a person
Exten=>out,3,response timeout()
is on, the priority will be jumped to+101(n+101).This
Exten=>out,4,hangup()
gives a priority of 102.The second thing to notice is that
the mailbox number at the end of the line is preceded by
[context]
b9999,this indicates a busy message should be displayed
Exten=>999999,1,goto(conf-conferencename,join,1]
to the user and the user should be allowed to leave a
message.
The conferencing feature provided by the Asterisk offers
the advantage of doing conferencing without any zaptel
hardware as well doing native codec streaming, which

189
However until here, a person can leave a voice message, The above written configurations will allow user
but in order to access it, we need to add the following intercom with any extension by dialing *5XX.
lines:
Exten=>1001,1,ringing 3) One-to-Many Intercom:
Exten=>1001,2,wait(2) [Two_way_intercom_GROUP]
Exten=>1001,3,voicemailMain,s9999 Exten=>**2,1,IAXheader (Call-Info:answerafter=0 )
Now when an extension 1001 is dialed, the following Exten=>**2,2,Page(${Two_way_intercom_list}/d)
happens Exten=>2,3,hangup
• The phone gets a ringing tone The above written configuration will allow user to do two
• There is a two second wait(the phone is still getting way intercom to all the extensions defined in the
the ringing tone) variable”Two_way_intercom_list as follows
• The call is answered and goes straight to the Two_way_intercom_list=>IAX/100 & IAX/200
voicemail menu for mailbox 9999.
V. SUMMARY
C. Paging We expect that the design and implementation aspects
This feature supports system wide paging and single presented in this paper, will be a valuable developing
phone intercom or unlimited parking of calls guide for similar kinds of applications. Future work could
simultaneously. Call parking enables a user to hold a call proceed along the following lines:
and to retrieve it from another station within the group.In
order to park a call, a user presses the flash hook and dials • Using an Asterisk based server for connecting two
the call park feature code.The call is parked and the caller remote locations.
is held.[4]In order to retrieve the call,the user can go to • Implementing IVR, Multiple Auto Attendants,
any phone in the group and has to dial the call retrieve Music-on-hold and various other features of the
feature code,followed by the user’s extension id. Hence as Asterisk based PBX.
a result the call is retrieved and connected to the
retrieving user. This project has provided us with an invaluable
experience related to VoIP and collaborative efforts. In
1) One-to-Many Paging: fact, Asterisk has proven to be a viable PBX for future
[One_way_page_group] research studies.
Exten=>1,1,IAX Addheader(Call-Info:answerafter=0)
Exten=>1,2,Page($,{One_way_paging_list}) REFRENCES
Exten=>1,3,Hangup.
The above written configuration will allow users to one [1] Taemoor Abbasi, Shekhar Prasad , Nabil Seddigh, Ioannis
Lambadaris “A comparative study of the SIP & IAX voice protocols” in
way page (broadcast) to all the extensions defined in the CCECE/CCGEI, Saskatoon, May 2005
variable”One_way_paging_list”, which infact could be
defined as [2] Md. Zaidul Alam, Saugata Bose, Md. Mhafuzur Rahman,
One _way_paging_list=>IAX/100 & IAX/200. Mohammad Abdullah Al-Mumin”Small office PBX using Voice over
IP” in ICACT I2-14 FEB,2007

2) One-to-One Intercom: [3] Jim Van Meggelen, Leif Madsen , Jared Smith”Asterisk the Future
We first need to define a macro and then use it in the one of Telephony” Second Edition, August 2007
to one intercom context. [4] Mohammed A Qadeer & Ale Imran, “Asterisk Voice Exchange-An
[macro-pageext] alternative to conventional EPBX” in Proc. IEEE ICCEE 2008, Dec 20-
Exten=>s,1,chanisaval(${ARG1}/JS) 22, 2008
WHERE J:is for dump& Sis for ANY call
Exten=>s,2IAX Addheader( Call-Info:answerafter=0)
Exten=>s,3,Dial(${ARG1})
Exten=>s,4,No Op()
Exten=>s,5,hangup
Exten=>s,102,hangup
[INTERCOM GROUP]
Exten=>*5XX,1,macro(pageext,IAX,/${EXTEN:1})
Exten=>*5XX,2,hangup

190
2009 International Conference on Computer Engineering and Technology

A new Mind Evolutionary Algorithm based on Information Entropy

Yuxia Qiu Keming Xie


The college of Management Science and Engineering The college of Information Engineering
Sanxi University of Economic and Finance Taiyuan University of Technology
Taiyuan, P. R. China, 030006 Taiyuan, P. R. China, 030024
qyxljl@yahoo.com.cn kemingxie@tyut.edu.cn

Abstract—A new self-adaptive Mind Evolutionary Algorithm original winners for superior subpopulations and those with
based on information entropy is proposed to improve the lower score are the winners for temporary subpopulations.
algorithmic convergence especially in the late evolutionary Similartax operator completes the competition inside
time. As studied, the evolution of a population is a process subpopulation on subspace and realizes local optimization. In
with entropy reducing and the population entropy can be this process, individuals are produced by normal
used to reflecting the evolution state. Thus the self-adaptive distribution with some variance around each winner and the
strategy can be realized by building population entropy one with highest score is the new winner replacing the old
computing module to estimate the region including global one in following steps. Dissimilation operator completes the
optimal solution. In this way, the exploring of the algorithm competition between subpopulations on whole solution space
and realizes global optimization. In this process, competition
is more purposeful and sufficiently and the performance is
occurs between the winners of subpopulations. Some with
improved. The experimental results show the algorithm is lower score are washed out and replaced by new ones
valid and advanced. scattered at random in solution space to keep the global
searching ability of population. Therefore, prematurity is
Keywords- Evolutionary computing; Mind Evolutionary
avoided and the population evolves to the global solution.
Algorithm (MEA); information entropy
B. The Population Eentropy
I. INTRODUCTION When MEA is used to solve an optimal problem, the
evolution begins with a stochastic population and then the
Mind Evolutionary Algorithm (MEA) simulates the
‘similartax’ operator is used to local research and the
evolutionary process of human being’s mind. It extracts the ‘dissimilation’ operator is used to guarantee the global
virtues from GA and ES and overcomes their disadvantages. ubiquitous , that is ‘wide explore’ and ‘accurately scan’
‘Similartax’ and ‘dissimilation’ operators are presented and hand-in-hand research mode. As shown in Figure 1, the
monolayer population evolution is improved to multilayer evolution is a process that the research region becomes more
population evolution. Since memory and directional and more clear.
learning mechanism are introduced, search efficiency has
been increased greatly [1]. Now, MEA has been successfully
applied to solve some practical problems [2, 3].
As a new type of evolutionary algorithm (EA), MEA
succeeds basic property from traditional EA, good or not
good. For example, it usually takes algorithms a short time to
find a good solution but an opposite long time to find the
best solution. That means at the late evolutionary time the
convergence will deteriorate. Many scholars take this as their
research object and some delightful achievements [4]. We try
to solve the problem by introducing information entropy and
hope to improve other performance of MEA at the same time.
II. THE POPULATION ENTROPY OF MEA

A. Basic MEA
The whole solution space is divided into some subspaces
by MEA and ‘similartax’ and ‘dissimilation’ operators are
used to realize the evolutionary operation. Figure 1. Sketch Map for Movement of Populations
When “learning” starts, individuals are randomly
scattered in solution space and their score are calculated The optimal process is just similar as the
respectively. Those with higher score are kept as the communication process in information theory. The former

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 191


DOI 10.1109/ICCET.2009.43
introduces negative entropy into system just like the latter The minimum and maximum value of Ĥ P are 0 and
does. Based on the definition of information entropy, the ln M .
entropy reduction process is described as following: at the
beginning of evolution, the population is absolutely
stochastic and the least knowledge of optimal solution is III. SELF-ADAPTIVE MEA BASED ON POPULATION
known. So, the information entropy is biggest. Then, with ENTROPY (PEMEA)
evolutionary operators running, the population moves to the As analyzed above, if the population entropy is
optimal region and the individuals are more centralized and calculated, it’s not difficult to estimate the distance between
the entropy reduce accordingly. In the late time of evolution, the population and the optimal solution. In MEA, variance
the population unlimitedly approach optimal solution and σ is a key factor to control the population’s research zone.
individuals are centralized at it, that means the entropy is So the self-adjustment of σ can realize self-adjustment the
smallest. Take the analysis as base, MEA algorithm can be
algorithm.
improved by introducing entropy to adjust research region.
Accordingly, a new research strategy can be proposed.
Suppose the solution region can be cut into M areas,
Suppose σ i is the similartax variance of i th generation,
marked as z1 , z 2 , Λ , z M , stochastic experiment is done.
Drew out an individual x from a population and find out formula (4) describes the parameter self-adjust strategy of
the new algorithm.
which area it belongs to. If the probability that x comes
σ i2 = C ⋅ Hˆ P (i ) (4)
from area zi is pi , where i = 1,2,Λ , M , pi ≥ 0 ,
M Where C = 1 .
i = 1,2,Λ , M and ∑p i =1
i = 1 . Hence it is uncertain that a ln M
Based on above idea, the PEMEA algorithm steps are
individual falls into which arear. described as following:
Definition 1 The population entropy as a measurement Step1 Set evolutionary parameters: population size,
for the denseness of individuals in a population is defined as subpopulation size and conditions for end;
the following formula. Step2 Initialization: scatter individuals composing
M
H P = −∑ pi ln pi (1) initial population in whole solution space;
i =1 Step3 Similartax operation: new individuals are
produced by normal distribution with variance around each
C. The Population Entropy Estimation winner, material calculation follows formula (5). And the
Accordingly, the entropy of a population H P (t ) is individual with highest score is the new winner replacing
impossible to be computed truly before the optimal solution the old one in following steps;
is got but be estimated. Here a strategy is proposed to x k = N ( x k −1 , σ k ) = x k −1 + σ k ⋅ r (5)
accomplish the task. Where r is a random numeral, x k is the new (or son)
Suppose f min and f max respectively describe the minimum individual in k th generation, x k −1 is the old (or father)
and maximum fitness value that MEA algorithm has individual in (k − 1) th generation and σ k is the similartax
explored so far and λ = f max − f min .The number of super
variance. σ k is calculated according to formula (4).
subpopulations is NS and let M= NS. Then the solution
Step4 Dissimilation operation: realize global
region is plotted into M areas,
optimization, some with lower score are washed out and
[ f min + α i ⋅ λ , f min + α i+1 ⋅ λ ] . i = 1,2,Λ , M . Where
replaced by new ones scattered at random in solution space;
α1 = 0, α M +1 = 1 + ε , 0 ≤ α i ≤ 1 , i = 2,3,Λ , M , α i > α i−1 and Step5 Conditions for end: if the end conditions are
ε is a small positive number. filled, turn to step6; else repeat step3 and step 4;
Step6 Output evolutionary result, algorithm ends.
If M is the population size and mi is the number of
th IV. SIMULATION EXPERIMENT
individuals from i area, the probability of an individual
th
comes from i area can be approximately calculated as Three classic numerical optimization test functions are
following. applied. And the contrast experiment between MEA and
m PEMEA is done to analyze how the algorithmic
pˆ i = i , i = 1,2,Λ , r (2)
performance has been improved.
M
Hence, the estimate of population entropy can be • De Jong’s function 1
3
computed. f ( xi ) = ∑ xi2 xi ∈ [−5.12, 5.12]
r i =1
Hˆ P = −∑ pˆ i ln pˆ i (3)
• Rosenbrock
i =1
f 2 ( x ) = 100( x12 − x 2 ) 2 + (1 − x1 ) 2 xi ∈ [ −2.048, 2.048]

192
• Sharffer’s F6 V. CONCLUSIONS
[sin 2 ( x12 + x 22 )1 / 2 − 0.5]
f 3 ( x ) = 0.5 − xi ∈ [−100,100] The idea of information entropy in information theory is
[1 + 0.001( x12 + x 22 )]2 introduced into the MEA operator design and a new
The parameter value is set as shown in table 1 and the algorithm is proposed as PEMEA. According to the analysis
algorithms are respectively run 100 times to optimize test on experimental result, it can be concluded that the research
function 1 to 3. If the error between the evolutionary result strategy based on population entropy improved the
performance including robust, convergence speed and
and optimal solution less then 0.0001, it is accepted that
precision of MEA greatly and PEMEA is an efficient and
algorithm convergent, otherwise not convergent. The
stable optimization algorithm.
experimental result is recorded in table 2.
Run the algorithms to optimize function 4-5 with ACKNOWLEDGMENT
different coefficient C1 to analyze the affect of the
This work was supported by a grant from the Specialized
coefficient to MEA. Thereby the advantage of the new Research Fund for the Doctoral Program of Higher
algorithm on parameter adjustment is test. The results are Education, P.R.C (No. 2006112005)and Visiting scholar
showed by figure1-4.
foundation of Shanxi province, P.R.C(No.2004-18).
From table2, it can be easily figured out that both
PEMEA and MEA has good convergence, but the speed of REFERENCES
the former is apparently faster than the latter with absolute [1] Chenyi Sun, Yan Sun, Lijun Wei, “Mind-Evolutionary-based
precision and arrive theory optimal solution indeed. Machine Learning: Framework and the Implementation of
It can be find out from figure 2 and figure 5 that the Optimization,” In Proc. Of IEEE INES’98, pp. 355-359, Sept., 1998.
performance of MEA is precarious because affected by [2] Chuanlong Wang and Chengyi Shun, “Analysis on the Convergence
parameter badly but PEMEA overcome the shortcoming. As of MEBML Based on Mind Evolution,” Journal of Computer
Research and Development, pp. 838-842, 2000.
shown in figure 3, 4, 6 and 7, it is the off-line performance
[3] Yuxia Qiu, Gang Xie and Keming Xie, “Multi-model Parallel Tuning
but not the on-line performance is improved greatly because for Two Degree-of-Freedom PID Parameters,” Proc. of 6th
PEMEA take one best individual as its representative and International Symposium on Test and Measurement, pp. 1162-1165,
ignore the average state. June, 2005.
In one word, the performance of MEA is improved [4] Keming Xie , Yiuxia Qiu. Convergence Analysis of Mind
largely in PEMEA. Evolutionary Algorithm Based on Sequence Model. System
Engineering and Electronics. 2007, 29(2): 308-311

TABLE I. CONTROL PARAMETERS OF THE ALGORITHMS


Parameter MEA PEMEA
Population size N=50 N=50
Sub-population size M=10 M=10
Maximum generation number G=100 G=100
variance σ k = C1σ k −1 σ k = 2 C 2 ⋅ Hˆ k (i )

TABLE II. EXPERIMENTAL RESULT

De Jong's Sharffer’s
Test function Rosenbrock
function 1 function 6

algorithm MEA PEMEA MEA PEMEA MEA PEMEA

Convergence
100 100 100 100 100 100
ratio (%)
Average
convergence
16 6 39 13 20 11
generation
number
Figure 2. Optimization of Rosenbrock function with PEMEA and MEA.
Optimal theory
0 0 1
solution
Optimal
1.17e- 5.64e- 1.78e- 2.05e-
experimental 1 1
7 59 6 17
solution

193
Figure 3. On-line Performance of PEMEA and MEA with Rosenbrock Figure 6. On-line Performance of PEMEA and MEA with Sharffer’s F6
function

Figure 7. Off-line Performance of PEMEA and MEA with Sharffer’s F6


Figure 4. Off-line Performance of PEMEA and MEA with Rosenbrock
function

Figure 5. Optimization of Sharffer’s F6 with PEMEA and MEA

194
2009 International Conference on Computer Engineering and Technology

An Encapsulation Structure and Description Specification for


Application Level Software Components

Jin Guojie, Yin Baolin


State Key Laboratory of Software Development Environment
Beihang University, School of Computer Science
100083 Beijing, China
{jinguojie, yin}@nlsde.buaa.edu.cn

Abstract—Traditional research of software components mainly degree among the code level components, which is a
aims to components at the level of program and source code, situation violating the initial objective of component
due to which the coupling degree between the components and engineering[3][7]. This is currently, as we observed, a
the runtime environments is hard to lower, thereby limiting the bottleneck with no effective solution.
reuse ability of the component. The application level (2) The program level components are developed mainly
components containing comparatively integral granularity of by skillful programmers with a specified type of
business function are more suitable for a larger scale of programming language, which has a strong dependency with
application, while there is still lack of reference model and the developing environment and operating platform. As
description specification in this field. The inherent deficiency
technology and tools evolving rapidly, there are few
of program level components is analyzed followed by the
observation of the unique requirements of application level
components developed today may remain reusable after a
components, then a novel reference model is proposed. The certain number of years [4].
main advantage of the model is to propel the integration and The novel component model named Application Level
reuse of legacy software resources by means of transforming Component(ALC) is proposed in this paper. It is defined as a
currently existing applications into application level software module at the granularity of a standalone executable
components with the wrappers providing standard interfaces. software application, and consisting an integral item of
The generalization and applicability of the model are evaluated business function [7][8]. Being compared with the program
by real cases. level components, application level components can consist
relatively more complete function granularity, and the
Keywords-software component; application level component; dependency between the components and their runtime
reference model; specification environments can reasonably be lowered to a certain extent,
so the coupling degree among the components becomes
I. INTRODUCTION more loose which is more suitable for domain modelling.
Although application level components show advantages
Component technology is of growing importance in in many aspects discussed above, there is still lack of
software engineering and is considered to be an critical research attention towards them. In current literatures only a
measure to enhance the reuse ability of software modules. few related concept keywords can be found, like “software
Software components can be classified into two main level components”, “components of complete applications”,
categories according to the functional granularity: the etc[5][7][8]. However, the component model and interface
components at program code level and others at application standard have not been commonly recognized, thereby
level[1]. Traditional software components research mainly causing the absence of a common basis for component
aims to the previous category, resulting in the formation of a analyzing and evaluating. In this paper the specialty and
variety of software standards in business world, including characteristic of application level components is first
CORBA, EJB, COM/COM+, etc[2]. Among all of these explored, and then a reference model in terms of the
standards, the component granularity is limited to encapsulation structure and specification is presented. In the
fundamental software elements like code segments, functions, end, we established several demonstrations for real practice
and objects/classes, which are difficult to accommodate to manifest the conclusion that the model applies to a large
relatively integral business feature. The long term application scope of domain engineering and can be made to be the basis
practice indicated that the reuse ability of such program level of application level component-based design, integration and
components is limited to a low level because of their inherent testing.
deficiency as follows:
(1) The component granularity is too fine to undertake a II. SURVEY ABOUT APPLICATION LEVEL COMPONENTS
complete item of business function, like the orders
management task in a ERP system which is composed by a As a specific subclass of software components,
large number of small code level components working application level components should meet the requirements
together and relying on each other. Therefore, for an unique that all software components have in common. First of all, a
component, its reuse degree in a new business environment general reference model should be built to model the
is significantly low. This means that there is high coupling components falling into this category, which involves a

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 195


DOI 10.1109/ICCET.2009.8
structural model, an interface specification, and a description
mechanism to represent necessary information about the Form B
component’s function and usage[1][4]. As the ALCs are tend Form C
to be formated at higher granularity with more complete Application
domain logic, they have many unique characteristics which Form A B
Application
should be deliberately took into account while designing the C
Begin End
reference model. To make the model more applicable and Application Application
acceptable, a survey of the ALC is done by comparing them A Wrapper
with traditional software components, and the unique
characteristics of ALCs are summarized as follows: Data Area
(1) The core issue of the ALC’s model is to provide the
Component
ability of encapsulating and reusing current existing software Parser
and systems. As large number of legacy software and Component Description File
systems in business practice have to be abandoned only
because they fail to keep following the changeful external
requirements, the reuse of numerous functional modules Description Data Controlment
Interface Interface Interface
inside these systems is a key path to reduce duplicate coding
and investment waste.
Figure 1. Structural Model of Application Level Component
(2) An interprocess mechanism for communicating
among ALCs is needed. As standalone executable programs,
the ALCs within a system should communicate with each A. Applications and Forms
other in a way that supporting interprocess data transferring. To encapsulate currently existing software and systems,
By contrast, traditional software components are primarily the property Applications is certainly to be a significant part
defined as functions or objects, so only function call and of the model. From the ALC point of view, applications can
object request are needed for the communicating of program be on any scale from single executable program files, like a
level components. primitive “Hello world” printing routine, to complex
(3) The invocation and assembling style of the ALC has a software suites, like Microsoft Office or an OA/ERP system.
close link with the business requirements which it undertakes. Furthermore, a conclusion came out after an intensive study
While traditional components are defined and assembled in that numerous documents and electronic forms in business
terms of program codes, the ALCs are executable programs practice have been left up for years and years, which contain
whose life circle starts from the creation of the business information of great use, e.g., Microsoft Excel
corresponding process instance and ends when the process spreadsheets(.xls) and Word documents(.doc) are all of this
halts. It is a essential difference between traditional category. The term Forms is used to stand for all sorts of
component and ALC, so there must be provided with electronic files containing information about visual layouts
specific instructions to control the startup and termination of and manual interactions for a given set of business content.
ALC though its interface. Other necessary instructions Forms are usually used as a companion of a dedicated
besides them are supplied in the same way. type of application and they work collaboratively to perform
Conclusions can be drawn from the comparison that there business tasks. Therefore, they can be treated as joint entities
are essential differences between traditional components and of business tools, that is, a basic run unit can be defined as an
ALCs according to many factors from the internal structure application plus a corresponding form, where the form is
to interface requirement. mainly responsible for visual representation of the business
data, and the application handles the parsing and loading of
III. REFERENCE MODEL
the form as well as the interactions with the operators. For
Considering the above survey about the ALC’s example, an Excel spreadsheet containing records of staff
characteristics and properties, an novel ALC oriented payment can be parsed and loaded by the main program of
reference model was developed and is now still being Excel from Microsoft Office, so the records can be shown on
improved. The design target of the model is to represent a set the screen display and then be viewed and modified through
of necessary description information about ALCs and to the graphical interface. After manipulation, the user’s
facilitate the reuse of legacy software systems through the operation result is saved in the spreadsheet and can then be
integration and encapsulation of business elements such as extracted out.
applications and forms with a uniform interface standard. Considering more complicated business tasks involving
The structure of the reference model is shown in Fig. 1, and multiple applications and forms, several run units can be
the main components are as follows: encapsulated in one ALC and be routed according to a
(1) the applications and forms to be encapsulated, specified property named Sequence. The run units are
(2) a description file representing description information, working in an collaborative way to accomplish the business
(3) an parser program administrating the execution, functions. For a more flexible usage, advanced flow
(4) a data area maintaining runtime data environment, structures like choices and loops can be used to indicate the
(5) the component interfaces exposed to callers. execution sequence of the run units.

196
To facilitate the encapsulation of existing applications, a (3) Type: indicates whether the component has interactive
common interface standard should be established for all the user interface. It gives a strong hint for determining the
applications to be encapsulated. Considering the simplest appropriate running environment of the component, i.e., a
case, the common tasks that the applications carried out in type of applications with visual forms and dialogs are usually
each run unit can be described as: (1) fill in the form to be manipulated by staff, while others without any user
template with initial business data (-write); (2) load and interface are more likely to execute automatically. For
display the working form for browsing and modification(- example, components providing dialogs for business data
exec); (3) as the user ends operating, extract data from the browsing and maintaining naturally fall into the first
processed form and output them with a standard style(-read). category, and the components doing job for batch printing or
Therefore, the calling interface of the applications can be email sending usually refer to the latter.
summarized as a collection of command params {-write, - (4) Forms Mapping: indicates the mapping relation
exec, -read}. Any program in accordance with this standard between the data fields exposed in the component interface
can be directly integrated into a component, like application and the data within the inside forms. It is defined as a 3-
A and B in Fig. 1. For the applications and legacy systems tuple{ component data name, form name, data name in the
incompatible with the interface standard, a type of wrapper form}, which describes the rules about how to insert the
technology[8] can be used to provide an external layer called component data into each forms and extract them vice versa.
“application wrapper”, which dominates the program (5) Constraint Conditions for Form Data & Component
internally and providing external interface that meets Data: a set of logic expressions to keep validity during
demands (shown as application C and its wrapper in Fig. 1). runtime. They describe the constraint conditions to be judged
In this way, a broad scale of legacy systems can be when each form is submitted or when the component ends up.
transformed into standard ALCs without touching the inside, The expressions are composed by data fields that
and then can be reused in new business environments. representing the component’s current state, so the component
itself can learn the erroneous situation timely and do error
B. Component Description File handling or emit exceptions to the caller.
The description file is a repository for a series of The data-related properties are used to describe the
properties representing the necessary information about the input/output data fields of the component. Each data field is
component. Beside the items of Applications, Forms and designed as a 2-tuple{Name, Type}, where Name is the data
Sequence discussed above, some other properties should also field’s identification, and Type is the data type including
be included. The properties in the description file can be {string, int, float, datetime, recordset}. To enhance the
classified into to main categories: the descriptive properties ALC’s power of data processing, “recordset” type is
and the data-related properties, all shown in Table1. designated to abstract a typical set of relational data records
The descriptive properties are designed to indicate some in business practice.
generic description information as follows:
(1) ID: an unique identity code assigned to each C. Component Parser
component to ensure the uniqueness in designing and To administrate the run units in an ALC, a specific
running environment. Here UUID protocol can be combined module is needed to take charge of the scheduling of the run
to meet the demand. units according to the description file. Meanwhile, other
(2) Name & Description: properties that simply provide standard business-independent tasks like data I/O and
the textuary name and brief information about usage. Other interface handling can all be undertook by this module. This
materials like versions and created time can also be put here. is the element called component parser. It works as the call
entry of the ALC and conducts the running procedure during
TABLE I. CONTENT OF THE COMPONENT DESCRIPTION FILE the component’s whole life circle as follows:
Category Property Name & Usage (1) as the component is launching, read in the input data
Descriptive ID - a unique identity code as its original working data.
properties Name - textuary name (2) during runtime, schedule all run units according to the
Description - brief information about usage logic expressions of property Sequence. In each step, the
Type - whether the component is UI-driven form written in with current component data is delivered as a
Applications - the executable programs to be
encapsulated
command parameter to the application for manipulating.
Forms - the documents/spreadsheets to be encapsulated When the application ends, the parser reads out data from the
Sequence - the execution route for multiple run units form and saves them as intermediate working data which is
Forms Mapping - data coupling between the to be processed in the next run unit. If there is no satisfied
component and the inside forms expression for next step, the parse output the current
Constraint Conditions for Form Data - the conditions component data and exits.
that should be satisfied after each time of form (3) handle runtime communication with the caller.
manipulation
Constraint Conditions for Component Data - the
(4) to ensure validity, the parser evaluate the expressions
conditions that should be satisfied for the input and of Constraint Conditions for Form Data after each run unit step,
output data of the component and Constraint Conditions for Component Data before exit.
Data-related Input & Output Data Fields - data fields that the (5) when the component ends up, export the working
properties component receives and outputs results which can be manipulated by the caller.

197
The above tasks of the component parser are all based on
the content of the description file which are absolutely
business-independent, so the parser itself is kept away from
any business logic and gains a common sense in all ALCs.
D. Data Area
Data area is a region allocated in memory. It stores all the
intermediate working data between multiple run units. Each
item in the region is a 2-tuple {DataName, DataValue},
where DataName is corresponding to a component data
field’s name and DataValue contains the current value.
Data area is created and maintained by the parser. As the
component launches, the parser allocates a piece of the Figure 2. Structural Model of Application Level Component
memory and fills it with all the original input data. During
runtime, the output of each run unit is took over by the parser Generally, the descriptive instructions are mainly used in
and then be updated into the data area. When the component system assembling stage, i.e., for the system developer to
ends running, the values kept in the data area are definitely identify the usage of the component, while the data-related
the final work result. and controlling instructions are mainly used in system
E. Component Interfaces running stage to invoke the proper execution behavior of the
component.
The component interfaces are exclusively the only entry
exposed to the users for calling and controlling. In this way, IV. SPECIFICATION OF THE REFERENCE MODEL
the internal details can all be hidden to the outside, thus An concrete description specification of the ALC model
giving the component a “black-box” feature. The interfaces is presented as the UML class diagram shown in Fig. 2. Each
of the ALC model are defined as a set of instructions of the structural elements and interfaces in the model is
supporting the minimum collection of calling and integration abstracted as a class in the diagram. As a whole, an ALC is
requirements. Classified by functional type, there are three abstracted as a core class ApplicationLevelComponent.
categories of instructions shown in Table 2. The class Sequence is used to describe the execution
(1) Descriptive instructions: to query the basic steps of run units. It is formed as a collection of expressions
description properties of the component, which are necessary like <Source [condition] => Destination>, where: (1) Source
for use. is the current run unit represented as a pair of
(2) Data-related instructions: to provide a uniform rule to “Application:Form”. (2) Condition is a logic expression
handle data I/O between the component and its caller. Here a indicating the routing path and flow condition between every
platform-independent XML file format is used to facilitate two run units. The condition is composed by the component
data exchange. The data file is assigned as the parameters of data fields which can be evaluated at run time. (3)
the instructions --load-data and --save-data, which simply Destination is the run unit to be executed next when the
contains the data names and values in an intuitionistic format. condition is satisfied.
(3) Controlling Instructions: to provide methods for Other description elements include the classes of
controlling startup and termination of the component. Interface describing the collection of interface instructions,
Furthermore, a particular feature is assigned to the model for InputData and OutputData describing the input/output data
dumping the intermediate running state to a disk file which fields, FormsMapping describing the data coupling between
can be loaded from to resume the previous state. This feature, the forms and the component, and classes of
carried out by the component parser as a standard function, FormConstraintCondition and Input/Output DataConstraintCondition
can enable the operators to save multiple versions of work describing various types of conditions in the model. All these
effort at will, and revert to one in some situation, e.g., a data classes and their relations in the diagram form an explicit
crash after an unexpected system halt. description specification of the ALC reference model.
TABLE II. CONTENT OF ALC COMPONENT INTERFACE
V. EVALUATION
Type Instruction Name & Parameters
The evaluation is done by the development of several
Descriptive instructions --get-id
--get-name typical business systems fully assembled by ALC
--get-description components built with the method proposed here. As an
--get-type example, Table 3 shows the description file of the “loan
--get-input-data / --get-output-data forms filling component” in the newly developed Housing
Data-related instructions --load-data <data_filename> Fund Reviewing System(HFRS). The component contains
--save-data <data_filename> three forms to be filled in by the fund applicants, including a
Controlling Instructions --exec <input_datafile> <output_datafile> loan contract form (Contract.doc), a credit rating report
--terminate
(Credit.doc), and a house mortgage evaluating report
--dump-image <image_filename>
--load-image <image_filename> (Eval.doc). As before the development of HFRS, there had
been a long time for the staff to manually process the

198
application using emails and some desktop office suites like
Microsoft Word, so a collection of standard business forms
had been accumulated then. Since the forms are familiar to
the staff, they are desired to be reused in the new system of
HFRS. This is just the situation that the ALC model applies
to, and the forms are encapsulated and transformed into
ALCs using wrapper technology at low cost.
A wrapper for Microsoft Word is then be developed,
shown in Table 3 as “msword-wrapper.exe”, which invokes
and communicates with the Word application through the
opening interface supported by Microsoft Office via
COM/OLE[2]. Given the wrapper implemented in a short Figure 3. UI Loan Contract Form
period, all the components are developed simply by writing
distinct description files.
The HFRS, as a typical medium scale system popular in
business domain, is constructed by totally 24 ALCs, of
which 75% are UI-driven components constructed with the
wrapper for Microsoft word (shown in Fig. 3 and 4), and
others are components towards automatical business tasks
including document printing and email sending. As a statistic,
the development of HFRS using traditional method would
cost approximately a minimum workload of 1.5 man-month,
while with our method was done in 25 days (including the
development of several wrappers for about 10 days). It got a
efficiency improvement by 45%. Considering that the Figure 4. UI of House Mortgage Evaluating Report
wrappers are reusable resources commonly used in business
domain, future development can be further accelerated. The method has been employed in several typical
business applications like loans reviewing systems,
VI. CONCLUSION AND FUTURE WORK professional titles declaring and management systems, as
The reference model and description specification for well as revenue administration systems, where the model’s
application level components have provided the expected applicability and validity were preliminary evaluated. A
advantages in evaluation. A novel method is proposed to wider evaluation will be made involving a larger scale and
encapsulate and reuse current existing software and system scope of systems for continuously improving the model.
resources, which is a way to promote the reuse level of REFERENCES
software modules. The model is simple and flexible to use by
providing a standard framework clearly figuring out the [1] Short, K., “Component Based Development and Object Modelling”,
Texas Instruments Software, USA, 1997.
business specific properties to be focused on.
[2] SunSoft, “Component-Based Software with Beans and ActiveX”,
http://java.sun.com/javastation/whitepapers/javabeans/javabean_ch1.html
TABLE III. DESCRIPTION FILE OF LOAN FORMS FILLING COMPONENT
[3] Redolfi, G. Spagnoli, L. Hemesath, P. Bastos, R.M. Ribeiro, M.B.
ID: 5588ce2e-0808-11dc-9a1b-00a0c90a8199 Cristal, and M. Espindola, A., “A Reference Model for Reusable
Name: Loan Forms Filling Component Components Description”, Proc. of 38th Annual Hawaii International
Description: ALC for filling loan forms by applicants(V1.0, 5/11/2008) Conference on System Sciences, 2005
Type: Manual
InputData: [4] Geisterfer, C.J.M., and Ghosh, S., “Software component
OutputData: string Name, string Address, string Phone, string Sex, string specification : a study in perspective of component selection and
SN, string HouseAddress, string HouseSN, datetime AppDate, ... reuse”, International Conference on Commercial-off-the-Shelf
Applications: msword-wrapper.exe (COTS)-Based Software Systems, 2006
Forms: Contract.doc, Credit.doc, Eval.doc [5] Graubmann, P. and Roshchin, M., “Semantic Annotation of Software
FormsMapping: Name = [Contract.doc].AppliciantName, Address = Components”, 32nd EUROMICRO Conference on Software
[Contract.doc]. AppliciantAddress, …, Name = [Credit.doc]. Engineering and Advanced Applications, 2006
AppliciantName, Sex = [Credit.doc]. AppliciantSex, SN = [Credit.doc].
[6] Meling, R. Montgomery, E.J. Sudha Ponnusamy, P. Wong, and E.B.
SN, …, HouseSN = [Eval.doc]. HouseSN, …
Mehandjiska, D., “Storing and Retrieving Software Components: A
Sequence: Begin => msword-wrapper.exe:Contract.doc , msword-
Component Description Manager”, Software Engineering Conference,
wrapper.exe:Contract.doc => msword-wrapper.exe: Credit.doc, 2000
msword-wrapper.exe: Credit.doc => msword-wrapper.exe: Eval.doc, [7] Liu Y, Gao Y, Wang YH, Wu L, Wang LF, “A Component Based
msword-wrapper.exe:Eval.doc => End Geo-Workflow Framework: A Discussion on Methodological Issues”,
FormConstraintConditions: [Contract.doc].AppliciantName == [Credit.doc]. Journal of Software, 2005, 16(8)
AppliciantName == [Eval.doc]. AppliciantName, … [8] Yang L, “Combining Mechanism of a Domain Component-Based
InputDataConstraintConditions: Architecture Based on Separate Software Degree Components”,
OutputDataConstraintConditions: Name != NULL && SN != NULL && Mini-micro System, 2002, 23(9)
HouseSN != NULL && ……

199
2009 International Conference on Computer Engineering and Technology

Fault Detection and Diagnosis of Continuous Process Based on Multiblock


Principal Component Analysis

Libo Bie, Xiangdong Wang


School of Information Science and Engineering,
ShenYang University of Technology, ShenYang, 110178, China
bielibo81758@yahoo.com.cn, xdwang@sut.edu.cn

Abstract historical data of normal operation condition has


attracted much interest by chemical engineers.
The fault detection and diagnosis of continuous One of the data-driven methods which obtains
process is very important for the production safety and widespread availability is principal component
product quality. Owing to its no need to know much analysis(PCA)[1]. Because of the favorable features of
about the process mechanism and exact process PCA, their method can handle high dimensional and
model ,the data driven method, typically the principal correlated process variables. The main point of the
component analysis (PCA) has attracted much approach is to use PCA to compress normal process
attention by chemical researchers for monitoring data and extract information by projecting the data
process. PCA is powerful in fault detection ,however, it onto a low dimensional score space. The confidence
has difficulties in diagnosing fault correctly in complex limits of Hotelling T2 and SPE statistics in those
process. In this paper, the multiblock principal subspaces can be used to detect fault and the variable
component analysis (MBPCA) is applied for fault contribution plot was introduced for fault diagnosis.
detection and diagnosis in continuous process, which Simulation results show these methods are simple and
uses the integral PCA to detect fault and block powerful[2].However, the fault diagnosis based on
contribution and variables contribution to diagnose variable contribution plot in PCA method may make
fault. The simulations on the Tennessee Eastman mistakes, especially when the process is complex and
process show that the proposed method can not only the number of monitoring variables is large. To
detect fault quickly ,but also find the fault location enhance the PCA model’s explanation and fault
exactly. diagnosis ability ,researchers[3,4] propose the approach
of multiblock principal component analysis(MBPCA)
or hierarchical principal component analysis(HPCA).
Keywords: fault detection; fault diagnosis; The key idea they proposed decomposes the large-scale
principal component analysis; multiblock principal system into function-independent block or
component analysis; block contribution site-independent block. When a fault is detected, first
judge which block the fault locates in and then
1. Introduction determine the fault position in that block ,thus the fault
diagnosis ability has been improved.
On-line monitoring of continuous process In this paper, a novel continuous process fault
performance and fault diagnosis are extremely detection and diagnosis technique based on MBPCA
important for plant safety and good product quality. In and block contribution[5] is proposed. The confidence
the last decade, many approaches have been applied to limit of SPE statistics in the integral PCA model is
this field, which could be classified into three used to detect fault and the block contribution and
categories: methods based on principle model, methods variable contribution plots are applied to diagnose the
based on knowledge and methods based on data-driven. fault. The rest of the paper is organized as follows. In
For the model method, many factors, such as high section 2, the concept of PCA is introduced. In section
process nonlinearity, high dimensionality, and the 3, the approach of MBPCA, combined with block
complexity of a process can make it very difficult to contribution and variable contribution is developed to
develop; whereas for the knowledge method, the lack monitor process and diagnose fault. The method is
of knowledge may confine its application. As an demonstrated on the Tennessee Eastman process in
alternative, the data driven method, which only needs section 4.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 200


DOI 10.1109/ICCET.2009.107
2. Principal Component Analysis(PCA) increase the difficulty of analysis and diagnosis. Many
approaches have been proposed for selecting the
As a data-driven method, PCA has been used number of the principal components to be retained in a
successfully for detecting faults in handling highly PCA model[7]. In this paper, the simple but widely used
correlated variables. The essence of PCA is projecting cumulative percent variance(CPV) method is proposed ,
the process data onto the principal component space of which judges that the cumulative percent variance
lower dimensionality to compress data and extract captured by the first k principal components is bigger
information. Fault detection can be carried out by than the predetermined limit. As follow,
confidence limit of SPE or T2 statistics and in simple k m

process fault diagnosis can be realized by variable ( ∑λ i ∑λ i ) × 100% >65%--90% (6)


contribution plot. The data matrix X(n × m), which has i =1 i =1

been collected under normal operation and Having established a PCA model based on normal
standardized to zero mean and unit variance comprises process data, future behavior can be referenced against
n samples and m process variables. PCA is intended to this “in-control” model. This comparison can be
construct the independent variables of less numbers to carried out in the principal component space or the
reflect the information of the original data matrix as residual space, corresponding the T2 statistic or the
more as possible, which are linear combination of the SPE statistic.
original m variables. The information is measured by For concision, the formula (5) can be rewritten as
variances and PCA actually on the eigenvalue the following form:
decomposition of covariance matrix C[6]. X=TkPkT+ TePeT (7)
where Tk(n × k) and Pk(m × k) are the principal
X T X component score and loading matrices. Te(n × (m-k
C= n − 1 (1)
)) and Pe(m × (m-k)) are the residual score and
Cpi=λi pi (2)
loading matrices respectively.
where C defines the covariance matrix of X , pi Suppose a new process sample x is collected, the
represents the orthogonal and unit eigenvector of the squared prediction error(SPE), which indicates the
covariance matrix C; λi is the eigenvalue according to amount by which a sample deviates from the model, is
reducing order. Thus PCA can transform the matrix X defined by
into the following form:
m
SPE=eeT=(x- x )(x - x )T=x (I- Pk PkT) xT (8)

∑t and
T
X=t1p1 +t2p2 + …
T T
+tmpmT= i pi (3)
t=xPk (9)
i =1
where pi is the same as the above definition and named x =tPkT (10)
as principal component loading vector and ti is the e=x- x (11)
corresponding score vector. where t, x , e, I are the score , prediction value,
ti=Xpi (4) prediction error and unit matrix respectively.
PCA is aimed to explain the main variation of the As PePeT= I- Pk PkT, the formula(8) can be rewritten
data matrix X by choosing the proper anterior k as
principal component score vectors. Supposed k SPE=eeT= xPePeT xT (12)
principal components(k<m) are selected. Matrix X can According to the determinant standard, SPE can’t
be reconstructed as exceed the confidence limit Qlim under the normal
k condition, otherwise the abnormal state may appear in
∑t p
T
X=t1p1 +t2p2 + …
T T
+tkpkT+E= +E (5) the process. Assuming the normal distribution of x, the
i i
i =1 confidence limit Qlim for the SPE statistic can be
calculated using the following formulas.
where E(n × m)is residual, which is the difference 1

= θ 1 ⎡1 + ⎤ h0
2 θ 2 h0 2 θ 2 h0 ( h0 −1)
+
between original data and data reconstruction with the Ca
Q lim
anterior k principal components, usually describing the ⎢⎣ θ1 θ12 ⎥⎦
noise information. m
θ = ∑ λ i
The number of the principal components retained i j
j = k +1 (13)
in the PCA model is a critical issue in fault detect .If 2 θ 1θ 3 (i=1,2,3)
the number is large, the model will be h0 = 1 − 3θ 2 2
overparameterized and include noise. On the other
hand ,if the number is small, that will not effectively
capture the information of the original data set and may

201
where λi is the eigenvalue of the covariance matrix C, 3 Collect a new sample, monitor the process
Ca is the standard normal deviate corresponding to the using the SPE in procedure 1 and a fault is detected if
upper a percentile. SPE is out of limit continuously.
When SPE of the new sample exceeds the 4 Once a fault has been detected, calculate the
confidence limit of the PCA model , the abnormal block SPE. The block whose SPE is out of limit
situation may occur and can be judged, but can’t be severely can be considered as the source of fault or
assured what place the fault appears in the process. mainly affected by the fault.
That is the task of the fault diagnosis and can be 5 Plot the variable contribution of that block and
realized by the variables contribution plots in the localize the root cause of the fault with process
simple process. The idea behind contribution plots is knowledge.
simple. When monitoring a process, each variable will
have a unique impact on the SPE and T2. The larger the 3.1 Blocking
contribution of an individual variable, the more likely
it is that the variable is the source of the excursion. The Suppose the regular PCA mentioned in section 2
contribution of the SPE of the jth process variable at the has been established to get the principal component
ith observations is as: loading matrix Pk(m × k) and residual loading matrix
Qij=eij=(xij- x ij)2 (14) Pe(m × (m-k)). As defined in [5], prior knowledge
Although variables contribution plots are effective can be used to divide the m variables into B blocks,
to diagnose fault in simple process, it has difficulties in which the bth block contains mb variables. Loading
complex process. When highly correlated variables are matrix Pk and Pe can also be parsed as follows.
monitored, significant contributions may appear across
several of them and the variables contribution plots Pk1 Pe1
method can’t determine the exact location of the fault. Pk= : P e= : (15)
The next section is attempted to resolve this problem Pkb Peb
by using the concept of block contribution and
: :
multiblock principal component analysis(MBPCA).
PkB PeB
3. Fault Detection and Diagnosis Based on where Pkb (mb × k) and Peb (mb × (m-k)) are the
MBPCA and Block Contribution principal component loading and residual loading
matrix of the bth block respectively.
Multiblock principal component analysis (MBPCA) Given a new sample x, separate the data vector into
or the hierarchical principal component analysis B blocks and the bth block is xb (1 × mb).
(HPCA) divides the large-scale process into several
blocks to enhance the model’s ability of explaining and 3.2 Block SPE statistics
diagnosing. Westerhuis JA et al [8] showed the scores
in the MBPCA can be calculated directly from the Similar as equation (12), the block SPE of the bth
regular PCA. S. Qin, S. Valle et al [5] approved the block is
loadings can also be calculated from the regular PCA SPEb=ebebT= xbPebPebT Peb PebT xbT (16)
algorithm and pointed further that the equivalence Note that PebPebT is not the idempotent matrix.
between multiblock analysis algorithms and regular Since SPEb is a quadratic form of a multivariate normal
PCA indicated that the scores and loadings in the vector x, it can approve that SPEb is distributed
MBPCA can be obtained by simply grouping the approximately as gbχ2(hb), where
scores and loadings in the regular PCA. Qin, S. Valle gbspe =tr{(PebTPebΛ)2}/ tr{PebTPebΛ} (17)
et al also proposed the concept of block contribution to hbspe =(tr{PebTPebΛ})2/ tr{(PebTPebΛ)2} (18)
assist fault diagnosis. In this section, fault detection and Λ is the diagonal matrix composed of the residual
and diagnosis will be accomplished by the MBPCA eigenvalues, namely Λ=diag{λk+1, … λm}. Therefore
and block contribution. The basic procedures can be the confidence limit for SPEb is δb=gbspeχa2(hbspe) for a
summarized as follows. given confidence 1-a.
1 Collect process data under normal condition,
pretreat and build the regular PCA model of all 3.3 Variable contribution in a block
variables.
2 Block the scores and loadings acquired by the The jth variable in the bth block is defined as
procedure 1 according to process knowledge and
SPEb,j=(xb,j- x b,j)2 (19)
calculate the confidence limit of block SPE.

202
where xb,j is the jth variable of the bth block and x b,j is 17 Underflow 20 Compressor power
the prediction value of xb,j by the PCA model. 18 Temperature 22 CW temperature
19 Steam flow
4. Case Study Calculate the control limit of block SPE statistics under
the 99% confidence limit respectively.
The proposed approaches are applied to the Then the first abnormal case is considered and the
well-known benchmark process, Tennessee Eastman process is simulated for 20 hours. The fault 1 A/C
process, which was developed by Downs and Vogel [9]. composition ratio in feed stream 4 with a step change
As shown in Fig 1, the process consists of five major was introduced at the 5th hour and concluded at the
units: a reactor, a product condenser, a vapor-liquid 5.5th hour, namely the fault 1 is introduced between the
separator, a recycle compressor and a product stripper. 100th and the 110th sample. The SPE chart under fault 1
As the plant is open loop and unstable, many control is shown in Fig 2. The figure shows SPE oversteps the
schemes have been proposed and in this paper we used 99% confidence limit at sample 105, detecting the fault
the control scheme in [10]. The process has 12 quickly. To compare the traditional PCA with the
manipulated variables, 22 continuous process proposed method for fault diagnosis, variables
measurements and 19 composition measurements.. contribution plot of SPE at sample 105 is present at Fig
3. It displays there are 3 variables contribute most for
the SPE, which are variable 11(separator temperature),
variable 20(compressor power), variable 21(reactor
cooling water inlet temperature). The difference of
contribution among them is not obvious and it is
difficult to determine which is mostly affected by the
fault, If we only consider the variable which has the
maximum contribution as the excursion of the fault, it
will be believed that the variable 21 is the source of
fault or mostly affected by the fault. Making such an
decision will lead to check around the compressor and
obviously make a mistake. In fact, the fault 1 is located
in the material section. So the fault diagnosis based
only on the variable contribution plot can’t determine
correctly the position of the fault, especially in the
Fig .1. Tennessee Eastman process complex process.
In this paper, 22 continuous variables are selected 800

for monitoring and the sampling interval is set to 3 700

minutes. Collect data in the normal operation condition 600

500

during the 25 hours simulation time, which generates


PE

400
S

500 samples as the reference set. Ten principal 300

components are selected, which captures 69.87% of the 200

variation in the reference set. Control limit of SPE 100


99%confidence limit

statistics is 16.357 which is based on the 99% 0 50 100 150 200


Samples
250 300 350 400

confidence limit. The process is divided into five Fig .2 . SPE chart for fault 1
25
blocks, namely the material block, the reactor block,
the separator block, the stripper block and the 20
te

compressor block. These 22 variables are grouped into


nra

15
u
tribtio

five blocks according to their locations in the plant, as


Econ

10
SP

shown below. 5

一. Material 二 Reactor 三 Separator


0
0 5 10 15 20 25
1 A feed 6 Feed rate 11 Temperature Variables

2 D feed 7 Pressure 12 Level Fig.3. Variable contribution plot at


3 E feed 8 Level 13 Pressure sample 105 for fault 1
4 A and C feed 9 Temperature 14 Underflow To resolve the problem, we applied the proposed
21CW temperature method to this case. After a fault has been detected, we
四.Stripper 五.Compressor first draw the block contribution of SPE of each block
15 Level 5 Recycle flow and determine the most likely block containing fault by
16 Pressure 10 Purge rate comparing their ultralimit. Then we draw the variable

203
Block 1 Block 2 Block 3
20 150 20

contribution plot of that block and combine the process 15


100
15

knowledge to diagnose fault. Fig 4 is the plot of block 10 10


50
SPE under fault 1. It shows that the fault 1 is serious 5 5

0 0 0
causing all the blocks having obvious out-of-limit and 0 200 400 0 200 400 0 200 400

Block 4 Block 5
block 1(material block) is most likely the source of the 20 20

fault as it has the maximum ultralimit. The variable 15 15

10 10
contribution plot of SPE at sample 105 in block 1 is 5 5

shown in Fig,5. It is apparent that the most 0


0 200 400
0
0 200 400

contribution ratio for SPE is the variable 1(A feed), so Fig.7. Block SPE chart for fault 2
the fault is produced through the variable 1 or affects it
140

120

most. Having knowing the process knowledge that the 100

te
nra
A/C ratio should be kept at a fixed value and the great

tio
80

cn
o u
trib
60

E
excursion of variable 1 just compensates the change of

P
S
40

A/C ratio in stream 4, the operator can easily confirms 20

the fault is produced through the abnormal variable 1 2 3


Variables in bloc k 2
4 5

4(A and C feed), thus determining the location of fault


exactly. Fig.8. Variable contribution of block 2 at
800
Block 1
150
Block 2
150
Block 3
sample 102 for fault 2
600
100 100
400

200
50 50
5. Conclusions
0 0 0
0 200 400 0 200 400 0 200 400

Block 4 Block 5
150
400 In this paper, we apply the MBPCA to detect and
100 300

200
diagnose fault. First build the PCA model of all
50

0
100

0
variables to detect fault and then determine which
0 200 400 0 200 400
block the fault locates in by the block contribution.
12
Fig.4. Block SPE chart for fault 1 Finally diagnose the fault according to the variable
10
contribution of that block combined with the process
knowledge. Simulation on the TE process shows the
te

8
ib n
tio
u ra

6
effectivity of this method.
P
SEo
cntr

0
1 2 3
Variables in bloc k 1
4
References
[1] Jackson J E.A., User’s Guide to Principal Component,
Fig.5. Variable contribution of block 1 at New York: Wiley-Inter-Science, 1991.
sample 105 for fault 1 [2] Gang Chen and ThomasJ.McAvoy Predictive On-line
The other abnormal case is tested for the fault 2 monitoring of continuous processes
[3] Wangen, L.E., and Kowalski, B.R. A multiblock partial
reactor cooing water inlet with a step change. As same
least squares algorithm for investigating complex
as the case 1, the process is simulated for 20 hours, chemical systems[J]. J.Chemometr., 1988 3:3-20.
introducing the fault at 5th hour and concluding at 5.5th [4] Ra nnar, S., MacGregor,J.F.,and Wold,S.Adaptive batch
hour. The SPE for fault 2 in Fig 6 shows the monitoring using hierarchical PCA[J], Chemometrics
out-of-limit is at sample 102, detecting fault timely. Intell.Lab.Syst 1998,41:73-81
Fig 7 is the plot of block SPE and it displays fault 2 is [5] S. Qin, S. Valle, and M. Piovoso, “On unifying multi-block
not serious as fault 1. The trend in block 2 appears analysis with applications to decentralized process
strongest and is most likely the site of fault. Fig 8 monitoring,” J. Chemometrics, vol. 15, pp. 715–742,
shows variable 9(reactor temperature) is affected most 2001.
[6] Jincheng fan et.al Data Analysis Science publication
by the fault. With process knowledge, the empirical
[7] W. Li, H. Yue, S. Valle, and J. Qin, “Recursive PCA for
operator is inclined to suspect the reactor cooling water adaptive process monitoring,” J. Proc. Cont., vol. 10,
inlet temperature has an abnormal change, thus finding pp. 471–486, 2000.
the cause of fault. [8] Westerhuis JA, Kourti T, MacGregor JF. Analysis of
250

multiblock and hierarchical PCA and PLS models.


200
J.Chemometrics 1998; 12: 301–321.
150
[9] Downs, J. J. and Vogel, E.F. A plant-wide industrial
P
SE

100
process control problem[J]. Computers and chemical
50
99% c onfidenc e limit
Engineering, 1993, 17(3):245255.
0
0 50 100 150 200 250 300 350 400
[10] Self-Optimizing control of a large-scale plant:the
Samples
Tennessee Eastman process Larsson, T., et al., Ind.
Fig.6. SPE chart for fault 2 Eng.Chem. Res., Vol. 40, pp. 488

204
2009 International Conference on Computer Engineering and Technology

Strong Thread Migration in Hetereogeneous


Environment
Khandakar Entenam Unayes Ahmed, Md. Al-mamun Shohag, Tamim Shahriar, Md. Khalad Hasan, Md. Mashud
Rana
Dept. of Computer Science & Engineering
Shahjalal University of Science & Technology
E-mail: tanvir-cse@sust.edu, shohag_2002@yahoo.com, subeen@acm.org, khalad-cse@sust.edu, masudcse@yahoo.com

Abstract—This paper provides a complete framework for


thread migration using JPDA. In our framework neither we II. RELATED WORKS
lose portability nor do we insert any artificial code. The system M. Fuad et. al. [2] developed provides a mechanism of
developed based on our framework needs no extra involvement strong thread migration. Their mechanism is based on a pre-
of programming to continue the whole migration system. It is a processor that inserts code into the program to be migrated.
powerful autonomous system for heterogeneous environment
It can suspend the thread only inside run method, not in any
maintaining its portability since Java Virtual Machine (JVM)
is not modified.
other method. The second limitation is code growth rate. T.
Sekiguchi et. al. [3] utilizes the java exception handling
Keywords- distributed computing; strong thread migration; mechanism. It first identifies the methods that are to be
sending agent; receiving agent; capture debugger; restoration migrated. Then it adds a primitive migratory for those
debugger. methods. When migration takes place a NotifyMigration
exception is generated and is handled by try – catch block.
At that time local variables are stored in state object. When
I. INTRODUCTION
any NotifyMigration exception is thrown it is caught in the
In Java Programming Language the mobility is current method and propagated to the calling method. It uses
considered during design. Source code is compiled into a an artificial program counter. The code growth rate is high
transient state called bytecode (an instruction set that is very due to the code insertion by Pre-processor. S. Bouchenak et.
similar to the one of a hardware processor). The Java Virtual al. [1] modifies the JVM. In their framework they used two
Machine then interprets the byte code into an executable techniques named Type Inference and Dynamic de-
form. This makes the developers’ work easy where a user optimization. In Type Inference they create user defined
can run and compile his code once and then can run in any stack. When it serializes a thread it maintains all information
machine with JVM. This makes Java convenient for about local variables, operand stack, operand and pc. In
implementing distributed applications. The Object Dynamic de-optimization technique it uses the user defined
Serialization allows java to be transmitted or stored which stack named type stack and type frame to restore the states.
enables a process to be started at new hosts with an initial Though the full concern was on reducing performance
state that is always starts from the beginning of the process. overhead but they lose the portability. A. Dorman [8] also
Our concern is here where we can start the process from the uses JPDA for state capture and restoration. His complete
point at which the process is transmitted. That is we need to focus was on capturing and rebuilding the execution context
transmit/store the state of the execution. So we have to of running objects and not on particular means of
serialize/deserialize the thread. So our goal is to develop a transportation.
complete framework for thread migration. Thread migration
or thread serialization has many applications in the areas of III. JAVA PLATFORM DEBUGGING ARCHITECTURE(JPDA)
persistence and mobility, such as check pointing and
recovery for fault tolerance purpose, dynamic A debugger developer may hook into JPDA at any layer.
reconfiguration of distributed systems, dynamic load Since the JDI is the highest level and easiest to use
balancing and user’s traveling in mobile computing system. developers are encouraged to develop debugger using JDI.
In this project the JPDA (java platform debugging Debuggers are able to ‘hook into’ programs running in the
architecture) is used to capture and restore the execution JVM by requesting notification of events fired by the
state for dynamic thread migration. The focus in this project framework, e.g. variable modification, exception, stepping,
is on the migration of the execution state instead of focusing method entry and method exit events. These events are
on transfer of objects since this facility is provided by the placed in an ‘EventQueue’, from which the debugger may
JAVA’s transport protocol. consume and further query the running program. While the
JPDA provides access to information not normally available
in standard Java applications, it also limits access in other
areas. In querying the JVM for running objects, the debugger
978-0-7695-3521-0/09 $25.00 © 2009 IEEE 205
DOI 10.1109/ICCET.2009.207
is not able to obtain direct object references, limiting the
ability to use an object in the same manner as a conventional • The heap of the JVM includes all the java object
program. All references and values returned by the JVM are created during the lifetime of JVM. The heap associated with
mirrors of the actual values. For the most part this poses few a thread consists of all the objects used by the thread (objects
problems, as it is possible to both get and set local instance accessible from the thread’s java stack).
variables. A notable exception is that of the current execution
point within a stack frame. There exists a location() method • The method area of the JVM includes all the classes
for the retrieval of the execution point, but in an effort to that have been loaded by the JVM. The method area
enforce security constraints within the Java environment associated with a thread contains the classes used by the
there is no accompanying setLocation(). thread (classes where some methods are referenced by the
thread’s stack).
IV. JVM CHARACTERISTICS
Before you begin to format your paper, first write and We access java stack, heap and method area using JPDA
save the content as a separate text file. Keep your text and as it provides convenient way to access them.
graphic files separate until after the text has been formatted
and styled. Do not use hard tabs, and limit use of hard returns
to only one return at the end of a paragraph. Do not add any V. PROJECT GOALS
kind of pagination anywhere in the paper. Do not number Using JPDA and byte code modification this project will
text heads-the template will do that for you. build up a complete framework for the dynamic thread
Finally, complete content and organizational editing migration. The total project follows the following steps.
before formatting. Please take note of the following items
when proofreading spelling and grammar: • The capturing of the execution state of a process using
JPDA.

JVMDI - Java VM Debug Interface • Display of all capturing states for research purpose.

• The byte code of the class is transferred using TCP/IP


Virtual Machine
protocol.

• Build up an agent that will receive the byte code in


Back-End
receiver and then execute the byte code under the debugging
mode.

JDWP - Java Debug Wire Protocol • Successfully suspend the process and modify the byte
code and restore all of the variables and resume the process.
Front-End
VI. OVERALL DESIGN

User Interface
In this project the design process concentrates on state
capture and restoration of running objects along with the
transportation of mobile objects. The capture and restoration
JDI - Java Debug Interface is done using JPDA without inserting any code or modifying
the JVM. The JPDA allows stopping the execution of any
Figure 1: Java Platform Debugging running objects and accessing the exact location of execution
Architecture state and then store the location along with the local
variables. The total capture and storage are done by
The JVM data areas that are related to our project are developing a debugger using JDI named ‘CaptureDebugger’.
described below: Then the mobile object is serialized along with the stored
value of local variables. Both execution and transmission are
• A Java stack is associated with each thread in JVM. A monitored by an agent named ‘SendingAgent’. There will be
new frame is pushed onto the stack each time a java method also a receiving agent that will receive the serialized data and
is invoked and popped from the stack when the method then run the mobile object in listening mode that will be
returns. A frame includes a table with the local variables of traced by another debugger in sender side named
the associated method, and an operand stack that contains the ‘RestorationDebugger’. RestorationDebugger stops the
partial results (operands) of the method. A frame also mobile object in remote machine and then restore the state
contains registers such as the program counter (pc), and top and values of the local variables and starts the process. The
of the stack. system consists of two agents named sendingagent and

206
receivingagent for sender and receiver respectively.
Sendingagent is responsible for executing the Algorithm: SendingAgent
‘CaptureDebugger’ and user can take decision of migration 1. Start
using sendingagent. The total migration process is 2. Check for any request for migration.
maintained by sendingagent. The receivingagent is always in 3. If there is a request to migrate
listening mode by running an accepthread which can receive then goto step 4.
the mobile object along with the variables. Then the Else goto step 2.
receivingagent will be responsible for running the received
4. Setup Connection with target
mobile object in suspend mode that will be restarted only
machine.
when the second debugger named ‘RestorationDebugger’
will be connected. RestorationDebugger will restore the 5. Send the class file of mobile object to
captured values and restart the process. Four major target machine.
components that will be greatly responsible for making the 6. Execute CapturDebugger.
migration success are: 7. Check wheter the mobile object
started in target machine.
• Sendingagent: Responsible for executing 8. If the mobile object is started
‘CaptureDebugger’ and migrating the mobile objects along then goto step 9.
with captured information(execution state, values of local Else goto step 7.
variables etc). It will also responsible for setting up 9. Execute RestorationDebugger.
connection with the receiver and launching the second 10. Check for further migration request.
debugger named ‘CaptureDebugger’ that will trace the 11. If more request(s) then goto step 4.
mobile objects in remote machine (receiveer). Else goto step 12.
12. Exit
• CaptureDebugger’: It will stop the running process and
will capture the execution state (pc), thread name, signatures
and local variables. It will dump all captured information in a
stack list named stackframelist.
B. Receiving Agent
• Receivingagent: It will be responsible for receiving the
mobile object along with captured information and executing Receivingagent will start its function by opening a socket
the mobile object in suspension mode. It will also notify the in a specific port number. Then it will start a thread named
sender about the start of execution of mobile object. AcceptThread. AcceptThread will first accept the server
socket and then get the class name, size and class file sent by
• RestorationDebugger: It will be started by the sendingagent of sender. Create a file named class name and
sendingagent. It is responsible for tracing the mobile object then execute the class using exec() method of untime class in
in remote machine. It will then restore the captured suspended debugging mode. Then it will send a notification
information and then restart the mobile object. about the start of the mobile object to the sendingagent of
sender. This thread will continue its execution until the
server socket becomes null.
A. Sending Agent
Sending agent will start its duty only when the migration
decision will take place. At first it will set up connection Algorithm: ReceivingAgent
with receiving agent using stream socket connection. Then 1. Start
using this socket it first read the class file of the mobile 2. open a server socket
object and then send the class file along with its name and 3. Start a thread named AcceptThread.
size. Then Sendingagent execute the debugger 4. check for the connection.
‘CaptureDebugger’ using the method exec() of Runtime 5. if connection is closed
class. It will always keep itself in communication with then goto step 6
receiver until the migration is complete. Now it will wait for else goto step 4.
the notification that will come from receiver whether the 6.Exit
mobile object has started or not in the receiver. If it gets the
notification then it will execute the second debugger named Figure 3: Algorithm for Receiving Agent
‘RestorationDebugger’

207
C. Capture Debugger
Algorithm: AcceptThread
CaptureDebugger connects with debuggee running in 1. Start
listening mode at specific port number. It first finds out the 2. Accept the server socket
connector type by matching the specification provided 3. Get the class name, size and class file
through argument with connection specification provided by 4. Create a new class file with the same
VM. Then it connects with debuggee using this connector. name and content of the class file
To capture information the debuggee must be passive instead received.
of active. That’s why the CaptureDebugger first 5. Run the class file in specific port
passivate/suspend the debugge. To capture information it address
extracts all threads that are in debuggee. Then it finds out 6. Send a notification to the
main thread, as our first concern is with single thread, which SendingAgent
will later see the light of working with multithread. It then 7. Check the server socket
dumps the stack from this thread. Stack contains all frames,
if sever socket is null
which are popped recursively. Then from the frames the
then goto step 8
program counter (pc), method name, method signature, local
variables and its corresponding values. All information is else goto step 2
stored using a user-defined stack named stackframelist. Since 8. Exit
CaptureDebugger acts as an individual process simply Figure 5: Algorithm for AcceptThread
executed by sendingagent, so a handshaking is required to
make process communication through which we can transfer
the captured information to the sendingagent. D. Restoration Debugger

RestorationDebugger connect with debuggee running in


Algorithm: CaptureDebugger suspension mode at specific port number. It first finds out the
1. Start connector type by matching the specification provided
2. Find specific connector through argument with connection specification provided by
3. Check whether the connection is open VM. Then it connects with debuggee using this connector.
4. If the connection is open After attaching with TargetVM it will first resume the
then goto step 13 TargetVM by default. In the mean time the EventHand
Else goto step 5 thread will be started by this debugger. Then EventHand will
5. Check whether the debuggee is trace all of the method call events and will search for a
present specific method call that is inserted just after variable
6. If the debuggee is present declaration in a method. If the specified method is found
then goto step 7 then it will suspend the TargetVM. Now it will search for the
Else goto step 13 main thread and will also dump the main thread’s stack. The
7. Attach debugger with debuggee frame will be dumped too. Then the frame will be
8. Suspend the debuggee distinguished according the method signature and method
9. Extract all threads in debuggee name. Then it will update the local variables using the
10. Find main thread StackFrameList which is obtained from capture debugger.
Then it will resume the TargetVM. Here it is not guaranteed
11. Extract all frames
that the process will be started from the exact desired
12. Capture all states
location but it is ensured that all of the local variables are
13. Exit updated successfully. And also it should be noted that the
Figure 4: Algorithm for CaptureDebugger debugger will resume the process after changing the PC.

208
VII. CONCLUSION
Our proposed framework provides a new and different
Algorithm: RestorationDebugger way for strong thread migration. Using JPDA we provide
1. Start system independent feature in our program (as JPDA is part
2. Find specific connector of standard Java). Though we might develop a faster
3. Check whether the connection is open mechanism for strong thread migration modifying the JVM,
we didn’t do so as we want to use our system in
4. If the connection is open
heterogeneous environment, hence not to sacrifice
then goto step 18
portability.
Else goto step 5
5. Check whether the debuggee is VIII. REFERENCES
present
6. If the debuggee is present [1] Sara Bouchenak and Daniel Hagimont. “Zero Overhead Thread
then goto step 7 Migration.” INRIA Technical Report No. 0261. May 2002.
Else goto step 18 [2] M. Fuad and M. Oudshoorn. “AdJava - Automatic Distribution of
7. Attach debugger with TargetVM Java Applications.” In Michael Oudshoorn, editor, Twenty-Fifth
8. Resume TargetVM Australian Computer Science Conference, volume 4, pages 65 – 75,
Melbourne, Australia, 2001. Australian Computer Society.
9. Start eventhand thread
[3] T. Sekiguchi, H. Masuhara, and A. Yonezawa. “A Simple Extension
10. Search for the sentinel method of Java Language for Controllable Transparent Migration and Its
11. If the method is found Portable Implementation.” In Coordination Models and Languages,
then goto step 12 pages 211–226. 1999.
Else goto step 10 [4] Sun Microsystems. “The JavaTM Virtual Machine Specification -
Second Edition, 1999”.
12. Suspend TargetVM http://java.sun.com/docs/books/vmspec/2ndedition/html/VMSpecTO
13. Get StackFrameList from C.doc.html.
SendingAgent [5] Sun Microsystems. “Java Platform Debugger Architecture Overview,
14. Find main thread from all threads 2000.” http://java.sun.com/j2se/1.3/docs/guide/jpda/jpda.html.
15. Dump frame from stack [6] E. R. Harold. Java I/O. O’Reilly, 1999.
16. Update frame by StackFrameList [7] M. Dahm. “Byte Code Engineering Library,” 04/12/2002 2002.
17. Disconnect debugger http://bcel.sourceforge.net/.
18. Exit. [8] Andrew Dorman, “Execution Context Migration within a Standard
Java Virtual Machine Environment.”

Figure 6: Algorithm for Restoration


Debugger

209
2009 International Conference on Computer Engineering and Technology

A DSP-based active power filter for three-phase power distribution

systems
Ping Wei, Zhixiong Zhan,Houquan Chen
Department of Information Engineering, Nanchang University,
wp620125@yahoo.cn zhixiong3090@163.com choq521@163.com

Abstract are being used in a variety of applications that


require sophisticated control. DSP-based
This paper presents a new digital signal controller for active power filters has been
processor (DSP)-based control method for shunt proposed in some papers in which general
active power filter (SAF) for three-phase power purpose and floating-point DSPs are used. A
distribution systems. Compared to conventional DSP-based three-phase active power filtering
analog-based methods, the DSP-based solution solution is proposed in this paper. The proposed
provides a flexible and cheaper method to technique uses a fixed-point DSP to effectively
control the SAF. The proposed technique eliminate system harmonics and it also provides
requires fewer current sensors than other reactive power compensation or power factor
solutions which require both the source current correction.
and the load current information. Furthermore, This paper also presents the application of
the proposed technique provides both harmonic DSP-based controllers for SAF for three-phase
elimination and power factor correction. Finally, distribution systems. The system considered in
the simulation and experimental result also this paper is shown in Fig. 1. Section 2 of this
shows that both controller techniques can paper provides the fundamentals of SAF and the
reduce harmonics in three-phase electric structure of the controller is discussed. In
systems drawn by nonlinear loads and reduce Section 3, simulation results verifying the
hardware components. concept are presented.
Keywords: Harmonic distortion; Shunt Active
power filter; Digital signal processors 2. Active power filter system

1. Introduction The main objective of the SAF is to


compensate harmonics, reactive power, neutral
There has been a continuous proliferation of current and unbalancing of non-linear loads
nonlinear type of loads due to the intensive use locally such that a.c. mains supplies only unity
of electronics control in all branches of industry power-factor sinusoidal balanced three-phase
as well as by general consumers. Conventional currents. The SAF draws the required currents
rectifiers are harmonic polluters of the power from the a.c. mains to feed harmonics, reactive
distribution system. Non-linear loads, especially power, and neutral current for balancing of load
power electronics loads, create phase currents locally and causes balanced sinusoidal
displacement and harmonic currents in the main unity power-factor supply currents under all
three-phase power distribution system both make operating conditions.
the power factor of the system worse. Fig. 1 shows the basic SAF scheme including
In recent years, digital signal processors (DSP) a set of non-linear loads on a three-phase

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 210


DOI 10.1109/ICCET.2009.140
distribution system. In this paper, the SAF the capacitor, and at the same time act as the low
consists of three single phase inverters. The pass filter for the AC source current. Then the
switches of SAF must support unipolar voltage SAF must be controlled to produce the
and bipolar current, an IGBT with anti-parallel compensating currents if1, if2 and if3 following the
diode is needed to implement each switch. reference currents i*f1, i*f2 and i*f3 through the
control circuit.

Fig.1 an SAF and nonlinear loads considered in this paper

The current which must be supported by each Fig.2.The proposed shunt active power filter

switch is the maximum inductor current. The


maximum voltage which must be supported by 2.2 System modeling
controllable switches is the maximum dc bus
voltage. The load may be either single phase, The representation of a three-phase voltages
two phase or three phase and non-linear in and currents of the VSI in Fig. 2 are as follows:
nature. In this paper, we consider three single the voltages Vf1, Vf2 and Vf3 supplied by the
phase uncontrolled diode bridge rectifiers with inverter as a function of the capacitor voltage, Vc,
resistive–capacitive loading as non-linear and the state of the switches G1, G3 and G5 are:
unbalanced loads. This load draws a non- ⎡Vf 1⎤ Vc ⎡−2 1 1 ⎤ ⎡G1⎤
⎢Vf 2⎥ = ⎢ 1 −2 1 ⎥ ⎢G3⎥
(1)
sinusoidal current from the utility. ⎢ ⎥ 6 ⎢ ⎥⎢ ⎥
⎣⎢Vf 3⎦⎥ ⎢⎣ 1 1 −2⎦⎥ ⎣⎢G5⎦⎥

2.1 Description of proposed filter Where, G1, G3 and G5 represent three logic
variables of the three legs of the inverter. The
As shown in Fig.2, the SAF system consists inverter conduction state is represented by these
of a three phase voltage inverter with current logics. Then the SAF currents can be written as:
regulation, which is used to inject the dif 1
Lf1 = VS 1 − V f 1 (2)
compensating current into the power line. The dt
VSI contains a three-phase isolated gate bipolar dif 2
Lf 2 = VS 2 − V f 2 (3)
transistor (IGBT) with anti-paralleling diodes. dt
The VSI is connected in Parallel with the dif 3
Lf 3 = VS 3 − V f 3 (4)
three-phase supply through three inductors Lf1, dt
Lf2 and Lf3. The DC side of the VSI is connected Where, if1, if2 and if3 are SAF currents and Vs1,
to a DC capacitor, Cdc that carries the input Vs2 and Vs3 are the supply voltages. The voltage
ripple current of the inverter and the main in the DC capacitor can be calculated from the
reactive energy storage element. The DC SAF currents and switching function as follows:
capacitor provides a constant DC voltage and the
∫ [G i
1 + G 3if 2 + G 5if 3] (5)
VC = 1 f1
real power necessary to cover the losses of the C
system. The inductors Lf1, Lf2 and Lf3 perform The set point of the storing capacitor voltage
the voltage boost operation in combination with must be greater than the peak value of the line

211
neutral mains voltage in order to be able to shape rectifier commutations. In this paper, we give
properly the mains currents. several simulation results with uncontrolled
rectifier at α=0°.
2.3 Capacitor voltage with PI controller The simulation results in steady state
operation are presented. Fig.5 shows the
The basic operation of this proposed control performance of the SAF system using PI
method is shown in Fig. 3. The estimation of the controller. Waveform of the source current
reference currents from the measured DC bus without SAF is shown in Fig. 5(a). Fig. 5(b)
voltage is the basic idea behind the PI controller shows the source current with SAF
based operation of the SAF. The capacitor superimposed to the supply voltage. Fig.5(c)
voltage is compared with its reference value, shows the compensation current. The capacitor
V*c, in order to maintain the energy stored in voltage superimposed to its reference is shown
the capacitor constant. The PI controller is in Fig.5 (d). It is noticed that the supply current
applied to regulate the error between the in phase with the supply voltage, and the
capacitor voltage and its reference. The output of capacitor voltage follow its reference.
PI controller is multiplied by the mains voltage
waveform Vs1, Vs2, Vs3 in order to obtain the
supply reference currents i*s1, i*s2, i*s3. Then the
supply reference currents are proportional to the
mains voltages. The three-phase compensating
reference current of SAF (i*f1; i*f2; i*f3) are
estimated using reference supply currents and
sensed load currents.
Fig.4. SAF connected in parallel with nonlinear loads.

Fig.3.The proposed control system

3. Simulation results

A number of simulation results with different


operating conditions were developed. In Fig. 4,
SAF is connected in parallel with nonlinear load.
Then, the three-phase controlled rectifier with
resistive load has to be compensated by the SAF.
In order to limit maximum slope of the rectifier Fig.5. Simulation results of proposed SAF using PI controller.

current, a smoothing inductor, Lr, has been (a) Source current without filter. (b) Source current and

inserted before the rectifier. Also, it is prevented source voltage with filter. (c) Compensating current. (d)

the inverter saturation even in correspondence of Capacitor voltage with its reference.

212
4. DSP implementation and Experi-
mental results

A laboratory prototype of the active filter has


been built to evaluate the performance of the
proposed active filter and its implementation in
the TMS320F240 DSP. Fig. 6 shows the block
diagram of the experimental setup. Control and
gating signals for the switches of the active filter Fig.7. Experimental results of proposed SAF. (a) Source

are generated on a TMS320F240 DSP. The DSP current and voltage without filter. (b) Source current, its

is connected to a computer through a XDS510PP reference and source voltage. (c) Compensation current.

emulator. The Texas Instruments (TI)


TMS320F240 processor is a fixed-point 16-bit 5. Conclusions
processor, operating at 20 million instructions
per second (MIPS), and has the capabilities of The focus of this paper is to present a novel
using advanced PWM motor control techniques DSP controlled active filter to cancel harmonics
for adjustable speed drives. The XDS510PP is a generated in three-phase industrial and
portable scan path emulator capable of operating commercial power systems. A three-phase PWM
with the standard test interface on TI DSPs and controlled shunt active filter was designed to
Microcontrollers. This portable emulator works inject harmonic currents with the same
of the computer parallel port. magnitude and opposite phase to that of the
nonlinear load currents in order to cancel
harmonics at the point of common coupling
(PCC) with the utility. The control scheme using
three independent hysteresis current controllers
has been implemented. The operation and
modeling of the SAF have been described. A
laboratory prototype has been built to verify the
Fig.6. Experimental setup of proposed DSP controlled performance of the active filter. The feasibility
active filter. of the approach was proven through the
Fig. 7 shows experimental waveforms for the experimental results.
load condition of uncontrolled rectifier. Fig. 7(a)
shows the supply voltage and current without References
ASF. Fig. 7(b) shows the supply phase voltage,
[1] H.Akagi, New trends in active filters for power
supply current and its reference. It is clear from conditioning, IEEE Trans. IA 32 (6)
Fig. 7(b) that the supply current is almost sin (November=December 1996) 1312–1322.
[2] Fujita H, Akagi H. The unified power quality
waveform and follows the supply voltage in its conditioner: the integration of series-and shunt-active
waveform shape with almost a unity filters. IEEE T Power Electr 1998; 13(2):577–84.
[3] Texas Instruments-Configuring PWM Outputs of
displacement power factor. Fig. 7(c) shows the TMS320F240 with Dead Band for different Power
Devices, Application Report SPRA289, 1997
compensating current. From these figures, it is
[4] Texas Instruments-TMS320C24x DSP Controllers
clear that the effectiveness of the proposed Reference Set, Vol. 1 (CPU, System and Instruction
Set), March 1997, Revision A.
controller for active power filter. [5] Texas Instruments-Dead-Time Generation on the
TMS320C24x, Application Report SPRA371, 1997.
213
[6] Kamran F, Habetler T. Combined deadbeat control of a
series parallel converter combination used as a
universal power filter. IEEE T Power Electr 1998;
13(1):160–8.
[7] Dastfan A, Gosbell V, Platt D. Control of a new active
power filter using 3-d vector control. IEEE T Power
Electr 1999; 14(4):5–12.
[8] Chandra A, Singh B, Al-Haddad K. An improved
control algorithm of shunt active filter for voltage
regulation, harmonic elimination, power factor
correction, and balancing of nonlinear loads. IEEE T
Power Electr 2000; 15(6):495–503.
[9] Jeong S, Woo M. DSP-based active power filter with
predictive current control. IEEE T Ind Electron 1997;
44(3):329–36.
[10] Buso S, Malesoni L, Mattavelli P. Comparison of
current control techniques for active filter applications.
IEEE T Ind Electron 1998; 45(5):722–9.
[11] J. Matas, L. Garcia deVicuna, J. Miret, J.M. Guerrero,
M. Castilla, Feedback linearization of a single-phase
active power filter via sliding mode control, Power
Electron. IEEE Trans. 23 (1) (2008) 116–125.
[12] K. Nishida, M. Rukonuzzman, M. Nakaoka, Advanced
current control implementation with robust deadbeat
algorithm for shunt single-phase voltage-source type
active power filters, Electric Power Applic. IEE
Proceedings 151 (3) (8 May. 2004) 283–288.
[13] T. Toshihiko, H. Eiji, I. Norio, O. Yasushi, Y.
Masayoshi, A novel real-time detection method of
active and reactive currents for single-phase active
power filters, Power Electronics Specialists
Conference, 2007 (PESC 2007), IEEE, 17–21 June,
2007, pp. 2933–2938.
[14] D. Lindeke, S.A. Mussa, F.P. de Souza, I. Barbi, Single
phase active power filter controlled with a digital signal
processor – DSP, Power Electronics Specialists
Conference, 2004 (PESC 04), 2004 IEEE 35th Annual
vol. 2, m20–25 June 2004, pp.1024–1027
[15] Texas Instruments-TMS320C24x DSP Controllers
Evaluation Modul, Technical References, 1997.

214
2009 International Conference on Computer Engineering and Technology

Access Control Scheme for Workflow

Gao Lijun Zhang Lu Xu Lei


computer school
Shenyang institute of Aeronautical Engineering
Shenyang, China
e-mail: gaolijun0610@163.com

Abstract—Access control is an important security measure in partition of permission has bigger localization
workflow system. Based on the analysis of many access RBAC is a kind of access control model tending to be
control models, by emphasizing the weakness existing in the static, which can’t be related to the transaction process of
present workflow system, a new access control model is application tightly, so it’s difficult to authorize and revoke
proposed with the introduction of task set, task flow, time
constraint and the formalized definition and relevant
the permission timely and rightly according to the need of
algorithm. It overcomes the shortcomings of the traditional transaction process dynamically.
model based on the role access control that has bad dynamic Furthermoreˈ permission is relevant to the role
adaptivity of authority assigning, no flow control and time directly in the traditional RBAC model, which determined
constraint. The model can therefore enhance the security the granularity of permission can be specified up to the
and practicability of the workflow system. role level, and the minimum permission constraint is the
the minimum permission constraint of role[2].
Keywords- workflow; tasks; task flow; time constraint
B. Shortage of task process control capability and the
I. INTRODUCTION periodic constraint capability
Workflow is an efficient method of complex multitask Take the case of a simplified firm equipment
cooperative modeling with extensive application in the purchasing workflow in this section, the faults of RBAC
enterprises’ informationization, and the most remarkable in the workflow system are pointed out. The equipment
characteristic is to divide big task into smaller tasks which purchasing workflow consists of five tasks: filing an
can be finished by many men cooperatively, therefore application for purchasing(task1), making purchase
effective task control model is needed to manage and bill(task2), scrutinizing purchase bill(task3), confirming
control the access of these cooperation staff. That’s to say, purchase bill(task4), executing purchase(task5). The task
it can not only forbid users executing unauthorized tasks executing constraint of a real workflow instance is as
but also ensure authorized users to execute tasks smoothly. follows: (1) is project manager pr executes task1, financial
If the system fails to provide sufficient security protection clerk cl executes task2, general manager role ma and
for these cooperative staff, it is inevitable that some financial executive role su cooperate to execute task3, role
personnel can execute illegal operation by the c1 executes task5;(2)the execution series of task is task1ˈ
convenience of work. The widespread mainstream model task2ˈtask3ˈtask4ˈtask5,and if user A has executed task1 or
is based on the RBAC˄role-based access control˅ model, task2ˈthen A is forbidden executing task3 and task5; but if
however the existing RBAC can’t express complicated A has executed task1ˈ then A must execute task4. task3
workflow access control constraint, especially the should activated by ma, then by su;(3) The time constraint
shortage of control mechanism of workflow, so it fails to period is set from Jan, 2008 to Oct, 2008, and task2 can be
control the interactive relations among tasks (e.g. order, executed from 9 o’clock to 16 o’clock on the 15th every
recurrent time constraint, etc.), and can’t satisfy all moth, furthermore the execution time length of task2 is
control demands if the existing RBAC model is regulated not over 30ms; the figure 1 shows the role layer
introduced into workflow system straightly. structure; in the fig. 2, user represents the user collection
of executing task, the number on the arc represents the
II. The shortage of RBAC model in the user number needed in this task.
workflow system .
RBAC, put forward by Sandhu, etc. is the basic ma
framework of RBAC96[1] model, which has wide
application in the access control field, that main idea is
modify the traditional two-layer authorization
structure—user-permission into three-layer authorization pr s
structure—user-role-permission, therefore through
relating user with permission to simplify the difficulty of
authorization management. RBAC model has its own cl
advantage, but has some weakness in the workflow area.
Figure 1᷏ Role Hierarchy Structure
A. The dynamic property of assignment and
revocation of permission is bad, and the granularity

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 215


DOI 10.1109/ICCET.2009.120
task cooperative constraint, permission assignment
constraint, task conflict constraint, etc. The following
gives the formalization description of model and the
related algorithm realizing the above-mentioned
constraints.
Definition 1 T-R&TBAC model structure
U={u1, u2…um} is the set of all users; R={r1,r2…rn} is
the set of all roles[3,4]; T={t1,t2…to} is the set of all
divided tasks; P={p1,p2…pp} is the set of all access
permission authorities; S={s1,s2…sq}is the set of all
Figure 2ˊ Purchasing workflow sessions.
The task execution of workflow system is limited by UA Ž U u R ,a many-to-many mapping from user
some conditions, including the task order constraint, task setto role set, representing the user’s role assigned;
cooperation constraint, task time constraint, which are all RT Ž R u T, a many-to-many mapping from role set to
task set, representing the role’s task assigned; TP Ž T u
hard to resolve through traditional RBAC, not to say that
the RBAC failed to recognize the task status which results
to unable to trace the accomplishment of task and P, a many-to-many mapping from task set to permission
increases the difficulties of calculating the start time of set, representing the task’s permission assigned; SA Ž S
follow-up task. u U, a function mapping from session set to user set,
III. Introducing the access control model of time representing the affiliation between session and user;
constraint T-R&TBAC based on the role and task RH Ž R u R define the partial order on R, which called
˄Time-Rose & Task Based Access Control˅ the role hierarchy.
The above section analyzes the faults of role access Definition2 Defination of conflicting role and
control model in the workflow systemˈbut the basic conflicting task set
reason is the three-level access control structure which CR={cr1, cr2,…crh},the conflicting role set, cri  Rˈ
determined these congenital faults of RBAC. In the and make
workflow system, this fault is more obvious because the u  U , cr  CR :| role _ set (u ) ˆ cr |d 1 ˈ
concept of task is very distinct. In order to solve the
above-mentioned problem, this structure must be changed, where the role_set is the function assigning role to user.
so it’s natural to introduce the concept of task set into CT˙{ ct 1, ct 2,…cth},the confilicting task setˈ
RBAC model clearly, and make the task execution limited cti  Tˈand make
by time constraintˈso it’s easy to think that modify the r  R, ct  CT :| task _ set (r ) ˆ ct |d 1 ˈ
original structure into four-level one, and finally form a
where task_set is the function assignning task to role.
access control model with time constraint
Definition 3 Logic control structure of task
TSUCC˙{…tsucc iˈ…tsucc j }, TSUCC Ž T is the
-----T-R&TBAC which based on the role and task, just
like the following fig. 3 illustrate.
front ordered set of present active task, which is the task
set must been finished before finishing this task.
TNEXT˙{ …tnextpˈ…tnextq }, TNEXT Ž T is the
back ordered task set of present active task, which is the
task set must been finished after finishing this task.
 Definition 4 the time and status function
Figure 3᷏ Simplified T-R&TBAC Model TM={ti |i  N}ˈTM is the set of all time point of
visual world, ti  TM represents one time point which
The model gives specific role to all users of the whole should not be accordance with real time, but can set a
workflow system, and assigns tasks to every role, also the
minimum access executing permission of every task. In function mapping from ti to real time, and i, j  N , 
such a kind of access control structure, permission is not tiˈtj  TMˈi<j œ ti<tjDŽ
directly related to the role, while having to be related TR={(tiˈtj)| tiˈtj  TMˈi<j}ˈis the time zone between
through task. No matter which user is given with any role two time points.
to register , it must have the permission during the
executing permission task instance period, so it’s natural Currenttime˖ ‡ o TM˖is a global atomic sub
to realize the dynamic assignment and revotion of function, which return current time.
permission, moreover specify the granulites of permission StartTime˖T o TM˖ StartTime˄taski˅= tsˈts  TM
up to the task level, and improve the dynamic adaptability is the beginning time of task.
of workflow system dramatically. GetTaskTR˖T o TR˖GetTaskTR˄taski˅= trˈtr
T-R&TBAC model inherits the characteristics of  TR is the time zone of task permitted to activate.
TaskTimeLength˖T o N˖ TaskTimeLength (taski)=
RBAC3[1], on which adding the workflow control
mechanism that make the current task can obtain the
prescriptive permission only in accordance with the nˈn  N is natural number(s˅,which can get the time
constraint conditions set by the model. The constraint length of task permitted to be activated.
conditions include time constraint, task flow constraint, Definition 5 T-R&TBAC system status

216
state={U,R,T,P,UA,RT,PT,SA,RH,CR,CT,Currenttim While ˄ʽ˄Currenttime/ ' T ˅˅ ˅
//rejudge the constraint conditions at ' T interval
e,StartTime,TSUCC,TNEXT,TaskStation}ˈ
{True ( finished
False ( unfinished {
TaskStation ˙ is the task
If˄ ʽConstraint_valid(state )
accomplishment status, this 16 variables set illustrates the
status of the task at that occasion.  
||GetTaskStation˄ task GetSuccTask
Definition 6 authorizing constraint judgement (taski))==false
Authorizing constraint judgement is a one variable ||ʽ(StartTime˄taski˅IN GetTaskTR (taski))
function, judging whether meeting the constraints of user,
role(including role cooperation), permission, inheritance, ||ʽ(CurrenttimeˉStartTime<TaskTimeLength
confliction, time, etc. (taski))˅
PerAccessFlag = False ˗
Constraint_valid:state o {True
False ˖
If˄ʽPerAccessFlag˅
True (VWDWXVLVDFFHSWHGE\V\VWHP
Constraint_valid(state)={False (VWDWXVLVQRWDFFHSWHGE\V\VWHP {DelTaskFrom (taski);
In order to discuss conveniently, we set a task DelTaskPermission˄taski˅;}
executing flag variable. Else
True ( WDVNLVSHUPLWWHGWRH[HFXWHG {BackWriteNextUser˄GetNextTask˄taski));
PerAccessFlag={False (WDVNLVQRWSHUPLWWHGWRH[HFXWHG Č
GetTaskPermission˄taski˅;}
The resolution scheme and relevant algorithm of task flow }
control and periodic constraint
Definition 7 global function definition If with the above judgments of  task, the
GetRoleTask: R o T:GetRoleTask˄r˅=T’ˈT’ Ž T get
PerAccessFlag is still True, which show that the task is
feasible and obtain the permission, then access to relevant
the role’s task. resources; if PerAccessFlag is False, showing the
AddTaskTo:T o AT: AddTaskTo(taski)=AT, AT is constraints are not satisfied, so the task will be deleted,
the active task set, AT Ž T,taskj  T add the task into and the relevant resources access permission is also been
active task set. deprived.
DelTaskFrom: T o AT: DelTaskFrom (taski)= AT, č Conclusion
taskj  T delete the task from active task set. The work flow control mechanism is introduced into
GetSuccTask˖T o Tsucc˖GetSuccTask˄taski˅˙ the T-R&TBAC model based on the RBAC model, which
Tsucc, Tsucc Ž T is front ordered set obtaining the current
makes the workflow constrained by time, task flow, task
cooperation, permission assignment, task confliction, etc.
active task. The extended model overcomes many inherent
GetNextTask˖T o Tnext˖GetNextTask˄taski˅˙ shortcomings of traditional model, combining with
Tnext, Tnext Ž T is back ordered set obtaining the current workflow system seamlessly, enhancing the security
active task. greatly. To a real system, further study should been made
{True to solve the time efficiency and recovery of security
GetTaskStation˖T o False ˖GetTaskStation (task )=
i status.
( WKHWDVNLVDFFRPSOLVKHG
{True
False ( WKHWDVNLVQRWDFFPSOLVKHG [1] Ravi S. Sandhu, Edward J. Coyne, Hal L. Feinstein and
, obtaining the
Charles E. Youman. Role-Based access control models[J]. IEEE
accomplishment of current task.
BackWriteNextUser˖Tnext o HEADNODE ˖
Computer, 1996,29(2)˖3847.
[2] Reinhardt A. Botha, Jan H. P. Eloff.Access Control in
BackWriteNextUser˄taski˅=HeadNode˄which can be Document-centric Workflow Systems An Agent-based
Approach[J].Computers and Security,2001,20(6):525-532
empty˅,filling the user of the task in the back ordered [3] Trent Jaeger. On the increasing importance of constraints.
task assigned user area, indicating the back ordered task In: Proceedings of the Fourth ACM Workshop on Role-Based
of this task should be accomplished by the user. Access Control[C]. Fairfax, Virginia, USA: ACM, 1999: 33-42
GetTaskPermission: T o P:GetTaskPermission˄taski˅
[4] Ahn,G.-J.The RCL2000 language for specifying role-based
authorization constraints [Ph.D. Thesis]. Fairfax, VA: George
=P’ˈP’ Ž Pˈtaskj  T obtain the limited permission of the Mason University, 1999.
[5] Fang Chen, Ravi S. Sandhu. Constraints for role-based
task. access control. In: Proceedings of the ACM RBAC Workshop. MD:
DelTaskPermission˖T o P˖DelTaskPermission˄taski˅ ACM Press, 1996. 39-46.
˙DP, DP Ž P delete the permission of the task.
[6] Gao lijun, Xu Lei. The reseach on the turning point choose
and the security recovery algorithm in TRBAC [J].Shanghai˖
Algorithm description: Computer Engineering,2007,33(9):15
PerAccessFlag=True
AddTaskTo(taski)
GetTaskHeadStation(taski)

217
2009 International Conference on Computer Engineering and Technology

A Mathematical Model of Interference between RFID and Bluetooth in


Fading Channel

Junjie Chen Jianqiu Zeng Yuchen Zhou


Beijing University of Posts and Beijing University of Posts and Hangzhou branch of China
Telecommunications, Beijing, Telecommunications, Beijing, Telecom, Hangzhou, 310000,
100876, China. 100876, China. China.
Chenjunjie78@gmail.com

Abstract—In this paper, the performance of Bluetooth as [6]-[8]. The mutual interference between Bluetooth
under the interference of RFID is investigated. A and Zigbee is presented in [9]. The inter-piconet
mathematical model is proposed to quantify the interference within the Bluetooth network is illustrated
performance degradation of Bluetooth. The proposed in [10]. Furthermore, IEEE specifically established
model carefully takes PHY (i.e., the channel model, the Working Group 802.15.2 to research the coexistence
transmitted power, the distance and the modulation) and problem of WLAN and WPAN operating on 2.4 GHz
MAC (i.e., the frequency hopping, the packet format and band.
the traffic load) into account. Packet Error Rate (PER), Although many works related to Bluetooth are
the average delay and the throughput are selected as the completed, to the author’s knowledge, the research
performance metrics and are analyzed in this paper. In result on the interference between Bluetooth and RFID
final, the theoretical analysis is justified by the
not appears in the public literature. Therefore, in this
simulation.
paper, a mathematical model is established to quantify
the performance of Bluetooth in the presence of
Keywords-RFID; Bluetooth; Interference;BER; PER
RFID’s interference. Packet Error Rate (PER), the
average delay and the throughput are selected as the
I. INTRODUCTION performance metrics. The theoretical and simulation
result of PER, the average delay and the throughput are
Bluetooth chips are embedded into diverse
compared.
products such as notebook computers, cellular phones,
The rest parts of this article are organized as
digital cameras and headsets to facilitate the inter-
follows. In section II, the interference in PHY is
device data exchanging. Bluetooth uses frequency
analyzed and Bit Error Rate (BER) of Bluetooth under
hopping spread spectrum (FHSS) and hops on 79
the interference is obtained. Then, in section III, the
channels in 2.4 GHz ISM band. In recent years, the
MAC sublayer is taken into account and the collision
academia and industry paid much attention to RFID
time is figured out. Based on the BER and the collision
technology and it will be deployed in the place (such as
time, in section IV, the performance metrics (i.e., PER,
the campus, the shopping mall and the hospital) where
the average delay and the throughput) are formulated.
many people use Bluetooth-enabled devices. Since the
In final section, the simulation and theoretical results
transmitted power of Bluetooth is very limited (1 mW
are compared to justify the proposed mathematical
in general), RFID devices emitting on a relatively large
model.
power (up to 4000 mW EIRP) bring significant
interferences and interrupt the data exchange in
Bluetooth piconet. Therefore, the performance of II. PHY LAYER INTERFERENCE
Bluetooth under the interference of RFID is Path loss is defined as the difference of the signal
worthwhile to be evaluated to pave the way for strength in the unit of decibels between the transmitter
developing coexistence algorithms. and the receiver. Given the required parameters such as
The interference related to Bluetooth or RFID is the distance and the frequency, the path loss can be
extensively investigated in some previous works. In figured out easily by the path loss model. The
[1], PER of 802.11b under the interference of RFID is following 2.4 GHz indoor path loss model is used for
analyzed. The interference between 802.11b and Bluetooth device [3].
Bluetooth is widely researched and many anti-
interference methods are proposed in the literature such

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 218


DOI 10.1109/ICCET.2009.193
⎧40.2+20log10 (d), 0.5 ≤ d ≤ 8 m (1) Q(a, b) = Q1 (a,b)
Lp, Bluetooth = ⎨ ∞ (9)
⎩58.5+33log10(d/8), d > 8 m = ∫ x ⋅ exp ⎡⎣ −( x 2 + a 2 ) 2 ⎤⎦ ⋅ I 0(ax)dx
b
where d in the unit of meter denotes the distance ∞ β
a
between the transmitter and the receiver of Bluetooth. = exp(−(a 2 + b 2 ) / 2) × ∑ ( ) I β (ab) (b > a > 0 )
Path loss follows the free-space propagation (path loss β =0 b
exponent is 2) up to 8 meters and then attenuates more Besides, in above equations, a and b is defined as:
rapidly (path loss exponent is 3.3). The model is not
Eb Eb
(1 − 1 − ρ ), b = (1 + 1 − ρ )
2 2
effective below 0.5 meter due to near-field effects. a=
Similarly, the path loss of RFID can be obtained by its 2No 2No
own path loss model. According to [5], the path loss (10)
model of 2.45 GHz RFID is given by: where Eb/No is the ratio of energy per bit to power
Lp, RFID = −147.6 + 20log(d)+ 20log(f) − 10log(GTGR) (2) spectral density (PSD) of the noise (or the
where d meters is the distance between the RFID interference). And the correlation coefficient ρ in
interferer and the Bluetooth receiver, and f in the unit above equations is given as:
of Hertz is the operating frequency. GT and GR are sin(2πβ )
ρ= (11)
antenna gains of the RFID interferer and Bluetooth 2πβ
receiver, respectively. The transmitted power of where β is the modulation index, and IEEE 802.15.1
Bluetooth is denoted by Pt in the unit of dBm and the standard [2] specifies a minimum modulation index of
received power of Bluetooth is denoted by Pr dBm. It 0.28 and a maximum modulation index of 0.35.
is known that the received power is the difference of From Eq. (6) to (11), BER as the function of Eb/No is
the transmitted power and the path loss: obtained, but BER as the function of SIR is required
Pr = Pt − Lp, Bluetooth (3) for the interference analysis. GFSK modulation of
When the distance between the RFID device and the Bluetooth has a bandwidth time (BT) of 0.5; therefore,
victim receiver is given, the path loss of RFID signal Eb/No in previous equations can be converted to SIR
can be calculated by Eq. (2). Suppose the transmitted as the following formula.
power of RFID is Pti dBm, therefore the interference Eb Eb × B Eb × (2 / Tb) 2Pr
power Pi in Bluetooth receiver is: = = = = 2SIR = 2γ (12)
N0 N0× B Pi Pi
Pi = Pti − Lp, RFID (4) Using SIR to replace Eb/No in Eq. (10), obtained:
The signal-to-interference ratio (SIR) is the ratio of the
a = γ (1 − 1 − ρ ), b = γ (1 + 1 − ρ )
2 2
received power and the interference power. Since the
noise power is very weak relative to the interference
power, the noise can be neglected in this case. Hence, (13)
the signal to interference and noise ratio (SINR), which So now, according to the parameter a and b is Eq. (13)
is used to calculate BER in general, approximates to and ρ in Eq. (11), solving the Bessel and Marcum Q
the SIR and is given by: function, BER of Bluetooth under the interference of
RFID can be figured out, and it is the function of SIR
γ = SINR ≈ SIR = Pr − Pi (5)
as follows.
Bluetooth modulator uses Gaussian Frequency Shift Pb = f (γ ) (14)
Keying (GFSK) and the envelop detection, therefore
the BER is: where SIR can be obtained easily by Eq. (1) to (5).
BER of Bluetooth as the function of SIR is illustrated
Pb = Q(a,b) − 0.5 ⋅ I0(ab) ⋅ exp( −(a 2 + b2 ) 2 ) (6) in Fig. 1, in which the solid and dotted line stand for
where Iβ(x) is β order modified Bessel function of the BER with the minimum and maximum modulation
first kind and Q(a, b) is Marcum Q function. Both are index, respectively.
specified in the following formulas. The Bessel 0
Bluetooth BER vs.SIR
10
function is: Index=0.28

( x / 2) β + 2 k Index=0.35
I β ( x) = ∑ , x ≥0 (7) −1

k = 0 k !Γ( β + k + 1)
10

where the Gamma function is defined as follows.


BER

−2
∞ 10
Γ( p ) ∫0
t p −1e − t dt , p >0 (8)
The Marcum Q function is: 10
−3

−4
10
−2 0 2 4 6 8 10
SIR (dB)

219
Figure 1. Bluetooth’s BER versus SIR Since Bluetooth transmits packets in the slot, the
The BER obtained in Eq. (14) is the result in the traffic load of Bluetooth is exactly the probability of
AWGN channel. However, in the real world, packet occurrence in one slot. That is, if the traffic load
considering the effect of the multipath, the received of Bluetooth is λ , then the probability of packet
signal has Rayleigh distributed amplitude in the fading occurrence in one slot is exactly λ. Bluetooth and
channel. The received power of the Rayleigh fading RFID are asynchronous due to its different PHY and
follows the exponential distribution. MAC technologies. The packets of them have a time
1
p ( x ) = e − x / Pr (15) offset which is a random variable and is denoted by X
Pr in Fig. 2. It is a continuous variable and is uniformly
where Pr is the average received power of the signal, distributed between 0 and LR (the average inter-arrival
i.e., the received power based on path loss and time of two consecutive RFID transmissions).
shadowing alone, and the x is the instantaneous X ∼ U (0, LR ) (18)
received power. To simplify the analysis, the In the downlink, RFID reader sends out a modulated
interfering power of RFID is assumed to be constant; carrier to power up the tags as well as to carry the
therefore SIR is also exponentially distributed. As command message. It is noted that the RFID reader
illustrated by Eq. (14), the BER is the function of the still sends out an unmodulated carrier to power up the
SIR. Since the SIR is randomly changing, the BER is passive tag when the tag transmit the response packet
also a random variable. Although BER is drastically in the uplink. Hence, the RFID command packet in
changing, the average BER of Bluetooth can be forward link and the response packet in reverse link
determined. According to the theory of probability, the have an equivalent interference to the Bluetooth
mean of BER can be formulated as follows. packet.
+∞
Pb = ∫ Pb ( x / Pi ) p ( x)dx The collision time is defined as the time interval in
−∞
(16) Bluetooth packet which is overlapped by the RFID
− ( a +b ) x 2 2
1 +∞ 1 − packet and is the time duration of the interference.
= ∫ (Q(a,b) − I0(ab) ⋅ e 2 )e Pr dx According to the standard, the 2.45 GHz RFID operate
Pr −∞ 2
at the data rate of up to 40 Kbps, and only the header
of each RFID packet will occupy the time period
III. MAC SUBLAYER INTERFERENCE greater than one time slot of Bluetooth. Hence, the
RFID packet is definitely longer than the Bluetooth
A. The Time Domain Collision one. The collision time, TC, can be calculated as the
When Bluetooth piconet collocates with RFID following equations.
devices, the Bluetooth packet may overlap with the [1] TB ≤TR & TB ≤Tidle
RFID packets in time domain. As Fig. 2 illustrated, the
⎧TB , 0 ≤ X ≤ TR − TB
time domain is divided into 625-us-long slots by ⎪TR − X ,
Bluetooth system and each packet can occupies 1, 3 or ⎪ TR − TB < X < TR (19)
TC = ⎨
5 slots. To simplify the analysis, the one slot packet is ⎪0, TR ≤ X < LR − TB
used. The slot time is denoted by TS, but the Bluetooth ⎪⎩TB + X − LR, LR − TB ≤ X ≤ LR
packet only occupies TB of the slot time to transmit, in
general, the TB is 366 us long. Fig. 2 is the collision [2] TB ≤TR & TB >Tidle
model of RFID and Bluetooth packet in time domain. ⎧TB, 0 ≤ X ≤ TR − TB
In this model, the traffic load (denoted by λ) is taken ⎪TR − X , TR − TB < X ≤ LR − T B
⎪ (20)
into account. For RFID, the idle time (denoted by Tidle TC = ⎨
T B − Tidle, L R − TB < X ≤ TR
in Fig. 2) and the transmission time (denoted by TR in ⎪
Fig. 2) has the following relation. ⎪⎩TB + X − LR, TR < X ≤ LR
1
Tidle = ( − 1)Tbusy, λ ∈ [0,1] (17) B. The Frequency Domain Collision
λ
Bluetooth system occupies from 2.4 to 2.4835
GHz, but in order to comply with out-of-band
regulations in each country, a guard band is used at the
lower and the upper band edge. The operating
frequency is:
f = 2402+ k MHz, k = 0,...,78 (21)
Each RF channel is 1 MHz wide and 79 channels are
available. Bluetooth system adopting FHSS can hop on
the 79 channels uniformly; therefore, the probability of
each channel being occupied is Pf =1/ 79.
Figure 2. The time domain packet collision model RFID also adopts FHSS to avoid the inband

220
interference and can hop on 100 channels, each of into account both the time domain and the frequency
which has a bandwidth of 1 MHz. The operating domain is the product of the collision time and the
frequencies of the RFID are: probability of frequency collision. So the actual
fC = (2931 + m) × fCH , collision time is:
fCH = 0.8192 MHz, m = 0,1,...,99 T = TC × PC = TC /79 (26)
The actual collision time T is a random variable,
(22) which is the function of the time offset (i.e., the
where fCH is the frequency spacing, and m is the variable X). Since the time offset is uniformly
channel number ranged from 0 to 99. Since the distributed on 0 to LR as Eq. (18) illustrated. By
frequency spacing is less than the bandwidth, each deconditioning with the random variable, the average
channel of RFID is partially overlapped with its collision time without the effect of the time offset is
adjacent channels. given by the following integral.
1 LR
LR ∫ 0
T ′ = E[T ] = T ( X )dX (27)

The PER can be derived from the BER and the


average collision time. Suppose the BER with and
without the interference is denoted by Pb and Pb0,
respectively, and Tb is the bit duration of Bluetooth.
The packet error rate (PER) is:
Figure 3. The frequency domain collision model
Since the channels of RFID and Bluetooth are Pp = PER = 1 − (1 − Pb)T ′ / Tb (1 − Pb0)(TB −T ′) / Tb (28)
unaligned, the offset of two different channels is a
random variable that denoted by X in Fig. 3. To B. The Average Delay and the Throughput
simplify the analysis, we assume that the power of The master and the slave of Bluetooth use Time
Bluetooth and RFID is uniformly distributed in the Division Multiplexing (TDD) to realize the
occupied channel. The shadowing area in the figure is bidirectional link. At the same time, if multiple slaves
the area which the two channels are overlapped with. are present in the piconet, Time Division Multiple
And the symbol S denotes the ratio of the shadowing Access (TDMA) is adopted to enable the
area and the power of the whole signal. The S can be communications between one-to-multiple nodes. Since
easily obtained according to the offset X as the the Bluetooth is transmitting according the time slots,
following formula illustrated. if one data packet is detected to be error, this packet
⎧0, X <0 will be retransmitted when next transmitting turn of the
⎪ X, ∈ (0,1]
node. The retransmission time should be the multiple
⎪ X (23)
of the slot time.
S=⎨
⎪ 2 − X, X ∈ (1,2] τ = iTS, i = 1,2,.... (29)
⎪⎩0, X >2 For voice packet of the Bluetooth, Forward Error
The mean power of one signal is overlapped can be Correct (FEC) is used to combat the bit error in the
figured out as follows. packet. Even if the errors are uncorrected, the voice
1 2 packet cannot be retransmitted since the voice is delay-
S = ∫ XdX + ∫ (2 − X)dX = 1 (24) sensitive and can tolerate some bit errors. The
0 1

Hence, the probability of frequency collision of retransmissions are required when the data packet is
Bluetooth and RFID is the product of the mean detected to contain some errors in the receiver.
overlapping area and the probability of the Bluetooth Assumed that the number of retransmission is
channel occupied. It can be calculated by: unlimited, therefore the retransmission is following the
PC = Pf × S = 1/79 (25) Geometric distribution. The probability of one
successful packet transmission after (k-1)
retransmission is:
IV. PERFORMANCE OF BLUETOOTH P (k ) = (1 − Pp) Pp k −1 (30)
UNDER THE INTERFERENCE
Since the required times of packet transmission is
A. Packet Error Rate Geometric distributed, the average transmission times
for a successful packet transmission is:
The collision time TC is the time interval of one ∞
1
Bluetooth packet overlapped with the interfering RFID m = ∑ (1 − Pp ) Pp n −1 × n = , (0 < Pp < 1)
packet, which is analyzed in section III. However, if n =1 1 − Pp
the packet of RFID and Bluetooth are transmitted by (31)
different frequencies, the inband interference is Under the assumption that one master and only one
negligible. Therefore, the actual collision time taken slave are present at the network, the master and the

221
slave use TDD to realize the duplex. The delayed slot VI. CONCLUSION
number i in Eq. (29) is the double of the average In this paper, a mathematical model is proposed to
transmission times m in above formula. quantify the performance degradation of Bluetooth
2 system under the interference of 2.45 GHz RFID
i = 2m = (32)
1 − Pp system. The PER, the average delay and the throughput
Hence, the average delay time of Bluetooth data packet of Bluetooth are selected as the performance metrics.
is: The factors that can impact the interference include
2TS PHY (the transmitted power, the distance, the
τ= (33) modulation scheme and the channel model) and MAC
1 − Pp (the frequency hopping pattern, the packet format) are
Another performance metric, the throughput, can be taken into account. The result of this paper can provide
calculated easily from the average delay as follows. In the criteria for coexisting between RFID and
below formula, the symbol Spayload is the payload length Bluetooth. The anti-interference algorithms can be
of each packet. designed based on the analysis of this paper.
λ ⋅ Spayload
ρ= (34)
τ VII. REFERENCES
[1] IEEE Std. 802.15.1, “Part 15.1: Wireless Medium Access
V. SIMULATION COMPARED WITH THE Control (MAC) and Physical Layer (PHY) Specifications for
THEORETICAL RESULT Wireless Personal Area Networks (WPANs),” 2005.
[2] IEEE Std. 802.15.2, “Part 15.2: Coexistence of Wireless
Comparison of theoretical result and simulation Personal Area Networks with Other Wireless Devices
1
Theoretical
Operating in Unlicensed Frequency Bands,” August 2003.
Simulation
[3] ISO/IEC 18000-4, “Radio frequency identification for item
0.8 management, Part 4: Parameters for air interface
communications at 2.45 GHz,” Sept. 2006.
PER of Bluetooth

0.6 [4] Klaus Finkenzeller, RFID Handbook, 2nd ed., John Wiley &
Sons, 2003.
[5] N. Glomie, R.E. Van Dyck, A. Soltanian, A. Tonnerre and O.
0.4
Rebala, “Interference Evaluation of Bluetooth and IEEE
802.11b Systems,” Wireless Networks, vol. 9, pp 201-210,
0.2 2003.
[6] Nada Golmie and Frederic Mouveaux, “Interference in the 2.4
0
GHz ISM Band: Impact on the Bluetooth Access Control
1 1.5 2 2.5 3 3.5 4 4.5 5 Performance,” in Proceedings of IEEE ICC’01, Helsinki,
Interference distance (meter) Finland, June 2001.
Figure 4. Simulation results are compared with the theoretical [7] N. Golmie, R.E. Van Dyck, and A. Soltanian, “Interference of
results. Bluetooth and IEEE 802.11: Simulation modeling and
The simulation is done and the result is illustrated performance evaluation,” in Proceedings of the Fourth ACM
International Workshop on Modeling, Analysis, and
in figure 4. In the simulation, the distance between the
Simulation of Wireless and Mobile Systems, MSWIM’01,
RFID interferer and the Bluetooth receiver is changed Rome, Italy, July 2001.
from 1 meter to 5 meters. The PER is inversely [8] Soo Young Shin and Hong Seong Park, “Packet Error Rate
proportional to the interference distance. The Analysis of Zigbee under WLAN and Bluetooth Interference,”
theoretical result of the mathematical model is also IEEE Transactions on Wireless Communications, vol. 6, pp.
obtained and is shown in Fig. 4 too. As Fig. 4 2825-2830, August 2007.
[9] Carlos de Morais Cordeiro and Dharma P. Agrawal,
illustrated, the simulation result is very close to the “Interference Modeling and Performance of Bluetooth MAC
theoretical result. Therefore, the proposed Protocol,” IEEE Transactions on Wireless Communications,
mathematical model is verified. vol. 2, pp. 1240-1246, November 2003.

222
2009 International Conference on Computer Engineering and Technology

Optimization Strategy for SSVEP-Based BCI in Spelling Program Application

Indar Sugiarto Brendan Allison, Axel Gräser


Department of Electrical Engineering Institute for Automation
Petra Christian University University of Bremen
Surabaya, Indonesia Bremen, Germany
e-mail: indi@petra.ac.id e-mail: allison@iat.uni-bremen.de, ag@iat.uni-
bremen.de

Abstract— This paper describes an optimization strategy for elicited using flickering light [3]. In the spelling program
steady state visual evoked potential (SSVEP)-based brain- application, the DSP algorithm translates those frequency
computer interface (BCI), especially in a spelling program responses into commands for controlling cursor movement
application. In this application, there are at least three and character/letter selection. The problem arises when using
components for implementing a complete BCI application: general purpose computers, e.g. laptops, for implementing a
stimulator, signal processing, and application (spelling complete BCI application including stimulator, signal
program). Ideally, those three components should run on processing, and application (spelling program). Ideally, those
different processing units in order to obtain optimum three components should run on different processing units in
performance. But integrating those three components in one
order to obtain optimum performance. But integrating those
computer system also gives advantages: make it easier for the
three components in one computer system also gives
subject to concentrate and simplifies the system configuration.
There are two main parts that need to be optimized: the
advantages. At least, providing the stimulator, i.e. flickering
flickering animation and the spelling system. When optimizing light, and the application (spelling program) in the same
the flickering animation, we will focus on the display driver display/screen makes it easier for the subject to concentrate
technology and programming aspects. The optimization of and it also simplify the system configuration. These
spelling system will be focused on the layout and advantages are important, because end users need a BCI that
representation of the letter matrix. We tested our program on does not require elaborate hardware (such as customized
several computers for the following parameters: frequency LED boards or separate computing systems) or expert help
range, frequency resolution, and frequency stability. It can be (such as to find working SSVEP frequencies or adapt the
concluded that using a computer monitor as the stimulator, the system to each user).
maximum synthesizable stimulator frequency is always half of This paper will be presented in the following outline. At
its minimum refresh-rate, no matter which software the beginning, software architecture will be presented and
technology is applied (DirectX or OpenGL). The maximum followed by its optimization strategies. Then, the software
synthesizable frequency of up to 30 Hz with frequency analysis result will be presented and discussed.
resolution 0.11Hz is achieved. We have tested our system on
106 subjects during CeBIT 2008 in Hannover, Germany. Mean II. METHOD
accuracy for the spelling system is 92.5%. Therefore, the
optimization strategy described here led to a stable and A. Software Architecture
reliable system that performed effectively across most subjects
without requiring extensive expert help or expensive hardware.
There are three components required for running an
SSVEP-based BCI system in a spelling program application
Brain-Computer Interface, EEG, SSVEP, spelling program as depicted below:

I. INTRODUCTION
Brain-computer interface (BCI) systems are designed to
enable humans to send commands to a computer or machine
without using the normal output pathways of the brain [1],
[2]. Signals from the brain, usually nonelectrical signals from
the surface of the scalp (EEG activity), are classified and
then translated into commands using certain digital signal
processing (DSP) algorithms. To enable a signal processing
system recognizing specific features of the brain signals in
the cue-based BCI system, e.g. steady state visual evoked Figure 1. Three components required for running SSVEP-based BCI
potential (SSVEP)-based BCI, a certain stimulator is system in a spelling program application: a stimulator, a signal processing
required. In an SSVEP-based BCI, frequencies of the evoked unit, and the spelling program. In addition, the spelling program also
potentials match the frequencies of stimuli, which are usually provides mental feedback for the BCI user.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 223


DOI 10.1109/ICCET.2009.189
Of course, any BCI also requires a fourth component, word/phrase. For this purpose, we create five
namely sensors to acquire the brain signal [1], but these are flickering boxes on the monitor screen with label:
not modified in this work and are not mentioned further here. UP, DOWN, LEFT, RIGHT, and SELECT.
In this work, we used spatial filter called Minimum Energy We can arrange the letters in many forms and orders. One
Combination described in [4] as the core for the signal simple way is the square matrix with ascending order as
processing unit, and in this paper we focus on optimization shown below:
for stimulator and the spelling program. To integrate those
three components in a single computer, we created two
programs working together and connected via TCP/IP
socket. The first program, which is called the Display
Program, is responsible for displaying flickering animation
as the stimulator and also displaying the letter matrix for the
spelling program as well as the visual feedback for the user.
The second program, which is called the Signal Processing
Program, is responsible for signal acquisition, feature
extraction and classification, and command generation.
Commands generated by the second program will be sent to
the first program through a network connection. The
following diagram shows this architecture. Both programs
are written in C++. Figure 3. One simple way to organize letters is in a square matrix. The
cursor position is indicated by red-shaded cell.

The above configuration can be optimized in the


following way.
• Since a word formation is achieved first by moving
the cursor around, it is better if the home position of
the cursor is located at the center of the matrix. In
addition, since we only utilize four possible
movement (up, down, left, and right), it is better if
the distance of a letter from the center is kept as
near as possible.
• The fact that many words composed mainly by
vowels, it is reasonable to put vowels’ letter such as
A, I, U, E, O around the base of the cursor position.
Detail analysis using letter probability of words
done by Thorsten Lüth [5] shows that letter E is the
most commonly used letter. Based on such
probability analysis, we can construct a letter matrix
Figure 2. Three components required for running SSVEP-based BCI
system in a spelling program application: a stimulator, a signal processing
in an irregular but efficient way.
unit, and the spelling program. In addition, the spelling program also
provides mental feedback for the BCI user. The following figure shows the optimization result from
the aforementioned approaches. Note that this result can be
expanded with additional characters if required.
B. Optimization Strategies
In the Display Program, there are two main parts that
need to be optimized: the flickering animation and the
spelling system. The spelling system works as follows:
• We provide collection of letters arranged in a
matrix and a moveable cursor within this matrix.
This cursor can be moved up, down, left, or right
according to the command interpreted by the Signal
Processing Program from user’s EEG signals.
• When the user wants to select a letter to form a
word, he/she must concentrate his/her gaze on the
corresponding stimulus. And if the Signal Figure 4. Characters are arranged in a rhombus layout in order to achieve
Processing Program is able to detect this intention, higher efficiency for cursor movement.
the letter at the cursor position will be selected and
displayed on the appropriate position. In this way, The next part that needs to be optimized is the stimulator
the collection of selected letters will form a itself. From our previous work [6], it is revealed that

224
animations with plain texture will elicit better SSVEP III. RESULT AND DISCUSSION
response than animations with checkerboard texture. That is We tested our program on several computers for the
why we use black-and-white animation with plain texture for following parameters: frequency range, frequency resolution,
the stimulator. and frequency stability. We also tested our program using
In order to achieve robust and high resolution flickering subjects during CeBIT 2008 in Hannover and collected
frequencies, we developed our program with the following useful information such as spelling speed, accuracy, ITR,
approaches: and many important neuro-psychological parameters.
• Each of five flickering boxes has its own thread and The following graph shows the comparison between
corresponding timer. Since we run the program in DirectX and OpenGL approach.
Windows platform, we use high resolution timer
called Multimedia Timer which has resolution
down to 1ms. The timer intervals are calculated as
follows:
Interval = 1/(2*fLed) (1)
where fLed is the flickering frequency of the
animation
• All of those threads are synchronized in one process
and we set the process with high priority above all
other Windows processes. In addition, we add
CPU’s mask-affinity to this process in order to
utilize the first CPU’s core and give the second core
to the Signal Processing Program.
• Two graphics display technologies are utilized and
compared: DirectX 9.0 and OpenGL 2.0. Using Figure 6. Comparison between OpenGL and DirectX method for
displaying flickering animations on the computer screen.
these technologies, our program performance is
improved significantly because those technologies It can be concluded that using a computer monitor as the
will maximize the utilization of the graphics card. stimulator, the maximum synthesizable stimulator frequency
• When developing program with OpenGL approach, is always half of its minimum refresh-rate (for CRT monitor)
we used QGraphics Framework from QT [7]. We or response-time (for LCD-TFT monitor), no matter which
then optimized QGraphicsView class with the software technology is applied (DirectX or OpenGL). The
following parameters: maximum synthesizable frequency of up to 30 Hz is
o ScrollBarPolicy : ScrollBarAlwaysOff adequate since the optimum flickering frequency for low-
o Interactive : false (no interaction with frequency SSVEP-based BCI is around 15 Hz [8], [9].
other GUI events) To measure frequency resolution, first we have to
o CacheMode : CacheBackground measure timer accuracy during run time. In order to produce
o OptimizationFlags : DontClipPainter and flickering animation at 17Hz, according to equation (1), we
DontAdjustForAntialiasing have to set the timer interval of 1/(2*17) = 29.4ms = 29ms
(integer value). Using Windows Multimedia Timer and
Here is the screenshot of our SSVEP-based BCI for executing the program as a normal priority process, we
spelling application. found that for timer interval of 29ms, the standard deviation
value is just 0.46ms. It means one may expect that the
flickering frequency produced by using this Multimedia
Timer may be shifted about 0.55Hz above or below the
expected frequency. This value is calculated in the following
way:
Frequency shift =
(2)

We then increased the process’ priority and it yielded


standard deviation interval of about 0.1ms, which means that
we got the increasing frequency resolution from 0.55Hz to
0.11Hz.
To measure flickering stability against variation of
animation size and number of animation objects, we
Figure 5. Integrated SSVEP-based BCI for spelling application. conducted experiments with various CPU rating and by
varying the animation size and number of animation objects

225
displayed simultaneously on the screen. The following graph and the resulting performance of the system has been
shows the result from this experiment. evaluated. The optimization strategy in this paper is focused
on the display performance of the stimulator and the speller
program. We summarize the optimization strategy as
follows: using advance graphics driver technology (DirectX
and OpenGL), optimizing the multi-thread feature of a dual-
core processor; using high resolution timer (Windows
Multimedia Timer); and selection of a computer with high
CPU rating. However, external factors such as light
reflection and interference will also affect the overall
performance of the spelling system using SSVEP-Based
BCI. Future work should address these two concerns, and try
to further improve SSVEP BCI performance while
minimizing the needs for expert help, external LEDs, or
expensive hardware.

Figure 7. Comparison of optimum animation (LED) size for three REFERENCES


computers in four different procedures: 1)Single non-textured object,
[1] J.R. Wolpaw, N. Birbaumer, D.J. McFarland, G. Pfurtscheller, and
2)Single checkerboard-textured object, 3)Three non-textured objects, 4)Six
T.M. Vaughan, "Brain-Computer Interface for Communication and
checkerboard-textured objects.
Control," Clinical Neurophysiology 113, 2002.
[2] Brendan Allison, Dennis McFarland, Gerwin Schalk, Shi Dong
It can be seen that the highest performance is achieved by Zheng, M.M. Jackson, and J.R. Wolpaw, "Towards an Independent
HP Compaq nx9420 while the lowest performance belongs Brain-Computer Interface Using Steady State Visual Evoked
to Acer Aspire 5510. According to Windows Experience Potentials," Clinical Neurophysiology 119, 2008: 399-408.
Index of Windows Vista, HP Compaq nx9420 has the value [3] J. Ding, G. Sperling and R. Srinivasan, “Attentional Modulation of
of 5.1, Acer Extensa 5620 has the value of 4.6, and Acer SSVEP Power Depends on The Network Tagged by the Flicker
Aspire 5510 has the value of 3.6. It seems that the software Frequency,“ Cerebral Cortext - Oxford University Press., July 2006,
Vol 16:1016-1029.
performance, as indicated by the size of animation object as
well as the number of animation object displayable [4] Ola Friman, Ivan Volosyak, and Axel Gräser, "Multiple Channel
Detection of Steady-State Visual Evoked Potentials for Brain-
simultaneously on the screen without disturbance, is greatly Computer Interfaces," IEEE Transactions on Biomedical Engineering,
influenced by the computer performance. 2007, Vol. 54, No. 4, 742-751.
We have tested our system on 106 subjects during CeBIT [5] Thorsten Lüth, “Tools zur Verbesserung der Leistung von Brain-
2008 in Hannover. During the experiment, the subject was Computer Interfaces,” Diplomarbeit, Universität Bremen, 2006.
asked to spell five words: ‘BCI’, ‘Chug’, ‘Siren’, ‘Brain [6] B. Allison, I. Sugiarto, B. Graimann, A. Gräser, “Display
Computer Interface’, and one free spelling. To average Optimization in SSVEP BCIs,” Computer-Human Interaction 2008,
subjects needed two minutes to spell ‘BCI’ (122.06 sec.), April 2008, Florence, Italy.
‘Chug’ (139.3 sec.) and ‘Siren’ (111.13 sec.) and eight [7] Trolltech, Inc., “Creating Cross-Platform Visualization UIs with Qt
and OpenGL,” Trolltech Whitepaper.
minutes to spell ‘Brain Computer Interface’ (475.63 sec.).
[8] Gary Garcia, “High frequency SSVEPs for BCI applications,”
Mean accuracy for all five words was 92.72%; mean ITR Computer-Human Interaction 2008, April 2008, Florence, Italy.
13,852 bits/minute.
[9] Y. Wang, R. Wang, X. Gao, B. Hong, and S. Gao, “A Practical VEP-
Based Brain-Computer Interface,” IEEE Transactions on Neural
IV. CONCLUSION Systems and Rehabilitation Engineering, June 2006, Vol. 14, No. 2.G.
The optimization strategy for the Bremen SSVEP-Based
BCI in a spelling program application has been presented

226
International Conference
on Computer Engineering and Technology

Session 4
2009 International Conference on Computer Engineering and Technology

A Novel Method for the Web page Segmentation And Identification


Jing Wang1,Zhijing Liu1
1School of Computer Science and Technology, Xidian University, Xi’an 710071, China
E-MAIL: wangjing@mail.xidian.edu.cn, liuprofessor@163.com

Abstract—A method of page segmentation and recognition for web pages segmentation using HMM, such as accurate
based on generalized hidden Markov model is present in this modeling and high recognition rate. It has been a new
paper, according to the page content as well as the structural research direction in recent years. Because of its easy-
configuration. It can effective carry on the division to the established, good adaptability and high accuracy
homepage, thus distinguishes each homepage block part
extraction, it has become the concern of the researchers.
with GHMM. The experimental result indicated that,
compares with the original page segmentation algorithm, II. THE ANALYSIS OF WEB PAGE
this algorithm operation efficiency enhanced by 14.3%, and
the effect of segmentation has significantly improved. Considering the traditional HMMs limitation that the
approaches only consider the semantic term as observed
Keywords: Web Page Segmentation; A Generalized Hidden emission feature, we use multiple emission features (term,
Markov Model (GHMM); Web Page Identifacation layout, and formatting) instead of single emission feature
(term). Web information contains other emission features
I. INTRODUCTION such as format, layout, etc, which could be observed to
help improve state transition estimation for HMM. In this
Along with the rapid and continuous development of way ,we can consider the Web Page Segmentation from
the Internet technology, Web already became in this the content and structure of web page . After the Web
world the biggest information origin. But how to extract page segmentation, it would be easier to identify and
the needed information is a necessitous problem. Page automatic extraction for machines
segmentation and recognition is an important part in the
web page processing, and we accurately deal with web A. The structure of Web page
information only when page is segmented nicety. It is the characteristics of web page that the logical
Therefore, the algorithm of page segmentation and content interdependence block can be organized together.
recognition is introduced in this paper. We may think the page is composed by the different
According to the homepage manifestation and function, content block. The text demonstrated which in the
the web pages can be divided into three categories. One different block also can demonstrate because of its
kind is the subject homepage, and it is composed by the content according to certain form. For example, if the
massive non-link text and the few hyperlinks text, relevant text is the hyperlink indicated that it will be
expresses a central subject together; One is label page, different from the color of the text in general; headline
also may be called the leader page, which is mainly fonts will be displayed over the text great. There are other
composed of text hyperlinks. The labels of page can be layouts such as font, size, italics, background color, and
classified into navigation label (navigation bar) and theme background images. Because there is more embellishment
labels, whose role is to generalize theme of its linked web for letter than text in web page, it is more suitable for web
pages. Also some kind of homepages are composed by the page's features taking these factors into consideration.
few texts and pictures, is called the picture homepage. A
B. The text attribute of Web page
subject pages can be divided into different areas,
including general navigation area, the theme of the text For the text processing by traditional HMM, the output
area, the theme labels area. The so-called page of each observation is released by the term shift. But
segmentation is to divide a subject page into each region. regarding take homepage content block as condition
The most popular methods of web page segmentation GHMM, the transition probability between the blocks is
are web DOM tree marking[1], page location coordinates
decided by the released observation characteristic. The
of entities[2], and VIPS page segmentation algorithm[3].
These methods are mainly considering the layout and text in each block is expressed with a vector form.
structure of web page, but not take the features of web Because ,the frequency of each word present in different
content in different areas into account. Therefore, these content documents has certain rule that the higher
methods are too reliant on the structure of web page. So a frequency is, the more importance it is. And different
method based on generalized hidden Markov model is character words can divide different content text. So we
presented in this paper, and it is considering the structure extract character words constitutes character vectors with
and the content of web pages. There are many advantages VSM model. Vector Space Model (VSM)[4] is considered

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 229


DOI 10.1109/ICCET.2009.149
one of most popular model for representing the feature of a) N is the number of states in model. These N states
text contents. In this model, t1 , t2 ,… , tn refer to a system of are S = {S1 , S 2 , , S N } , and suppose the state at time t
n-dimensional coordinates. w1 ( d ), w2 ( d ),… , wn ( d ) are the is qt , so we can know q t ∈ S .
relevant values of coordinates. A document d is expressed b) M is the number of probability observable
as a vector composed of a serial of cross words, as follow: symbols. V = {V1 , V2 , , VM } , and the observable
V (d ) = (t1 , w1 (d );…… ; ti , wi ( d );…… ; tn , wn ( d ); )
symbol at time t is ot , where ot ∈ V .
where ti denotes the i-th keyword and wi ( d ) is the weight
c) π : the initial state probability distribution, and
of ti in document d .
π = {π 1 , π 2 , , π N } , where π i = P (q1 = S i ), 1 ≤ i ≤ N .
III. GHMM d) A: the hidden state transition probability
Web page generally can be divided into navigation, distribution. A = ( aij ) N × N , where
Theme text, User Interaction, Copyright, the Websites
Label regions and so on. Although there respective aij = P (qt +1 = S j | qt = Si ),1 ≤ i, j ≤ N (1)
position is may be different according to each website e) B: the emission probability distribution.
design style, it does not affect the content of the division.
So we can establish a hidden Markov model of five states.
{
B = B ,B ,
1 2
,B
Z
} , B = (b (k ))
j s N ×M
.
In this model, five states itself are not directly visible, but b j (k s ) = P (ot , s = Vk | qt = S j ) 1 ≤ j ≤ N ,1 ≤ k ≤ M (2)
the each observation vector belongs to a certain state. In where N is the number of states in the model, Z is the
other words, all the observation vectors are divided into number of attribute sets of observation symbols, MS is the
these five states, which reflect the changes in HMM, thus
recording the individual difference between homepage number of distinct observation symbols of the attribute s,
different regions. So the HMM is introduced. So we can 1 • s • Z, and T is the number of symbols observed. A is N
establish a Hidden Markov Models of five states for the × N matrix of the state transition. Transition
HMM,as the following figure1 shown. probability aij , the probability of being in state j at time
t+1 given that we were in state i at time t. Emission
probability b j ( k s ) , the probability of observing the
symbol v s k of the attribute s given that we are in state j.
The GHMM defined as = (A, B, ) find out the state
transition sequence I = i1 , i2 , , iT which maximizes P
(O, I | ).
P (O, I | λ ) = P (O | I , λ ) P( I | λ )
(3)
= π i1 bi1 (o1 )π i2 bi2 (o2 ) π iT −1 biT −1 (oT −1 )
Figure 1. The state transition of GHMM
In GHMM an observation symbol k is extended from
its mere term attribute to a set of attributes as
In this model, five state itself is not directly visible, but k1 , k2 , , k z . We consider the overall feature as a linear
the each observation vector belong to a certain state. combination of these attributes, that is
Namely,all the observation vector is divided into five z

states, which reflects the changes in HMM. HMM do use b j (k ) = ∑ α s ∗ b j (ks ) , where α s is the weight factor for
s =1
the method to record the differences of web page in z
different area. the s-th attribute, ∑α s = 1 , 0 ≤ α s ≤ 1 ,1 ≤ s ≤ z .
A common goal of learning problems that use HMM is s =1
to figure out the state sequence that has the highest Equation (3) now becomes
probability of having produced an observation sequence, P(O, I | λ) =
which can be efficiently solved by Viterbi algorithm [5]. (4)
⎡ z
⎤ ⎡ z
⎡z ⎤ ⎤
For GHMM based learning problems, the goal is to find πi ⎢∑αs ∗bis (o1,s )⎥ ai i ⎢∑αs ∗bis (o2,s )⎥ ai
⎢∑ αs ∗ bi
s
(oT , s ) ⎥
T −1iT
⎣ s=1 ⎦ ⎣ s=1 ⎦ ⎣ s=1 ⎦
1 1 12 2 T
the most probable state sequence using the following
extended Viterbi algorithm. And the related definition as For GHMM based learning problems, the goal is to find
follow: the most probable state sequence using the following
Formally, a GHMM consists of the following five extended Viterbi algorithm. Here we denote an
parts [6]: observation symbol k with attributes k1 , k2 , and k3 ,
which correspond to format, layout attribute and the text

230
feature vector of VSM respectively. We consider the Area of Web page Method(1) Method(2) Method(3)
emission probability as a linear combination of these Navigation 69.4% 75.4% 82.4%
Theme Text Theme 81.9% 85.3% 89.3%
attributes, that is, Labels 61.8% 70.2% 81.7%
b j ( k ) = α1 ∗ b j ( k1 ) + α 2 ∗ b j (k2 ) + α 3 ∗ b j ( k3 ) (5) User Interaction 81.2 87.6% 92.5%
Copy Right Website 90.3 93.2% 96.6%
where α1 , α 2 , and α 3 are the weights for term attribute, Label 66.5 70.7% 76.3%
format attribute, and layout attribute respectively, and
α1 + α 2 + α 3 = 1 , 0 ≤ α i ≤ 1 . The results indicate that the accuracy of improved
method is improved by about 20 percent in navigation
IV. EXPERIMENTAL RESULT AND ANALYSIS area and Theme Label area. Because these two areas have
significant features such as the text of related topics link
Based on the above discussion, in order to verify this are displayed in the form of hyperlinks.
page segmentation and the identification method
presented in this paper, we randomly selected 200 online V. CONCLUSION
pages, of which the 150 are used as the training set, while
According to the characteristics of web pages, a new
the remaining 50 are used as the test set. page segmentation method based on improved GHMM is
Here, we take the recall and accuracy ratio as
presented in the paper. The results also show that the new
evaluation standards. When we compare segmentation
method on the page segmentation and recognition
results of the different class of web page, we use the F
accuracy is improved markedly. In the future, we will
measure which combines recall (R) and precision (P), and improve the effective learning of GHMM, so that the
the recall, precision and F measure are defined as:
model can be fully automated without lots of manual
numbers of correct Web segmentation
R= intervention.
numbers of all Web segmentation
numbers of correct Web segmentation ACKNOWLEDGEMENTS
P=
numbers of possible Web segmentation This research project was promoted by the National
2× R × P Science & Technology Pillar Program No.
F= 2007BAH08B02.
R+P
The experiment shows the compared result of the REFERENCES
accuracy of three extraction methods. (1) DOM tagging [1] Chakrabarti S. Integrating the document object model with
tree method; (2) VIPS page segmentation method; (3) the hyperlinks for enhanced topic distillation and information
method based on GHMM. Table 1 has given the extraction. Proc Tenth International World-Wide Web
comparison results of these three methods in average Conference, p 211–220, 2004.
[2] Salton G, Buckey C. Term-weighting approaches in automatic
accuracy. text retrieval. In: Readings in Information Retrieval. Morgan
Kaufmann; 2005. p 323–328.
TABLE 1.THE THERE METHODS IN AVERAGE PRECISION [3] Osawa Y, Benson NE, Yachida M. KeyGraph: Automatic
Method P R F indexing by co-occurrence graph based on building construction
Method(1) 73.2% 76.8% 74.4% metaphor. Trans IEICE 2003;J82-D-I:391–400.
Method(2) 78.8% 79.3% 79.1% [4] Weimin Xue, Hong Bao, Weitong Huang et al, “Web Page
Method(3) Classification Based on VSM”, Proceedings of the 6th World
85.2% 82.6% 83.8%
Congress on Intelligent, Control and Automation, pp.6111-6114,
June 21-23, 2006.
[5] Du Shi-ping. The Viterbi algorithm of mixture of HMM2 [J].
From table 1, we can see that the method based on Journal of Yunnan University, 2006, 28(2):98-102.
GHMM has the highest recognition accuracy. The novel [6] Jinlin Chen, Ping Zhong, Terry Cook. Detecting Web Content
method takes the layout and the content of pages into Function Using Generalized Hidden Markov Model. IEEE
account, so it has the higher accuracy rate than other Proceedings of the 5th International Conference on Machine
Learning and Applications. 2006.
methods. The results are shown in table 2.
TABLE2. THE PRECISION OF THERE MENTHOD IN
DIFFERENT AREAS OF WEB PAGE

231
2009 International Conference on Computer Engineering and Technology

Disturbance Observer-based Variable Structure Control on the


Working Attitude Balance Mechanism of Underwater Robot

LI Ming (1) LIU Heping(2)


School of Electronic Information Engineering, Henan University of Science & Technology (1)
Department of Precision Machinery, School of Mechatronics Engineering and
AutomationShanghai University ()
lim@mail.haust.edu.cn

Abstract finished by underwater robots to substitute aquanauts


for human being. Intelligent underwater robot with
When an underwater robot is to work under the ability of perceiving, thinking and decision-making
water, the manipulator has to reach out. This can and with a strong multi-function will be developed
change the center of the gravity and cause the robot rapidly.
pitching. It’s difficult to make a maneuver for a pitched Robot is a complicated dynamic system with
robot. An automechanism was developed to balance serious nonlinear property. For an underwater robot
the pose of the robot. A sliding mode variable structure with open-frame structure, a strong coupling will take
controller was designed to control the balance device, place among the movements in each degree of freedom
in which a disturbance observer was used to observe and a strong nonlinear movement exists always. It is
the disturbances. This reduced the switching-gain of unpractical to set up an accurate dynamic model. A
the control system greatly and weakened the chattering number of tests are necessary to estimate the numerous
more of course. A practical result was achieved for the hydrodynamic coefficients. And the properties are
control of pitch change of the robot caused by the different between static water and flowing water. The
manipulators and detecting pan/tilt and indicated the control of position and attitude of underwater robot is
practicability of the balance device including its an arduous task.
control approach. As the device is a single-axis system, According to reference [1], the fixed coordinate
a double-axes system is needed for the balance of system EӶӯӮ and motion coordinate system Oxyz
pitching and rolling. are setup, and both origins are on the center of gravity
abstract is to be in fully-justified italicized text, at of ROV, as shown in Fig. 1. When not working, the
the top of the left-hand column as it is here, below the manipulator equipped by the robot furled usually
author information. Use the word “Abstract” as the beneath the robot shown in Fig. 2. At this time, the
title, in 12-point Times, boldface type, centered robot is on the balance position with tiny buoyancy.
relative to the column, initially capitalized. The The center of gravity coincides with the center of
abstract is to be in 10-point, single-spaced type, and buoyancy in x-y plane. A distance B0 named
up to 150 words in length. Leave two blank lines after metacentric height is designed in z axis to produce an
the abstract, then begin the main text. uprighting moment.

1. Introduction When the robot moving,


x G0 =x F0
Nowadays, the application of the underwater robot yG0 =y F0
becomes more and more popular. The working mode
ranges from cleaning, kelp reaping, drilling, cutting, z F0  z G0 =B0
sampling, gripping in civil fields to mining and mine
sweeping, anti-terrorism and explosive-proof in
military fields. With the developing of our society and
the progressing of science, more missions would be

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 232


DOI 10.1109/ICCET.2009.202
cosine law basically, the viscous resistance and
E
additional mass make a influence on the movement. In
Ӷ addition, the operating of the pan/tilt with sonar, lights
and camera and the dragging of the neutrally buoyant
ӯ O tether can impose inestimably on the attitude of the
robot. So, it’s direct and rapid to control the attitude of
the robot, in which all of the disturbances are
Ӯ y considering.
x
z
Figure 1 Fixed and motion coordinate systems

Figure 3 Reaching out of the manipulator and


the operating of the detecting pan/tilt

Figure 2 Underwater robot with two


manipulators and detecting pan/tilt

The robot is driven by propellers and moves to


appointed position. When needed, the manipulators
reach out from the bottom of the robot to carry out
various works, as shown in Fig. 3. The barycenter of
the manipulator arms varies from w0(xm0,ym0) in
original state to w(xm,ym) in working state. This makes
the whole barycenter of the robot transfer from Figure 4 Balance mechanism of the attitude
G0(xG0,yG0,zG0) to G (xG,yG,zG).
The underwater robot test platform described in this 2. Modelling
paper has two manipulators symmetrical to x axis in
structure. During the process of reaching out from the The mass of the balance body of the balance
bottom of the robot, the manipulator has only a change mechanism of the attitude is m2, pulled by a step motor
of the barycenter in x axis. The move of the barycenter along the guiding rails. When the barycenter of the
of the robot certainly causes a pitching on the robot. robot system is at the balance, the position of the
When adjusting the position of the robot for the barycenter of the balance body is assumed as the origin.
convenience of manipulator’s work, it is difficult to The change of the position X of the balance body
operate a pitching robot accurately under the water. To causes a shift of the center of gravity of the robot and
solve the problem, a balance mechanism was the pitch angle T of the robot is changed accordingly.
developed (shown in Fig. 4) to balance and Assumed that when pitching and corrected, the robot
compensate for the move of the gravity center of the turns only around the y axis and other movements
robot based on the pitching angle and angular velocity don’t exist. The moment of inertia of the robot is Jy.
measuring by the attitude transducer. Why don’t adjust The turning equation of the robot is:
J y
T=  MT  m 2 X+f1
the center of gravity of the robot according to the
change of the barycenter of the manipulator arms?
Although the movement of the manipulator keeps to a

233
where M is the hydrodynamic coefficient when The sliding line is chosen as:
turning around y axis and f1 is the disturbances s=ce1  e2 (5)
including the change of the moment of inertia , the The analysis of stability is shown as follow:
viscous resistance and additional mass caused by the
move of the manipulators, balance object, detecting Let f =f  fˆ , e 2 =e 2  eˆ 2 , and
pan/tilt. The disturbance produced by the dragging of 1 2 1 2 1 2
the neutrally buoyant tether is also included. V1 s Δ V2 = f  e 2
Let a M / J y , u m 2 X / J y and f f1 / J y
2 2K1 2
Lyapunov function is selected as:
The equation can be re-written as:
 1 2 1 2 1 2
T=  aT  u+f (1) V=V1  V2 s  f  e 2 (6)
2 2K1 2
3. Disturbance Observer-based Variable From equation (5) and (2), It’s attainable that:
structure Control  1  e 2
s=ce ce 2  ae2  u  f
Putting (4) into it, then:
The desired value of pitching angle is Td 0 , then s ce2  ae 2  ]e1  K sgn(s)  fˆ  f
the error and its derivative are defined as:
e1 Td  T T
=(c  a)e  ]e  K sgn(s)  f
2 1

e2 e T , e e1  ,
T =(c  a)(s  ce1 )  ]e1  K sgn(s)  f
1 2
Putting into (1) yields to the error state equation: =(c  a)s  c(c  a)e1  ] e1  K sgn(s)  f
ª e1 ºª0 1 º ª e1 º ª 0 º ª0º =(c  a)s  e (c(a  c)  ] )  K sgn(s)  f
«e » 
«0 a » «e » « 1» u  «1 » f (2) 1
¬ 2¼ ¬ ¼¬ 2¼ ¬ ¼ ¬ ¼ 
  a)s  se1 (c(a  c)  ])  K s  fs
ss=(c 2

That is e 2 ae 2  u  f
d (c  a)s2  se1 (c(a  c)  ])  ( f  K) s
According to the theory of sliding mode variable max
structure [2], the movement of the state of system is Consequently:
forced along the sliding mode surface by the switching  d (c  a)s2  se (c(a  c) ])  (f
V  K) s (7)
1 1
of the control parameters. When the change of the max
parameters of control object and the external In addition
 = 1 f f  e e
disturbances are applied, the sliding mode is
unchangeable and robust. But the chattering of the V2 2 2
sliding mode control is inevitable when the control is K1
(8)
switching. To reduce the chattering, a disturbance 1   ˆ
observer is adopted to estimate the disturbances so that = f( f  f)  e 2 (e 2  eˆ 2 )
the chattering can be weakened [3] [4] [5] [6]. K1
From (3),,then
Let f̂ be the estimate of the disturbances while ê 2

denote the estimate of e 2 and the gains k1 and k2 are f=k 1 (e 2  e 2 )
ˆ k1e 2 and
selected by the pole placement method. The eˆ 2 fˆ  aeˆ 2  u  k2 (e2  eˆ 2 ) fˆ  aeˆ 2  u  k2e 2
disturbance observer is designed as As the disturbances produced by the moves of
ª fˆ º ª0 0 º ª fˆ º ª 0 º ª k1 º manipulators and pan/tilt as well as the dragging of the
« » « » « »  « » u  « » > e2  eˆ 2 @ (3) neutrally buoyant tether are slow movements, it can be
«¬ê 2 »¼ ¬1 a ¼ ¬ê2 ¼ ¬1¼ ¬k 2 ¼ thought as that:
The sliding mode controller is defined as:
 . Putting into (8) together with (2), then:
f=0
u=]e1  K sgn(s)  fˆ (4)
­D se1 ! 0
Where ] = ®
¯E se1  0
and K represents the switching gain.

234
 =  1 f fˆ  e (  ae  u  f  fˆ  aeˆ  u  k e )
1

V2 2 2 2 2 2 0.5
K1
=  f e +e (aeˆ  ae  f  fˆ  k e )
0

2 2 2 2 2 2 -0.5

=  f e 2  ae 22  e 2f  k 2e 22 )

State response
-1

-1.5

 =  (a  k )e 2
V (9) -2
2 2 2
From equation (7) and (9), it can be found that: -2.5

while equation (10) -3

k 2 t a -3.5
0 1 2 3 4 5 6 7
atc t(s)

Figure 5 Response of the error state


­D t c(a  c) if se1 t 0
]= ® (10)
¯ E d c(a  c) if se1 d 0
250

K t f 200
max

k1 ! 0 150

control input
 d 0 had been be verified. This means
is satisfied, V
that the sliding mode control is stable. 100

It is the adoption of the disturbance observer that


the condition of K t f  fˆ could be satisfied so 50
max
easily that the switching gain K is depressed greatly
0
and weaken the chattering therefore. 0 1 2 3 4 5 6 7
t(s)

Figure 6 Control input


4. Simulation
1

The control Algorithm was simulated on


0
Matlab®/Simulink® [7][8]. The mass of the robot is
175kg. The center of gravity of the manipulator arms -1
that has a mass of 0.5kg varies from 0 to 900mm while
working, which produces a max pitching moment up to -2

0.45N.m. In order to balance the moment as well as the


e2

-3
other disturbances, the balance object is designed to
have a mass of 2.2kg and slide a distance from Ё50 to -4
Ѐ250mm, which will cause a balance moment from
Ё0.11N.m~Ѐ0.55N.m. Since it is the pitching of the -5

whole robot induced by the movements of the -6


-0.1 0 0.1 0.2 0.3 0.4 0.5 0.6
manipulators, detecting pan/tilt and the dragging of the e1
neutrally buoyant tether that has a slow velocity, the
condition of slow velocity mentioned-above for sliding Figure 7 e1 - e2 plane trajectory
mode controller is satisfied. The pitching of high
frequency induced by wave is not taken into account.
[9][10]
Assumed that the disturbance applied upon the
robot obey a law of sines.
f=5  0.3sin(0.5St)
The results of the simulations presented here are
promising shown in Fig.5 to Fig.8.

235
7
0LFUR6WUDLQ'0*;'DWD)LOH9HUVLRQ'DWH
ILOHFUHDWHG7LPHILOHFUHDWHG
6 $QJOHV3LWFK


4

f and ef

3LWFKGHJUHH
3

















2 

1

0
WV
0 1 2 3 4 5 6 7
t(s)

Figure 8 Estimate of the disturbance


Figure 10 Pitching change of the robot controlled
5. Experiment by the balance mechanism

The operating experiment of the underwater robot 6. Conclusion


was made in a static water pool. The manipulator
turned out from the bottom of the robot at a angular Aimed at the pitching of the robot caused by the
velocity of 150̓/s. The detecting pan/tilt pitched at a move of the manipulator, detecting pan/tilt and tether,
angular velocity of 60̓/s(without rolling movement). a balance mechanism was developed and a sliding
While the balance mechanism didn’t work, the max mode controller was designed to control the device.
pitching angle of the robot would reach about 10.3 Meanwhile a disturbance observer was defined in the
degrees as shown in Fig.9. Nevertheless, the pitching controller to estimate the disturbances. The amplitude
angle would be compensated within 4.5 seconds when of the switching gain was reduced greatly and the
the balance mechanism was working as shown in chattering in the sliding mode control was weakened
Fig.10. The max pitching angle reached only 5.6 certainly. A good effect had been achieved upon the
degrees at 0.4 second. The control goal had been pitching of the robot induced by the manipulator and
implemented basically. detecting pan/tilt. This shows that the balance
mechanism as well as the control approach is
0LFUR6WUDLQ'0*;'DWD)LOH9HUVLRQ'DWHILOHFUHDWHG
7LPHILOHFUHDWHG$QJOHV3LWFK
applicable. As it is a single axis device, the pitching
can only be compensated around the y axis. For the
 robot with a barycenter disturbance along the y axis, a

two DOF balance mechanism is needed to compensate
the pitching round the y axis and the rolling round the

x axis.

3LWFKGHJUHH

 7. Acknowledgment



The research projects concerned in this paper were
financially supported by State Leading Academic























Discipline Fund and Shanghai Leading Academic
 Discipline Fund of Shanghai University (Project No.
WV
BB 67 and No. Y0102), National Natural Science
Foundation of China (Project No. 60605028) and The
National High-tech Research and Development
Figure 9 Pitching change caused by the moves of
Program (Project No. 2007AA04Z225).which are
the manipulator and pan/tilt without the work of
greatly appreciated by the authors.
balance control
8. References

236
[1] Li D.P., Motion and Modelling of Ship, Harbin
Engineering University Press, Harbin, 1999.
[2] Yao Q. H., Huang J. Q. and Wu H S, Variable Structure
Control System, Chongqing University Press, Chongqing,
1997.
[3] Chang Jeang-Lin, Wu Tsui-Chou Robust disturbance
attenuation with unknown input observer and sliding mode
controller Electrical Engineering, v 90, n 7, September, 2008,
pp.493-502.
[4] Kawamura, Atsuo; Itoh, Hiroshi; Sakamoto, Kiyoshi
Chattering reduction of disturbance observer based sliding
mode control IEEE Transactions on Industry Applications, v
30, n 2, Mar-Apr, 1994, pp.456-461.
[5] Oudghiri, Mohammed, Chadli, Mohammed, and El
Hajjaji, Ahmed, “Lateral vehicle velocity estimation using
fuzzy sliding mode observer”, 2007 Mediterranean
Conference on Control and Automation, MED, 2007
Mediterranean Conference on Control and Automation,
MED, 2007, pp. 4433910.
[6] Wang Ying, Xiong Zhenhua, and Ding Han, “Robust
controller based on friction compensation and disturbance
observer for a motion platform driven by a linear motor”,
Proceedings of the Institution of Mechanical Engineers. Part
I: Journal of Systems and Control Engineering, v 220, n 1,
2006, pp.33-39.
[7] Yu. S., Zhao Y.Z,. “Simulation study on a friction
compensation method for the inertial platform based on the
disturbance observer”, Proceedings of the Institution of
Mechanical Engineers, Part G: Journal of Aerospace
Engineering, v 222, n 3, 2008, pp. 341-346.
[8] Liu J K, MATLAB Simulation for Sliding Mode Control,
Tsinghua University Press, Beijing, 2005.
[9] Heping LIU, Zhenbang GONG, “Upper Bound Adaptive
Learning of Neural Network For The Sliding Mode Control
of Underwater Robot”, Proceedings of the International
Conference on Advanced Computer Theory and Engineering ,
2008, Phuket, pp. 446-451.
[10] Heping LIU, Zhenbang GONG, “The Anti-wave
Control of Small Open-frame Underwater Robot”,
Proceedings of the 3th International Conference on
Intelligent System & Knowledge Engineering, 2008, Xiamen,
pp. 653-658.

237
2009 International Conference on Computer Engineering and Technology

ADAPTIVE OFDM Vs SINGLE CARRIER MODULATION WITH FREQUENCY


DOMAIN EQUALIZATION

Kaur Inderjeet* Thakur Kamal* Kulkarni.M# Gupta Daya$ Arora Prabhjyot*


Dept of CSE, Dept of ECE Dept of ECE Dept of CSE Dept of ECE
# $
*Institute of Technology & Management National Institute of Technology Delhi College of Engineering
# $
*Gurgaon,India Suratkal,India, Delhi, India
inderjeetk@gmail.com kamalthakur12@gmail.com mkuldce@gmail.com daya_gupta2005@yahoo.co.in aroraprabh@gmail.com,

Abstract— The aim of the present paper is to compare multi- sufficiently strong coding spreads the information over
carrier and single carrier modulation schemes for wireless multiple subcarriers. This recovers frequency diversity and
communication systems. In both cases the fast Fourier improves the BER performance.
transform (FFT) and its inverse are utilized. In case of OFDM The performance of OFDM can be improved
(orthogonal frequency division multiplexing), the inverse FFT significantly by using different modulation schemes for the
transforms the complex amplitudes of the individual sub- individual sub-carriers. The modulation schemes have to be
carriers at the transmitter into time domain. At the receiver adapted to the prevailing channel transfer function. Each
the inverse operation is carried out. In case of single carrier modulation scheme provides a trade off between spectral
modulation, the FFT and its inverse are used at the input and efficiency and the bit error rate. The spectral efficiency can
output of the frequency domain equalizer in the receiver.
be maximized by choosing the highest modulation scheme
Different single carrier and multi-carrier transmission systems that will give an acceptable (BER). In a multipath radio
are simulated with time-variant transfer functions measured channel, frequency selective fading can result in large
with a wideband channel sounder. In case of OFDM, the variation in the received power of each carrier.
individual sub-carriers are modulated with fixed and adaptive The paper is organized as follows: In section II the fixed
signal alphabets. Furthermore, a frequency-independent as and adaptive OFDM transmitters are described. A
well as the optimum power distribution are used. Single carrier description of a single carrier system with frequency domain
modulation uses a single carrier, instead of the hundreds or equalization in section III is followed by simulation results in
thousands typically used in OFDM, so the peak-to-average section IV.
transmitted power ratio for single carrier modulated signals is
smaller. This in turn means that a SC system requires a II. ADAPTIVE OFDM TRANSMISSION
smaller linear range to support a given average power. This The block diagram of the OFDM transmitter used is shown
enables the use of cheaper power amplifier as compared to in Fig. 1. Binary data is fed to a modulator which generates
OFDM system.
complex symbols on its output. The modulator either uses a
fixed signal alphabet (QAM) or adapts the signal alphabets
of the individual OFDM sub-carriers. Both, signal alphabets
Keywords- OFDM, BER, minimum mean square error, and power distribution can be optimized corresponding to
QAM, LOS, IFFT. the channel transfer function. Propagation measurements of
radio channels with fixed antennas show that the transfer
I. INTRODUCTION function varies very slowly with time. Because of this
In this paper the wideband frequency-selective radio reason, it is assumed that the instantaneous channel transfer
channels is used for investigating the transmission of digital function can be estimated at the receiver and can be
signals. Frequency-selective fading caused by multipath time communicated back to the transmitter. The third block
delay spread degrades the performance of digital transforms the symbols into time-domain using inverse fast
communication channels by causing intersymbol Fourier transform (IFFT) at the transmitter. The next block
interference, thus results in an irreducible BER and imposes inserts the guard interval. The output signal is transmitted
an upper limit on the data symbol rate. The performance of over the radio channel. At the receiver, the cyclic extension
single carrier and multi-carrier modulation schemes will be is removed and the signal is transformed back into
compared for a frequency-selective fading channel frequency domain with an FFT. Prior to demodulation, the
considering un-coded modulation scheme. signal is equalized in frequency domain with the inverse of
Un-coded OFDM loses all frequency diversity inherent in the transfer function of the radio channel corresponding to a
the channel: a dip in the channel erases the information data zero-forcing equalizer.
on the subcarriers affected by the dip and this information Two different adaptive modulator/demodulator pairs are
cannot be recovered from the other carriers. This mechanism considered in this paper: In modulator A, the distribution of
results in a poor Bit Error Rate (BER) performance. Adding

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 238


DOI 10.1109/ICCET.2009.243
Fig. 1 Block diagram of a) an OFDM and b) a single carrier transmission system with frequency domain equalization

bits on the individual sub-carriers is adapted to the shape of Since also in case of single carrier modulation the FFT
the transfer function of the radio channel. Modulator B algorithm is used, a block wise signal transmission has to be
optimizes simultaneously both, the distribution of bits and carried out. Like in an OFDM system, a periodic extension
the distribution of signal power with respect to frequency. (guard interval) is required in order to mitigate interblock
The algorithms for the distribution of bits and power are interference.
described in [7]. The adaptive modulators select from In contrast to adaptive OFDM, for single carrier modulation
different QAM modulation formats: no modulation, 2-PSK, a fixed symbol alphabet is used in order to realize a constant
4-PSK, 8-QAM, 16-QAM, 32-QAM, 64-QAM, 128-QAM, bit rate transmission.
and 256-QAM. This means that 0, 1, 2, 3 ... 8 bit per sub- There is however, a basic difference between the single and
carrier and FFT block can be transmitted. In order to get a multi-carrier modulation schemes: In case of the single
minimum overall error probability, the error probabilities carrier system, the decision is carried out in time domain,
for all used sub-carriers should be approximately equal. whereas in case of the multi-carrier system the decision is
In case of modulator A, the distribution of bits is carried out carried out in frequency domain. In case of the single carrier
in an optimum way so that the overall error probability system, an inverse FFT operation is located between
becomes minimum. The algorithm for modulator A equalization and decision. This inverse FFT operation
maximizes the minimum (with respect to all sub-carriers) spreads the noise contributions of all the indivi.dua1 sub-
SNR margin (difference between actual and desired SNR carriers on1 all the samples in time domain. Since the noise
for a given error probability). contributions of highly attenuated
Modulator B optimizes the power spectrum and distribution Sub-carriers can be rather large; a zero-j-forcing equalizer
of bits simultaneously. The result of modulator B is that the shows a poor noise performance. Because of this reason, a
same SNR margin is achieved for all sub-carriers. The minimum mean square error (MMSE) equalizer is used for
obtained SNR margin is the maximum possible so that the the single carrier system. The transfer function of the
error probability becomes minimum. Therefore, modulator equalizer H, (w,t) depends on the SNR of the respective sub-
B calculates the optimum distribution of power and bits. carriers
The results of the optimization processes of both modulator S/Nlr(w, t) at the input of the receiver:
A and modulator B are shown in Fig. 3. For comparison, the 1 S / N | r ( w, t )
upper diagram gives the absolute value of the transfer H e ( w, t ) = ⋅
function. For the specific example presented in Fig. 3, both H ( w, t ) S / N | r ( w, t ) + 1
modulators yield the same distribution of bits. Furthermore, H(w, t) denotes the time-variant transfer function of the
the power distribution and SNR is shown for both radio channel. For large SNRs the MMSE equalizer turns
modulators. into the zero-forcing equalizers which mu1tiplies with the
inverse transfer function.
III. SINGLE CARRIER TRANSMISSION WITH The main advantage of single carrier modulation compared
FREQUENCY DOMAIN EQUALIZATION with multi-carrier modulation is the fact that the energy of
The lower part of the block diagrams in fig. 1 shows the individual symbols is distributed over the whole available
considered single carrier transmission system. The figure frequency range. Therefore, narrowband notches in the
shows that the basis concepts for single carrier modulation transfer function have only a small impact on error
with frequency domain equalization and OFDM probability. Furthermore, the output signal of a single
transmission are almost similar. The main difference is that carrier transmitter shows a small crest factor whereas an
the block “inverse FFT” is moved from the transmitter to OFDM signal exhibits a Gaussian distribution.
the receiver [l]. Therefore, single carrier modulation and
OFDM without adaptation exhibit the same complexity.

239
IV. SIMULATION RESULTS The results show that an enormous improvement in
In the present paper following systems are compared using performance (12 to 14 dB) is obtained from OFDM with
measuring transfer function of the channels: adaptive modulation. Adaptive OFDM shows also a
i Single carrier modulation with minimum mean square significant gain compared with single carrier modulation.
error (MMSE) frequency domain equalizer But only a gain of less than 0.5 dB is achieved using an
ii OFDM with fixed modulation optimized power spectrum for OFDM instead of a
iii Sub-carriers and frequency-independent power frequency-independent. Because of this small difference, it
distribution, OFDM with optimized modulation is recommended to use a constant power spectrum in order
schemes and frequency-independent power distribution to save computational or signaling effort.
(modulator A)
iv OFDM with optimized modulation schemes and Length of FFT interval 256 samples
optimized power distribution (modulator B).
Length of guard interval 50 samples
For all transmission systems a complex base band
RF bandwidth 5MHz
simulation is carried out with ideal channel estimation and
synchronization. No over sampling was used since only Average data rate 16.8 Mbps
linear components (except the detectors) are assumed in the
transmission systems. The temporal location of the FFT Noise figure of the receiver 6 dB
interval with respect to the cyclic extension at the receiver Number of transmitted bits 2·105
(i.e. the time synchronization of the OFDM blocks) is
optimized so that the bit error ratio becomes minimum. For
both, single carrier and multi-carrier modulation, QAM Table 2: Simulation Parameters
schemes with different bandwidth efficiencies are used.
For the LOS measurements also, a significant gain (5 to 6
Measurement 1 2 3 4 dB) is obtained from adaptation, but the gain is smaller than
Distance of
100m 100m 250m 250m in the NLOS case. This results from a higher coherence
antennas bandwidth of the LOS radio channel transfer function.
Propagation Particularly in the NLOS case with single carrier
LOS LOS NLOS NLOS
conditions
Omni Omni
modulation, a high gain (7 to 9 dB) compared with fixed
Base station Sectional Sectional OFDM is obtained. In case of the LOS channels single
directional directional
antenna fixed fixed
fixed fixed carrier modulation yields only a signal gain of 1 to 2 dB.
Omni Omni Omni Omni
User terminal
directional directional directional directional Additional simulations show that the gain from adaptive
antenna
fixed mobile fixed mobile
modulation increases when higher-level modulation
Carrier
1.8 GHz schemes are used. Furthermore, adaptive OFDM is less
frequency
Average sensitive to interblock interference due to an insufficient
77.4 dB 66.1 dB 112 dB 105.5 dB
attenuation long guard interval than fixed OFDM and single carrier
Delay spread 0.41 µs 0.34 µs 1.43 µs 0.74 µs modulation [7]. This can be explained by the fact that in the
adaptive system, bad channels are not used or only used
Table 1: Parameters of radio channel propagation measurements with small signal alphabets so that a small amount of
interblock interference is not critical. But adaptive OFDM
Simulation results for four typical radio channels at a carrier exhibits also some disadvantages: The calculation of the
frequency of 1.8 GHz are presented. Table 1summarize the distribution of modulation schemes causes a high
parameters for all measurements. In case of the mobile computational effort. Additionally, the channel must not
scenarios (measurements 2 and 4), the user terminal antenna vary too fast because of the required channel estimation. A
was moved over a distance of 1 m with a low velocity. rapidly varying channel causes also a high amount of
Examples of the simulation results are presented in Fig. 2 signaling information with the effect that the data rate for
and 3. The figures show the bit error ratio as a function of the communication decreases. Furthermore, an OFDM
the average transmitted power. In all the examples shown, signal exhibits a Gaussian distribution with a very high crest
16- QAM (bandwidth efficiency: 4 bit/symbol) is used for factor. Therefore, linear power amplifiers with high power
single carrier modulation and fixed OFDM (systems 1 and consumption have to be used.
2). In case of adaptive modulation, the average bandwidth If channel coding is included in the transmission system
efficiency is the same as in case of fixed modulation. also, it has been shown in [1, 2] that OFDM with fixed
Therefore, only transmission systems with the same average modulation schemes shows approximately the same
data rate are compared. The main parameters of the performance as single carrier modulation with frequency
simulations are shown in Table 2. domain equalization.

240
Fig 3: Simulation results for a non-line-of-sight (NLOS) radio channel with
Fig 2: Simulation results for a line-of-sight (LOS) radio channel with a) a) a fixed (measurement 3) and b) a mobile (measurement 4) user
a fixed (measurement 1) and b) a mobile (measurement 2) user terminal
antenna single carrier modulation by 3 to 5 dB. In addition to the
modulation schemes (bit distribution) also the power
The better performance of adaptive OFDM compared with distribution of adaptive OFDM can be optimized. But
single carrier modulation results due to the capability of simulations reveal that from the optimum power distribution
adaptive OFDM to adapt the modulation schemes to sub- only a small gain of less than 0.5 dB is obtained. Therefore,
channels with very different SNRs in an optimum way. In it is recommended to refrain from optimizing the power
order to improve the performance of single carrier distribution since either additional computation or additional
modulation, the latter can be combined with antenna signaling for the synchronization is needed.
diversity using maximum ratio combining [8]. With adaptive OFDM and single carrier modulation, higher
gains - compared with conventional OFDM-are obtained for
NLOS channels than for LOS channels. Since NLOS radio
V. CONCLUSION channels exhibit usually higher attenuation, this property is
By using adaptive modulation schemes for the individual of particular advantage. Furthermore, the simulation results
sub-carriers in an OFDM transmission system, the required yield no significant differences between radio channels with
signa1 power can be reduced dramatically compared with fixed and mobile user triennial antennas.
fixed modulation.
Simulations show that for a bit error ratio of a gain of 5 to VI. REFERENCES
14 dB can be achieved depending on the radio propagation
scenario. Also with single carrier modulation a significantly [1] H. SARI,G . KARAMA, ND I. JEANCLAUDEA:
better performance is obtained than with OFDM with fixed An analysis of orthogonal frequency-division
modulation schemes. But adaptive OFDM outperforms multiplexing for mobile radio applications. In

241
Proceedings of the VTC '94 in Stockholm, pp. 1635- spectrally shaped channels. IEEE Trans. on
1639 (2006). Communications 43 (1995), pp. 773-775.
[2] H. SARI,G . KARAM AND I. JEANCLAUDEF: [6] CZYLWIKC: Comparison of the channel
frequency-domain equalization of mobile radio and capacity of wideband radio channels with achievable
terrestrial broadcast channels. In Proceedings of the data rates using adaptive OFDM. In Proceedings of
Globecom '94 in San Francisco, pp. 1-5 (2004). the 5th European Conference on Fixed Radio
[3] B. HIROSAKAI, . YOSHIDA0, . TANAKAS., Systems and Networks ECRR '96, Bologna, pp. 238-
HASEGAWAK, . INOUE, AND K. WATANABEA: 243 (1996).
191.2 kbps voice band data modem based on [7] CZYLWIK: Adaptive (OFDM for wideband radio
orthogonally multiplexed QAM techniques. In IEEE channels. In Proceedings of the GLOBECOM '96,
International Conference on Communications, pp. London, pp. 713-718 (1996). G. KADEL: Diversity
661-665 (1995). and equalization in frequency domain - a robust and
[4] D. HUGHES-HARTOGS: Ensemble modem flexible receiver technology for broadband mobile
structure for imperfect transmission media. U. S. communication systems. In Proceedings of the IEEE
Patent 4,679,227 (1987). Vehicular Technology Conference '97, Phoenix
[5] P. S. CHOWJ, M. CIOFFI AND J. A. C. (1997).
BINGHAMA: practical discrete multitone transceiver
loading algorithm for data transmission over

242
2009 International Conference on Computer Engineering and Technology

A bivariate C 1 cubic spline space on Wang’s refinement

Huan-Wen Liu Wei-Ping Lu


Faculty of Mathematics & Computer Science Department of Computer Science
Guangxi University for Nationalities Guangxi Economic Management Cadre College
Nanning 530006, P.R. China Nanning 530006, P.R. China
mengtian29@163.com luweiping06@163.com

Abstract In this paper, we consider a kind of refined triangula-


tion ΔW which was first proposed by Wang [13], where the
In this paper, by using the technique of B-net method and dimension of the bivariate C 2 quintic spline space S 52 (ΔW )
the minimal determining set, the dimension of the space of was given. By using the technique of minimal determining
bivariate C 1 cubic spline functions on a kind of refined tri- set, the dimension of the space S 31 (ΔW ) is determined and a
angulation, called Wang’s refinement, is determined, and a set of dual basis with local support is constructed.
set of dual basis with local support is given.
2. Notation and Preliminaries

1. Introduction 2.1 Preliminaries


 
Let Δ be a regular triangulation of a simply connected 1 , v2 , v3 ∈ T , accord-
For any s ∈ S dr (Δ) and T (l) := v(l) (l) (l)

polygonal domain Ω in R2 , i.e., Δ is a set of closed triangles ing to the theory of Bernstein-Bézier polynomials by Farin
whose union coincides with Ω such that the intersection of [4], the restriction of s in T (l) can be expressed as
any two triangles in Δ is either empty, a common edge or   
v(l) ,v(l) ,v(l) d! i j k
a vertex. Let V, VI , VB , E, E I , E B and F denote the set of s(x, y)|T (l) = ci jk1 2 3 αβ γ , (2)
i! j!k!
vertices, interior vertices, boundary vertices, edges, interior i+ j+k=d
edges, boundary edges and triangles in Δ, respectively.
where (α, β, γ) is the barycentric coordinates of (x, y) with
Given 0 ≤ r < d, the space of bivariate splines over the
respect to the triangle T (l) , defined by
triangulation Δ is defined by
(x, y) = αv(l) (l) (l)
1 + βv2 + γv3 , α + β + γ = 1,
S dr (Δ) = {s ∈ C r (Ω) : s|T (l) ∈ Pd , l = 1, 2, . . . , |T |} , (1)
 
v(l) ,v(l) ,v(l)
where T is a triangle in Δ and Pd is the linear space of
(l) and ci jk1 2 3 are called the B-net coefficients of s(x, y) with
bivariate polynomials of total degree d. respect to
the triangle

T (l) . It is clear that each B-net coef-
As we know, for an arbitrary triangulation Δ, the dimen- v(l) ,v(l) (l)
2 ,v3
ficient ci jk1 is associated with a corresponding domain
sion of space S dr (Δ) is known only for those cases with point  
d ≥ 4r + 1 by Alfeld and Schumaker [1], d ≥ 3r + 2 by v(l) ,v(l) (l)
2 ,v3
Hong [6] and d = 4 and r = 1 by Alfeld et al. [2], respec- ξi jk1 1 + jv2 + kv3 )/d.
:= (iv(l) (l) (l)

tively. The dimension of space S dr (Δ) with low degree d  


v(l) ,v(l) ,v(l)
verse smoothness r is quite difficult to determine and poorly For convenience, the set of all the domain points ξi jk1 2 3
understood, since it depends not only upon the topological will be denoted by Dd,Δ . For each ξ ∈ Dd, , let λξ be the
variants but also the geometrical shape of the triangulation linear functional such that for any spline s ∈ S d0 (),
as pointed out in several references, see Diener [3] and Mor-
λξ s = the B-net coefficient cξ of s at point ξ.
gan and Scott [10]. This dependence of geometric structure
results in the fact that the dimension of S 31 (Δ) over an arbi- If S is a linear subspace of S d0 (), then M ⊆ Dd, is said
trary triangulation becomes an open problem though several to be a determining set for S provided that
results have been obtained for some special triangulations,
such as Farin [5], Lai [7] and Liu [9]. s ∈ S and λξ s = 0 for all ξ ∈ M implies s ≡ 0. (3)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 243


DOI 10.1109/ICCET.2009.15
(l)
v1(l)
v 1

w3(l) a
w3(l) c
d

w (l)
2
w2(l)

w1(l) w1(l)

v2(l) v3(l) v2(l) v3(l)


(l)
(l)
Figure 1: The refined triangulation T W of a single triangle. Figure 2: A minimal determining set for S 31 (T W ) marked
with , ,  and .

M is called a minimal determining set (MDS) for S if there (l)


is no other determining set for S with the cardinality being Following Wang [13], let T W shown in Figure 1 be a
(l)
smaller than M. It is easy to see that if M is a MDS for S , refining subdivision of T formed by the following steps:
then dim S = M, where M denotes the cardinality of M. Step 1. Take three interior points w(l) (l) (l)
1 , w2 , and w3 in
We now introduce the C 1 smoothness condition between each triangle T (l) respectively, where w(l) 1 (l) 4 (l)
j = 7 v j + 7 v j+1 +
two adjacent triangles, which is a special case of the general 2 (l)
and v(l) (l)
7 v j+2 j+3 := v j , j = 1, 2, 3; l = 1, 2, · · · , |T |.
C r smoothness condition given by Farin [4].
Lemma 2.1. Let T (1) = [v1 , v2 , v3 ], T (2) = [v1 , v2 , v4 ] be Step 2. Join v(l) (l) (l) (l)
j to w j and v j to w j+1 , respectively,
two adjacent triangles in R2 with a common edge [v1 , v2 ]. where w(l) (l)
j+3 := w j , j = 1, 2, 3; l = 1, 2, · · · , |T |.
Suppose p(x, y) agrees with p1 (x, y) ∈ P3 in T (1) , and with We therefore obtain the refined triangulation ΔW =
|T | (l)
p2 (x, y) ∈ P3 in T (2) , assume l=1 T W of the original triangulation Δ.
 3! i j k
p1 (x, y) = ci[vjk1 ,v2 ,v3 ] αβ γ, (4)
i! j!k! 1 1 1 3 A minimal determining set for S 31 (T W(l) )
i+ j+k=3
 3! i j k
p2 (x, y) = ci[vjk1 ,v2 ,v4 ] αβ γ, (5) In this section, we establish a theorem concerning MDS
i+ j+k=3
i! j!k! 2 2 2 (l)
for S 31 (T W ).
where (α1 , β1 , γ1 ) and (α2 , β2 , γ2 ) are the barycentric coor- Theorem 3.1. Let M be the set of domain points associ-
(l)
dinates of (x, y) with respect to the triangles T (1) and T (2) , ated with the following 16 B-net coefficients for S 31 (T W ):
  
v(l) ,w(l) ,w(l)
respectively. Then p(x, y) ∈ C 1 (T (1) T (2) ) if and only if 1) ci jkt t+1 t+2
, i + j + k = 3, i > 1, t = 1, 2, 3,
the following holds:  
v(l) (l) (l)
t ,wt+1 ,wt+2
2) c111 , t = 1, 2, 3,
 
ci[vj01 ,v2 ,v4 ] = c[v 1 ,v2 ,v3 ]
, i + j = 3, v(l) ,v(l) ,w(l)
i j0
3) c111t t+1 t+2 , t = 1, 2, 3,
 (l) (l) (l) 
[v1 ,v2 ,v3 ] 1 ,v2 ,v3 ] 1 ,v2 ,v3 ]
w ,w ,w
ci[vj11 ,v2 ,v4 ] = αci+1 j0 + βc[v
i j+10 + γc[v
i j1 , i + j = 2, 4) c1111 2 3 ,
(6) where v(l) (l) (l)
4 := v1 , w5 := w2 , w4
(l) (l)
:= w(l)
1 , these domain
where (α, β, γ) is the barycentric coordinates of v4 with re- points are marked with , ,  and  in Figure 2. Then M
spect to the triangle T (1) . (l)
is a MDS for S 31 (T W ).
(l)
Proof : Suppose that the B-net coefficients of S 31 (T W )
2.2 Wang’s refined triangulation listed in 1) - 4) are set to zero, then
i) By using the C 1 smoothness
  (l) conditions
 (Lemma 2.1)
Let vi (i = 1, 2, · · · , |V|) be vertices of Δ, e j ( j = along the edges v(l) (l) (l)
t , wt+1 , vt , wt+2 , t = 1, 2, 3, all the
1 , v2 , v3 (l =
1, 2, · · · , |E|) be edges of Δ, and T (l) = v(l) (l) (l)
B-net coefficients associated with the domain points in
1, 2, · · · , |T |) be triangles of Δ. D1 (v(l)
t ), t = 1, 2, 3, must be zero.

244
ii) It is noted that Proof: We choose the following domain points to con-
struct a determining set P for S 31 (ΔW ):
w(l) (l) (l) (l)
3 = α1 v1 + β1 w2 + γ1 v3 a) Three B-net coefficients to determine all the B-net co-
efficients associated with the domain point in D1 (v) around
with (α1 , β1 , γ1 ) = (0,
 (l)2, −1).
1
 By using C smoothness con-
(l) each vertex v ∈ V in the original triangulation Δ. The re-
ditions across edge v1 , w2 , we have lated three domain points are marked with  in Figure 3.
    b) For each edge in the original triangulation Δ, choose a
v(l) ,w(l) ,w(l) v(l) ,w(l) ,v(l)
c1111 2 3 = 2a − c1111 2 3 . domain point associated with that edge. The related domain
  point is marked with  in Figure 3.
v(l) ,w(l) c) For each triangle T (l) in the original triangulation Δ,
(l)
t+1 ,wt+2
Thus a = 0. Similarly the B-net coefficients c120t ,
we choose four domain points, each of them is the interior
t = 2, 3, indicated by are annihilated.
domain point located in the triangle which does not include
iii) It is also noted that
any edge of Δ. These domain points are marked with  and
 in Figure 3.
2 = α2 v1 + β2 v2 + γ2 w3
w(l) (l) (l) (l)
We now set all B-net coefficients of s ∈ S 31 (ΔW ) asso-
with (α2 , β2 , γ2 ) = (−2, −1, 4). By using C1 smoothness ciated with all domain points in P to zero. Then it follows
conditions (Lemma 2.1) across edge v(l) (l)
1 , w3 , we have
from a) that all B-net coefficients in D1 (v) around every ver-
tex v ∈ V must be zero. And by using Theorem 3.1, all the
 (l) (l) (l)   (l) (l) (l)   
v ,w2 ,w3 v ,v2 ,w3 v(l) ,v(l) (l)
2 ,w3
remaining B-net coefficients in each triangle are zero. So s
1
c111 = −2c201
1
− c1111 + 4b. must vanish identically inside each subtriangle. This mean

v(l) (l) (l)
 that P is a determining set and then dim S 31 (ΔW ) ≤ |P|. It is
t ,wt+1 ,wt+2
Thus b = 0. Similarly the B-net coefficients c102 , easy to see that the total number of B-net coefficients in the
t = 2, 3, indicated by ♦ are annihilated. determining set P is 3|V| + |E| + 4|T |. This completes the
iv) Noticing that proof of this theorem.
Theorem 4.2.
v(l) (l) (l) (l)
1 = α3 w1 + β3 w2 + γ3 w3
dim S 31 (ΔW ) = 3|V| + |E| + 4|T |. (8)
with (β3 , α3 , γ3 ) = (−1,
 0, 2),  by using C smoothness con-
1

ditions across edge w(l) , w(l) Proof: Using the lower bound formula by Schumaker
2 3 , we have
[11], we have
   
v(l) ,w(l) ,w(l) w(l) ,w(l) ,w(l) 
|VI | 
c1111 2 3
= −c1111 2 3
+ 2c.  2

 
dim S 31 (ΔW ) ≥ 10+3|E I |−7|VI |+ ( j + 2 − jei )+ , (9)
w(l) ,w(l) ,w(l) i=1 j=1
Thus c = 0. Similarly the B-net coefficients c012t t+1 t+2 ,
t = 2, 3, indicated by  are zero. And then we have where |VI | denote the number of interior vertices in ΔW , |E I |
   (l) (l) (l)  the number of edges in ΔW and ei the number of distinct
v(l) ,w(l) (l)
2 ,w3 w ,w2 ,w3
c1201 = −c1201 + 2d. slopes assumed by these edges. Noticing that

By using Lemma 2.1 and item ii), we obtain d = 0. Simi- |E I | = 9|T | + |E I |, |VI | = |VI | + 3|T |,

w(l) (l) (l)
t ,wt+1 ,wt+2
larly the B-net coefficients c021 , t = 2, 3, indicated and
by  are zero.  (l) (l) (l)  

|VI | 
2 
w ,w ,w
v) It follows from above that items t = c300t t+1 t+2 , ( j + 2 − jei )+ = [(3 − ei )+ + (4 − 2ei )+ ] = 0,
1, 2, 3, are forced to zero by Lemma 2.1. i=1 j=1

Therefore s ≡ 0. Noticing that T W (l)


is a quasi-cross-cut we have
(l)
partition, according to [12], we know dim S 31 (T W ) = 16, the
set M is a MDS for S 31 (T W(l)
). The proof is completed. dim S 31 (ΔW ) ≥ 10 + 6|T | + 3|E I | − 7|VI |.
Using the Euler Theorem
4 Main Results
|T | = |E I |−|VI |+1, |E| = 2|E I |−3|VI |+3, |V| = |E I |−2|VI |+3,
Theorem 4.1. Let Δ be an arbitrary triangulation and ΔW we have dim S 31 (ΔW ) ≥ 3|V| + |E| + 4|T |. Which together
be the Wang’s refined triangulation of Δ, then with Theorem 4.1 yield that
dim S 31 (ΔW ) ≤ 3|V| + |E| + 4|T |. (7) dim S 31 (ΔW ) = 3|V| + |E| + 4|T |.

245
nan Key Laboratory for Computation and Simulation in Sci-
ence and Engineering.

References

[1] Alfeld, P., Schumaker, L.L. (1987). “The dimension of


spline spaces of smoothness r for d ≥ 4r + 1”. Con-
struct. Approx., Vol.3, pp.189-197.
[2] Alfeld, P., Piper, B., Schumaker, L.L. (1987). “An ex-
plicit basis for C 1 quartic bivariate spline”. SIAM J.
Numer. Anal., Vol.24, pp.891-911.
[3] Diener, D. (1990). “Instability in the dimension of
spaces of bivariate piecewise polynomials of degree
2r and smoothness r”. SIAM J. Numer. Anal., Vol.27,
pp.543-551.

Figure 3: A MDS for S 31 (ΔW ) marked with , ,  and . [4] Farin, G. (1986). “Triangular Bernstein-Bézier
patches”. Comput. Aided Geom. Des., Vol.3, pp.83-
128.
The proof of the theorem is completed.
[5] Farin, G. (2006). “Dimensions of spline spaces over
It is clear that the set P constructed in Theorem 4.1 is a
  unconstricted triangulations”. J. Comput. Appl. Math.,
MDS for S 31 (ΔW ). Denote P = ξ1 , ξ2 , . . . , ξ|P| . For each
Vol.192, pp.320-327.
ξ j ∈ P, we define spline B j ∈ S 31 (ΔW ) to satisfy
[6] Hong, D. (1991). “Spaces of bivariate spline functions
λξi B j = δi j , for all ξi ∈ P. (10) over triangulations”. Approx. Theory Appl., Vol.7,
The set {Bi , i = 1, ..., |P|} obviously forms a dual basis of pp.56-75.
S 31 (ΔW ), which is commonly called the dual basis corre- [7] Lai, M.J. (1996). “Scattered data interpolation and
sponding to P. approximation by using bivariate C 1 piecewise cu-
We now analyze the support properties of the basis bic polynomials”. Comput. Aided Geom. Des., Vol.13,
function Bi . Suppose ci is the B-net coefficient of Bi which pp.81-88.
is set to 1. If ci is associated with a domain point lying in
D1 (v) around a vertex v ∈ Δ, then the support set of Bi is all [8] Lai, M.J., Schumaker, L.L. (2007). Spline Functions
triangles of Δ sharing

v. If ci is associated with a domain over Triangulations. Cambridge University Press.
w(l) ,w(l) ,w(l)
 (l) in (l)ξ111(l) 
1 2 3
point lying , then the support set of Bi is the [9] Liu, H.W. (1996). “The dimension of cubic spline
triangle v1 , v2 , v3 . If ci is associated with a domain point space over stratified triangulation”. J. Math. Res. Exp.,
 
v(l) ,w(l) ,w(l) Vol.16, pp.199-208.
lying in ξ111t t+1 t+2
(t = 1, 2, 3), then the support
 set(l)of (l)Bi
is the union of those subtriangles located in v(l) [10] Morgan, J., Scott, R. (1975). “The dimension of piece-
1 , v2 , v3
wise polynomial”, manuscript.
t , wt+1
sharing vertices v(l) , w(l)
(l)
 t+2 . If ci is associated with a
v(l) ,v(l) ,w(l) [11] Schumaker, L.L. (1979). “On the dimension of
domain point lying in ξ111t  t+1 t+2 (t = 1, 2, 3), we consider
space of piecewise polynamials in two variables”. In:
two situations. Firstly, if v(l) (l)
t , vt+1 is a boundary edge of
  Schempp, W., Zeller, K.(eds.): Multivariate Approxi-
Δ, then the support set of Bi is the triangle v(l) (l) (l)
t , vt+1 , wt+1 . mation Theory. Birkhäyser Verlag, pp.396-411.
 (l) (l) 
Secondly, if vt , vt+1 is an interior edge of Δ, then the
  [12] Wang, R.H. (1975). “The structural characterization
support set of Bi is the the union of v(l) (l) (l)
t , vt+1 , wt+1 and and interpolation for multivariate splines”. Acta Math.
 (l) (l) (l)   
vt , vt+1 , w̃t+1 , where v(l) (l) (l)
t , vt+1 , w̃t+1 is the subtriangle
Sinica, Vol.18, pp.91-106.
   (l) (l) (l) 
sharing a common edge v(l) t , vt+1 with vt , vt+1 , wt+1 .
(l)
[13] Wang, T.J. (1992). “A C 2 -quintic spline interpolation
scheme on triangulation”. Comput. Aided Geom. Des.,
Acknowledgements. The first author is supported by the Vol.9, pp.379-386.
Natural Science Foundation in Guangxi (0575029) and Hu-

246
2009 International Conference on Computer Engineering and Technology

Fast Shape Matching Using a Hybrid Model

Gang Xu, Wenxian Yang


Department of Electrical and Electronic Engineering
North China Electric Power University
Beijing 102206, China
E-mail: xugang@ncepu.edu.cn, ywxzgs81@163.com

Abstract—A hybrid model is proposed to finish image shape the image quickly among the given test images and the
matching from coarse to fine, which is composed of three image has the greatest similarity to the template image. After
parts: rough matching, accurate matching, and optimum edge extracting, a fast strategy is given as the rough measure
matching search. According to the partial Hausdorff distance, of the similarity between the template and images and a
a fast strategy for rough matching and a new improved partial novel partial Hausdorff distance is proposed to compute the
Hausdorff distance for accurate matching are presented as the shape similarity accurately. Finally, a new genetic algorithm
measures of the degree of shape similarity between the based on fuzzy logic, which can adaptively regulate the
template and images. At the same time, a new genetic probabilities of crossover and mutation, achieves the
algorithm based on fuzzy logic, which can adaptively regulate
optimum shape matching with higher search speed and
the probabilities of crossover and mutation, is used to search
quality.
the optimum shape matching quickly. The experimental results
show that the model achieves the shape matching with higher II. THE HAUSDORFF DISTANCE
speed and precision compared with the traditional matching
algorithms and can be used in real-time image matching and On the basis of reviewing the conventional and existing
pattern recognition. improved Hausdorff distances, two new measures of shape
similarity between the template and images are proposed to
Keywords-shape matching; Hausdorff distance; genetic meet the real-time image matching.
algorithm; fuzzy control
A. Conventional HD and Partial HD
I. INTRODUCTION Given two finite point sets:
A = {a1 , a 2 , " , a p } and B = {b1 , b2 ,", bq } , the HD is defined
The combination of Hausdorff distances and genetic
algorithms can effectively detect rotating, and scaling of as follows:
objects in image shape matching.
The Hausdorff distance (HD) [1] measures the mismatch H ( A , B ) = m ax ( h ( A , B ), h ( B , A )) , (1)
of two sets and is more tolerant to perturbations in image
matching for it measures proximity rather than exact
superposition. However, the conventional Hausdorff , (2)
distances require high computational complexity and are not h ( A , B ) = m a x m in a − b
a∈ A b∈ B
suited to the practical applications. Some modified Hausdorff
distances have been proposed recently. Huttenlocher
proposed the partial Hausdorff distance [2], a directed , (3)
h ( B , A ) = m a x m in b − a
modified Hausdorff distance (MHD) was introduced by b∈ B a∈ A
Dubuisson [3], a robust Hausdorff distance was used in [4],
two different improved Hausdorff distances were introduced ⋅
is any norm on the points of A and B, we employ
in [5],[6]. the Euclidean distance in this paper. The distance between a
The genetic algorithm (GA) [7] is such a search and point and a set is defined as the minimum distance from the
optimization method, which has developed to stimulate the point to all points of the set. The directed
mechanism of natural evolution and is powerful in finding distance h( A, B) identifies the largest distance from the point
the global or near global optimal solution of optimization
a ∈ A to B. H ( A, B) is defined as the maximum of
problems. The genetic algorithm has found kinds of
applications successfully and has shown to be of great h( A, B) and h(B, A) , the computational complexity
promising. The Hausdorff distance and genetic algorithm is O ( p ⋅ q ) .
were applied to object detection in images [8], the The directed partial Hausdorff distance (PHD) is defined
applications of Hausdorff distances and genetic algorithms as follows:
were researched in image shape matching as in [6],[9].
Based on the above-mentioned articles, a hybrid model
hl ( B, A) = Lthb∈B h(b, A) , 1 ≤ l ≤ q , (4)
for fast shape matching is introduced in this paper to search

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 247


DOI 10.1109/ICCET.2009.53
Where Lthb∈B denotes the Lth ranked value of h(b, A) . dimension. It’s better to adopt the genetic algorithm to
search the optimum in this model. In view of the
B. Two Novel Measures of Shape Similarity Based on the shortcomings of simple genetic algorithm (SGA), such as
Partial Hausdorff Distance premature convergence and slow convergence, a new
For fast and effective image matching, two novel genetic algorithm based on fuzzy logic is used which can
similarity measures are given on the basis of [5],[6]. regulate the probabilities of crossover and mutation
1) A Novel Partial Hausdorff Distance for Accurate adaptively.
Measurement: Whether the conventional or partial III. THE GENETIC ALGORITHM WITH PROBABILITIES OF
Hausdorff distance, the distances between every point of the CROSSOVER AND MUTATION SELF-ADAPTION BASED ON
template B and the matched image A are computed, this
FUZZY CONTROL
computational cost limits Hausdorff distance’s practical
applications. In fact, for each point of B, in the matched The convergence speed and solution quality are directly
image only one point or several points in its neighborhood influenced by the probabilities of crossover Pc and mutation
have the smaller distance with the point, thus it is Pm. It’s known that the self-organizing genetic algorithm has
unnecessary to compute each distance. For higher matching higher robustness, faster convergence and the global
speed and accuracy, a novel partial HD is proposed as optimization. There have been some Pc and Pm self-adaption
follows: algorithms, of which the algorithms based on fuzzy logic
For the point b j (1 ≤ j ≤ q ) in B, the small have better performances.
A new genetic algorithm is proposed in [10] and
neighborhood M2 (m2×m2), which correspond with b j in A, adaptively regulates Pc and Pm by inquiring the table based
is searched to find the feature points and the directed on fuzzy control, the differences of the population average
Hausdorff distance h(bj , A) from b j to A is the smallest fitness and standard deviation between two adjacent
generations are inputs, Pc and Pm are outputs. Two self-
distance from b j to these points; if there are not points in the adaption normalized operators are given. This algorithm has
neighborhood, h(bj , A) is a given maximum. Ranking h(bj , A) better performance and we use it to search the optimum.

from small to large, the lth value is h2 ( B, A) which is used IV. THE HYBRID MODEL FOR SHAPE MATCHING
for accurate similarity measure. Compared with [6], this The hybrid model composed of these algorithms can
distance has higher accuracy with the same speed. finish shape matching through two parts: the rough matching
2) A Fast Strategy for Rough Measurement: Initialize and the accurate matching. The process of shape matching is
the counter Mt0=0. For the point b j in B, the small shown as Fig.1; the flow diagrams of rough matching and
accurate matching are shown in Fig.2 and Fig.3.
neighborhood M1(m1×m1), which correspond with b j in A,
is searched to find the feature points. If there are points, Mt0
add one, if there are not points, Mt0 is unchanged.
Normalized value h1 ( B , A) = 1 − Mt 0 / q is called as the fast
similarity measure between A and B. Two images are
similar only when Mt 0 / q ≥ l1 × q , 0 ≤ l1 ≤ 1 is true.
3) The Optimum Model for Shape Matching: Quickly
retrieving the given test images by rough and accurate
matching, image rotation (rotation coefficient θ ) and scale
(scale coefficient m) are considered. Fig.1. The process of shape matching.
For A and B are the sets of the edge points of the
matched images and the template respectively. Equation
t = (θ , m ) is the parameter of template rotation and scale.
The optimum model is defined as follows:

min h (t ( B ), A ) , (5)
t

Where t ( B) = m ⋅ ⎡cos(θ ) − sin(θ ) ⎤ ⋅ B .


⎢ sin(θ ) cos(θ ) ⎥
⎣ ⎦
Therefore, the key is to find the optimum
parameter (θ , m ) to get the best matching. The genetic
algorithm is widely used for the optimization problems
including objective functions are discontinuous, high Fig.2. The flow diagram of rough matching.

248
V. RESULTS AND ANALYSIS
The algorithms are implemented by Matlab7.0 in the
Platform of Intel (R) Core (TM)2 Duo CPU (2.00GHz). The
test images are showed in table 2.

TABLE II. TEST IMAGES


1 2 3

4 5 6
Fig.3. The flow diagram of accurate matching.

A. The Implementation Steps


1) Edge Extracting: Canny operator is employed.
2) Definition of Objective Functions: The functions for 7 8 9
rough and accurate matching are minimized and defined as
follows:

f1 (θ , m) = h1 (t (B), A) = 1− Mt0/ q f1 ∈ (0,1) , (6)

10 11 12
f 2 (θ , m) = h2 (t ( B ), A) , (7)

Where t ( B) = m ⋅ ⎡cos(θ ) − sin(θ )⎤ ⋅ B .


⎢ sin(θ ) cos(θ ) ⎥
⎣ ⎦
3) Parameters and Ranges: Population size N, the
largest iterative number NM, the initial value of Pc and Pm 13 14 15
etc.
4) Optimum Results Search: The genetic algorithm is
adopted.
B. Computational Efficiency Analysis
The computational times of addition and subtraction (+/-
), multiply and divide (×/÷), and comparison of the fast 16 17
strategy and Hausdorff distance in this paper are showed in
table 1 compared with the Hausdorff distance in [6],[9]. (The
worst situation is considered in the partial Hausdorff distance
and fast strategy. Generally M1 is a little bigger than M2,
M1 and M2 are much less than p).

TABLEⅠ. COMPUTATIONAL EFFICIENCY ANALYSIS

Algorithms +/- ×/÷ Comparison


HD reference [9] 6q×p 6q×p 2q×p The template is the same as NO.2 image; NO.1-10 are
reference [6] 3q 3q M2+q
PHD
this paper 3q×M2 3q×M2 M2×q+q
fishes with kinds of shapes (128×128); NO.11-15 are images
the fast strategy after rotating the template 15, 90, 167, 245, and 315 degree
q 1 M1×q counter-clock-wise respectively; NO.16 is the image after
(in this paper)
narrowing the size of the template one times and rotating it
From table1, the methods proposed in this paper lessen 90 degree; NO.17 is the image after doubling the size of the
the computational cost to a great degree. template and rotating it 45 degree.

249
Setting parameters: N is 20, NM is 100, the coding length 0.25

of θ and m is 10 and 5 respectively with binary coding, and SGA


GA
the initial value of Pc and Pm is 0.6 and 0.05 respectively.

Standard deviation
The selection, crossover, and mutation operator are adopted
0.2
as in [11]. Each algorithm has 10 operations to overcome the
randomness in GA.
A. Comparison Between Several Hausdorff Distances
Take the matching between the template and NO.11 for 0.15

example. Adopting the same genetic algorithm (proposed in


this paper), the Hausdorff distance and fast strategy proposed
in this paper are compared with which as in [6],[9], shown in
table 3. Noting that the running time is relative because it is 0.1
0 10 20 30 40 50 60 70 80 90 100
influenced by kinds of external factors such as the computer Generation
running time. Fig.5. The changes of standard deviation.

TABLE III. COMPARISON BETWEEN SEVERAL HAUSDORFF From Fig.4 and Fig.5, the optimized function has lower
DISTANCES
average fitness and higher standard deviation in GA. The
Optimal results lower population average fitness means that the average
( θ ,m)
Algorithms Running time distance between individuals of each generation and the
HD reference [9] 27min 39s (15.1320, 0.9839) template is smaller and the search quality is better in the
reference [6] 2min 58s (15.4839, 0.9839) process of searching. The higher standard deviation shows
PHD
this paper 3min 1s (14.7801, 0.9839) that the individuals are more dispersive, which are very
the fast strategy
2min 50s (14.3109, 1.0323) helpful to wider search.
(in this paper)
2.5

From table3, the HD given in this paper has higher


Crossover probability

matching accuracy as well as faster speed and the fast 2


strategy has lower computational complexity. The
advantages become more obvious when the images are
larger. 1.5

B. The Changes of Population Average Fitness, Standard SGA


Deviation, Crossover Probability Pc, and Mutation GA
1
Probability Pm
Take the rough matching between the template and
NO.11 for example, the changes of population average 0.5
fitness, standard deviation, Pc, and Pm of GA given in this 0 10 20 30 40 50 60 70 80 90 100

paper are shown in Fig.4, Fig.5, Fig.6, and Fig.7 respectively Generation
compared with SGA. Fig.6. The changes of crossover probability.

1 0.24

0.22
0.95 SGA
Mutation probability

0.2
GA
Average fitness

0.9 0.18

0.16
0.85
0.14
0.8
0.12
SGA
0.75 0.1 GA

0.08
0.7
0.06

0.65 0.04
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Generation Generation
Fig.4. The changes of population average fitness. Fig.7. The changes of mutation probability.

250
From Fig.6 and Fig.7, the changes of Pc and Pm in GA match with the template exactly is removed. The parameters
are frequent with the changes of average fitness and standard show that the matching has low error and high quality.
deviation, whereas Pc and Pm in SGA remain in the process
of searching,, which show that the GA given in this paper VI. CONCLUSIONS
has a strong self-adaptive ability. The hybrid model produced in this paper has features as
The parameters of SGA: ( θ , m) = (17.0088, 0.9839), shown below:
GA: ( θ , m) = (14.3109, 1.0323), the average optimum • Quickly and effectively finishing the shape matching
iterative times of SGA and GA are 74 and 51 respectively. from coarse-to-fine with the fast strategy and
improved HD.
C. Results and Analysis of Rough and Accurate Matching • The genetic algorithm with the probabilities of
The results of rough and accurate matching are shown in crossover and mutation self-adaption based on fuzzy
tables 4 and 5 (n denotes the optimal generation, √ denotes control is adopted to get higher speed, better quality,
the image is selected, Y denotes the image is exactly and stronger self-adaptive ability.
matched with the template). In conclusion, compared with other similar matching
methods, this model can be used for image recognition and
TABLE IV. RESULTS OF ROUGH MATCHING matching in practice. Its stability is not that great yet and will
be studied next.
NO. n
θ m
The fast
Selected
(degree) measures REFERENCES
1 87 45.5719 0.8145 0.0002 ×
2 71 2.5513 0.9597 0 √
[1] Csaszar A., General Topology, Bristol: Adam Hilger, 1978.
3 90 200.7625 0.5726 0.0001 √ [2] Huttenlocher, D.P., Rucklidge, W.J., and Klanderman, G.A.,
4 87 181.2317 0.5 0.0003 × Comparing images using the Hausdorff distance
5 98 349.0909 0.5 0.0002 × undertranslation, In: Proc. CVPR ’92., 1992 IEEE Comput.
6 92 217.478 0.8871 0.0002 × Soc.Conf. on 15–18 June, Comput. Vision Pattern Recogn.,
7 96 21.4663 0.6935 0.0002 × pp. 654–656.
8 90 12.3167 0.8387 0.0002 ×
[3] M.P. Dubuisson and A.K. Jain, A modified Hausdorff
9 97 200.5865 0.5 0.0002 ×
distance for object matching, ICPR, Jerusalem, Israel, 1994,
10 84 253.9003 0.9113 0.0002 ×
pp. 566-568.
11 51 14.3109 1.0323 0 √
12 93 91.1437 0.9839 0 √
[4] D.G. Sim, O.K. Kwon, and R.H. Park, Object matching
13 83 168.9150 1.0565 0 √ algorithms using robust Hausdorff distance measures, IEEE
14 61 247.0381 1.0323 0.0001 √ Transactions on Image procession, December 1999, pp. 425-
15 40 317.8886 1.0323 0 √ 429.
16 77 87.9766 0.5 0 √ [5] Zhang Zhijia, Huang Shabai, and Shi Zelin, A Fast Strategy
17 76 46.8046 1.9758 0.0001 √ for Image Matching Using Hausdorff Distance, Proceedings
of the IEEE Intemational Conference on Robotics, Intelligent
Systems and Signal Processing, 2003, pp. 915-919.
[6] Zang Tiefei, Shen Tingzhi, Chen Jianjun, and Gu Jianjun, The
TABLE V. RESULTS OF ACCURATE MATCHING Application of Improved Hausdorff Distance and Genetic
Algorithm in Image Matching, Journal of Beijing Institute of
NO. n
θ m HD Matched Technology, 2000, 20 (6), pp. 733-737.
(degree)
2 62 1.9795 0.9718 0 Y [7] Holland J.H., Adaption in Natural and Artificial Systems, The
3 95 203.6657 0.8992 0.0005 N University of Michigan Press, Ann Arbor, M I, 1975.
11 58 14.7801 0.9839 0 Y [8] Liu Jianzhuang, Xie Weixin, Gao Xinbo, Ma Kun, Hausdorff
12 67 90.7918 0.9839 0 Y Distance Based Object Matching with Genetic Algorithms,
13 66 167.5074 1.0202 0 Y Acta Electronica Sinica, 1996, 24 (4), pp. 1~6.
14 54 246.5103 1.0081 0 Y
15 79 315.6598 0.9839 0 Y [9] Zhang Wenjing, Xu Xiaoming, and Su Jianfeng, An Improved
16 49 91.1437 0.5 0 Y Algorithm for 2D Shape Matching Based on Hausdorff
17 86 45.0446 1.9879 0 Y Distance, Journal of Image and Graphics, 2000, 5 (2), pp.
106-109.
[10] Li Qing, Zhang Wei, Yin Yixin, and Wang Zhiliang, A new
From table 4, NO.2, 3, 11, 12, 13, 14, 15, 16, and 17 are adaptive algorithm for regulating the probabilities of
selected after rough matching. The image 3 is selected crossover and mutation, Control and Decision, 2008, 23 (1),
which is similar to the template; other images are kinds of pp. 79-83.
affine transformations of the template and are also selected. [11] Yang Shuying, Image Pattern Recognition——VC++
The matching results fit with human vision. Implementation, Tsinghua University Press, Beijing Jiaotong
On the basis of rough matching, eight images of University Press, 2005.
transformations of the template are gotten by accurate
matching as shown in table 5. The image 3 which does not

251
2009 International Conference on Computer Engineering and Technology

A Multi-objective Genetic Algorithm for optimization


of Cellular manufacturing system

H. kor, H. Iranmanesh, H. haleh, and S. M. Hatefi


Department of Industrial Engineering, College of Engineering
University of Tehran
Tehran, Iran
hkor@ut.ac.ir, hiranmanesh@ut.ac.ir, haleh24@hotmail.com, s_m_hatefi@yahoo.com

Abstract—Cellular manufacturing (CM) is an important Formally [5]: Where x is called the decision vector, X is the
application of group technology (GT) in which families of parts parameter space, y is the objective vector, and Y is the
is produced in manufacturing cells or in a group of various objective space.
machines. In this paper, a genetic algorithm approach is The set of solutions of a multi-objective optimization
proposed for solving multi-objective cell formation problem. problem consists of all decision vectors for which the
The objectives are the minimization of both total moves
corresponding objective vectors cannot be improved in any
(intercell as well as intracell moves) and the cell load
Variation. In this paper, authors used a SPEA-II method as dimension without degradation in another. These vectors
well known and efficient standard evolutionary multi-objective are known as Pareto optimal. Mathematically, the concept
optimization technique. This hybrid method presents the large of Pareto optimality is as follows: Assume, without loss of
set of non-dominance solutions for decision makers to making generality, a maximization problem and consider two
best solution. The efficiency of multi-objective GA-SPEA II is decision vectors ܽǡ ܾ ‫ܺ א‬Ǥ
illustrated on a large-sized test problem taken from the . Then, a is said to dominate b (also written as a>b) if
literature. ‫ א ݅׊‬ሼͳǡ ʹǡ͵ǡ ǥ ǡ ݊ሽǣ݂௜ ሺܽሻ ൒ ݂௜ ሺܾሻ  ‫ר‬
Keywords— Cellular Manufacturing System, Genetic
‫ א ݆׌‬ሼͳǡʹǡ͵ǡ ǥ ǡ ݊ሽǣ݂௝ ሺܽሻ ൐ ݂௝ ሺܾሻ
Algorithm, Multi-Objective, Pareto set, SPEA II.

I. INTRODUCTION III. MATHEMATICAL MODEL


The Cellular manufacturing (CM) is the application of According to the literature, the most fundamental
group technology (GT) in manufacturing systems. objectives for the CFP are Minimization of intercell flows
Recent surveys [1,2] indicate that the practical and cell load variation, or their combinations. We can
implementation of a cellular manufacturing system involves benefit from lower parts transfer cost due to the
the optimization of many conflicting objectives. Given the minimization of intercell flows and higher within-cell
size of the cellular manufacturing research output, it is machine utilization due to the minimization of cell load
surprising that relatively few solution methodologies variation. Several measures have been used to evaluate the
explicitly address the multi-objective version of the objective function of the CFP, such as grouping efficiency
problem. Even when multiple objectives are considered, proposed by Chandrasekharan and Rajagopalan [6], group
optimization is normally achieved through the aggregation efficacy by Kumar and Chandrasekharan [7] and bond
of the objectives into a single composite objective, as energy by Miltenburg and Zhang [8]. However, these
indicated in the reviews by Mansouri et al. [3] and measures are only suitable for those CFPs whose machine–
Dimopoulos [4]. This technique does not provide the system part flow chart is a 0–1 matrix denoting the manufacturing
designer with a set of alternative trade-off solutions, which relationship between machines and parts, without
is the main aim of a typical multi-objective optimization considering other important design factors such as
process. processing time, production requirements and available time
on machine in a given period, etc. In our research, we
II. DEFINITIONS
propose to minimize intercell flows and cell load variation
in a consideration of the processing time and available time
A general multi-objective optimization problem can be on machine in a given period. The mathematical model is
described as a vector function ݂ that maps a tuple of m given as [9]:
parameters (decision variables) to a tuple of n objectives.
݂ଵ Cell load variation:

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 252


DOI 10.1109/ICCET.2009.212
௠ ௖ ௣
As SPEA (Strength Pareto Evolutionary Algorithm) [5]
݂ଵ ൌ ෍ ෍ ෍ ‫ݔ‬௜௟ ሺ‫ݓ‬௜௝ െ ݉௟௝ ሻଶ ሺͳሻ forms the basis for SPEA2, we give a brief summary of the
௜ୀଵ ௟ୀଵ ௝ୀଵ algorithm here. For a more detailed description the
݂ଶ ǣ –‘–ƒŽ‘˜‡• interested reader is referred to Zitzler [5].
௣ ௞೔ ିଵ ௣ This approach was conceived as a way of integrating
݂ଶ ൌ ߠଵ ෍ ෍ ȁܿ௞ െ ܿ௞ାଵ ȁ ൅ ߠଶ ෍ ݉௜ ሺʹሻ different MOEAs (Multi Objective Evolutionary
௜ୀଵ ௞ୀଵ ௜ୀଵ
Algorithms). SPEA uses an external archive containing
nondominated solutions previously found (the so-called
Where: external nondominated set). At each generation,
ܿ௞ The cell number in which operation k is nondominated individuals are copied to the external
performed on part i taking into consideration nondominated set. For each individual in this external set, a
the sequence of operations. strength value is computed. This strength is similar to the
ܿ௞ାଵ The cell number in which operation (k+1) is ranking value of MOGA [12], since it is proportional to the
performed on part i taking into Consideration number of solutions to which a certain individual
the sequence of operations. dominates. In SPEA, the fitness of each member of the
݇௜ the total number of operations to be current population is computed according to the strengths of
performed on pan i to complete its all external nondominated solutions that dominate it. The
processing requirements fitness assignment process of SPEA considers both
c The number of cells. closeness to the true Pareto front and even distribution of
‫݌‬ The number of parts. solutions at the same time. Thus, instead of using niches
݉௜ The total number of intracell moves based on distance, Pareto dominance is used to ensure that
performed by part i in order to complete its the solutions are properly distributed along the Pareto front.
processing requirements, taking into Although this approach does not require a niche radius, its
consideration the sequence of operations. effectiveness relies on the size of the external nondominated
ߠଵ ǡ ߠଶ The fractions representing the weights set. In fact, since the external nondominated set participates
attributed to the intercell and intracell moves in the selection process of SPEA, if its size grows too large,
respectively (ߠଵ and ߠଶ are assumed to be 0.7 it might reduce the selection pressure, thus slowing down
and 0.3 respectively as suggested by the search. Because of this, the authors decided to adopt a
Dimopoulos [10] for comparison purposes). technique that prunes the contents of the external
m the total number of machines nondominated set so that its size remains below a certain
‫ݐ‬௜௝ the processing time (hour/piece) of part j on threshold. The approach adopted for this sake was a
machine i clustering technique called average linkage method [13].
ܶ௜ the available time on machine i in a given SPEA II is also a revised version of SPEA whose pseudo
period of time code is shown in Algorithm 2 [14]. SPEA II has three main
ܰ௝ the production requirement of part j in a differences with respect to its predecessor [14]: (1) it
given period of time incorporates a fine-grained fitness assignment strategy
ܹ [ܹ௜௝ ] is an mൈp machine-part incidence which takes into account for each individual the number of
matrix, where ܹ௜௝ is workload on machine i individuals that dominate it and the number of individuals
to which it dominates; (2) it uses a nearest neighbor density
induced by part j and is equal to ሺ‫ݐ‬௜௝ ൈ ܰ௝ ሻȀܶ௜
estimation technique which guides the search more
X [ܺ௜௟ ሿ is an m X c cell membership matrix,
efficiently, and (3) it has an enhanced archive truncation
where ܺ௜௟ ൌ ͳ if ݅ ௧௛ machine is in cell l and 0 method that guarantees the preservation of boundary
otherwise. solutions. The overall algorithm is as follows:
M ݉௟௝ is a c X p matrix of average cell load, Algorithm 1 (SPEA2 Main Loop)
where Input: N (population size)
σ௠ ௜ୀଵ ܺ௜௟ ൈ ܹ௜௝ ഥ (archive size)
݉௟௝ ൌ ܰ
σ௠௜ୀଵ ܺ௜௟ T (maximum number of
According to the above model, we solve the problem by generations)
GA-SPEA II method and present set of non-dominated Output: A (nondominated set)
solutions. The result would be present in section 5. Step 1: Initialization: Generate an initial
population P0 and create the empty
archive
IV. SPEA II TECHNIQUE തതത଴ = Set t = 0.
(external set) ܲ

253
Step 2: Fitness assignment: Calculate fitness at each gene. Chosen genes are swapped
values of individuals in ܲ௧  and ܲഥ௧ . to perform mutation process.
Step 3: Environmental selection: Copy all (iv) Place new offsprings in the new
nondominated individuals in ܲ௧ and ܲഥ௧ population.
to ܲത௧ାଵ If size of ܲത௧ାଵ exceeds N then Step 4 Deliver the best solution in the current
reduce ത୲ାଵ by means of the truncation population. If the end condition is
operator, otherwise if size of ത୲ାଵ is less satisfied, stop.
than N then fill ത୲ାଵ with dominated Step 5 Go to step 2
individuals in ܲ௧ and ܲഥ௧ .
VI. NUMERICAL EXAMPLE
Step 4: Termination: If t ൒ T or another
stopping criterion is satisfied then set A In order to demonstrate efficiency of our model, authors
to the set of decision vectors represented use a large scale of test problem that taken from literature
by the nondominated individuals in ഥ୲ାଵ . [9] .The authors purposely use this test problem in order to
Stop. assess the validity of their approach in a large-sized test
Step 5: Mating selection: Perform binary problem, since multi-objective cell-formation problems of
tournament selection with replacement this type do not exist in the literature. In fact, authors in
on ത୲ାଵ in order to fill the mating pool. different models and objective used this test problem. Gupta
Step 6: Variation: Apply recombination and et al. [9] In addition, the authors provided a corresponding
mutation operators to the mating pool set of non-dominated solutions for comparison purposes. As
and set ܲത௧ାଵ to the resulting population. already indicated in table I, this set of non dominated
Increment generation counter (t = t + 1) solution also, compared with Dimopoulos’s solution.
and go to Step 2.
V. GENETIC ALGORITHM VII. RESULTS & DISCUSSION
Multi-objective GP-SPE II is an algorithm for
The general outline of GA is summarized below [11]: automatically producing sets of non-dominated solutions for
multi-objective CFP. The set of evolved solutions covers
Algorithm 1: Genetic algorithm the entire trade-off range of the objectives considered. This
Step 1 Generate random population with n is because it’s using of SPEA II methodology that solved
chromosomes by using symbolic the multi objective problem and produce the set of non
representation scheme (suitable size of dominated solution. Also, the set of non-dominated
solutions for the problem). solutions produced by multi-objective GP-SPEA II provides
Step2 Evaluate the fitness function of each the decision maker with a reasonably complete picture of
chromosome x in the population by the potential design trade-offs, which is the aim of a natural
using the proposed objective functions. multi-objective optimization Process. The set of solutions
Step3 Create a new population by iterating provided by multi-objective GP-SPEA II provides a good
loop highlighted in the following steps starting point for other decision-maker activities that would
until the new population is complete lead to an informed decision.
(i) Select two parent chromosomes In the research of Dimopoulos, a Cell Formation Problem
from a population according to their test problem [9] solved by GP-SLCA algorithm. He gets the
fitness from step2. Those chromosomes set of non dominated solution that consist of 43 solutions.
with the better fitness will have chosen. On the other hand, in this paper, authors get 36 solutions.
(ii) With a preset crossover probability, By comparing these solutions, we perceive solution number
crossover operation will perform on the 36 in this paper can dominate the solution numbers 23,…,
selected parents and to form new 43 that get by Dimopoulos’algorithm. In the other solutions
offsprings (children). If no crossover that get by two algorithms, the solution is near to each
was performed, offsprings are the exact other.
copy of parents. Here, Multi-point
crossover is used while partially
VIII. CONCLUSION
matched crossover is employed for
Problem. This research aim to implementation of SPEA II algorithm
(iii) With a preset mutation probability, as a state of art method in multi objective problem. So, by
mutation will perform on new offspring this study authors want to show the efficiency of this
algorithm in CMS environment. As it can be seen in

254
previous section, authors compare this algorithm with GP- algorithm to comparing and presenting the best algorithm
SLCA that presented by Dimopoulos [10]. Authors suggest for this type of problems.
to researcher to study about NSGA II and another efficient

TABLE I. OBJECTIVE FUNCTION VALUE FOR THE SET OF NON-DOMINATED SOLUTION AND COMPARISON WITH DIMOPOULOS [10] RESULT

DIMOPOULOS GP- DIMOPOULOS GP-


Our GA-SPEA II Our GA-SPEA II
Solution SLCA Solution SLCA
No. Cell–load Total part Cell–load No. Total part Cell–load Total part Cell–load
variation moves variation  moves variation moves variation

1 2.016 25.8 2.016 25.8 23 1.115 83.1 0.763 94.8

2 1.822 28.6 1.822 28.6 24 1.105 83.3 0.741 111.3

3 1.769 34.5 1.665 31.7 25 1.078 84.2 0.739 122.5

4 1.665 35.2 1.661 32.1 26 1.008 84.3 0.738 122.9

5 1.661 35.6 1.634 33.8 27 1.008 85.9 0.635 123.6

6 1.634 38.7 1.613 34.1 28 1.003 89.6 0.621 131.2

7 1.565 43.9 1.565 38 29 0.989 94 0.482 132.5

8 1.509 44.4 1.558 38.8 30 0.989 94 0.417 148.8

9 1.507 45.7 1.48 40.4 31 0.902 98.7 0.378 156.2

10 1.476 47.7 1.472 42 32 0.845 100.8 0.364 162

11 1.472 51.8 1.456 44.6 33 0.843 104.5 0.362 170.8

12 1.373 55.3 1.383 45.5 34 0.842 108.2 0.31 170.9

13 1.346 58.2 1.315 49.9 35 0.168 113.6 0.3 174.8

14 1.315 60.4 1.228 53.2 36 0 113.7 0.28 180


- -
15 1.313 65 1.157 63.6 37 0.224 183.2
- -
16 1.312 66.1 1.136 69.2 38 0.185 186.4
- -
17 1.303 67.6 1.009 70.2 39 0.14 200.7
- -
18 1.28 68 0.997 70.3 40 0.128 208.8
- -
19 1.173 69.4 0.982 79.5 41 0.093 217.1
- -
20 1.159 76.4 0.932 82.8 42 0.051 230.2
- -
21 1.158 76.8 0.892 85 43 0 238.7

22 1.149 76.9 0.885 89.9  

255
TABLE II. MACHINE-CELL CONFIGURATION FOR THE SOLUTION IN TABLE I
Solution W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11 W12 W13 W14 W15
1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1 C1
2 C2 C1 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2 C2
3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C2 C3 C3 C1 C3
4 C1 C2 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3 C3
5 C3 C1 C3 C3 C3 C3 C3 C3 C3 C3 C2 C3 C3 C3 C3
6 C3 C1 C3 C3 C3 C3 C3 C2 C3 C3 C3 C3 C3 C3 C3
7 C4 C3 C4 C4 C4 C4 C4 C4 C4 C4 C2 C4 C4 C1 C4
8 C1 C2 C3 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4
9 C1 C2 C4 C4 C4 C4 C4 C4 C4 C4 C3 C4 C4 C4 C4
10 C4 C1 C4 C4 C4 C4 C4 C3 C4 C4 C2 C4 C4 C4 C4
11 C4 C1 C2 C4 C4 C4 C4 C3 C4 C4 C4 C4 C4 C4 C4
12 C2 C1 C3 C4 C5 C5 C5 C5 C5 C5 C5 C5 C5 C5 C5
13 C2 C1 C3 C5 C5 C4 C5 C5 C5 C5 C5 C5 C5 C5 C5
14 C1 C2 C3 C5 C5 C5 C5 C4 C5 C5 C5 C5 C5 C5 C5
15 C6 C1 C3 C6 C6 C6 C6 C5 C6 C6 C4 C6 C6 C6 C6
16 C5 C1 C5 C5 C5 C4 C5 C3 C5 C5 C2 C5 C5 C5 C5
17 C5 C1 C2 C5 C5 C3 C5 C4 C5 C5 C5 C5 C5 C5 C5
18 C2 C1 C3 C4 C5 C6 C6 C6 C6 C6 C6 C6 C6 C6 C6
19 C2 C1 C3 C4 C6 C6 C6 C5 C6 C6 C6 C6 C6 C6 C6
20 C1 C2 C3 C6 C6 C6 C6 C4 C6 C6 C5 C6 C6 C6 C6
21 C5 C1 C4 C7 C5 C5 C5 C3 C5 C5 C2 C5 C5 C5 C5
22 C1 C2 C3 C6 C6 C4 C6 C5 C6 C6 C6 C6 C6 C6 C6
23 C2 C1 C3 C4 C5 C6 C7 C7 C7 C7 C7 C7 C7 C7 C7
24 C2 C1 C3 C4 C5 C7 C7 C7 C7 C7 C6 C7 C7 C7 C7
25 C2 C1 C3 C4 C5 C7 C7 C6 C7 C7 C7 C7 C7 C7 C7
26 C1 C2 C3 C4 C7 C7 C7 C6 C7 C7 C5 C7 C7 C7 C7
27 C2 C1 C3 C4 C7 C6 C7 C5 C7 C7 C7 C7 C7 C7 C7
28 C1 C2 C3 C4 C7 C7 C7 C5 C7 C7 C7 C7 C6 C7 C7
29 C7 C1 C5 C3 C7 C6 C7 C4 C7 C7 C2 C7 C7 C7 C7
30 C7 C1 C5 C3 C7 C6 C7 C4 C7 C7 C2 C7 C7 C7 C7
31 C1 C2 C3 C4 C5 C8 C8 C7 C8 C8 C6 C8 C8 C8 C8
32 C1 C2 C3 C4 C8 C7 C8 C6 C8 C8 C5 C8 C8 C8 C8
33 C1 C2 C3 C4 C8 C8 C8 C6 C8 C8 C5 C8 C7 C8 C8
34 C1 C2 C3 C4 C8 C6 C8 C5 C8 C8 C8 C8 C7 C8 C8
35 C1 C2 C3 C4 C5 C7 C8 C7 C8 C8 C6 C8 C8 C8 C8
36 C2 C1 C3 C4 C5 C8 C9 C7 C9 C9 C6 C9 C9 C9 C9

REFERENCES
[1] Wemmerlov, U. and Johnson, D.J., Cellular manufacturing at 46 user [9] Gupta, Y.P., Gupta, M.C., Kumar, A. and Sundaram, C., A genetic
plants: implementation experiences and performance improvements. algorithm-based approach to cell composition and layout design
Int. J. Prod. Res., 1997, 35, 29–49. problems. Int. J. Prod. Res., 1996, 34, 447–482.
[2] Wemmerlov, U. and Johnson, D.J., Empirical findings in [10] Dimopoulos, C., Multi-objective optimization of manufacturing cell
manufacturing cell design. Int. J. Prod. Res., 2000, 38, 481–507. design. Int. J. Prod. Res., 2006, 44(22), 4855–4875.
[3] Mansouri, S.A., Moattar Husseini, S.M. and Newman, S.T., A review [11] Haupt,S.E., Haupt,R.L., 1998. Practical genetic algorithm, second
of the modern approaches to multi-criteria cell design. Int. J. Prod. edition, John Wiley.
Res., 2000, 38, 1201–1218. [12] C. M. Fonseca and P. J. Fleming. Genetic Algorithms for
[4] Dimopoulos, C. and Mort, N., Evolving knowledge for the solution of Multiobjective Optimization: Formulation, Discussion and
clustering problems in cellular manufacturing. Int. J. Prod. Res., 2004, Generalization. In S. Forrest, editor, Proceedings of the Fifth
42, 4119–4133. International Conference on Genetic Algorithms, pages 416–423,
[5] Zitzler, E. and Thiele, L., Multiobjective evolutionary algorithms: a San Mateo, California, 1993. University of Illinois at Urbana-
comparative case study and the Strength Pareto approach. IEEE Champaign, Morgan Kaufmann Publishers.
Trans. Evol. Comput., 1999, 3, 257–271. [13] J. Morse. Reducing the size of the nondominated set: Pruning by
[6] Chandrasekharan, M.P. and Rajagopalan, R., Groupability: analysis clustering. Computers and Operations Research, 7(1–2):55–66,
of the properties of binary data matrices for group technology. Int. J. 1980.
Prod. Res., 1989, 27, 1035–1052. [14] E. Zitzler, M. Laumanns, and L. Thiele. SPEA2: Improving the
[7] Kumar, C.S. and Chandrasekharan, M.P., Grouping efficacy: a Strength Pareto Evolutionary Algorithm. In K. Giannakoglou, D.
quantitative criterion for goodness of block diagonal forms of binary Tsahalis, J. Periaux, P. Papailou, and T. Fogarty, editors, EUROGEN
matrices in group technology. Int. J. Prod. Res., 1990, 28, 233–243. 2001. Evolutionary Methods for Design, Optimization and Control
[8] Miltenburg, J. and Zhang, W., A comparative evaluation of nine well- with Applications to Industrial Problems, pages 95–100, Athens,
known algorithms for solving the cell formation problem in group Greece, 2001.
technology. J. Oper. Manage. 1991, 10, 44–72.

256
2009 International Conference on Computer Engineering and Technology

A Formal Mapping between Program Slicing and Z Specifications

Fangjun Wu
School of Information Technology
Jiangxi University of Finance and Economics
NanChang, 330013, China
wufangjun@jxufe.edu.cn

Abstract transforming, model checking, and software security,


maintenance, reverse and reengineering, etc.
Although program slicing has been widely studied
This paper represents a research effort towards
in literatures, very little work is involved in its
the formal mapping between program slicing and Z
formalization [7]. Major difficulties in formalizing
specifications. General aspects of program slicing are program slicing lie in how to describe various
considered, i.e. definitions of program slicing, nodes definitions, and how to deal with program slicing
and edges of program dependence graphs, and algorithms. To help alleviate this situation, this paper
program slicing algorithms. With this approach, we represents a research effort towards the semantic
provide not only a precise semantic basis for program formalization for program slicing technique using Z
slicing but also a sound mechanism for reasoning and schema calculus [8-10]. The reasons for choosing the Z
verification about program slicing. notation are as follows. The specification language Z
includes both a means of specifying data types, based
on sets, and a means of specifying constrains using
predicate logic. The Z notation is used recently not only
1. Introduction in academic domain, but also for industrial
development of high-integrity systems such as safety-
Program slicing, originally introduced by Weiser critical software. Z has been used for a number of
M., is an effective technique for narrowing the focus of digital systems in a variety of ways to improve the
attention to the relevant parts of a program during the specifications of computer-based systems. Many
debugging process [1]. It is used to extract statements textbooks on Z are now available. The teaching of Z has
and predicates from original program P, which might become of increasing interest. It is thus attractive to
influence the variables of V at a special program point consider it used in formalization of program slicing.
p, and make a new program (called by slice), where <p,
V> is called slicing criterion. Thus we can analyze the
original programs P by the slice. The research, 2. A formal mapping between program
development and applications of program slicing slicing and Z specifications
technique have been carried out for more than twenty
years. Many researchers have done much in program
The most related concepts and definitions of
slicing, obtained lots of theoretical results, and
program slicing are known from [1] and [3], the former
developed lots of practical applications [2]. Till now,
due to Weiser M., while the latter due to Ottenstein K.
researchers have proposed forward slicing & backward
J., here referred to as Weiser’s slicing and Ottenstein’s,
slicing, static slicing & dynamic slicing,
respectively.
intraprocedural slicing [3] & interprocedural slicing [4],
Definition 1 Weiser’s slicing problem is stated as
sequence program slicing & current program slicing,
follows: For a given program point point and a set of
object-oriented program slicing, aspect-oriented
variables V in program P, find a projection Q of P by
progran slicing, conditioned program slicing, relevant
deleting zero or more statements that when P and Q
slicing, union slicing, hybrid slicing, amorphous slicing,
run on the same initial state, the sequences of states
denotational slicing, chopping, dicing, specification
that arise at point point in the two programs have
slicing [5,6] and so on. Nowadays, program slicing has
identical values for all variables in V, where Q is called
been widely used in program analyzing, understanding,
by slice, and <point, V> is called slicing criterion.
optimizing, debugging, testing, measuring, reusing,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 257


DOI 10.1109/ICCET.2009.122
Definition 2 Ottenstein’s slicing problem is stated
as follows: For a given point point and a set if variables
V in program P, a program slice is a subset of the
statements and control predicates of the program P that
directly or indirectly influence the variables of V at a
special program point point, where <point, V> is called
slicing criterion.
From Definition 1 and Definition 2, we know that
Weiser’s slice is executable, while Ottenstein’s slice
does not necessarily constitute an executable program.
Henceforth, unless explicitly stated, a program slice
implies Ottenstein’s slice.
To slice programs, an original program
OriginalProgram must exist. Generally, programs are
composed of statements and variables. Therefore, free Several formalisms have been used to represent
types Statement and Variable are introduced: program dependences, such as: program dependence
[Statement, Variable]. graphs (PDG), extended program dependence graphs,
system dependence graphs (SDG), value dependence
graphs, architectural dependence graphs, UML class
diagram dependence graphs and specification
dependence graphs (SpDG). Among them, program
dependence graph is the basic, while others are
extended on it by adding some specifical
characteristics. In following section, we will outline the
features of program dependence graphs. Although
different definitions of program dependence
representations have been given, they share some
common features. Two typical definitions of program
dependence graphs are Ottenstein’s definition[3] and
Horwitz’s[4]. Henceforth, unless explicitly stated,
program dependence graphs imply Horwitz’s.
Definition 3 Ottenstein’s program dependence
graph is composed of control dependence graph (CDG),
For Weiser’s slicing problem, if original program data dependence graph (DDG) and control flow graph
OriginalProgram and slice SliceProgram have the (CFG).
same initial state, then the sequences of states that arise Definition 4 Horwitz’s program dependence
at point point in OriginalProgram and SliceProgram graph is a modification of Ottenstein’s, and it is a
have identical values for all variables in VariableSet. directed graph whose nodes are connected by several
Thus two free types states of program States and values kinds of edges, namely control dependence edges, def-
of variables Value are introduced: [Value, States]. order dependence edges , loop independent edges and
Weiser’s slicing problem can be described using loop carried edges.
schema WeiserProgramSlicing. Free types are introduced to describe nodes and
edges respectively: [Node, Name, Line, Arc].
For the Ottenstein’s slicing problem, given slicing A node has a shape. Node_Shapes will normally
criterion <point, VariableSet>, to assure that slices be an enumerated type which holds the possible shapes
contain all of statements that might affect values for all that nodes can have on a given graph type.
variables in VariableSet, a Boolean type Affect::=Yes | Node_Shapes::=circle | ellipse
No is introduced to decide whether the variable is The node will also have a type.
affected or not, in which Yes means that the variable is Node_Types::=entry | assignment |
affected, No means not. The Ottenstein’s slicing controlpredicate | InitialState | FinialUse | others
problem can be described using schema Many of the characteristics of dependence edges
OttensteinProgramSlicing. are similar to those of a node. Similarly, dependence
edge also has shape, and their possible shapes can be
described by the enumerated set Arc_Shapes.

258
Arc_Shapes::=solid | solid_with_a_hash_mark | dashed For the reason that program dependence graphs
| medium_boldface | heavy_boldface are the basic, we will take them as example to discuss
Similarly, dependence edges have type, too, and in the following part. All kinds of nodes and edges are
their possible types can be described by the depicted respectively.
enumerated set Arc_Types. Firstly, nodes entry are formalized by schema
Arc_Types::=loop_carried_flow_dependence|loop_ind EntryNode.
ependence_flow_dependence | def_order_dependence | Secondly, initial state and final use of variables are
control_dependence formalized by schemas InitialStateNode and
In addition, in order to specify whether an arc is FinalUseNode respectively.
directional or not, we can add arrowhead to it. There
are two possible types of end: plain and arrow.
Ends::=plain | arrow
Although there are a lot of different kinds of
nodes, they have some common features. We define
these common features as a generic node, represented
by state schema GenericNodes. Declaration part
contains name, shape, type of nodes.

Similarly, different kinds of edges also have some


common features. We define these common features as
a generic arc, represented by state schema GenericArcs.
Declaration part contains name, shape, type, direction
of nodes, the source and target of dependence edges,
whether an arrowhead is included or not, etc.

Similarly, nodes assignment and nodes


controlpredicate are formalized by schemas
AssignmentNode and ControlPredicateNode
respectively.

259
algorithms line, on which our work in this paper is also
based. This operation can still be performed in time
linear in the size of the slice by performing a single
traversal of the PDG starting from the set of points,
which can be formalized by schema SlicingPDG.

After formalized various kinds of nodes, we are


going to formalize control dependence edges, which
are formalized by schema ControlDependenceArc.

3. Conclusions

This paper represents a research effort towards the


semantic formalization for program slicing technique
using Z schema calculus. All schemas in this paper are
checked using the ZTC type-checker package [11] and
Z User Studio[12]. This formalization could be helpful
On the basis of formalization of nodes and edges, in correct understanding of different types of slicing
we will formalize program dependence graphs by and also the correct application of a desired slicing
schema PDG. regime in a rigorous way. Furthermore, there are a
number of existing tools on the market which do
manipulate Z specifications (for example, to perform
type-checking). Hence inference and verification of
program slicing become possible.

Acknowledgements
This research has been supported by the Natural
Science Foundation of Jiangxi (Project No.
2007GQS0495) and Science and Technology
Foundation of the Education Department of Jiangxi
(Project No. GJJ08353 and [2007] 434).

References
So far, two methods of computing program slices [1] Weiser M, “Program slicing”, IEEE Transactions on
Software Engineering, vol.16, no.5, pp. 498-509, 1984.
have been developed. One is the Weiser’s method, [2] Tip F, “A survey of program slicing techniques”,
which iteratively solves dataflow equations derived Journal of Programming Languages, vol. 3, no. 3, pp.
from inter-statement influence[1]. The other lays its 121-189, 1995.
base on graph reachability algorithms[4]. Many [3] Ferrante J., Ottenstein K. J., Warren J. D., “The program
researchers are doing work along the graph reachability dependence graph and its use in optimization”, ACM

260
Transactions on Programming Languages and Systems, [9] International Standards Organization, Z formal
vol. 9, no. 3, pp. 319-349,1987. specification notation-syntax, type system and semantics.
[4] Horwitz S., Reps T., Binkley D., “Interprocedural ISO/IEC 13568, 2002.
slicing using dependency graphs”, ACM Transactions http://web.comlab.ox.ac.uk/oucl/work/andrew.martin/zst
on Programming Languages and Systems, vol. 12, no. 1, andards/
pp. 26-60,1990. [10] Miao Huaikou, Li Gan, Zhu Guanming, Software
[5] Wu Fangjun, Yi Tong, “Slicing Z specifications”, ACM engineering languageZ. Shanghai: Shanghai
SIGPLAN Notices, vol. 39, no. 8, pp. 39-48,2004. Science and Technology Information Publishing House,
1999.
[6] Wu Fangjun, Research on Z formal specifications
slicing. Jiangxi nanchang: Jiangxi university of finance [11] Jia X, ZTC: A Type Checker for Z Notation. User’s
& economics, 2006. Guide. Version 2.03, August 1998. Division of Software
Engineering, School of Computer Science,
[7] Danicic S, Binkley D, Gyimothy T, Harman M, Telecommunication, and Information Systems, DePaul
KissAkos O L., “Formalizing executable dynamic and University, USA, 1998.
forward slicing”, Proceedings of 4th Workshop on
Source Code Analysis and Manipulation (SCAM 2004), [12] Miao Huaikou, Liu Ling, Yu Chuanjiang, Ming Jijun,
pp.43-52, September 2004. Lili, “Z User Studio: an integrated support tool for Z
specifications”, APSEC 2001, pp. 437-444, December
[8] Spivey J. M., The Z notation: a reference manual: 2001.
second edition. London: Prentice Hall, 1992.

261
2009 International Conference on Computer Engineering and Technology

Modified Class-Incremental Generalized Discriminant Analysis

Yunhui He
Department of Communications Engineering
Nanjing University of Information Science and Technology
Nanjing, China, 210044
yunhuihe@163.com

Abstract—In this paper, we propose an efficient method for method GS-DS GDA as an abbreviation. Because there is no
resolving the optimal discriminant vectors of Generalized need to compute the mean of classes and the mean of total
Discriminant Analysis (GDA) and point out the drawback of samples in GS-DS GDA as needed in the class-incremental
high computational complexity in the traditional class- GDA, the computational complexity is thus reduced greatly.
incremental GDA [W. Zheng, “Class-Incremental Generalized In the next section, the Gram-Schmidt orthogonalization
Discriminant Analysis”, Neural Computation 18, 979–1006 in feature space is introduced in Section 2. The batch GS-DS
(2006)]. Because there is no need to compute the mean of GDA algorithm and class-increment algorithms are proposed
classes and the mean of total samples in the proposed method and the theoretical justification is proofed in Section 3 and 4
as needed in the traditional class-incremental GDA, the
respectively. The conclusions are drawn in Section 5.
computational complexity is reduced greatly. The theoretical
justifications of the proposed batch GDA and the class- II. GRAM-SCHMIDT ORTHOGONALIZATION IN FEATURE
incremental GDA are presented in this paper.
SPACE
Keywords- class-incremental generalized discriminant In kernel method, the samples are transformed into an
analysis; orthogonalization; difference space; kernel method implicit higher dimensional feature space F though a
nonlinear mapping Φ(x) . In implementation, the implicit
I. INTRODUCTION features vector in F dose not need to be computed
The classical linear discriminant analysis (LDA) [1] was explicitly, and it is just done by computing the inner product
nonlinearly extended to the Generalized discriminant of two vectors in F with a kernel
analysis (GDA) [2] by mapping the samples from input
function k ( x, y ) = Φ ( x ) T Φ ( y ) [3,4]. Let the sample matrix
space to a high-dimensional feature space via the kernel trick
[3,4]. However, the LDA often encounters the small sample be X = [ x1 ,..., xn ] which becomes
size (SSS) problem [5] when the dimensionality of samples
is greater than the number of samples. The GDA methods
X Φ = [Φ( x1 ),..., Φ( x n )] in feature space.
also suffers from this problem since the dimensionality of By using QR decomposition, the matrix X Φ can be
samples in feature space is much greater than the number of expressed as
the samples. A numerous methods have been proposed to
deal with the SSS problem of LDA [6-8] for resolving the X Φ = QR (1)
optimal discriminant vectors in the range space of total where Q is column orthogonal matrix and R is an upper
scatter matrix and the null space of within-class scatter triangular matrix
matrix. For solving GDA, the traditional approach is the use Because the columns of matrix Q are orthonormal, we
of the singular value decomposition (SVD) [2]. However, the
have
SVD-based GDA algorithms suffer from the numerical
instability problem due to the numerical perturbation [9]. K = X ΦT X Φ = R T Q T QR = R T R (2)
Recently, Zheng [10] proposed a numerically stable where K is a n × n kernel matrix which can be computed
algorithm for batch GDA and class-incremental GDA in the
case of the small sample size problem by applying only QR using kernel function as ( K ) ij = k ( xi , x j )
decomposition in feature space. However, the algorithms in K is symmetric positive semi-definite matrix. From
[10] are not optimal in terms of computational complexity (2), the triangular matrix R can be obtained by performing
because the mean of classes and the mean of samples must
be computed before the QR decomposition is applied. To Cholesky decomposition of K [11].
overcome this drawback, in this paper, we propose an If samples are linearly independent, then upper
efficient method to resolving the optimal discriminant triangular matrix R is positive definite and we obtain
vectors of the batch GDA and class-incremental GDA X Φ R −1 = Q (3)
respectively, by directly performing the Gram-Schmidt (GS) From above analysis, we can see that performing the
orthogonalization procedure [11] in the difference space Gram-Schmidt orthogonalization in feature space is actually
(DS) [12] using the kernel trick. We call the proposed

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 262


DOI 10.1109/ICCET.2009.28
equivalent to performing a Cholesky decomposition of the of covariance matrix S i of class i . This relation can be
kernel matrix K .
further expressed as
III. THE BATCH GS-DS GDA ALGORITHM R(SiΦ ) = span{Φ(b1i ),...,Φ(bnii −1 )} i = 1,...,C (10)
In the traditional class-incremental GDA algorithm, the Let all samples be
column vectors (Eq. (4.9) in [10]) used for solving GDA are
not optimal, because the mean of classes and the mean of {Φ(x11),...,Φ(x1n1 ),Φ(x12 ),...,Φ(xn22 ),...,Φ(x1C ),...,Φ(xnCC )} .
total samples must be computed, which thus leads to a great The n −1difference vectors are computed as
increase of computational complexity. To overcome this
Φ(d l1 ) = Φ( xl1+1 ) − Φ( x11 ) for class 1,
drawback, in this section, we propose the optimal vectors on
which the orthogonalization is performed for resolving the where l = 1,2,..., n1 − 1
optimal discriminant vectors of the batch GDA. Φ (d kii ) = Φ ( xki i ) − Φ ( x11 ) for class i = 2,..., C , where
Let the training set has C classes, where each class i has
ki = 1,2,..., ni
ni samples and the number of total samples is n = ∑i=1 ni .
C (11)
Likewise, these n −1 difference vectors span the
Let Φ ( xki ) be kth sample in ith class. μiΦ and μ Φ are the difference space which equals the space of all eigenvectors
mean of classes and the mean of total samples respectively. corresponding to the nonzero eigenvalues of covariance
All samples are independent. The between class scatter matrix S tΦ of total samples. From this relation we obtain
matrix S bΦ , within-class scatter matrix S wΦ and total scatter
R(StΦ ) = span{Φ(d11 ),...,Φ(dn11 −1 ), Φ(d12 ),
matrix S tΦ are defined as: (12)
C ...,Φ(dn22 ),...,Φ(d1C ),...,Φ(dnCC )}
S bΦ = ∑ ni ( μ iΦ − μ Φ )( μ iΦ − μ Φ ) T (4)
i =1 By comparing the definitions in (11) and (9), we obtain
C ni C
Φ(d l1 ) = Φ( xl1+1 ) − Φ( x11 ) = Φ(bl1 ) for class 1 where
SwΦ = ∑∑(Φ( xmi ) − μiΦ )(Φ( xmi ) − μiΦ )T = ∑ SiΦ (5)
i=1 m=1 i=1 l = 1,2,..., n1 − 1
C ni
StΦ = ∑∑(Φ(xmi ) − μΦ )(Φ(xmi ) − μΦ )T = SbΦ + SwΦ (6) Φ(dkii ) = Φ( xki i ) − Φ( x11) = (Φ( xki i ) − Φ(x1i )) +
i=1 m=1
Ni ni
(Φ(x1i ) − Φ(x11)) = Φ(bkii −1) + Φ(d1i )
where SiΦ = ∑∑(Φ( xmi ) − μiΦ )(Φ( xmi ) − μiΦ )T is the for class i = 2,..., C where ki = 2,..., ni (13)
m=1 m=1
From (8) and (10), we obtain
covariance matrix of class i .
C
The ranks of S bΦ , S wΦ and S tΦ are C −1, n− C and n −1 R(SwΦ ) = ∪ R(SiΦ ) = {Φ(b11),...,Φ(bn11−1),
i =1 (14)
respectively for independent samples.
Because S wΦ and S tΦ are positive semidefinite matrices, Φ(b ),...,Φ(b
2
1
2
n2 −1 ),...,Φ(b ),...,Φ(b
C
1
C
nC −1 )}
from Eq.(5), we have Now we rearrange all difference vectors
C Φ(d ) ( i =1,...,C, ki = 1,2,...,ni ) in sequence as follows
i
ki
N ( S wΦ ) = ∩ N ( S iΦ ) (7)
i =1 { Φ ( d 11 ),..., Φ ( d n11 −1 ), Φ ( d 22 ) − Φ ( d 12 ),...,
which leads to
C C Φ ( d n22 ) − Φ ( d 12 ),..., Φ ( d 2C ) − Φ ( d 1C ),..., (15)
Φ Φ ⊥ Φ ⊥ Φ
R(S ) = N (S ) = (∩ N (S )) = ∪ R(S ) (8)
w w
i =1
i
i =1
i
Φ ( d nCC ) − Φ ( d 1C ), Φ ( d 12 ),..., Φ ( d 1C )}
From the definition of difference space [12], the following From (13), it can be seen that the vectors in (15) equal in
ni − 1 difference vectors span the difference space of class sequence
i in feature space: {Φ(b11 ),...,Φ(bn11−1 ),Φ(b12 ),...,Φ(bn22 −1 ),...,Φ(b1C ),
Φ ( bkii ) = Φ ( xki i +1 ) − Φ ( x1i ) ( ki = 1,..., ni − 1) (9) (16)
...,Φ(bnCC −1 ),Φ(d12 ),...,Φ(d1C )}
From the relation in [12], these ni − 1 difference vectors From (14) and (16), it can be seen that the leftmost n − C
span the difference space of class i which equals the space Φ
vectors in (12) span the R( S w ) .
of all eigenvectors corresponding to the nonzero eigenvalues
Since from (12) all n −1 vectors in (15) span the
R( StΦ ) and leftmost n − C vectors span R( S wΦ ) , by

263
performing Gram-Schmidt orthogonalization procedure on
⎡0 0 0⎤
vectors in (15), the last C −1 orthonormal vectors lie in ⎢1 0 0 ⎥⎥ n1 th row
R ( S tΦ ) ∩ N ( S wΦ ) which are exactly the optimal ⎢
discriminative vectors searched by GDA/KGS method in ⎢ 1 ⎥ ( n1 + n 2 ) th row
BC +1 ( n −1)× ( C −1) =⎢ ⎥
[10]. ⎢ 0 ⎥ C −1
To summarize above derivation, the n −1 difference ⎢ 1 ⎥ ∑ n k th row
vectors in (12) can be represented as follows ⎢ ⎥ k =1
[ Φ ( d 11 ),..., Φ ( d n11 −1 ),..., Φ ( d 12 ),..., Φ ( d n22 ),..., ⎢⎣ 0 0 0 ⎥⎦
The other elements of the matrix B are zeros.
Φ ( d 1C ),..., Φ ( d nCC )]
(17) DΦ = [Φ(d11 ),...,Φ(d n11 −1 ), Φ(d 22 ) − Φ(d12 ),...,
= [ Φ ( x ),..., Φ ( x ), Φ ( x ),..., Φ ( x ),...,
1 1 2 2
1 n1 1 n2
Φ(d n22 ) − Φ(d12 ),...,Φ(d 2C ) − Φ(d1C ),...,
Φ ( x ),..., Φ ( x )] A
C C

Φ(d nCC ) − Φ(d1C ), Φ(d12 ),...,Φ(d1C )]


1 nC (19)
where
⎡− 1 − 1 − 1⎤ = [Φ( x11 ),...,Φ( x1n1 ), Φ( x12 ),...,Φ( xn22 ),...,
⎢1 0 0 ⎥⎥
⎢ Φ( x1C ),...,Φ( xnCC )]AB = X Φ AB
⎢ 0 1 ⎥
A n × ( n −1 ) = ⎢ ⎥ To perform the orthogonalization in feature space on the
⎢ 0 ⎥ column vectors of matrix DΦ in (19), we need to compute
⎢ 0 ⎥
⎢ ⎥ the kernel matrix
⎣⎢ 0 0 1 ⎦⎥
The vectors in (15) can be represented as follows
KD = DΦT DΦ = BT AT X ΦT X Φ AB = BT AT KAB. (20)
where K = X Φ X Φ
T
[Φ(d11 ),...,Φ(dn11−1 ),Φ(d22 ) − Φ(d12 ),...,
Then performing Cholesky decomposition of K D
Φ(dn22 ) − Φ(d12 ),...,Φ(d2C ) − Φ(d1C ),...,
K D = RDT RD (21)
Φ(dnCC ) − Φ(d1C ),Φ(d12 ),...,Φ(d1C )] (18) where R D is the triangular matrix.
=[Φ(d11 ),...,Φ(dn11−1 ),...,Φ(d12 ),..., The orthonormal vectors are
Q D = [q1Φ , q 2Φ ,..., q nΦ−C +1 ,..., q nΦ−1 ] = DΦ R D−1 (22)
Φ(d ),...,Φ(d ),...,Φ(d )]B
2
n2
C
1
C
nC For a given sample x , the nonlinear optimal
where discriminative feature is computed as follows
B( n−1)×( n−1) = [ B1 , B2 ,..., BC , BC +1 ] yΦ = QDT Φ( x) = ( RD−1 )T DΦT Φ( x) = ( RD−1 )T K x (23)
⎡1 0 0⎤ where the n-1 by 1 column vector K x = DΦT Φ(x) is
⎢0
⎢ 1 0 ⎥⎥ computed using kernel function,
B1 ( n −1)× ( n1 −1) =⎢ ⎥ K x = DΦT Φ( x) = BT AT X ΦT Φ ( x)
⎢ ⎥
⎢ 1 ⎥ ( n1 - 1)th row = B T AT [k ( x11 , x),..., k ( x1n1 , x), k ( x12 , x),..., (24)
⎢⎣ 0 0 0 0 ⎥⎦
m −1
k ( xn22 , x),..., k ( x1C , x),..., k ( xnCC , x)]T
⎡− 1 − 1 − 1⎤ ∑ n k th row Then the last C-1 elements of vector yΦ is the
⎢1 0 0 ⎥⎥ k =1
⎢ nonlinear optimal discriminative feature of sample x
⎢0 1 ⎥ y opt = [ y Φ n − C +1 ,..., y Φ n −1 ]T
Bm ( n −1)×( nC −1) =⎢ ⎥
0 1⎥ The batch GS-DS GDA is summarized as follows
⎢ (1) Compute the matrix A, B in (17), (18) and kernel
⎢ ⎥
⎢ ⎥ matrix K using kernel function in (20).
⎣⎢ 0 0 0 ⎦⎥ (2) Compute the kernel matrix KD in (20).
(3) Performing Cholesky decomposition of KD in (21) to
where m=2,3,…,C obtain the upper triangular matrix RD.
(4) Compute the nonlinear optimal discriminative

264
feature using (23) and (24). C
It can be seen from above algorithm that there is no need ⎡− 1 − 1 − 1⎤ ∑ nk th row
to compute the mean of classes and the mean of total ⎢1 0 0 ⎥⎥ k =1
samples as needed in the GDA/KGS in [10]. The ⎢
computational cost of the GS-DS GDA is thus saved greatly.
~ ⎢0 1 ⎥
IV. CLASS-INCREMENTAL GS-DS GDA
BC +1( n−1)×( nC +1 −1) =⎢ ⎥
⎢ 0 ⎥
In this section, we propose the class-incremental GS-DS ⎢ 0⎥
GDA algorithm in cases where a new class is inserted into
⎢ ⎥
the data set. The class-incremental GDA proposed in [10] is ⎢⎣ 0 0 0 ⎥⎦
time-consuming because the mean of total mean and the
mean of new class must be computed when a new class is C +1
dynamically added into the data set. However, in the class- where n = ∑k =1
nk
incremental GS-DS GDA, this drawback is overcome.
C +1
Let xi be i th samples in the new class C+1. The ⎡0 0 0⎤
⎢1 0 ⎥⎥ n1 th row

C +1 0
number of total samples becomes n = ni . ⎢
⎥ ( n1 + n 2 ) th row
i =1
⎢ 1
( n −1 )× C = ⎢
The Eq.(17) becomes BC +2 ⎥
[Φ (d11 ),..., Φ (d n11 −1 ),..., Φ(d12 ),..., Φ(d n22 ),..., ⎢ 0 ⎥ C
⎢ 1 ⎥ ∑ n k th row
Φ(d1C ),..., Φ(d nCC ), Φ (d1C +1 ),..., Φ (d nCC++11 )] ⎢ ⎥ k =1
(25) ⎢⎣ 0 0 0 ⎥⎦
= [Φ ( x ),..., Φ ( x ), Φ( x ),..., Φ( x ),...,
1
1
1
n1
2
1
2
n2 The other elements of the matrix B are zeros.
~ The difference vectors in Eq.(19) become
Φ( x1C ),..., Φ ( xnCC ), Φ( x1C +1 ),..., Φ( xnCC++11 )] A ~
DΦ = [Φ(d11 ),...,Φ(dn11−1 ),Φ(d22 ) − Φ(d12 ),...,
⎡− 1 − 1 − 1⎤
Φ(dn22 ) − Φ(d12 ),...,Φ(d2C ) − Φ(d1C ),...,
⎢1 0
⎢ 0 ⎥⎥
n = ∑i =1 ni Φ(dnCC ) − Φ(d1C ),Φ(d2C+1 ) − Φ(d1C+1 ),...,
C +1
where ~ ⎢0 1 ⎥
An×( n −1) =⎢ ⎥ (27)
⎢ 0 ⎥ Φ(dnCC++11 ) − Φ(d1C+1 ), Φ(d12 ),...,Φ(d1C ), Φ(d1C+1 )]
⎢ 0⎥
⎢ ⎥ = [Φ(x11 ),...,Φ(x1n1 ),Φ(x12 ),...,Φ(xn22 ),...,
⎢⎣ 0 0 1 ⎥⎦
~~ ~ ~~
The Eq.(18) becomes Φ(x1C ),...,Φ(xnCC ),Φ(x1C+1 ),...,Φ(xnCC+1 )]AB = X Φ AB
[Φ(d11),...,Φ(dn11−1 ),Φ(d22 ) − Φ(d12 ),..., We obtain the kernel matrix K D~
Φ(d ) − Φ(d ),...,Φ(d ) − Φ(d ),...,
2 2 C C ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~ ~
n2 1 2 1 KD~ = DΦT DΦ = BT AT XΦT XΦ AB = BT AT KAB (28)
C+1 C+1
Φ(d ) − Φ(d ),Φ(d ) − Φ(d
C
nC
C
1 2 1 ),..., where
~ ~ ~
C+1 C+1 C+1
(26) K = X ΦT X Φ (29)
Φ(d nC+1 ) − Φ(d 1 ),Φ(d ),...,Φ(d ),Φ(d )]
2
1
C
1 1
Then performing Cholesky decomposition of K D~
=[Φ(d11 ),...,Φ(dn11−1 ),...,Φ(d12 ),...,Φ(dn22 ),...,
K ~
D
= R T
~
D
R ~
D
(30)
~
Φ(d1C ),...,Φ(dnCC ),Φ(d1C+1 ),...,Φ(dnCC++11 )]B where RD~ is the triangular matrix.
where The orthonormal optimal discriminant vectors of class-
~ ~
B( n −1)×( n −1) = [ B1 , B2 ,..., BC , BC +1, BC + 2 ] incremental GS-DS GDA are
~
where B1 , B2 ,..., BC are the same as in (18). QD~ =[q~1Φ , q~2Φ ,...,q~nΦ−C ,...,q~nΦ−1 ] = DΦ RD−~1 (31)
~ The optimal discriminative feature of GDA can be
The BC +1 is a ( n − 1) × ( n C +1 − 1) matrix and BC + 2 is a
obtained as in batch GS-DS GDA using the Q D~ .
( n − 1) × C matrix as follows
We can see that the kernel matrix K in (20) can be
~
reused in the kernel matrix K in (29), and the matrices

265
~ ~ REFERENCES
A and B can be reused in A and B in the case of class-
increment. Thus, the computational cost for solving the [1] Duda, R. O., & Hart, P. E.. Pattern classification and scene analysis.
class-increment GDA is saved greatly. New York: Wiley, 1973.
The class-incremental GS-DS GDA is summarized as [2] Baudat, G., & Anouar, F.. Generalized discriminant analysis using a
kernel approach. Neural Computation, 2000, 12, 2385–2404.
follows
[3] Sch¨olkopf, B., Smola, A., & M¨ uller, K. R.. Nonlinear component
(1) Compute the matrices A~ , B~ in (25), (26)and kernel analysis as a kernel eigenvalue problem. Neural Computation, 1998,
~ 10, 1299–1319.
matrix K using kernel function in (29).
[4] S.T. John and C. Nello, Kernel Methods for Pattern Analysis,
(2) Compute the kernel matrix K ~
D in (28). Cambridge University Press, 2004.
[5] P.N Belhumeur, J.P. Hespanha, and D.J. Kriegman, “Eigenfaces vs.
(3) Performing Cholesky decomposition of K ~
D
in (30) Fisherfaces: Recognition Using Class Specific Linear Projection,”
IEEE Trans. PAMI, , 1997 vol.19, no.7, pp.711-720.
to obtain the upper triangular matrix R D~ . [6] Chen, L. F., Liao, H. Y. M., Ko, M. T., Lin, J. C., & Yu, G. J.. A new
Compute the nonlinear optimal discriminative feature LDA-based face recognition system which can solve the small
sample size problem. Pattern Recognition, 2000, 33, 1713–1726.
using the last C column vectors of QD~ . [7] R. Huang, Q. Liu , H. Lu, and S. Ma, “Solving the Small Size
Problem of LDA”, Proc. 16th Int’l Conf. Pattern Recognition, 2000,
V. CONCLUSIONS vol.3, pp.29-32.
[8] Zheng, W., Zhao, L., & Zou, C.. An efficient algorithm to solve the
We have proposed an efficient method to resolving the small sample size problem for LDA. Pattern Recognition, 2004a, 37,
optimal discriminant vectors of the batch and class- 1077–1079.
incremental GDA for the small sample size problem, by [9] Fukunaga, K.. Introduction to statistical pattern recognition. Orlando,
performing the orthogonalization procedure in feature space FL: Academic Press, 1990.
only once on difference vectors. The theoretical justifications [10] W. Zheng, “Class-Incremental Generalized Discriminant Analysis”,
are presented. Since there is no need to compute the class Neural Computation, 2006, 18, 979–1006.
means and total mean of sample as needed in the traditional [11] G.H. Golub, C.F.V. Loan. Matrix Computations, 3rd Edition. The
class-incremental GDA, the proposed algorithms are more Johns Hopkins University Press,USA, 1996.
efficient. In the class-incremental GS-DS GDA, the most [12] M.B. Gülmezoglu, V. Dzhafarov and A. Barkana, “The common
computational results can be reused when a new class is vector approach and its relation to principal component analysis,”
IEEE Trans. Speech and audio processing, 2001, vol.9, no.6, pp.655-
dynamically inserted into the data set. Thus, the 662.
computational complexity is reduced greatly compared with
the traditional class-incremental GDA.

266
2009 International Conference on Computer Engineering and Technology

Controlling Free Riders in Peer to Peer Networks by


Intelligent Mining

Ganesh Kumar. M Arun Ram. K Ananya A.R


Computer Science and Computer Science and Computer Science and
Engineering Engineering Engineering
Sri Venkateswara College of Sri Venkateswara College of Sri Venkateswara College of
Engineering, Sriperumbudur Engineering, Sriperumbudur Engineering, Sriperumbudur
Chennai, India Chennai, India Chennai, India
mganeshmail@gmail.com arun@websrs.org ar_ananya@yahoo.co.in

Abstract—In a typical Peer to Peer system, each node is owned research on developing mechanisms to maintain or enhance
and operated by an independent entity, and the nodes the quality of data is yet to receive much attention from the
collectively form a self-organizing, self-maintaining network P2P research community.
with no central authority. The peer to peer Technology has
This problem is exemplified by the phenomenon of
attracted a significant amount of interest because of its
free riding in many P2P file sharing systems. A recent study
capacity for resource sharing and content distribution. The
existence of high degree of free riding is a serious threat to P2P
on Gnutella file sharing system shows that as many as 70%
network. This paper deals with the issue of identifying free of its users don't share any files at all. This means that these
riders and other kind of peers who subvert the system. users use the system for free. This behavior of an individual
Additionally, this paper also proposes a basic data warehouse user who uses the system resources without contributing
structure for a peer to peer system and analyzes peer behavior anything to the system is the first form of the Free Riding
using data mining functionalities. Results prove that the free problem. Such users are referred to as free riders. The study
riders and malicious peers get automatically eliminated from further indicates that not all file sharers share popular and
the system.
desirable files. It shows that as many as 63% of the peers,
Key Words- Data mining; peer to peer network; Free Riders; who shared some files, never answered a single query. This
Malicious peers; Reputation implies that these file sharers did not share any desirable
files. This is a second form of the Free Riding problem,
I. INTRODUCTION wherein users share some files that are not useful.
The free riding problem affects the system in two
The advent of peer-to-peer (P2P) file sharing systems
significant ways. First, the number of files in the system
heralds a new era in the field of Internet technology. While
becomes limited or grows very slowly. The number of
these systems alleviate the scalability problem that has
popular files may become even smaller as the time goes by.
dogged the client-server model, they present new data
This adversely affects user's interest in the system and they
management problems. It is widely believed that the success
eventually pull out of the system. When users who share
of P2P file sharing systems depends upon the quality of
popular files pull out of the system, the system becomes
service offered by such systems. Accordingly most of the
poorer in terms of the amount of files shared. This is a
present research in P2P systems has been concentrated on
unproductive cycle and it may eventually lead to the
issues such as efficient data placement, fast file lookup, data
collapse of the system. Second, if only a few peers share
replication etc.
popular files, all the downloading requests are directed
We argue that, in addition to the quality of service,
towards those peers. This causes those peers to become hot
there is another key aspect that impacts the success and
spots, overloading their machines and causing congestion on
continued sustenance of P2P systems. It is the quality of the
their network. Peers frequently experiencing CPU overloads
data present in the system. For a file sharing system, no
or network congestion due to the P2P system may exit the
matter how excellent the lookup capabilities of a system are,
system if it affects their other routine activities.
or what file download speeds it offers, if the system does
In order to maintain the productivity and ensure the
not have a large and growing number of interesting files, it
healthiness of a P2P file sharing system, there is a need for
will eventually fail to attract or retain users. Unfortunately,
mechanisms that can help in securing cooperation from its

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 267


DOI 10.1109/ICCET.2009.109
users by encouraging them to share popular files. periodic data refreshing. A data warehouse is usually
Surprisingly, none of the existing P2P file sharing systems, modeled by a multidimensional database structure, where
to our knowledge, offer or incorporate mechanisms that each dimension corresponds to an attribute or a set of
effectively encourage their users to share files of interest attributes in the schema, and each cell stores the value of
with other users in the system. some aggregate measure, such as count or sales amount. The
In this paper, we explore a new approach that actual physical structure of a data warehouse may be a
integrates Data Mining with Peer to peer system which relational data store or a multidimensional data cube. It
attempts to discover and extract new knowledge from the provides a multidimensional view of data and allows the
recorded data and information. This data is normally stored pre-computation and fast accessing of summarized data.
in databases, and can be of different nature such as peer id Fig.1 gives a basic description of how a data cube for a peer
and reputation of the peer. The knowledge learned is in a P2P network look like. The peers with whom the peer i
represented in forms of rules, such as classification rules, has interacted is given in X-axis, the reputation gained is
prediction rules, association rules or clusters of rules. These given in Y-axis, time is given in Z-axis.
results can be often used for identifying the peer behavior.
A. Data warehousing Operations
II. RELATED WORK 1. Roll-up: The roll-up operation (drill-up) performs
aggregation on a data cube, either by climbing-up a concept
[1] explains the details about various problems in
hierarchy for a dimension or by dimension reduction
peer to peer networks and how they can be solved using
2. drill-down: Drill-down is the reverse of roll-up. It
reputation concepts. [4] Mainly concentrates on the various
navigates from less detailed data to more detailed data.
issues concerning free riding and gives us the formulas to
Drill-down can be realized by either stepping-down a
identify the free riders based on the popularity, size and
concept hierarchy for a dimension or introducing additional
number of files shared by a peer. [2] and [3] give a broad
dimensions.
outlook of a distributed way of identifying and isolating the
3. Slice and Dice: The slice operation performs a selection
free riders in the peer to peer system.
on one or more dimension of the given cube, resulting in a
III. DATA WAREHOUSE FOR PEER TO PEER sub cube.
4. Pivot (rotate): Pivot is a visualization operation which
SYSTEMS
rotates the data axes in view in order to provide an
alternative presentation of the data.

B. Super Marts
The main highlight of Peer to Peer Computing is its
distributiveness. The properties of data marts and
distributiveness can be easily cross produced to evolve a
new concept of Super Marts. In Kazaa, all peers are
clustered into groups and a Super peer is assigned to every
group. The main role of the super peer is to monitor the
activities taking place in the particular group. We propose a
new concept of using data marts for these super peers so that
the activities of the group can be effectively managed. The
super marts are directly controlled by a central Data
Warehouse called Super Warehouse. The main task of Super
Fig.1 Data cube for a Peer to peer network Warehouse is to periodically update the information about
the peer’s activities. The interaction between the super peer
(with respect to KAZAA network), Super Mart and Super
A data warehouse is a repository of information
Warehouse enables the system to identify and eliminate the
collected from multiple sources, stored under a unified
peers exhibiting malicious behavior. [7]At the same time
schema, and which usually resides at a single site. Data
good peers who effectively increase the life time of the
warehouses are constructed via a process of data cleansing,
system are awarded with certain incentives.
data transformation, data integration, data loading, and

268
whose cheated lesser than 5 times. The techniques used for
data discrimination are very similar to the techniques used
for data characterization with the exception that data
discrimination results include comparative measures.

C. Association analysis
Association analysis is the discovery of what are
commonly called association rules. It studies the frequency
of items occurring together in transactional databases, and
based on a threshold called support, identifies the frequent
item sets. Another threshold, confidence, which is the
conditional probability than an item appears in a transaction
when another item appears, is used to pinpoint association
rules. For example, a peer is interested to know what move
Fig. 2. Super mart and Super warehouse
the peer is going to take if he is going to download a file.
IV. DATA MINING IN P2P For this the peer need to analyze the opponent peers history.
With all these information the peer can easily find the next
The kinds of patterns that can be discovered move. The discovered association rules are of the form: P -
depend upon the data mining tasks employed. By and large, > Q [s,c], where P and Q are conjunctions of attribute value-
there are two types of data mining tasks: descriptive data pairs, and s (for support) is the probability that P and Q
mining tasks that describe the general properties of the appear together in a transaction and c (for confidence) is the
existing data, and predictive data mining tasks that attempt conditional probability that Q appears in a transaction when
to do predictions based on inference on available data. The P is present.
data mining functionalities and the variety of knowledge
they discover are briefly presented in the following list: D. Classification
Classification analysis is the organization of data in
A. Characterization
given classes. Also known as supervised classification, the
Data characterization is a summarization of general classification uses given class labels to order the objects in
features of objects in a target class, and produces what is the data collection. Classification approaches normally use a
called characteristic rules. The data relevant to a user- training set where all objects are already associated with
specified class are normally retrieved by a database query known class labels. The classification algorithm learns from
and run through a summarization module to extract the the training set and builds a model. The model is used to
essence of the data at different levels of abstractions. For classify new objects. For example, we might want to
example, one may want to characterize the peers who play classify our agents into 'Good' or 'Malicious' or ‘Free riding’
with him or the strategies that are used by a peer regularly. categories with regard to their reputation. The category or
Free riders and malicious peer can be easily found using 'class' into which each peer is placed is the 'outcome' of
characterization. With concept hierarchies on the attributes classification process.
describing the target class, the attribute-oriented induction Case based reasoning is an apt classifier for peer to peer
method can be used, for example, to carry out data network, which uses the previous history for the process of
summarization. Note that with a data cube containing classification. This method is more efficient because of the
summarization of data, simple OLAP operations fit the possibility of unsupervised classification. To solve a current
purpose of data characterization. classification problem (to find a free rider), the problem is
B. Discrimination matched against the cases in the case base, and similar cases
are retrieved. The retrieved cases are used to suggest a
Data discrimination produces what are called
solution which is reused and tested for success. If necessary,
discriminant rules and is basically the comparison of the
the solution is then revised. Finally the current problem and
general features of objects between two classes referred to
the final solution are retained as part of a new case.
as the target class and the contrasting class. For example,
one may want to compare the general characteristics of the
peers who have cheated more than 30 times with those

269
E. Prediction
Prediction has attracted considerable attention
given the potential implications of successful forecasting in
a business context. There are two major types of
predictions: one can either try to predict some unavailable
data values or pending trends, or predict a class label for
some data. The latter is tied to classification. Once a
classification model is built based on a training set, the class
label of an object can be foreseen based on the attribute
values of the object and the attribute values of the classes.
Prediction is however more often referred to the forecast of
missing numerical values, or increase/ decrease trends in
time related data. The major idea is to use a large number
of past values to consider probable future values. For
Fig.3 Peer Cluster
example if the peer is interested in predicting the chance of
downloading without any interruption, he might simulate
the whole transaction exactly with the history of the
H. Evolution and deviation analysis
opponent. [5] Has effectively used the prediction technique Evolution and deviation analysis pertain to the
to identify a winning strategy using data mining. We can use study of time related data that changes in time. Evolution
the same [6] Game theoretic technique to identify the analysis models evolutionary trends in data, which consent
malicious peer using data mining and Nash equilibrium to characterizing, comparing, classifying or clustering of
concept. time related data. For example a peer can find the change in
the strategy of each peer with respect to time and how the
F. Clustering reputation gets changed. Deviation analysis, on the other
Similar to classification, clustering is the hand, considers differences between measured values and
organization of data in classes. However, unlike expected values, and attempts to find the cause of the
classification, in clustering, class labels are unknown and it deviations from the anticipated values.
is up to the clustering algorithm to discover acceptable
classes. Clustering is also called unsupervised classification, It is common that users do not have a clear idea of the kind
because the classification is not dictated by given class of patterns they can discover or need to discover from the
labels. There are many clustering approaches all based on data at hand. It is therefore important to have a versatile and
the principle of maximizing the similarity between objects inclusive data mining system that allows the discovery of
in a same class (intra-class similarity) and minimizing the different kinds of knowledge and at different levels of
similarity between objects of different classes (inter-class abstraction. This also makes interactivity an important
similarity). For example if system is interested in finding the attribute of a data mining system.
type of peer available into malicious and free rider, the
system can use the history of each peer to form a cluster. V. RESULT
Then any clustering algorithm can be used to cluster the Experiments on an existing peer to peer network
peer types fig .3 shows an example cluster for peer type. were analyzed. Java environment was used to develop the
peer to peer structure. Initially the experiment was done
G. Outlier analysis with 20 nodes, and later on scaled up to 100 nodes.
Outliers are data elements that cannot be grouped in a given Existence of behavior analyzer increased the interaction
class or cluster. Also known as exceptions or surprises, they with good peer, indirectly isolating malicious and free riders
in the peer to peer system. Fig 4 and 5 proves the
are often very important to identify. While outliers can be
observation mentioned above. At the starting point each
considered noise and discarded in some applications, they peer holds an INR initial reputation value (we took INR =
can reveal important knowledge in other domains, and thus 30) then with respect to the peers interaction the reputation
can be very significant and their analysis valuable. By value changes. The queries from a good peer are given
analyzing the outliers peer can easily identify the outliers higher preference, which indirectly suppresses the action of
and isolate them from the system. the free riders. And the query replies from a good peer will

270
be given more weight, which indirectly reduces the ACKNOWLEDGEMENT
malicious peer’s action. So our concept of integrating data
mining with peer to peer network greatly increases the We would like to thank our department staffs for
lifetime of the p2p system by directly and indirectly teaching us the latest trends in Peer to peer networks and our
eliminating free riders.
Head of Department for permitting us to experiment our
peer to peer software in college research cell.

REFERENCES

[1] H. Garcia Molina, S.D. Kamvar, A. Schossler “The EigenTrust


Algorithm for Reputation Management in P2P networks”, Technical report,
Stanford University, 2003.

[2] Karakaya, M., Korpeoglu, I., Ulusoy, O. “A Distributed and


Measurement-based Framework Against FreeRiding in Peer-to-Peer
Networks”. proceedings of the 4th IEEE International Conference on Peer-
to-Peer computing (P2P’03). Zurich, Switzerland, September, 2003.

[3] S.D. Kamvar et al. “Incentives for Combating Free riding on P2P
Networks”. Proceedings of EURO-PAR 2003

Fig.4. Interaction graph for good peer


[4] Lakshmish Ramaswamy et al. “Free Riding: A New Challenge to Peer-
to-Peer File Sharing Systems”. Proceedings of Hawaii International
Conference on Systems Science 36 2003

[5] Yi Wang. “Integration of Data Mining With Game Theory”.


International Federation for Information Processing (IFIP), Volume 207,
2006.

[6] Rohit Gupta and Arun K. Somani. “Game Theory As A Tool To


Strategize As Well As Predict Nodes’ Behavior In Peer-to-Peer Networks”.
Proceedings of the 11th International Conference on Parallel and
Distributed Systems (ICPADS'05).

[7] S.D. Kamvar et al. ”Incentives for Combating Free riding on P2P
Networks”. Euro-Par 2003 Parallel Processing.

[8]. J. Han, M. Kamber, “Data Mining: Concepts and Techniques”,


Harcourt India / Morgan Kauffman, 2001.

[9]. Margaret H.Dunham, “Data Mining: Introductory and Advanced


Fig.5. Interaction graph for Free rider or malicious peer Topics”, Pearson Education 2004.

CONCLUSION [10] http://www.gnutella.com

While there are several ongoing research projects [11] http://www.kazaa.com


on improving the quality of service in P2P file sharing
systems, there hasn't been much research to counter the [12] http://www.wikipedia.org
problem of free riding effectively, which is essentially a
data quality issue. To address the free riding problem in P2P
systems, we have introduced this concept to measure the
usefulness of every user to the system. We have proposed a
free riding control scheme based on the general data mining
functionalities. We expect that this paper to trigger further
research in this area of P2P systems.

271
2009 International Conference on Computer Engineering and Technology

Servo System Modeling and DSP Code Autogeneration Technology for Open-CNC

Cao Shukun, Zhang Heng, Song Li, Ai Changsheng, Ze Xiangbo


School of Mechanical Engineering
University of Jinan
Shandong Province, China
E-mail: caoshukun@126.com

Abstract—With the progress in science and technology, the algorithm, often have to re-writing code based on specific
modernization manufacturing process have become hardware specification and the ability to achieve. As a result,
increasingly demanding in CNC. In this paper, it has chosen such a fracture of the development process has brought a lot
Permanent Magnet Synchronous Motor (PMSM) and Digital of questions: the specification is not explicit; it can’t carry on
Signal Processor (DSP) to design the servo control system for a test to the whole system; the too late detection of design
Open-CNC. Based on the analysis of the Open-CNC structure, flaw brings in high risk; the factors of artificial mistake are
movement principle, fundamental theories of vector control, it increasing and so on [1].
has built the PMSM vector control module in MATLAB, and A new and high-efficiency DSP developing flow will be
introduces the control principle in detail. In addition, a new
introduced in this paper.
and high-efficiency DSP developing flow is introduced. The
flow realizes the auto -generation of DSP code with the use of II. OVERALL DESIGN OF OPEN CNC SYSTEM
MATLAB, Simulink, Real-Time Workshop, DSP and TI’s
development environment-CCS. It realizes the integration
A. Project Design of Open CNC System Based on DSP
from design to implementing, and shortens the developing
period greatly. The PMSM control system designed using this X-Y table is a key component to realize X and Y
flow now has worked well on the TMS320F2812EVM. At last, coordinated movement, widely used in the machine
it gives the communications circuits between PC and DSP. manufacture and processing [2]. In our research, we plan to
achieve the X-Y table movement firstly. Its working
Keywords: Open-CNC; Permanent Magnet Synchronous principle is that the direction control of X, Y is adopted the
Motor(PMSM); CCS; Digita Signal Processor servo motor, through gear reducing the speed and screw
driving motion, to drive the X-Y table to do the motion. The
I. INTRODUCTION servo system function of the X-Y table is that transfer the
motion and the dynamic force from servo drive equipment to
From the view of cybernetics, the technical requirements the actuating mechanism, to achieve the tools cutting
of the CNC system can be summed up as the servo system campaign.
stability, static and dynamic features. Because the
qualifications of CNC machine, such as the speed and the
accuracy, to a large extent is decided by the servo system
performance. Now, servo systems are used more widely,
such as in industrial controllers and household appliances.
Performance, function and price of servo products are being
concerned more and more. Digital controlled AC servo
systems will be the trend, which uses Permanent Magnet
Synchronous Motors (PMSM) as power units and high
quality control strategy, based on DSP.
For the servo motor control, the most direct way is to set
up a mathematical model servo motor, and then create a
MATLAB simulation of the servo motor control model,
which is just for analysis. However, only the analysis is not
enough, we should achieve the control of the servo motor. At
present, the use of DSP digital control system is the
development trend of the control system design, but the
traditional DSP development process has great disadvantages.
As the design phase of the system, designers only consider
how to get the "perfect" algorithm model in line with the
performance, but in the realization phase, the engineers were
concerned how to market the product as soon as possible,
system design and realization lack of effective
communication. When programmers get the design Figure 1. The DSP-based Open CNC system diagram

978-0-7695-3521-0/09 $25.00 © 2009 Crown Copyright 272


DOI 10.1109/ICCET.2009.200
Permanent Magnet Synchronous Motor has lots of they can choose the generate code commend in MATLAB to
advantages, such as simple structure, small size, light weight, generate the code of the module. In the code generated
small loss, high efficiency, and so on. Compared with DC process, MATLAB will provide some coherent message,
motor, it does not have mechanical commutate and brush; such as warnings, mistakes, which can help to correct the
compared with the asynchronous motor, it does not need coherent module or the parameters. The utility system
reactive exciting current, and thus it has high power factor, development flow diagram using the CCSLink is shown in
the little loss of the stator current and stator resistance, and Fig. 2.
the rotor parameters being measured, the rotor having bigger CCSLink provides three ways to achieve the data
air gap, good control performance. So the servo motor we exchange between MATLAB and CCS, DSP. One way is
choose Permanent Magnet Synchronous Motor (PMSM) to “ the connected object to RTDX (real-time data exchange)”.
design. The servo control structure based on DSP is shown in “the connected object to RTDX” provides real-time
Fig. 1. communication channel between DSP and MATLAB. The
We design three-dimensional profile of the parts firstly, use of channel exchange data real-time with the DSP rather
and then extract the processing path. According to the than being to stop the procedure implemented on the DSP.
needed displacement, we calculate the pulse count that DSP So, in the exchange of the data between the DSP and host,
generates. DSP generating the pulse can be implemented by the author used the RTDX (Real-Time Data Exchange, real-
software. When the machine is working, the processing time data exchange) technology. RTDX in the
information can feed back real-time, which forms a closed- implementation of the application process can help the
loop. developers transmit and accept the data between the host and
the objectives DSP, and also observe real-time and stored
B. The Foundation of the PMSM Control Module data through an Application Programming Interface (OLE
1) The Introduction of Embedded Target for TI C2000 API). The design uses the TDS560 to support the high-speed
DSP data link RTDX ™, the speed is up to 2MB/s [3].
The Embedded Target for TI C2000 DSP is developed by
Mathworks and TI, and provides a method which can
integrate the MATLAB, Simulink and Texas Instruments
Express DSPTM tools, TI C2000 DSP to develop systems.
Making use of this tool, we can operate TI DSP memory or
register as MATLAB variables, that is to say, the whole
objective of DSP for MATLAB seems to be transparent. We
can send the data from CCS to MATLAB, and can also send
the data from MATLAB to CCS. CCSLink supporting any
target board can identified by CCS, including TI's DSK,
EVM board and target DSP (C2000, C5000, C6000) board
developed by users, and provides a powerful support for the
debugging and testing of TI DSP applications system design.
The toolbox can generate codes automatically online, and
speed up the development of prototype and embedded
system. According to the CCS document requirements of the
project, the toolbox can generate the C code accord with the
TI DSP requirements, and to verify and achieve real-time the
algorithm automatically on the DSP of TI C2000 series. The
MATLAB 7.0 support F2812eZdsp and F2407eZdsp, and
integrate the modules of PWM, ADC and CAN in the form
of modules, that have provided a great convenience for the
development and application of the users).
Developers will be able to complete the operation of CCS
in the MATLAB environment. Developers can use the
powerful visualization, data processing and analysis function Figure 2. The utility system development flow diagram make use of the
of MATLAB to analyze and process the data from the CCS C2000 embedded target module
and TI DSP, however, to complete these operations is very 2) The module foundation of the PMSM
difficult in the DSP integrated development environment
CCS. According to the vector control concept, it is to set up the
When developers make use of the CCSLink module to PMSM control module. The SVPWM vector control method
design the utility system, they should set up the Simulink is that used the actual magnetic flux being generated by the
module correctly. If the module has some mistakes, the inverter under the different switch module to approach the
connection between the MATLAB and the CCS will be not basic circle flux, which is generated by AC motor when it
built. After building the module, the developers should supply the three-phase sine wave voltage, and compared the
connect the DSP with PC, and give the DSP power. Then result to design the switch state of the inverter.

273
The key of vector control is to control the magnitude of ### Build complete
the stator current vector and location of the space (frequency ### Downloading COFF file
and phase). used the method id = 0 to control, so the control ### Downloaded: servo motor. out
component of d-axis is 0, which will help to simplify the Then it starts the CCS automatically. CCS will compile
control algorithms, and let the electromagnetic torque and assemble the generated C code, connect and download
proportional to the stator current, at the same time will not the C code to 2812EVM board to run. The left side of the
cause the PMSM bad performance because of CCS interface is the debugging tools and the project
demagnetization, and easy to implement. Its main drawback management window, where display the projects built in the
is that with the increase of output torque, power factor rapid process of generating C code. The projects include the source
decline. As the control component of d-axis is 0, the stator files (source folder), library files (Library folder), connected
windings can be decoupled with the d-axis, so it can control files (F2812.cmd), and other documents generated. On the
the electromagnetic torque well, which is similar as the right side of the CCS are the disassembling files generated
control principle of the permanent magnet DC motor. the codes. The bottom of the CCS is the monitoring window.
PMSM control module consists of four parts: the Now, it display as starting the model, operational
detection module of the speed and the location, PI controller procedures), the lower left-hand corner shows the state of
of the speed ring and the electric current loop, coordinates F2812EVM CPU, at this time shows RUNNING. The
transform modular, and SVPWM module and the inverter PMSM control project in CCS is shown in Fig. 4.
module. The PMSM control module built in MATLAB is
shown in Fig. 3.
3) The PMSM control code generation from MATLAB to
CCS
To set the parameters of the real-time workshop. First, it
is to implement the target configuration. Set specific
parameters are as follows:
x System target file: ti_c2000_grt.tlc or
ti_c2000_ert.tlc;
x Template make file: ti_c2000_ert.tmf;
x Make command: make_rtw.
The parameters of real-time workshop are complex, due
to limited space, such as code optimization, or some other
CCS IDE tab settings will not introduce them. The following
are given some important settings in this design.
x The code generation target type of the TI C2000
target selection must choose C2000;
x The incorporate DSP/BIOS of the TI C2000 code
generation must be not chosen;
x There are some options, such as the byte type of the
TI C2000 complier and the frequency of the TI
C2000, which must be corresponding to the setting
of the 2812EVM development board.
After setting the parameters, knob down “Build &Run”,
then the MATLAB commend window will display the codes Figure 4. The PMSM control project
being generated, at the end, we can see as follows:
…… TMS320F2812EVM can run the auto-generation code
correctly, and achieve the control of PMSM, which verify
the correctness of code.
C. The Communication Circuit Design between DSP and
PC
TMS320F2812 not only integrates a synchronous serial
port on the chip, but also integrates serial asynchronous ports,
and this feature has simplified the PC serial communication
circuit design. Serial Communication Interface (SCI) is the
asynchronous communication interface using double line
correspondence, known as the UART port. To reduce the
Figure 3. The PMSM control module serial communication cost of the CPU, the ports of F2812
support the 16 serial receiving and transmitting FIFO. SCI
### Building Code Composer Studio (tm) project … receiver and transmitter send data by a dual-level buffer.

274
They have independent enable functions and the break bit, traditional design methods. MATLAB system-level design
can operate independently, and also operate in full-duplex environment will help early detection of an error in the
mode at the same time [4]. design and to deal with the ever-increasing challenge of the
In order to ensure the integrity of the data, SCI module complexity of the system, which facilitates the design of
checks the interruption, polarity, limits and frame error of complex application system based on DSP. Through the
docking data received. By designing program to set the 16- process flow, the entire design process don’t need to input
bit baud rate of the control register, different communication the code, can get the highly optimized auto-generation code.
rate of SCI is collocated. The PMSM control system designed using this flow now
In general, in order to ensure the universal application of has worked well on the TMS320F2812EVM.
the system, it’s better that serial communication interface is However, CCSLink only for debugging of DSP program,
compatibility with the electrical standard bus (such as RS- and if it's TI and Math Works jointly developed another tool
232C). Therefore, the design uses MAX3232 to design the ETTIC6000 (2000) used in conjunction, can be directly the
circuit between DSP and the PC machine. The Simulink model from to generate TIC6000 (2000) of
communication circuit design is shown in Fig. 5. Serial Executable code[6], that is integrated, unified environment
RS232 asynchronous communication is used between PC MATLAB to be completed by DSP development of the
and the DSP. SCITXD is a sending data pin of SCI, and whole process.
SCIRXD is a receiving data pin of SCI [5]. The selection of
the design is MAX3232 whose voltage +3.3 V that is the ACKNOWLEDGMENT
same to the output voltage of TMS320F2812, so the no- The study was supported by Key Subject Research
electricity conversion simplifies the circuit design. Foundation of Shandong Province under Grant #XTD0713.

REFERENCES
[1] Qi Xinggang, Zhao Gang, and Li Yuan, “Auto-generation of
DSP code on MATLAB/Simulink bench,” China
Measurement Technology, vol. 31, no. 1, pp. 87-88, January
2005.
[2] Zhang Haiwei, “Modeling and simulation of CNC machine
tool servo system for X-Y table,” Northwest A&F University,
Figure 5. The communication circuit design between DSP and PC November 2007.
[3] Texas Instruments Incorporated, “TI DSP CCS
guide,”Tsinghua University Press, 2005.
III. CONCLUSIONS [4] Wan Shanming. “TMS320F281XDSP principle and
This paper describes the vector control theory of application,” Beijing University of Aeronautics and
Permanent Magnet Synchronous Motor, and according to the Astronautics Press, 2007.
theory of vector control, we make use of DSP to realize the [5] TI company. “TMS320F2812 digital signal processors data
manual,” http://focus.ti.com.cn/cn/dsp/docs/, July 2007.
three closed-loop control of Permanent Magnet Synchronous
[6] Wang Yang, Guo Lili, and Fan Liping, “Research of DSP
Motor’s currents, the speed, and the location. Experiments developing method based on MATLAB,” Control
have proved that the application of MATLAB for DSP Engineering, vol.13, no. S0, pp. 123-126, May 2006.
system-level development ideas effectively to improve the

275
2009 International Conference on Computer Engineering and Technology

Extending Matching Model for Semantic Web Services

Alireza Zohali Kamran Zamanifar , Naser Nematbakhsh


Department of Computer Science Department of Computer Science
Sama Technical &Vocational Training School, Isfahan University
Khorasgan Branch, Isfahan,Iran Isfahan, Iran
Alireza_Zohali2006@yahoo.com {zamanifar ,nemat }@eng.ui.ac.ir

Abstract— The Semantics-based Web Service Matching Model


is proposed in this paper to improve the performance of Web Semantic matching means to find out services With
Service discovery. Semantics-based Web Service Matching is a regard to functions meaning and concepts and service
two-phase method including semantic similarity matching and
qualitative filtering. Function-based semantic similarity
capabilities in used domain and context. Qualitative
matching used of matching algorithm in order to finding the matching means to finding services that client and server
most proper services. And also, used for selecting the best can agree on offer procedure with respect to qualitative
service among results of qualitative filtering. scales.
Since Universal Description, Discovery and Integration
Keywords-component; Web Service; Function-based Semantic ( Services specifications registry platform) that briefly calls it
similarity matching; matching algorithm; qualitative filtering; "UDDI" , does not use of any semantic information in
Service Discovery services registry and their searching abilities emphasis only
I. INTRODUCTION on key words, can limit capability and efficiency of queries.
Therefore, semantic matching web service is proposed to
Development of Service-Oriented Architecture (SOA) to increase efficiency of query. Moreover, incorporation of
provide software systems and Web Services brilliant growth, results similarity matching and qualitative filtering that used
make use of a proper and practical procedure to discover and in proposed model of this study can modify the accuracy of
finding the services, very essential. It's clear that finding out proper web services [5]. The related work is first introduced
the interested services, without using mechanize methods is in Section 2. Basic method and idea will describe in section3.
very difficult and time consumer. This issue is similar to Section4 represents the proposed model and Section5, shows
search in web pages without using browsers. Service the future works and conclusions.
consumer can be a user, another service or a program. Thus
using of automated mechanisms to finding out services is II. RELATED WORK
very important. Web services provide a standard means of interoperating
Services are the autonomous elements and often
between different software applications, running on a
platform-independent that are described, registered and
variety of platforms and/or frameworks. W3C use the
discovered and due to their integrity can provide a program.
definition as follows: A Web service is a software system
The most sensible ability of service-oriented systems is the
designed to support interoperable machine-to-machine
possibility of software elements assembly in order to
interaction over a network. It has an interface described in a
building a grid of services with loose-coupling that
machine- process able format (specifically WSDL). Other
dynamically make processes and handy programs.
systems interact with the Web service in a manner
Basically, SOA is a designing style for sharing, reuse and
prescribed by its description using SOAP messages,
services interchange in a distributed environment. Web
typically conveyed using HTTP with an XML serialization
serviced through use of integrity features and reusability, the
in conjunction with other Web-related standards.
best solution for development of wide software scale is for
Recent years several papers have been represented for
enterprises. But by fast growth of the number of accessible
solving the problem. Matchmaker proposes a solution based
services, the people will face to problems such as find out
on DAML-S, a DAML language for describing web
proper service and above selection to make their programs
services. And the discovery query in DAML-S is compared
[1].
with the results that have features compatible with the
In respect to complexity of finding proper service in a
request in semantic [2].LARKS describe services as
Query, using of different techniques and procedures have
functional parameter input, output. The matching engine of
been proposed in recent years. Among this, most basic
the matchmaker agent contains five different filters: context,
methods stressed on functional, semantic and qualitative
profile, similarity, signature and constraint filter [3].
matching that remove the need of user by submitting
functions.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 276


DOI 10.1109/ICCET.2009.127
III. MAIN IDEA AND METHODS -- Stability
In order to implement the efficient service matching, a -- Response Time
service matching model is includes four steps: -- Reliability
1) All services are defined according to the ontology of -- AcessedTimes
Web Service to generate semantic description, and when -- Grade
they are published, they are insured to have the same
description schema.
2) The semantic information of the Web Service
Description is extended according to the specification of
UDDI, and the extended semantic information is stored in
UDDI as tModel.
3) The set of Web Services is se3ected according to three
matching steps, which are as follows:
a) Input parameter matching
b) Output parameter matching
c) Well-defined matching by user
4) The best Web Service is selected according to
qualitative filtering method on the set obtained in step3 [4].
In the following will introduce the methods used in these
4 steps in details.
A. Semantic Descriptions and Publication of Web Services
In order to give a standard form for the providers and
requestors to describe and locate Web services, two types of
Ontology are used in the model.
SWSD (Semantic Web Service Description Ontology)
contains the semantic description of primary information, Figure1. Semantic Web Service Description Ontology SWSD
functional information, and other non-functional
information of Web services 3) Mapping from SWSD to UDDI
QoWSO(Quality of Web Service Description Ontology) Like the mapping from DAML-S Profile to UDDI,which
describes the qualitative description of Web Services. is used in the registration of WSDL in UDDI Registry, the
UDDI provides the Web Service specification for sharing mapping from SWSD to UDDI includes:
of information and applications. In order to semantically The mapping from Provider Information in SWSD to
development of UDDI, will store the semantic and Contacts of Business Entity in UDDI ,the mapping from
qualitative information of Web service into the UDDI .In Primary Information as service Name and text Description
the matching model, we try to improve the quality in order in SWSD to name and description in Business Service, the
to enhance the capability of UDDI. mapping from SWSD service semantic description to
1) Semantic Web Services Descriptive Ontology tModel ,the mapping from service quality description to
The four types of information described in SWSD for tModel. The detailed mapping is shown in Fig .2.
service discovery are [4]: B. Function-based semantic similarity matching of Web
-- Primary Information and Provider Information Service
-- Functional Description Function-based semantic similarity matching of Web
-- Quality Description Service includes the semantic similarity matching of input
-- Other Attributes Description and output, which is called IO matching for short. Assume
The structure of Semantic Web Service Description that the input set and output set of service request are RI and
Ontology SWSD is shown in Fig .1. RO respectively, and the input set and output set of
2) Quality of Web Service Description Ontology advertised service are AI and AO respectively, therefore
The model applies a Quality of Web Service Description if RO ⊆ AO which means that advertised service can
Ontology (QoWSO) to construct the consistent description provide all the outputs required by the service request, then
of Web service quality (historical statistical information and
output matching is successful; and if AI ⊆ RI which means
the up-to-minute information of Web Service quality).
QoWSO is described by the class QoWSProfile, which is that service request can provide all the inputs needed by the
advertised service, then input matching is successful.
described by five quality parameters [4]:

277
Figure3. Main control loop

3) I/O Matching
The I/0 matching is based on the degree assignment logic
as follow [2].
Exact:
If request R and advertisement A are equivalent
concepts, we label the match as Exact. Of course, it is the
best level since the request and advertisement are exactly
the same.
Figure2. Mapping from SWSD to UDDI [6]
Sub-concept:
If request R is sub-concept of advertisement a
1) Matching Algorithm (inductive advertisement) which is the second matching
The main rationality behind our algorithm is that an
level.
advertisement satisfies a request when the advertisement
Super-concept:
provides all the functions (Inputs/Outputs) of the request's
If request R is super-concept of advertisement A (the
service. Also, the user can specify weights for all
advertisement can provide only some specific cases of what
parameters, so the users can tell which parameters in their
the request desires) which is the third matching level.
requests are most important and must be provided, and
Fail:
which parameters are not necessarily exactly matched.
There are no relation between the advertisement A and
The value of weights is limited as a decimal in [0, 1] i.e.
request R. This is the lowest level which represents an
0 < ω <1. The default value for every weight is 1, which is
an important factor for matching. unacceptable result.
2) Main Control Loop Since the requests may have multi-output, we return a list
Requests are matched against all the advertisements containing the degrees of every output. And the list is used
stored in the registry in the main control loop of the to compute the overall score of the matching with other
algorithm as shown in Fig.3. parameters and their weights later.
When the score (match degree figured out) of a match The matching between inputs follows the above
between the request and an advertisement is higher than ω algorithm Fig.4 As outputs matching algorithm. The
which is a user specified threshold in the request, we add the difference is just in that inputs of request are matched
advertisement and score to the result list. Because the against the inputs of the advertisement.
services may have multi input or multi output, we define 4) Computing the Overall Score
ScoreListo and ScoreListi, as two lists to store the match After the I/O matching, we should let the user know an
degree of every output and input respectively. overall score of the selected advertisement in the result list.
Then we use the degrees acquired above and weights of And we accomplish the work with the function Fig.3:
every parameter given in the request to compute the overall Compute Overall Score (request, ScoreListo, ScoreListi)
score.

278
5) Sorting Rules
Arrange the result in a reasonable order. If the scores in
advertisement are the same, we would sort as follow:
Over all Score> ScoreO > ScoreI
C. Semantic filtering on QoWS
Use Semantic filtering on QoWS to find the best
service in the case of existing a lot of functional similar
Web Services. The base of Semantic filtering on QoWS is to
compare the measured value of service quality parameters in
the QoWS between different services. The service quality
parameters include:
- Stability
- Response Time
- Reliability
- AcessedTimes
- Grade
Figure4. Algorithm for outputs matching The service quality parameters are classified as two kinds:
One has the higher measuring value such as Reliability,
We get the weight for every parameter from the request. AcessedTimes and Grade the other has the smaller measure
Then we define the variable used to compute the overall such as Response Time and Stability.
score as follow Finally can obtain the best service by compare the
measured value and quality parameters.
ScoreListo : list of matching degrees of outputs, which is
the return value of the outputs matching
ScoreListi : list of matching degrees of inputs, which is IV. ARCHITECTURE OF THE MODEL
the return value of the inputs matching. The architecture of the service matching model is shown
SOi :(0 < i < |scoreListo|): match degrees of outputs in in Fig.5. The four function modules are Web Service
scoreList0; Publication Agent, Web Service Search Agent, UDDI
SIi :(0 < i < | scoreListi |): match degrees of inputs in Adapter, and QoWS Certificate Authority. The two libraries
scoreListi; are SWSD and QoWS Ontology Base, and UDDI Registry.
WOi (0 < i < |scoreListo|): the weights of the outputs;
WIi (O < i < |scoreListi |): the weights of the inputs; A. Web Service Publication Agent
ScoreI : weighted average degree of inputs matching; The function of Web Service Publication Agent is to
ScoreO : weighted average degree of outputs matching; process the interaction between Service Provider and UDDI
overallScore : the overall score of the match Adapter, and implement service publication. And the main
Then we compute the match degree from (1), (2) and part of Web Service Publication Agent, which is named
compute matching overall Score From (3) SWSD Generator, is designed to generate the SWSD
description of Web Service according to Web Service
| Scorelist i | information and Specification of Web Service Description
∑W Ii * S Ii SWSD.
B. Web Service Search Agent
Score I = i =1
| Scorelist i |
(1) The function of Web Service Search Agent is to process
∑W
i =1
Ii
the interaction between Service Requestor and UDDI
Adapter, and implement service query. It includes the
following three parts:
| Scorelisto | - SWSD Parser

∑W
- QoWSO Parser
Oi * S Oi - Web Service Matching Engine
Scoreo = i =1
| Scorelist o | (2) 1) SWSD Parser

∑W
Extracts the Web Service attributes from SWSD
Oi description file, generate the corresponding object instance,
i =1 and provide the necessary data to Function-based semantic
similarity matching filter.
Score i + Score o
OverallSco re = (3)
2

279
2) QoWSO Parser 1) Find out the business services referred by the tModels
It extracts the QoWS information from QoWSO in the list of function-based semantic similarity matching
description file, generate the corresponding object instance, and obtain the list of matched Web Services.
and provide the necessary data to QoWS Semantic filter. 2) Create the business service information structure of
3) Web Service Matching Engine UDDI and store the information in UDDI Registry, by using
It matches the Service Requests and the advertised Web Service information provided by Web Service
services registered in UDDI Registry to obtain the list of Publication Agent and URL of QoWS description obtained
proper candidate services. It consists of Function-based from QoWSCA, and applying the mapping method from
semantic similarity matching filter and Quality of Web SWSD to UDDI. And transfer the Web Service ID to
Service Semantic filter. QoWSCA.
3) Invoke the interface of UDDIfind_tModel() to search
all tModels belonging to swsdSpec in UDDI Registry for
function-based semantic similarity matching.
D. QoWSCA
QoWSCA provides Quality Certification to the Web
Services published in UDDI Registry.
V. CONCLUSION
How to give up the proper service description in UDDI
and how to match customer service request with service
description, become the major challenges in Web Service
discovery. Development of Web Service matching model
proposed in this paper uses semantic description and quality
description of Web Service based on ontology as the basis
of service matching, and its matching algorithm is based on
this logic that when a notice can satisfy a request that ever
functions (Input/Output) provides request service. Moreover
a user can specify some weights for all parameters and can
say that which parameter of his/her request is premier and
should provide and which one is unnecessary.
The service matching method composed of two phases.
In the first phase, the proper Web Services that satisfy the
functionality matching of the desired service is found, and in
the second phase, the best one is selected from Web Services
set obtained in the first phase using semantic filtering. Using
Figure5. The Architecture of Web Service Matching Model these descriptions and matching phases, the performance of
Web Service matching can be improved effectively.
Function-based semantic similarity matching filter: It
first gets the attributes of required service from SWSD
Parser, and then executes semantic similarity matching REFERENCES
between the attributes and SWSD function descriptions [1] R. A. Tsalgatidou, T. Pilioura,, "An Overview of Standards and
which are extracted from UDDI Registry by UDDI Adapter, Related Technology in Web Services" [J].Distributed and Parallel
and generates a list of functionally similar Web Services. Databases, 2002(12),pp.135-162
[2] M. Paolucci, T. Kawamura, T.R. Payne, and K. Sycara,"Semantic
Quality of Web Service Semantic filter: It first uses Matching of Web Services Capabilities",International Semantic Web
QoWS descriptions of Web Services in the list of Services Conference, 2002.
functionally similar Web Services, which are extracted from [3] K. Sycara, S. Widoff, K. Klusch, and J. Lu, "LARKS:Dynamic
UDDI Registry by UDDI Adapter, gets the attributes of Matchmaking among Heterogeneous Software Agents in
QoWS from QoWS Parser, then execute the QoWS Cyberspace," Autonomous Agents and Multi-Agent Systems, 2002,
semantic filtering, and finally return the result to the pp. 173-203.
[4] J. Fan, B. Ren, L. Xiong, "An Approach to Web ServiceDiscovery
Requestor. Based on the Semantics", Proceedings of 2005 International
C. UDDI Adapter Conference on Fuzzy Systems and Knowledge Discovery, 2005, pp.
The function of UDDI Adapter is to process the 1103 - 1106.
interaction between other parts and UDDI Registry, which [5] UDDI Universal Description, Discovery and Integration (UDDI 2.0).
UDDI Technical White Paper,http://www.uddi.org/ specification.htm.
includes: [6] F. Leymann and S. Pottinger ,"Rethinking the Coordination Models
of WS-Coordination and WS-CF", Proceeding of the Third European
Conference on Web Services(ECOWS'05), 2005

280
2009 International Conference on Computer Engineering and Technology

Sound absorption measurement of acoustical material and structure using the echo-
pulse method

Sun liang Hou hong Dong liying Wan fangrong


College of Marine,NWPU
Xi an ,China
Email:slyxj1996@163.com

Abstract—A new approach is proposed for measuring the method[2],based on the transfer function method established
sound absorption coefficient of material at normal incidence, by Chung and Blaser[3,4],yields the plane wave absorption
that bases on the echo-pulse method in a circular tube. Two coefficient at normal incidence in the frequency domain. Its
types of acoustical material and structure were employed: errors and limitations have been analyzed by several
foam and pipe exit. Two different waveforms called the authors[5-6].
Butterworth and the damped sine pulse are successfully Many times there exists the requirement to measure the
generated and used as incident pulses in the experiment of sound absorption coefficient at oblique incidence or in
sound absorption measurement in a circular pipe. The situ.Although there have been proposals to extend the
absorption coefficient of the acoustical material measured by
transfer function method in situ[7],most of the acousticians
the echo-pulse method is consistent with that of B&K 4206
use the reflection method.Even,there are two international
impedance tube measurement. Discrepancy between them is
totally less than 10% in broadband frequency range from 200 standards to measure in situ the sound absorption coefficient
Hz to 5k Hz, mainly due to the different internal tube of surfaces employing the reflection method[8,9].
diameters of these two tubes and the fitting of the sample, i.e. Recently, Jing and Fung [10] developed an impulsive
the difference between the sample diameter and the internal sound source which can generate repeatable sharp pulses
tube diameter. Since the incident sound pulses are all with the whose durations were as short as 0.5ms.
features of regular waveform, short duration and broadband From open literatures, there are few works about
frequency spectrum, sound absorption measurement results designing and generating a good-waveform sound pulse in
conducted by the echo-pulse method are more reliable than sound absorption measurement by the echo-pulse method.
that of B&K 4206 impedance tube method especially in low- In this paper, our purpose is to examine an alternative to
frequency range. Further validation of this new method is also the transfer function method, based on measuring the sound
given through the absorption coefficient measurement of pipe pressures of incident and reflected wave at normal incidence.
exit. The echo-pulse method is relatively simple as only single
microphone is used for measurements. It is believing that this II. EXPERIMENTAL SETUP
method could also be used for in-situ measurement of sound
As shown in Fig.1, the experimental setup includes
absorption coefficient in outer space.
computer, an NI DAQ6062E data acquisition board, a
Keywords- absorption coefficient; echo-pulse; acoustic BNC2029 adaptor, power amplifiers, a loudspeaker-pipe
material; pipe exit system and a 1/4in MPA416 condenser microphone. The
loudspeaker is a 5in Hi-Vi mid-frequency woofer which is
positioned in a column steel enclosure whose length is 15
I. INTRODUCTION cm. The sound wave from the loudspeaker is guided through
Acoustic materials can be characterized by their acoustic a 20 cm conical reduction to a straight pipe 27mm in
surface impedance, sound reflection coefficient or sound diameter. The microphone, which is flush mounted into the
absorption coefficient. This paper deals with the pipe wall and placed at 24cm from the open end of the tube,
measurement of sound absorption coefficient. According to is used to measure the sound pressure of incident and
Garai[1],it can be measured by three basic methods: usually reflected pulse. The sample is placed vertically at the end of
reverberation room ,impedance tube, and reflection. The the straight pipe, backed by a rigid steel cover. The AI and
reverberation room method presents the Sabine absorption AO channels of the NI DAQ 6062E board are programmed
coefficient, which is an approximation of the absorption to be synchronized and have the sampling rate of 100k Hz.
coefficient for random incidence. The impedance tube

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 281


DOI 10.1109/ICCET.2009.104
Sample
Power&amplifier Computer
Mic

DAQ Board
Power amplifier (NI DAQ6062E)

Loudspeaker

AI
Adaptor
(NI BNC2090)
AO

Figure 1. The sound source configuration and the test equipment

Second, the spectrum of the driving signal can be


III.
computed by the spectrum of the designed pulse H y (ω )
OUTLINE OF THE PRINCIPLES OF MEASUREMENT

A. generation of sound pulses and the resolved frequency response H (ω ) .


According to the requirement of measurement of sound H y (ω )
absorption coefficient, two different sound pulses referred to H x (ω ) = (2)
as the Butterworth and the damped sine have been H (ω )
generated[10-11].Both the principle and process of pulse Applying the inverse Fourier transform to (2), the driving
generation are only summarized here: signal of the loudspeaker-pipe system will be obtained.
First, using the impulse response of a digital 5th-order The generated pulses of the Butterworth, the damped sine
the Butterworth filter and about 1ms duration as the and their frequency spectrums are shown in Fig. 2-1 and
excitation signal to drive the loudspeaker-pipe system with Fig.2-2, respectively. It shows that the generated pulses have
open terminus, we record the response signal at microphone. the characters of regular waveform, short duration and
H e (ω ) and H r (ω ) denote the Fourier transforms of broadband frequency range. These pulses are suitable for
excitation and response signals, respectively. Then, the absorption coefficient measurement by the echo-pulse
frequency response of the system is given by method.
H r (ω )
H (ω ) = (1)
H e (ω )

0.25
2.5

2 0.2
Sound pressure(Pa)

1.5
Amplitude(Pa)

0.15
1

0.5 0.1

0.05
-0.5

-1 0
0.3295 0.33 0.3305 0.331 0.3315 0 1000 2000 3000 4000 5000 6000 7000
Time(s) Frequency(Hz)

Figure2-1. The Butterworth pulse and its spectrum

282
1.4

2.5
1.2
2

1.5 1
Sound pressure(Pa)

Amplitude(Pa)
1
0.8
0.5

0 0.6

-0.5
0.4
-1

0.2
-1.5

-2 0
0.3295 0.33 0.3305 0.331 0.3315 0 1000 2000 3000 4000 5000 6000 7000
Time(s) Frequency(Hz)

Figure2-2. The damped sine pulse and its spectrum

range from 100 Hz to 6k Hz. The difference between them


is less then 5%.
B. Absorption coefficient measurement
The sound-absorbing materials of sponge and foam are
1.2
examined in the loudspeaker-pipe system. The specimens are
made of the thickness of 16 mm and the diameter of 27 mm 1
(inner diameter of pipe),
The reflection coefficient of a test specimen is calculated Absorption coefficient 0.8

by the ratio of the reflected sound pressure to the incident


sound pressure. 0.6

p (ω ) −
W (ω ) =
0.4
(3)
p + (ω ) 0.2

Where p (ω ) and p (ω ) are the Fourier transforms


− +
0 Mean value of three times measuring by damped sine impulse
of the reflected and incident sound pressures, respectively. Mean values of three times measuring by butterworth impulse
1000 2000 3000 4000 5000 6000 7000
Considering no transmission wave, the absorption Frequency (Hz)
coefficient can be solved as
A(ω ) = 1 − W 2 (ω )
(4) Fig. 3 The absorption coefficients measured by the
The complete separation of the incident and reflection Butterworth and the damped sine pulses
pulses and high signal-to-noise ratio (SNR) are essential for
the echo-pulse method measurement. In this experiment, the It can be seen from Fig.4-1and Fig.5-1that the
enough distance between the microphone and the measured absorption coefficients measured by the echo-pulse method
specimen will ensure the incident and reflection pulses (in man-made pipe) and the transfer function method (in
separation. The time-domain averaging of pulse reflection B&K 4206 impedance tube) agree well, not only for the
measurement will increase the SNR. Butterworth pulse, but also for the damped sine pulse.
However, the curve by the Butterworth pulse is much closer
IV. EXPERIMENTAL RESULTS to that by the B&K 4206 impedance tube, which is probably
due to the much flatter frequency response from 400Hz to
A. foam material 4k Hz of the Butterworth pulse than the damped sine pulse.
Fig. 3gives the curves of the average absorption Anyway, the difference of the absorption coefficients
coefficients measured by the Butterworth pulse and the measured by this method and the transfer function method
damped sine pulse. It shows in Fig. 4 that the absorption are within 10%.
coefficients measured by two pulses agree well in frequency

283
1
Echo-impulse method
0.9 0.35 Impedance tube method

0.8
0.3
Absorption coefficient

Absorption coefficient
0.7
0.25
0.6

0.2
0.5

0.4 0.15

0.3
0.1
0.2
0.05
0.1 Echo-impulse method
Impedance tube method 0
0
0 1000 2000 3000 4000 5000 6000 7000 50 100 150 200 250 300 350 400 450 500
Frequency (Hz) Frequency (Hz)

Fig.4-1 Comparison of absorption coefficients measured by the Butterworth pulse and B&K 4206
Fig. 4-2 The partially enlarged drawing of Fig. 4-1
0.8

0.7
1
0.6

0.8 Absorption coefficient 0.5


Absorption coefficient

0.4
0.6
0.3

0.4 0.2

0.1
0.2
0

0 -0.1
Echo-impulse method Echo-impulse method
impedance tube method -0.2 impedance tube method
-0.2
1000 2000 3000 4000 5000 6000 7000 100 150 200 250 300 350 400 450 500
Frequency (Hz) Frequency (Hz)

Fig.5-1 Comparison of absorption coefficients measured by the damped sine pulse and B&K 4206
Fig. 5-2 partially enlarged drawing of Fig. 5-1

B. Pipe exit
To further verify our new method, measurement of 2 J1 (ω ) 4 π /2

π∫
apparent absorption coefficient of the pipe exit is also Z (ω ) = 1 − + j sin(ω cos( x )) sin 2 xdx
ω 0
presented here. An open tube has the advantage that its
(5)
reflection coefficient can be predicted theoretically through
the theoretical calculation of radiation impedance of pipe Where ω is the angular frequency normalized by the
exit. The radiation impedance of a circular pipe exit with an sound speed and the pipe diameter. The reflection
infinite flange has been derived by Morse and Ingard[12] coefficient as well as the absorption coefficient of the pipe
and that of the unflanged one by Levine and Schwinger[13]. exit can be computed by:
According to Morse and Ingard[12] ,the acoustic Z (ω ) − 1
impedance of a pipe exit with an infinite flange is given as W (ω ) = (6)
Z (ω ) + 1
below:
2
α (ω ) = 1 − W (ω ) (7)
Here, the measurement results of the two impulses will
be presented directly.

284
0.9
1
0.8
0.5
0.7
0
0.6
Absorption coefficient

Absorption coefficient
-0.5
0.5

-1
0.4

-1.5
0.3

0.2 -2

0.1 -2.5
echo-impulse method echo-impulse method
theoretical solution theoretical solution
0 -3
0 1000 2000 3000 4000 5000 6000 0 1000 2000 3000 4000 5000 6000
Frequency(Hz) Frequency(Hz)

(a) (b)
Figure6 absorption coefficient of pipe exit measured by impulse method (a)Butterworth (b)damped sine

From above two curves, one can see the measured REFERENCES
absorption coefficient agrees well with the theory of Morse [1]Garai M, “Measurement of sound-absorption coefficient in situ:the
and Ingard[12],although slight fluctuations occur in two reflection method using periodic pseudo-random sequences of maximum
length,”.Appl Acoust,vol. 39, pp. 119–139, 1993.
measured curves, that are mainly caused by background [2]ISO 10534-2, Acoustic-determination of sound absorption coefficient in
noise from outside of the tube. However, for the narrow impedance tubes,Part2:transfer function method.Geneva, Switzerland:ISO
frequency band of damped sine impulse, its measurement 1996.
result is not better than that of Butterworth impulse. [3]Chung J Y,Blaser DA. “Transfer function method of measuring in duct
acoustic properties I.theory,”.J Acoust Soc Am, vol. 68, pp. 907–913, 1980.
[4]Chung J Y,Blaser DA. “Transfer function method of measuring in duct
acoustic properties II.experiment,”.J Acoust Soc Am, vol. 68, pp. 914–921,
V. CONCLUSIONS 1980.
[5]A.F.Seybert and B.Soenarko, “Error analysis of spectral estimates with
A novel method to measure the sound absorption
application to the measurement of acoustic parameters using random sound
coefficient using the echo-pulse technique is proposed in fields in ducts,” J Acoust Soc Am, vol. 69, pp. 1190–1199, 1981.
this paper. The main part of the measurement system is a [6]H.Boden and M.Abom, “influence of errors on the two-microphone
circular pipe with a sound pulse source at one end, the method for measuring acoustic properties in ducts,”. J Acoust Soc Am, vol.
79, pp. 541–549, 1986.
specimen at the other end. The sound source emits the
[7]Nocke C,Mellert V. “Brief review on in situ measurement techniques of
designed pulse as incident wave which should have a impedance or absorption,”. In Proceedings of the forum acusticum ,2002.
regular waveform and a broadband frequency response. A [8]CEN/TS 1793-5.Road traffic noise reduction devices-test method for
microphone is flush mounted into the pipe wall. The determing the acoustic performance-Part 5:intrinsic characteristics-in situ
values of sound reflection and airborne sound insulation,2003.
distance between the microphone and the measured [9]ISO13472-1.Acoustic measurement of sound absorption properties of
specimen should be large enough to separate the incident road,Surfaces,in,situ-Part,I:extend surface method.
pulse and reflected pulse. Compared with the result of [10]X.Jing and K.Y.Fung, “Generation of desired sound impulses,”.
B&K4206 impedance tube measurement, the proposed J.Sound and Vib. vol. 297, pp. 616–626, 2006.
[11]Xu shihua ,Houhong. “A method to develop a dignally-controlled
method has good repeatability and high precision, although sound impulse generator,”.Journal of elementary electroacoustics, vol.31,
different internal tube diameters are used in our research. pp. 9–13, 2007.
Besides this ,the effectivity of this new method is also [12] P.M.Morse and K.U.Ingard, Theoretical Acoustics(McGraw-Hill,New
verified through the measurement of the absorption York,1968).
[13]H.Levine and J.Schwinger, “On the radiation of sound from an
coefficient of pipe exit.
unflanged circular pipe,”. Phy.Rev , vol. 73, pp. 383–406, 1948.
It is believing that this method could also be used for in-
situ measurement of sound absorption coefficient in space.
ACKNOWLEDGMENT
This work was financially supported by the National
Natural Science Foundation of China with Grant
No.10674111 and doctorate foundation of Northwestern
Polytechnical University with Grant No.Cx200802.

285
2009 International Conference on Computer Engineering and Technology

Parallel Design of Cross Search Algorithm in


Motion Estimation
ZHANG Fan
China University of Geosciences (Beijing), the School of Geophysics and Information
Technology, Beijing, 100083
68kilo@163.com

Abstract—In order to facilitate the H.264/AVC implementation in II. MOTION ESTIMATION TECHNOLOGY
application system with low bit rate; its coding algorithm should be
optimized. In this paper, through analysis of the motion vector A. Motion estimation fundamental
distribution in the video image and the serial search strategy, a type of For motion image the most situation is that only very few
parallel program based on the cross search algorithm is presented,
designed and implemented. Finally this design program is played in
part of images in motion, the content difference between two
the multi-core computer equipment, and the experimental result neighboring video frame in same identical scene is not obvious,
shows: on the premise of the coding speed of the cross search or that the content of the latter and the preceding have many
algorithm after paralleling has been greatly improved without overlap parts, that is to say that the two frame have strong time
affecting the quality of H.264 coding. relativity. The basic idea of motion estimation (as shown in
figure 1) is to divide each frame of image sequence into many
Keywords—cross search; parallel design; motion estimation; non-overlapping macro blocks, and that all the block-pixel
H.264/AVC
displacement are the same, then for each block in current frame
find the most similar block namely matching block in given
I. INTRODUCTION
scope to the front or after frame according to certain matching

H .264/AVC is a video code standard established by ITU-T


and the MPEG expert group JVT, this standard can obtain
very high coding efficiency, especially has distinct
criteria, and figure out motion displacement from the relative
position of the matching and current block and the motion
displacement is the motion vector of current block. Finally
enhancement in the low code rate aspect compared to MPEG-4, using the motion vector for motion compensation in reference
suits to the needs of low broad band and high quality network
frame and the difference will be lineal coded with the motion
video. But to improve coding efficiency H.264/AVC used
vector after DCT change, quantization and run coding then
many algorithms with high computed complexity which make
spread out with form of bit-stream.
the computation of coding and decoding very big, this becomes
a main bottleneck of H.264/AVC code standard application.
In a continuous video sequence, there is a lot of relevance current frame
between the adjacent frames, which is called frame
redundancy. Through reducing the frame redundancy the
efficiency of video encoding can be greatly improved, because
H.264/AVC adopts that various block partition modes use the
motion compensation with 1/4 pixel accuracy synchronously,
so comparing with the previous coding standard, its motion Y
Cr
estimation accuracy is greatly improved, but at the same time reference frame + difference
Cb
the calculation amount is also greatly increased. Through
analyzing the various algorithm modules of H.264/AVC
encoder it can be seen: the motion estimation module of
DCT+quantization+run
H.264/AVC encoder is the main time-consuming module, and coding…
in the single frame of reference, its waste time occupies 60% of
the total encoder; in the 5 frames of reference, its waste time motion vector
lineal coding
can occupy as high as 80%, therefore, how to reduce the MV

calculation amount of the module is one of the hot spots in the Fig.1 motion estimation basic idea
encoder algorithm.
Obviously, the smaller the difference, the more favorable it is
to be compressed. Therefore, the main objective of motion
estimation is to make the residual value between the forecast

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 286


DOI 10.1109/ICCET.2009.65
and current block as little as possible. The selection of the separately denotes the horizontal component and vertical
search window size (the scope of the search) has great impact to component of the motion vector. Here optimal matching is
the search results: the greater the scope of the search, more corresponding to finding the maximal point of NCCF.
possibility to obtain smaller residual block, but it will bring After the SAD (Sum of Absolute Differences) criteria
about more time spending. Usually the searching scopes can be appeared, it rapidly replaced MAE and adopted by each kind of
selected are: ± 7,±16,±32 and so on. Because the motion estimation algorithm, only because its matching effect
block-matching needs pixel comparison between the before and is equivalent to MAE but get rid of the needless division and the
after frame, so if full search algorithm (that is compare with all computation is largely reduced.
N −1 N −1

∑∑ | I
possible points in exhaustive reference frame region and then
find the overall merits) is used, the computation is very large.
SAD(i, j) = 2 (m, n ) − I1 (i + m, j + n ) |
m = 0 n =0
B. Block matching function This is because that for the blocks with same shapes size,
The accuracy of motion estimation relies on the matching those N Z are same and it is not necessary to divide it; on the
criteria used in block-matching process and in which the most other hand, in the calculation process when the block SAD is
important is the block distortion measure (BDM) between two found more than the current least it will be dropped out, thereby
matching pixel blocks. Here assuming that the frame motion of the calculation will be significantly reduced. Therefore in this
objects is limited in the search window (2 w × 2w) . Following paper SAD is used to be block-matching criteria.
the definitions of these BDM and the corresponding matching C. Choice of motion estimation search algorithm
criteria are given: m and n are the scale to calculate BDM pixel
To design reasonable search templates and search strategies,
block (corresponding to the width and height), U ( k , l ) is the
the research of the motion vector distribution in the video
object in before frame, U R (k + p, I + q) is the matching sequence is very important. For the people, the knowledge of
the motion vector distribution in the video sequence and the
block of current frame and ( p, q ) is the frame motion vector
development track of the template search algorithms are
of objects (displacement vector). synchronous. In the early template search algorithms, such as
1) Cross-correlation function (CCF) the template search algorithms (TTS), the motion vector
m n

∑∑U (k , l )U
k =1 l =1
R (k + p, l + q) distribution in the video sequence was generally believed to be
uniformly, that is, any one within the frame reference search
M 1 ( p, q ) = 1 1
scope could be the best match block of the current coding
⎛ m n 2 ⎞2 ⎛ m n ⎞2
⎜ ∑∑U (k , l ) ⎟ ⎜ ∑∑ U R (k + p, l + q ) ⎟
2
block. However, with in-depth study, this knowledge that the
⎝ k =1 l =1 ⎠ ⎝ k =1 l =1 ⎠ motion vector distribution in the video sequence is uniform is
Matching criteria: the pixel block corresponding to the least proved to be inaccurate. Through the statistic to the motion
M 1 ( p, q) (− w ≤ p ≤ w,− w ≤ q ≤ w) in the region is vector distribution in a large number of video sequences, it is
found that the motion vector distribution of the video sequences
searched to be optimal matching block, d h = p and d v = q are basically in the center, and with the motion vectors location
separately denotes the horizontal component and vertical farer the number of them is smaller. This is the video sequence
component of the motion vector. motion vector concentrated distribution rule generally known
2) Mean square error (MSE) currently. By analyzing, it is found that the motion vectors are
2 concentrated distributed in the vicinity of the central region
1 m n
MSE ( p, q) = ∑∑ [U (k , l ) − U R (k + p, l + q)]
mn k =1 l =1
with a different ratio. Based on the research result, in this paper
the cross search algorithm is regarded to be an example and is
carried out a parallel design.
Matching criteria: the pixel block corresponding to the
maximal MSE ( p, q ) ( − w ≤ p ≤ w,− w ≤ q ≤ w) in the III. CROSS SEARCH ALGORITHM PARALLEL DESIGN
region is searched to be optimal matching block, d h = p and A. Search algorithm parallel design background
d v = q separately denotes the horizontal component and Through the research of the current search algorithm, it is
found that the main difference between the algorithms is the
vertical component of the motion vector.
3) Majority average error function (MAE) aspect of selecting search point on the template, that is, the
shape and size of the search template are different. In the search
1 m n
MAE ( p, q ) = ∑∑ | U (k , l ) − U R (k + p, l + q) |
mn k =1 l =1
range with same size, in order to achieve faster search speed
and better search result with fewer search points, the different
template fast search algorithms have different starting point and
Matching criteria: the pixel block corresponding to the least ideas when designing the search template. But they have one
MAE ( p, q ) (− w ≤ p ≤ w,− w ≤ q ≤ w) in the region is common characteristic: all the search templates must go
through the descending, successive transformation process. In
searched to be optimal matching block, d h = p and d v = q other words, no matter whether or not it is necessary, they will

287
complete the entire search template change process NAME: Parallel-Cross-shaped
step-by-step. The deficiencies of these algorithms can be Begin
summarized as follows: the search template can not be selected Select search starting point;
optionally, and it is can not be processed flexibly based on the For each i par-do //the first search
motion type of the video image. No matter what motion type of Computer SAD (i);
the video image, it must be firstly searched by the large For (i=1; i<=4; i++)
template and then oriented by the small template; or firstly Select min ( SADL (i ) ); //find the point i responding
searched with larger search radius, and then gradually reduce
the smallest SAD in the large cross image
the search radius. This search strategy is undoubtedly a waste
For (i=1; i<=4; i++)
for the video image with small motion type, thus affecting the
speed of the search. Farther, when using large template to Select min ( SADS (i ) );//find the point i responding
search, the search direction can be misled because the larger the smallest SAD in the small cross image
search radius, thus affecting the accuracy of the search.
B. Cross search algorithm parallel design If SADL (i ) <=SAD (0) and SADS (i ) <=SAD (0)
When searching the large and small cross templates together then
participate in the search, then according to the different location //SAD (0) search the SAD value of the starting point
of the block with the smallest matching error SA the different The block of SAD (0) is the best current matching block
templates will be adopted to complete the subsequent searches Else
(under normal circumstances, the search distance of the large If SADL (i ) > SADS (i ) then
cross template is 2 times of the small). When the block with the
smallest SAD value in the search center, it will be considered FindLengthS = FindLengthS × 2
the best matching block and the end of the search; When the FindLengthL = FindLengthL × 2
block with the smallest SAD value in the large cross template,
the search distance of the large and the small templates SADL (i ) → SAD(0)
separately improved to 2 times of the original search distance, Else
then the form that the large and the small templates together FindLengthS
participate in the search will be adopted for the next step search, FindLengthS =
until the block with the smallest SAD value in the search
2
center; When the block with the smallest SAD value in the FindLengthL
FindLengthL =
small cross template, the search distance of the large and the 2
small templates separately reduced to 0.5 times of the original
SADS (i ) → SAD(0)
search distance, then the form that the large and the small
templates together participate in the search will be adopted for Do Parallel-Cross-shaped
the next step search, until the block with the smallest SAD //recursively execute the above parallel cross
value in the search center. The idea is shown in figure 2. algorithm
End IF
End IF
C. Time complexity analysis of cross search parallel
algorithm
In the multi-processor system environment, assuming that
the time complexity of common cross search algorithm
is O (N ) . Then for the parallel cross search algorithm, in the
best case, its algorithm time complexity is O (log 2
N ) ; and in
the worst case, its algorithm time complexity is O (N ) .
Therefore, in a multi-system environment, the time complexity
of the parallel cross search algorithm
O(log 2 N ) + O( N )
is O (S) parell = , and comparing to serial
2
cross search algorithm, the implementation efficiency of
parallel cross search algorithm has been obviously improved.

Fig. 2 cross search parallel algorithm IV. EXPERIMENT RESULT AND ANALYSIS
The cross search parallel algorithm is: The experimental conditions are: experimental flat roof is
JM9.3 of JVT; coding sequence is IBPBP format; the number

288
of frame reference is 5; coding speed are 30fps; the machine using the serial cross search algorithm to code and the other is
type is DELL XPS 370; translate and edit circumstance is using the parallel cross search algorithm presented in this
VC6.0; and the testing sequence is “Foreman”, “Stefan”, paper, and the complexity of testing sequence, image quality
“Akiyo” of the
QCIF (176 × 144 ) format.
and bit rate are separately compared with, which is shown in
table 1.
Two test groups are done in this experiment, one group is
TABLE1 SERIAL AND PARALLEL CROSS SEARCH ALGORITHM EXPERIMENT RESULT

(a) Foreman

Serial algorithm Parallel algorithm


Quantitative
PSNR bit rate time PSNR bit rate time
parameter
16 37.48 16022079 61.83 37.48 16022079 35.91
24 30.35 7027231 65.47 30.35 7027231 36.73
28 26.95 4288159 59.32 26.95 4288159 33.16
36 20.15 1263455 64.37 20.15 1263455 36.18
(b) Stefan
Serial algorithm Parallel algorithm
Quantitative
PSNR bit rate time PSNR bit rate time
parameter
16 37.89 7250180 57.65 37.89 7250180 31.82
24 31.33 2384252 53.63 31.33 2384252 30.81
28 28.51 1352196 53.89 28.51 1352196 29.94
36 22.95 480804 55.47 22.95 480804 29.73
(c) Akiyo
Serial algorithm Parallel algorithm
Quantitative
PSNR bit rate time PSNR bit rate time
parameter
16 39.75 1560993 35.12 39.75 1560993 20.56
24 33.76 466697 39.56 33.76 466697 21.78
28 30.98 252689 32.14 30.98 252689 17.07
36 25.23 88305 37.01 25.23 88305 20.50

Through analyzing the experimental data in table 1 it is easy with it. Through optimizing the coding speed of H.264/AVC
to be found: comparing with the previous serial cross search coder, it is able to meet market demand. Therefore improving
algorithm, after paralleling the PSNR and the bit rate has not the coding speed of H.264/AVC coder will continually become
change, but the coding time is reduced obviously, a hotspot of future academic research and its research results
consequently, the parallelizing of cross search algorithm is also will have important impact on peoples’ living.
validated and has notable effect to improve the coding speed of
H.264/AVC coder. REFERENCES
[1] ITU Recommendation H.261. Video Codec for audio visual services at
V. CONCLUSION px64k bits/5. 1990.
[2] ITU Recommendation H.263. Video Coding for low bit rate
In this paper the motion estimation part which affects the Communication. 1995.
coding speed of H.264/AVC coder is optimized, that is, the [3] ISO/IEC DIS 13818-2(MPEG-2). Generic Coding of moving pictures and
associated audio information. 1994.
cross search algorithm is parallelized. Through the analysis of
[4] Draft ITU-T Recommendation H.264 , Joint Video Team (JVT) of
the experimental data it can be seen that the performance of the ISO/IEC MPEG and ITU-TVCEq Document JVT C167,May 2002,
optimized motion estimation has obvious improvement under 45∼49.
the circumstance of enough hardware condition (exist several [5] ITU-T Recommendation H.261, Video Codec for Audiovisual Services at
operation units). px64 k bit/s ,Mar.1993,19∼21.
[6] Liqiang Han, Bo Yang, a method rapidly realize H.264 motion
With the rapid development of computer network and estimation, Opto-electronics, 2006, 33(8), 94~97.
communication technology, the demand to provide high quality [7] Junhao Huang, Duyan Bi,and so on, H.264-based multi frame motion
network audio, video and other multimedia services is growing. estimation rapid algorithm, Computer engineering, 2006(32),238∼240.
Because the unique applying environment of real-time video
transmission, traditional coding methods are no longer apply

289
[8] Yonglin Ding, Haibin Shen, motion estimation algorithm comparison and
improvement in H.264/AVC, Digital TV & digital video,2005,17(2),
17∼18.
[9] Iain E.G.Richardson, new multimedia video coding technology of H.264
and MPRG-4 video compress, Changsha: National university of defense
technology publishing, 2004, 99~107.
[10] Lansun Shen, Li Zhuo, Video coding and low rate of transmission,
Beijing, Electronic Publishing Industry, 2001, 27~31.
[11] [Wensheng Wang, Ming Yang, Huijuan Cui, adaptive early exit
algorithm of H.264 motion estimation, Tsinghua University Journal
(Natural Science), 2004, 44(10), 28~31.

290
2009 International Conference on Computer Engineering and Technology

Influences of DSS Environments and Models on Current Business Decision and


Knowledge Management

Md. Fazle Munim Fatima Binte Zia


MBA in MIS BSc in Electrical & Electronics Engineering
Stamford University Independent University
Dhaka, Bangladesh Dhaka, Bangladesh
e-mail: sayket@gmail.com e-mail: fatimabintezia@yahoo.com

Abstract-This paper mainly discussed on the influence of • The consequences of different decision alternatives,
Decision Support System – DSS´s environments and models on given past experience in a context that is described
current global business decision and knowledge management.
While describing the different stages of DSS development it II. EARLY STAGE OF DSS
also clarifies the influencing environments as well as the
Computerized decision support systems became practical
models of DSS. It is also identify the relation between Data,
Information and Knowledge.
with the development of minicomputers, timeshare operating
systems and distributed computing. The history of the
Keywords-modeling; environment; support; relation; implementation of such systems begins in the mid-1960s. In
knowledge; information a technology field as diverse as DSS, chronicling history is
neither neat nor linear. Different people perceive the field of
Decision Support Systems from various vantage points and
I. INTRODUCTION report different accounts of what happened and what was
"Information technology is no longer a business important. As technology evolved new computerized
resource, it is the business environment." and this is the decision support applications were developed and studied.
truth of modern business world. Increasing global Researchers used multiple frameworks to help build and
competition, are adding complexity and uncertainty of understand these systems. Today one can organize the
several orders of magnitude to the modern business history of DSS into the five broad DSS categories, including:
environment and organizational style where the ongoing Communications-driven, Data-driven, Document driven,
advances in information technology (IT) have a great effect Knowledge-driven and Model-driven decision support
to control over the uncertainty and challenges. Information systems.
technology management (or IT management) is a In the early days, DSS was filled with magic – we
combination of two branches and they are information thought that managers would be directly involved with
technology and management. This aims at achieving the computers to evaluate scenarios and support their decision-
goals and objectives of an organization through a proper making! The dream lost steam and focus in about the mid
automation system. And in the automation system DSS or 80’s. That was because “information” took over from
Decision Support System have a vital role. “decisions” in the use of IT. DSS was largely reduced to
Decision Support Systems (DSS) are a specific class of spreadsheet reports and accessing and reporting historical
computerized information system that supports business and data. Executive Information Systems (EIS) that followed
organizational decision-making activities. A properly DSS provided what became routine reporting systems for
designed DSS is an interactive software-based system historical data with their routine, non-imaginative, complex,
intended to help decision makers compile useful information and even boring interfaces.
from raw data, documents, personal knowledge, and/or In 1980, Steven Alter published his MIT doctoral
business models to identify and solve problems and make dissertation results in an influential book. Alter's research
decisions. and papers (1975; 1977) expanded the framework for
Typical information that a decision support application thinking about business and management DSS. Also, his
might gather and present would be: case studies provided a firm descriptive foundation of
• An inventory of all of your current information decision support system examples. A number of other MIT
assets (including legacy and relational data sources, dissertations completed in the late 1970s also dealt with
cubes, data warehouses, and data marts) issues related to using models for decision support. Alter
• Comparative sales figures between one week and the concluded from his research (1980) that decision support
next systems could be categorized in terms of the generic
• Projected revenue figures based on new product operations that can be performed by such systems. These
sales assumptions generic operations extend along a single dimension, ranging

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 291


DOI 10.1109/ICCET.2009.96
from extremely data-oriented to extremely model-oriented. • The decision-making process itself: a set of steps,
Alter conducted a field study of DSS that he categorized into more or less well-understood, for transforming the
seven distinct types of DSS. His seven types include: inputs into outputs in the form of decisions
• File drawer systems that provide access to data • A set of outputs from the decision-making
items. process, including the decisions themselves: a set
• Data analysis systems that support the manipulation of criteria for evaluating decisions produced by the
of data by computerized tools tailored to a specific process against the set of needs, problems or
task and setting or by more general tools and objectives that occasioned the decision-making
operators. activity in the first place.
• Analysis information systems that provide access
to a series of decision-oriented databases and small IV. DECISION MAKING ENVIRONMENT:
models. In making important decisions, any information sources
• Accounting and financial models that calculate the that contain relevant important information are going to be
consequences of possible actions. accessed and used, if possible. The decision maker uses the
• Representational models that estimate the whole network of information sources and variety of
consequences of actions on the basis of simulation available media. In most cases it is impossible to access or
models. produce all required information, so decisions are made
• Optimization models that provide guidelines for under circumstances of uncertainty and incomplete
action by generating an optimal solution consistent information. Business decision support seems to have
with a series of constraints. common ground with other areas containing significant
• Suggestion models that perform the logical analytical work: scientific research, military and political
processing leading to a specific suggested decision intelligence, or criminal investigation – in all cases, there are:
for a fairly structured or well-understood task. • A problem situation which requires analysis in line
with general strategy and goals
III. MODELING DECISION MAKING • Assumptions
Decision support systems (DSS) disciplines deal with the • Deficit of information (and time in many cases)
use of information technology to support human decision- • Certain (usually big) amounts of diverse empiric
making processes. Michael Scott-Morton, who virtually data which is chaotic in its nature and has to be
invented the discipline in the early 1970s, offered this processed in some way for relevant facts and
definition of DSS: findings
“Decision support systems couple the intellectual • Field knowledge is required to extract these facts and
resources of individuals with the capabilities of the findings
computer to improve the quality of decisions. It is a • The calculated facts and findings are carefully
computer-based support system for management evaluated against wider context - political, social,
decision-makers who deal with semi-structured ethical etc
problems.” • Growing IT support. Apart from needs for data and
Like this his founding definition – like all definitions – information and their availability, knowledge
presents us with problems: who is the decision-maker? What possessed or required by the decision making subject
kinds of data serve as inputs to the decision-making process? is an important part of the decision environment
What does the decision-making process itself look like?
What kinds of risks and constraints are associated with the V. HOW DO DSS ENVIRONMENTS SUPPORT DECISION
decision-making process? How is the output of the decision- MAKING:
making process a decision – evaluated, implemented and DSS environments support the generic decision-making
tracked? Ultimately, no matter where we ground ourselves in model above in a number of ways:
a discussion of decision support systems, we have to develop • In decision preparation, DSS environments
and employ a model of decision-making: the set of activities provide data required as input to the decision making
that DSS environments support. The key elements of this process. This is interestingly enough; about all most
model are fairly common, and include: data mart and data warehousing environments do
• A decision-maker: an individual or group charged today.
with making a particular decision • In decision structuring, DSS environments provide
• A set of inputs to the decision-making process: tools and models for arranging the inputs in ways
data, numerical or qualitative models for interpreting that make sense to frame the decision. These tools
that data, historical experience with similar data sets and models are not pivot tables and other aspects of
or similar decision-making situations, and various data presentation found in query tools. They are
kinds of cultural and psychological norms and actual decision making tools, like fault tree analysis,
constraints associated with decision-making Bayesian logic and model-based decision-making
based on things like neural networks.

292
• In context development, DSS environments again worthwhile to take a look at the role of data, information and
provide tools, and provide the mechanisms for knowledge in the context of managerial decision making,
capturing information about a decision’s and professional learning and experience.
constituencies (who’s affected by this decision), Human side of IT management decision support, there
outcomes and their probabilities, and other elements seems to be agreement that IT should act as:
of the larger decision making context. • An enhancing instrument for decision search and
• In decision-making, DSS environments may analysis as a high-level and knowledge-intensive
automate all or part of the decision-making process management activities
and offer evaluations on the optimal decision. Expert • A creativity stimulation and managerial learning
systems and artificial intelligence environments tool,
purport to do this, but they work only in very limited • An instrument for reduction of biased attitudes as
cases, because of some fundamental flaws in the well as insurance from making fatal decisions,
technology (namely, their inability to deal with non- • An instrument for maintaining, managing and
binary, or fuzzy, choices, like “it’s more likely that developing the explicit part of knowledge on
we’ll lose market share than win it,” which is a rule decision making – models, situations, scenarios, case
that no traditional AI-based system can code). studies etc.
• In decision propagation, DSS environments take
the information gathered about constituencies and VII. UNDERSTANDING OF RELATIONS BETWEEN DATA,
dependencies and outcomes and drive elements of INFORMATION AND KNOWLEDGE
the decision into those constituencies for action. Data →Information → Knowledge: Data is processed
• In decision management, DSS environments into information, which is evaluated against existing
inspect outcomes days, weeks and months after knowledge or stimulates creation of new knowledge in a
decisions to see if (a) the decision was implemented sense that missing links in the decision model are produced
/ propagated and (b) if the effects of the decision are and put in place (”the pieces finally fit”). There are relations
as expected. or sequence chains between data, information and
knowledge with the idea that better understanding of these
VI. HUMAN SIDE OF IT MANAGEMENT DECISION sequences might help producing better support for problem
SUPPORT SYSTEM situations. Here is some other relationship chain that data,
In the field of business decision support, more and more information and knowledge share:
recent research has been concentrating on the human side of Knowledge → Information → Data: this sequence
the person-technology relation in decision making. It has might be based on having the knowledge to look for
been shown in a variety of works that business decision information and then turn it into data. For instance, in a
making environment is a unity of decision makers’ problem situation general and professional knowledge can
experience, beliefs and perceptions on one side, and decision point to what information is needed to make the right
support tools and techniques – on the other side. The decision, what information is readily available, and what
information environment surrounding business activities and information must be produced from some sources. This
decisions is getting increasingly complex due to growing information is then worked into decision data – prices to be
volumes of information of potential relevance to certain set, planned investment, resource distribution and
business activities; increasing number of sources of such redistribution, budget structure and so on.
information; and multiplying technologies for accessing and Data → Knowledge → Information: knowledge is
handling data and information. The expected role of required to process data into information. Another possible
information technologies (IT) is to filter and direct relevant case: the content of data suggests ways (or produces new
information flows and to provide reliable and flexible knowledge) to extract information out of this data, e.g.,
support. group or query the data by some criteria which carry
At the same time, every case of decision making for a business logic or other rationale.
problem situation tests the existing support mechanisms and Information → Knowledge → Data: knowledge is
provides valuable information for future situations, thus required to get data from information, where data amounts to
creating new knowledge and experience for participants final decision criteria: buy – don’t buy; accept proposal –
involved, and in the case of right decision increasing reject proposal; set the price etc. From the need for simple
confidence in future actions. Alongside with technologies for outcome the situation can be worked backwards to track
handling data and information, lately much attention has what information would be needed to, for instance, estimate
been given to knowledge management (KM) models, their the price, and what knowledge precedes the definition of this
relevance to decision activities and relations between data, information, its sources, completeness, Such decision
information and knowledge. In knowledge-intensive disassembly might help to explain better what exactly should
activities, such as decision support, these relationships are be supported and how to do it best.
important in terms of efficient utilization of information Knowledge → Data → Information: probably this path
resources, and especially those supported and facilitated by is possible only conditionally if we admit that having
IT with its present capabilities, so it has been considered

293
knowledge we know where to look for data to produce REFERENCES
required information. [1] Angehrn A. (1993). Computers that Criticize You: Stimulus-Based
Information → Data → Knowledge: the ending phase Decision Support Systems. Interfaces, 23,
of a decision where decision information is processed and No.3, 3-16.
discussed into a decision which might be in a form of data –
a simple figure, a set of figures, text, choice, but it carries the [2] Borch O.J., Hartvigsen G. (1991). Knowledge-based systems for
strategic market planning in small firms.
load of preceding decision information, concepts and Decision Support Systems, 7, 145-157.
models, and its emergence leads to new knowledge added to
existing body. In all cases, the components of these [3] Alavi, M., & Joachimsthaler, E. A., “Revisiting DSS Implementation
sequences take some of the following forms: Research: A Meta-Analysis of the literature and suggestions for
Data: researchers,” MIS Quarterly, 16, 1, 1992, 95-116.
• Initial, “raw” unprocessed empiric data; [4] Berners-Lee, T., “The World Wide Web: Past, Present and Future,”
• Data available from previous experiences; August 1996, URL
• Data as a decision result. http://www.w3.org/People/Berners-Lee/1996/ppf.html, last accessed March
Information: 5, 2007.
• Readily available at the start of decision process; [5] Bush, V. "As We May Think", The Atlantic Monthly, 176, 1, July 1945,
• Obtained from processed data or other information; 101-108,
• Available outside the organization. http://www.theatlantic.com/unbound/flashbks/computer/bushf.htm
Knowledge:
[6] Chuang T.-T., Yadav S.B. (1998). The development of an adaptive
• Possessed at the start of the decision process; decision support system. Decision Support Systems, 24, No.2, 73-87.
• “know-how” of adding decision value: converting
raw data into information, or extracting final data [7]V.Lalith Kumar, Business Decision Making, Management and
from information; Information Technology, MBA Research, ICFAI Business School
Bangalore.
• Newly acquired in the decision making process.
• These relations are important in a sense that the most [8] P.G. Keen and M.S. Scott-Morton. Decision Support Systems: An
valuable asset in decision making situation is Organizational Perspective. Reading, Massachusetts: Addison - Wesley,
knowledge, and 1978.
• Any support for expanding the existing knowledge,
regardless of the sequence, is adding value and
quality to the
• Decision making process.
VIII. CONCLUSION
This paper will mainly help the DSS designer to
understand and develop a DSS system. In other words, the
decision maker has to develop sufficient knowledge on the
situation to make a confident enough decision, and that
eventually knowledge, not information or data alone, is
used in decision making. This knowledge must possess
completeness, as opposed to fragmented pieces gained in
separated situations which might be having very little in
common; completeness is also reflected in a decision process
where the deciding entity performs an iterative buildup of
decision support points towards a sufficient set to make a
decision. Regarding the simple support tools and techniques,
and decision makers’ ideas on the ideal decision
environment, a concept of “information control center” can
be developed for a decision making environment, where the
key information sources and most often used support tools
are always up and accessible just by few mouse clicks.
The possibilities of IT in facilitating problem solving
creativity are an important issue in itself; here the technology
has some proven points – idea generation, exchange and
testing mechanisms; growing sophistication of work styles;
support of teamwork and communication. This issue
deserves special attention and is going to be a part of further
research.

294
2009 International Conference on Computer Engineering and Technology

A Method for Transforming Workflow Processes to CSS

XIAO Jing WU Guo-qing


Computer School of Wuhan University, Computer School of Wuhan University,
Wuhan Hubei 430079,China Wuhan Hubei 430079,China
xj21c111@yahoo.com.cn

CHEN Shu
Computer School of Wuhan University,
Wuhan Hubei 430079,China

Abstract In this paper, we proposed a method to the process expressions in CCS to describe the
transform the workflow processes into CCS, and the workflow model which is expressed in activity
workflow process is described in activity network network charts, thus provide the exact formalization
charts. For the first, we used CCS to describe the six basis for the workflow model, and then we describe its
basic logical relations of the workflow model, and then operational semantics in the form of synchronous tree,
based on the basic expressions, we illustrate how to at last we verify the correctness for the workflow
transform the whole workflow model to CCS process processes.
expressions.We provide the exact formalization basis
for the workflow model, and express its operational 2.Activity Network Charts
semantics in the form of synchronous tree, at last we In this paper, we use activity network charts to
use the synchronous tree to verify the correctness of describe workflow process. The activity network charts
the workflow processes. is directviewing, convenient, simple and practical, it is
Keywords: workflow process, CCS, activity network sufficient to describe any business process. A process
charts, operational semantics, correctness model can be regarded as a oriented graph composed
of nodes and directed edges. Nodes denotes activities,
1.Introduction directed edges denotes the ordinal relations between
With the advent of information age, more and activities. Nodes can be classified into three categories
more enterprise would improve their competitiveness by its function: task node, control node and symbol
rely on information technology, the workflow node. The task node represents all kinds of activities or
technique plays a key role on the informatization of the tasks which are elements in a business process. The
business system. At present, in this area, there are a lot control node represents the logical relations among
of related research and have achieved rich results in the task nodes. There is only two kinds of symbol nodes:
theory and practice. WFMC defined six basic elements start node and terminal node, s denotes the start node
of workflow model that is sequence, AND-split, AND- and it means the beginning of a workflow, t denotes the
join, XOR-split, XOR-join and cyclic relation[1].Based terminal node and it means the finishing of a
on the six elements, workflow model can be expressed workflow.
in several different ways. For example, Aalst expressed There are six basic logical relations among the
the workflow model in the form of WF-net[2,3,4], it is task nodes, other more complicated relations can be
based on Petri net. Harel used statecharts and activity composed of the six basic relations.
diagram to describe the workflow process in [5]. a) sequence relation: it indicates that an activity is
Besides there are some other descriptive forms based execute immediately after another activity.
on ECA rules[6,7,8] or based on logic[9], and so on. b)AND-split: it indicates that generating more
Among all of the descriptive forms of the workflow than one parallel branches from one execution branch.
model, the activity network charts[10] is the most c)AND-join: it indicates that several parallel
convenient and understandable for users. However, it branches gather as one brach to execute.
does not have exact semantics and formalization basis, d)XOR-split: it indicates that choosing a brach to
so it is difficult to analyze its properties and verify its execute according to the condition of several potential
correctness. branches.
CCS is a functional language proposed by e)XOR-join: it indicates that when several
Milner[11,12], process is the basic element. It is parallel branches gather as a brach, it can be executed
suitable for describing the concurrent system, and it as long as one of them satisfy the condition.
has a strict mathematical basis. In this paper, we used

This work was supported by a grant from the National High Technology Research and Development Program of China (863 Program) (No. 2007AA01Z185)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 295


DOI 10.1109/ICCET.2009.106
f)cyclic relation: it indicates that a task is Activity Network Charts is semi formalized, it
executed for more than two times. does not have exact semantics, so it is difficult to prove
Graph notations of the six basic logical relations its correctness. In this paper, we use CCS to describe
are shown from Fig 1 to Fig 6: the activity network charts thus provide the theoretical
principle for verifying the workflow model in a
formalized method.
a1 a2 In the last section, we illustrated the six basic
logical relations, any complicated business process can
be composed of them, so how to use CCS to express
Fig 1 sequence the six basic logical relations seems a very crucial
problem.
a2
There is a key point for the translation, that is
a1 every task node in the activity network charts is
correspond to a process in the CCS. This is because
a3 they are clastic in terms of their granularity. A task
node can be refined as several sub activities, and a
process can contain several actions. Based on this key
Fig 2 AND-split
point, we proposed the method for the translation.
a1 Fig 1 shows the simplest relation, that is sequence
relation, it indicates that a2 is executed immediately
a3 after a1, if we regard a1 and a2 as processes, this
relation can be expressed as a=a1.a2.
a2 Fig 2 is AND-split relation, a2 and a3 are parallel
processes, this relation can be described in CCS as a =
Fig 3 AND-join
a1.(a2 | a3), it means that a2 and a3 is concurrent
immediately after a1 is executed.
a2 Fig 3 is AND-join relation, a1 and a2 are parallel
a1 processes, a3 can be executed only if a1 and a2 are
both finished. This relation can be described in CCS as
a3 a = (a1.Nil | a2.Nil).a3. Nil denotes null process, it
does nothing. The reason to add Nil after a1 and a2 is
that a3 should be executed only if a1 and a2 are both
Fig 4 XOR-split
finished. If either one is not finished, a3 can not be
executed. So adding Nil enables a1 and a2 to wait for
a1 each other.
a3 Fig 4 is XOR-split relation, a2 and a3 are
exclusive choice, that is after a1 is finished, either a2
a2 or a3 can be choosed to execute. So this relation can be
described in CCS as a = a1.(a2 + a3).
Fig 5 is XOR-join relation, that is a simple
Fig 5 XOR-join merge, when either a1 or a2 is finished, a3 can be
executed. So it can be described in CCS as a = (a1 +
a2 a2).a3.
Fig 6 is cyclic relation, it is more complicated, we
a1 a5 can expressed it with recursive process expressions. If
a´ is the loop activity, we can conclude that:
a3
a´ = (a2 + a3).(a4.a´+a5).
So the entire activity network charts can be
a4 described in CCS as a = a1. a´.
Table 1 summarized the six basic logical relations
with their CCS process expressions.
Fig 6 cyclic relation Based on the basic expressions, we can express
any complicated activity network charts with CCS, in
3.Use CCS to Describe Activity Network Charts the next section, we would illustrate the transform

296
method via an example about an office automation
system. s

Table 1 six basic logical relations


basic logical relations process expressions
sequence a = a1.a2
AND-split a = a1.(a2 | a3) a1 a2
AND-join a = (a1.Nil | a2.Nil).a3
XOR-split a = a1.(a2 + a3)
XOR-join a = (a1 + a2).a3
cyclic relation a´= (a2 + a3).(a4.a´+a5)
a = a1.a´

4.An Example About an Office Automation System a3


The example is an OA system, it is used for
managing the documents. For the first, a initial
document is drafted or entered, after it was checked, it
would be sent to the leader of the department and the
bureau, then both of the leaders would read it, the next
step is joint signature, at last the document would be a4 a5 a7
kept or sent back to recheck according to the result of
the last step. Table 2 shows all of the activities in the
flow:
Table 2 activities in the flow
activity ID activity name
a1 draft a document
a2 enter a document a6
a3 check
a4 Leader of the department read
a5 Leader of the bureau read
a6 joint signature
a7 recheck
a8 keep the document
Fig 7 is the work flow model of the system:
According to the method which we proposed a8
before, we can transform the whole workflow model to
CCS as below:
Since the start node and the terminal node are just
symbols that indicate the beginning and finishing of t
the workflow, they need not to be described in CCS.
There is a loop in the flow, so we should express Fig 7 the workflow model of the OA system
the cyclic activity for the first, if we define a´ as the
cyclic activity, then from the workflow model, we can In this section, we verify the correctness of the
conclude that: workflow model by means of checking the semantics
a´ = a3.(a4.Nil | a5.Nil).a6.(a7. a´ + a8) of the process expressions, these process expressions
If the whole flow is a, it can be described in CCS describe the workflow model in the form of CCS. Fig 8
as: shows the model to be verified. Obviously, it is not
a = (a1 + a2).a´ correctness in its structure. When we consider c2, a4
should be executed only if a2 and a3 are both finished,
5.Verification for Workflow Model
The workflow model does not have exact however, when we consider c1, a2 and a3 are exclusive
semantics, so it is difficult to excute formalized choice,so there would be a deadlock before a4.
verification. In this paper, we transform the workflow
model to CCS, as CCS has exact semantics, we can
verify the workflow model base on it.

297
6.Conclusion and Future Work
a2 The workflow technique is a key role for the
a1 a4 informatization of the business systems. There are so
many ways to represent the workflow model. From the
c1 c2 view of the user, activity network charts is the most
a3
convenient and simplest method, and it is quite
intuitionistic and understandable. However it does not
Fig 8 the workflow model to be verified
have the exact formalization basis, so it is difficult to
When we transform the model to CCS, there are verify the correctness of its structure and function.
two result: To solve this problem we use CCS to describe the
α= a1.(a2 + a3).a4 six basic logical relations in the workflow model, and
β= a1.(a2.Nil | a3.Nil).a4 then propose a method to transform the whole
In the expressions above, αandβ both represent workflow model into the process expressions in CCS,
the workflow model. thus provide the exact formalization basis for the
Suppose that inβ, a2=μ.a2´,a3=ω.a3´, Fig 9 workflow model. To verify the correctness of the
and Fig 10 describe the operational semantics of αand model, we first transform it to process expressions,
β in the form of synchronous tree. In Fig 10, we elide then describe the operational semantics by means of
the null process Nil after a2 and a3. Becauseαandβ the synchronous tree, and at last check the conflicts
based on the semantics to judge the correctness.
describe the same workflow process, their operational
In this paper, we only illustrate the verification of
semantics should be consistent. Howere, the two
some basic properties of the workflow processes, the
synchronous tree denote different implementation of
method needs to be improved to verify the properties
the two process expressions, we can conclude that they
such as soundness and liveness. The issue about taking
have different operational semantics. So it can be
more complicated verification of the workflow model
proved that the workflow process in Fig 8 is not
needs further research. In the future we should
correctness consider about its structure, hence the work
concentrate on the verification for the properties and
flow process is unsoundness[15] , soundness is
correctness based on CCS.
originally defined in[14].
REFERENCES
[1] Workflow Management Coalition, The Workflow Reference
a1 Model[R], Technical report WFMC TC1003, Jan. 19th, 1995,
http://www.wfmc.org.
[2] W.M.P, van der Aalst. Modelling and Analysing Workflow
a2 a3 using a Petri-net based approach[C]. Proc.2nd Workshop on
Computer-Supported Cooperative Work, 1994, pp:31-50.
[3] W.M.P, van der Aalst.Verification of Workflow Nets[J].
Application and Theory of Petri Nets. 1997, Lecture Notes in
Computer Science, Springer-Verlag,Berlin 1997, Vol.12, pp:
a4 a4 407-426.
[4] W.M.P, van der Aalst.Three good reasons for using a Petri-net-
based workflow management system[C]. In Information and
process integration in enterprises: Rethinking documents,
Fig 9 synchronous tree of α Kluwer Academic, Norwell,MA,1998,pp:161-182.
[5] D.Harel, H.Lachover, A.Naamad, A.Pnueli, M.Politi,
R.Sherman. STATEMATE: A Working Environment for the
Development of Complex Reactive Systems[J]. IEEE
a1 Transactions on Software Engineering, 1990, Vol.5, pp:176-
201.
μ τ [6] G.Kappel., P.Lang, S.Rausch-Schott, W.Retschitzegger.
ω Workflow Management based onObjects, Rules and Roles[J].
IEEE Data Engineering Bulletin, 1995, Vol.18, pp:11-18.
[7] G.Kappel., S.Rausch-Schott,W.Retschitzegger. Coordination in
Workflow Management Systems-A Rule-based Aproach[J].
a2´|a3 a2|a3´ a2´|a3´ Springer LNCS, 1998.
[8] G.Kappel., S.Rausch-Schott, W.Retschitzegger. From rules to
a4 a4 a4 rule patterns[J]. In caise96, Creta,Gr-eece, Springer-Verlag,
Berlin, pp:99-115.
[9] H.Davulcu, M.Kifer, C.R.Ramakrishnan, I.V.Ramakrishnan.
Logic Based Modeling and A nalysis of Workflows[C]. In
Fig 10 synchronous tree of β ACM Symposium on Principles of Database Systems; ACM
Press, 1998.

298
[10] B.Scholz-Reiter, E.Stichel. Business Process Modeling[C].
Berlin: Springer-Verlag, 1996.
[11] R.Milner.A Calculus of Communicating Systems[J]. Springer-
Verlag, Lecture Notes in Computer Science 92, 1980.
[12] R. Milner. Communication and Concurrency[M]. Prentice-
Hall, 1989.
[13] Lu Ruqian.The Formal Semantics of Computer Language[M].
Bei Jing: Science Press, 1992.
[14] Van der Aalst, W.M.P. Verification of workflow nets. In
P.Azema and G.Balbo(eds), Pro.Application and Theory of
Petri Nets, Toulouse, France, June. Lecture Notes in Computer
Science, 1248, 407-426. Springer, Berlin, 1997.
[15] H.Verbeek, T.Baster, W.Aalst.Diagnosing workflow processes
using Woflan. Eindhoven University of Technology,
Eindhoven, Tech. Rep.:WP48, 2000.

299
International Conference
on Computer Engineering and Technology

Session 5
2009 International Conference on Computer Engineering and Technology

An Empirical approach of Delta Hedging in GARCH Model

Qian Chen Chengzhe Bai


Statistics Department Statistics Department
Columbia University Columbia University
New York City, U.S.A New York City, U.S.A
qc2118@columbia.edu cb2549@columbia.edu

Abstract—In this paper, we compare the costs and efficiency moneyness and time-to-maturity, which assumed constant in
arising from the delta-neutral dynamic hedging of options, the Black-Scholes model. That’s where local vol model
using two possible values for the delta of the option. The first comes in to calibrate vol to the market.
one is the traditional Black-Scholes delta, while the second one A central quantity for hedging and risk-management is
is the GARCH option pricing delta, namely the delta of the the option’s sensitivity to changes in the stock-price; its
option in the generalized Black-Scholes model with a volatility delta. The delta of an option is defined as the rate of change
calibrated from GARCH model. Both our theoretical analysis of the option price with respect to the rate of change of the
and empirical results of S&P 500 index options showed that underlying price. It is the number of units of the stock we
single-factor version of the GARCH delta showed better
should hold for each option shorted to create a riskless
performance than B-S delta (1973), especially when the
hedge. Mathematically, it is the partial derivative of the
volatility are very high. We believe the improvement is due
largely to the ability of the GARCH model to describe the
option price with respect to the underlying price.
correlation of volatility with spot returns. This allows the ∂BS call
Δ=
GARCH model to capture strike-price biases in the ∂S
Black-Scholes model that give rise to the skew in implied An Attempting way to a show this is to ignore/forget that
volatilities in the index options market. S enters inside the N(…)-expressions which makes the
differentiation very easy: Δ=N(d1)
Keywords:Delta hedging ; Garch; Time Series;Hedging Cost
Delta can be used to hedge a holding of the derivative
with a position in the underlying security or vice-versa which
is named as Delta hedging. When implementing a delta
I. BACKGROUND OF DELTA HEDGING IN TRADITIONAL hedging strategy, an investor issuing an option buys a certain
BLACK-SCHOLES amount of the underlying so that the overall portfolio,
compounded by the hedged and the hedging items, is
1.1 Black-Scholes Model insensitive to changes in the underlying. The portfolio has
In option market, Black-Scholes gave out exact price for delta equals to zero by construction and it is said to be delta
the Vanilla options. It states that under perfect market neutral. As time passes, the portfolio tends to lose its delta
conditions and Geometric Brownian motion dynamics, the neutrality[1]. This in principle could be maintained revising
only arbitrage-free time-t price of a strike-K expiry-T the portfolio continuously. However portfolio managers also
call-option is have an incentive not to hedge their risks, namely the cost of
Call ( t ) = BS call
( S ( t ), T − t , K , r , σ ) hedging. Only if the cost of hedging for the option is lower
where S(t) is the time-t price of a dividend-free stock, r is than the payoff from shorting the option, hedging increases
the risk-free rate, σ is volatility (i.e. the standard deviation the profit[2].
of appropriately time-scaled returns), and the function is
given by B 1.3 The position to hedge
− rτ
BS call
( S ,τ , K , r , σ ) = SN ( d1 ( S ,τ , K , r , σ )) − e KN (d 2 ( S .τ , K , r , σ )) In this paper, the position we try to hedge is a short
where N denotes the standard normal distribution position in a European style call option contract. A European
function and call option is the right to buy a stock at a given price: the
strike price of the option. This right can only be exercised on
ln(S / K ) + (r + σ 2 / 2)τ
d1 = , d 2 = d1 − σ τ its expiration date, this in contradiction to an American stock
σ τ option, where the right to buy can be exercised at any given
time before or on the expiration day. The short position
1.2 Delta hedging in traditional Black-Scholes Model and means that I ‘write’ the option contract and sell it to someone
hedging Costs Analysis else. This means we sell the right to buy. If the buyer decides
Using BS model for hedging, however, may prove to be to exercise the option, I have to supply the share against the
very misleading. This is due to the misspecification of the strike price. In practice, the option is usually closed with a
volatility smile which observed in capital market that the cash-settlement. This means that I have to pay the difference
option’s implied volatility depends upon the options’

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 303


DOI 10.1109/ICCET.2009.226
between stock price and the strike price if the stock price is Therefore, in this paper, we introduce a new hedging
higher than the strike price. strategy, GARCH delta, in which the estimation of
A common way to hedge a short position in a European tomorrow’s volatility is needed when computing the amount
call option contract is by keeping exactly D stocks. This of shares Δ which is needed for the hedge. Compared with
results in a portfolio –c + DS. For this portfolio, the traditional calculation based on the assumption of
∂∏ ∂c ∂S ∂c ∂c ∂S constant volatility in the Black-Scholes world while
=− +Δ =− + =0 delta-hedging a European call option, the new strategy
∂S ∂S ∂S ∂S ∂S ∂S
Because the price of the portfolio is insensitive to change results in a smaller hedging error and therefore reduces the
of the stock price, as long as the amount of shares is adjusted hedging cost.
to D, the portfolio is riskless. II. GARCH OPTION PRICING DELTA AND PROFIT &
1.4 Profit and Loss analysis in traditional Black-Scholes LOSS ANALYSIS
model
2.1 Local Vol and P&L Analysis
If it would be possible to adjust the amount of stock
Since we want use the same framework of local vol
continuously to the changes in the option delta, the hedge
model and local delta hedging for our GARCH delta
would be perfect, i.e. the risk would be reduced to zero
hedging. We want discuss the local vol model first. In local
without any costs. Because of the practical impossibility of
vol model, Dupire [3] equation was widely used to calibrate
continuous hedging and the presence of transaction costs, the
the local volatility to capture the volatility smile in the equity
hedge has to be adjusted with a certain time interval, e.g.
market and overcome the limitation of BS delta hedging. In
daily.
Dupire equation, the local volatility is an unknown function
Adjusting the portfolio with a certain delay always
of time and stock. The calibration problems is the inverse
results in making hedging costs, with a bigger delay leading
problem that consists inferring the function form the
to more costs. This is because if the price of the stock has
market-quoted prices of liquid options, typically European
dropped, the more time goes by before one sells shares to
vanilla call and put options with various strikes and
adjust the portfolio, the less money one receives. If the price
maturities. Subsequently, the local volatility function thus
goes up, the opposite effect occurs and one will buy too
calibrate can be used to price exotic options or value
expensive. Therefore a proper estimation of volatility is a
hedge-ratios consistently with the market.
crucial point to delta hedge.
During the traditional BS model, the profit and loss of a Δ = Δlocal = ∂ S ∏ (t , S ;σ ) …………(1)
T ,K
portfolio of a long stock and short call option can be
∂C ∂C
represented as: + rK
1 2 δS σ (K ,T ) = ∂T ∂K …………..(2)
S Γ (∑ τ − ( ) 2 ) …..(4)
2
P & LBS _ delta = −δC + ΔδS =
2 S 1 2 ∂ 2C
K
where C, Δ, Γ represent the options’ price, delta, and 2 ∂K 2
gamma respectively in the B-S model.
Lemma: In BS model, whether the profit and loss is
We can basically calibrate local vol in trinomial tree
negative or positive depends on whether the realized
specifically as follows, at time 0, we can get:
volatility ( ∂S ) with respect to the implied volatility σ. 2Cal0 ( s j , t n )
S τ σ (s j ,t n ) = …………. (3)
When we have short positions in calls and hedge it with long s 2j Fly0 ( s j , t n )
shares of stock/Index, we actually are short the gamma, so
C0 (s j , t n+1 ) − C0 (s j , t n )
we will have net loss if the realized volatility is higher than where: Calidar...spread...Cal0 (s j , t n ) =
the implied vol in the BS model. Similarly, we long call and Δt
short stocks/Index to have long gamma, we will have net C0 (s j − Δs, tn ) − 2C0 (s j,tn ) + C0 (s j + Δs, tn )
profit if the realized volatility is smaller than the implied vol. ...spread...Fly0 (s j ,tn ) =
Butterfly
Δt
With the true data of S&P 500 index, we can show the profit
and loss of delta hedging during different volatility sceneries
as follows: After we get the local vol value from equation (3), we
can input it with today’s stock price and time into equation
TABLE 1. DELTA HEDGING P&L ANALYSIS UNDER TRADITIONAL B-S (1) to calculate the delta, which called local delta.
MODEL(ELIDED) Similarly to BS P&L analysis, for the local volatility
We can see most of the time, we get negative P&L for model, the profit and loss is:
1 ∂S
the portfolio of short call and long index when the realized P & LLocal_ delta = −δC + ΔlocalδS = S 2Γlocal(σ(t, S)2τ − ( )2 ) ..(5)
volatility is much higher than the implied vol we use in the 2 S
BS to calculate the hedge ratio delta. Alternatively, we can
see that the BS delta did not provide very good hedging Compared with equation (5) and (6), we can get the
when the volatility is high. relationship of the two delta-hedging as:

304
P & LBS _ delta − P & Llocal _ delta = (ΔBS − ΔLocal )δS ……….(6)

In local vol models, it is well knows that the implied


volatility can be interpreted as an average of the local
volatilities on the most likely path s between (t,S) and (T,K).
Therefore, Coleman [19,p.9] proved that the following proxy
for the local delta:

ΔLocal = ΔBS + v BS ∂ K ∑ …………………………….(7)


We know in the market the volatility is negative skew, so 2.3 Market condition determination
(7) implies Δ ≤ ΔBS
Local
We need three market conditions to determine which
Lemma: in a negative skewed vol model, whether the delta hedging to use:
profit & loss of BS is larger or smaller than the Local 1. The daily Index price change: ;
according to whether the S∂ is positive or negative. 2. The skewness of volatility model;
3. The volatility change speed or the GARCH predicated
2.2 GARCH Delta Hedging and P&L Analysis volatility;
For GARCH delta, we can basically use the same method We can easily read the index price or stock price change
of local vol. But we prefer to use the vol predicated from the from the market, so it’s easy for us to determine the sign of
GARCH model instead of the local vol calibrated from the ; for the skewness of local volatility model, we can
market. We believe the GARCH predicated vol should be observe the market is highly negative skewed, which means
closer than the local vol in our equation (5), since it is based we can observe high frequent positive return and less
on the theory of regression to minimize the Residual of sum negative return, but some of the negative return could be
of squared error of predicated vol and realized vol. Therefore very huge, though with very low probability. Formally
we expect that the P&L of GARCH deltas should have testing the skewness could also be done as follows:
smaller variability than the local vol or BS vol, or we can see ( x − u x )3
GARCH delta provide a better hedging strategy in terms of Skewness = E [ ]
smaller variance of P&L of our portfolio. Replace the vol in σx3

equation of (5) and (6) we can get the following two When the value of skewness is larger than 3, we say the
equations for our GARCH delta: distribution is positive skewed, alternatively, if it is less than
1 ∂S 3, we say it is negatively skewed. For the volatility change
P & LGARCH_ delta = −δC + ΔGARCHδS = S 2ΓGARCH(σ
2
τ − ( ) 2 ) …(5)
GARCH speed, it’s a little complicated, so basically we need to use
2 S
P&L BS _ delta
−P&L GARCH _ delta
= (Δ BS
− Δ GARCH )δ S …...(6)
the GARCH model to make a judgment.
2.4 GARCH model and Volatility Change Speed
We can get the following table 2 to show the best delta GARCH model [5] can be used to describe many
hedging strategy according to our analysis. financial time series. It is a popular model for estimating
BS delta or GARCH delta: stochastic volatility and index return. It assumes that the
1) In a Negatively skewed vol model, given a moderately randomness of the variance process varies with the variance.
small rebalancing time interval, such as one day, the We adopt the computed GARCH volatilities into the
GARCH delta provides a better hedge in a slow rally or a calculation of the option delta. We assume the GARCH
fast sell-off, while the BS delta may provide a better hedge in process to continue for the rest of the option’s life and find a
a fast rally or a slow sell-off. numerical way to approximate the option delta.
2) In a Positively skewed vol model, given a moderately Under GARCH assumption we can get tomorrow’s
small rebalancing time interval, such as one day, the BS delta volatility from today’s volatility value.
provides a better hedge in a slow rally or a fast sell-off, while Intuitively, under GARCH(1,1) model, the predicated
the GARCH delta may provide a better hedge in a slow rally volatility is just the weight average of today’s predicated
or a fast sell-off. volatility and today’s observed vol. To guarantee the stability
of the model, we should have the sum of the parameter alpha
TABLE 2. OPTIMAL DELTA HEDGING STRATEGY IN NEGATIVE SKEWED and beta less than 1.
GARCH VOL MODEL
Our GARCH delta model based on one-step forecast of
the volatility. Suppose we have GARCH(1,1) model as
follows:
σ t2 = a0 + a1at2−1 + β1σ t2−1 + η ,0 ≤ a1, β1 ≤ 1, (a1 + β1 ) < 1
Assume that the forecast origin is h. For 1-step ahead
forecast, we have
σˆ h2+1 = a 0 + a1 a h2 + β 1σ h2

305
2
Where a and σ are known at the time index h.
h h
2
Therefore, the 1-step ahead forecast is σ . The
h+1
strengths and weaknesses of GARCH models can easily
be seen by focusing on the simplest GARCH (1, 1)
2 2 2
model. First, a large a or σ gives rise to a large σ .
t−1 t−1 t
2
This means that a large a tends to be followed by
t−1
2
another large a , generating, again, the well-known
t
behavior of volatility clustering in financial time series.
Second, the model encounters the same weaknesses as
the ARCH model. For instance, it responds equally to
positive and negative shocks. In addition, recent
empirical studies of high frequency financial time series
indicate that the tail behavior of GARCH models remains
too short even with standardized Student-t innovations.
So we basically fit the realized volatility in our GARCH
model and predict the next day volatility and compared with
the BS vol. In this way, we can determine whether the
market change is speed or slow finally using the following
rules:
Fast : σˆ tGARCH
+1 ≥ σ tBS
Slow : σˆ tGARCH
+1 < σ tBS

III. DELTA HEDGING ANALYSIS IN REAL MARKET


The European call option we short sell has SP500 index
as its underlying. The reasons we chose stock index data in
stead of single stock data are:
Most similar research is done using stock index data and
therefore the result will be better comparable;
It is more realistic because most investors will hold a
diversified portfolio, similar to a major index;
The index pays no cash of stock dividends, has no stock 3.2 Model Selection
splits or secondary offerings.
The historical volatility (HV) is simply the standard GARCH(1,1),GARCH(1,2), GARCH(2,1) are commonly
deviation depending on selected sample window. It is used in volatility prediction in finance industry. We conduct
common market practice to use the HV estimator with a a set of adequate test to choose the most efficient model for
rather small data window, especially for the pricing of our volatility forecast.
options with short maturities. We find an estimation of HV Under the significance level 0.025, GARCH (1, 2) is
from a sample window for 20 trading days is convenient for rejected. Based on AIC and BIC data analysis, GARCH(2,1)
our trading strategy. The HV is computed from adjusted has the efficient variable selection, however the values of
closing prices of SP500. Furthermore we assume there is a AIC and BIC of GARCH(1,1) and GARCH(2,1) are not
constant risk-free interest rate of 4%. This is a realistic significantly different.
number and will not influence the results. Because we use TABLE 3. AKAIKE AND BAYESIAN INFORMATION CRITERIA
the same updating frequency (daily) for each of the models,
transaction costs will be roughly the same and are not taken GARCH(1,1) GARCH(1,2) GARCH(2,1)
into account. Then the delta is calculated daily using AIC -9.62E+03 -9.62E+03 -9.62E+03
Black-Sholes Equation.
BIC -9.60E+03 -9.60E+03 -9.59E+03
3.1 Eagle’s Arch Test As a result, although from the likelihood ration test with
In order to apply GARCH Model into our prediction, we alpha=0.025, however when alpha =0.05 ,GARCH(1,1) is
firstly conduct Eagle’s Arch Test to test if the time series of supported and The T Statistic column is the parameter value
return of S&P 500 are correlated. divided by the standard error, and is normally distributed for
large samples. The T-statistic measures the number of

306
standard deviations the parameter estimate is away from <=K Delta -
zero, and, as a general rule, a T-statistic greater than 2 in Where: K=1550
magnitude corresponds to approximately a 97.5 percent With the new Delta Hedging Strategy, we can get the
confidence interval. The T-statistics in the table above imply following results:
that the ARCH(2) parameter adds little if any explanatory
power to the model. On the other hand, from the comparison TABLE 5. HEDGE COST COMPARISON BETWEEN TRADITIONAL MODEL &
of AIC and BIC values, since the two models are virtually GARCH FORECAST MODEL
identical, thus, we accept the simpler restricted model, which
is essentially just the default GARCH(1,1) model.
Forecast:

Refer to the attachment for the detail calculation


IV. CONCLUSION
Black-Scholes model is the standardized model for
pricing the European options. However, using the BS for
hedging may prove to be very misleading due to the model
misspecification of the volatility, which is contradict to the
volatility smile[4] in equity market. So even with delta
neutral hedging strategy under the B-S model, we still will
have profit or loss due to the difference of realized volatility
and volatility we use in B-S model. Instead of using the local
volatility with calibration to option price, we use GARCH
delta with predicated volatility, which we believe should
have minimal error with volatility in B-S model. Therefore,
in theory we can get a better hedging performance than B-S
delta.
Empirical analysis on S&P 500 index options shows the
3. 3 Best Delta Hedging Strategy under GARCH delta single-factor version of the GARCH model to be a
hedging substantial improvement over the Black-Scholes (1973)
model. The GARCH model continues to substantially
According to our optimal hedging strategy in table 2, we outperform the Black-Scholes model even when the
basically simplify our hedging strategy by combining the Black-Scholes model is updated every period and uses
stock change and vol change together. From the GARCH implied volatilities from option prices, while the parameters
model, we can get the confidence interval for the Index with of the GARCH model are held constant and volatility is
upper limit and lower limit. In our analysis, we consider the filtered from the history of asset prices.
situation of In-the-money call option with strike price
K=1550 and all the Index price is lower than K. If we use
such K value as guidance to determine our delta hedging REFERENCES
strategy, we can get the following basic rules: [1] Hua Zhang, An Empirical Investigation of GARCH Option Pricing
If the predicated upper limit of the Index is higher than Model, Hedging Performance.
K, we use the Delta+ to hedge; otherwise we just use the [2] Stéphane Crépey, Delta – hedging Vega Risk?, Université d’Evry, Jan
Delta- to hedge. We can also sum. 2004.
[3] B. Dupire, Pricing with a Smile, Risk, pp. 18-20, Jul. 1994.
TABLE 4. GARCH DELTA HEDGING STRATEGY
[4] Emanuel Derman, Modeling the Volatility Smile, Columbia
University, 2006.
Upper Limit of Index Hedging Strategy
[5] Ruey S. Tsay, A course in Time Series Analysis, Second Edition,
>K Delta + University of Chicago, 2005.

307
2009 International Conference on Computer Engineering and Technology

Multi-objective Parameter Optimization Technology for Business Process


Based on Genetic Algorithm

Bo Wang, Li Zhang, Yawei Tian


School of Computer Science and Engineering BUAA
Beijing,China
email_wangbo@yahoo.com.cn

Abstract- The idea of simulation analysis and multi- On the other hand, the optimization of business
objective evaluation was applied in parameter processes need to refer to the running time, cost,
optimization for business process. By analyzing the resource utilization, queue length and so on a number
parameters in business, four mainly optimal of performance indexes, the comprehensive evaluation
parameters and their corresponding optimization results of these related indexes is not a single solution,
problems were determined. Some indexes for but a group of balanced solutions which is the so-
synthetically evaluating the performance of process called Pareto solution. Currently in the field of
were given, which could provide choice criteria for business model parameters optimization, most of the
optimization. Aiming at the characteristics of multi- optimization methods[6-8] follow to a fixed technology
parameter and multi-objective of business process, roadmap, that is, using countermeasures balance
a multi-layer iterate optimization method based on principle to weigh on the relative importance of the
Genetic Algorithm was provided, which layered sub-goal and then composing to a single goal,
disposal solution space according to the type of therefore, the final solution is over-dependent on user
optimal parameters and could not only enhance the preferences, not propitious to the synthetically
flexibility of selecting parameters but also avoid the evaluation for optimization.
analysis for invalid parameter combinations. The To deal with the problems above, we analyze the
simulation results proved that this method could optimal parameters based on both static and dynamic
supply balance and reasonable parameter configuration parameters and quantify four types of
configuration scheme for enterprise decision- process performance evaluation index calculated
maker. according to simulation result. Finally, a multi-
objective parameter optimization method based on
Keywords- business process; multi-objective genetic algorithm is promoted.
optimization; parameter optimization; Genetic
Algorithm II. Selection of optimal parameters
The parameter optimization process of business
process is to simulate and analyze the model instances
I. Introduction with different configuration parameters, and select the
Enterprise business process optimization goal is to better after evaluate their performance indexes. So
adapt to the needs of the market competition, determining the optimal parameters is a prerequisite to
significantly improve and enhance the competitiveness the optimization. According to their effect, parameters
of enterprises elements. Optimization content is in business process model can be divided into the
divided into structural optimization and parametric following two categories:
optimization.[1] The current study of parameter 1) Static configuration parameters, which can
optimization focuses on resource scheduling and directly describe some kind attributes of process
quantity[1-5], but due to the lack of analysis and elements such as activities, products, resources etc, e.g.
confirmation of the optimal parameters, integrated running time of activities ,allocation of resources, as
optimization is rarely seen which is aimed at the well as the number of available resources for the
implementation of activities, the import rate of source process and so on;
products as well as the combinations of scheduling 2) Dynamic configuration parameters, which are
strategy etc. provided for the simulation and can be used to reflect

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 308


DOI 10.1109/ICCET.2009.22
the dynamic characteristics of business process resources effective use under the condition of limited
instances, such as the limit of simulation running time resources.
and the followed resource strategy during simulation In addition, in order to quantitatively descript the
and so on. non-linear relationship between duration of activities
Among these, only the parameters that can be set up and the allocation of resources, which can facilitate the
by modeler in the modeling stage, directly controlled scheme selecting in the latter part of analysis and
by analyst in the phase of simulation the process and optimization, we defined the Activities Implementation
have a decisive impact on performance can be selected Matrix. Its concrete form is as follow:
as decision-making variables, namely optimal ⎛ RC RC21
T
RCn1 ⎞ , n is the number of
parameters. AES = ⎜⎜ 11 ⎟⎟
⎝ DT12 DT22 DTn 2 ⎠
A. Static configuration parameters resource allocation scheme for the activities
1) Import rate of source products. implementation; the resource allocation vector
Products in business process are divided into RCi1=(rc1 … rcm)is the allocation scheme of i type
source products, intermediates products and the final resource; m is the largest number of types among
products. Intermediate and final products are exported different resources involved in all schemes, rcj is the
by activities, the impact to the results of the simulation number of resources required for the j kind
process is determined by the implementation of related implementation of the resources allocation; the
activities, which means their properties belonging state duration vector DTi2=(dt1 dt2 dt3) is the activity
variables. On the other hand, source products as enter duration under the ith resources allocation; dt1 is the
to the process, are divided into single-source products probability distribution type of duration, dt2, dt3 are
and multi-source products, [9] and the import rate of the corresponding parameters.
latter is subordinated to the probability distribution set
by modeler. During the simulation, distribution B. Dynamic configuration parameters
parameters would affect the implementation of follow- Business process scheduling strategy generally
up activities and the control of the waiting queue for adopted the combination of a variety of scheduling
the product. So import rate of multi-source products rules (such as Highest Priority First Service, First
belong to optimal parameters, and in the optimization Come First Service). The various rules of the
process the different probability distributions can combination need to have a certain order of priorities.
constitute different process instances. Using different combinations will make the simulation
2) Quantity of resources results be various and impact the parallelism of
The main attributes of resources include the activities as well as the utilization of resource.
quantity, efficiency and cost etc [9]. The latter two are Therefore, selecting the appropriate combination of
objective reflection of resource state and belong to the rules with reasonable order to make the results of
state variables. The quantity of resources is usually set simulation analysis optimal is just the target of strategy
as a range and different quantity can be configured to scheduling optimization.
generate different process instances. Therefore, the
quantity of resources belong to optimal parameters, III. Optimization evaluation indexes
and optimizing it can make a balance between waiting The implementation of the business process is a
and idle resources, and make the utilization rate of dynamic process, therefore evaluation is mainly
resources and the cost of the process satisfy users. That focused on the dynamic indexes during the running of
is, it can solve the rationality problem of distributing business process, time, cost, resource utilization as
resources for the enterprise. well as products waiting queue are the top four aspects.
3) Allocation of resources required for activities So, we promote the following optimization indexes:
implementation 1) Utility of performance time PTU
During modeling, allocation of resources and
1 k ci
corresponding configuration of duration for activities PTU = ∑ ∑ ADurationij
are set according to experience or work plan. k i =1 j =1
Allocation of resources not only determines the 2) Utility of performance cost PCU
m RNum j
duration of activities and the running time of process,
but it will also affect the use of related resources.
PCU = ∑ ∑ ( RCost
i =1 j =1
ij × RUsedTime ij )
Therefore, allocation of resources required for 3) Utility of resource utilization RUU
activities implementation belongs to optimal 1 n m

parameters. Optimizing the allocation leads to RUU =


m*n
∑ ∑ RUNum
i =1 j =1
( t i , j ) / RNum j

309
4) Utility of product queue PHU
1 n m
PHU = ∑∑ PQueueLen( j, ti )
m * n i =1 j =1
ADurationij is the running time of each activity; k
is the number of final products, ci is the number of
activities on the path; m is the number of resource
types, RNumi is the number of the i th type resource;
RCostij is the cost of resource; RUusedTimeij is the
actual used time of the resource; n indicates that the
entire project cycle or running time of the process is
divided into n equal parts; RUNum(ti,j) indicates the
quantity of resources of the j th type and its actual
amount being used at the time of ti; PQueueLen(j,ti) is
the number of the j th type non-final products at the
time of tj.
Some of these indexes are relevant, e.g. the cost
will be higher as the time becomes longer if the
quantity of resources is certain. But the time is often
saved at the cost of increasing the number of resources
associated, and the costs may not reduce.

IV. MLIO-BGA
Drawn from the above analysis, business process
parameters optimization has the characteristics of
multi-parameter and multi-objective. As the modern
enterprise is a complex social system, the number of
optional programs of parameters configure (the size of
the issue space) is huge in the process of optimization.
With some relevance among the evaluation indexes,
some optimal solutions maybe missed if simply
convert multi-objects into a single one under measures
balance principle. Therefore we promote a MLIO-BGA
(Multi-Layer Iterate Optimization Based on Genetic
Algorithm) method to solve it. Details are as follows:
A. Multi-layer iterate algorithm flow
MLIO-BGA uses bottom-up strategy, that is, 1) Through the dynamic creation of population to
according to the type of optimal parameters divide the make sure the efficiency of the individuals of the
main part of optimization into multilayer genetic population
iteration, and each layer optimize one type of 2) Increase flexible approach of the method
parameters using genetic algorithms. The optimal implementation: increasing or decreasing
configuration of all the parameters comes after the corresponding levels of iteration can adapt to the
highest level iterative end. Figure 1 is the optimization changes in the number of type parameters
process of Stream-like process [1], the process without B. Comparison between process instances based on
the layer of multi-source products import rate Weighted & Superior Relationship
optimization is for Project-type process [1].
The core idea of MLIO-BGA is layered disposal Suppose that the weight vector set for each
k
performance indexes is ω = (ω1 , ω 2 , ω k ) ,
according to the type of optimal parameters. The aim is
to determine the solution space of the lower level
∑ω
i =1
i =1 ,

inherit iteration dynamically according to the scheme and real number ε meets the condition 0 <ε ≤ 1. After
of parameters configuration expressed by each simulation analysis, we got a k-dimensional real vector
individual in higher level inherit iteration. The main Sim(X) made up by k items of performance indexes,
advantages of MLIO-BGA are as follows: that is Sin(X)=(x1, … xk). Then, instance X is(ω, ε)
superior than instance Y(recorded as X εω Y ) iff:

310
k method for business process based on genetic
∑ ω ( I ≥ ( x , y )) ≥ ε
i =1
i i i algorithm. Practice has proved that it can provide
balanced and reasonable parameters configuration for
x≥ y
Where ( I ≥ ( x, y )) = ⎧
1 user. In the future, we will learn from other evaluation

⎩0 x< y methods to further improve the evaluation system and
take full advantage of collateral calculation of genetic
C. Calculate fitness algorithm to further enhance the efficiency of the
Suppose that the solution space is divided into k optimization.
layers, contemporary population is Pop which is also at
the m th layer, the outside-advantage set is R, the size ACKNOWLEDGMENT
of Pop is N, the size of R is M, and Process (a) means This paper is supported by National High
the instance created according to the combination of Technology Research and Development Program of
individual a which is in the lowest layer population China (863 Program, Grant No. 2006AA04Z165), PR
and its upper individuals. The method for the China.
assignment is:
1) If m = k, then Pop is the lowest population (Step 7): REFERENCES
i) Con=Pop∪R,n = 0; [1] Tan Wenan. A study and development for Dynamic
Optimizing Enterprise Process Technique and its Supporting
ii) Get individual xi in Con in turn, and compare it Environment. Thesis of Doctor Degree, BUAA, 2001. (in
with each individual yj (1 ≤ i,j ≤ N + M) in Con
Chinese)
based on the (ω, ε) relationship. When
[2] Tiwari, A. Vergidis, K. Majeed, B. . Evolutionary Multi-
Pr ocess( xi ) εω Pr ocess( y j ) , set n = n +1; objective Optimization of Business Processes. IEEE
iii) fitness( xi ) = n ( N + M + 1) (1) Congress on Evolutionary Computation. 2006
[3] Zheng Yan, Lan Boxiong, Wang Wei. Aggregate
2) If m ≠ k (step 10): modeling for enterprise resource optimization. Computer
i) Con=Pop∪R, if x∈Con, Bottom (x) is the set Integrated Manufacturing Systems, 2006,12(10):1561-1569.
made up by individuals in x’s solution set, and (in Chinese)
Num (x) is the number of elements in the Bottom [4] Redell O.,Martin T. Exact best-case response time
(x); analysis of fixed priority scheduled tasks. In Proc. of the
ii) Get individual xi in Con in turn: IEEE 14th ECRTS. 2002. 165-172.
[5] Jiang Sijie, Xu Xiaofei, Li Quanlong. An Optimal
a) n = 0;
Algorithm for A Class of Multi-resource Scheduling
b) Get individual p in Bottom (xi) in turn, and
Problems. High Technology Letters, 2003, 13(1):76-80. (in
compare it with each element q in
Chinese)
Bottom(x1 ) ∪ Bottom(x2 ) ∪ Bottom(xM + N ) [6] Tan Wenan, Zhou BoshengResearch, Li Shuming, Wang
based on the (ω, ε) relationship. When Qiang. Research on a Simulation-Based Auto-Optimized
Pr ocess( p) εω Pr ocess(q ) , set n = n +1; Technique in Enterprise Process Model. Journal of Software,
2002,13(4):706-712. (in Chinese)
c) fitness ( xi ) = n ( Num + 1) (2) [7] Kacem I., Hammadi S.,Borne P. Approach by localization
N +M and multiobjective evolutionary optimization for flexible job-
Where Num = ∑ Num( x
j =1
j ) shop scheduling problems. IEEE Transaction on Systems,
Man, and Cybernetics, Part C,2002, 32:1-13.
As n in formulae (1) and (2) increasing in degrees [8] Chen Cheng, GU Yuqing. A Goal-Based Approach for
along with the correlative advantage or disadvantage Process Instance Evolution. Journal of Software,2002,
relationship, it is certain that the better individual is 13(8):1345-1351.
given a greater fitness value, so as to enhance its [9] Zhou Bosheng, Zhang Sheying. Visual Process Modeling
probability to be chosen later. Language. Journal of Software, 1997, 8(z1):535-545. ( in
Chinese)
V. Conclusion
This paper analyzes four types of optimal parameters
in business process those are input rate of source products
quantity of resources, allocation of resources required for
activities implementation and scheduling strategy. as
well as. It also gives a number of evaluation indexes
for process performance. With this understanding, we
promote a multi-objective parameter optimization

311
2009 International Conference on Computer Engineering and Technology

Analysis and Design of an Access Control Model Based on Credibility*

Chang Chaowen1,2, Wang Yuqiao2 , Liu Chen2


1. School of Electronic and Information Engineering, Xi’an Jiaotong University, Xi'an, China
2. Institute of Electronic Technology, Information Engineering University,Zhengzhou,China
ccw@xdja.com

Abstract Traditional access control mechanisms are


centralized and operate under a closed world
An access control model based on credibility is assumption in which all of the parties are known. In
proposed. The Community Authorization Service (CAS) open distributed systems, the user entities have a lot of
is an authentication technology which allows service autonomy and arbitrariness. In many cases, the service
providers to delegate some policy authority to the provider and the service requestor are strangers and do
virtual organization. While in open distributed systems, not have a preestablished trust relationship. The
provider join or leave the domain frequently, so service provider must be able to authenticate the
access-control policy in the server changes quickly. To unfamiliar users and then determine whether the
reduce the server load, threshold value of credibility requestors have enough privileges to access the service.
and a weight factor are applied in the model, and use Thus the access control model in open distributed
Analytic Hierarchy Process (AHP) to analyze the system must solve these problems: 1) Authenticate a
weight of every rule. Providers adjust the threshold stranger who wants to access the resources, 2) Because
value and weight factor instead of changing policies in the users in open system join or leave the domain more
the server. First the server authenticates the requestor often, the strategy must be flexible.
and gives him credibility, then synthesizes the In this paper we present an access control model
credibility and trustworthiness. If the synthesis of based on credibility. On the basis of CAS model, there
credibility achieves the threshold value, the server are two aspects of the improvement: 1) Use the
gives him a certificate. The authentication policies and concept of trust threshold value. The service providers
trustworthiness are both used in the model, thus register their threshold value of trust on the servers. If
flexibility and robustness are the advantages of this a requestor's trustworthiness achieves this value in the
model. server, he can access to the service provider. 2)
Combine trustworthiness and authentication together.
1. Introduction Most access control models do not really combine the
two factors together. In our model, the server has a
Access control is a technology on the basis of database which contains the authenticate rules. When
identification [1]. It can authorize qualified users to the server authenticated the requestor, it gives a value
access resources. According to the structure among the (credibility) to the requestor. The value is depended on
users, the server and resources, there are three models: the rules it passed. Then a module will synthesize the
“push” model, “pull” model, “agent” model [2]. As value and requestor’s trustworthiness as a final
shown in Figure 1: credibility.
This paper is structured as follows: in Section 2, the
background and the related work is introduced. In
Section 3, an access control mode based on credibility
is described and the simulation model that improves
the control is presented. In Section 4, gives a method
to calculate the weight of the authenticate rules. Finally,
summarizes the work about this article and discuss
future work.

*
This work was supported by National High Technology Research and Development Program of China (863 Program, No.2007AA01Z479)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 312


DOI 10.1109/ICCET.2009.87
2. Related Work 3. An Access Control Model Based on
Credibility
Kerberos [3] is an authentication system that uses a
central server and a set of secret key protocols to The definition: There are a lot of rules in the
authenticate requestors and give both requestor and authentication mechanisms, due to the different
application server a secret key for use in protecting degrees of importance; we need a mechanism to
further communications. Firstly, the requestor measure it. In this paper, we use authentication
authentication is to the Key Distribution Center (KDC), trustworthiness to describe the differences [8].
which gives it a Ticket Granting Ticket; this step Definitions1. Trustworthiness: The quantitative
occurs infrequently. For each service the requestor denotation of trust level relied on the integrity, ability,
needs to contact, it must then contact the Ticket or character of a person or thing. Using T to symbolize
Granting Service (TGS) which responds with a Ticket this, T ∈[0,1]. T 0 symbolizes the initial value of the
(TKT) that is service-specific. The requestor then users. If T = 0, it shows that the user is completely
contacts the service, providing the TKT. Often, the discredited, if T = 1 that stands for a fully credible
KDC and the TGS are collocated. However, it is user.
possible to replicate the KDC and the TGS in order to Definitions2. Authentication Certainty Factor A(u).
handle large numbers of users. Figure the credibility about someone who has passed
The approach taken by Firmato is the use of a the authentication. Using A(u) to symbolize this,
network grouping language which is customized for A(u)∈[0,1] .
each managed firewall at that firewall [4]. The language
Definitions3. Credibility Threshold Value λ , Stand
used is independent of the firewall and routers used,
for a value that an authenticated requestor’s A(u) must
but it is limited to packet filtering. Policy updates are
be over, λ∈[0,1].
equivalent to policy initializations in that they require a
reloading of all the rules on the affected enforcement Definitions4. Weight factor of authentication α .
points. Finally, the entire relevant policy rule-set must When the user passes the authentication; he will
be available at an enforcement point; this may cause acquire the authentication Certainty Factor A(u), then
scalability problems with respect to the number of the server will multiply A(u) by α, the value of α is
users and policy entries. decided by the service provider.
Role-based Access Control which is called RBAC [5] In the CAS model, policy and trust certificates are
has become a classical model. It reduces the kept in a centralized repository. If the service provider
complexity and cost of security administration in large join or leave the domain, the policy must be changed
scale network. Each user is assigned one or more roles, either [9] [10]. The cost is usually very high in an open
and each role is assigned one or more privileges that distributed system. The improved model can reduce
are permitted to users in the role. Although RBAC the cost by using trust threshold value and weight
conceptually allows for many different models and factor which can easily influence the policy. First, the
implementations for management and policy resource providers register λ & α in the server. If
specification, none of the RBAC-based systems we are anyone wants to gain access to the resources, he must
aware of use flexible credentials, allow credential be authenticated by the server. Second, in the
composition from different administrative front-ends, improved model, both the A(u) (Authentication
or decentralized management [6]. Certainty Factor) and T (the user's trustworthiness) will
Community Authorization Service (CAS) is a be considered as the reference. The terminal
security mechanism based on the GSI Group trustworthiness of the requestor can be calculated by
authorization service which is designed by Globus this formula: T = αA(u) + (1 - α) T 0. This combination
project team [7]. It assumes that all members trust the of trust and certification mechanism can enhance the
CAS server in the virtual organization, and the CAS security and reduce risks. The improved model
server manages the strategies of access control. CAS consists of three parts: the request for service (users),
server has a server access control strategy, resource list, CAS Server, the provider of resources (other users).
access control strategy, organization members list, and CAS Server includes rules of the certification system,
so on. CAS is a “push” model. In an open system, integrated modules of trust, list of resource providers
because the members join or leave frequently, resulting and trust threshold value λ.
in the CAS server access control strategy has been The structure of the model is shown in Figure 2:
changed quickly, and this costs the server a lot of time.

313
Software OS: Window XP with SP2;
The experiment simulates downloading files. The
purpose is to compare the influence of the threshold
value. In this experiment, suppose there is one service
provider meeting the request. A total of 50 users send
their requests. 50 users were divided into five groups,
each contains 10 users, and the trustworthiness was
0.90, 0.80, 0.70, 0.60, and 0.50. λ = 0.55.
Results are shown in Figure3. X-axis symbolizes
the number of the requestors. Y-axis symbolizes the
success ratio of download services. Red curve stands
for the model using threshold value, while blue is not
adopting the strategy.

Following presents the step-by-step processing of a


request by this architecture:
Step1 Service provider registered services in the
CAS server and submitted their authentication weight
factor, then initialization trust threshold value λ.
Step2 When a user wants to request service; he can
query in the server and find the provider. If he chooses
a provider, he must put his request and certificate to
the server.
Step3 Consistency verification will verify the
signature first, and then it will check the legality and
validity of the certificate. If it is legality and validity, From Figure3 we can see that, when the number of
consistency verification sends certificate to the rules of users increases, both success ratios decreased
the certification system. gradually; if we use the strategy of threshold value, the
Step4 The certification system calculates the red curve declines more slowly, while the blue curve
trustworthiness of the requestor by T = αA(u)+(1-α) T 0. which is not adopting threshold value declines quickly.
If T≥λ ,the server gives a permission to the requestor. The result shows that when we use trust threshold
Otherwise, refuse to authorize the request. value, the success rate of the downloading will be
Step5 Requestor generates a new certificate and improved.
embeds the permission in the expansion of the
certificate, and then submits it to the service provider. 4. Calculating the Weight Ratio of the
The provider confirms the certificate issued by CAS
Rules
server, and determines the privileges according to his
local security strategies.
The authenticate rules is stored in the database of
Analysis and simulate model.
the server. Some rules are more important than others.
Because the authentication system contains a lot of
How to distinguish their differences? We use Analytic
method, such as the identification of ID card, password
Hierarchy Process (AHP) to analyze the weight of
authentication, fingerprint recognition, and so on, we
every rule [11]. The AHP is about breaking a problem
should describe the difference by weight ratio.
down and then aggregating the solutions of all the sub
From the formula T = αA(u)+(1-α) T 0 , it is known
problems into a conclusion. It facilitates decision
that when α = 0, T = T 0, certification of the user by making by organizing perceptions, feelings, judgments,
CAS server becomes useless. Thus let α > 0 more and memories into a framework that exhibits the forces
often; when α = 1, T = A(u), it means that the service that influence a decision. Suppose that C1, , C2 ,…, C9,
provider will not consider of the user.
stand for the importance of rule E1, rule E2, …, rule E9.
Environment of the experiment
The following table shows their symbolization:
Hardware PC: Tsinghua Tongfang 3500 D; CPU:
Intel Pentium 4 processor speeds 2.66 GHz; memory
512 M;

314
the number of users, the trust threshold value. It is
degree αij meaning
difficult to simulate the actual work fully. Moreover,
1 Ci is as important as C j when the CAS server updates the rules, the weight of
the rules is also changed. The process is dynamic,
3 Ci is more important than C j (a little) maybe there are some unpredictable mistake. How to
set the threshold value is also a problem for the
5 Ci is more important than C j (a lot) providers. We hope that future access-control systems
will solve these problems.
7 Ci is much more important than C j (a little)

9 Ci is much more important than C j (a lot) 6. References


[1] Adam Hess and Kent E. Seamons.An Access Control
2,4,6,8 The importance is between two levels above Model for Dynamic Client-Side Content. ACMAT’03, June
2-3, 2003.
1,1/2,…,1/9 Change “important” to “weak” [2] Rich Baker, Bob Cowles, etc, Conceptual Grid
Authorization Framework and Classification, 2003
[3] S. P. Miller, B. C. Neuman, J. I. Schiller,and J. H. Saltzer,
The weight ratio is calculated by constructing
Section E.2.1: Kerberos Authentication and Authorization
comparison matrix. Suppose there are 4 rules, every System,M.I.T. Project Athena, Cambridge,
element in the matrix stands for αij : Massachusetts(December 21, 1987).
⎡ 1 3 2 5⎤ [4] S. P. Miller, B. C. Neuman, J. I. Schiller,and J. H. Saltzer,
⎢1 / 3 1 1 / 2 2⎥⎥
Section E.2.1: Kerberos Authentication and Authorization
U =⎢
System,M.I.T. Project Athena, Cambridge, Massachusetts
⎢1 / 2 2 1 4⎥ (December 21, 1987).
⎢ ⎥ [5] D.F.Ferraiolo, D. R.Kuhn, and R.Chandramouli. Role-
⎣1 / 5 1 / 2 1 / 4 1⎦ Based Access Control Artech House, ISBN I-58053-370-
1,2003.
Construction of the comparison matrix as follows: [6] ANGELOS D. KEROMYTIS and JONATHAN
M.SMITH. Requirements for Scalable Access Control and
U C1 C2 C3 C4 W Security Management Architectures. ACM Transactions on
Internet Technology, Vol. 7, No. 2, Article 8, Publication,
C1 1 3 2 5 0.476 May 2007.
[7] Markus Lorch,Bob Cowles,Rich Baker,et al.Conceptual
C2 1/3 1 1/2 2 0.155 Grid Authorization Framework and Classification.Global
Grid Forum.2004:21-22.
C3 1/2 2 1 4 0.155
[8] Wang Lunwei,Liao Xiangke,and Wang Huaimin.
C4 1/5 1/2 1/4 1 0.081 Research on Authenticati0n Trustworthiness Theory. Journal
of Computer Research and Development,42(3):501 ~
506,2005. Vol.50,No.S1,181~ 184.Oct, 2004(in Chinese).
[9] E.Bertino and P.A.Bonatti.TRBAC: A Temporal Role-
λ = 4.022 , puts λ and the rank n = 4 to the Based Access Control Model.ACM Transaction on
λ − n Information and System Security,2001 Vol.4(3):191-223.
formula
CI =
n − 1 , calculating CI = 0.0073 . [10] Rich Baker, Bob Cowles, etc, Conceptual Grid
CI Authorization Framework and Classification, 2003.
CR = = 0 . 008
When n = 4 , the RI = 0.89 . < 0.1.
RI [11] W.K.Edwards. Policies and Roles in Collaborative
R R2 R 3 R 4 Applications. In proceeding of ACM Conference on
So the weight ratio of 1 , , , is 0.476,
0.155, 0.155, 0.081. Computer-Supported Cooperative Work. Cambridge,MA.
1996: 11-20.

5. Conclusions
Because the simulation model based on the
assumption that contains more pre-conditions, such as

315
2009 International Conference on Computer Engineering and Technology

Modeling of Rainfall Prediction over Myanmar Using Polynomial Regression

Wint Thida Zaw, Thinn Thu Naing


University of Computer Studies
Yangon, Myanmar
wintthida@gmail.com, ucsy21@most.gov.mm

Abstract—Myanmar is an agricultural country and its Using these past regional and global weather data,
economy is largely based upon crop productivity. The prediction model is built with the use of second-order MPR.
occurrence of extreme precipitation variability may lead to We implement monthly and annual rainfall forecast model
significantly reduce crop yields and extensive crop losses. using second-order MPR based on 15 predictors. And we
Thus, rainfall prediction becomes an important issue in find all possible subsets of 15 candidate predictors and then
Myanmar. Regression has since long been a major data choose the best combination of predictors offering the lowest
analytic tool in many scientific such as behavioral sciences, mean absolute error (MAE).
social sciences, biological sciences, medical sciences, It is possible to forecast monthly and annual summer
psychometrics and econometrics for predicting. Multi
monsoon rainfall amount (in mm) with acceptable accuracy
variables polynomial regression (MPR) is one of the statistical
regression method used to describe complex nonlinear input
with one month ahead. The resulted rainfall amounts are
output relationships. In this paper, MPR is applied to intended to help farmers in making decision concerning with
implement the precipitation forecast model over Myanmar. their crop.
Myanmar receives its annual rainfall during the summer
monsoon season which starts in June and end in September.
II. RELATED WORK
The model output result is station wide monthly and annual Accurate and timely weather forecasting is a major
rainfall amount during summer monsoon season. The challenge for the scientific community. Rainfall prediction
proposed model results are compared with the result produced modeling involves a combination of computer models,
by multiple linear regression model (MLR). From the observation and knowledge of trends and patterns. Using
experimental results, it is observed that using MPR method these methods, reasonably accurate forecasts can be made
achieves closer agreement between actual and estimated up. Several recent research studies have developed rainfall
rainfall than using MLR prediction using different weather and climate forecasting
methods.
Keywords- statistical modeling, polynomial regression,
Regression is a statistical empirical technique and is
rainfall froecasting
widely used in business, the social and behavioral sciences,
the biological sciences, climate prediction, and many other
I. INTRODUCTION areas.
Weather forecasting has emerged recently where the N. Sen [1] has presented long-range summer monsoon
specific climate depending on geographical location is to be rainfall forecast model based on power regression technique
predicted. An accurate monthly and annual forecast can help with the use of EiNino, Eurasian snow cover, north west
farmers to increase agricultural productivity in good rainfall Europe temperature, Europe pressure gradient, 50 hPa Wind
years and by giving information to adopt drought resistant pattern, Arabian sea SST, east Asia pressure and south
crop varieties and appropriate crop, soil and water Indian ocean temperature in previous year. The experimental
management practices in anticipated drought years. Thus results showed that the model error was 4%.
rainfall forecasting becomes an important factor in the S. Nkrintra, et al. [2] described the development of a
domain of agriculture. statistical forecasting method for summer monsoon rainfall
Regression technique is the most commonly used (SMR) over Thailand using multiple linear regression and
statistical technique for prediction of rainfall. MPR provides local polynomial-based nonparametric approaches. SST, sea
an effective way to describe complex nonlinear input output level pressure (SLP), wind speed, EiNino southern
relationship. We implement rainfall prediction model with oscillation index (ENSO) and IOD were chosen as
the use of empirical statistical technique, MPR. predictors. The experiments indicated that the correlation
We use 37 years (1970-2006) datasets of the global between observed and forecast rainfall was 0.6.
climate data such as sea surface temperature (SST), India T. Sohn, et al. [3] has developed a prediction model for
ocean dipole (IOD), and southern oscillation index (SOI), the occurrence of heavy rain in South Korea using multiple
oceanic Nino index (ONI) and premonsoon month rainfall linear and logistics regression, decision tree and artificial
amount over 17 Myanmar weather stations as local weather neural network. They used 45 synoptic factors generated by
data. There are 15 predictors in total. the numerical model as potential predictors.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 316


DOI 10.1109/ICCET.2009.157
M. T. Mebrhatu et al. [4] modeled for prediction where
categories of rainfall (below, above, normal) in the highlands §1 2
x11 x21 ... xn1 x11 x11x21 ... x11xn1 x212
x21x31 x21x41 ... x21xn1 ... xn21 ·
of Eritrea. The most influential predictor of rainfall amount ¨ ¸
¨1 x12 x22 ... xn2 x12 x12x22 ... x12xn2 x22 x22x32 x22x42 ... x22xn2 ... xn22 ¸
2 2

was the southern Indian ocean SST. Experimental results X ¨ ¸


showed that the hit rate for the model was 70%. ¨... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ¸
¨1 x1t x2t ... xnt x1t x1t x2t ... x1t xnt x2t x2t x3t x2t x4t ... x2t xnt ... xnt ¸¹
2 2 2
H. Hasani et al. [5] proposed human height prediction ©
model based on multiple polynomial regression that was (3)
used successfully to forecast the growth potentials of height YT y1 y 2 ... yt
(4)
with precision and was helpful in children growth study. ET E0 E1 ...
Vaccari et al. [6] modeled plant motion time-series and (5)
nutrient recovery data for advanced life support using multi The least square estimates of the regression parameters
variable polynomial regression. are calculated using equation (6).
The following sections present an approach to the Eˆ (X T
X ) 1 X T
Y (6)
development of rainfall forecasting system. Firstly, we ŷ
discuss polynomial regression in section 3. Next, we The least square prediction is calculated as follows.
describe how to forecast rainfall with the use of MPR in Yˆ XÊ (7)
section 4. We report some experimental results in section 5. n (8)
Finally, we conclude the paper in section 6. MAE 1
n ¦i 1
y i  yˆ i

III. POLYNOMIAL REGRESSION


Regression is a statistical empirical technique that utilizes IV. RAINFALL FORECASTING USING MPR
the relation between two or more quantitative variables on The general processes of forecasting rainfall amount are
observational database so that an outcome variable can be 1. Collecting data
predicted from the others. 2. Building models using all possible combinations of
Polynomial regression produces a polynomial describing predictors
the relationship between any set of inputs and corresponding 3. Choosing the best model
output. Polynomial regression model which contains more
4. Validity check
than two predictor variables is called MPR.
The overview of rainfall forecasting system is
The polynomial model is called as second-order
illustrated in Figure 1.
polynomial model with n predictor variables if a model
Data are collected first and then data are separated into
which contains n predictors expressing with the first and
training data and test data.
second powers of the predictors.
The next step is the building second-order MPR models
The polynomial regression can become numerically
with the use of training data. In this paper, we consider all
unstable, especially if the degree is high or the function
possible combinations of the predictors. If the number of
domain is not centered at zero. If the polynomial degree is
predictors chosen is n, there will be (2n-1) distinct
too low, it will not be able to represent the complexity of the
function being learned [7]. regressions models. We find the least squares estimates of Ê
Thus, we find the statistical relationship between rainfall from equation (6) over training data. We calculate the least
amount and other climatic data with the use of second-order
MPR equation which contains added terms and nonlinear squares prediction ŷ from equation (7). This procedure is
cross product interaction of n predictors expressing with the repeated until all possible combinations of the predictors
first and second power of the predictors. This is in the form have been examined.
of equation (1). In selecting the best model, MAE of each model is
calculated by using the equation (8). The predictive skill of
yt = 0 + 1x1t +...+ nxnt + n+1x1t2 + n+2 x1tx2t + …+ 2nx1txnt + the models is ranked according to MAE. The models are
2n+1x2t2 + 2n+2x2tx3t +…+ 3n-1 x2txnt +…..+ xnt2+ e (1) ranked in the ascending order of MAE values. The model
with the lowest values of MAE is ranked first and the model
where yt represents the predictand, representing SMR at time with the highest value is ranked last. The first rank prediction
t. x1t, x2t… xnt are predictors representing premonsoon month model is chosen as the best regression model which contains
monthly mean temperature, monthly rainfall, IOD, SOI, SST small group of predictors that can give an optimal prediction.
at time t. 1t, 2t, … are least square regression parameters Finally, the model built over training period is tested with
estimated from the observed data. e denotes the error that is test data to verify how much accuracy the model can give.
difference between predicted and actual precipitation
amount.
The second-order MPR model used in this study is in the
matrix form of
Y = X + e (2)

317
Now we will report experiments and give graphs for monthly
Build Choose rainfall amount during rainy season which starts from June and ends
Trainin Best Model
Data Model in September. The following experiment uses data over 1990-2005
as training data. Table 2 describes the predictors used in prediction
and the error over training period.
Validity
Check TABLE II. SELECTED MODEL SKILL FOR PATHEIN STATION OVER
TRAINING PERIOD
Test
Station Month MAE Predictors used
Figure 1. Overview of the forecasting system. 0.02
Pathein June P3, P5, P8, P12
July 4.48 P5, P6, P7, P11
V. EXPERIMENTAL RESULTS August 1.61 P5, P6, P8, P10
In this section, the prediction results will be reported. September 1.3 P2, P7, P9, P15
Due to the lack of space, now we will give graphs for
Pathein rain gauge station located in lower Myanmar where Figure 2 shows the comparison between actual and forecast of
rain fall prediction is needed more for agriculture planning June rainfall amount over training period 1990-2005 of Pathein rain
and management although we take and analysis the regional gauge station.
data from 17 rain gauge station over Myanmar.
For monthly precipitation forecast, we use regional
rainfall amount taken from this rain gauge station and large
scale data such as East India SST, SOI, ONI taken from
[8],[9],[10].The following table shows the details of the
predictors used for monthly rainfall prediction.
TABLE I. DETAIL OF PREDICTORS

Predictor Symbol Period Location

ONI P1 MAM 5oN-5oS 120o 170oW

ONI P2 AMJ 5oN-5oS 120o-170oW

IOD P3 April
90°E-110°E
10°S-0°N
IOD P4 May

East India
P5 April
SST 50°E 70°E 10°S-
10°N
East India
P6 May
SST
Figure 2. Comparisons between predicted and actual June rainfall amount
Previous for Pathein Station over taining period
SOI P7
two months 17.5°S 149.6°W,
12.4°S 130.9°E
SOI P8
Previous The model evaluation is performed using test data of
month 2006. The trained model is tested with the use of 2006 test
Previous data and the test result is compared to the actual rainfall
SST P9 15°-20° N 85°-90° E
month amount. Figure 3 illustrates 2006 monthly rainfall prediction
Previous amount compared with actual rainfall amount in June, July,
SST P10 10°-15° N 85°-90° E August and September at Pathein rain gauge station which is
month
the area of rice grown most. Figure 4 shows the test result in
Previous
SST P11
two months
5°-10° N 85°-90° E graphical form.
Previous
SST P12 5°-10° N 90°-95° E
month
Previous
SST P13 5°-10° N 95°-100° E
month
Previous
Temperature P14 Predicted Station
month
Previous
Rainfall P15 Predicted Station
month

318
Figure 6 illustrate the comparisons of actual and forecast
annual SMR over training period.

4000

3500

3000

SMR Amount (in mm)


2500

2000

1500

1000

Figure 3. Comparison between actual and prediction Pathein monthly 500


rainfall amount with test data of 2006
0

90

91

92

93

94

95

96

97

98

99

00

01

02

03

04

05
19

19

19

19

19

19

19

19

19

19

20

20

20

20

20

20
Actual
Year
Model Forecast

1400 Figure 5. Comparisons between predicted SMR using second-order MPR


and Actual SMR for Bago station over training period
R a in fa ll Am o u n t (in m m )

1200
1000
800
600 4000
400 3500

S M R A m ou n t (in m m )
200 3000
0 2500
June July August September 2000
2006 Summer Monsoon Month 1500
Predicted Actual 1000
500
Figure 4. Comparisons between actual and predicted Pathein monthly 0
rainfall amount with test data of 2006

05
90
91
92
93
94
95
96
97
98
99
00
01
02
03
04
20
20
20
19
19
19
19
19
19
19
19
19
19
20
20
20
Actual
Year
For Pathein station, the prediction accuracy we got is Model Forecast
over 99% in training period and 93% with test data of 2006.
Myanmar receives its annual rainfall during summer
monsoon season which starts from June and ends in Figure 6. Comparisons between forecast SMR using MLR and actual
September. The annual SMR variability impacts on crop SMR for Bago station over training period
productivity. Thus we implement annual SMR prediction
model with the use of four predictors. The details of these
predictors are described in Table 3. The model evaluation is performed using test data of
2006. Table 4 describes the test results got from two
methods.
TABLE III. DETAIL OF PREDICTORS USED IN ANNUAL SMR FORECAST

Spatial Correlation TABLE IV. BAGO STATION TESTING RESULT FOR 2006 SMR
Symbol Predictors Period
Domain with SMR
Monthly Estimated
96°30'E Estimated
P1 Rainfall May -0.28582 Bago Station
17°20'N Actual Bago Bago
amount
2006 SMR
Monthly Station 2006 Station
96°30'E using
P2 Mean May
17°20'N
-0.21075 SMR 2006 SMR
Temperature second-
using MLR
50°E -70°E order MPR
10°S-10°N,
P3 Mean IOD JFM -0.2245 2806 mm 2870 mm
90°E-110°E
10°S-0°N 2795 mm (accuracy of (accuracy of
17.5°S, 99.6%) 97%)
149.6°W,
P4 SOI May -0.48543
12.4°S,
130.9°E With MPR, the estimated 2006 SMR at Bago Station is
2806 mm against actual of 2795 mm. The forecast for 2006
Now we will report and give graphs for the prediction of Bago Station SMR by MLR is 2870 mm.
annual SMR prediction over Bago station. Figure 5 and

319
From these experimental results, it is observed that using REFERENCES
second-order MPR method achieves closer agreement [1] N. Sen, ” New forecast models for Indian south-west
between actual and estimated rainfall than using MLR in the Monsoon season Rainfall”, in Current Science, vol. 84, No.
prediction of annual SMR forecast over Bago rain gauge 10, pp.1290-1291, May 2003.
station. [2] S. Nkrintra, et al., “Seasonal Forecasting of Thailand Summer
Monsoon Rainfall”, in International Journal of Climatology,
Vol. 25, Issue 5, American Meteorological Society, pp. 649-
VI. CONCLUSION 664, 2005.
Weather affects the economy, health and agriculture, not [3] T. Sohn, J. H. Lee, S. H. Lee, C. S. Ryu, “Statistical
only in Asia, but across the whole planet. Rainfall is a key Prediction of Heavy Rain in South Korea”, in Advances in
climatic determinant of agriculture production in Myanmar Atmospheric Sciences, Vol. 22, No. 5, pp.703-710, 2005.
which can affect the economy. We have developed rainfall [4] M. T. Mebrhatu, M. Tsubo, S. Walker, “A Statistical Model
prediction model based on 15 predictors using second-order for Seasonal Rainfall Forecasting over the Highlands of
MPR. As a result of several experiments, the predicted Eritrea”, in International Crop Science Organization.
[5] H. Hasani, M. Zokaei, A. Amidi,“A New Approach to
rainfall amount is close to the actual values. We also
Polynomial Regression And Its Application to Physical
developed annual SMR prediction model with four
Growth of Human Height”.
predictors only. The model results are intended to use in the [6] D.A. Vaccari, J. Levri, “Multivariable Empirical Modeling of
areas such as crop planting and yield, water management and ALS Systems Using Polynomials,” in Life Support and
reservoir control. The main aim of the development of the Biosphere Science,vol. 6 pp. 265-271,1999.
forecast model is to help in farm management and water [7] D.Stronger, P.Stone, “Polynomial Regression with Automated
management. Degree: A Function Approximator for Autonomous Agents”,
In this implementation of MPR model, all possible Internaional Journal on Artificial Intelligence Tools, pp. 474-
subsets of predictors have been examined. But we use only 480, November 2006.
test data of 2006. Thus, we can’t grantee that the best model [8] http://www.cru.uea.ac.uk/.
with the test case of 2006 which can offer the smallest [9] http://www.cpc.noaa.gov/.
prediction error with the test data of the year except 2006. [10] http://www.jamstec.go.jp/
Therefore, to get the robust model which can offer the
smallest prediction error for any year, test data of more than
one year can be used.

320
2009 International Conference on Computer Engineering and Technology

New Similarity Measure for Restricted Floating Sensor Networks

Feng Yuan, Liu Xiaodong, Ding Xiangqian


College of Information Science and Technology
Ocean University of China
Qingdao, China
liuxiaodong.ouc@gmail.com

Abstract—Similarity-based search has been a hot research


topic for a long history, which is widely used in many
applications. The large scale Restricted Floating Sensor (RFS)
network is an important mod-el in offshore data collection [1].
This paper constructs a new fuzzy similarity measures based on
distance. This work provides a theoretical guidance for
constructing a fuzzy query processing strategy for our RFS
networks. From [2] we know our work over distance and
similarity is a reasonable generalization and extension of other
Fuzzy Sets.

Keywords-restricted floating sensor network; fuzzy set;


similarity
Figure 1. RFS sensor

I. INTRODUCTION
There are significant interests in analyzing the siltation of
the estuary and harbor. For example, H. H. Harbor, the second
largest harbor for coal transportation (6.7 million tons per
year) in China, currently suffers from the increasingly severe
pr-oblem of silt deposition along its sea route (19 nautical
miles long). The sea route has always been threatened by the
silt from the shallow sea area. Monitoring sea depth costs this
harbor more than 18 million US dollars per year [1]. In 2007,
Yunhao Liu proposed a Restricted Floating Sensor (RFS)
model [1]. By locating such sensors, the sea depth can be
estimated efficiently without the help of extra ranging devices.
Similarity-based technologies are important in RFS Figure 2. Our experiment site
networks: firstly, RFSs are deployed on the sea collecting data
of silt. The event detection can be considered as the pattern
number. Let V = {vij } . The topology is shown in Fig. 3. Let
search over time series data, which highly demands fast
retrieval to keep the safety of sea route. Thus the retrieval of S (vi0 j0 ) = {vij | vij ∈ V , i = i0 + 1, j ∈ J i0 j0 } denote the agg-
similar time series is important to RFSs [1]; secondly, RFS
suffers long propagation delay and high-energy consumption. regation of all child nodes of vi0 j0 in the RFS network, whe-
There need a scheme can effectively exploit the sharing re J i0 j0 contains all the sequence number of these nodes.
among queries to greatly reduce the communication cost. Thus
similarity-aware query techniques are important to RFSs [3]. Because of the movement of RFSs, the relation betw-
Our experiment site for the RFS network lies in the east een S (vi0 j0 ) and vi0 j ( j ∈ J i0 j0 ) is variable. For example
S (v12 ) can equal to {v22 , v23 , v24 } or {v23 , v24 } and
coastal area of Qingdao. RFS sensors and experiment site are
shown in Fig. 1 and Fig. 2. Distinguished from traditional stat-
ionary or mobile sensor networks, nodes in the RFS network v31 belongs to S (v21 ) or S (v22 ) . As we know fuzzy theory
will generally not be stationary at their original places, but
is efficient in treating imprecision. So in this paper we
float in a restricted area on the sea [1]. This quality poses
construct two general similarity measures based on distance
some unique challenges. For example, let vij denotes RFS of on VIFSs. Our work is a reasonable extension of those on
the network, where i stand for the layer, and j for the sequence Fuzzy Set (FS), Intuitionistic Fuzzy Set (IFS) and Interval-Va-

This project is funded by the Chinese National High Technology Research


and Development Plan (863 program) under Grant No. 2006AA09Z113, by
Key Project of Chinese National Programs for Fundamental Research and
Development (973 program) under Grant No. 2006CB303000.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 321


DOI 10.1109/ICCET.2009.177
monitoring [8], moving object tracking [9], and financial data
analysis [10]. Many measures of similarity between fuzzy sets
have been proposed and researched. Hyung et al. presented
two similarity measures between fuzzy sets and between
elements [11]. Then Chen also made a comparison of
similarity measures of fuzzy values [12]. Li et al. proposed
similarity measures of IFS and applied similarity measures to
pattern recognition [13]. Mitchell discussed that the Dengfeng
and Chuntian operator may give counter-intuitive results and
proposed a modification of the Dengfeng-Chuntian operator
[14]. Liang et al. reviewed some existing measures of
similarity and proved these measures are not effective in some
cases. Then they proposed some new similarity measures and
discussed their relationship [15]. Hung et al. presented another
new method for similarity measures between IFSs. They
present a method to calculate the distance between IFSs on the
basis of the Hausdorff distance. Then they generate a new
Figure 3. Topology model for RFS networks
similarity measure to calculate the degree of the similarity
lued Intuitionistic Fuzzy Set (IVIFS). Furthermore it is gui- between IFSs by this distance [16].
dable on constructing similarity-based technologies for RFS In this paper, we propose a new measure of distance on
networks. In this paper, we propose a new measure of distance VIFS and discuss their corresponding similarities based on
on VIFS and discuss their corresponding similarities based on distance. This is important to future works on distance theory.
distance, that is s = 1 − d . We organize this paper as follows: III. NEW SIMILARITY MEASURE BASED ON DISTANCE
in section 2, we introduce some related work on FS and
similarity. It worth noting that from [2] we know all existed A. Preliminaries
fuzzy sets, such as: FS, IFS, IVIFS and IVFS, are subset of In the following, we firstly recall some basic notions and
VIFS in the view of isomorphic imbedding mapping. This definitions. Throughout this paper, let X is a nonempty
ensures that our work about distance and similarity is a
definite set, | X |= n .
reasonable extension of FS, IFS and IVIFS. Furthermore they
[2]
are useful and guidable on constructing new measures of Definition 3.1.1. An interval number over [0,1] is
distance and similarity on all these existed fuzzy sets. In − +
section 3, at first, we review some basic notions and give some defined as an object of the form: a = [a , a ] with the
− +
definitions which are quite useful in the following work. Then property: 0 ≤ a ≤ a ≤ 1 . Let L denote all interval
we mainly construct some measures of similarity based on
numbers over [0,1] . We define the definition of relation (it is
distance. From examples we make sure some existing
similarity measures between IFSs are involved in our new specified by “ ≤ ”): a ≤ b ⇔ a − ≤ b − and a + ≤ b + . We
measures. This is important to future works on distance can easily prove that “ ≤ ” is a partially ordered relation on
theory.
L . So < L, " ≤" > is a complete lattice where
II. RELATED WORKS a ∨ b = [a − ∨ b − , a + ∨ b + ]
Since L.A.Zadeh introduced FS in 1965 [4], a lot of new
theories treating imprecision and uncertainty have been a ∧ b = [a − ∧ b − , a + ∧ b + ]
− + − +
introduced. Some of them are extensions of fuzzy set theory. ∨ a = [ ∨ ai , ∨ a i ] ∧ a = [ ∧ a i , ∧ a i ]
K.T.Atanassov extended this theory, proposed the definition i∈I − i i∈I i∈I , i∈I − i i∈I i∈I .
of IFS [5] and IVIFS [6], which have been found to be highly Let 1 = [1,1] denotes the maximum of < L, " ≤" > and
useful to deal with vagueness out of several higher orders
fuzzy sets. Then in 2005, we proposed VIFS and proved sets 0 = [0,0] denotes the minimum of < L, " ≤" > .
such as: FS, IFS, and IVIFS, are all subsets of VIFS in the
Then we introduce the definition of interval-valued
view of isomorphic imbedding mapping. This ensures that any
work on VIFSs is a reasonable extension of FS, IFS and intuitionistic fuzzy sets on L .
[2]
IVIFS. Definition 3.1.2. A general interval valued intuitionistic
Measures of similarity between fuzzy sets, as an important fuzzy sets A on X is an object of the form:
content in the fuzzy theory, are widely used and cited in A = { x, μ A ( x),ν A ( x), x ∈ X }
literatures. Similarity-based search remains as a hot research
topic even today due to its wide usage in many new applicatio- Where μA : X → L and ν A :X →L
ns, including network traffic analysis [7], sensor network
0 ≤ μ A ( x) ≤ ν A ( x) ≤ 1 , ∀x ∈ X
C
With the property:

322
For briefly, we denote + + +
d 2i ( A, B) = ν A ( xi ) − ν B ( xi )
μ A ( x) = [ μ − A ( x), μ + A ( x)] ∈ L ,
− + − +
ν A ( x) = [ν − A ( x),ν + A ( x)] ∈ L Then we have d1i , d1i , d 2i , d 2i ,
In paper [2], we defined the relation “ ≤ ”: (i = 1,2,..., n) are weak distance functions.

A ≤ B ⇔ μ A (x) ≤ μ B (x) and ν A ( x) ≥ ν B ( x) . Prove: 1. Firstly we will prove d1i ( A, B) is weak
[2] distance function
Definition 3.1.3. A mapping
S : VIFSs ( X ) × VIFSs ( X ) → [0,1] . For
− − −
d1i ( A, B) = μ A ( xi ) − μ B ( xi ) , then we have
S ( A, B ) is said to be the degree of similarity between − −
d1i ( A, B) = d1i ( B, A)
A∈ VIFSs ( X ) and B ∈ VIFSs ( X ) , if S ( A, B ) satisfies
− −
the properties: If A = B , it follows that μ A ( xi ) = μ B ( xi ) , then
(1) If A = B , S ( A, B ) = 1 ; −
we have d1i ( A, B) = 0
(2) S ( A, B ) = S ( B, A) ;
If A ≤ B ≤ C ,it follows that
(3) If A ⊆ B ⊆ C , A, B, C ∈ VIFSs ( X ) , then
μ A − ( xi ) ≤ μ B − ( xi ) ≤ μ C − ( x i )
S ( A, B) ≥ S ( A, C ) , S (C , B ) ≥ S ( A, C ) .
Then we have
Then we will give the definition of the weak distance
which is quite important to measures of similarity. μ A − ( xi ) − μ B − ( xi ) ≤ μ A − ( xi ) − μ C − ( xi )
Definition 3.1.4. A mapping − −
That is d1i ( A, B) ≤ d1i ( A, C )
d w : VIFSs( X ) × VIFSs( X ) → [0,1] . d w ( A, B) is said
+ − +
to be the weak distance A ∈ VIFSs ( X )
between 2. in the same way, we can prove that d1i , d 2i , d 2i
are weak distance functions.
and B ∈ VIFSs ( X ) , if the mapping d w ( A, B ) satisfies the
It worth noting that while n > 1 ,these 4n weak distance
properties: functions are not distance functions. This is because we can
(1) d w ( A, B ) = d w ( B, A) ;
only get μ A − ( xi ) = μ B − ( x i ) from
(2) If A = B , d w ( A, B) = 0 ;
μ A − ( xi ) − μ B − ( xi ) = 0 other than A = B .
(3) If A ⊆ B ⊆ C , A, B, C ∈ VIFSs ( X ) , then
Theorem 3.2.2. let
d w ( A, B) ≤ d w ( A, C ) , d w (C , B) ≤ d w ( A, C ) .
1. f ( x1 , x 2 ,..., x s ) : [0,1] s → [0,1] with properties:
It is easy to see this weak distance function is a
generalization of traditional distance functions. From 1) let x1 = x 2 = ... = x s = 0 ,then
definition 3.1.3 and 3.1.4 it is clear that
f ( x1 , x 2 ,..., x s ) = 0 .
S ( A, B) = 1 − d w ( A, B) .
2) to any xi (i = 1,2,..., s ) , f is a decreasing function.
Thus measures of similarity are equivalent to measures of
distance. Then in the next section, with distance and weak 2. to any d i ( A, B ) (i = 1,2,..., s ) is a weak distance
distance functions we propose some measures of similarity function.
and this will be useful in sensor networks.
Then to any ( A, B ) ∈ VIFS ( X ) ,
B. New similarity measure based on distance
d ( A, B) = f (d1 ( A, B), d 2 ( A, B),..., d s ( A, B))
In this section, we will propose a measure of similarity
between VIFS. Firstly we propose a distance function on is a weak distance function.
VIFS. Prove:
− + − + From property 2 we get:
d1i ,-- d1i , d 2i , d 2i are
Proposition 3.2.1. Let
d i ( A, B) = d i ( B, A) , i = 1,2,..., s
VIFS ( X ) × VIFS ( X ) → [0,1] , (i = 1,2,..., n)
Then we have d ( A, B ) = d ( B, A)
Where to any ( A, B ) ∈ VIFS ( X ) , there are
if A = B ,then d i ( A, B ) = 0 , i = 1,2,..., s
− − −
d1i ( A, B) = μ A ( xi ) − μ B ( xi ) From property 1.1) we have
+ + + d ( A, B ) = f (0,0,...,0) = 0
d1i ( A, B) = μ A ( xi ) − μ B ( xi )
if A ≤ B ≤ C ,then
− − −
d 2i ( A, B) = ν A ( xi ) − ν B ( xi ) d i ( A, B) ≤ d i ( A, C ) , i = 1,2,..., s

323
then we have 3) let A ≤ B ≤ C , ( A, B ) ∈ VIFS ( X )
f (d1 ( A, B), d 2 ( A, B),..., d s ( A, B ))
ν A −ν C − ≥ ν A − −ν B − ≥ 0 ≥ μ A − − μ B − ≥ μ A − − μ C −

≤ f (d1 ( A, C ), d 2 ( A, C ),..., d s ( A, C ))
ν A + −ν C + ≥ ν A + −ν B + ≥ 0 ≥ μ A + − μ B + ≥ μ A + − μ C +
that is d ( A, B ) ≤ d ( A, C )
Hence
It worth noting that d ( A, B ) usually isn’t a distance
function. For example, let
ν A − −ν C − ≥ ν A − −ν B −
s = 1 , f ( x) = x , d1 ( A, B) = μ A ( x1 ) − μ B ( x1 ) , μ A− − μC − ≥ μ A− − μ B −
then we have d ( A, B) = μ A ( x) − μ B ( x) is only a weak
ν A + −ν C + ≥ ν A + −ν B +
distance function.
= W (θ1 ,θ 2 ,...,θ n ) , where
Definition 3.2.3. Let d ( A, B ) μ A + − μC + ≥ μ A + − μ B +
1. To any ( A, B ) ∈ VIFS ( X ) we have
φi − , φi + , ϕ i − , ϕ i +
{ ( ) ( )
From definition 3.6 we know all satisfy
− − − − − − −
θ i = E i [φ i μ A − μ B , ϕ i ν A − ν B ], their properties 2), hence
+
E i [φ i
+
(μ A
+
− μB
+
), ϕ (ν
i
+
A
+
−ν B ]
+
)} φi + ν A + − ν C + ≥ φi + ν A + −ν B +

W : [0,1] n → [0,1] with properties:


2. ϕi + μ A + − μ B + ≥ ϕi + μ A + − μC +
1) x1 = x 2 = ... = x n = 0 ⇔ W ( x1 , x 2 ,..., x n ) = 0 φi − ν A − − ν C − ≥ φi − ν A − − ν B −
2) To any xi (i = 1,2,..., s ) , W is a decreasing function.
ϕi − μ A − − μ B − ≥ ϕi − μ A − − μC −
3. θ i : [0,1] × [0,1] → [0,1] (i = 1,2,..., n) with
− +
properties: And in definition 3.6, Ei , Ei all satisfy their properties
1) θ i ( x, y ) =0⇔ x= y=0 2), hence
− − − − − − −
2) θ i is a increasing function to any variable. E i [φ i ( μ A − μ B ), φ i (ν A − ν B )]
− − − − − − −
4.
− +
E i , E i : [0,1] × [0,1] → [0,1] (i = 1,2,..., n) with ≤ E i [ϕ i ( μ A − μ C ), ϕ i (ν A − ν C )]
+ + + + + + +
properties: E i [φ i ( μ A − μ B ), φ i (ν A − ν B )]
− +
1) E i ( x, y ) = 0 ⇔ x = y = 0 ⇔ E i ( x, y ) = 0 + + + + + + +
≤ Ei [ϕi ( μ A − μC ), ϕi (ν A −ν C )]
− +
2) Ei , Ei is a increasing function to any variable. From properties 2) of W we have
5. φ i , φ i , ϕ i − , ϕ i + : [0,1] → [0,1] (i = 1,2,..., n)
− +
d ( A, B ) ≤ d ( A, C )
with properties: Hence, d ( A, B ) is a distance function.
1) φ i − ( x) = 0 ⇔ φ i + ( x ) = 0 ⇔ x = 0 E.g. 3.2.5. let
1 n

⇔ ϕi ( x) = 0 ⇔ ϕi ( x) = 0
+
1. W = ∑ xi
n i =1
2) φi − , φi + , ϕ i − , ϕ i + are increasing functions. x+ y
2. θ i ( x, y ) =
Theorem 3.2.4. d ( A, B ) in definition 3.2.3 is a distance 2
function. + +
3. E i ( x, y ) = max( x, y ) = E i ( x, y )
Prove: 1) let ( A, B) ∈ VIFS ( X ) ,if A = B ,then
μ A − − μ B − = 0,ν A − − ν B − = 0, 4. φ i − ( x ) = φi + ( x ) = ϕ i − ( x) = ϕ i + ( x ) = x
1 n
μ A + − μ B + = 0,ν A + − ν B + = 0. Then d ( A, B) = ∑ [max(H ) + max(K )]
2n i =1
− + − +
From properties 2) of W , θ i , Ei , Ei , φi , φi , Where
ϕ i − , ϕ i − we know A = B ⇔ d ( A, B) = 0 − −
H = μ A ( xi ) − μ B ( xi ) , ν A ( xi ) − ν B ( xi )
− −

2) from definition 3.6, it is easy to prove that + + + +


d ( A, B ) = d ( B, A) . K = μ A ( xi ) − μ B ( x i ) , ν A ( x i ) − ν B ( xi )

324
Let [2] X.D. Liu, S.H. Zheng, and F.L. Xiong, Entropy and Subsethood for
− + General Interval-Valued Intuitionistic Fuzzy Sets[C], FSKD 2005,
μ A ( xi ) = μ A ( xi ) = μ A ( x i ) Berlin Heidelberg, 2005:. 42–52.
[3] Shili Xiang, HockBeng Lim, KianLee Tan, Yongluan Zhou
ν A ( xi ) = ν A + ( xi ) = ν A ( xi ) i ∈ {1,2,..., n}

SimilarityAware Query Allocation in Sensor Networks with Multiple
Base Stations. The 4th International Workshop on Data Management for
Then we have Sensor Networks (DMSN'07) [C], Austria, 2007: 1-6.
d ( A, B ) = [4] L.A. Zadeh, “Fuzzy sets”, Inform. and Control, 1965, pp. 338–353.
[5] K.T. Atanassov, Intuitionistic fuzzy sets. Fuzzy Sets and Systems[J],
1 n
∑ [max( μ A ( xi ) − μ B ( xi ) , ν A ( xi ) − ν B ( xi ) )]
n i =1 [6]
Elsevier, Amsterdam, 1986: 87–97.
K.T. Atanassov, G. Gargov, Interval-valued intuitionistic fuzzy sets,
Fuzzy Sets and Systems [J], Elsevier, Amsterdam, 1989: 343–349
The similarity measure based on this distance is:
[7] C. D. Cranor, T. Johnson, and O. “Spatscheck. Gigascope, A stream
s ( A, B ) = database for network applications”, SIGMOD, ACM, New York, 2003,
pp.647-651.
1 n
1 − ∑ [max( μ A ( x i ) − μ B ( x i ) , ν A ( x i ) −ν B ( x i ) )] [8] W. Xue, Q. Luo, L. Chen, and Y. Liu, “Contour map matching for event
n i =1 detection in sensor networks”, SIGMOD, ACM, New York, 2006,
pp.145-156.
This is the similarity proposed by Hung et al.. [9] L. Chen, M. T. Ä Ozsu, and V. Oria, “Robust and fast similarity search
for moving object trajectories”, SIGMOD, ACM, New York, 2005,
IV. CONCLUSION pp.491-502.
In this paper, we propose a new measure of similarity on [10] H. Wu, B. Salzberg, and D. Zhang, “Online event-driven subsequence
matching over financial data Streams”, SIGMOD, ACM, New York,
VIFSs. This measure is useful on all existed fuzzy sets. This 2004, pp.23-34.
paper gives a example to show that this corresponding [11] L. K. Hyung, Y. S. Song, K. M. Lee, “Similarity measure between fuzzy
similarity measure based on our distance can involve many sets and between elements”, Fuzzy Sets and Systems, Elsevier,
existing similarity measures. And these measures are Amsterdam, 1994, pp.291-293.
applicable on all existed fuzzy sets. Based on this we will [12] S. M. Chen, “A comparison of similarity measures of fuzzy values”,
focus on constructing a fuzzy query processing strategy for Fuzzy Sets and Systems, Elsevier, Amsterdam, 1995, pp.79-89.
large scale RFS networks, which is important in our [13] D. F. Li, C. T. Cheng, “New similarity measures of intuitionistic fuzzy
sets and application to pattern recognitions”, Pattern Recognition
monitoring. Letters, Elsevier, New York, 2002, pp. 221-225.
There are still some similarity measures, such as: [14] H. B. Mitchell, “On the Dengfeng-Chuntian similarity measure and its
Dengfeng-Chuntian measures, etc. can not be involved in this application to pattern recognition”, Pattern Recognition Letters,
general similarity measure. Thus there still need a Elsevier, New York, 2003, pp. 3101-3104.
improvement of our measure. [15] Z. Z. Liang, P. F. Shi, “Similarity measures on intuitionistic fuzzy sets”,
Pattern Recognition Letters, Elsevier, New York, 2003, pp. 2687-2693.
REFERENCES [16] W.-L. Hung, M.-S. Yang, “Similarity measures of intuitionistic fuzzy
sets based on Hausdorff distance”, Pattern Recognition Letters,
[1] Zheng Yang, Mo Li, Yunhao Liu, Sea Depth Measurement with Restric- Elsevier, New York, 2004, pp. 1603-1611.
ted Floating Sensors. The 28th IEEE Real-Time Systems [17] Deng-Feng Li, “Some measures of dissimilarity in intuitionistic fuzzy
Symposium[C], Tucson,2007: 469-478. structures”, Journal of Computer and System Sciences, Academic Press
Inc. Orlando, 2004, pp.115-122.

325
2009 International Conference on Computer Engineering and Technology

3D Mesh Skeleton Extraction Based on Feature Points

Faming Gong Cui Kang


College of Computer and Communication Engineering College of Computer and Communication Engineering
China University of Petroleum (East China) China University of Petroleum (East China)
Dongying Shandong, China Dongying Shandong, China
e-mail:gfming@hdpu.edu.cn e-mail:laura855@163.com

Abstract—A novel efficient skeleton extraction algorithm is given models. In the method, they defined the mapping
proposed, which is based on feature points extraction and Reeb function based on geodesic distance and feature points to
graph theories. Because of the topological facility of feature guarantee invariant to transformation and decomposition and
points, a model can be divided into several branches according avoid generating an unmanageable set of critical points. Due
to them. One feature point can present one branch. So we just to its complexity with O(n2 ) steps, we propose a new method
extract the other point of the branch – that could be skeleton
point, connect these points with their corresponding feature to extract skeleton.
points, then we can get all branch skeletons. Finally, This paper is structured as follows. Firstly, we introduce
connecting branch skeletons through connecting skeleton the algorithm for extracting feature points. Secondly, we
points according the topological relationship of each skeleton define our mapping function. Thirdly, we present our
point preserving, then 3D model’s skeleton can be extracted. algorithm for skeleton points extraction. Finally, we
Without pre-processing stages and without input comment on experimental results and end the paper with
parameters, this algorithm can automatically extract the concluding remarks.
skeleton of 3D models. Theoretical analyses and experimental
results show that our method has a lower computing II. FEATURE POINT EXTRACTION
complexity, and meets the requirement of extracting nice- Feature points are mesh vertices located on extremities of
looking and affine-invariant skeletons efficiently. prominent components. As they reveal the most significant
features of the shape, they are used in the mapping function
Keywords-skeleton; skeleton point; skeleton extraction computation as origins for geodesic distance evaluation. To
extract them, we use a quite straightforward algorithm,
I. INTRODUCTION which is proposed in [7], based on topological tools. In this
As a widely used representation of 3D shapes, polygonal paper, we will improve the algorithm aim at particular
mesh is fundamental for computer graphics. However, with stages.
the development of computer graphics, polygonal mesh To extract feature points, we first extract the mesh most
could not meet the need for many applications. As a higher distant vertices as origins. Here we propose a new
level shape description, topological skeletons are proposed algorithm—the minimum distance algorithm, described in
and then used in diverse fields. Many approaches have been the following section.
developed for extracting skeletons of 3D models. In A. The minimum distance algorithm
comparison to traditional skeleton extraction [1,2], Let n be the number of vertices of the given connected
approaches based on Reeb graph theories, present the
advantage to preserve the topological properties of the shape triangulated surface T. Let v s1 and vs 2 be the most geodesic
[3]. distant vertices of T. Let V be the vertices set of T. Now we
Skeleton extraction, based on Reeb graph theory, is describe the algorithm that we used to compute v s1 and vs 2
necessary to construct a Reeb graph by defining a continuous as follows:
scalar function appropriately. Lazarus and Verroust [4]
defined the function by the geodesic distance from a source Step 1: Get the center point (marked v c ) of the mesh:
vertex to any other vertex in the mesh. Due to the lack of for all v i∈{1,..., n} ∈ V , mark the coordinate of v i as
stability, Hilaga etc. [5] proposed to calculate the integral of
geodesic distance all over the mesh. However, when more (x i , y i , z i ) ,then compute vc as follow:
than one connected components are contained in the model, ( x 1 , y 1 , z 1 ) + ( x 2 , y 2 , z 2 ) + ... + ( x n , y n , z n ) .
vc =
the function will not work and lead to much more errors. n
Huang Kunwu [6] improved the function and solved the Step 2: If v c ∈ V then Step 3
above problem. Unfortunately, these functions will generate
else Step 4
an important amount of critical points. In [7] Julien Tierny
etc. developed a new method to generate Reeb graphs of

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 326


DOI 10.1109/ICCET.2009.71
(a) Set of Vs (b)E1 (c)E2 (d) Feature points set F

Figure 1. Feature points set extraction overview

end if model, and the center of the interface (the face between two
Step 3: Compute the distance from v c to vi∈{1,..., n} ∈V sub-parts) must be the skeleton point.
'
In this paper, skeleton points can be computed for the
by distance formula, get the nearest vertex (marked as v c ) whole mesh using a step by step process, described in
Step 4: Get the longest geodesic distance vertex (marked algorithm 2. Let T be the vertexes set of the mesh. We divide
T into two heaps, respectively the set of visited vertices T v
v temp ) of v 'c :
for all v i∈{1,..., n } ∈ V do Moore-Dijkstra's algorithm to and the set of candidate vertices for visiting T c . Let F be the

δ (vc' , vi ) (geodesic distance between v 'c and vi )


set of feature points and V n be the set of neighbors of
compute
vertex v . The algorithm of skeleton extraction proceeds in
Iterate the above steps until there are two approximating the follow three steps.
results of δ (v s 1 , v s 2 ) . Step 1: Get vertexes of interfaces.
Tv = ∅
B. Extracting feature points set Tc = T
In the above section, we have extracted the most geodesic For T c ≠ ∅ do (1) at each step:
distance vertices v s1 and v s 2 (Fig. 1 (a)). In this section, we
(1) ∀ v ∈ T c , get v ’s corresponding feature point:
will use the two vertices as origins to extract feature points
set. The strategy proceeds in the following three stages. For F ≠ ∅ do compute f m ( v )
Firstly, for each vertex in the mesh T, we compute two
Remove v from Tc
geodesic mapping function (mark fg1 and fg2 ), whose origins
Add v to v
T
are the mesh most distant vertices. Secondly, both sets of
f f Initiate C v ← {} as the set of vertices that on the same
local extrema (minima and maxima) of g1 and g 2 (Fig. 1
(b) and Fig. 1 (c)) are computed, respectively marked E1 and interface with vertex v
E2. Then the set of feature points is both included in E1∪ While v
T ≠ ∅
do
E2. Finally, we get the set of feature points F of T (Fig. 1 (d)) for V n ≠ ∅ do
by intersect E1 and E2.
if f m ( v )! = f m ( v ' ) ( ∃ v '∈ V n ) Then (2)
III. MAPPING FUNCTION End if
To compute visually meaningful topological skeletons, it (2): Add v to Cv
is necessary to define a continuous scalar function, which for V n ≠ ∅ do
reveals the most significant parts of the mesh by generating
critical points as less as impossible. Considering these issues, If f m ( v ) == f m ( v ' ) ( ∀ v ' ∈ (V n ∩ T c ) ) then
we define our mapping function as the function which has Remove v' from Tc
been proposed in [7]. The function is defined as follow:
f m ( v ) = 1 − Min δ (v, v f ) Add v' to Tv
Vf i ∈ F i
End if
F: the feature points set, v f i : one feature point, End while
For C v ≠ ∅ do save Cv as the subset of Vs (the set of
δ (v, v f ) : the geodesic distance from v to v fi . In the rest
i

of the paper, we denote the function fm and compute it in subset of vertices which have the same result of f m () )
each vertex of T to get the geodesic distance to the closest Step 2: Combine interfaces with small enough distance
feature point. For all interfaces at each step: FindBoundary()
∀v ∈ int erface1
IV. SKELETON EXTRACTION If v has neighbors which also be the vertices of the other
As feature points highlight the most significant features interfaces then combine these interfaces
of the shape, they can discriminate visually meaningful sub- End if
parts of a given connected component. From our experience, Compute the centers of all interfaces.
each feature point represents one different sub-part of the Step 3: Dealing with circuits of skeleton

327
For all v ∈ M s ( M s is marked as the set of skeleton
points) at each step: deleteF()
vi ∈Ms
v j ∈M s
(d) Skeleton of model
If vi and v j connects the same feature point
Figure 3. Skeleton of cetacean
v p then
Fig. 2 shows the example graph of interfaces obtained
If vi is the center of one interface then with this strategy, described in Step 1. The number of the
feature points will be the number of the interfaces. In fig. 3,
Connect vi and v p example of skeleton extraction overview is shown. We get
Else if v j is the center of one interface then the center of interfaces (Fig. 3 (a)) by computing the average
of the coordinates of all vertices in each interface. By dealing
Connect v j
and v p with all center points, we can delete the unnecessary points
and get the real skeleton points (Fig. 3 (b)). However, we
Else if both vi and v j are not center points then cannot avoid generating skeleton with circuits (Fig. 3 (c))
If the number of feature points connect until dealing with Step 3. Finally, we get the satisfied
skeleton (Fig. 3 (d)).
with vi > the number of feature points connect with v j then
V. EXPERIMENTS AND RESULTS
Connect vi and v p
In this section, we present and comment on experimental
Else results obtained with our method. Presented models are
Connect v j and v p connected triangulated surface extracted from 3D free model
database.
End if
Given an input connected triangulated surface T, let n be
End if
the number of vertices in T. Feature points extraction
End if
executes in O(n × log(n)) steps. The mapping function is
performed in O(|F|×n×log(n)) steps, with |F| be the number
of extracted feature points. Extracting skeleton points
executes in O(n×(|F|+u+v)) steps, with u be the largest
number of neighbors of the vertex in mesh and v be the
largest number of vertices of each interface. Dealing with
Figure 2. Examples of Interfaces circuits of skeleton is realized in O(|F|×|S|) steps, with |S| be
the number of the skeleton points. Consequently, we can
state that the overall complexity of our method is O(n ×
log(n)) steps.
Our experiment is executed in VC++ under Windows XP
on a PC with P4-CPU and 512M of RAM. Table 1 shows the
computation times corresponding to the models presented in
(a) The center of interfaces
Fig.4.
TABLE I. COMPUTATION TIMES.

模型 顶点 特征点 计算时间

(b) Skeleton points


Hand 1665 5 0.984s
Ring 287 4 0.021s

Candlestick 2100 2 1.72s

Cat 872 15 0.591s


(c) Skeleton with circuits cetacean 2563 4 3.387s

328
and geometric transformations. In our experiment, we
improve the feature point extraction algorithm and propose a
new method for computing the maximum geodesic distance
vertexes of the mesh efficiently, and we also develop a novel
efficient method for extracting skeleton points. Theoretical
analyses and experimental results show that the algorithm
reduces the computing complexity, improves the efficiency
and meets the requirement of topological skeleton extraction.
REFERENCES
[1] H. Blum and R. N. Nagel. Shape description using weighted
symmetric axis features. Pattern Recognition, 10:167–180, 1978.
[2] F.-C.Wu, W.-C.Ma, R.-H. Liang, B.-Y. Chen, and M. Ouhyoung.
Domain connected graph: the skeleton of a closed 3D shape for
animation. The Visual Computer, 22:117–135, 2006.
[3] S. Biasotti, S. Marini, M. Mortara, and G. Patan`e. An overview on
properties and efficacy of topological skeletons in shape modeling. In
Shape Modeling International, pages 245–254, 2003.
[4] F. Lazarus and A. Verroust. Level set diagrams of polyhedral objects.
Technical Report 3546, Institutational de Recherche en Informatique
et en Automatique (INRIA), 1999.
Figure 4. Topological skeletons of standard models [5] M. Hilaga, Y. Shinagawa, T. Kohmura, and T. Kunii. Topology
matching for fully automatic similarity estimation of 3D shapes. In
SIGGRAPH, pages 203–212, 2001.
VI. CONCLUSION [6] Huang Kun-wu, Tang Jie, Wu Gang-shan. Improved multiresolutional
reeb graph skeleton exaction algorithm. Computer Applications
In this paper, we presented an automatically algorithm V01.26No.2:Feb.2006:415-418.
without pre-processing stages and without input parameters [7] Julien Tiemy, Jean-Philippe Vandeborre and Mohamed Daoudi.3D
for mesh skeleton extraction. This algorithm is based on Mesh Skeleton Extraction Using Topological and Geometrical
geodesic distance evaluations and feature points extraction. Analyses. Pacific Conference on Computer Graphics and
So that it is stable and invariant to model rotation, translation Applications, 2006:1-10

329
2009 International Conference on Computer Engineering and Technology

Pairings Based Designated Verifier Signature Scheme for Three-Party


Communication Environment

Han-Yu Lin Tzong-Sun Wu


Department of Computer Science Department of Computer Science and Engineering
National Chiao Tung University National Taiwan Ocean University
Hsinchu, Taiwan Keelung, Country
e-mail: hanyu.cs94g@nctu.edu.tw e-mail: ilan543@gmail.com

Abstract—A designated verifier signature (DVS) scheme designated verifier can also create a valid signature
has the property that only the designated verifier which is computationally indistinguishable from the
specified by the signer can check the validity of the one issued by the original signer for any third party.
signature instead of anyone else. Meanwhile, the Consequently, the designated verifier can not use this
designated verifier can not use this proof to convince any
proof to convince any third party that a signature is
third party that a signature is generated by the claimed
signer. Consider the application of three-party created by the claimed signer. In 2003, however, Wang
communication environment. One party may has to [16] pointed out that their scheme is insure for that a
generate a signature such that only the other two is malicious signer can easily cheat the designated
capable of verifying it solely. In this paper, we propose a verifier.
novel DVS scheme for three-party communication In 2004, Saeednia et al. [11] proposed a strong
environment from pairings. The proposed scheme has the designated verifier signature scheme in which the
following advantages: (i) Each of the two designated signature verification requires the assistance of the
verifiers can independently check the validity of the designated verifier’s private key to compete. Therefore,
signature without cooperating with the other; (ii) The
only the designated verifier has the ability to verify the
proposed scheme is efficient in terms of the executed
pairings, since it only needs one pairing computation to signature. Generally speaking, a DVS scheme should
generate a DVS for two designated verifiers; (iii) The satisfy the following security requirements:
proposed scheme satisfies the security requirements of 1) Unforgeability:
unforgeability, non-transferability and source hiding.
Given the identifier of some designated verifier,
Keywords-designated verifier; digital signature scheme; say, U1, it is computationally infeasible for any
bilinear pairings; public key system malicious adversary to forge a valid DVS with respect
to U1 without knowing the signer’s private key.
I. INTRODUCTION
2) Non-transferability:
Since Diffie and Hellman [2] proposed the first
public key system based on the discrete logarithm In a DVS scheme, only the designated verifier can
problem in 1976, public key systems [4, 10, 13] have be convinced that a signature is created by the claimed
been extensively studied. A digital signature scheme [3, signer. The designated verifier can not convince any
10] is one fundamental cryptographic technique which third party that a signature is issued by the claimed
primarily aims for providing authenticity [14] and signer, since he can also forge a valid signature which
non-repudiation [8]. Traditionally, a digital signature is computationally indistinguishable from the one
can be verified by anyone else with the signer’s public generated by the original signer.
key. Yet, in some special applications such as the 3) Source Hiding:
electronic voting [9, 12] and the electronic auction [6,
It is also referred to as the signer’s anonymity.
17], the signatures are not suitable for the public
That is, given a message and its corresponding DVS, it
verification. To fulfill such requirement, Jakobsson et
is computationally infeasible to determine the identifier
al. [5] introduced the concept of designated verifier
of real signer from the original signer or the designated
proofs and in a sense proposed a designated verifier
verifier.
signature (DVS) scheme in 1996. Although the resulted
Consider the application of three-party
signature is publicly verifiable in their scheme, only the
communication environment. One party may has to
designated verifier can be convinced that a signature is
generate a signature such that only each of the other
generated by the claimed signer. On the other hand, the
two is able to independently verify the signature.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 330


DOI 10.1109/ICCET.2009.34
Obviously, traditional DVS schemes of single-verifier a b c abc
Pr[A(g, g , g , g ) = e(g, g) ; (a, b, c) ← Z q* ,
setting are not well-suited here for that the total
computational complexities double. In this paper, we 1
a b c
(g, g , g , g ) ← G1] ≤
.
propose a bilinear pairings based novel DVS scheme Q(k )
for three-party communication environment. The The probability is taken over the uniformly and
proposed scheme not only fulfills the above security
independently g∈G1 and (a, b, c)∈ Z q* and over the
requirements, but also allows each of the two
designated verifiers to solely verify the signature. As to random choices of A.
the required pairing computation, the signer and each
B. Our Scheme
designated verifier only have to perform once for
generating and verifying the signature, respectively. The proposed DVS scheme can be divided into
The rest of this paper is organized as follows. We two phases: the signature generation and the signature
demonstrate the proposed DVS scheme in Section 2. verification phases. Initially, the system determines the
Some security analyses and the performance evaluation following public information:
will be discussed in Section 3. Finally, a conclusion is p, q: two large primes such that q | (p − 1);
given in Section 4.
G1 , G2 : two groups of the same order q;
II. THE PROPOSED DVS SCHEME g: a generator of order q over G1;
In this section, we first briefly review some e: a bilinear pairing, e: G1 → G2;
n
related definitions and then introduce the proposed h1 : a one-way hash function, h1: G2 → {0, 1} ;
DVS scheme. h2: a one-way hash function,
n n
A. Related Definitions h2: Z *p × Z *p × {0, 1} → {0, 1} ;
Let G1 and G2 denote two groups of the same
Each user Ui chooses his private key xi∈ Z q* and
prime order q. We say that e: G1 × G1 → G2 is a
computes the corresponding public key as
bilinear map if it satisfies the following properties:
yi = g xi mod p. Details of each phase are described
1) Bilinearity:
below:
e(P1 + P2, Q) = e(P1, Q)e(P2, Q);
e(P, Q1 + Q2) = e(P, Q1)e(P, Q2); The signature generation phase: Let Us be the signer
a b ab and {Ua, Ub} the two designated verifiers. For signing
e(P , Q ) = e(P, Q) for P, Q∈G1 and a, b∈ Z q* .
the message M, Us randomly chooses two integers k,
2) Non-degeneracy: r0 ∈ Z q* and computes
If g is a generator of G1, then e(g, g) is a generator
σ = e( y a , yb ) x s , (1)
of G2.
C1 = ( y a yb ) M g r0 mod p, (2)
3) Computability: k
C2 = g mod p, (3)
Given P, Q∈G1, the value of e(P, Q) can be C3 = h1(σ), (4)
efficiently computed by a polynomial-time algorithm.
r1 = h2(C1, C2, C3) mod q, (5)
Definition 1 (Bilinear Diffie-Hellman (BDH) r2 = k − xsr1 mod q. (6)
problem) Here, (r0, r1, r2) is the signature for M. Us then sends
Given a BDH instance (g, A, B, C)∈G1 where A =
a b c
(M, r0, r1, r2) to designated verifiers Ua and Ub.
g , B = g and C = g for some (a, b, c)∈ Z q* , compute
abc
The signature verification phase: Upon receiving it,
e(g, g) ∈G2. Ua (or Ub) first computes
Definition 2 (Bilinear Diffie-Hellman assumption) K = g r2 y s r1 mod p , (7)
For every probabilistic polynomial-time algorithm xa xb
A, every positive polynomial Q(⋅) and all sufficiently
σ = e( y s , yb ) ( = e( y s , y a ) ), (8)
large k, the algorithm A can solve the BDH problem and (C1, C3) as Eqs. (2) and (4). Then, Ua (or Ub) can
1 independently verify the received signature (r0, r1, r2)
with an advantage at most , i.e.,
Q(k ) by checking
r1 = h2(C1, K, C3) mod q. (9)

331
If it holds, the signature (r0, r1, r2) for the message M is environment achieves the security requirement of
valid. non-transferability if both the designated verifiers can
create a valid signature which is computationally
III. SECURITY ANALYSES AND COMPARISONS indistinguishable from the one created by the signer. In
In this section, we first analyze the security of our other words, the designated verifiers can not convince
proposed scheme and then evaluate its performance. any third party that a signature is issued by the claimed
signer. In our proposed DVS scheme, each of the two
A. Security Analyses designated verifiers Ua and Ub can first compute
We discuss some security considerations with xa(M − M') and xb(M − M') where M' is an arbitrarily
respect to the proposed scheme from the perspectives
chosen message, respectively. Then, Ua and Ub
of correctness, unforgeability, non-transferability and
source hiding. cooperatively create a valid signature (r0', r1, r2) where

1) Correctness
r0' = r0 + ∑
xi ( M − M ′). It is easy to show that the
i = a,b
A DVS scheme for three-party communication
environment is correct if one party can generate a valid parameter ( ya yb ) M ′ g r0' mod p is equal to
signature such that only the other two can check the ( ya yb ) M
g r0
mod p as follows:
validity of the signature when all involved parties
follow the steps of the scheme. We prove the ( ya yb ) M ′ g r0'
correctness of our proposed scheme as Theorem 1. ∑ xi ( M − M ′)
M′ r0 i = a ,b
Theorem 1. With the signature (r0, r1, r2) for the = ( y a yb ) g g
message M, each of the two designated verifiers Ua and ∑ xi M ′ ∑ x i ( M − M ′)
Ub can independently check its validity with Eq. (9). = g i =a ,b g r0 g i =a ,b
Proof: From the right-hand side of Eq. (9), we have ∑ xi M
h2(C1, K, C3) = g r0 g i =a ,b
= h2(C1, g r2 y s r1 mod p , C3) (by Eq. (7)) = ( y a yb ) M g r0 (mod p).
= h2(C1, g r2 + x s r1 mod p , C3) Therefore, the forged DVS (r0', r1, r2) will pass the test
k of Eq. (9).
= h2(C1, g mod p, C3) (by Eq. (6))
= h2(C1, C2, C3) (by Eq. (3)) 4) Source hiding
= r1 (mod q) (by Eq. (5)) In the proposed scheme, any third party having the
which leads to the left-hand side of Eq. (9). knowledge of the shared session key σ can check the
Q.E.D. validity of the signature. Nevertheless, a forged DVS
generated by the two designated verifiers has the
2) Unforgeability identical distribution as the one issued by the original
To forge a valid DVS with respect to the signer. Consequently, given a message M and its
designated verifiers Ua and Ub, an attacker may first corresponding DVS, it is computationally infeasible for
any third party to identify the actual signer from the
randomly choose a message M' and (k', r0', r2') ∈ Z q*
original signer or the designated verifiers, even if he
and then attempt to derive r1' from Eq. (7). However, knows the shared session key.
he has to solve the discrete logarithm problem (DLP) B. Performance Evaluation
[2, 7] which is computationally intractable. Even if he
In this subsection, we compare the proposed DVS
could derive r1', the forged signature (r0', r1', r2') for
scheme with Susilo et al.’s one [15] in terms of
M' would not pass the test of Eq. (9) without knowing
executed pairings which are considered to be the most
the correct hash value of shared session key σ between time-consuming operation in pairings-based systems. It
the signer and the designated verifiers. On the other is believed that reducing the number of such
hand, any malicious designated verifier having the computation helps the practical implementation. To
knowledge of the shared session key can not forge a obtain a fair result, we assume that only one designated
valid DVS under the protection of DLP and one-way verifier is involved in each scheme. The detailed
hash function (OWH) [1, 14], either. comparison is shown as Table 1. From this Table, it
3) Non-transferability can be seen that our proposed scheme has a better
A DVS scheme for three-party communication performance than Susilo et al.’s one by one pairing

332
computation as a whole. non-repudiation protocol,” Proceedings of the 7th
International Conference on Computer Supported
TABLE 1. PERFORMANCE COMPARISON (IN NUMBER OF REQUIRED Cooperative Work in Design (CSCW’02), Brazil, 2002,
PAIRINGS) pp. 68-73.
[9] I. Ray and N. Narasimhamurthi, “An anonymous
Phase Signature Signature electronic voting protocol for voting over the Internet,”
Total
Scheme generation verification
Proceedings of the 3rd International Workshop on
Advanced Issues of E-Commerce and Web-Based
The proposed scheme 1 1 2 Information Systems (WECWIS’01), California, 2001, pp.
188-190.
Susilo et al.’s scheme 1 2 3 [10] R. Rivest, A. Shamir and L. Adleman, “A method for
obtaining digital signatures and public-key
cryptosystems,” Communications of the ACM, Vol. 21,
IV. CONCLUSIONS No. 2, 1978, pp. 120-126.
In this paper, we have proposed a novel DVS [11] S. Saeednia, S. Kremer and O. Markowitch, “An
scheme for three-party communication environment efficient strong designated verifier signature scheme,”
from pairings. The proposed scheme only allows two Proceedings of the 6th International Conference on
designated verifiers to independently check the validity Information Security and Cryptology (ICISC 2003),
Berlin, 2004, pp. 40-54.
of the signer’s signature. The proposed scheme is
[12] B. Schoenmakers, “A simple publicly verifiable secret
shown to have a better performance than Susilo et al.’s sharing scheme and its application to electronic voting,”
one and also fulfills the security requirement of Advances in Cryptology − CRYPTO’99, Springer-Verlag,
unforgeability, non-transferability and source hiding. 1999, pp. 148-164.
Even if the two designated verifiers reveal their secrets, [13] A. Shamir, “Identity-based cryptosystems and signature
they can not convince any third party that a signature is schemes,” Advances in Cryptology − CRYPTO’84,
created by the claimed signer, because they can Springer-Verlag, 1984, pp. 47-53.
conspire to forge a valid signature which is [14] W. Stallings, Cryptography and Network Security:
computationally indistinguishable from the one Principles and Practices, 4th. Ed., Pearson, 2005.
generated by the original signer. [15] W. Susilo, F. Zhang and Y. Mu, “Identity-based strong
designated verifier signature schemes,” Information
ACKNOWLEDGEMENT Security and Privacy, Vol. 3108, Springer-Verlag, 2004,
pp. 167-170.
This research was supported in part by the [16] G. Wang, “An Attack on not-interactive designated
National Science Council of Republic of China under verifier proofs for undeniable signatures,” Cryptology
the contract number NSC 97-2221-E-019-019. ePrint archive, http://eprint.iacr.org/2003/243, 2003.
[17] C.C. Wu, C.C. Chang and I.C. Lin, “New sealed-bid
electronic auction with fairness, security and efficiency,”
REFERENCES Journal of Computer Science and Technology, Vol. 23,
[1] H. Delfs and H. Knebl, Introduction to Cryptography: No. 2, 2008, pp. 253-264.
Principles and Applications, Springer, 2002.
[2] W. Diffie and M. Hellman, “New directions in
cryptography,” IEEE Transactions on Information
Theory, Vol. IT-22, No. 6, 1976, pp. 644-654.
[3] T. ElGamal, “A public key cryptosystem and a signature
scheme based on discrete logarithms,” IEEE
Transactions on Information Theory, Vol. IT-31, No. 4,
1985, pp. 469-472.
[4] M. Girault, “Self-certified public keys,” Advances in
Cryptology − EUROCRYPT’91, Springer-Verlag, 1991,
pp. 491-497.
[5] M. Jakobsson, K. Sako and R. Impagliazzo, “Designated
verifier proofs and their applications,” Advances in
Cryptology – EUROCRYPT’96, Springer-Verlag, 1996,
pp. 143-154.
[6] A. Juels and M. Szydlo, “A two-server, sealed-bid
auction protocol,” Financial Cryptography, Vol. 2357,
2003, pp. 72-86.
[7] A. Menezes, P. Oorschot and S. Vanstone, Handbook of
Applied Cryptography, CRC Press, Inc., 1997.
[8] B. Meng, S. Wang and Q. Xiong, “A fair

333
2009 International Conference on Computer Engineering and Technology

A Novel Shared Path Protection Scheme for


Reliability Guaranteed Connection


Jijun Zhao, ①Weiwei Bian, ①②
Lirong Wang, ①
Sujian Wang
College of Information & Electronic Engineering
① ②
Hebei University of Engineering, Handan Polytechnic College
Handan, China
Email: zhaojijun@china.com, bianweiwei2008@163.com, liukaironghua@163.com, wangsujian2006@163.com

Abstract—In this paper, we study the shared path protection protection, but RU comparison between SPP and SPP with
(SPP) problem in wavelength division multiplexing (WDM) DiR is not considered. In our study, a novel SPP algorithm
optical networks, and propose a novel SPP algorithm with with DiR, which is called SPP-DiR algorithm, is proposed
differentiated reliability (DiR) called SPP-DiR. Differing from and its RU is studied.
previous work, SPP-DiR algorithm effectively adapts to the
The rest of the paper is organized as follows. Section 2
diversity demands of customer requests and has higher
resource utilization than SPP algorithm. Therefore, SPP-DiR gives the SPP-DiR network model. Section 3 presents a
algorithm outperforms the previous work. Simulation results novel SPP-DiR algorithm. Section 4 gives the simulation
have shown to be promising. results. Section 5 concludes the paper.

Keywords-WDM optical networks; shared path protection; II. THE SHARED PATH PROTECTION ALGORITHM WITH
differentiated reliability; resource utilization DIR (SPP-DIR) NETWORK MODEL

I. INTRODUCTION The basic idea of SPP is that when two primary paths
are link disjoint and their corresponding backup paths have
As the advent of Wavelength Division Multiplexing overlapped links, then these overlapped links can be shared.
(WDM), hundreds wavelength channels carrying data at Although SPP saves backup resources, it does not adapt to
rates in the order of terabits per second can be multiplexed the diversity demands of customer requests, so for the
into a single fiber. In this circumstance, many new services purpose of considering different customer requests, SPP is
utilizing vast bandwidth of optical layer is gradually studied from the point of DiR in this paper.
growing, such as OVPN, BOD, SLA, et al. These new Fig. 1 shows an example to illustrate SPP-DiR network
services provide multiple levels of service performance in model. We assume that there are two primary paths p1 and
the same network. At the same time, in the p2 and their corresponding backup paths b1 and b2. These
connection-oriented networks such as WDM optical two primary paths correspond to two different customer
networks, dynamic provisioning of reliability guaranteed requests. There are three circumstances: first is that when
connections with protection against single network link the reliability of customer request is smaller than the
failures is an important issue and has received much study reliability of primary path, backup path is not needed;
in recent years. second is that when the reliability of customer request is
Consistently with these developments, the concept of bigger than the reliability of primary path and is smaller
optical circuits with differentiated reliability (DiR) was than joint reliability of primary and backup path,
introduced by the researchers in [1] and [2] and applied to overlapped backup link C-D can be shared; third is that
provide multiple reliability degrees in WDM rings using when the reliability of customer request is bigger than the
dedicated path protection (DPP) switching. DiR concept reliability of primary path and is bigger than joint reliability
guarantees each connection has a minimum reliability of primary and backup path, customer request is rejected.
degree that meets the customer requirement, so it reduces We can conclude from above mentioned three
the entire network cost [3]. While in the aspect of resource circumstances that the first circumstance can save backup
utilization (RU), shared path protection (SPP) has better resources because backup path need not to be established;
performance than DPP, so this paper extends the DiR the second circumstance can share backup link because
concept which is applied to DPP in [1] and [2] to SPP. joint reliability of primary path and backup path is bigger
Many literatures refer to SPP [4-7], but they consider SPP than the reliability of customer request, and primary paths
from the aspect of shared risk link group (SRLG) or in the are link disjoint, thus backup resources are saved; the third
background of availability or quality of service (QoS). circumstance rejects the customer request, thus backup
Some literatures refer to SPP with DiR[3][8], which is studied resources are also saved, but blocking probability are
from the point of time efficiency or in the aspect of segment

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 334


DOI 10.1109/ICCET.2009.133
increased correspondingly (RU is considered in this paper, be the path with maximal reliability. We assume connection
while blocking probability is not included). request crn arrives at a given time. Adjust link cost
according to (1) before primary path is computed (if link j
has not spare wavelength, then link cost is a maximum),
then Dijkstra algorithm is applied to compute primary path.
Adjust the link cost according to (1) before backup path is
computed (if link j is in the primary path or link j has not
spare wavelength, then link cost is a maximum), then
Dijkstra algorithm is applied to compute backup path.

cos t ∀j∈L = − log r j (1)

C. Procedure of SPP-DiR Algorithm


1) Compute primary path pn
Figure 1. Sample network
a) Adjust link cost according to (1);
III. PROPOSED NOVEL SPP-DIR ALGORITHM b) Compute primary path pn using Dijkstra
algorithm;
A. Problem Definition
c) If pn is found and r(pn)>ru, establish a connection,
The network topology is G (N, L, W) for a given WDM update the network state, and return pn;
network, where N is the set of nodes, L is the set of fiber
links, and W is the set of available wavelengths per fiber d) If pn is found and r(pn)<ru, go to step (2);
link. Numbers |N|, |L| and |W| denote the node number, the e) If pn is not found, block the connection, update the
link number, and the wavelength number respectively. The network, and return NULL.
following are some important notations: j, fiber link in G; 2) Compute backup path bn
costj, dynamic cost for link j, determined by the current
a) Adjust link cost according to (1);
network state; crn, connection request n; pn, primary path
for crn; bn: backup path for pn; rj, reliability of link j; r(q), b) Compute primary path pn using Dijkstra
algorithm;
reliability of path q, and r(q)=Π∀j∈qrj; r(pn,bn), joint
reliability of primary path pn and backup path bn, and c) If bn is found and r(pn,bn)>ru, establish a
r(pn,bn)=r(pn)+(1-r(pn))r(bn); ru, reliability required by connection, update the network state, and return
customers. (pn,bn) (backup resources sharing is carried out
We assume each link of network has a random value of in this step);
reliability and Fig. 1 is taken as an example for the purpose d) If bn is found and r(pn,bn)<ru, or bn is not found,
of illustrating above mentioned notations. When connection block the connection, update the network, and
requests of customer arrive dynamically, if r(p1)>ru and return NULL.
r(p2)>ru, b1 and b2 need not to be established; if
r(p1)<ru<r(p1,b1) and r(p2)<ru<r(p2,b2), the overlapped IV. SIMULATION RESULTS AND ANALYSIS
link C-D between b1 and b2 can be shared; if r(p1)<ru and In our simulation, two typical physical topologies are
r(p2)<ru, and r(p1,b1)<ru and r(p2,b2)<ru, customer adopted: the 14-node NSFNET network with 21
requests are rejected. bi-directional links (as shown in Fig. 2) and the 16-node
Mesh-torus network with 32 bi-directional links (as shown
B. Link-Cost for Computing Path in Fig. 3), and each link of these two topologies has 4
After illustrating all the circumstances of selecting path, wavelengths. Assume the network nodes have full
how to select a path is considered. In SPP algorithm, wavelength conversion capacity.
sharing backup resources are only considered, so Dijkstra In these two topologies, the reliability of each link is
algorithm is applied to select primary path and backup path. randomly distributed between 0.96 and 1, and the reliability
While in SPP-DiR algorithm, three different circumstances required by customers is randomly distributed between 0.95
are considered because of different reliability of customer and 0.99[9]. Connection requests arrive according to an
request, so new link cost is designed to meet DiR demand. independent Poisson process with arrival rate β, and the
New link cost is shown in (1). Among (1), rj denotes the connection holding time is negative, exponentially
reliability of link j. Logarithm is used to make link cost be distributed 1/μ, namely, the network load isβ/μErlang.
additive and -1 is multiplied to make link cost be positive (rj Fig. 4 shows occupancy numbers of backup resource in
is between o and 1), so the standard shortest path algorithm SPP algorithm and SPP-DiR algorithm. We can find out that
(Dijkstra algorithm) can be applied to compute the minimal backup resource numbers increase gradually and backup
cost path. It is obvious that the path with minimal cost will resource numbers in SPP algorithm are bigger than backup

335
resource numbers in SPP-DiR algorithm as the network
load increases. The reason is that SPP-DiR algorithm not
only considers the backup resources sharing as same as the
SPP algorithm, but also has possibility which backup path
need not to be established. Although the selected paths in
SPP-DiR algorithm may be longer than selected paths in
SPP algorithm (that is, the backup resource occupancy in
SPP-DiR is larger than the backup resource occupancy in
SPP), as a result of the possibility which backup path need
not to be established in SPP-DiR algorithm, so the backup
resource numbers in SPP-DiR algorithm is smaller than
backup resource numbers in SPP algorithm, that is, RU in
SPP-DiR algorithm is higher than RU in SPP algorithm. Fig.
5 shows the higher RU than Fig. 4 because each node
degree in Fig. 3 is greater than each node degree in Fig. 2. It
is possible that connection request can select a higher
reliability primary path in Fig. 3 than in Fig. 2, so the
probability which backup path need not to be established in Figure 4. Backup resources vs. network load for NSFNET
Fig. 3 is greater than the probability in Fig. 2.

Figure 2. 16-node, 21-link NSFNET

Figure 5. Backup resources vs. network load for Mesh-torus

V. CONCLUSIONS
In this paper, we studied shared path protection with
differentiated reliability in WDM optical networks, and
proposed a novel dynamic shared path protection algorithm
called SPP-DiR. Simulation results show that backup
resource occupancy in SPP-DiR algorithm is smaller than
backup resource occupancy in SPP algorithm, that is,
SPP-DiR algorithm has higher RU than SPP algorithm.
ACKNOWLEDGEMENT
This research is supported by Science Research Project
Figure 3. 16-node, 32-link Mesh-torus Program of Hebei Education Department (No. 2008110).
REFERENCES
[1] A. Fumagalli, M. Tacca, “Optimal design of Differentiated Reliability
(DiR) optical ring networks,” Proceedings of the International
Workshop on Quality of Service in Multiservice IP Networks (QoS-IP),
vol. 1989, London, UK, 2001, pp.299-314.
[2] A. Fumagalli, M. Tacca, “Differentiated Reliability (DiR) in WDM

336
rings without wavelength converters,” IEEE International Conference Scheme for Quality of Service Aware WDM Networks,” IEEE
on Communication, vol. 9, 2001, pp.2887-2891. International Conference on Communication, vol. 3, 2005,
[3] M. Tacca, A. Fumagalli, A. Paradisi, et al. “Differentiated Reliability in pp.1720-1725.
Optical Networks: Theoretical and Practical Results,” Journal of [7] L. Guo, J. Cao, H. F. Yu, “A Path Protection Scheme in WDM
Lightwave Technology, vol. 21, no. 11, pp. 2576-2586, 2003. Networks with Mixed Shared and SRLG Constraints,” Journal of
[4] Y. Wang, Q. J. Zeng, “A New Shared Path Protection Scheme in WDM Optoelectronics Laser, vol. 17, no. 4, pp.438-443, April, 2006.
Optical Networks,’ Chinese Journal of Electronics, vol. 13, no. 1, [8] L. Guo, J. Cao, H. F. Yu, et al. “Enhanced Dynamic Segment Protection
pp.141-146, January, 2004. in WDM Optical Networks under Reliability Constraints,” ETRI
[5] N. Bouabdallah, B. Sericola, “A Simple Priority Mechanism for Journal, vol. 28, no. 1, pp.99-102, February 2006.
Shared-Protection Schemes,” IEEE Communications Letters, vol.11, [9] H. Yu, H. Wen, S. Wang, et al. “Shared-Path Protection Algorithm with
no. 2, pp.197-199, February, 2007. Differentiated Reliability in Meshed WDM Networks,” Proc. SPIE
[6] W. Fawaz, F. Martignon, K. Chen, G. Pujolle, “A Novel Protection APOC’03, vol. 5282, Wuhan, China, 2003, pp.682-687.

337
2009 International Conference on Computer Engineering and Technology

Generalized Program Slicing Applied to Z Specifications

Fangjun Wu
School of Information Technology
Jiangxi University of Finance and Economics
NanChang, 330013, China
wufangjun@jxufe.edu.cn

[6-8]
Abstract & Yi T. , and Ingo Bruckner & Heike Wehrheim
[9,10]
.
Program slicing, a well-known technique, Although specifications slicing have arose some
originally introduced by Weiser M., has already been attentions and resolve specifications slicing to some
widely used in numerous software engineering areas. degree, some important features of Z language are
With the development of research, the concept of omitted in these literatures, such as Oda T. & Araki K.
program slicing is extended, and its application omitted control dependences, and ignores calling
domains are broadened. This paper proposes a method context of called schemas; Leminen J. limits form of
for slicing Z formal specifications based on relations predicates and ignores declaration part of schemas, and
selection, relations projection and relations connection. so on.
This method does not take any time to construct Current existing specification slicing methods still
dependence graphs, which decreases chance of making fail to solve specification slicing. As more and more
a mistake. Finally, it is applied to automate theorem specifications become formal, development of
proof, one of main artificial intelligence activities. techniques and tools to support analysis of formal
specifications is urgently required.
1. Introduction
2. Generalized program slicing applied to
With the development of research, the concept of Z specifications
program slicing, an important technique to analyze and
[1]
understand programs , is extended, and its In the following part, we will slice Z formal
application domains are broadened. Specification specifications by virtue of relational algebraic calculus
[11]
slicing is a generalization of program slicing, . For the purpose of discussion and self-contained,
[2]
introduced by Oda T. and Araki K in 1993 year. It we will introduce some notations [12,13], such as relation
allows designers to analyze dependencies and perform selection (denoted by V), relation projection (denoted

–
testing and debugging activities at the specification
by ), relation joint (denoted by f).
level.
There are many researchers on formal For a schema s in Z formal specification fs, three
[2]
specifications slicing, such as Oda T. & Araki K. , kinds of relations are defined.
[3,4] [5]
Chang J. & Richardson D. J. , Leminen J. , Wu F. (1) Binary relation MOD(s): contains predicate p and

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 338


DOI 10.1109/ICCET.2009.123
variables that possibly directly defined in p;
step 4 For all variables {vi1 , vi 2 ,..., vik } defined at p,
(2) Ternary relation USE(s): contains predicate p and
variables that possibly directly defined and used
in p; – 1, 3
((V 1 ' p 'š
{vi 1 ,vi 2 ,...,vik }Ž 2
MOD( s ) )f USE ( s ))
1 1š
are
2‹ 2
(3) Binary relation CONTROL(s): contains predicate
p and predicates that p possibly directly control computed to find possible use of variables when
depends.
variables {vi1 , vi 2 ,..., vik } are defined. The first and
For the given slicing criterion C=<p, V>, the Z

formal specification slice fsC can be computed by third columns of new relation are input as new slicing

algorithm 1, where p is a predicate and V is a set of criterion NewC. Subsequently, the Z formal
variables in the Z formal specification, s is a schema in
specification slice fs NewC with respect to NewC has
the Z formal specification.

Algorithm 1 A novel approach to slicing Z formal to compute. Then fsC fsC ‰ fs NewC .
specification fs with respect to slicing criterion C=<p,
V> step 5 For all variables {vi1 , vi 2 ,..., vik } defined at p,

step 1 fsC =‡. look up in MOD() to find whether they are defined at

step 2 If all variables of V are before-state variables, other sites or not. If they are defined at other sites, then

then the slice result fsC is empty; otherwise go to add those predicates to the slice result fsC . Those

step 3. predicates and variables {vi1 , vi 2 ,..., vik } form new

step 3 If some variables {vi1 , vi 2 ,..., vik } are defined slicing criterion NewCp. At the same time the Z formal

at p, others {v j1 , v j 2 ,..., v jl } are not defined at p, specification slice fs NewCp with respect to new

where {vi1 , vi 2 ,..., vik } ‰ {v j1 , v j 2 ,..., v jl } V , slicing criterion NewCp is computed. Then

fsC fsC ‰ fs NewCp .


{ v i 1 , v i 2 ,..., v ik } and {v j1 , v j 2 ,..., v jl }

cannot be both empty. That is to step 6 For all variables {v j1 , v j 2 ,..., v jl } not defined

V1 MOD( s ) z I
say ' p 'š
{vi 1 ,vi 2 ,...,vik }Ž 2
and at p, – (V1 v ji 2 MOD( s )) is computed to find

V1 ' p 'š MOD( s ) I . Then possible predicates that define them, where 1 d i d l .
{v j 1 ,v j 2 ,...,v jl }Ž 2

Those predicates and variables {v j1 , v j 2 ,..., v jl } form


fsC fsC ‰ { p} ‰ –2 (V 1 ' p 'CONTROL( s ))
new slicing criterion NewCnp. At the same time the Z

339
specifications with respect to slicing criteria <pi,
formal specification slice fs NewCnp with respect to
checked_out> and <pj, stock>, where i and j means any
new slicing criterion NewCnp is computed. Then predicate that contains variables checked_out and
stock.
fsC fsC ‰ fs NewCnp .

step 7 If operation schemas are sliced, then system

invariant has to be considered. If some variables of V

also exist in system invariant, then system invariant

should be contained in the slice result fsC , otherwise

not.

step 8 If state schemas are sliced, then system

invariant has already been considered. Therefore,


Proof:
system invariant need not be dealt with separately. Firstly, slicing schema Lib with respect to slicing
criteria <pi, checked_out> and <pj, stock>, where i and
j means any predicate that contains variables
3. Theorem proof application
checked_out and stock.

One of the obvious advantages of formal methods According to algorithm 1, relations MOD (Lib),
[13,14]
is automated theorem proof . How to decrease CONTROL (Lib) and USE (Lib) are computed and
search space is still a problem needed to solve. This
paper will try a novel method to theorem proof on the shown as Table 1, Table 2 and Table 3 respectively.

basis of formal specifications slicing. The process of Using Algorithm 1, we get the slice results as {p2, p3,
finding the preconditions that affect conclusions is the
p4, p5, p6} and {p3, p7} respectively.
process of slicing specifications.
[13]
For example, in schema Lib of library system ,
we consider whether variable available can be Table 1 Relation MOD (Lib)
represented by stock and checked_out or not, which Predicates Variables that possibly directly defined
can be described by Theorem 1. p1 staff, borrowers
p2 checked_out
Theorem 1 Libavailable=stock\(dom p3 checked_out, available
checked_out). p4 checked_out, available
p5 checked_out
Theorem 1 means that the numbers of available
p6 checked_out
borrow books is equal to the difference of those of all
p7 book_info
books and those of current borrowed books. The
process of proving theorem 1 is the process of slicing

340
= (available ˆ (dom checked_out))

Table 2 Relation CONTROL (Lib) ‰(available\(dom checked_out)) (5)


Predicates Predicates that possibly directly be = available (6)
control depended
=The left side of Theorem 1
p1 ‡
p2 ‡ For equation (1), (dom
p3 ‡ checked_out)‰available=stock, replace stock with
p4 ‡
(dom checked_out)‰available equation getting (2).
p5 ‡
p6 ‡ According to distribution law
p7 ‡
(U‰W)\V=(U\W)‰(W\V), equation (2) is transformed

Table 3 Relation USE (Lib) into equation (3).


Predicates Variables that Variables that For equation (4), (dom
possibly directly possibly directly used
checked_out)ˆavailable=I, replace I with (dom
defined
p1 staff borrowers checked_out)ˆavailable getting equation (5).
p2 checked_out staff, borrowers
According to definition of intersection and
p3 checked_out available, stock
p3 available checked_out, stock difference operations (UˆV)‰(U\V)=U, equation (5)

p4 checked_out available is transformed into equation (6).


p4 available checked_out
Thus Theorem 1 is settled.
p5 checked_out p, maxbooks
p6 checked_out Last_checked_out
p7 Book_info stock 4. Conclusions

This study proposes a method for slicing Z formal


Secondly, specifications based on relation calculus, and applies it
to automated theorem proof. Automated theorem proof
the right side of Theorem 1
is one of main artificial intelligence activities. How to
=stock\(dom checked_out) (1) apply specifications slicing to automated theorem

=((dom checked_out)‰available) proving is still in the initial step, and needs deeply
study, moreover it has practical meaning.
\(dom checked_out) (2)

=((dom checked_out)\(dom checked_out)) Acknowledgements


‰(available\(dom checked_out)) (3)
This research has been supported by the Natural
=‡‰(available)\(dom checked_out)) (4) Science Foundation of Jiangxi (Project No.
2007GQS0495) and Science and Technology

341
Foundation of the Education Department of Jiangxi [10] Bruckner I., Wehrheim H. Slicing object-Z
(Project No. GJJ08353 and [2007] 434). specifications for verification. LNCS, Vol.3455, 2005,
pp. 413-433.
References [11] Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden.
Modern database management (sixth edition).
[1] M. Weiser. Program slicing. IEEE Transaction on Publishing House of Electronics industry, 2004.
Software Engineering, Vol.16, No.5, 1984, pp.498-509. [12] Formal specification—Z notation-syntax, type and
[2] Oda T., Araki K. Specification slicing in formal methods semantics (consensus working draft 2.6), Z Standards
th
of software development. In: Proceedings of the 17 Panel, August 24, 2000.
Annual International Computer Software and http://www.cs.york.ac.uk/~ian/zstan/
Applications Conference (COMPSAC’93). IEEE [13] Miao Huaikou, Li Gang, Zhu Guanming. Software
Computer Society Press, Phoenix, USA. Nov 1993, pp. engineering language—Z. Shanghai: Shanghai Science
313-319. and Technology Literature Publishing House, 1999.
[3] Chang J., Richardson J. Static and dynamic [14] Woodcock J., Davies J. Using Z specification,
specification slicing. In: Proceedings of the Fourth refinement, and proof. London: Prentice Hall, 1996.
Irvine Software Symposium. Irvine, CA. Apr 1994, pp.
25-37.
http://www.ics.uci.edu/~djr/abstracts/slicing-iss.html
[4] Chang J., Richardson J. Static and dynamic
specification slicing for testing and analysis. In ACM
SIGSOFT International symposium on software testing
and analysis, pp. 138-153, 1994.
http://www.ics.uci.edu/~djr/abstracts/slicing-ta.html
[5] Leminen J. A. Slicing and slice based measures for the
assessment of functional cohesion of Z operation
schemas: [master thesis]. Michigan: Computer science,
Michigan technological university, 1994.
ftp://cs.mtu.edu/pub/ott/reports/leminen-thesis
[6] Wu Fangjun, Yi Tong. Slicing Z specifications. ACM
SIGPLAN Notices, Vol.39, No.8, 2004, pp. 39-48.
[7] Wu Fangjun. Research on Z formal specifications
slicing [Ph.D. thesis]. Jiangxi University of Finance and
Economics, 2006.
[8] Wu Fangjun, Yi Tong. An overview of generalized
program slicing. The 3rd International Conference on
Computer Science & Education (ICCSE’2008), Kaifeng,
Henan, China, July 25-28, 2008, pp.1000-1004.
[9] Bruckner I. Slicing CSP-OZ specifications. In:
th
Proceedings of the 16 Nordic Workshop on
Programming Theory. Oct 2004, pp.71-73.

342
2009 International Conference on Computer Engineering and Technology

PC Based Weight Scale System with Load Cell for Product Inspection

Anton Satria Prabuwono, Habibullah Akbar Wendi Usino


Faculty of Information and Comm. Technology Faculty of Information Technology
Locked Bag 1200, Ayer Keroh, Melaka, Malaysia Budi Luhur University, Jakarta, Indonesia
e-mail: {antonsatria, habibullah_ra}@utem.edu.my e-mail: wendiu@bl.ac.id

Abstract—Personal computer (PC) based weight scale system is manufacturing inspection. For the initial experiment, we
a digital measurement system for checking the weight of apply static weighing process in our laboratory.
product in manufacturing process. The system will connect
directly to the measurement device and will display the result
automatically. The load cell has been applied as a II. WEIGHT SCALE SYSTEM FOR INSPECTION
measurement sensor. The interface allows users to interact In the area of mass production, products are weighed
with the system. A software user interface along with the signal using industrial weighing systems, which are machines that
conditioning and data acquisition hardware has been weigh a product dynamically. Fig. 1 describes product flow
fabricated. The system has been successfully tested to obtain
and the weighing process in the manufacturing environment.
various load measurements. A few suggestions have also been
drawn up for the improvement of the system. As the system is
easily customizable, its seamless integration is always possible
in a highly automated industry. Thus, there is a great potential
for this system to be used in numerous industries, where load
measurement form is a part of the manufacturing process.

Keywords-load cell; weight scale; inspection

I. INTRODUCTION
Measuring load is an important and essential part of
many industrial and commercial operations. It is crucial to
have accurate measurements of load, as small errors,
Figure 1. Product flow and weighing process.
occurring repeatedly, can lead to substantial loss of revenue.
There is a constant need for knowing the exact weight of The weight of the product is estimated while the product
many items, e.g. food, ingredients for production, has been carried over a weigh table by a transport system.
pharmacology, chemistry, technology, etc. The type and the Normally, the transport system is a conveyor belt type. The
number of products that require weight control are weigh table is mounted on a load cell, which is
increasing. Consequently, the legal requirements of uncontrollable weighing device capable of weighing an
government bodies internationally are trying to maintain the article. A signal processing module acquires the electrical
same constant pace. In production, this means high accuracy signal from weighing device and estimates a value of weight
and efficiency of weighing are also constantly high on the for the passing product as its output [5].
agenda. Continuation of this trend brings benefits for both
the customer and the producer. The manufacturing III. SYSTEM DEVELOPMENT
efficiency is increased and hence profitability whilst PC based weight scale system is proposed to ease the
package quality and quantity are assured to the customer’s product inspection in controlling the weight of product
satisfaction [1]. directly to the computer after the measurement. Fig. 2
Having in mind industrial weighting applications where provides the theoretical approach of weight measurement
6,000 divisions are needed [2] for the equipment (external system [6].
divisions) a conversion resolution of at least 60,000
divisions (10 internal divisions for each external) with 50 or
more readings per second, at least for static weighting
applications [3]. For dynamic weighting a faster reading rate
is required but with lower resolution [4]. In this paper, we
intend to develop PC based weight scale system that
provides weight information of product in the

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 343


DOI 10.1109/ICCET.2009.182
TABLE I. LOAD CELL SPECIFICATION
Rated 5 Kg Sensitivity 1.9452 mV/V
capacity
Combined <0.03% R.O. Zero balance 0.013 mV/V
error
Zero tempco 0.03% Rated output 0.03%
R.O./10°C tempco R.O./10°C

Input 403.57 Ω Output 350.02 Ω


impedance impedance
Insulation 2000 MΩ @ Maximum 15V
Figure 2. Theoretical approach of measurement. impedance 50 VDC excit. voltage
Temperature -20°C ~ 60°C Safe overload 150% R.L.
The main purpose of this system is to generate the range
Creep <0.03% R.O. Non <0.03% R.O.
weight information that is placed on the load cell. The (30min) repeatability
output is a differential voltage, which is dependent on the
transfer function of the cell itself. According to this transfer 2) Instrumetation amplifier: An instrumentation
function, the load cell provides a certain voltage for a amplifier is a type of differential amplifier that has been
certain load level. The output of the load cell is then outfitted with input buffers, which eliminate the need for
amplified using a differential instrumentation amplifier. The input impedance matching and thus make the amplifier
instrumentation amplifier output signal is fed to an analog to particularly suitable for use in measurement and test
digital converter (ADC) that will provide digital output. equipment. Additional characteristics include very low DC
Furthermore, the data will be programmed in offset, low drift, low noise, very high open-loop gain, very
microcontroller. Finally, this digital information is sent to a high common-mode rejection ratio, and very high input
PC directly via the standard serial port [7]. In this research, impedances. Instrumentation amplifiers are used where
the system is divided into hardware and software great accuracy and stability of the circuit both short and
frameworks. long terms are required.
A. Hardware Framework Although the instrumentation amplifier is usually shown
schematically identical to a standard operational amplifier
The hardware consists of load cell sensor,
(op-amp), the electronic instrumentation amplifier is almost
instrumentation amplifier, ADC, microcontroller, serial port
always internally composed of three op-amps. These are
communication and PC.
arranged so that there is one op-amp to buffer each input (+,
1) Load cell: A load cell is a transducer which converts −), and one to produce the desired output with adequate
force into a measurable electrical output. The most common impedance matching for the function.
weight scale implementation uses a bridge type load cell The most commonly used instrumentation amplifier
sensor, with voltage output directly proportional to the circuit is shown in the Fig. 4. The gain of the circuit is:
weight placed on it [8]. A typical load cell bridge is
illustrated in Fig. 3. Vout ⎛ 2 R1 ⎞⎟ R3
= ⎜1 +
V2 − V1 ⎜⎝ Rgain ⎟⎠ R2 (1)

The ideal common-mode gain of an instrumentation


amplifier is zero. In the circuit shown, common-mode gain
is caused by mismatches in the values of the equally-
numbered resistors and by the non-zero common mode
gains of the two input op-amps. Obtaining very closely
matched resistors is a significant difficulty in fabricating
these circuits, as optimizing the common mode performance
of the input op-amps.
Figure 3. Basic circuit of load cell. Instrumentation amplifiers can be built with individual
op-amps and precision resistors, but are also available in
The detailed specification of this load cell can be found in integrated circuit (IC) form from several manufacturers. An
the Table 1. IC instrumentation amplifier typically contains closely
matched laser-trimmed resistors, and therefore offers
excellent common-mode rejection. This project used OP
07C as instrumentation amplifier.

344
4) Microcontroller: The AT89S51 provides the
following standard features: 4K bytes of flash, 128 bytes of
RAM, 32 I/O lines, two 16-bit timer/counters, five-vector
two-level interrupt architecture, a full duplex serial port, on
chip oscillator and clock circuitry. In addition, the AT89S51
is designed with static logic for operation down to zero
frequency and supports two software selectable power
saving modes. The idle mode stops the CPU while allowing
the RAM, timer/counters, serial port and interrupt system to
continue functioning. The power down mode saves the
RAM contents but freezes the oscillator disabling all other
Figure 4. Typical instrumentation amplifier. chip functions until the next hardware reset.
5) Serial port:Recommended standard-232 (RS-232) is
3) Analog to digital converter (ADC): ADC is a device a standard interface approved by the Electronic Industries
that converts continuously varying analog signals from Association (EIA) for connecting serial devices [10]. In
instruments and sensors that monitor conditions into binary other words, RS-232 is a long established standard that
code for the computer. The 8-bit ADC 0804 IC considered describes the physical interface and protocol for relatively
able meet the requirement from network that will be made. low-speed serial data communication between computers
An ADC takes analog voltage as an input and provides a and related devices. An industry trade group, the EIA,
digital output. This digital information is in binary format defined it originally for teletypewriter devices. The serial
consisting of 0s and 1s only. The ADC finds a fractional ports on most computers use a subset of the RS-232C
binary number that gives the closest approximation to the standard. Fig. 6 shows RS-232 for the 9-pin D-type
fraction formed by the input voltage and reference. The connectors.
following is the conversion equation [9]:

V x = Vref ( a1 2 −1 + a 2 2 −2 + a3 2 −3 + ..... + a n 2 − n ) (2)

Where, Vref is the ADC reference voltage, Vx is the input


analog voltage and n is the number of bits. Figure 6. The 9-pin D-type of RS-232 connector.
It is noteworthy that there is an inherent uncertainly in
the input voltage producing a given ADC output, and this B. Software Framework
uncertainty is given by:
The software frameworks consist of database and
ΔV = Vref 2 − n (3) graphical user interface (GUI) which is developed using
SQL server 2005 and visual C++ 2005. The software system
Therefore, it is very important to take this into account uses COM port to receive digitized signal from
when using an ADC in industrial instrumentation and microcontroller and convert the hexadecimal data into
control systems, and in defense sector applications, where decimal format. Fig. 7 shows the user interface of PC based
100% accuracy is required. Fig. 5 shows simple schematic weight scale system.
diagram of ADC 0804.

Figure 5. Schematic diagram of ADC 0804. Figure 7. User interface of the system.

345
IV. RESULT REFERENCES
The performance of PC based weight scale system has [1] Halimic, M., Balachandran, W. and Enab, W., “Fuzzy Logic
been verified with static process environment. In this Estimator for Dynamic Weighing System”, Proc. The 5th
environment, there will be test on hardware and application IEEE Int. Conf. on Fuzzy Systems, Vol. 3, 1996, pp. 2123-
design to run together before introducing them into the real 2129.
[2] A 20-bit (1ppm) Linear Slope Integrating A/D Converter,
application. Fig. 8 presents the linearity of the load cell Application Note 260, National Semiconductor.
sensor that has been applied in the system. The graphic [3] A High Performance Industrial Weighting System,
shows that the system is very linear and suitable to be used Application Note 295, National Semiconductor.
to measure weight of a product. The system is able to [4] Higino, J. and Couto, C., “Digital Filtering in Smart Load
measure the weight up to 5 kilogram. Cells”, Proc. the 21st IEEE Int. Conf. on Industrial
Electronics (IECON), 1995, pp. 990-994.
[5] Halimic, M. and Balachandran, W., “Kalman Filter for
Dynamic Weighing System”, Proc. the IEEE Int. Symposium
on Industrial Electronics (ISIE), Vol. 2, 1995, pp. 786-791.
[6] Panthala, S., Islam, N. and Habib, S. A., “Automated
Industrial Load Measurement System”, AU Journal of
Technology, Vol. 10, No. 1, 2006, pp. 23-28.
[7] Prabuwono, A. S. and Akbar, H., “Automated Weight
Measurement System Based on Serial Communication”, Proc.
the 3rd Int. Conf. on Mechatronics (ICOM), 2008.
[8] Johnson, C. D., Process Control Instrumentation Technology,
7th Ed., Prentice-Hall, Englewood Cliff, NJ, USA, 2003.
[9] Boylestad, R. L. and Nashelsky, L., Electronic Devices and
Circuit Theory, 7th Ed., Prentice-Hall, Englewood Cliff, NJ,
Figure 8. Linearity of the load cell sensor. USA, 1999.
[10] http://cnx.org/content/m12293/latest/
A complete design of PC based weight scale system has
been proposed, describing both hardware and software.
However, it is possible to enhance the system further. The
following suggestions are made for the improvement of the
system: first, the range of measurement can be expanded to
cover the weight of product in real manufacturing. Second,
analog to digital converters with higher resolution (e.g., 16-
bit devices) can be applied to increase the accuracy of the
measurement system. Third, experiment can be done with
the dynamic environment of weighing process that simulates
the manufacturing environment as closely as possible.
V. CONCLUSION
As the conclusion, this paper has contributed to the
development of a PC based weight scale system for the
purpose of product inspection. A software user interface, the
signal conditioning and data acquisition hardware are
successfully developed where the system can obtain various
load measurements. A few suggestions have also been
drawn up for the improvement of the system.
The system is seamless integration and always possible
in a highly automated industry. Thus, there is a great
potential for this system to be used in numerous industries,
where load measurement form is a part of the manufacturing
process.
ACKNOWLEDGMENT
The authors would like to thank Technical University of
Malaysia Melaka (UTeM) for financial support and Afzan
Omar for her contribution in this research.

346
2009 International Conference on Computer Engineering and Technology

Short-Term Electricity Price Forecast Based on Improved Fractal Theory

CUI Herui YANG Li


Department of Economics and Management, North China Electric Power Universiy, Baoding,
071003, China
cuiherui1967@126.com

Abstract forecast based on factor analysis, such as linear


regression method, artificial neural network method,
This paper discusses the basic principle of the model matrix and comprehensive evaluation method.
fractal theory and the basic thinking of how to use it to (3) forecast based on econometrics, such as Holt and
forecast the electricity price, then builds electricity Winters’s equation, Markov theory of economic
price forecasting model based on improved fractal prediction. (4) forecast based on Combination. [1][2]
model and solve the model on this basis. Finally, this This paper tries to use a new method named fractal
fractal model is used to forecast the short term theory to forecast the electricity price.
electricity price. Taking non-regular and nonlinear thing as research
object, studying on the regularity, hierarchy and scale
1. Introduction invariance hidden in complex natural and social
phenomenon, crossing the natural science, social
With the marketing trend of the global electricity, science and thinking science, fractal theory is a new
electric power industry is growing gradually from the method to study on the complex object. Based on the
perfect monopoly to competition , also as the core self-similarity between part and whole, fractal theory
factor of electricity market, the electricity price has establishes the global property from the part, along the
changed correspondingly, it is determined by the direction from microscopic to macroscopic. This
gaming of participants of electricity market, no longer theory takes the relationship between regional and
by government's administrative order. Cause global as research object, emphasizes the global's
participator's benefit directly affected by electricity dependence to part, and searches for the bridge through
price, electricity price forecast has important it can deduce and transient from part to whole. As the
significance to every participator, as for government whole is made up by the part, we can understand the
and the regulation organs, it is used to help to make whole through part. One of the fractal theory
macro economic policy; for investor, it is very philosophical foundations is that the unit and element
important to decide investment; for generation of the system contains the property and information of
companies who gain profit through electricity price the whole system. Self-similarity and scale invariance
bidding, it is also the life-and-death. Form every are the base of fractal theory. [3][4][5]
meaning; electricity price forecast is one of the most
problems of electricity market which is urgent to be 2. Modeling of electricity price forecast
resolved.
At present, the researches of electricity price The change of commodity prices, including stock,
forecast at home and abroad can be divided into two has fractal feature. [6] [7] The distribution about
kinds: mathematical model and market simulation. commodity prices per unit time obey the symmetry and
Though market model contains the structural details of stable distributions with special dimension, so the
the whole market and the forming mechanism of power fractional theory can be used for price analysis and
price of this market, this method's lots of market data prediction. [8][9][10] And the same to the electricity
need become the limitation of it's application in power price. So analyzing the regularity of the electricity
system. Mathematical model mainly has several kinds price using fractal method, the research can start from
as following: (1) forecast based on time series analysis, the electricity price itself, other than the electricity
such as autoregressive model, autoregressive moving price's influencing factors.
average model, threshold autoregressive model. (2)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 347


DOI 10.1109/ICCET.2009.73
2.1. Analysis of the fractal property of N—related object's number, such as price, index,
electricity price based on R/S etc;
C—undetermined constants;
Before the construction of the fractal model to D—fractal dimension.
predict price, the first must to do is to judge whether Usually, take the numbering of time as “r”,
the data has the fractal property and can use the fractal r1=1,…and rn=n, and take electricity price value as
model. This paper uses the R/S analysis, and it’s “N”, N1 is equal to electricity price value when r1=1,
theoretical calculations are as follows. …and Nn is equal to electricity price value when rn=n.
Take {Xi}(i =1,2,…,n)as a time series, the average At present, in the general application of fractal
_ method, D is constant, and this type of fractal method
of it is X ,and the standard deviation is S. is called constant dimension fractal, manifested as a
_
1 n
X= ∑Xi
n i =1
(1) line in double logarithm coordinate system. Any two
data points (Ni,ri)and(Nj,rj) on the straight line
2
determine the fractal parameters, namely fractal
1 n ⎛ _

S= ∑
n i =1 ⎝
⎜ Xi − X ⎟

(2) dimension D and constant C of this line.
⎡N ⎤
ln ⎢ i ⎥
(8)
X(t,n) is cumulative deviation,
D = ⎣⎢ N j ⎦⎥ = ln N i − ln N j
t
⎛ _
⎞ ⎡r ⎤ ln r j − ln ri
X (t , n ) = ∑ ⎜ X i − X ⎟ (3) ln ⎢ i ⎥
i =1 ⎝ ⎠ ⎣⎢ r j ⎦⎥
Definite the difference between the maximum and
C = Nir D (9)
the minimum obtained by the formula as R,
As negative number can not take logarithm , there is
R = max X (t , n) − min X (t , n) (4) a need to add a constant to all the N value to eliminate
1≤ t ≤ n 1≤ t ≤ n
And the rescaled range analysis is the negative number , in another word, there is a need

(R / S)n = (c × n)H
to make a translation for all the N value firstly, when
(5) some of Ni are negative numbers. Sometimes, such
Calculate the logarithm of the above equality, translation is made firstly for a better analysis and
Log(R / S )n = Log(a ) + H × Log(n) (6) predication.
This paper uses variable dimension fractal model to
The slope between Log(R/S) and Log(n) obtained get over the weakness of the above constant dimension
through the linear regression is Hurst index. The fractal method, that it is unable to deal with the non-
introduction of Hurst index is to determine the random linear functional relationship in double logarithm
distribution property and the fractal property of the coordinate system.
data sequence. Now it will show that any functional relationship
When H=0.5, time series show the property of N=f(R), between N and R, can be transformed into
random and independent, and that is a sequence of
random walk. When 0 ≤ H <0.5, the time series is anti- C
fractal distribution N = , make:
persistence sequence, also known as "mean eversion". rD
When 0.5<H ≤1, the time series show the trend of an C
enhance persistent sequence, and have the property of f ( R) = (10)
fractal. rD
So,
r = [C f ( R )]
1D
2.2. Model construction (11)
That is, through the transformation above, R gets the
2.2.1. Related formula of fractal distribution. Power form of fractal distribution.
exponent distribution can be used to describe and 2.2.2. Transformation. Although any functional
express fractal distribution. relationship can be transformed into the form of fractal
C distribution, in fact, in the practical application, what
N= (7)
have known are just some data points, not the
rD
In the formula: functional relationship, so can not get the concrete
r—Characteristic Linearity, such as time, length, etc; form.At this time, it can make a series of

348
transformations called cumulative sum, and choose a value have good linear relation, so as to the D and C
transformation, through which the data can be in fairly value. In this paper, the D and C value is calculated by
good agreement with fractal distribution model, and curve fitting analysis according to the
can be treated with fractal distribution. Transformation TABLECURVER firstly, other then take the fractal
method as following: parameters as fixed.
First, drawing the initial data point,(Ni,ri) (i The process of model construction as follows:
=1,2,…,n), on the double logarithm coordinates, in The first and the second step is the same as the
general case, these data points cannot be in fairly good originally model.
agreement with fractal distribution model, so, Third, calculate the D and C value through curve
arranging these data into a basic series. fitting analysis according to the Tablecurver;
{Ni} = {N1,N2,N3…} (i =1,2,…,n) (12) Finally, calculate the S value and forecast the
Based on the above basic series, other series can be electricity price correspondingly.
constructed. Such as to construct the first order
cumulative sum series S1, just need to make S11= N1, 3. Empirical Analysis on electricity price
S12= N1+N2, S13= N1+N2+N3,and so on. The Second forecast
Order, third order can be made as the same, that is:
{S1i}= {N1, N1+N2, N1+N2+N3…}(i =1,2,…,n) (13)
3.1. Judgment of the fractal property of
{S2i} = {S11,S11+S12,S11+ S12+ S13…}(i =1,2,…,n) (14)
Second, establish the fractal model of the cumulative electricity price
sum series. Taking the first order cumulative sum
series S1 as example, draw the data (S1i,ri)(i The following is the test sequence based on HURST
=1,2,…,n)on the double logarithm coordinates to get a index constructed by the price value from January
discrete fractal distribution model. According to the n 1th,2007 to October 31th, 2007 including the price of
data points, what obtained is a segment constant 300 trading days, and divided into 20 groups labeled as
dimension fractal model made up of n-1 line, and Ia(a=1,2,3…20) with the length 15, that is n=15.
calculating the fractal parameters of every line Element in every subinterval labeled as Nk,a ,in
according to formula (8) and (9). which a is subinterval marker from 1 to 20, and k is
Third, choose the transformation with best result, element marker from 1 to 15 in every subinterval.
15
and determine the fractal parameters correspondingly. The average of Ia is : ea = 1 ∑ N k ,a ,and the
Drawing the data points of each order cumulative sum 15 k =1
series on the double logarithm coordinates and cumulative deviations of Ia
comparing with a fractal distribution model, then can
∑ (N − ea ) ,and the range of Ia is
k
choose a transformation with best result, and determine is X k ,a = i ,a
the fractal parameters correspondingly. i =1
Finally, determine the fractal distribution model, Ra=Max(Xk,a)-Min(Xk,a),in which k is from 1 to 15.
forecast using extrapolation calculation. The standard deviation of Ia is S I ,
a
2.2.3.Improvement.This paper make a improvement
× ∑ (N k ,a − ea ) ,thus, can get the value of the
1 15
S Ia =
2
to the above mentioned model, which take a pair of
fractal parameters determined by the known data as the 15 i =1
fractal parameters of all the unknown future price rescaled range RIa/SIa, and the average of it labeled as
value to realize price forecast. (R/S)n.
The unreasonable place is that as the fractal With the increase in the value of N, repeat the above
parameters of the known data are not always able to process until N = 300.
represent the unknown future price value’ accurately, The slope obtained according to
the prediction results have bigger deviation. From the log(R/S)n=H×log(n)+log(a) and least square method is
table 1, it can get the same conclusion. D value Hurst index. After derivation, H=0.69.
presents monotonically increasing tendency, while C H>0.5 implies that today's events have a true impact
value presents monotone decreasing tendency with the on tomorrow, the data shows the fractal characteristics.
increase of r. As D and C value have obvious changes,
the above mentioned model is wrong for it take the 3.2. Prediction
fractal parameters as fixed. Through the research of
sets of different data, it can find that the lnr and D

349
Step 1. Collect original data. Select the Day Ahead broad application in electricity price forecasting in
Hourly LMP Values from the PJM of the America as power market.
the original data to construct fractal model. The
original data and the fractal parameters of this data can References
be seen in table 1.
Step 2.Calculate the D and C value through curve [1] Yang Bo,Zhao Zunlian,Chen Yunping,Han Qiye,
fitting analysis according to the TABLECURCER and Forecasting Methods of Day-ahead Trading Marginal Price,
SCILAB. High Voltage Engineering, Vol.33,No.7,2007(In Chinese)

Table 2 The fractal parameters predictive value [2]Lin Zhiling,Gao Liqun,Zhang Dapeng,Zhang Qiang,
R lnr D C System Marginal Price Forecast Based on the Dynamic
Neural Network, Journal of Northeastern University (Natural
16 2.772588722 1.8269746 32.33224 Science)Vol.27,No.1,2006(In Chinese)
17 2.833213344 1.835935 31.518581
[3]Yin Yuliang,Li Peizheng,Kang Yuyun,Gu Zonglei, The
18 2.890371758 1.8442091 30.79839
Development and Research Status of Fractal Theory ,Science
19 2.944438979 1.8518937 30.115215 Information,No.15,2007(In Chinese)

Step 3.According to the S 2 = N i r and D, C,


D
[4]Li Peng, The Development and Application of Fractal
calculate S2 and N value correspondingly. Theory, Collected Works Science and Education,
Make a comparison between predictive value and No.1,2008(In Chinese)
the real value. Only one day, that is 6.29, the predictive
[5]Liu Ying , Hu Min, She Guiying, Li Xiaobing, Liu
value has big error as 16.7%, other days’ predictive
Xiaolin, Fractal Theory and Its Application, Jiangxi Science,
values’ error is very small. Therefore, the fractal model
Vol.2415, No.24,2006(In Chinese)
is relative ideal in short term electricity price forecast,
and will be of much help for price forecasting in future. [6]Liu Yan,Wang Li,Ma Guangwen , On-grid Price Risk
Identification to the Generation Company,Water Power,
4. Conclusions Vol.33.No.1,2007(In Chinese)

In this paper, the fractal model is used to forecast the [7]Liu Haibo,Yi Dongyun, The Research of Stock Price
short time electricity price. Forecast Basing on Wavelet Analysis and Fractal Theory,
First, using the R/S analysis method, this paper Statistics and Advisory, No.5,2006(In Chinese)
analyzes the fractal characteristic of electricity price to
[8]Lu Fangyuan, Fractal Theory and Its Application in
determine whether the price data has the fractal feature
Economic Management, Journal of Henan College of
or not. After derivation, H=0.69, implies that the time Financial Management Cadres,No.3,2004(In Chinese)
series show the trend of enhance persistent sequence,
and have the property of fractal. So the fractal model is [9]Liu Xiaocheng,Wang Yanming, Oil Price Forecast Based
can be used to do prediction. on Fractal Theory, Journal of Xi'an Shiyou University,
Second, this paper establishes a fractal model based Vol.15, No.4,2006(In Chinese)
on the cumulative sum and makes an improvement,
using the Day Ahead Hourly LMP Values as the [10]Zhang Ying,Lu Ying, Yao Yan, The Price Forecast of
original data to construct forecasting model. The Fashion Commodity Based on Fractal Theory, Journal of
Shengyang University of Technology(Social Science
comparison between the predictive value and the real
Edition), Vol.1,No.2, 2008(In Chinese)
value shows that the application of the fractal theory
can improve the precision of prediction, and the fractal [11]http://www.pjm.com
model is suitable. This forecasting model possesses

350
Table 1.The fractal parameters
priceN
time ri S2 D C
($/MWhr)
6.11 1 40.53 241
6.12 2 38.71 420.71 -0.803792964 241
6.13 3 40.57 640.99 -1.038486636 204.8176
6.14 4 38.99 900.26 -1.180712275 175.1896
6.15 5 35.34 1194.87 -1.268730643 155.0658
6.16 6 36.51 1525.99 -1.341618573 137.9017
6.17 7 35.61 1892.72 -1.397149649 124.8412
6.18 8 33.38 2292.83 -1.436156029 115.7161
6.19 9 31.75 2724.69 -1.465132876 108.9494
6.20 10 30.40 3186.95 -1.487366358 103.755
6.21 11 33.52 3682.73 -1.517046539 96.9011
6.22 12 34.06 4212.57 -1.54483922 90.65372
6.23 13 27.12 4769.53 -1.551357499 89.1972
6.24 14 30.03 5356.52 -1.566184306 85.86872
6.25 15 31.28 5974.79 -1.5832714 82.08258

Table 3. 6.26~6.39 Day ahead hourly LMP values predictive value


time 6.26 6.27 6.28 6.29
S2 5123.0951 5716.1397 6360.8183 7029.1321
predictive value($/MWhr) 35.03 36.57 35.78 28.88
real value($/MWhr) 35.42 38.59 36.97 34.7
Error(%) 1.1 5.23 3.22 16.7

351
2009 International Conference on Computer Engineering and Technology

BBS Sentiment Classification Based on Word Polarity

Shen Jie, Fan Xin, Shen Wen, Ding Quan-Xun


Information Engineering College of Yangzhou University,
Yangzhou, JiangSu. China
fanxin2632@163.com, shenjie@yzu.edu.cn, shenye1982@163.com

Abstract of the polarity of movie reviews. Their best results


came using Unigrams, calculated by SVM at 82.9%
Sentiment classification is an applied technology accuracy. Wei-Hao Lin[5] proposed one kind of
with great significance. It can help people find right statistical model, distinguishing the viewpoint by
reviews in a more efficient way. In this paper, we analyzing the words’ usage. Xu Jun et al. [6] used
present a novel efficient method for BBS sentiment simple Bayes and the maximum entropy method to
classification. Through extracting sentiment-bearing classify the reviews on news with relatively high
words from WordNet using the maximum entropy, a performance. Tang Hui-feng et al.[7] had considered
ranking criterion based on a function of the probability different methods of feature extraction, feature
of having Polarity or not is introduced. The words with selection and classifier selection. But these researches
polarity are selected as features, which are processed only considered about lexical category. Because
with SVM classifier at the following step. The Chinese language usage is very complicated, these
experimenta1 results show that our method achieves methods given by the researchers introduced many
high performance. features unrelated with author’s sentiment, and ignored
some low frequency part-of-speech with sentiment-
1. Introduction bearing tendency, such as interjection, adverbial.
Sentiment classification is mainly based on the
BBS forum has become an important place for sentiment-bearing words. If we use the methods of
people to retrieve information and deliver of topic feature selection for sentiment classification, a lot
comments. The reviews are mixed in terms of positive of noise features will be introduced, which affects the
and negative opinion polarity. If you want to read some classification. The maximum entropy method is widely
negative reviews on some products just to pinpoint applied in the natural language processing domain, in
possible drawbacks and don’t want to spend time part-of-speech tagging[9], Sense Disambiguation [10]
reading positive reviews, you need to classify them by and so on. In this paper, the semantic tendency
sentiment. Sentiment classification is an applied identification was studied. We identified whether the
technology with great signification. Its main idea is to words had semantic tendency by using maximum
represent the overall opinion polarity of a review as entropy model. The words with polarity were selected
positive or negative that the author would assign to. as features and our Support Vector Machine classifier
Sentiment classification is not the same as topic was built.
classification. Topic classification is based on the topic
keywords. The researches in this domain have been 2. Identifying sentiment-bearing words
studied extensively in the past and a number of based on maximum entropy model
techniques have been proposed, such as excellent
supervised methods, feature extraction method and Maximum entropy is a general technique for
feature selection mechanism[1][2][3]. Sentiment estimating probability distributions from data. The
classification is mainly based on the sentiment-bearing over-riding principle in maximum entropy is that when
words and the traditional methods of topic nothing is known, the distribution should be as uniform
classification are unsatisfactory in it. Some effective as possible, that is, have maximal entropy. In this paper,
solutions were proposed. Bo Pang[4] applied Naïve we will regard the sentiment-bearing words’
Bayes, Maximum Entropy and Support Vector identification as a classification issue. Maximum
Machine classification techniques to the identification entropy model is used to computer (p1) the probability
that the word is a sentiment-bearing word and (p2) the

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 352


DOI 10.1109/ICCET.2009.13
probability that the word is not a sentiment-bearing ⎧ pλ ( f / | word ) = 1/ Z λ ( word ) exp(∑ λi fi ( word , f / ))
word. If p1 is bigger than p2, the word is a sentiment- ⎪ i
⎨ (1)
bearing word. Maximum entropy model is mainly based Z
⎪ λ ( word ) = ∑/ ∑i i i
exp( λ f ( word , f /
))
on feature selection and parameter estimation. The ⎩ f

feature selection mainly seeks for the constraints,


selects the features which are important to feature Z λ ( word ) is a normalizing constant determined

template of maximum entropy. Then the parameters’
value of each feature is estimated and the model is built. by the requirement that f/
pλ ( f / | word ) = 1 for
According to the BBS document’s characteristics, we
choose the appropriate feature set and label each word’s
all word . For each feature f i we introduce a
semantic tendency value. The words with polarity are parameter λi which denotes the weight. We compute
selected as features. Here the knowledge of which word
has polarity is what we should obtain by maximum the value of λi where λi achieves its maximum by
entropy. Through analyzing BBS documents, we GIS(Generalized Iterative Scaling) algorithm. Thus we
mainly consider of several kinds of factors as folling: can obtain probability distribution of each sentiment-
bearing word. The algorithm is as following:
{1. Part_of_speech
Input: document
2 .Position (where the word appears)
Output: all the sentiment-bearing words
3. Word’s length begin
4. Frequent (how many times the word appears) the document split into words using the
participle system
5. Style (whether the word is in special symbol for each word
such as {} begin
and “”}
{Suppose
f / ( word ) = 1
Firstly we hand-labele sentiment-bearing words in get the feature vector based on feature template
the training set. Each document is represented by a set λ
put the value of i according to the training
of sentiment-bearing word set θ ( d i ) . We also produce
data into maximum entropy formula(1)
the sentiment-bearing word set ϑ ( d i ) for each computer (p1) the probability that the word is a
document by the automatic generating program. We use sentiment-bearing word;}
{ Part_of_speech, Pos, Len, Fre, Style} as feature end
template. Take the word as an event and build feature begin
vector. With this constraint to features, we calculate the
{Suppose
f / ( word ) = 0
words’ most superior probability distribution
get the feature vector based on feature template
p( f / ( word j ) | word j ) by using the maximum λ
put the value of i according to the training
/
entropy model. f ( word j ) denotes the result of data into maximum entropy formula(1)
computer (p2) the probability that the word is
word j labeled. It has two kind of values. not a sentiment-bearing word; }
end
⎧1, word labeled sentiment-bearing p1 > p 2
f / ( word ) = ⎨ if
⎩0, word not labeled sentiment-bearing the word is a sentiment-bearing word
Each feature of the feature template is computed else
by f ( word, f ( word )) . The value of this function
/
the word is not a sentiment-bearing word
is 0 or 1. If the word’s feature is the same as sentiment- endfor
end
bearing words and f ( word ) = 1 , the value of the
/
Figure 1.The algorithm of identifying
function is 1. If the word’s feature is not the same as
sentiment-bearing words and f ( word ) = 0 , the
/ Sentiment-bearing words
value of the function is also 1. In other situations the
value of function is 0. 3. Svm classification based on sentiment-
According to the maximum entropy theory, we
bearing word identifying
build the model.

353
Classifying the BBS documents based on the 4.2. Experiment results
sentiment-bearing words can be seen as a classification
problem involving two classes. Given a set of For the topic feature selection, all the features are
documents D = {d1 , d 2 , ⋅⋅⋅, d n } . We pre-define selected to represent documents, and the SVM classifier
is constructed to carry on the classifying. This method
classes, C = {c1 , c2 } . c1 denotes the positive review is shown to achieve good results on the task of topic
classification. For the lexical-category feature selection,
andc2 denotes the negative review. We implement we consider the probabilities which part-of-speech is
SVM classifier to label document c1 or c2 . Support the sentiment-bearing word. We use each kind of part-
of-speech for the feature selection respectively.
vector machines (SVM)[11] is a state-of-art supervised Through analyzing of the BBS documents, we
kernel method for machine learning. It is successfully discovered that the sentiment is mainly illustrated by
to text classification. The basic idea behind kernel the noun, verb, adjective and adverb words. The
methods is to embed the data into a suitable feature experiments were implemented respectively selecting
space F via mapping function: X → F , and then use one from the noun, verb, adjective and adverb words
a linear algorithm for discovering nonlinear patterns. In and all of them. The method we proposed is that the
sentiment classification, our goal is to seek an maximum entropy model should be firstly instantiated
optimum value with the restrains. by training samples before constructing our classifier.
Before carrying on the classification, a document The parameter value is obtained by the maximum
should be represented by a set of word count features. entropy model’s feature template. When a new
We use the vector space model (VSM). document comes, it is considered as an ordered list of
words. The sentiment-bearing tendency words are
V (d ) = (t1 , w1 ; t2 , w2 ; ⋅⋅⋅; tn , wn ) ,
selected for features. The figure 2 is the maximum
entropy model used to identify sentiment-bearing
ti (i ∈1, 2, ⋅⋅⋅, n) . t denotes the feature. w denotes words. We can see from the figure the identifying of the
i i sentiment-bearing words is consist of training process
the weight of ti in d . The words which have the and testing process.
sentiment-bearing tendency are selected as the features
by using the maximum entropy model.

4. Experiment

4.1. Experiment datasets

Our experiment used 2476 reviews from Yangzhou


University Venus forum in recent years. These
reviews were consisted of 1543 positive reviews and
933 negative reviews, not including neutral reviews.
For our experiment purposes, we removed the html
tags and transformed them into the unified document
format and manually labeled, 50% for training and Figure 2.The maximum entropy model used to
50% for testing, from which positive and negative are identify sentiment-bearing words
also listed. The training documents and the testing
documents were not overlapped. We used Binary[8] We extracted 6740 words from the documents for
testing, including 2659 positive examples and 4081
for feature weight and Chinese Academy of Science’s
negative examples. The positive example denoted that
ICTCLAS system for participle and part-of-speech this word has the semantic tendency; negative example
tagging. It is different from topic classification. Some denoted that this word does not have the semantic
negative terms, exclamation terms and so on are tendency or it is neutral. With five cross-validations on
removed as stop words in the topic classification. But the reviews dataset, we obtain the accuracy by using
these words often have the semantic tendency and are maximum entropy model to identify sentiment-bearing
not removed in the sentiment classification. We did words. As table 1.
three experiments, respectively using the traditional
topic feature selection, lexical-category feature Table1.The accuracy of identifying
selection and the method we proposed.. sentiment-bearing words by using maximum
entropy model

354
using noun and verb were better than using adjective
and adverb. But linking them, classified precision is
better than any of single part-of-speech. When we
From the BBS documents, we discovered that many selected single part-of-speech words as features, the
words did not have the sentiment-bearing tendency. But features was not all-sided and the viewpoint the
when they were co-occurrences with some others, they reviews expressed was not distinct. So we should
would have the sentiment-bearing tendency. And the combine more kinds of part-of-speech. After
training data was not all-sided. Therefore, error combining noun, verb, adjective and adverb, accuracy
happened while estimating feature parameter, which was raised. But because of BBS document’s non-
affected accuracy of identifying sentiment-bearing conventional written, some other part-of-speech words
words. The sentiment classification result is in table 2. which are seldom used also express the sentiment,
such as interjection and condition. So we need to
From table 2, we can see that the accuracy of select more part-of-speech words which are likely to
sentiment classification by using topic feature selection be sentiment-bearing words. When we select more,
was low. Sentiment classification is mainly based on more unrelated words will be introduced. So it is
the words with polarity. The topic feature selection that contradictory.
did not separate the sentiment-bearing words from the Although the accuracy of identifying sentiment-
ordinary words introduced massive irrelevant feature bearing words by using maximum entropy was not
items which affected the sentiment classification. As very high, the accuracy of classifying reviews was
following, the example about a piece of review to the better. By using the maximum entropy model, we
movie “An American Crime” is given: removed the unrelated words. At the same time, we
Example: It has been a long time that I had not took out the shortage that part-of-speech is not all-
watched a movie which can touch me. Fortunately, I sided. All the words which were identified to be the
saw the new movie “An American Crime” of this year sentiment-bearing words could be used as features
in that raining night which I would never forget. whatever its part-of-speech. Our method can
Although each role in the movie was very common, effectively help people locate the required reviews in
which can be found everywhere in normal life, I was the Internet.
deeply moved by it.

Table 2. Results for three methods 5. Conclusion


In this paper, a novel efficient method for BBS
sentiment classification is presented. By using
maximum entropy model to extract words with polarity,
it is optimized that the features represented of
documents. We find that selecting the words with
polarity as features can improve the performance of
BBS sentiment classification. But because the training
data was not all-sided, which made error in constructing
our feature template and computing the parameter value
of features. And the results of classification were
influenced by the error.
Some shortages need to be improved. For example,
The example above is an obvious positive attitude, it is only considered whether a word had the semantic
but only a few words represent sentiment tendency, tendency. We have not considered that some words’
such as touch, fortunately and move. When we used sentiment-bearing tendency maybe change with some
topic feature selection, a lot of non-correlated words special words around or in different linguistic
were introduced which affected sentiment environment. In future, we would like to improve our
classification Sentiment classification is based on the training data and our maximum entropy model. The
sentiment-bearing words. So we would improve the polarity difference of the words in variable
classifier if we select words with polarity as features. environment needs to be considered and more features
need to be extracted according to the maximum
Only one kind of part-of-speech selected as
features can reduce the noise features. From table 2, entropy.
the accuracy was improved by using noun, verb,
adjective and adverb respectively. And the results of

355
Acknowledgement Levels[A]. In : Proceedings of the 10th Conference on
Computational Natural Language Learning
(CoNLLX)[C].New York City:June2006.109-116.
Shen Jie, Fan Xin , Shen Wen and Ding Quan-Xun
[6] Jun Xu,, Yu-Xin Ding, Xiao-Long Wang. Sentiment
acknowledge the support by National Natural Science Classification for Chinese News Using Machine
Foundation of China 60673060. Learning Method [J]. Journal of Chinese Information
Processing, 2007, 21(6): 95-100
6. References [7] Hui-Fen Tang, Song-Bo Tang ,Xue-Qi Cheng. Research
on Sentiment CIassification of Chinese Reviews Based
[1] Sebastiani F.. Machine learning in automated document on Supervised Machine Learning Technique [J]. Journal
categorization.ACM Computing of Chinese Information Processing, 2007, 21(6): 88-94.
Surveys,2002,34(1):1~47.
[8] Lan M, S Y Sung et al.A Comparative study on Term
[2] Yang Y.,Liu X.. A Re-examination of document Weighting Schemes for Document Categorization[A].
categorization methods. In: Proceedings of SIGIR’99,the Internationa1Joint Conference on NeuraI Networks[C].
22nd ACM Internation Conference on Research and 2005.
Development in Informaion retrieval, Berkeley,
CA,1999, 42-49. [9] Hong Lin, Chun-Fa Yuan, Shu-Jun Guo. A Chinese Part
of Speech Tagging Method Based on Maximum Entropy
[3] Lewis D.. Naive bayes at forty:The independence Principle. Journal of Computer Applications [J], 2004,
assumption in Informaion retrieval, In: Proceedings of 24(1): 14-16
the 10th European Conference on Machine learning,
Chemnitz, Germany,1998, 4~15. [10] Xiao-Rong Chen, Jin Qin. Maximum Entropy-Based
Chinese Word Sense Disambiguation. Computer
[4] Bo Pang, Lillian Lee, and shivakumar Vaithyanathan. Science [J], 2005, 32(5)
Thumbs up? Sentiment classification using machine
Learning techniques [A].In: Proceedings of the 2002 [11] JOACHIMS, T. 1999. Making large-scale SVM
Conference on Empirical Methods in Natural Language learning practical. In B. Schlkopf, C. Burges, and
Processing(EMNIJP), Pages7986. A. Smola(eds.), Advances in Kernel Methods –
[5] Wei-Hao Lin, Theresa Wilson, Janyce wiebe and Support Vector Learning, pp. 169–184. MIT
Aleaxander Hauptmann. Which side are you on? Press.
Identifying Perspectives at the Document and Sentence

356
2009 International Conference on Computer Engineering and Technology

Applying eMM in a 3D Approach to e-Learning Quality Improvement

Kattiya Tawsopar Kittima Mekhabunchakij


Information Technology, Graduate School Information Technology, Graduate School
Sripatum University Sripatum University
Bangkok, Thailand Bangkok, Thailand
e-mail: kattiya@gmail.com e-mail: kittima.me@spu.ac.th

Abstract—The E-Learning Maturity Model (eMM) is a This paper presents a three-dimensional (3D) approach to
framework for quality improvement, by which institutions can e-Learning quality improvement. In the approach the eMM is
assess and compare their capability to sustainably develop, applied in “Diagnosis” phase as an assessment tool for
deploy and support e-learning. This paper presents a e-Learning process improvement in institutional context
three-dimensional (3D) approach to e-Learning quality where the key elements necessary for improvement in
improvement. In the approach the eMM is applied in e-learning activities are identified. The “Development” phase
“Diagnosis” phase as an assessment tool for e-Learning process of the 3D approach concentrates on putting together
improvement in institutional context where the key elements improvement or change packages to target areas of
necessary for improvement in e-learning activities are
deficiency. In strategic point of views, the packages are
identified. The “Development” phase of the 3D approach
translated into implementation plans in a short term, a mid
concentrates on putting together improvement or change
packages to target areas of deficiency. In strategic point of
term, and a long term. In “Delivery” phase of the approach,
views, the packages are translated into implementation plans the main focus is the human resource and marketing efforts
in a short term, a mid term, and a long term. In “Delivery” for implementing the change packages in operational point
phase of the approach, the main focus is the human resource of views.
and marketing efforts for implementing the change packages This paper is organized as following, Section 1
in operational point of views. The 3D approach described can Introduction. Section 2 explains the Maturity Thinking and
be beneficial in guiding individual institution's understanding e-learning Maturity Models. In Section 3 discusses the
of their e-learning capability and providing educational e-Learning Maturity Model (eMM) model , Section 4
institutions with a roadmap for e-learning process presents A 3D Approach in Evaluation e-learning Maturity
improvement as well as providing a framework for strategic Model Section 5 discusses Using eMM in e-learning
and operational planning and investment. Development 3D View and Section 6 Conclusion and an
acknowledgement.
Keywords-component; E-learning, Process Improvement,
e-Learning Maturity Model, eMM, e-Learning Life Cycle. II. MATURITY THINKING AND E-LEARNING MATURITY
MODELS
I. INTRODUCTION
Capability maturity models typically identify five or six
Today e-learning is an important role for learning ‘maturity’ – or ‘capability’ – levels, from low to high. The
Management in Thailand. E-learning can be usefull in number of organisational ‘foci of assessment’ – the
helping students keep the conceptual knowledge more viewpoints through which the organizations are examined –
durable than classroom learning. Besides, learning for “Maturity Models” varies depending on the model.
management is also in the same standard. In particular, Probably the best known derivative maturity model is the
checking and supporting the students' knowledge can be CMM (Capability Maturity Model) for software engineering.
done automatically and they can learn everywhere at all Also, other software engineering maturity models have been
times [1]. Some researches in Thailand we found that the developed, including ‘Standard Process Improvement and
main problem in the development of e-learning in Thailand Capability dEtermination’ (SPICE), the basis of ISO 15504.
[2] is instructors are not interested to designing teaching The recent development of the CMMI model (CMMI 2000,
materials, including a lack of time to do this. SEI 2002) – covers not only software development, but
As a measure to elevate quality e-Learning to a universal product development. This is an indication of the continued
standard in order to achieve a mutual working objective, importance of maturity models in product development.
universities in Thailand should lay more special emphasis on In the area of e-Learning development and
the significance of development in terms of Capability implementation, and management, there are numerous
Maturity. In connection to this, the Capability Maturity studies with specific aspects with some sort of e-Learning
Model Integration (CMMI) is to be adapted and applied measures for improving the evaluation of the capability and
direct onto improvement’s process, hence it is considered as maturity in e-Learning.
the most effective means in upgrading working system Marchall and Mitchell [3] they apply the CMM and
within the organization. SPICE in the area of e-Learning in order to explore whether

978-0-7695-3521-0/09 $25.00 © 2009 Crown Copyright 357


DOI 10.1109/ICCET.2009.221
similar insights could be generated for institutions engaged -Development,
in online delivery of teaching. They suggest that this model -Support,
offers a means for institutions to identify systemic weakness -Evaluation,and
in their e-Learning development, delivery and management - Organization.
that potentially can inform future resourcing and strategic
priorities.
Petch, Calverley, Dexter and Cappelli [4] they were
designed to evaluate the operational viability of a method
based on the e-Leaning Maturity Model developed at the
University of Wellington, New Zealand, which in turn was
derived from Carnegie Mellon’s widely accepted Capability
Maturity Model. A successful benchmarking effort should be
able to inform an institution’s planning and resourcing
processes and the outcomes.
In specific area of education Lutteroth, Luxton-Reilly,
Dobbie and Hamer [5] has proposed a maturity model for
computing education which is inspired by the SEI’s CMM.
CMM can be used to rate educational organizations
according to their capability to deliver high quality education Maturity gauged in color-coded scale
on a five level scale.
The work of Moazzam Baig, Sidra Basharat, and Manzil- Figure 1. Process Dimensions and in E-Learning Maturity Model (eMM)
e-Maqsood focuses on the development of a maturity
framework for higher educational sector that would enable The eMM divides the capability of institutions to sustain
education providers to improve quality of the existing and deliver e-learning into five major categories or process
educational processes and also aid the cost-effective areas in Figure 1 that indicate clusters of strongly related
development of value-added and practical processed that processes.
have been overlooked in the past [6]. For this purpose they
have selected CMM as our base model and People Capability IV. A 3D APPROACH IN EVALUATING E-LEARNING
Maturity Model (P-CMM) and CMMI as helping models for MATURITY MODEL
quality improvement in higher education sector.
Donovan [9], When viewed in its totality, your e-learning
Errol Thompson suggests the international literature in
priorities are essential elements representing the E-Learning
improving student learning in a subject and how to assess the
Tactical Process Model. This paper presents a three-
effectiveness of these learning strategies [7]. Thompson
dimensional (3D) approach to e-learning quality
proposed a model based on the principles of the CMM in the
design perspective in order to encourage the learners to improvement by applying eMM in “Diagnosis,”
reflect on their learning and to evaluate the effectiveness of “Development,” and “Delivery” phases.
their learning . Based on the operational principles in Figure 2,
e-Learning Development Lifestyle is naturally composed of
III. THE E-LEARNING MATURITY MODEL Strategy, Requirements Analysis, Design and
Implementation.
The e-Learning Maturity Model (eMM) model was
developed in New Zealand based on two complementary
models, the Capability Maturity Model (CMM) from the
Software Engineering Institute (SEI 2002) and SPICE
(Software Process Improvement and Capability
Determination).
Capability is perhaps the most important concept in the
eMM. The eMM can be used by organizations to “assess and
compare their capability to develop, deploy and support
e-learning”, according to [6], [8]. As to Figure 1, Process
Dimensions and e-Learning Maturity Model (eMM) pop up
the following illustrative descriptions.
The authors identify five dimensions of capability:
-Delivery,
-Planning, Figure 2. e-Learning Development Lifecycle
-Definition,
-Management, and In the Diagnosis phase the eMM is applied as an
- Optimisation. assessment tool. In the context of e-learning there are five
Five e-Learning KPAs were also proposed: process areas for the institution to consider in process
-Learning, improvement: Learning, Development, Co-ordination,

358
Evaluation, and Organization. This phase uses eMM as critical priorities and processes can be focused to assure
a ‘lens.’ to identify any potential gaps which exist in the implementation aligning development and delivery to the
current set of eMM practices in each process area. e-learning strategy and operations in institutional context.
The key elements are necessary for improvement in
e-learning activities are identified and prioritized in the V. USING EMM IN ELEARNING DEVELOPMENT 3D VIEW
Diagnosis phase. This topic involves the adaptation of eMM for
The Development phase of the 3D approach concentrates developing e-Learning, which signifies in the form of 3D
on putting together improvement or change packages to view that comprises Diagnosis, Development and Delivery,
target areas of deficiency. In strategic point of view, the goal as related earlier under the 4th topic - 1) Diagnosis : After
of this phase is to describe the evolution of the institution as obtaining results derived from analyzing and summarizing
a whole by continually planning the change packages. The definitions in 5 process areas [3] , Table 1 show an example
planning is emphasized in progression on the institution’s view of maturity indexed for each phase of e-learning
Process Dimensions in eMM: Delivery, Planning, Definition, development, representing the 2D view is then awarded.
Management and Optimization. For implementation of In relation to this, the vertical bar graph in Figure 4 is
change packages, we show an approach to define the consequently built to bring up more clear-cut pictures. The
implementation based on an e-learning Tactical Process higher climb-up thus witnesses the more efficiency of
Model (eTPM). The eTPM outlines the priorities in moving Process and vice versa. For example, Record 1, Column 1,
e-learning from strategy to delivery and continuous bar graph of Learning Process in terms of Delivery rockets
improvement. It is the infrastructure that contains and up outstandingly, revealing how efficient it keeps going on.
supports the e-learning programs and courses that the On the contrary, it is obvious that Management and
institution develops and delivers. In a holistic view, the Optimisation drop so heavily down to an astonishing extent
institution’s e-learning priorities are essential elements that such unfortunate signs remind the need of prompt
representing the eTPM in three views: improvement.
-Instructional architecture,
-Technical architecture, and TABLE I. EXAMPLE VIEW OF MATURITY INDEXES FOR EACH
- Organizational environment. PHASE OF E-LEARNING DEVELOPMENT

Management

Optimisation
Definition
Planning
Delivery
Learning 3.10 3.00 1.50 1.00 1.00
Development 3.00 2.14 1.57 1.14 1.14
Support 2.83 2.00 1.33 1.50 1.00
Evaluation 1.67 2.67 0.67 1.00 1.00
Organisation 3.00 2.22 1.89 1.11 1.00

Figure 3. A 3-D View of e-Learning Maturity Model

In Delivery phase, the institution’s eTPM is then


translated into Delivery Plans in a short term, a mid term,
and a long term. Each Delivery Plan defines priorities and
processes for implementing a specific change package;
evaluating the delivery process itself; and evaluating the
effects of the change. In this phase, there are three
interrelated priorities in considerations: program-level
development, course-level development of learning products,
and delivery at the program and course levels.
The 3D approach described in this paper can be
beneficial in guiding an individual institution's understanding
of their e-learning capability in eMM perspective, and
Figure 4. In seach of deficiencies based on the maturity levels of the
providing the institution with a framework for quality “Learning”
improvement of e-learning development and delivery
following the institution’s eTPM. Using this approach the

359
TABLE II. SAMPLE DATA FOR FIGURE 5. VI. CONCLUSIONS

Management

1.03 Optimisation
The e-Learning Maturity Model is applied to Thai

Definition
Planning
Delivery
university’s development system for evaluation and
comparison purposes of e-Learning. In other word, this
so-called eMM is somewhat capability in bringing university
up to international recognition standard. It is three-
2.72

2.41

1.39

1.15
dimensional representation, i.e. Diagnosis, Development and
Delivery, that originates quality improvement of university’s
Learning 3.10 3.00 1.50 1.00 1.00 e-Learning. By this, we trust the qualified universities will
7.1% 6.9% 3.4% 2.3% 2.3% have to pass through the good developing system as Watts
Humphrey [10].
Development 3.00 2.14 1.57 1.14 1.14
At this initial stage of evaluation and comparison, none
6.9% 4.9% 3.6% 2.6% 2.6% can tell exactly which level each university in Thailand is in,
Support 2.83 2.00 1.33 1.50 1.00 since data collection is still getting on and incomplete due to
limited assignment time.
6.5% 4.6% 3.1% 3.4% 2.3% Decidedly, we choose eMM to adapt the process of
Evaluation 1.67 2.67 0.67 1.00 1.00 development for Thailand’s universities in order to learn how
3.8% 6.1% 1.5% 2.3% 2.3% advanced they presently are prior to pushing them to higher
level. Lastly, in the analyst’s humble opinion, this model
Organisation 3.00 2.22 1.89 1.11 1.00 will be bettered for universal acceptance and, conclusively,
6.9% 5.1% 4.3% 2.6% 2.3% will benefit all Thai universities in their future developments.
TOTAL 13.60 12.03 6.96 5.75 5.14 43.49 ACKNOWLEDGMENT
Avarage 2.72 2.41 1.39 1.15 1.03
Our sincere thankfulness to my adviser and instructors
for their support in conducting this research and my deepest
appreciation to Graduate School, Sripatum University.

REFERENCES
[1] K., Tawsopa , M. Kittima, “An Evaluationof Open Source E-Learning
Systems incorporated with OSMM,” Proceedings of the 6th
International Conference on e-Business 2007 (INCEB2007).
[2] S. Supanee, R. Arnut, “The Strategic Move to Higher Education
Reform,” APRU DLI2006, http://www.cmsthailand.com/
[3] S. Marshall, G. Mitchell, “Applying SPICE to e-learning: an e-
learning maturity model?,” In Proceedings of the 6th conference on
Australasian computing education, Vol. 30,pp. 185-191. Dunedin,
New Zealand: Australian Computer Society, Inc.
[4] J. Petch, G. Calverley, H. Dexter, & T. Cappelli, “Piloting a Process
Maturity Model as an e-Learning Benchmarking Method,” In
Figure 5. Colored Maturity Diagnose based on eMM Proceedings of the 5th European Conference on e-Learning (ECEL
2006). Academic Conferences Limited.
Table 2, Sample data for Figure 5. gives a better vision [5] C. Lutteroth, A. Luxton-Reilly, G. Dobbie, & J. Hamer, “A maturity
by means of circular diagrams in various colours, which are model for computing education,” In Proceedings of the ninth
Australasian conference on Computing education, Vol. 66,pp. 107-
created from percentage calculation. 114. Ballarat, Victoria, Australia: Australian Computer Society, Inc.
[6] B. Moazzam, B. Sidra, M. Manzil, “A Maturity Model for Quality
2) Development : Upon completing the 1) Diagnosis, now Improvement in Higher Education (ICMHK2006).
we come to focus on the Deficiency of Process that is visible [7] E. Thompson, & E. Thompson, “Using a subject area model as a
from the graph in Figure 5 (Coloured Maturity Diagnosis learning improvement model,” In Proceedings of the 8th Austalian
based on eMM). It enables us to realize which terms should conference on Computing education, Vol. 52, pp. 197-203. Australian
be bettered in order to achieve 3) Delivery : As seen from Computer Society, Inc. Darlinghurst, Australia, Australia.Albeanu
the graph, the group of smaller circles are situated mostly on [8] A. Grigore, “E-Learning metrics. UNESCO Chair in Information
Technologies at University of Oradea,” The 2nd International
the below-left. It reflects the inefficient state of Process, no Conference on Virtual Learning. ICVL 2007, University Street No.1,
doubt. So, it is vital for the prioritization of Process. That 410087, ROMANIA.
is to say the development should be performed in the sequent [9] L. Donovan, “Implementing E-Learning. In George M. Piskurich
manner by starting from the smallest circle first. Once it (Ed.),” The AMA Handbook Of E-learning: Effective Design,
becomes larger and can be moved adjacently to the upper- Implementation, And Technology Solutions, pp. 317-323. New York
right of graph, it means efficiency of that Process now stays : AMACOM/American Management Association.
at the satisfactory level of high stability. [10] H. Watts, “An IT Metrics and Productivity Journal Special Edition,”
Copyright©2006 Computer Aid, Inc.

360
2009 International Conference on Computer Engineering and Technology

Research on Automobile Driving State Real-time Monitoring System Based on


ARM

Hongjiang He Yamin Zhang


Department of Information &Electronic Engineering Department of Information &Electronic Engineering
Hebei University of Engineering Hebei University of Engineering
Handan, Hebei province, China Handan, Hebei province, China
E-mail: zhangyaminhb@sina.com E-mail: zhangyaminhb@sina.com

Abstract—Research on Automobile Driving State Real-time However, the traditional vehicle driving data record can
Monitoring System is introduced in this paper, which takes only display and store the driving state parameters, it can’t
S3C2410(ARM920T)microprocessor as the core and takes analyze the parameters. This system adds the fault diagnosis
Linux as the operating system. This system adds the fault expert system on the base of the traditional vehicle traveling
diagnosis expert system to the traditional automotive driving data record. By comparing the automobile driving
state monitoring system, which is only storing and displaying parameters with the normal parameters which stored in the
the driving state parameters on the base of the real-time automotive normal driving state parameters library, the fault
monitoring for the automobile driving state. Employing the diagnosis expert system can give the driver some rational
control method of the communication between the embedded recommendations, which makes this system more humane.
system and CAN field bus; the proposed system can efficiently
collect the status data related to the security performance of II. HARDWARE STRUCTURE
the automobile and integrate them. Fault diagnosis expert
system is implemented for real time monitoring and This system takes the popular 32-bit embedded system
diagnosing. It can also give some reasonable suggestions to the nowadays and takes the microprocessor produced by
driver by comparing and analyzing the collected data, which Samsung Company. The microprocessor mainly includes an
makes this system more humane. The information can be S3C2410 chip based on ARM920T core and the
displayed and the audio alert can be sounded through a corresponding external interface circuit. The system mainly
human-machine interface. This system has a good prospect in includes modules such as data acquisition, data storage, fault
the field of automotive electronics. diagnosis, CAN communication, data output, human-
machine interface and audio alert and so on. The workflow
Keywords-ARM;Linux opeating system;real-time of the system is as follows: firstly the data acquisition
monitoring; fault diagnosis expert system;Controller Area module achieves the collection of the data and then deals
Network(CAN) with it briefly; secondly the processed data will be sent to the
main control module, where the data will be analyzed and
I. INTRODUCTION diagnosed; finally the fault diagnosis expert system analyzes
The sharp development of modern transport brings in a the data and then gives some correspondent sound alarms
great facility to people as well as increases the radio of traffic and rational suggestions. The communication between the
accidents. Vehicle traveling data record (which is also called data acquisition module and the main control module is
automobile block box) can accurately record the state achieved by the CAN bus. The overall system hardware
parameters of the automotive traveling process so it has been structure is shown in Fig. 1.
widely used in many countries and areas. Statistics shows A. Data Acquisition Module
that using the vehicle traveling data recorder can succeed in
reducing the radio of traffic accident by 37 to 52 percent. The data acquisition module mainly consists of input
The using of vehicle traveling data record has been certified channel, I/O ports, counter and A/D converter. As an
to receive good results. It manifests in two aspects. On one intelligent CAN node, the function of the data acquisition
hand it effectively restraint violations such as fatigue driving module is to collect the state signal which has a great
and speeding; on the other hand it can improve the drivers’ influence to the vehicle safety travel. And then the signal
sense of responsibilities. At the same time the data recorded will be converted and processed. At last the processed signal
by the vehicle traveling data record can offer a real, effective will be transferred to the main control processing unit for the
and scientific legal basis for the analysis of traffic accidents. further processing by the CAN field bus. All the signals
The national standards of vehicle traveling data record in our collected are based on existing on-board sensors. The
country was officially launched in September 1, 2003, which structure of one of the signal collection units is shown in Fig.
presented that the vehicle traveling data record has entered a 2.
practical stage in our country[1].

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 361


DOI 10.1109/ICCET.2009.162
K9F1208 the SRAM; for another thing it also has the ability to store
the data after the power down, which is the characters of
both of the Flash and the EEPROM. Further more some
K9F1208 multifunctional FRAM has the power capability. So the
FRAM is very suitable for this system. It will not only
FRAM simplify the system’s circuit and lower the cost, but also can
enhance the reliability of the system.
Peripheral The character of the driving state data is large volume
and slow refresh. This system refresh every 20 seconds, so
the system should record the average real-time data in the
mentioned above. It should contain the record volume 360
Keyboard USB and RS232 hours at least, and record the date as the style of year, month
CPU interface
and day, and record the time as the style of hour, minute and
S3C2410
second. This system uses 2 pieces of K9F1208 flash memory
LCD produced by Samsung as storage device. One is used for the
XF-4240
storage of driving state; the other is used for program
storage.
CAN interface
C. CAN Communication Module
Firstly CAN was designed for automobile inspection and
control system by BOACH automotive company, Germany
[2]. The structure of CAN Bus Interface is shown in Fig. 3.
The system bus controller uses SJA1000 produced by
Intelligent Intelligent Intelligent Philips semiconductor. It is an independent CAN controller,
unit of signal unit of signal … unit of signal which is mainly used for zone network control of moving
collection collection collection
target and general industrial environment. 82C250, the CAN
bus driver, is the interface between CAN controller and
physical bus. It was designed for automotive high speed
Speed Oil … Brake application firstly. It can implement the function of
Pressure
differential sending and receiving.
Figure 1. Hardware structure
D. Data Output Module
The signals collected can be classified three kinds: In order to implement the function of detection and
analog quantity, switching value, instantaneous quantity. The discrimination after the traffic accident, the system should be
collection of the analog quantity, such as water temperature, able to output the data stored in memory into the peripherals,
oil temperature, fuel capacity, oil pressure and engine speed such as: the police’s hand-hold PDA, PC or printer.
and so on, is very difficult. The switching value mainly According to the national standard, this system provides both
includes brake, headlights, left-turn light, right-turn light, standard USB and RS232CD interface, so it can implement
backup light, high beam, low beam, ignition, front door, the final output.
back door, brake pressure and hand braking. All the
switching values are isolated by the optical coupling E. Human Machine Interface Module
isolation. The instantaneous quantity includes speed and The system set an LCD to display the driving parameters,
mileage. such as instantaneous speed, high speed in 1minute, high
speed in 10 minute, time, date and total driving mileage. The
B. Data Storage Module real-time collected data is sent to memory at the same time is
According to the standards of national institute, the data
stored in the vehicle traveling data recorder should contain Sensor Data
two parts: one is the automotive real-time data, which refers storage
to the data within 20 seconds before and after the traffic
accident, the other is the automotive historical data, which
contains the automobile and driver’s traveling state in 360 Signal CAN
hours. The automotive real-time data storage has a strict conditioning interface
requirement to the memory. Regarding to the automotive
high real-time, the memory should satisfy not only the high
reliability and speed, but also can store the data without of Digital signal
AD
losing after the power down and can be rewrite for many processor
conversion
times. Because of this, this system chooses the FRAM for
the data storage module. There are some reasons for this. For
one thing the FRAM has the high speed and rewrite times of Figure 2. Signal collection unit

362
A. Fault Diagnosis Module
S3C2410
The vehicle fault diagnosis expert system is referred to an
intelligent method which applies the artificial intelligence
technology to simulate the humane thinking process of
SJA1000 82C250 solving the problem so as to diagnosis the automotive fault
[4]. The traditional vehicle fault diagnosis expert system has
Figure 3. CAN Bus Interface some kinds of knowledge representation as follows:
1) Production: Production which is also called rule-
showed on LCD screen, which is refreshed every
based representation is the most commonly used method of
0.5Seconds. In order to view the different contents and input
the driver’s correspondent information, the system set some knowledge representation in artificial intelligence. It is the
key-press. They are menu, up key, down key, right key, left procedural knowledge-centric, and is usually used to
key, enter key, cancel key. express the cause-and-effect relationship of the knowledge.
It has a natural, clear character.
F. Sound Alarm Module 2) Semantic network: Semantic network is a network
The system uses XF-4240 speech synthesis module used concept and semantic relation to express knowledge.
developed by kedaxunfei to realize sound alarm. The module Semantic network can concatenate all kind of things
has the function of text-to-speech. The Encoding supports together organically. It can clearly describe the semantic
GB2312 、 GBK 、 BIG5 and Unicode. Communication relation among the things. At the same time it put emphasis
supports UART, SPI and I2C [3]. The system uses GB2312 on the expression of semantic relation between the
encoding and receives the processor’s sending data by I2C so knowledge. It conforms to the process of human associative
it can implement the sound alarm suggestion for the speed
thinking and has the characters of information sharing and
and fatigue driving.
natural expression. However, this knowledge representation
III. SOFTWARE STRUCTURE method can’t express the deep-seated judgment knowledge
The software design chooses Linux as operating system very well.
because Linux has such advantages as open source code, 3) Frame-based: Frame-based is a data structure which
cutting conveniently and convenient transplantation. The represents the qualitative state. It can represent the structure
development tool chooses VC++6.0. relationship between the knowledge. But the frame-based
The function of main modules is as follows: isn’t suitable for the representation of the procedural
• Module of CAN communication: finishing the basic knowledge.
communication protocol and data sending. The basic structure of the expert system consists of six
• Module of real-time monitoring: comparing the parts, such as human-machine interface, knowledge base,
current automotive driving parameters with the inference engine, interpreter, global database and knowledge
standard parameters of normal working state. acquisition. The structure is shown in Fig. 4.
According to the content of the discrimination of the The expert system used in this system compare the
data it can give correspondent monitoring and collected data during the automobile driving with the
alarming. It is the preliminary diagnosis of the Knowledge
running state, which has a strong real-time fault engineer User
handling.
• Module fault diagnosis: on the basis of real-time
monitoring module, according to the expert system
method, this module can make a further diagnosis Human-computer
for the driving state. And then it can make an early interface
warning for the possible fault or the diagnosis for the
current fault so that it can give some reasonable Professional Information of
suggestions. knowledge why, how
• Database of monitoring data: storing the driving data
sent by CAN communication module. The data is
collected by the intelligent signal collecting unit and
Knowledge Interference Interpreter
is used for the real-time monitoring and fault acquisition engine
diagnosis module.
• Module of sound alarm: making an early warning for
the driver by sound alarm, LCD and image. It can
help the driver deal with the problem in time. Knowledgeb Global
• Module of human-machine interface: processing ase database
user’s key-press and demonstrating the driving state
and fault. Figure 4. Structure of expert system

363
automotive normal driving parameters stored in the libraries. the keyboard to choose the correspondent operations. When
By the comprehensive comparing and analyzing the data using RS232 for communication, the control of data
mentioned above, the system can give the driver appropriate transmission is completed by PC. Some of the strong real-
predictive failure and diagnostic output. Therefore the time works such as time calibration are completed by PC.
system adopts the rule-based reasoning approach which has a The work flow of the system is as follows:
directly presentation, unified style, easily understood and • Initialization and self-checking after the power up.
convenient interpreted. The system structure is shown in Fig. • Authentication for the driver or administrator.
5. • LCD display interface.
As the fault diagnosis of the automotive driving is a • Determine whether the vehicle is driving or not
fuzzy knowledge and doesn’t have a strict definition or an according to the pulse of speed sensor and then run
accurate mathematical analysis, so in the system design we into the correspondent mode.
adopt a production rule to express the expert knowledge [5]. • Collecting, analyzing, storing and displaying all the
The general expression of the rule is as follows: IF P THEN signals when the vehicle is driving, locking the keys
Q, P (also called antecedent) presents the precise of the and shielding all of the communication interfaces at
production rule, it gives a precondition whether the the same time; if the vehicle is stopping the system
production rule will be used or not; Q (also called unlock the keys and open the communication
consequent) is a group of conclusions or operations, it gives interfaces.
the correspondent conclusion or action which should be • Determining whether the driver is speeding or
executed when P is true. fatigue driving according to the driving speed and
Comparing the current automotive driving state time and give correspondent suggestions of sound
parameters with the data stored in the normal driving state alarm.
parameters library, the fault diagnosis expert system can give
• The expert system analyzes and compares all the
predictive failure and fault diagnosis output. It will help the
automotive driving parameters with the normal
driver aware whether all the automotive parameters are
parameters and then gives some reasonable
normal or not. It plays a good guide for the vehicle
suggestions.
maintenance and safe driving.
The system has two modes: recording mode and
communication mode. The recording mode is when the ACKNOWLEDGMENT
vehicle is running the system periodically collects all the
states and the driving information of the current driver, such The system is an embedded system which takes S3C2410
as speed, driving time, time of fatigue driving, record of microprocessor as the core and takes Linux as the system.
speeding, stopping time and so on. It also provides sound The system realizes LCD display for the parameters of
alarm for the fatigue driving and speeding and presents the vehicle driving state by the multi-sensor monitoring for the
date, time and speed. And then it stores the collected data vehicle driving state. Further more it adds predictive failure
and parameters of date and time to the data memory. The and diagnosis system to the traditional system. It can give
communication mode is when the vehicle is stopping the some reasonable suggestions to the driver by comparing the
system exchanges the data through the communication parameters to the normal parameters. So the system is more
interface and PC. The data can be uploaded or downloaded. humane. The system has a small volume, complete function,
When using USB for communication, the system provides high reliability, high performance-price ratio character and is
very suitable for on-board. It also can improve the reliability
Oil Water Fuel
… Brake
of the vehicle drives safety. Therefore it has a good
pressure temperature consumption
application prospect.

Data fusion program of multi-sensor


REFERENCES
[1] Shaoyong Ruan, Jiadong Zhang and Kai Huo, “The design of Vehicle
Data incidence matrix Traveling Data Record Based on ARM”, Journal, Machinery &
Electron, No 4, 2006, pp. 50.
Automotive
Fault normal [2] Yuntao Rao, Jijun Zou, and Yongyun Zheng, Theory and Technology
diagnosis driving Application of CAN field bus, Buaapress, Beijing, June.2003.
Inference engine
expert parameters [3] Kedaxunfei, XF-S4240 voice synthesis module data manual,
library Kedaxunfei Information Technology Co., Ltd., Anhui china, 2006.
[4] Lili Zhang, Jiangwei Chu, Tiangang Qiang, and Daming Han, “Key
Fault early Interpreter technologies study and development for automobile fault diagnosis
warning Diagnostic expert system”, Journal, Application Research of Computers, Vol 25,
output No.6, June.2008, pp. 1634
[5] Shuzi yang, Knowledge based diagnosis reasoning, Tsinghua
Figure 5. Structure of predictive failure and diagnositic output University Press, Beijing, December.1993.

364
2009 International Conference on Computer Engineering and Technology

Information Security Risk Assessment & Pointed Reporting: Scalable Approach

D.S. Bhilare Dr. A.K. Ramani Dr. Sanjay Tanwani


School of computer science School of computer science School of computer science
Devi Ahilya University Devi Ahilya University Devi Ahilya University
Indore, India Indore, India Indore, India
e-mail: bhilare@hotmail.com e-mail: ramaniak@yahoo.com sanjay_tanwani@hotmail.com

Abstract-Network Managers of Higher Educational challenges in Information Security Management. Many


Institutes, are well aware of general Information Security institutions, invest in security technologies, policy
issues, related to Campus Networks. There are well documents, staff training, but often find no correlation
developed security metrics, giving exhaustive list of security between increased spending on such initiatives and a
controls, required to mitigate different risks. Accordingly,
various security measures and technologies are being
better overall security record [1].
deployed. However, at present, not enough attention is being There are number of incidences which shows the
paid on measuring the effectiveness of these controls and potential for manipulating and exploiting technologies
overall state of security in the institution. In this study, commonly utilized by universities and colleges today [2].
attempt is made to build a metric based assessment and In this paper, information security assessment plan is
reporting plan, specific to the needs of an academic proposed, keeping in view the expectations of academic
environment. Proposed assessment metric facilitates institutions & relevant regulatory requirements. Basic
iterative implementation, by prioritizing each metric.
objective of this plan is not only to provide a checklist of
Secondly, to reduce response time, a novel approach of
pointed reporting is suggested, where responsibilities are security metric but to provide an inbuilt evaluation &
distributed across the institution, based on relevant roles. In role-based response system. Proposed metric, addresses
this approach, security exceptions are reported directly to specific requirements of three levels of institutions,
the predefined roles, responsible for that particular security namely small, medium and large. This approach facilitates
control. This pointed reporting, delivers message to the right Iterative implementation, and serves as a starting point for
person in minimum time, resulting in improved response small institutions, for protecting their valuable
time. The proposed assessment metric and pointed information assets. Another important issue addressed in
reporting structure, will improve overall security
this paper is exception reporting. Exceptions found during
governance. As security measures and practices can be
assessed systematically and remedial actions can be taken in
assessment & continuous network monitoring, are
less time, which is so crucial for effective security reported directly to the linked role as specified in the
governance. proposed metric, by an e-mail or SMS alerts. Each metric
is associated with a role and corresponding
Keywords- information security; security assessment; responsibilities. This reporting system should reduce
pointed reporting; distributed defense; iterative response time required for taking remedial action.
implementation. The rest of this paper is organized as follows. In
section II, related works are shown. Section III.A,
I. INTRODUCTION identifies various roles necessary to implement proposed
Today’s Campus Networks are complex grouping of assessment plan and their key responsibilities. In section
technology (including hardware, software, and firmware), III.B, proposed assessment plan and reporting system is
processes, students, faculty and staff, all working together described. Section III.C, describes assessment, reporting
to provide institutions with the capability to process, process and possible applications of outcome of
store, and transmit information on a timely basis to assessment. Finally in section IV, conclusion along with
support various academic and administrative functions. future work is presented.
It is well known that you cannot mange some thing
which can not be measured. Therefore, in order to II. RELATED WORK
improve the security levels it is necessary that we
understand the strength and weakness of the practices Saydjari [4] has given pros and cons of considering
being followed. Though, Information Security is an risk as a base metric. One good property of risk as a
emerging area but there are enough solutions and products security metric is that it directly addresses possible threats
available which are being deployed at various levels. and damages. One shortcoming is that the metric doesn’t
There are Information Security practices and policies in explain how to rectify threats.
place for quite some now. But measuring of effectiveness Policy-Based metrics look at quantities like number
of these products and practices is one of the major of unauthorized login attempts, files accesses, and so on.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 365


DOI 10.1109/ICCET.2009.218
These metrics may end up measuring the inadequacy of centralized structure is more suitable, but for effective
user training more than it measures actual system security. exception handling and quick reaction, traditional
Incident-Based metrics look at the actual successful hierarchical system does not serve the purpose. Therefore,
attacks that occur, the frequency and the real damages. a role-based direct reporting system is proposed, where
None of the approaches mentioned above provide exceptions needing immediate attention are conveyed to
inbuilt role-based assessment mechanism and exception the right person in minimum possible time. Time taken to
handling, neither considers issues pertaining to small respond a particular event is very critical, particularly in
academic institutions having limited resources. Most of Information Security Management. Secondly, as
the approaches provide a generalized list of metric institutions are answerable and responsible for
without defining associate roles and responsibilities. NIST compliance with existing laws, it is crucial that
publications[6] provide a broad categorization of roles. responsibilities and accountabilities are clearly defined.
Secondly, there has been little consideration for academic Therefore, a formal organizational structure, having clear
environment, as generally focus is on industry. identification of relevant roles, and their respective
responsibilities & accountabilities is suggested. In view of
III. INFORMATION SECURITY RISK ASSESSMENT the complexity and requirements of this new discipline,
AND POINTED REPORTING there is a need for new roles in addition to the existing
In order to propose a robust and flexible assessment ones. Accordingly, new roles are suggested and their key
metric, it is essential that we understand necessary responsibilities, specific to the needs of Indian
measures required in general to protect institutional universities are described as under.
information assets. These measures are needed to I. Vice-Chancellor/Executive-Council
accomplish institutional objectives, protect information Executive-Council comprises prominent persons
assets, fulfill legal responsibilities, and protect interest of from society & academics, in addition to governor
various stake holders. Indian IT Act 2000, amended on nominees.
October 16, 2006 describes legal obligations of the Key Responsibilities: a)Responsible for the overall
institutions [9]. information security of the University; b)Manages
Proposed metric facilitates iterative implementation strategic, operational and financial risks; c)Promotes and
and pointed reporting. Proposed plan can be implemented supports information security initiatives as part of the risk
on iterative basis, as security culture and awareness management; d)Establishes that Risk reporting, controls
matures in the institution. This will assist small and and review functions are in place; e)Ensures the
medium sized institutions particularly, in assessing their University systems comply with applicable law,
existing security plans and assuring an acceptable level of regulations and ethics; Approves necessary budgets
security to begin with. This will also improve exception II. Information Security Task Force
handling, as messages are delivered immediately and This body comprises University senior
directly to the associated role. This effective Academic, Administrative and IT representatives, who
communication process, where information is sent to right will co-ordinate the management and implementation of
person in time, will reduce time taken in planning and information security measures.
implementation of remedial action. This will improve Key Responsibilities: a)Supports the Director IT services
overall security management, as assessment outcomes are & Chief Information Security Officer in ISA initiatives;
acted upon quickly. b)Approves methodologies and processes for information
Another contribution is creation of new roles which security; c)Co-ordinates the implementation of specific
were non existent in the traditional IT setup earlier and information security measures for new systems or
association of existing and new roles with each metric. services.
These new roles are necessary to manage this complex III. Deans & Head of Departments
and developing discipline. Key responsibilities and Key Responsibilities: a) Monitor and report to the VC
accountabilities of these new roles are also defined and on compliance with mandatory information security
data base of their e-mail addresses and mobile numbers is policies within their faculty/department; b)Take
maintained. As every metric is associated with a unique appropriate disciplinary actions relating to users who
role, there is no conflict among roles and no time is breach IT security policies; c)Make proposals for
wasted in taking actions. These provisions will help in necessary funding to meet information security
assuring a more secure environment with effective commitments; d)Develop and implement additional
implementation and monitoring. security policies specific to their faculty/department, in
coordination with the Chief Information Security
A. Identification of Roles and their Job description Officer(CISO); e)Make business continuity plan in
In order to implement an efficient and effective coordination with Director IT and CISO.
information security plan, a suitable organization structure IV. Registrar (Head of Administration, Finance,
is essential. For a normal routine management, a Development, Establishment etc.)

366
Key Responsibilities: a)Accountable to the VC regarding procedures, guidelines and standards; e.g. hardened server
information security risk management; b)Ensures configurations;
information security risks are managed to an acceptable X. External Consulting Agencies
level; c)Responsible for legal aspects and acts as an Key Responsibilities: a)Ensure proper information
interface with external world. security management; b)Ensure that all tools used or
V. Legal Advisor deployed are certified or follow mutually agreed
Key Responsibilities:a)Advises VC/Registrar about standards; c)Take responsibility of proper conduct of their
applicable laws, regulations; b)Ensures that all third party employees;
contract documents include appropriate provisions with XI. User (Faculty, Staff and Student)
respect to information security; c)Understands various Comply with University security policies as published on
international cyber laws and its implications. the University web site.
VI. Application Owners In addition to above, new roles may be created,
The application Owner is the University Employee depending upon changes in technical or managerial skill
responsible for the particular application. For example, requirements. This distribution of responsibilities has dual
the Deputy Registrar (Exam.) is owner of the result advantage: as institutions are answerable and responsible
processing application. for any violations of prevailing laws, structure proposed
Key Responsibilities: a)Accountable for protecting the above will pinpoint non performing roles. Second
information assets within the systems they own; advantage will be swift communication of messages to the
b)Develop access policies for systems they own; c)Ensure right person in less time so that overall reaction time is
new applications comply with security policies; d)Notify
reduced. Thus, non ambiguous roles and responsibilities
all system security issues to the Chief Information
will help in effective implementation of the information
Security Officer.
security plans. After identifying and describing required
VII. Director Information Technology Services
roles & responsibilities, now assessment metric necessary
The director reports to the Vice-Chancellor and is
responsible for the provision of enterprise information to measure effectiveness of security controls and
services to the University, including; the management of practices, along with associated roles and level is
the University’s networks and related IT Services. proposed in the following section.
Key Responsibilities: a)Ensures information security is B. Proposed Assessment Metric
addressed as part of all IT projects; b)Maintains an up-to-
While proposing the metric, efforts are made to
date record of major information security risks;
ensure that the metric: a) Enables consistent, comparable,
c)Develops Information Security Policies, Guidelines,
Processes and Standards; d)Ensures infrastructure, and repeatable assessments of security controls; b)
systems and applications implemented & maintained; Facilitates cost-effective assessments of effectiveness of
e)Coordinate with ISTF & CISO. security controls; c)Promotes a better understanding of the
VII. Chief Information Security Officer risks to organizational operations, organizational assets,
Key Responsibilities: a)Collaborates and liaises with all individuals, and other organizations; d)Generates
information security stakeholders; b)Formally assesses comprehensive and reliable information to support
information security related risk & develops mitigation security assurance decisions.
plan; c)Develops information security policies; Proposed metric covers various issues pertinent to
d)Coordinates security awareness initiatives. University Environment, identified on the basis of policy
VIII. Information Security Officer documents of various universities [10,11,13].
A technical expert assists the CISO and other users in Implementation of the full set of metric described
technical matters. below may not be practical for even large institutions.
Key Responsibilities: a)Oversees monitoring to detect Therefore, an incremental approach is proposed, where
breaches of security related policies; b)Manages the institutions may begin with a base set of metric which is
response to any security incidents; c)Maintains subset of full metric. Over the period, as institutions
professional relationships with international security mature and get more resources, full set of metric may be
bodies; d)Develops or customizes in house security implemented.
solutions; Monitors online resources and provides Based on the guidelines published by various
appropriate e)security consultancy; standards agencies NIST ( 800-53)[7], ISO 17799, Policy
IX. Network Administrators and IT Staff documents of various universities[10,11], Indian IT Act
Key Responsibilities: a)Prepare procedures that 2000 [9], UGC/AICTE guidelines and the requirements of
implement the IS security policies in their local academic environment as discussed above, the following
environment; b)Maintain administrative accounts; metric is proposed in Table I. There are three columns in
c)Applying all relevant security patches; d)Develop the table namely role, indicator and control. Control
column, describes security measures to be assessed. Role

367
column, describes roles responsible for a metric. Each ISTF: Information Security Task Force
metric is associated with a unique role, so that there are REG: Registrar, LA: Legal Advisor
no ambiguities, and plans are implemented smoothly. In DN: Deans & Head of Departments
order to assist start up institutions or institutions in early DSW: Dean Student Welfare
phase of Information Security implementation, level of AO: Application Owners
metric is shown in the indicator column. Base line metrics DIT: Director Information Technology Services
which should be implemented in the first phase are CISO: Chief Information Security Officer
indicated by “S”. Medium sized institutions may use ISO: Information Security Officer
additional metrics indicated by “M”. NA: Network Administrators and IT Staff
Indicator Column:
D. Coding structure used in the metric S: Indicates base metric, Starting Point
Role Column: M: Applicable to Medium sized University/College
VC: Vice-Chancellor/Executive-Council L: Applicable to Large Universities

Table I: Role Based Information Security Metric


Sno Role Indi- Control
cator
1. VC M Number of institutional functions, Number of functions for which protection is planned
2. VC L Estimated financial loss from security incidents
3. VC M Percentage of service down time due to security incident
4. VC S Number of key information assets, Number of assets for which protection is planned
5. VC S Number of external compliance/legal requirements, How many of them have been addressed?
6. VC Number of departments
S
Number of departments having business continuity plan
7. CISO Percentage of users whose access privileges have been reviewed during this reporting period
M
(Application users, Application owners, Retired/Terminated/Suspended employees)
8. CISO L Number of known security risks that are related to third party relationship
9. CISO S Preparation of management report with target values for chosen metric
10. CISO S Percentage of systems and applications that perform password policy verification
11. CISO S Percentage of systems where vendor-supplied accounts and passwords have been changed
12. CISO S Percentage of computer where configuration changes are done as per policy
13. CISO S Percentage of system where event and activity logs are: a)maintained b)monitored
14. CISO S Percentage of system for which log size and retention period have been specified
15. CISO S Percentage of system with a)firewall b)IDS/IPS c)malicious code protection
16. DIT L Percentage of remote users who access network using secure communication methods
17. DIT M Percentage of new users, undergone basic security training before using network
18. DIT M Percentage of users who completed periodic refresher training as required by policy
19. DIT M Mean time from vendor patch availability to patch installation
20. DIT L Percentage of software changes that were reviewed for security impacts
21. DIT M Percentage of backup media stored offsite in secure storage
22. DIT S Percentage of systems for which approved configuration setting have been implemented as per policy
23. DIT S Percentage of systems that are being monitored for configuration policy compliance
24. DIT S Percentage of computers whose configuration is compared with a trusted baseline
25. DIT S Percentage of systems with critical assets where restoration from a stored backup has been tested
26. DIT S Percentage of used backup media sanitized prior to reuse or disposal
27. DN S No. of department wise security breaches by the students & no. of cases where action has been taken
28. DN S Percentage of equipment, which are protected from power failures
29. DSW L Percentage of foreign students for whom background check is carried out
30. DSW Number of incidents where students transmitted obscene material to colleagues
S
Number of incidents reported to proctorial board
31. DSW M Number of social engineering incidences resulted in financial loss to students
32. ISO S Percentage of systems with account blocking parameters are set as per policy
33. ISO S Percentage of systems with automatic timeout is set as per policy
34. ISO S Percentage of systems where permission to install non-standard software is limited

368
35. ISTF L Percentage of performance reviews that include IS related issues
36. ISTF L Percentage of critical information assets stored in encrypted form
37. ISTF M Percentage of Security roles for which responsibilities, and authority are assigned
38. ISTF L Total number of meetings where IS was on the agenda
39. ISTF M Percentage of staff assigned responsibilities from IS policies and controls
40. ISTF M Percentage of IS policy compliances reviews with no violations
41. ISTF M Percentage of critical assets & functions for which cost of compromise has been quantified
42. ISTF M Percentage of third-party agreements that have been reviewed for IS requirement compliance
43. ISTF M Percentage of systems with critical assets that use stronger authentication than user-id and password
44. ISTF S Percentage of systems & applications where user privileges are role-based
45. ISTF M Percentage of mobile devices that are examined before granting network access & use encryption
46. ISTF M Percentage of passwords and PINS that are encrypted in accordance with policy
47. ISTF M Number of hacking attempts from university domain reported
48. ISTF S Periodic comparative review of various critical IS metric
49. ISTF S Percentage of systems where configuration do not deviate from approved standards
50. ISTF S Percentage of systems with critical information assets have been backed up
51. ISTF S Percentage of security incidents that were managed in per established policies & procedures
52. ISTF M Percentage of vulnerability assessment findings that have been addressed since last reporting period
53. REG L Number of total incidents, Number of incidents that did not cause damage beyond limit
54. REG L Percentage of third party agreements where Information Security is part of the agreement
55. REG L Percentage of users who have undergone background checks
56. REG M Number of required internal/external audits, Number of required internal/external audits completed
57. REG M Number of audit findings, Number of audit finding resolved
58. REG M Number of employees handling confidential information & signed non-disclosure agreement
59. REG M Percentage of department heads who have ensured compliance with IS policy and controls
60. REG M Number of identified risks, Number of risks having mitigation plan
61. REG M Percentage of information assets that have been classified as per policy
62. REG S Percentage of departments with business continuity plan
63. REG M Percentage of continuity plans that have been reviewed, tested and updated
64. REG S Percentage of critical assets that have been reviewed for physical risks & mitigation is planned
65. REG S Percentage of critical assets, reviewed for environmental risks such as fire, flood, earthquake etc
66. REG S Percentage of sections, where information processing services are protected physically.
67. REG M Percentage of host servers that are protected from becoming relay hosts

The metric proposed above can be implemented in a • Threshold values for the assessment metric, which
phased manner, iteratively. Initial round of assessment will are arrived at, on the basis of level of security desired
give an idea of present state of security, in the institution by the institution,
and areas where more attention is required. Accordingly, • Out come of the online network monitoring &
risk mitigation strategies can be planned and analysis,
implemented. This cycle may be repeated, till full metric • Role database with e-mail addresses and mobile
implementation is achieved. This process would also lead numbers, required for sending exception alerts.
to enhancement in the proposed metric. Whenever, threshold values are violated for a particular
C. Assessment and reporting metric, or an online network monitoring software detects,
some suspicious activity, an exception condition occurs.
Figure 1, gives an overview of the assessment and
This exception triggers a search in the data base for
reporting procedure. Assessment of present security
getting the associated role & contact information for that
measures is carried out using proposed assessment metric
particular exception. After getting required information
and various other inputs described as under:
message is sent by an SMS or e-mail. Based on the
• Applicable Laws, Information Security Policy and
information and situation analysis, remedial action is
Mission statement are considered, while adapting
planned and implemented.
proposed metric by any institution,
• Third party product reviews, which are available
publicly for the products being used,

369
Figure 1: Information Security Risk Assessment and Pointed Reporting

Info. Security Role Database Mission Applicable


Policy with e-mail and Statement Laws
Third party mobile no.
Product
evaluation

Threshold
Values for Online Network
Metrics Monitoring
I

Metric Based Implementation


Assessment

Analysis
Remedial plan

Exceptio Role-Based
n? SMS/e-mail

Routine Reports

The outcome of above assessments can be used to: a)


Identify potential problems or shortcomings of present REFERENCES
measures; b) Prioritize risk management plans; c) 1. Berinato, S., “The state of information security 2003”,
Confirm that problems identified earlier are addressed; d) CIO Magazine 17, 2 (Oct. 15, 2003).
Justify budgetary provisions. 2. M. Peter Adler, “Uniform approach to information
security compliance”, EDUCAUSE Review, pp46–61,
IV. DISCUSSION & CONCLUSION vol. 41, no. 5 (September/October 2006):
3. Thomas Bellocci, CERIAS Tech Report 2001-34
Proposed metric based assessment and reporting plan Information Assurance in Networked Enterprises, No.
has been designed as per the specific needs of an 01-05 Purdue University West Lafayette, IN 47907
academic environment. Additional roles are created and 4. O. Sami Saydjari, QoP’06, October 30, 2006,
their key responsibilities & accountabilities are defined, Alexandria, USA. ACM 1-59593-553-3/06/0010.
which is necessary to manage this complex and evolving 5. Swanson, M., Bartol, N., “Security Metrics Guide for
discipline. Each metric is associated with a predefined IT Systems”, NIST Sp. Publication 800-55, Jul., 2003.
role. As each metric is prioritized, an iterative assessment 6. National Institute of Standards and Technology,
can be planned. Secondly, exception handling is http://csrc.nist.gov/publications
7. Ron Ross, NIST SP-800-53A, Guide for assessing the
distributed across the institution, and approach of pointed security controls, December 2007
reporting is adopted. Security exceptions are reported 8. Swanson, M. Security Self-Assessment Guide for IT
directly, without wasting any time to the predefined roles Systems. NIST Spl Publication 800-26, Nov., 2001.
responsible for that particular security control. This 9. Information Technology ACT 2000,
pointed reporting helps in reducing response time, as right www.eprocurement.gov.in/news/act2000mod.pdf
person is involved and more time is available for planning 10. Washington university policy document,
and implementation. The proposed assessment metric and http://www.wustl.edu/policies, October 2006.
pointed reporting structure, will improve overall security 11. Auckland University Newzeland, Security policy and
governance. Reduction in response time is very crucial for organization http://www.auckland.ac.nz, Jan 2008
12. Mohammad Saad Saleh, Saad haj bakry, “Using ISO
effective security governance. 17799: 2005 IS Management, Stope View with six
Future work: Design of an automated process to sigma approach”, Int. Journal of network mgt, 2006.
assess vulnerability score using open data bases. Another 13. University of Houston, Information Security Manual,
issue is design of a model projecting an optimal www.uh.edu/infotech, 2008
investment plan, keeping in view the financial value of
potential tangible or intangible gains or losses.

370
2009 International Conference on Computer Engineering and Technology

An Extended Algorithm to Enhance the Performance


of the Gridbus Broker with Data Restoring Technique
Abu Awal Md. Shoeb, Altaf Hussain, Md. Abu Naser Bikas, and Md. Khalad Hasan
Department of Computer Science & Engineering
Shahjalal University of Science & Technology
Sylhet, Bangladesh
{johnshoeb, altaf_sust_82, bikasbd}@yaho.com, khalad-cse@sust.edu

Abstract—There are various types of Grids have been developed result of a failed job. In this paper we have present an
to support different types of Applications. The Gridbus broker enhanced version of Grid Service Broker scheduling on
that mainly focused on Data Grid mediates access to distributed Global Data Grids with the failed job restoration point.
resources by discovering suitable data and computational This paper is organized as follows: Section II discusses the
resources, job monitoring, accessing local or remote data sources
Related Works and Section III shortly discusses Gridbus
during job execution, collecting and presenting results. In this
Broker Architecture and the problem scope of Gridbus Broker
paper, we present an enhanced version of Grid Service Broker
scheduling on Global Data Grids with job restoration point. In
Architecture and Scheduling. Section IV elaborates our
the present version of scheduling algorithm, if any job associated proposed algorithm to counteract the problems of Gridbus
with an application becomes failed during its runtime then the Broker Scheduling. Section V illustrates the Experimental
scheduling algorithm just marked the job as failed and reset. But Result and Performance Analysis of algorithm with some
it does not keep any track of the percentage of the work has examples. We conclude in section VI.
already been done by the job. In Contrast, our proposed
enhanced algorithm utilizes a restore point to store the II. RELATED WORK
proportion of task completed by an executor. In case of failure, it
starts the job from that restored point rather than its initial As the scheduling of independent jobs on distributed
point. From the experimental result, we have found that our heterogeneous resources [2] is a well-studied problem, so here
proposed algorithm increases the performance of the present we discussing only a few major work which deal with Grid. In
scheduling algorithm. the context of Data Grid, the Storage Resource Broker (SRB)
[3] from San Diego Supercomputing Centre (SDSC) provides
Keywords- Gridbus Broker, Data Grid, Data Restoration middleware for storing datasets over a network and accessing
Technique, Data Restoration. them. Although it does not deal with applications executing
directly.
I. INTRODUCTION The Gridbus broker extends the Nimrod-G [4] computational
Grid computing is very useful in the large scientific Grid resource broker model to distributed data-oriented grids.
projects. A grate number of researcher organization and Nimrod-G specializes in parameter-sweep computation.
communities using grid computing to carry out their sheared However, the scheduling approach within Nimrod-G aims at
resource out come. However the using of the power of Grid optimizing user-supplied parameters such as deadline and
Computing remains to be a challenging problem for the users budget [5] for computational jobs only. Like Nimrod-G, the
due to the complexity involved in the creation of the AppLeS PST [6] supports deployment of parameter-sweep
application and deployment on distributed computational applications on computational grids, but its adaptive
resources. The Gridbus broker [1] is an advanced service- scheduling algorithm emphasizes on data-reuse.
oriented meta-scheduler for data Grids. It supports different Harold, Shazia, Liao, Krishna, Buyya developed a Grid
Grid middleware and services. It takes care of many functions Thread Programming Environment (GTPE) [7] for the
that Grid applications require such as resource selection, job Gridbus Broker, a software grid resource broker that provide
scheduling and management, data access to any distributed transparent access to grid services. However, it does not
Grid resources and handling faults that may occur during provide any way to save the output of thread at any point of it
execution, collecting result and presenting them. In Gridbus runtime.
broker the task commands are encapsulated within an Agent Venugopal, Buyya, Winton [1] focuses on a resource
which is dispatched to and executed on the remote machine. scheduling strategy within a Data Grid but concentrated on
On completion of execution, the Agent returns any results to adaptive scheduling algorithms and brokering for
the broker and provides debugging information. The heterogeneous resources that are shared by multiple user jobs.
Monitoring component keeps track of job status – whether the Similar to [1], our work focuses on a resource scheduling
jobs are queued, executing, finished successfully or failed. strategy within a data Grid but we concentrate on runtime
Here Gridbus broker does not keep track of the calculated thread scheduling algorithms and brokering for heterogeneous

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 371


DOI 10.1109/ICCET.2009.233
resources that are shared by multiple user jobs. However our failed during execution, the Agent does not return the output
work focuses on failed job and reusing the execution time by file (i.e. remote data) to the broker, it returns only the status of
creating restoration point. Our modified ‘File based Grid the job whether the jobs are finished successfully or failed. If a
Thread Implementation’ provides a way of saving the output job becomes failed the job is marked as failed and reset for
of a thread at any point of its life time. rescheduling without considering the job has been done so far.
We all know that, in a network or Internet based application
III. GRIDBUS BROKER OVERVIEW there is a high possibility that a GRID node can be interrupted
The Gridbus broker inputs are considered as task and the for the inconsistent nature of the network. In the existing
implementation there is no mechanism to save the percentage
parameter values associated with the task. The parameters can
of job result to be recovered when the job is failed. As the
be static or dynamic. Among the other component the Grid GRID job can be a huge one so the lost of the job can cause a
Index Information service (GIIS), gathers information from critical time factor. For example, scheduler submits a job to a
remote information services i.e. availability and the properties Grid node that is 30 minutes long. If that job is lost or failed
of compute resources. The Data Service Catalogue organizes after 27 minutes of successful execution then the scheduler will
the data files as Logical File Names (LFNs). Network weather reassign the job without using the results or data of the last 27
service (NWS) obtains the information about the current minutes. So the job will take roughly 57 (27+30) minutes
available bandwidth between the data sources and the compute rather than 30 minutes.
resources. Global Access to Secondary Storage (GASS)
obtains the inputs or parameter file form the secondary storage IV. PROPOSED SOLUTION
if required. Logical and Physical File Names (LFNs), each
LFN maps to one or many Physical File Names (PFNs) Our proposed solution, we have kept the track of running job.
somewhere on the Grid and the Job Monitor keeps track of job Suppose, the remote node is failed after 90% of the job is
status, whether the jobs are queued, executing, finished completed, then the Agent will return the output file (i.e.
successfully or failed. A task is further considered as sequence remote data) with the job status to the broker. Since the job
of commands that focuses user requirements. The task along status is failed, the job is reassigned to another remote node
with its associated parameters decomposed in to jobs. A job is with the last generated output file (i.e. last remote data) to
unit of work that is send to a Grid node. The set of jobs along restart the job from the failed point (i.e. from the 90%, not
with the set of service nodes are an input to the scheduler. For from the beginning).
jobs requiring remote data, it interacts with a NWS to obtain In our application (File Based GRID Thread Implementation),
the information about current available bandwidth between the we created a random access file associated with each thread
data sources and the compute resources. It then uses this and writing the results to that file and thus creating restoration
information to schedule jobs by optimizing on the amount of point. The file only contains the last two computed output of a
data transfer involved. thread. The file size depends on the type of application but in
In the current implementation, the jobs are dispatched to the our application we managed it to be quite small. This
remote node through the Actuator component. The Actuator generated file is stored in the Manager Node. Manager can
submits the job to the remote node using the functionality reassigns that thread to any executor node with the same
provided by the middleware running on it. The Actuator has thread ID from the thread pool. A priority for each thread can
been designed to operate with different Grid middleware be explicitly specified when it is created or submitted. Threads
frameworks and toolkits such as Globus 2.4 [9] that primarily are scheduled on a Priority and First Come First Served
runs on Unix-class machines and Alchemi [10], which is a (FCFS) basis [8], in that order. When the Manager distributes
.NET based grid computing platform for Microsoft Windows- the thread to any Executor node, the node first check if there is
enabled computers. The Gridbus broker scheduling algorithm any file is available with its own thread id. If any file is
schedules a job depending compute resources and data host available for that thread, the node then recovers the resultant
associated with a job that is to be deployed to an executor. value of that thread from the file created and starts execution
Firstly it gathers the information about the compute resources from the recovered value. If no file is found for that thread
and data hosts using GIIS and Data Service Catalogue and then the thread will start execution from the beginning and
determines the job completion rate for every compute resources also create a file in the Manager Node using Thread ID (i.e.
for its history. For a job to be deployed, identifies the data filename) as Thread ID remain same throughout the lifetime of
hosts associated with that job and for every pair of data and
an application.
compute resources, it finds the pair with earliest job completion
In the global grid environment, these generated restoration file
rate and if such a pair exist the scheduler assigns the job to that
pair. After the job has successfully finished at the remote node can be stored in the remote data host assigned with that for
(i.e. executor), its returns any results to the Broker. If any job that Grid node or can be stored in some different host
became failed, it is marked as failed and reset for rescheduling. depending on the bandwidth and cost of data transfer etc. For
the jobs requiring remote data, the scheduler interacts with the
A. Problem Scope of Gridbus Broker Architecture And
Scheduling Figure 1: Modified Adaptive scheduling algorithm for Data Grid

When a job is executed in the remote node (i.e. executor),


the Agent returns any results to the broker. If any jobs are

372
Initialization
1. Identify characteristics, configuration, capability,
or data host. This instance can be updated and can use for the
and suitability of compute resources using the Grid
selection of the restoration file host. The Gridbus broker can
information services (GIS).
resolve the restoration files by querying the Data Service
2. From the task definition, obtain the data query
Catalogue.
parameters (if present), such as the logical file
In the case of job failure, the LFNs instance can be updated
name
that map the Physical File Names of the restoration files. When
a. Resolve the data query parameter to obtain the list the scheduler reschedules that failed job for execution, the
of Logical Data Files (LDFs) from the Data Catalog. restoration file can be assigned with that job. This technique
b. For each LDF, get the data sources or Data Hosts enables the new executor can retrieve the saved file from the
that store that file by querying the Data Catalog. data host before execution and stat execution from that
Scheduling Loop successful executed point. Thus this data restoration technique
Repeat while there exists unprocessed jobs. [This step saves the execution time for a failed job, as we did not need to
is triggered for each scheduling event. The event start executing the job from the very beginning.
period is a function of job processing time,
rescheduling overhead, resource share variation, etc.]: Depending on this approach, we modified the existing
scheduling algorithm of the Grid bus broker. The modified
3. For each compute resource, predict and establish
Gridbus broker scheduling algorithm is stated in Figure: 1. We
the job consumption rate or the available resource added a new module (Module: 4) in the existing algorithm for
share through the measure and extrapolation strategy rescheduling the failed job. This algorithm gives us a way of
taking into account the time taken to process previous rescheduling the failed job so that we can utilize the saved
jobs. Use this estimate along with its current output the thread executed before being failed.
commitment to determine expected job completion
time.
V. EXPERIMENTAL RESULTS AND PERFORMANCE
4. Repeat if there exists any previously failed job
ANALYSIS
a. Select the restoration file host (data host) that
contain LDF associated with that job. Here, we have considered thread as job and implemented a
b. Repeat from 6(b) to 6(d). file based GRID thread implementation using Alchemi Toolkit
c. If there exits such a resource pair, then assign the so that we can restore the lost or failed thread result. The
job to compute resource and remove it from the details description of the file based Grid thread
Failed-Jobs-List. implementation is beyond the scope of this paper. Here we
5. If any of the compute resource has jobs that are yet have found that our modified approach gives better
to be dispatched for execution and there is variation in performance than the existing approach in almost every case.
resource availability in the Grid, then move such jobs The performance of modified approach depends on how long a
to the unassigned-Jobs-List. thread is executed before it is being failed. The much longer a
6. Repeat until all unassigned jobs are scheduled or all thread is executed before it is being failed the much better the
compute resources have reached their maximum job performance is obtained by our modified file based
limit. implementation.
a. Select the next job from the Unassigned-Jobs-List. To evaluate the performance analysis we have developed one
b. Identify all Data Hosts that contain the LDF Application program in two different approaches. One of them
associated with the job. is existing approach (where failed thread starts its execution
c. Create a Data-ComputeResource-List for the from its initial state) and another one is our file based
selected job: approach. In second approach, we can save the output of any
• For each data host, identify a compute resource that thread. This technique enabled us to create the restoration
can complete the job earliest given its current point of any thread. By utilizing these restoration points, we
commitment, job completion rate, and data transfer can start the failed job form the last saved point.
time using current available bandwidth estimates. Here we have shown different performance comparison table
d. Select a data host and compute resource pair with where our modified approach gives better performance than
the earliest job completion time from the Data- the existing approach in every case. The performance of
ComputeResource-List. modified approach depends on how long a thread is executed
e. If there exist such a resource pair, then assign the before it is being failed. The much longer a thread executed
job to the compute resource and remove it from the before it is being failed the much better performance is
Unassigned-Jobs-List. obtained by our modified file based implementation.
7. End of scheduling loop. In both program, same input is used to compare between
them, both give the same result as well. Both application give
Network Weather Service (NWS) [11] to get the current the total number of factors of a given input value (e.g. 10^10).
bandwidth condition. For comparing between the two implementations we have
We can create a new instance for the restoration file in the taken different datasets in two different scenarios.
Logical File Names (LFNs) which maps to Physical File
Name of the restoration file stored in the appropriate location

373
A. Scenario-1 (Considering No Thread Failure) Different number of threads has been interrupted and datasets
1) Here, different number of thread has been executed are taken using both algorithm.
using both algorithm where all the threads successfully
executed in the Executor node without any interruption and TABLE III. TIME SAVED BY THE MODIFIED ALGORITHM WITH
COMPARED TO THE EXISTING ONE WHEN MULTIPLE THREADS ARE
returned the result to the Manager node. INTERRUPTED

TABLE I. OVERHEAD OF OUR MODIFIED ALGORITHM WITH Previous Algorithm Modified Algorithm
COMPARED TO THE EXISTING ONE WHEN NO THREAD IS INTERRUPTED Test Thr Is Time Per Total Time Per Total
Cas ead Inte Thread Time Thread Time
Test # of Time Taken (min) Overhead e No rrup (sec) (min) (sec) (min)
Cases Thread (sec) ted?
Previous Modified
Algorithm Algorithm 1 1 Yes 36.843750 26.562500
2 No 17.718750 01:13.28 17.890625 01:03.2
1 3 0:55.37500 0:56.328125 0.953125 3 No 18.703125 125 18.765625 50000
2 5 1:35.81250 1:39.140625 3.328125 2 1 Yes 37.906250 27.328125
3 8 2:41.71875 2:43.906250 2.1875 2 No 17.781250 01:35.09 18.796875 01:14.1
4 15 4:25.62500 4:31.437500 5.8125 3 Yes 39.406250 375 28.046875 71875
3 1 Yes 41.937500 26.343750
2 Yes 40.515625 02:04.96 25.843750 01:18.0
Table 1 shows a slight overhead of our modified algorithm. 3 Yes 42.500000 875 25.843750 31250
This overhead indicates the time access file. From the above
comparison, we clearly see that the exiting procedure is better
when the number of thread is small but when the number of
thread increases the modified approach finish the thread almost 140

Total Time Taken(sec)


at the same time. File read and writes overhead is negligible 120
when number of thread increases. 100
80
B. Scenario-2 (Threads Are Terrupted) 60
Two approaches have also been compared where one or 40
more threads have been failed during execution time and 20
rescheduled by the manager. 0
For all the test cases we use: 0 1 2 3 4
Input Value = 1000000000
No of Failed Thre ad
Average Thread Execution Time = 19 sec (measured without
Existing Implementation Modified Implementation
interruption)
Time between the interrupt and restart a thread = 5 sec
Condition 1 Figure 2: Comparison between the two implementation in case of thread failure
No of Thread = 1
The Thread is interrupted at different time counting from the From the Table 3 and Figure 2, it is clearer that, modified
start of the execution. algorithm gives better result when one or more thread fails
during execution and performance is enhanced when the
degree of failure of thread increases in GRID environment.
TABLE II. TIME SAVED BY THE MODIFIED ALGORITHM WITH
COMPARED TO THE EXISTING ONE WHEN ONLY ONE THREAD IS As we can save the result of a failed thread and have shown
INTERRUPTED AT DIFFERENT TIME that this file based implementation gives better performance
and if we consider this approach in job we can say that our
Test Interrupted Time Taken (sec) Saved
Cases Time Time proposed modified algorithm will obviously give better
Previous Modified
(nth Sec) Algorithm Algorithm (sec) performance than the existing Gridbus broker scheduling
1 5 30.56250 23.125000 7.437500 algorithm.
2 10 32.65625 23.015625 9.640625
3 15 36.65625 27.453125 9.203125 VI. CONCLUSION
In this paper, a modified algorithm has been presented for
the scheduling of the Gridbus broker. We implemented an
From the above comparison, it is clear that in every case extended GRID thread application program where we showed
our modified approach gives better performance (i.e. time that using file based modified algorithm gives better time
improvement) than the exiting approach. It is also clear that improvement with compare to the existing thread
modified implementation performs well when a thread fails implementation. As Grid thread is the last unit of the job that is
after maximum execution of its lifetime. executed in the executor node and if the file based approach is
Condition 2 used for failed job then our modified Gridbus broker algorithm
No of Thread = 3 gives better performance than the existing Gridbus broker

374
scheduling algorithm. Thus, it has the potential to push the Systems,Volume 15, Numbers 5-6, pp. 757-768, Elsevier Science,
Grid computing one step further. Amsterdam, Netherlands.

REFERENCES
[1] Venugopal, S., Buyya, R., Winton, L.: A Grid Service Broker for
Scheduling Distributed Data-Oriented Applications on Global
Grids. In: Proceedings of the 2nd Workshop on Middleware in
Grid Computing (MGC 04): 5th ACM International Middleware
Conference (Middleware 2004), Toronto, Canada (2004)

[2] M. Maheswaran, S. Ali, H. J. Siegel, D. Hensgen and R. F.Freund,


Dynamic Mapping of a Class of Independent Tasks onto
Heterogeneous Computing Systems, Journal of Parallel and
Distributed Computing, Volume 59, Issue 2, November 1999,
Pages 107-131

[3] C. Baru, R. Moore, A. Rajasekar, and M. Wan, The SDSC Storage


Resource Broker, in Proceedings of the 1998 conference of the
IBM Centre for Advanced Studies on Collaborative research
(CASCON’98), Toronto,Canada, October 1998, ACM Press, New
York, USA.

[4] D. Abramson, J. Giddy, and L. Kotler, High Performance


Parametric Modeling withNimrod/G: Killer Application for the
Global Grid?, Proceedings of the International Parallel and
Distributed Processing Symposium (IPDPS 2000), May 1-5, 2000,
Cancun, Mexico, IEEE Computer Society Press, Los Alamitos,CA,
USA.

[5] R. Buyya, D. Abramson, and J. Giddy, an Economy Driven


Resource Management Architecture for Global Computational
Power Grids, Proceedings of the 2000 International Conference on
Parallel and Distributed Processing Techniques and Applications
(PDPTA 2000), June 26-29, 2000, Las Vegas, USA, CSREA
Press,Las Vegas, USA, 2000.

[6] H. Casanova, G. Obertelli, F. Berman, and R. Wolski, The AppLeS


Parameter Sweep Template: User-Level Middleware for the Grid,
Proceedings of the IEEE SC 2000: International Conference
Networking and Computing, Nov. 2000, Dallas, Texas, IEEE
Computer Society Press, Los Alamitos, CA, USA.

[7] Harold Soh, Shazia Haque, Weili Liao, Krishna Nadiminti and
Rajkumar Buyya, “GTPE: A Thread Programming Environment
for the Grid”, Proceedings of the 13th International Conference on
Advanced Computing and Communications (ADCOM 2005,
Allied Publishers, Mumbai, India, ISBN: 81-8424-109-7),
December 14-17, 2005, Coimbatore, India.

[8] Srikumar Venugopal, Rajkumar Buyya and Lyle Winton, A Grid


Service Broker for Scheduling e-Science Applications on Global
Data Grids, Concurrency and Computation: Practice and
Experience, Volume 18, Issue 6, Pages: 685-699, Wiley Press,
New York, USA, May 2006

[9] Ian Foster and Carl Kesselman, “Globus: A Metacomputing


Infrastructure Toolkit”, International Journal of Supercomputer
Applications, Volume 11, Issue 2, pp.115-128, MIT Press, Boston,
MA, USA, 1997.

[10] A. Luther, R. Buyya, R. Ranjan, and S. Venugopal, Alchemi: A


.NET-based Grid Computing Framework and its Integration into
Global Grids, Technical Report, GRIDS-TR-2003-8, Grid
Computing and Distributed Systems Laboratory, University of
Melbourne, Australia, December 2003.

[11] R. Wolski, N. Spring, and J. Hayes, “The Network Weather


Service: A Distributed Resource Performance Forecasting Service
for Metacomputing”, Journal of Future Generation Computing

375
International Conference
on Computer Engineering and Technology

Session 6
2009 International Conference on Computer Engineering and Technology

Prediction of Ship Pitching Based on Support


Vector Machines
SUN Li-hong SHEN Ji-hong
Collegeof Foundation Science Harbin University of Science College Harbin Engineering University
commerce E-mail address: shenjihong@hrbeu.edu.cn
E-mail address: honghong03050305@163.com

Abstract—ship pitching influences mostly ship motion, it’s help us know the disciplinarian of pitching and master and
important to study ship pitching modeling and prediction in use it to service for the ship navigate.
order to improve ship’s seaworthiness. Based on the random SVM becomes new study focus after neural network in
character of ship movement, this paper put forward a method the machine learning field. The support vector machine
for prediction of ship pitching movement with SVM. Based on (SVM) was initially developed by Vapnik and his group to
the phase-space reconstruction theory, the method, the solve classification problems and has been successfully
characteristic, and the selecting of the key parameters in the applied to a number of real world problems. Some
modeling is discussed. Using support vector machine model to applications of SVMs for classification are isolated
predict ship pitching series, the RBF kernel function is handwritten digit recognition speech recognition, and face
introduced, which simplified the course of solving non-linear detection in images. Recently, its applications have been
problems, It is shown by the study case that the model
extended to the domain of regression problems. In the case
proposed in the paper has better generalization and prediction
of regression, SVMs have been applied to benchmark time
accuracy.
Keywords- phase space reconstruction; support vector series prediction tests, the Boston housing problem and
machine; ship pitching; prediction; RBF kernel function financial forecasting. In most of these cases SVM
generalization performance either matches or is significantly
better than competing methods.
1 Introduction SVM is based on the structural risk minimization
ship navigates in the wind wave, as result of wind, wave (SRM) principle[10-12], which has been shown to be superior
and flow, it swings back and forth inevitably. Badly sway to traditional empirical risk minimization (ERM) principle.
can make employee to go down work efficiency on the ship, SRM minimizes an upper bound on the expected risk while
passengers feed the fishes, goods damage, naval battle ERM minimizes the error on the training data. highly
effectiveness falls. Marine sway has a six degrees of freedom generalized SRM results in the regularized ERM with the "-
in common: ship’s rolling, pitching, heaving motion and so insensitive loss function. In this paper, we apply support
on. Thereinto rolling and pitching influence most for ship vector machine to ship pitching movement prediction, by
motion . marine rolling capability is an important index for extending support vector machine regression (SVMR) for the
ship enduring wave[1,2]. Existing many reducing sway estimation of linear and nonlinear regressions, first
equipment aim at decreasing rolling, now an effective reconstruction the pitching phase space, and then the SVM
method for pitching isn’t existence. Generally people make forecast model of reconstruction time series is introduced to
shipping to evade dangerous period and reduce accident ship pitching series, finally predicting the future motion. At
applying prediction technique. Now many countries attach the same time SVM compared to improved GM(1,1) model
importance to the modeling prediction of ship movement and ,the precision of SVM is higher than improved GM(1,1)
develop many research. Home and overseas researchful model, it provides a new approach for pitching motion time
method may sum up two big genus, frequency domain series forecasting.
analytical method and time domain analytical method.
Among frequency domain analytical method convolutional 2 time series phase reconstruction
method was often used, in time domain analytical method For single variable time series, Packard put forward a
kalman filtering and time series analysis[3] method. It was method of reconstruction phase, its main idea is to change
researched to Use time series analysis to predict extremely one dimension time series into many dimensions time series
short-time motion attitude. It needn’t know any priori- through delaying time and embedding dimensions, so
information for ocean wave and the state equation of reconstructing dynamics system. Supposing pitching
shipping motion, it’s only to know historical data of ship movement time series xt , t = 1, 2, , n , if we can select
movement and seek rules to forecast. Anciently the method
embedding dimensions m and delaying time τ ,
of predicting the ship were time series, Periodogram,
reconstructing the phase is
artificial neural network, grey system theory[4-9] and so on.
It’s important to study the theory of ship pitching, which can yi = {xi , xi +τ , xi + ( m −1)τ } (1)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 379


DOI 10.1109/ICCET.2009.24
Among (1), i = 1, 2, , n − ( m − 1)τ 。 So every yi forms SVM regression performs linear regression in the
a phase point of m dimension phase ; the above all higher dimensional feature space using ε -insensitive loss
m dimension phase constitutes a phase, while the line and, at the same time, tries to reduce model complexity by
T
between phase points depicts the track of ship pitching minimizing w w : This can be described by introducing
motion in phase space. Working out correlation dimension ς
(non-negative) slack variables i , i to measure the
ς*
of reconstructing phase space can estimate if original time
series exist fractal character. The key of phase space deviation of training samples outside ε insensitive zone.
reconstruction is to how to ascertain delay-time τ and Thus, SVM regression is formulated as minimization of the
following functional:
embedding dimension m . Usually people adopted auto- m
1
correlation function algorithm to calculate τ , using G-P min* wT w + C ∑ (ς i + ς i* ) (4)
algorithm by Grassburger and Procacia putting forward G-P w, b ,ς i ς i 2
i =1
algorithm to calculate m . ⎧ yi − [ wT Φ( xi ) + b] ≤ ε + ς i
⎪⎪
3 Regression algorithm of SVM Subject to ⎨[ wT Φ( xi ) + b] − yi ≤ ε + ς i*
3.1 regression estimate algorithm based on SVM ⎪
⎪⎩ς i , ς i ≥ 0
*

SVM initially is used to solve mode identify, using its where C is a positive constant (regularization
classification algorithm to realize better generalization parameter) Parameter C determines the trade off between
function. With the introduction of ε -insensitive loss the model complexity (flatness) and the degree to which
function [10],SVM already was extended to solve the non- deviations larger than 1 are tolerated in optimization
linear regression estimate. In regression, the goal is to formulation (4).For example, if C is too large (infinity), then
estimate an unknown continuous-valued function based on a the objective is to minimize the empirical risk only, without
finite number set of noisy samples. Assumed that the regard to model complexity part in the optimization
sample points {( xi , yi )} (i = 1, 2, m), m is sample numbers, formulation (4).
xi is input vector, yi is the target value. Considering sample 3.2 Regression estimating function expression
to take on non-linear relation under most condition, through By adding Lagrangian multipliers α i and α i* , the
the flowing method estimating function f : Given a set of Lagrange function is described as follows
centered input vectors, the idea is to first map the original 1 m m
input vectors into a higher dimensional feature space using a L = wT w + C∑ ς i + ς i* − ∑ α i (ε + ς i − yi + wT Φ ( xi ) + b)
non-linear mapping and then to calculate the linear 2 i =1 i =1
m m
−∑ α i* (ε + ς i* + yi − wT Φ ( xi ) − b) − ∑ (ηiς i − ηi*ς i* )
regression, so reaching the effect of non-linear regression in
original space. In SVM regression, the input xt , t = 1, 2, , n i =1 i =1
is first mapped onto an m dimensional feature space using Where α i , α i* ,ηi ,ηi* Lagrangian multipliers, they are
some fixed nonlinear mapping Φ , and then a linear model is nonnegative. According to the KKT condition[13] theorem in
constructed in this feature space. The linear model optimization theory, the solution of the optimization is
f ( x, w) is given by given by the following condition
f ( x, w) = wT Φ ( x) + b = ( w, Φ( x)) + b (2 ) ⎧ ∂L m

where Φ ( x) represents a high-dimensional feature ⎪ ∂b = 0 ⇒ ∑ (α i − α i* )


⎪ i =1
space, which is nonlinearly mapped from the input ⎪
⎨0 ≤ α i , α i ≤ c, i = 1, 2, m (5)
*
space xt ,and b is the “bias” term. w is weights vector, ⎪
⎪ ∂L = 0 ⇒ W = (α − α * )Φ( x )
m
( w, Φ( x)) is inner-product. Often the data are assumed to be
⎪⎩ ∂W ∑ i i i
zero mean, so the bias term in expression (2) is dropped. i =1
The quality of estimation is measured by the loss function This optimization formulation can be transformed into
L( y − f ( x), x) . SVM regression uses a new type of loss the dual problem, and its solution is given by
function called ε-insensitive loss function proposed by 1 m m
max* = − ∑∑ (α i − α i* )(α j − α *j ) K ( xi , x j )
Vapnik. α i ,α i 2 i =1 j
L( y − f ( x), x) = y − f ( x) ε = m m
−ε ∑ (α i + α i* ) + ∑ yi (α i − α i* )
⎧⎪0 y − f ( x, w) − ε i =1 i =1
⎨ (3)
⎪⎩ y − f ( x, w) − ε ⎧m
⎪∑ (α i − α i ) = 0
其它 *

The empirical risk is: Subject to ⎨ i =1 (6)


1 n ⎪α , α * ∈ [0, C]
Remp (ω ) = ∑ L( yi , f ( xi , ω )) ⎩ i i
n i =1

380
Where K ( xi , x j ) = Φ ( xi )T Φ ( x j ) is kernel function, it the best embedding dimension of phase space. This paper
depicts the inner-product of higher feature space, Usuall it faces pitching angle series, τ = 1 , m = 12 。
may select satisfying Mercer condition. Also, SVR can 4.2 training algorithm and constitution of kernels
estimate a non-linear function. by employing a kernel Realization of classical SVM algorithm can summarize
function, The regression function estimated by SVR can be to solve a nonlinear programming with linear constraints,
written as the following kernel expansion: the algorithm is complexity, convergence rate is slow. Later
m
many scholars did a series of improvements, but
f ( x) = ∑ (α i − α i* ) K ( x, xi ) + b (7) applicability isn’t enough good. This paper uses LIBSVM
i =1
Selecting a particular kernel type and kernel function algorithm provided by Chang Chichun and Lin Chihjen in
parameters is usually based on application-domain 2001 year, the method used for reference the merit of other
knowledge and may reflect distribution of input values of method, affording an ascertain method for a working
the training data. familiar kernels function were polynomial dataset, so optimization problem becomes a typical
quadratic performance with analytic solutions. Comparing
kernel, radial basis function kernel and so on. So f in (7) is
to of ordinary optimization problem, it uses much less EMS
decided by α i , α i* . According to the character of SVR, The memory and computing rate is quick, the precision of result
sample points that appear with non-zero coefficients in (7) is high. Selection of kernels affects mostly pitching
are called support vectors (SVs). (7) depicts a convex movement prediction, this paper test indicates RBF kernels
programming, which every solution of which is global can achieve higher precision in ship pitching movement
optimization solution. SVR avoids poor fitting and over prediction. Besides, parameter C also affects capability of
fitting of data through (6), so SVM is a universal and SVM.
flexible tool to solve regression problem. 43 SVR steps for ship pitching prediction
This paper the realization of SVM adopts the structure
The regression based SVM which is to predict the Ship
like Fig1, where α i − α i* is network weigh, x1 , x2 , xm is pitching is described in the following:
input vecter, y is output value. Its structure is similar to Step 1 Choosing samples and numerical normalization
ANN, its numbers of hidden nodes are the numbers of processing for the pitching angle series.
SVM. Step 2 establishing training and test samples and
reconstructing phase space for them.
y Step 3 calculating α i , α i* to use LIBSVM algorithm.
Step 4 combining Eq.(7) and using test samples to predict
the future pitching angle.
α1 − α1* α 2 − α 2* α j − α *j
5 Experimental results
60 Simulated datasets are from ship pitching angle in
………. 30s, according to τ = 1 , m = 12 , reconstructing pitching
angle series, the former 42 databases are used to training,
the latter 18 datum are used test data. Training samples are
x1 x2 … …. xm the following format.
⎡ x1 x1+τ x1+ ( m −1)τ ⎤ ⎡ x2 + ( m −1)τ ⎤
Fig1 the structure of SVM ⎢ ⎥ ⎢ ⎥
⎢ x2 x2 +τ x2 + ( m -1)τ ⎥ ⎢ x3+ ( m −1)τ ⎥
4 Applipplication of SVM for ship pitching X =⎢ ⎥ Y =⎢ ⎥
⎢ ⎥ ⎢ ⎥
movement ⎢ ⎥ ⎢ ⎥
x x
⎣ n -1− ( m −1)τ n −1− ( m − 2)τ xn −1 ⎦ ⎣ n ⎦ x
4.1 reconstruction of pitching data
Based on above learning sample learning SVM
This paper used data imitating is pitching angle time regression function. The selection of parameters for SVM
series for some ship, it is real measured by ship model pool model usually based on fact, under the control of fitting and
experiment. Supposed sampling interval of real ship data is forecasting precision, getting model parameter C , ε , σ by
0.5s, choosing 60 data (30s every group), these gradual optimal combination, where ε controls the error fitting,
pitching angle connects a long series, series is consequently controlling the number of SVM and the ability
{ x(t ), t = 1, 2, n} , n = 60 . Time lag is decided by of generalization, if ε is bigger, the number of SVM is few,
autocorrelation function, let the time τ which precision isn’t high relatively. In this paper ε = 0.01 ,
autocorrelation function first vias zero be delay time; let C , σ control complexity of model, thereby, a ‘good’ value
embedding dimension m = 2,3, , for every m , according for C can be chosen equal to the range of output (response)
to G-P algorithm, drawing a figure about correlation values of training. However, such a selection of C is quite
dimension; from the curve of embedding dimension m , we sensitive to possible outliers, so we propose instead the
can know when correlation dimension gets saturation, it is following prescription for regularization parameter:

381
C =10000 σ = 0.5 .in order to compare to SVM model, in paper established forecasting model of ship pitching angle
this paper selecting grey GM(1,1) model, grey GM(1,1) series using phase space reconstruction and SVR theory.
model is to establish model facing to data approximately Phase space reconstruction mined information of single
obeying exponential law, its merit is a few datasets needed variable sequences, the establishment of SVM forecasting
and reduces the calculation quantity. This presents empirical model vias learning history samples, so SVM is self-
comparisons for SVM Regression and GM(1,1) model, learning process for history samples, when training samples
simultaneity using MATLAB language programme to are finite, SVR model took on good generalization
simulate and learn in computer, forecasting curve is in Fig2 capability and overcome disadvantage of local optimization,
and Fig3. result indicates: the forecasting time interval of so the forecasting method can improving the forecasting
GM(1,1) model is 7-8 second, while SVM can forecast precision. Imitate results show that SVM selecting RBF
much longer time, We evaluated the root mean relative error kernels is applied to short-time forecasting for ship pitching
is e1 = 0.5094 e2 = 0.1795 for every method, ∵ e1 > e2 ,so motion, it got higher calculating precision than GM(1,1)
SVM method is better than GM(1,1) model forecasting model. At the same time the SVM model is simple and
method. convenient in modeling and training rate is quick.

GM(1,1) model and original


0.5 REFERENCES
original data [1] TAO Rao-sen.Sea-keeping of Ships[M].shanghai:shanghai jiao tong
GM(1,1)forecasting university press,1985.
0
[2] ZHAO Xi-ren. Application of random process[M].harbin: Harbin
Engineering University Press,2003.
-0.5 [3] George E.P.Box. Time series analysis: forecasting and controlling
pitch angle

[M].Gu Lan interpret.Beijing:China Stat Press,1997.


[4] ZHAO Xiren, PENG Xiuyan.Study Status Quo of Extremely Short-
-1
Time Modeling and Predicting of Ship Motion[J]. ship engineering,
2002,(3):4-8.
-1.5 [5] WANG Huihua,LIU Wenhua,WANG Hang. Short-term Prediction of
Ship Motion Based on Neural Networks[J].computer
simulation,2006,23(5):18-20.
-2 [6] SHEN Jihong , SHANG Shouting , ZHAO Xiren. Functional
0 2 4 6 8 10 12
time t/s transformation GM( 1 ,1) model constructed for ship pitching [J].
Figure 2 GM(1,1)model and original data journal of harbin institute of technology,2001,33(3):291-294.
[7] LI Hui,WU Guofu,QI Quanyue. Multivariate Autoregressive Model
SVM forecasting ang original in Time Series for Movement State of Naval Vesse [J].journal of
0.5 system simulation, 2003,15(5):617-620.
SVM forecasting [8] CAI Feng, WANG Lin, SHI Aiguo. Extreme short term prediction of
original ship motions based on phase-space reconstruction [J].journal of
0
hydrodynamics,2005,20(6):780-784.
[9] MA Jie,LIU Xiaohe and so on. Multi-level recursive prediction
-0.5 method for pitching movement of large-sized naval vessels [J].ship
pitch angle

engineering,2006,28(1):5-8.
[10] LI Yinghong,WEI Xunkai, LIU Jianxun.engineering application for
-1 SVM [M].Beijing: weapon industry Press,2004.
[11] SUN Deshan, WU Jinpei, XIAO Jianhua. The Application of SVR to
-1.5
Prediction of Chaotic Time Series[J]. journal of system
simulation,2004,16(3):519-520.
[12] DIAO Xiang, LI Qi. On-line Training Algorithm and Its Application
-2 Based on Weighted SVR [J].journal of system
0 2 4 6 8 10 12
time t/s
simulation,2007,19(17):3970-3973.
Figure 3 SVM model and original data [13] Vapnik V·The Nature of Statistical Learning Theory[M]·NewYork:
Springer Verlag, 1999.

6 Conclusion
It is in testing and exploring moment for SVR model
application in ship pitching movement prediction. This

382
2009 International Conference on Computer Engineering and Technology

The Methods of Improving the Manufacturing


Resource Planning(MRPⅡ) in ERP
WenChao Jiang Jingti Han
School of Information Management & Engineering, School of Information Management & Engineering,
Shanghai University of finance and economics Shanghai University of finance and economics
Shanghai China Shanghai China
Email:wenchaojiang@gmail.com Email:hanjt@mail.shufe.edu.cn

Abstract-This paper focus on the methods to improve the management. Now, the MRPⅡ is the core of ERP(Enterprise
traditional MRPⅡprocess according to the requirement of the Resource Planning) System which has been widely used in
time base competition. By finding out the defections in the manufacturing industry. Nevertheless, there are some
process of traditional MRPⅡ, such as using the fixed lead-time, defections in the method of MRP Ⅱ used to form
using the fixed secure stock, and lacking of time management, manufacturing plans in the Time Base Competitive
then we building 5 models and integrating these models into the environment, such as the setting of fixed lead-time, the setting
process of MRPⅡ to make all the parameters which correlate of fixed secure stock, lacking of guidance in capability
with the environment of the enterprise become dynamic resource planning, and ignores the time management in the
parameters, and make the MRPⅡ obtain the ability of time manufacturing management.
1
management. This paper focus on improving the process which MRPⅡ
Key words: improve, MRPⅡ, method, model, TBC used to form manufacturing resources plans, and resolving the
problems exist in the MRPⅡ at the TBC age. The final
Ⅰ INTRODUCTION purpose of this paper is to improve the MRPⅡ by integrating
Since 1990s, the market has changed greatly. As the 5 models into the process of forming plans, and make the
competition become severer, the life cycle of products become thoughts of TBC combined with the theory of MRPⅡ.
shorter, and the demand of customers become more multiples, Ⅱ THE DEFECTS OF TRADITIONAL MRPⅡ IN TBC
the competitive advantage of manufacturing have to be shifted As the competitive environment of market become more
form price, quality, and service to the adaptability of and more uncertain, the competition of enterprises shifted to
manufacture. The one who have grasped time in the market time base competition, the time become the most powerful
would predominate in the competition. All of these mean that resource which make the enterprises to gain advantage in
we are now in the “Time Base Competitive age”. In such a competition. In the Time Base Competitive environment, how
competitive environment, how to reduce the time of to produce the goods wanted by customers in the shortest time
manufacturing, and put the products which loved by with the lowest cost and how to guarantee sufficient supply in
customers into the market has became a very important the lowest level of stocks become the most important points in
advantage in competition. manufacturing management. So the defections of traditional
The MRPⅡ(Manufacturing Resource Planning) which born MRPⅡ which born at the end of 1970s become more and
in America at the end of 1970s is a very good method which more obvious, the defects are listed underneath:
has been used in enterprise resource and manufacturing 1) The traditional MRP Ⅱ make the system
administrator having the tendency to set a longer
The topic of this paper from the China National Social Science Fund project,
the approval number of this project is: 07AJY024, and this project is the lead-time which used to form manufacturing plans.
"211" key project engineering (211-6-44) of China Shanghai University of
Finance and Economics, The lead-time is a very important parameter in the MRPⅡ

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 383


DOI 10.1109/ICCET.2009.18
system. Usually, the administrators like to set a longer situation that the demand is fluctuant. It should set bigger
lead-time, because using the longer lead-time make the MRP secure stocks when the fluctuant degree of demand was big,
Ⅱ system form plans whatever how big or small the demand and set smaller secure stocks when the fluctuant degree of
is. The longer lead-time doesn’t reflect the real capability of demand was small.
manufacturing, and the longer lead-time increase the difficulty Ⅲ IMPROVE ASSUMPTION
of market forecast that would increase the risk of In order to make the improvement more strictly, there are
manufacturing. some assumptions of the enterprise environment that should
The using of longer lead-time to form plans would also be set first:
increase the unfinished products’ stocks and secure stocks, 1) The running environment of MRPⅡ is MTO (Make
these stocks occupy too much circulating capital what would to Order).
decelerate the running speed of logistic system. Even worse, 2) For the finished goods the MRPⅡ use the direct
the longer lead-time covers up the resource restriction existing quantity; For the semi-finished goods or purchase
in the process of manufacturing, which go against the wish of material the MRPⅡ use the fixed quantity, and the
the enterprise to build an adaptability manufacturing system. fixed quantity is the most economical quantity.
2) The traditional MRPⅡ use the fixed lead-time as 3) For the finished goods and semi-finished goods the
parameters, that do not satisfy the requirement of building companies do not set the secure stocks.
a adaptability manufacturing system. 4) For the purchase material the companies set the secure
The lead-time was set by the administrators when initialized stocks to prevent the halt of manufacturing system.
the MRPⅡ system, and the lead-time in the MRPⅡ system 5) The demands of goods satisfy the normal distribution
would not be changed when the initialization had finished. So in the planning period, and the demands are all
the traditional MRPⅡ ignores the situation that the using of independent.
elastic workers and the advance of manufacturing capability Ⅳ IMPROVE METHOD AND THE MODELS
would reduce the time of manufacture when using the fixed In order to satisfy the requirement of time base competition
lead-time to form manufacturing plans. and improve the traditional MRPⅡ system, there are five
3) The precondition of forming the manufacturing plans models should be integrated into the traditional MRP Ⅱ
is the assumption of infinite manufacturing capability. system. These five models are:
The traditional MRPⅡ system ignores the restriction of A. The Model of Resource Balance in Main Production
manufacturing capability when forming the plans. So the CRP Scheduling
(Capability resource planning) is a capable adjustment after 1) The description of the model
event, this adjustment is a complex and difficult task, and it The demands of customers are changeable in the time base
lack of guidance. The adjustment of capability without competitive environment, if the company keeps too many
guidance would make the administrators harder to decide how finished products, it would suffer great losses when the
to distribute the finite resource, and it often makes the demands changed greatly. So the model of resource balance
administrators adjust the capability without considering time should be integrate into the MRPⅡ system when it forming
reduction. the MPS(Main Production Scheduling) plan. The resource
4) The traditional MRPⅡ lack of restriction on secure balance model is a model that balances the finite resource
stocks. while fully considering reducing the inventory of finished
The secure stocks are the stocks set in order to prevent the products and lowering the production costs. The purpose of
halt of manufacturing system which cause by the fluctuation this model is to improve the MPS, and make the MPS satisfy
of demands, and the secure stocks correlate with the fluctuant the requirement of TBC.
degree of demands. The quantity of secure stocks is another 2) The description of the symbol in the model
parameter set when the MRPⅡ system is initialized. Like the
Dik - The demand of the product i in the period k; Pijk - The
lead-time, the quantity of secure stocks is also a fixed
parameter in traditional MRP Ⅱ system. It ignores the quantity of product i that produce in the period j in order to

384
traditional MRPⅡ system, that is one of its defects. So we
satisfy the demands in the period k; Pij -The quantity of i
should integrate the secure stock forecasting model in to the
traditional MRPⅡ system to make the secure stock become a
product that produce in the period of j; Wtij -The demand of
dynamic parameter. The model is a statistical model that uses
normal working hours for producing the i product in the the fluctuation of demand to forecast the secure stocks.
2) The description of the symbol in the model
period of j; Ot ij -The demand of overtime working hours for
Pj -The average total demands of j purchase material
producing the i product in the period of j; Wt j -The
within a certain period; Rij -The average demand of i product
restriction of normal working hours in the period of
which correlate with the j purchase material within a certain
j; Ot j -The restriction of overtime working hours in the period
period; σ ij -The standard deviation of demand of i product
of j; Wp -The unit cost of normal working hours; Op -The
which correlate with the j purchase material within a certain

unit cost of overtime working hours; S i -The unit inventory period; Ω j -The standard deviation of total demands of j

cost of the i product; Ci -The manufacturing cost of i product; purchase material within a certain period; nij -The ratio of

demand between the i product and the j-related material;


ni -The working hours for producing per unit i product;
S j -The number collection of the product which relate to the j
n -The variety of products; T -The number of the periods。
3) The model of resource balance purchase material; CSL -The probability that there is no
n T T n T T n T n T
stagnation in the production within the production cycle;
minZ =∑∑∑CiPijk +∑∑∑(k − j)SiPijk +∑∑Wp×Wtij +∑∑Op×Otij
i=1 j=1 k=j i=1 j=1 k=j i=1 j=1 i=1 j=1 LT j -The time interval of procuring the j material;
k

∑P j =1
ijk =Dik i = 1,2,......, n; k = 1,2,......T LTs j -The shortest time interval of procuring the j material;
T

∑n P
k= j
i ijk ≤Wtij +Otij i = 1,2,......, n; j = 1,2,......, T LTm j -The average time interval of procuring the j material;
n

∑Wt
i =1
ij ≤ Wt j j = 1,2,......, T ; LTl j -The longest time interval of procuring the j material;
n

∑ Ot
i =1
ij ≤ Ot j j = 1,2,......, T ; ss j -the secure stock of j material;B-The collection of all

procuring material
Pijk , Wtij , Otij ≥ 0, Pijk is integer
3) The model of secure stock forecast
This model is base the assumption that the distributions of
The Pijk , Wtij and Otij is the decision variable in the model.
the demands are the normal distribution and all these
T
distribution are independent.
The Pij( P =
ij ∑ Pijk ) is the decision variable that we want get
k= j
ss j = LT × Pj + LT × Ω j × F −1 (CSL ) j∈B;
finally, it tell us how many i products should be produced in
the j period. Pj = ∑ nij Rij ;
B. The Model of Secure Stock Forecast i∈S j

1) The description of the model Ωj = ∑n σ


i∈S j
ij
2
ij

As we know the quantity of secure stock is fixed in the

385
LTs j + 4 LTm j + LTl j ; ⎡ ∑ nk × mkj × ( Pti + Mti ) ⎤
LT j = ⎢ k∈R ⎥ j∈P;
6 LTp j = ∑ (Qti + ⎢ j ⎥ + Tti )
Wi
i∈S j
⎢ ⎥
C. The Model of Producing Lead-time Calculates ⎣ ⎦
1) The description of the model The symbol-[ ] means give the smallest interger greater than
The producing lead-time is a fixed parameter in the or equal to the result of formula
traditional MRPⅡ system. The model of producing lead-time ⎡ LTp j ⎤
PLT j = ⎢ ⎥ j∈P
calculates is the model use to calculate the producing time ⎣ WT ⎦
according to the capability of manufacturing system. So if we The symbol-[ ] means give the smallest interger greater than
integrate the model into the MRPⅡ system, it would make or equal to the result of formula
the producing lead-time become a dynamic parameter which
changes when the environment of manufacturing changes. D. The Model of Purchase Lead-time Forecast
2) The description of the symbol 1) The description of the model
The purchase lead-time is another fixed parameter in the
i -The No. of working center; P -The collection of all
traditional MRPⅡ system, but the purchase lead-time would
be change when the condition of purchase is changed. The
products and purchase material; S j -The No. collection of the
model of purchase lead-time forecast is the model that using
the BP neural network to forecast the purchase lead-time
working center that the j material involved; Pti - The
according to the real procuring condition. The first step of
preparing hours for the i working center prepare to process per building this model is to build a BP net work, then using the
training set to train the network. When the neural network had
product or material ; Mti - The working hours for the i
been trained, we can use the network to forecast the lead-time
of purchase.
working center to process per product or material; Qti -The
2) The step to build the model
waiting time before the i working center process the material; The Fist step: Using the method such as fishbone figure or
other analytical tools to find out the factors that affect the
Tt i -The time for the i working center to transport the material
purchase in the real procuring environment. Then quantify
these factors, and let them to reflect the real purchase
or product to the next working center; nk -The production
condition.
The Second step: According to the effect factors to construct
volume of the k product; mkj -The ratio of requirement
frame of the training set of different purchase material. Then
build the training sets according to the history of purchase.
between the k product and the j material; R j -The collection
These training sets are used to train the BP neural networks.
The Third step: Build the structure of the BP neural
of the product which need the j material ;
Wi -The rated
network. According to the demand of the forecast, choosing
the structure that contain tree hidden layer, multi-input and
working hours of the i working center per day; LTp j -The
single output (see the Figure 1)
production lead-time of j product or material, the unit of this is

the day; PLT j -The production lead-time of j product or

material, the unit of this is the week; WT -The per week


working hours in the working calendar.
3) The model of producing lead-time calculates Figure 1 the structure of the BP neural networks

The Forth step: Determining the transmission function in


the hidden layer of the BP neural networks.

386
In the first and second hidden layer, we use the tansig We have the training set already now, then we can use this
function as transmission function. train set to train our neural network. We use the Matlab to
build this model.
1 − e− n
a(n) = tan sig (n) =
1 + e− n
In the third hidden layer, we use the purlin function as
transmission function.

a (n) = purelin(n) = n

The Firth step: Using the train set to train the neural
network what we have built. After training, we can use the Figure 2 the curve of training performance

network to forecast the purchase lead-time, and all we have to Now we have the neural network which had been trained,
do is just input the indexes which represent the purchase then we can use the model to forecast the purchase lead-time
condition. of the material.
3) ٛ Example e.g we put the index X1=1.0;X2=0.05;X3=0.5;X4=4
Table1. The train set of the model X5=1;X6=0.5 in to the model, we will get the result that the
No. X1 X2 X3 X4 X5 X6 Lead-time purchase lead-time of this material in this purchase
1 100 0.05 50 air 1 1500 5 condition is 3.3 days.
2 200 0.10 150 air 1 1250 5 E. The Model of Resource Balance in Material Requirement
3 100 0.03 30 train 2 1750 8 Plans
4 200 0.05 80 train 1 1250 6 1) The description of the model
5 100 0.10 100 air 1 700 2 The model of resource balance in the MRP is a model that
6 100 0.05 50 train 1 1500 5 integrates the technology of PERT and CPM into the MRP.
7 200 0.04 75 air 1 1500 4 The model considers the manufacturing activity as a project,
8 300 0.05 100 ship 2 1500 11 then using the BOM list and the lead-time to form a net of the
9 100 0.06 50 Ship-truck 1 1500 9 manufacturing plan. By using the network we can find out the
10 100 0.05 50 train 1 1500 5 critical path, and then we can balance the resource of
11 120 0.08 75 Ship-truck 2 450 6 manufacturing. In addition, we can implement the time
12 240 0.1 120 train 4 450 5 management in manufacturing system.
13 150 0.07 90 air 2 500 4 2) The operation step of the model
14 120 0.10 120 truck 1 500 3

15 360 0.10 150 truck 2 500 6

Table 1 is a part of the train set for the model of one


material’s purchase leading-time forecast. All of the data we in
the table we gain in a company. And according to the
investigation, there are six factors would affect the purchase
leading-time of the company for one of is purchase material.
X1: the purchase quantity of the material; X2: The condition
of the work force about the company which produce the Figure 3 the operation step of the Resource Balance model

material; X3: the efficiency of the work force about the The First step: Considering the activity of
company which produce the material; X4: The transportation manufacturing as a project and all the results of produce and
method. X5: the weather condition. X6: distance. And the purchase material as nodes. Then form the networking of
table 1 is just a part of the training set. manufacturing plan by using the results of MRP and the
results of lead-time forecast. The line between two nodes

387
represents the producing activity or the procuring activity. manufacture.
The Second step: Using the result of producing
lead-time calculating and the result procuring lead-time Ⅴ INTEGRATE THE FIVE MODELS INTO THE MRPⅡ

forecasting as the time need of activities ( t (i, j ) ) in the

networks.

The Third step: Set t E (1) = 0 , then using the formula


to calculation:
The earliest time to receive the material or product j

t E ( j ) = max{t E (i ) + t (i, j )}
( i , j )∈I

The latest time to receive the material or product i

t L (i ) = min {t L ( j ) − t (i, j )}
( i , j )∈I

The earliest start time of the activity (i, j)


Figure 4 The operational model of the improved MRPⅡ
t ES (i, j ) = t E (i )
Now, we considering how to integrate these five models
The earliest finish time of activity (i, j) into the MPRⅡ, figure4 show the operational model of the
improved MRPⅡ.
t EF (i, j ) = t E (i ) + t (i, j )
We integrate the model of resource balance in main
The latest start time of the activity (i, j) production scheduling into the process of MPS. When the new
MRPⅡ forming the MPS, it consider the resource restriction
t LS (i, j ) = t L ( j ) − t (i, j )
meanwhile. So the process of forming the MPS is the process
The latest finish time of activity of (i, j) to balance the resource in the planning period and calculate
the most economical quantity of the finished products which
t LF (i, j ) = t L ( j )
produce on each week or month. Here, the economical
The Forth step: Finding out the critical activity quantity is the quantities which meet the demand in every
week or month with balancing the resource restriction in
S (i, j ) =0, S (i, j ) = t LS (i, j ) − t ES (i, j )
every week or month, and it is the quantities which are set
Then calculate the time need of entire project, and by fully considering reducing the inventory of finished
calculate the relaxation time of the non-critical activities: products and the production costs.
Base on the MPS which have been formed, the MRPⅡ
r (i, j ) = t E ( j ) − t E (i ) − t (i, j )
begin to form the MRP(material resource planning). We then
The Fifth step: Calculating the starting time of the entire integrate the Model of Secure Stock Forecast, the Model of
project according to the time of the critical activity. Then Producing Lead-time Calculates, and the Model of Purchase
consider balancing the manufacturing resource without Lead-time Forecast into the process of MRPⅡto form the
prolong the time of the critical path at first. If the resource MRP.
can not be balanced in the time of the critical path, then The secure stock forecast model fetches the demand
considering prolong the time of the critical path. Then forecast information from the ERP, and calculates the average
amend the networks and the MRP plans. purchase leading-time by using the history purchase data, after
The sixth step: Distributing the networks and the MRP having all the information the model need, it would work out
plans which had been amended after the resource balance to the most appropriate secure stock of every purchase material.
the department of purchase and the department of All of these secure stock quantities would be used in forming

388
the MRP. By integrate this model into the MRPⅡ make the find out the critical activities and the shortest time needed to
secure stock which is a fixed parameter in traditional MRPⅡ produce every product. Then, by using the technology of
become a dynamic parameter that correlate with fluctuation of resource balance of PRET and CPM the system can balance
demand. the resource distribution just adjusting the relaxation time of
The Model of Producing Lead-time Calculates fetches the the non-critical activities. These balance processes wouldn’t
information of the work center and the BOM from the file increase the shortest time required to product the product.
stored in the ERP system, and receives the producing After resource balance, the system can delivery the PERT
requirement of one particular product in a period from the producing activities networks of every product every
MPS. Then, the model can work out the producing lead-time workshop. By doing this, the manager of each workshop can
of every producing activity. After we integrate this model into know exactly when the activities that belong to their
the MRP Ⅱ , while the productivity of the manufacturing workshop beginning, even when these activities should be
system changing or the produce quantities changing, the finished. To form the producing activities networks and
producing leading-time will change. The leading-time become delivery those to the workshop make all workers in the
a dynamic parameter in the new MRP Ⅱ , this make the workshop understand how important they are, because they
leading-time more accurate to reflect the time requirement for can see the fact that the efficiency of their workshop
producing. This make the producing orders which formed by determines the on time finishing of the whole manufacture
MRP have more value of guidance. project. And this reflects the concept of management by
The purchase lead-time would be change when the objectives.
condition of purchase is changed. So we integrate the Model Ⅵ CONCULUSION
of Purchase Lead-time Forecast into MRP Ⅱ , and before The purpose of this paper is to provide methods to improve
forming the purchase material order, the system first ask for the traditional MRPⅡ system according to the demand of the
the information of the purchase condition. The model fetches time base competition. The manufacturing lead-time, the
some part information from ERP, and call for information purchase lead-time and the secure stock become dynamic
which can’t be obtained in the ERP system form the purchase parameter in the MRPⅡ by integrating the 5 models into the
department, such as asking the employee of the purchase traditional MRPⅡ, and by integrating the Model of Resource
department the question like “which vehicle to choose to Balance in Material Requirement Plans into the MRPⅡ make
transport the purchased material?”, “what the weather would the ERP obtain the ability of time management in
like during the purchase period?” After having enough manufacturing management.
information this model need, it can forecast how many days
this purchase order would take. So after integrating this model REFERENCE
into the process of MRP, the purchase lead-time of one [1] M.N.Cawdery: “The lead time and inventory control problem” London

particular material become a dynamic parameter which Operational Research Quarterly Vol. 27 No.4, ii.

changes while the condition of material purchase changes. [2] Sunil Chopra, Peter Meindl: “Supply chain management-strategy,

The last model we want to integrate into the MRPⅡ planning, and operation”. Pearson Education Press.

process is the Model of Resource Balance in Material [3] David R. Anderson, Dennis J. Sweeney, Thomas A. Williams: “An

Requirement Plans. We combine this model with the CRP Introduction to Management Science (Quantitative approaches to decision

(capability resource planning). Combine this model with the Making) 11th Edition”. Thomson Press.

CRP, we now can find out the time requirement of every [4] SimonHaykin: “Neural Networks (Second edition). ” Pearson Press.

production activity, and find out when the production activity [5] Kong Chen,Yang Ge: MRPⅡ/ERP principles and application(second

begin or finish, then we can form the PERT networks which edition). Ting hua university press, 2006.

contain the time information of each production activity and [6] WanXia Mei,ShiHua Ma:The problem of lead-time reduce in the (Q,r)

information about the relation among production activities stock. Chinese Management Science. 2007
which are contained in the process of producing one particular
product. By using the PERT networks, the system can easily

389
2009 International Conference on Computer Engineering and Technology
A New Model for Classifying Inputs and Outputs and Evaluating the DMUs
Efficiency in DEA Based on Cobb-Douglas Production Function

S. M. Hatefi, F. Jolai, H. Kor, and H. Iranmanesh


Department of Industrial Engineering, College of Engineering
University of Tehran
Tehran, Iran
s_m_hatefi@yahoo.com, fjolai@ut.ac.ir, hkor@ut.ac.ir, hiranmanesh@ut.ac.ir

Abstract—In conventional data envelopment analysis it is multiplicative DEA models, Banker et al. [8] show how
assumed that the input versus output status of each chosen exact (numerically valued) elasticities of scale can be
performance measures is known. In some conditions finding a obtained from multiple input-output variables. Ruggiero [9]
statue of some variables from the point view of input or output developed an alternative methodology based on CCA and
is very difficult; these variables treat as both an input and
output and are called flexible measures. This paper proposes a
Cobb-Douglas production function to measure technical
new model based on Cobb- Douglas production function for efficiency. He provided marginal output elasticity and
classifying inputs and outputs and evaluating the performance marginal rates of output transformation by CCA approach.
of Decision making units by considering flexible measures. The Bardhan et al. [10] was jointed data envelopment analysis
model is capable to provide marginal output elasticities and and statistical regressions for Cobb-Douglas production
marginal rates of output transformation. The presented model function estimation and efficiency evaluation in simulation
is evaluated comparing with the recent model in the literature. study.
The result shows that the measure efficiencies of our model are In the conventional application of DEA, it is assumed
statistically closer to true efficiencies and have higher rank that the status of performance measures from point view of
correlation with true efficiencies. We illustrate the application
input or output is specified. But in some condition there are
of proposed model with the real data found in literature. Also
results obtained from simulated and real data show that there variables or measures that treat as both an input and output.
are high correlation between our model and the recent model. For example consider performance evaluation of bank
branch operations, such as discussed in Cook et al. [11,12].
Keywords-DEA; variable status; flexible measures; In this study output variables are the standard counter
performance evaluation transactions such as deposits and withdrawals, and input
variables are resources such as various staff types. In
I. INTRODUCTION evaluating performance of each bank branch to attract
Charnes et al. [1] were the first to describe the DEA investments, a measure such as the number of high value
model (the CCR model), and used a mathematical customers treats as both an input and output. From one view
programming model to identify the efficiency frontier based this factor is considered as proxy for future investment,
on the concept of the Pareto optimum when using multiple hence can be classified as an output. Also it can be input
measures. Following Charnes et al. , a number of different that aids the branch in generating its existing investment
DEA models have now appeared in the literature [2]. Recent portfolio. Such discussion can be made, as well, for
years have seen a great variety of applications of DEA. measures such as deposits. Examples of flexible measure in
Applications of DEA in hospitals, banks, maintenance crews evaluating performance of university, hospital and highway
can be seen in Cooper studies [3]. maintenance crew can be seen in [13].
There is a literature –albeit a relatively small one- which This paper presents a new model for classifying flexible
is directed to quantitative estimate of RTS and scale measures and evaluating DMUs based on Cobb-Douglas
elastisities in DEA models. Banker et al. [4] developed a production function. In this model flexible measure is
variable returns-to-scale (RTS) variation; the multiplicative classified to input or output as efficiency of each DMU is
model was developed by Charnes et al. [5] in which the data optimized. The model is capable to provide marginal output
are transformed using a logarithmic structure. Some authors elasticities and marginal rates of output transformation
survey qualitative characterization in the form of identifying while in standard DEA models there are problems to
whether RTS are increasing, decreasing or constant. obtaining marginal elasticity and marginal rate of
Examples are the treatment of scale elastisities in Førsund transformation.
[6] and Banker and Thrall [7]. However, Førsund [6] The rest of the paper is organized as follows. In section
showed that there are difficulties in using the standard DEA II the DEA model establishes based on Cobb-Douglas
models, to obtain scale elasticity estimates. But in production function. The model provides marginal output

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 390


DOI 10.1109/ICCET.2009.231
elasticities and marginal rates of output transformation using
model. In section III, three scenarios design based on . .
simulated data and variable status classifies by our model
and Cook and Zhu model. In section IV verification of
presented model surveys by statistical methods in 2 0
comparison with Cook and Zhu model. Section V illustrates
application of the model in the real practical data. 1,2, … ,
Conclusions are discussed in Section VI. 0,1 , , , 1 4

II. PROPOSED MODEL Note that since either 0 or 1 , then measure


We have proposed a Cobb-Douglas production function. will end up either as an output or an input. Thus, model (4)
In this production function, s output variables is produced for DMU0 permits that DMU to choose which is best for
by using of m inputs variables and relationship between each measure l, whether to designate it as an output or input.
inputs and outputs variables is as bellow: Model (4) is clearly nonlinear. But it can be linear by way of
the change of variables for each , imposing the
1 constraints:

That 1,2, … , is input variables and 0


1,2, … , is output variables and is an efficiency 1 5
index 0 1 . Where 1 if and only if production Where M is a large positive number. These linear integer
is technically efficient. Now we assume there are L factors restrictions capture the nonlinear expression ,
that these factors don’t specify the statues of variables from without actually having to directly specify it in the
the point of view input or output. These factors are called
optimization model. Note that if 1 then ,
flexible measures [14]. We extend Cobb-Douglas
production function considering flexible measures as and if 0 , then 0. By this way of the changing
bellow: variables model (4) converts to a mixed integer linear
program such as bellow:

2
In this formula 1,2, … , is the weight of L
factors. For any of L factors we define 0,1 as binary
variables. If 1 the factor of l is considered as an output 2
variable otherwise is considered as an input variable. By
taking of logarithm from two sides of Eq. (2) we have:
. .
2
2 0
3 1,2, … ,
0
1
In Eq. (3) the value of is negative. While λ treat
0,1 , , , 1 6
between (0, 1], Ln(λ) treat in (-∞,0].
Using Eq. (3) as objective function, a nonlinear
programming model is proposed for evaluating the
The value of DMUs efficiency is calculated as bellow:
performance of every DMUj (j=1, 2, …, n) as bellow:

2
2 7

391
And in this equation the amount of , , , are the
TABLE I. DATA GENERATIONA
coefficients of the objective function for optimizing the
efficiency of DMU0. Variable Type Distribution
Following Banker et al. [8] and Ruggiero [9] if we place X1 Input Uniform on [40,60]
X2 Input Uniform on [45,75]
, , in model (6), we can calculate the marginal X3 Input Uniform on [50,75]
output elasticities and marginal rate of output transformation Y1 Output Normal: 25, 6
for evaluating DMU0 from Eq. (7) as follow: Y2 Output Normal: 20, 9
Marginal output elasticity of input i in the production of Y3 Output NA
output j for DMU0 is as follow: U Efficiency Normal: 0, 0.15
a
All random numbers were generated using SPLUS. The efficiency component
g was generated as the value of 1-|U|, with the restriction g=1 for |U| > 0.4 . As a
, 8 result, 31 observations (31%) were technically efficient. NA represents not
applicable.

If in DMU0 is zero the marginal elasticity of input l in


the production of output r will calculate as follow: Obtained results show in the first scenario was
considered as a flexible measure. The results of proposed
, 9
model shows that this variable is considered as an input in
%89 of DMUs, but in Cook and Zhu model it is a input in
And the marginal rate of output transformation for %92 of DMUs. In the second scenario was considered as
outputs r and h in DMU0 is: a flexible measure and by using proposed model it is
considered as an output in the %96 of DMUs, but in Cook
, 10 and Zhu model it is considered as an output in the %86 of
DMUs.
If in DMU0 is 1, the marginal rate of output In the third scenario by using proposed model is
transformation for outputs r and l is: considered as an input variable in %91 of DMUs and y is
considered as an output variable in %92 of DMUs. But in
, 11 the Cook and Zhu model is considered as input in %89 of
One of the advantage of proposed model related to Cook DMUs and y in %78 of DMUs is considered as an output.
and Zhu model is that marginal elasticity of input (i) in the These results show that proposed model is classified
production of output (r), marginal elasticity of factor(l) in better flexible measure than Cook and Zhu model in the
production of output (r), marginal rate of output second and third scenarios.
transformation for outputs of r and h, and the marginal rate IV. MODEL VERIFICATION
of output transformation for outputs of r and l can be
calculated. In this section we use two methods for comparing the
efficiency of these two models (Proposed model and Cook
III.SIMULATED DATA and Zhu model). First we compare the rank correlation of
The simulated data is generated with S-PLUS software. measure efficiency, which was calculated by two models,
For this simulation, 31 DMUs (%31) were generated to be with true efficiency. Then we use the Wilcoxon signed
technically efficient with g=1, and 69 of DMUs (%69) are ranks test and Wilcoxon rank sum test for surveying the
inefficient with g<1. Assumed distributions and description measure efficiency from true efficiency. For more
of the variables are reported in table I. In this table have information about these statistical methods see [14].
assumed that the outputs of , are produced by A. Rank correlation
inputs of , by using of the following function: Here, using Spearman and Kendal Tau correlations, we
. .
12 calculate the correlation between measure efficiency and
For considering the verification of proposed model from true efficiency. The coefficient correlation between
the point of classifying the status of variable and evaluating calculated efficiency and true efficiencies in proposed
the performance of DMUs three scenarios are considered. In model and Cook and Zhu model are showed in table II. The
the first scenario which is an input variable is considered results show that in all of the scenarios measure efficiency
as a flexible measure. In the second scenario which is an of proposed model have higher correlations with true
output variable, is considered a flexible measure. And in efficiencies rather than Cook and Zhu model, also there are
third scenario x and y are considered as a flexible high correlation between measure efficiencies in proposed
measures. These three scenarios were run by proposed and Cook and Zhu model. For example in the first scenario,
model and Cook and Zhu model . Spearman and Kendal Tau correlation coefficients between

392
TABLE II. SPEARMAN'S RHO AND KENDALL'S TAU CORRELATION

Scenario no. Spearman's rho Kendall's tau


MEa model 6 ME C-Z ME model 6 ME C-Z
True Efficiency 0.638 0.348 0.551 0.266
1
ME model 6 0.780 0.632
True Efficiency 0.676 0.345 0.564 0.264
2
ME model 6 0.723 0.570
True Efficiency 0.587 0.328 0.498 0.252
3
ME model 6 0.715 0.566
a
ME presents measure efficiency
C-Z present Cook and Zhu model
All correlation are statistically significant at 0.001

Beasley’s analysis, this latter variable was treated as both an


input and output. The optimal d and the optimal value of
TABLE III. WILCOXON TESTS
measure efficiencies calculated in the proposed model and
Scen Test type Test statistic Decisiona P-value Cook and Zuh model.
ario Results showed that flexible variable in 20 cases of
1 signed-rank Z = -6.9352 Reject H0 0 DMUs is considered as an output variable and in 30 cases of
2 signed-rank Z = -6.9021 Reject H0 0
3 signed-rank Z = -6.9352 Reject H0 0 DMUs considered input variable in Cook and Zhu model.
1 rank sum Z = -2.2551 Reject H0 0.0121 These values for proposed model are 10 and 40 respectively,
2 rank sum Z = -2.2778 Reject H0 0.0114 so this variable is considered as an input in many DMUs.
3 rank sum Z = -2.2057 Reject H0 0.0137 The spearman and Kendal Tue correlation coefficients
a
H0 : Absolute difference between measure and true efficiency in proposed
model ≥Absolute difference between measure and true efficiency in Cook and between measure efficiencies in proposed model and Cook
Zhu model and Zhu model are 0.758 and 0.635 respectively that shows
H1 : Absolute difference between measure and true efficiency in proposed
model ≤ Absolute difference between measure and true efficiency in Cook and
there is a high correlation between them. This correlation is
Zhu model signified statistically at α =0.0001.
VI. CONCLUSION
measure efficiency and true efficiency for proposed model In conventional data envelopment analysis we assume
are 0.638 and 0.551 respectively. But these values for Cook that measure status from point view of input or output is
and Zhu model are 0.348 and 0.226 respectively. known. But in real word there are some performance
measures that treat as both an input and output and
B. Wilcoxon signed ranks and Wilcoxon rank sum test specifying of their status is difficult. In this paper we
Now, we calculate absolute difference between measure established new model based on Cobb-Douglas production
efficiency and true efficiency for every DMUj of the function for classifying variable status from point view of
proposed model, D , and the Cook and Zhu model D j input or output and evaluating the performance of decision
1,2, … ,100 . For comparing error of two models we making units. This model is capable to provide marginal
consider H : µD µD and H : µD µD . H shows that output elasticities and marginal rates of output
error of proposed model is greater than Cook and Zhu transformation while in standard DEA models there are
model and H shows that error of proposed model is lower problems to obtaining marginal elasticity and marginal rate
than Cook and Zhu model. We used Wilcoxon signed ranks of transformation. Verification of our model evaluated with
test and Wilcoxon rank sum test for evaluation these Simulated data in comparison with Cook and Zhu model.
hypothesis. Founding results are showed in table III. Results obtained from simulated data show that: 1) Measure
These results reject H0. In the other words the value of efficiencies calculated from proposed model are statistically
measure efficiency in proposed model is closer to true and significantly closer to true efficiencies. 2) Measure
efficiencies statistically. efficiencies obtained from our model have higher
correlation (Spearman and Kendal Tau rank Correlation)
V. APPLICATION OF MODEL IN REAL PRACTICAL DATA with true efficiencies than Cook and Zhu model. 3)
In this section we exerted proposed model on two series Proposed model is classified better flexible measure than
of real data and have compared the results with Cook and Cook and Zhu model in second and third scenarios and in
Zhu model. First series of data related to Beasley 1990 that first scenario results are almost similar. Also there are high
used in [13]. In this data there are two inputs, General rank correlation between efficiencies obtained from
Expenditure and Equipment Expenditure and three outputs, proposed model and Cook and Zhu model .
consisting of three types of students. The ‘‘flexible Application of presented model illustrated in two real
measure’’ here is the Research Income. We note that in practical data. Also results obtained from real data showed

393
that there are high correlation between presented model
and Cook and Zhu model.
REFERENCES
[1] Charnes, A., Cooper, W.W. and Rhodes, E., 1978,
Measuring the efficiency of decision-making units,
European Journal of Operational Research,2(6), 429–
444.
[2] Cooper, W.W., Seiford, L.M., and Tone, K., 2000, Data
Envelopment Analysis: A Comprehensive Text with
Models, Applications, References and DEA-Solver
Software, Kluwer Academic Publishers, Boston.
[3] Cooper, W.W., Seiford, L.M. and Zhu, J., 2004.
Handbook of Data Envelopment Analysis. Kluwer
Academic Publishers., Norwell, MA
[4] Banker, R.D., Charnes, A., Cooper, W.W., 1984. Some
models for estimating technical and scale in
efficiencies in data envelopment analysis. Management
Science, 30 (9), 1078–1092.
[5] Charnes, A., Cooper, W.W., Seiford, L. and Stutz, J.,
1982. A multiplicative model for efficiency analysis.,
Socio-Economic Planning Sciences, 6, 223–224.
[6] Førsund, F.R., 1996. On the calculation of scale
elasticities in DEA models. Journal of Productivity
Analysis, 7, 283–302
[7] Banker, R.D. and Thrall, R.M., 1992, Estimation of
returns to scale using Data Envelopment Analysis.
European Journal of Operational Research, 62, 74–84.
[8] Banker, R.D., Cooper, W.W., Seiford, L. M., Thrall, R.
M. and Zhu , J., 2004, Returns to scale in DEA
Models., European Journal of Operational Research,
154, 345–362
[9] Ruggiero, J. , 1998, A new approach for technical
efficiency estimation in multiple output production,
European Journal of Operational Research, 111, 369–
380
[10] Bardhan, I. R, Cooper, W. W. and Kumbhakar, S. c.,
1998, A Simulation Study of Joint Uses of Data
Envelopment Analysis and Statistical Regressions for
Production Function Estimation and Efficiency
Evaluation, Journal of Productivity Analysis, 9, 249–
278
[11] Cook, W.D., Hababou, M., Tuenter, H., 2000.
Multicomponent efficiency measurement and shared
inputs in data envelopment analysis: An application to
sales and service performance in bank branches.
Journal of Productivity Analysis 14(3), 209–224.
[12] Cook, W.D., Hababou, M., 2001. Sales performance
measurement in bank branches. Omega 29, 299–307.
[13] Cook, W. D., Zhu, J., 2007, Classifying inputs and
outputs in data envelopment analysis, European
Journal of Operational Research, 180, 692–699
[14] Sheskin, D. , 2000, Handbook of parametric and
nonparametric statistical procedures, Florida, CRC
Press.

394
2009 International Conference on Computer Engineering and Technology

The Analysis and Improvement of the Price Forecast Model Based on Fractal
Theory

CUI Herui YANG Li


Department of Economics and Management, North China Electric Power Universiy, Baoding,
071003, China
cuiherui1967@126.com

Abstract whole is made up by the part, people can understand


the whole through part. One of the fractal theory
This paper discusses the basic principle of the philosophical foundations is that the unit and element
fractal theory and the basic thinking of how to use it to of the system contains the property and information of
forecast the electricity price, then build electricity the whole system. [1][2][3]
price forecasting model and make a analysis on the Now many economists utilize the fractal theory to
prediction error to put forward improvement. Before explain the complicated and diversified economic
the application of fractal mode in the price forecast phenomena, for example, the fractal dimension
field, there is a need to do R/S analysis of the data significance of the economical elastic, the fractal
series to derive its index Hurst; And in forecast dimension calculation of the change of price, the
process, use variable dimension fractal parameters fractals and fractal dimensions of national income, the
calculated by curve fitting technique instead of negative power distribution of capital and the property,
constant dimension fractal parameters. the R/S analysis of the economic system’s change
tendency, the fractal dimension measurement of the
1. Introduction economic chaos, all these new achievements have
infused new vigor for the economic. In domestic, many
Fractal geometry is already become a new important scholars used the fractal model to forecast the price of
discipline after developing for more than 20 years stock, electric power, grain and other fashionable
since Mandelbrot brings forward fundamental theory commodity. [4][5][6][7] However the established
of fractal geometry in 1970's, which has been widely models are not all suitable for the price forecasting, in
used in a lot of fields such as physics, chemistry, this article we discuss one commonly used fractal
biology, material science, computer science, model, point out its flaw and the possible
astronomy, meteorological phenomena, economy, improvement.
management science and art.
Taking non-regular and nonlinear thing as research 2. Analysis on the prediction error of
object, studying on the regularity, hierarchy and scale fractal model
invariance hidden in complex natural and social
phenomenon, crossing the natural science, social 2.1. Description of the commonly used fractal
science and thinking science, fractal theory is a new model
method to study on the complex object. Based on the
self-similarity between part and whole, fractal theory The price forecasting models based on fractal
establishes the global property from the part, along the theory,
direction from microscopic to macroscopic. This include the models used fractal theory only and the
theory takes the relationship between regional and models used the combination of fractal theory and
global as research object, emphasizes the global's other methods such as wavelet analysis, vector
dependence to part, and searches for the bridge through machine and so on. These models have a common
it can deduce and transient from part to whole. As the basement as follow.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 395


DOI 10.1109/ICCET.2009.75
2.1.1. Related formula of fractal distribution. Power functional relationship, so can not get the concrete
exponent distribution can be used to describe and form. At this time, it must to make a series of
express fractal distribution. transformations called cumulative sum, and choose a
C ⑴ transformation, through which the data can be in fairly
N= D good agreement with fractal distribution model, so can
r
In the formula: be treated with fractal distribution. Transformation
r—Characteristic Linearity, such as time, length, etc; method as following:
N—related object's number, such as price, index, First, drawing the initial data point,(Ni,ri) (i
etc; =1,2,…,n), on the double logarithm coordinates, in
C—undetermined constants; general case, these data points cannot be in fairly good
D—fractal dimension. agreement with fractal distribution model, so ,
Generally, the numbering of time is taken as “r”, arranging these data into a basic series.
r1=1,and rn=n, and electricity price value as “N”, N1 is {Ni} = {N1,N2,N3…} (i =1,2,…,n) ⑹
equal to electricity price value when r1=1, …and Nn is Based on the above basic series, other series can be
equal to electricity price value when rn=n. constructed. Such as to construct the first order
At present, in the general application of fractal cumulative sum series S1, just need to make S11=
method, D is constant, and so this type of fractal N1,S12= N1+ N2,S13= N1+N2+N3,and so on. The Second
method is called constant dimension fractal, Order, third order can be made as the same, that is:
manifested as a line in double logarithm coordinate {S1i}= {N1, N1+N2, N1+N2+N3…} (i =1,2,…,n) ⑺
system. Any two data points (Ni,ri)and(Nj,rj) on the {S2i} = {S11,S11+S12,S11+ S12+ S13…}(i =1,2,…,n) ⑻
straight line determine the fractal parameters, namely Second, establish the fractal model of the cumulative
fractal dimension D and constant C of this line. sum series. Taking the first order cumulative sum
⎡N ⎤ series S1 as example, draw the data (S1i,ri)(i
ln ⎢ i ⎥ =1,2,…,n)on the double logarithm coordinates to get a
⎢ N j ⎥ ln N i − ln N j ⑵
D= ⎣ ⎦ = discrete fractal distribution model. According to the n
⎡r ⎤ ln rj − ln ri
data points, what obtained is a segment constant
ln ⎢ i ⎥
⎣⎢ rj ⎦⎥ dimension fractal model made up of n-1 line, and
calculating the fractal parameters of every line
C = NirD ⑶
according to formula and .
As negative number can not take logarithm , there is Third, choose the transformation with best result,
a need to add a constant to all the N value to eliminate and determine the fractal parameters correspondingly.
the negative number, in another word, it must make a Drawing the data points of each order cumulative sum
translation for all the N value firstly, when some of Ni series on the double logarithm coordinates and
are negative numbers. Sometimes, such translation is comparing with a fractal distribution model, then can
made firstly for a better analysis and predication. choose a transformation with best result, and determine
This paper uses variable dimension fractal model to the fractal parameters correspondingly.
get over the weakness of the above constant dimension Finally, determine the fractal distribution model,
fractal method, that it is unable to deal with the non- forecast using extrapolation calculation.
linear functional relationship in double logarithm
coordinate system. 2.2. Analysis on the prediction error
Now it will show that any functional relationship
N=f(R), between N and R, can be transformed into In rectangular coordinate system, if take lnS series’
fractal distribution N = C , make: logarithm values as longitudinal axis, and take lnr
rD series’ logarithm values as lateral axis, in essence, the
C ⑷ above model’ parameters D, is the slope between lnS
f ( R) =
rD and lnr. There is a implied assumption of the model
So, that lnS and lnr shows a nearly perfect linear
r = [C f ( R)]
1D
⑸ relationship, and the fractal parameters of every line
That is, through the transformation above, R gets the segment have no difference. However, this hypothesis
form of fractal distribution. is in fact untenable. Although lnS and lnr shows linear
2.1.2. Transformation Although any functional relationship grossly, but still can not meet the stringent
relationship can be transformed into the form of fractal assumptions. The difference between the fractal
distribution, in fact, in the practical application, what parameters(as can be seen from the table 1,D and C
have known are just some data points, not the series) is small, but there is no any pair of

396
parameters(D and C) can effective on behalf of the enhance persistent sequence, and have the property of
whole’s fractal parameters, and this is the root causes fractal.
of the forecast model’s error.
In addition, there are also problems of its own 3.2. Prediction of the fractal parameters
algorithm, and the most critical one is that, according
to the chosen D and C, using N = C to forecast, D According to the analysis of the causes of
rD deviations, correspondingly, improvement of the
and C’ deviation will be enlarged in several times, model from the two aspects can be made: one, to raise
duing to the existence of power and the multiplication. the accuracy of fractal parameters and the other is to
The above two reasons make the existence of large change the algorithm of N = C . This paper will use
deviations of the forecast result. In Table 1, it can rD
clearly see. the first method to make improvement of the above
mentioned model.
3. Improvement No matter D and C are calculated by what
method(calculated by least square method or of just a
certain line segment’s), when using the above process
3.1. R/S analysis of projections, it always takes D and C unchanged, In
fact, it can find that D value presents monotonically
Before the construction of the fractal model to
increasing tendency, while C value presents monotone
predict price, the first must to do is to judge whether
decreasing tendency with the increase of r, as showed
the data has the fractal property and can use the fractal
in table 1.Therefore, the thinking is, first, establish the
model. This paper uses the R/S analysis, and it’s
functional relationship between r values and the fractal
theoretical calculations are as follows.
parameters to predict the D and C values of each phase,
Take {Xi}(i =1,2,…,n)as a time series, the average
_
so as to make it more approximate to real values and
of it is X ,and the standard deviation is S. improve its accuracy, and accord to N = C to forecast
_
1 n rD
X = ∑Xi
n i =1
(9)
prices, rather than the directly use of fixed fractal
2 parameters.
1 n⎛ _

S= ∑ ⎜ Xi − X ⎟
n i =1 ⎝ ⎠
(10)
3.3. Empirical analysis
X(t,n) is cumulative deviation,
Take one commodity as an example.
t
⎛ _

X (t , n ) = ∑ ⎜ X i − X ⎟ (11) First, choose the price of the commodity in 100
i =1 ⎝ ⎠ trading day to construct the test sequence. Through the
Definite the difference between the maximum and R/S analysis get the Hurst index which is 0.63.As 0.5<
the minimum obtained by the formula as R, Hurst index≤1,it implies that today's events have a
R = max X (t , n) − min X (t , n) (12) true impact on tomorrow, the data shows the fractal
1≤ t ≤ n 1≤ t ≤ n characteristics and can use fractal model.
And the rescaled range analysis is Then, select the second-order cumulative series to
(R/ S)n = (c × n)H (13)
construct the forecasting model. In the table 1, fractal
parameters are calculated by the formula and .
Calculate the logarithm of the above equality, Form the table 1, what can found is:
Log(R / S )n = Log(a ) + H × Log(n) (14) Every line segment’s fractal parameters including D
The slope between Log(R/S) and Log(n) obtained and C, has remarkable difference;
through the linear regression is Hurst index. The D value presents monotonically increasing tendency,
introduction of Hurst index is to determine the random while C value presents monotone decreasing tendency
distribution property and the fractal property of the with the increase of r.
data sequence. This paper calculates the D and C value through
When H=0.5, time series show the property of curve fitting analysis according to the
random and independent, and that is a sequence of TABLECURCER and SCILAB.
random walk. When 0 ≤ H <0.5, the time series is anti- Curve equation of r and D:
persistence sequence, also known as "mean eversion". y=(a+cx0.5+ex+gx1.5)/(1+bx0.5+dx+fx1.5+hx2) ⒂
When 0.5<H ≤1, the time series show the trend of an

397
5. Conclusions
Table 2. Parameters of r and D curve equation
In the area of price forecast, fractal theory will be
a b c
broad prospects, but as the analysis in this paper, the
-0.03614436 -2.69000731 0.210340011 commonly used original prediction model’s precision
d e f is very poor, and in such circumstances, this paper put
forward and experienced an effective method to
2.732972396 -0.26390564 -1.25104128
improve the general model.
g h Firstly, using the R/S analysis method, this paper
0.095690633 0.219910658 analyzes the fractal characteristic of electricity price to
Curve equation of r and C: determine whether the price data has the fractal feature
or not. Only when 0.5<Hurst index≤1, it is able to use
y=(a+clnx+e(lnx)2+g(lnx)3+i(lnx)4)/(1+blnx+d(lnx) fractal model.
2+f(lnx)3+h(lnx)4) ⒃ Then, different from the previous model, this article
does not use the constant dimension fractal model, but
instead with the variable dimension fractal model. This
Table 3. Parameters of r and C curve equation paper tries to calculate the D and C value through
a b c curve fitting analysis according to the
TABLECURCER and SCILAB to improve forecast
128.7510436 -8.03692232 -884.548896
accuracy. Facts have proved that, compared to the
d e f original model, the improved forecasting model clearly
28.23779273 3906.908953 -5.20079553 has a better forecast accuracy.
g h i
-5596.01211 -48.6888513 2694.019303
References
j [1]Yin Yuliang, Li Peizheng,Kang Yuyun,Gu Zonglei, The
45.37515406 Development and Research Status of Fractal Theory ,Science
By substitution of r=11~15 into the above two curve Information,No.15,2007(In Chinese)
equations ⒂ and ⒃ , can obtain the D and C value, [2]Li Peng, The Development and Application of Fractal
and S and N value calculated by equation (1) Theory, Collected Works Science and Education, No.1,
correspondingly. 2008(In Chinese)

4. Comparisons [3] Liu Ying , Hu Min, She Guiying, Li Xiaobing, Liu


Xiaolin, Fractal Theory and Its Application, Jiangxi Science,
Using the improved fractal model and the general Vol.2415, No.24,2006(In Chinese)
fractal model to do predict commodity prices as r = 11 [4]Lu Fangyuan, Fractal Theory and Its Application in
~ 15. Economic Management, Journal of Henan College of
Financial Management Cadres, No. 3, 2004(In Chinese)
4.1. The general fractal model
[5]Liu Xiaocheng,Wang Yanming, Oil Price Forecast Based
D = - 1.53643797 , C = 40.12727517 , and on Fractal Theory, Journal of Xi'an Shiyou University,
Vol.15, No.4,2006(In Chinese)
according to the formula ①, S = C/rD =
40.12727517×r1.53643797, and the prediction result as [6]Zhang Ying,Lu Ying, Yao Yan, The Price Forecast of
table 4. Fashion Commodity Based on Fractal Theory, Journal of
Shengyang University of Technology(Social Science
4.2. The improved fractal model Edition), Vol.1,No.2, 2008(In Chinese)

The predicted results show in table 5. [7]Liu Haibo,Yi Dongyun, The Research of Stock Price
Forecast Basing on Wavelet Analysis and Fractal Theory,
Through the comparison between prediction value
Statistics and Advisory, No.5,2006(In Chinese)
and real value of the two models, it can find that the
improved fractal forecasting methods is clearly better [8]Mao Fengmei, The Theoretical Calculations of Fractal
than the original prediction model. Dimension in the Financial System Fluctuations Based on

398
Fractal theory,Mathematics in Practice and Theory, Vol.36, Foreign Economic Relations & Trade, No.7,2005(In
No.12,2006(In Chinese) Chinese)

[9]Huang Zhao, Initial Analysis on Shanghai Stock Market [11]Meng Li,Wang Yue,Zhao Jing, The Foreign Exchange
Based on Fractal theory, Accounting Research, No.12.2007 Market Forecast Based on Fractal Theory,Journal of
(In Chinese) Shengyang University of Technology(Social Science
Edition), Vol.1,No.2, 2008(In Chinese)
[10]Chen zhao,Wang Guocheng, The Research and
Application of Chaos Theory and Fractal Dimension, HLJ

Table 1. The fractal parameters


Every line segment’ s fractal fractal parameters with least square
r N s2 parameters method
D C D C
1 21 191 / /
2 22 234 -0.292935892 191
3 20 297 -0.587993933 155.6725525
4 23 383 -0.883971838 112.4591241
5 25 494 -1.140523786 78.80159956
6 20 625 -1.29011696 61.94038379
7 21 777 -1.412181256 49.77249451
8 22 951 -1.513304911 40.88179959 -1.53643797 40.12727517
9 24 1149 -1.605776369 33.73028082
10 23 1370 -1.669683751 29.31141716

Table 4. Prediction result using the general fractal model


r 11 12 13 14 15
S2 1604.4385 1834.2136 2074.5381 2325.0287 2585.3427
Prediction N 13.4385 -4.6634 10.5494 10.1661 9.8234
Real N 24 22 25 21 22

Table 5. Prediction result using the improved fractal model


r 11 12 13 14 15
D 1.7243768 1.7650208 1.7952154 1.8169338 1.8318153
C 25.819216 23.451076 21.782076 20.596113 19.745076
S2 1613.2305 1883.3894 2177.6041 2490.1415 2817.3498
Prediction N 22.2305 23.3894 28.6041 24.1415 17.3498
Real N 24 22 25 21 22

399
2009 International Conference on Computer Engineering and Technology

A Flash-Based Mobile Learning System


for Learning English as a Second Language
Firouz B. Anaraki
College of Internet Distance Education, Assumption University
Bangkok, Thailand
firouz@cide.au.edu

Abstract— This paper explains the development of a Flash-Based quizzes had great potential if provided in small chunks
mobile learning system for learning English as a second language suitable for the small screen sizes of mobile devices.
(FML4ESL). Adobe Flash CS3 was used to develop this system
which works on smart mobile phones and PDAs that support Another project at a Japanese university utilized SMS to
Adobe Flash Lite. Twelve English lessons were developed for this
deliver English vocabulary and their meanings to their
system. University students at Assumption University tried out
this system using their mobile devices for a period of 4 weeks. A students [3]. They sent short lessons on separate and discrete
pretest, posttest, and surveys were used to evaluate the chunks to their students’ mobile devices 3 times a day. Each
effectiveness and usability of this system. lesson introduced a couple of new words daily and the new
words were recycled in subsequent lessons. Students were
tested biweekly and compared to groups that received
Keywords— Mobile English Learning
identical lessons by web and on paper. The results indicated
I. INTRODUCTION that the SMS students learned over twice the number of
vocabulary words as the web students, and that SMS students
Learning and the lifelong pursue of knowledge has become
improved their scores by almost twice as much as students
one of the most essential activities in the current knowledge-
who had received their lessons on paper.
based economy, which is characterized by information age,
globalization, knowledge acquisition and transfer, and the
One more project in Japan utilized mobile phones
information and communication technology revolution.
that played short audio clips in English to help with
Globalization requires new methods of knowledge acquisition
pronunciation for English as a Second Language (ESL)
and to convey new skills and tools [1].
students [4]. The results indicated that that the learning
The traditional learning context is experiencing radical content should be in short learning units or sessions. For
changes and challenges. There are often occasions when instance, a unit on language vocabulary would best fit the
people want to learn exactly what they are interested in or capabilities of mobile devices for learning in a brief period,
what they need to learn, without time and location boundaries. such as around 5 minutes. Another conclusion that was
Learners are demanding for better and improved access and considered very useful was to provide customization of
convenience at the lower costs and with the direct application learning material for individual or group needs and learning
of contents to their working environment and needs. experience.

Mobile technology is introducing new approaches to


III. FLASH-BASED MOBILE LEARNING SYSTEM
learning due to the features that are defined by a number of
characteristics. They support learning activities that need just- The purpose of this research was to design and develop a
in-time (JiT) and true learning on demand. flash-based mobile learning system for learning English as a
second language using mobile devices capable of playing
Adobe Flash Lite. Most researchers in language learning have
II. LITERATURE REVIEW mainly focused on a single medium, i.e. SMS (text) or MP3
One of the first projects where mobile phones were used in (voice), to deliver the content to learners. This researcher
language learning was developed by the Stanford Learning wanted to develop a multimedia mode of delivery of the
Lab in 2000 [2]. They basically developed Spanish language content to learners. This researcher with the assistance from
learning using both voice that could be played on mobile couple of professional ESL lecturers developed 12 mobile
phones and emails to support the study material. They English lessons to be used by a sample population of students
provided voice for vocabulary practice and pronunciation, owning a Flash-based mobile phone or a PDA at Assumption
word and phrase translation, and quizzes to their students. University.
Their results indicated that voice vocabulary lessons and

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 400


DOI 10.1109/ICCET.2009.183
The objectives of the Flash–based English lessons for
mobile devices were as follows:
• Flash programming allows full control of the mobile
device and the lessons by the user.
• Students can listen to native speakers reading a passage
or a lesson.
• While listening, students can see and read the text on
the screen of their mobile device.
• Students can also learn spelling, grammar, and rules for
conversation.
• There are exercises in each unit (lesson) asking
students to practice what they have learned.

IV. DEVELOPMENT OF FML4ESL Fig. 1 Optimization of text under Adobe Flash


Very similar to the Learning Management System (LMS) The sound associated with the text is in MP3 format with a
for the Internet based eLearning systems, the Mobile Learning bit rate of 48 kilo bits per second (kbps) and the best quality
Systems (FML4ESL) needs to contain 2 main components, available under Adobe Flash. The higher the bit rate the larger
namely the content (learning material) and the interface with the file size is; the quality does not affect the file size but it
the learner. Currently this system has no management features affects the loading time of the content into the mobile device.
to be called Mobile Learning Management System. This The small delay (1 to 2 seconds) is acceptable for these
prototype system, however, could be considered as an lessons as it provides a couple of seconds to the learner to read
embryonic model for a fuller version with management of and meditate upon the text.
user activities. In this section the two components of
FML4ESL are presented and discussed. The various combinations of bit rates and quality were
tested among 11 participants to select the best combination of
The content material should be optimized for the sound quality. The only limitation in this selection was the file
small screens of mobile devices, usually between 2 to 3.5 size, the researcher wanted to keep the file size for a lesson to
inches. The contents should be grouped into small chunks of be around 1 megabyte (MB) in order that the older mobile
data. Each chunk then could be displayed on the screen of the phones could play them the same as newer ones. Figure 2
mobile device. The content could be multimedia material; for shows the selection of sound quality for every slide.
this research the researcher is making use of text and pictures
to display the contents as learning material and the voice of
native speaker for listening purpose. As the developed Flash-
Based Mobile Learning System is intended to be used for
learning English as a second language for the trial purpose, it
would be useful to show the pictures of English nouns or
actions for better understanding of the meaning of English
words by showing their pictures.

The resolution of most modern mobile devices is


around 240x320 pixels. This researcher optimized the texts of
all the English lessons for the resolution of 240x320 pixels.
Mobile devices with lower resolutions display the text with
less clarity or sharpness, though still legible. The contrast and
brightness could be controlled by the user through mobile
device features. Figure 1displays how the content is optimized
for a screen resolution of 240x320 pixels on Flash CS3
development platform.

Fig. 2 Optimization of sound under Adobe Flash

The Flash-Based Mobile Learning System has a component


that controls the functions of a mobile device and the

401
interfaces with the learner. To provide the best functionality
and user interface to learners, the researcher consulted with
ESL lecturer who provided the contents and also a couple of
technology experts to find out the essential functions that
needed to be provided. Below are some recommendations
from experts.

The learner should be able to select a lesson, be able to play


a lesson slide by slide, and at the end of each slide, the learner
should have a choice to repeat the same slide or be able to go
forward to the next slide. At the end of a lesson (the last slide), Fig.5 Action script for the control layer for the last slide of a lesson
the learner can decide to repeat the same lesson from the
beginning all over again or simply quit the lesson and return
back to the normal mode of operation of the mobile device. The prototype system was developed using Adobe Flash
CS3 package under Windows Vista operating System. The
Based on the above recommendations, this researcher developed Flash Mobile Learning System for Learning
decided to divide a slide into 4 distinct layers as shown in English as a Second Language (FML4ESL) was in SWF file
figure 3. format which can be played on any computer, including PCs,
Macintosh, Linux systems or any Flash enabled mobile
devices. By limiting each lesson to 8-10 slides, the SWF are
around 1 MB which could be played on most mobile devices.
Figure 6 displays a slide of a lesson on a mobile device.

Fig.3 The 4 layers of a slide in a unit (lesson)

As shown in figure 3, each slide of a lesson comprises 4


layers. The first layer, Layer p, holds the text and the picture
of the content on any slide. The second layer, the s layer,
contains the MP3 audio sound of the lesson which starts about
2 seconds after the text is displayed on the screen. The third
layer, the layer e, is an action script which is executed at the
end of each slide. This action script basically stops the slide
from going further. The last layer, the layer c, is the control
layer that controls the functionality of the knob on mobile
device. The action script for this control layer is shown on
figure 4. Fig.6 A slide of a lesson on a mobile phone

V. TRYING OUT THE FML4ESL


In order to conduct this research the author designed an
LMS website based on open source Moodle on one of the
servers at the university. Information about this research and
mobile English learning was provided on this LMS. Students
could apply to join this research online. Pretest, pre-survey,
posttest, post-survey were placed on this server.

Fig.4 Action script for the control layer for controlling the knob
To attract students to participate in this research, a banner
was placed on the home page of the university website with a
link to the Moodle site, and posters were placed at various
This action script controls the left and the right movement schools at the university inviting students to join and to
of the knob on mobile devices. The left click causes the same participate in this research. The requirement for participating
slide to be replayed and the right click causes the next slide to in this research was to accomplish all the components of the
be continued. All slides follow the same logic except the last research which included:
slide in the lesson. The action script for the last slide is shown • Answering to a pre-survey
in figure 5.

402
• Taking an online quiz (pretest) developed by the
content expert which had 20 questions and a time limit
of 20 minutes. Each question scored 1 point
• Downloading 3 lessons per week as provided and
listening to these lessons as often as possible during the
week for a total period of 4 weeks.
• Taking the same online quiz (posttest).
• Answering to a different survey (post-survey)

To encourage students to join and complete all the


requirements of this research, 10 gift vouchers for a values of Fig.7 Ranking of factors for mobile English learning
approximately US$ 20 each were provided and later were
given to 10 of the participants at random. A total of 182 filled As shown in figure 7, learning at any place, lecturer’s
the online application to join the research and most of them pronunciation, and learning at any time are the factors that are
answered the pre-survey and/or took the pretest. This most important for mobile English learning. Ease of use and
researcher was in touch with the participants through the learning at any pace are also two other factors.
Moodle forum and provided necessary information and
guidelines to them. Some students came to the office of the Another question in the pre-survey asked the participants to
researcher to solve their technical problems, i.e. downloading rank (1 to 10) their English proficiency skills. Figure 8 shows
or synchronizing problems of transferring the Flash lessons the responses of the 76 participants who also finished the
(swf) to their mobile devices. Some students needed help to posttest and post-survey.
install the Flash Lite to their mobile devices. Most questions
were answered through the forum of the Moodle.

At the end of the 4 weeks, participants were requested to


take the posttest and answer to the post-survey. Finally 76 of
participants completed all the components of the research.
This sample population represented the population of
university students. They were from various schools in the
university from freshmen to seniors with various degrees of
English proficiency. Table 1 shows the descriptive data about
the participants.
Fig.8 Ranking of English proficiency skills before trying out
TABLE I
DESCRIPTIVE DATA ABOUT PARTICIPANTS After the 4-week of trying out of the lessons on their mobile
devices, participants were asked the same question in the post-
N Min. Max. Mean Std. Dev. survey. Figure 9 shows the response of the same 76 who
Pretest 76 4.00 17.00 10.74 3.18 finished all the components of the research.
Pretime 76 08:00 19:45 12:31 02:24
Posttest 76 10.00 20.00 16.50 2.98
Posttime 76 06:17 17:01 11:01 02:03

The one-way repeated-measure Analysis of Variances


(ANOVA) was used to test the data collected and to evaluate
the effectiveness of the Flash-based mobile English learning.
The standard univariate ANOVA indicates a significant time
effect, F(2,75) = 311.44, p < .01. This indicates a significant
improvement among all participants in this research.

Besides pretest and postest, there were a pre-survey and a


post-survey to evaluate the students’ attitude towards mobile Fig.9 Ranking of English proficiency skills after trying out
English learning. One of the question in the pre-survey asked
participants to rank (1 to 10) the importance of the 8 factors in When figure 9 is compared with figure 8, participants felt
learning English using mobile devices. Figure 7 displays the improvements in all 6 levels of the English proficiency skills.
rankings.

403
In the post-survey they were asked to rank (1-10) the impact learn”, “technologically advanced”, and “good for listening
of Flash-based mobile learning on their English proficiency and pronunciation improvements”. Their dislikes were “not
skills. Figure 10 displays their responses. having enough lessons”, “the Flash-based mobile learning was
not available for all models of mobile devices”, and “not
being able to record their voice on the mobile device to
answer the questions.”

VI. CONCLUSIONS
The major findings of these research as follows:

1) Majority of students at Assumption University have a


positive attitude towards mobile learning and are
enthusiastic to learn English using their mobile
Fig.10 The impact of mobile English learning on participants devices.
2) A Flash-Based mobile learning system is best
As shown in figure 10, participants felt the most impact of optimized with an audio bit rate of 48 Kbps and the
mobile English learning has been on their pronunciation quality set to ‘best’.
followed by listening skills and conversation. There have been 3) The same Flash-Based mobile learning system could
impacts in all levels of their English proficiency of be also utilized for learning other languages.
participants. 4) Smart mobile phones and PDAs could have a
One important feature of the Flash-based mobile learning positive effect in learning English as a second
system is its multimedia capability, i.e. users can read the text language at all levels of English learning.
on their mobile devices screens while listening to the same 5) Multimedia features of mobile English learning are
text spoken by a native speaker. This researcher wanted to most effective in English pronunciation, listening and
explore if this feature was useful to participants. One of the reading comprehension.
questions in the post-survey asked participants if this feature 6) Convenience and just-in-time learning features of
of being able to read the text while listening was helpful to mLearning make it ideal for learning foreign
them. Figure 11 displays their replies. languages.
7) The multimedia features of mLearning make
language learning more effective.
8) Students are willing to pay for mobile lessons for
their mobile lessons.
9) Mobile English learning is at its best in an hybrid
mode when supplemented with traditional English
learning.

REFERENCES
[1] Adam, N., Awerbuch, B., Slonim, J., Wegner, P., and Yesha, Y. (1997).
“Globalizing business, education, culture through the Internet”.
Communications of the ACM, 40(2), 115-121.
[2] Brown, E. (Ed.) (2001, January 8). “Mobile learning explorations at the
Stanford Learning Lab”. Speaking of Computers, 55. Stanford, CA:
Fig.11 Multimedia feature helpful? Board of Trustees of the Leland Stanford Junior University.
http://sll.stanford.edu/projects/tomprof/newtomprof/postings/289.html
In the post-survey, there were 2 open ended questions to [3] Thornton, P., & Houser, C. (2005). Using mobile phones in English
seek the opinions of participants as they wished to express it. Education in Japan. Journal of Computer Assisted Learning, 21, 217-
228.
One question asked participants to express their “likes” and [4] McNicol, T. (2004). ‘‘Language e-learning on the move”.
another question about their “dislikes” of using the Flash- http://ojr.org/japan/wireless/1080854640.php [An online article,
based mobile learning to learn English. Their likes included Retrieved on December 7, 2007]
“convenience”, “effective”, “just-in-time learning”, “easy to

404
2009 International Conference on Computer Engineering and Technology

Recognition of Trade Barrier Based on General RBF Neural Network

Yu Zhao Miaomiao Yang Chunjie Qi


College of Economics & Management, College of Economics & Management, College of Economics & Management,
Huazhong Agricultural University, Huazhong Agricultural University, Huazhong Agricultural University,
HZAU HZAU HZAU
Wuhan, Hubei, 430070, P.R. China, Wuhan, Hubei, 430070, P.R. China, Wuhan, Hubei, 430070, P.R. China,
E-mail:math052360@gmail.com. E-mail:ymm19850815@163.com. E-mail: gemz10186@126.com.

Abstract—Trade barriers correct externalities, but distort RBF network to evaluate personal credit, and measured the
trade as well, which brings negative effect on international amount of neurons in hidden layer and the center of the
distribution of resources. Study on how to recognize there are radial basis function by introducing maximum input
trade barriers or would-be threat of trade barriers in sensitivity in training, and designed Sen-RBF to recognize
international trade is of great necessity. Based on previous the two types of patterns [6]. Liang Wuke combined rough
studies, taking horticultural products as an example, this set theory and RBF neural network to design a Rough
paper designs a general RBF neural network model to detect set-RBF neural network for examining the breakdown in
whether there are trade barriers among the main destinations hydro-turbine generating unit [7]. He Tao and Zhou
of Chinese horticultural products. The study shows that
Zheng’ou, by using higher order statistics and RBF neural
general RBF neural network can identify trade barriers
network, raised a new method to recognize the modulation
correctly with an error probability about 10%, so it is a helpful
tool for identification of trade barriers.
type of signals based on statistics pattern with higher
efficiency and accuracy, which is specific to digital
Keywords-pattern recognition; trade barrier; RBF neural modulation of communication signals [8]. Zhao Liaoying
network; Chinese horticultural products estimated generic conditional probability density with RBF
network, and classified data with Bayes classification. The
I. INTRODUCTION results showed that the method has a fast classification speed
with a similar recognition rate with Support Vector
Trade barriers correct externalities, but distort trade as
Machines [9]. This paper combines those references and the
well, which brings negative effect on international
practical problems and designs the general RBF network
distribution of resources. After China’s accession into WTO,
model.
trade friction happens repeatedly. Patten recognition can help
to identify whether there is any threat from trade barriers so II. MODEL AND ITS IMPROVEMENT
as to take countermeasure. However, present artificial
intelligence technology is seldom applied into researches on Radial Basis Function Network is a forward neural
international trade friction. In the field of pattern recognition, network with powerful function in vector classification and
the increasing complexity of patterns requires better pattern calculation. RBF network is composed of input layer, hidden
recognition method. And neural network shows great layer and output layer. The signal transmits from the input
advantage in parallelizability and fault-tolerance in this field. layer to radial basis layer and brings out partial effect under
The application of neural network in pattern recognition is to the effect of kernel function, and then form linear out in
match the pattern with eigenvector and construct network output level.
model to classify samples into correct sample spaces. The general RBF network uses radial basis function as
Neural network has two functions: feature extraction and the basis of hidden layer. Hidden layer changes input vectors
statistical classification [1]. Gao Daqi and Yang Genxing and transmits low-dimensional pattern into high-dimensional
(2001) raised the idea that, by learning, the center and width pattern so that the linear inseparable problem in former
of Gaussian kernel function should automatically determine pattern become separable in later pattern. General RBF
and design IRBF consisting RBF network and LBF network network is different with regularized RBF network. First, the
[2]. Han Min and Cui Pisuo (2006) put forward a dynamic amount of radial basis function M is unequal to the amount
RBF training algorithm applied to pattern recognition, which of samples P, M<<P. Second, the center of radial basis
used regional shining-upon error function and the novelty of function is not restricted to the data point, but subjected to
resource allocation network (RAN) to dynamically adjust its training algorithm. Third, diffusion constants of radial basis
hidden nodes in order to ensure more efficient pattern are not unified which is also subjected to training algorithm.
recognition [3]. Dang Changqing (2007) proposed a RBF Four, linear output function consists hedging points which
neural network to test traffic accident based on the improved can make up the difference between mean value and target
Boosting algorithm [4]. Zhao Jiewen applied RBF neural value on the sample set of basis function.
network with genetic algorithm to classify the odor of The design of General RBF network composes of
apples, which showed accuracy over 83% [5]. Ji Feng used structure design and vector design. Structure design mainly
relays on question on hand to determine the hidden notes.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 405


DOI 10.1109/ICCET.2009.25
Vector design should take data center of basis functions, In which cj, δj and wj denote the data center, developing
development constant and the weight of output nodes into constant and weight of output nodes of the basis function No.
consideration. j respectively, as in (7)-(9),
wj P
Δc j = η ∑ ei G ( X i − c j )( X i − c j ) , (7)
2
2
Φ(X, C1)
δ j i =1
W1,1
x1 W1,1
3
wj P 2
2
W1,2 W 2 Δδ j = η ∑ ei G ( X i − c j ) X i − c j , (8)
3
2
p ,1
3 δ j i =1
... ...W1,n W2,1
Φ(X, C2)
... Σ P
Δw j = η ∑ ei G ( X i − c j ) . (9)
xp 2 i =1
Wp,2
... 3
The above objective function is the sum of all errors
Wn,1 caused in training sample. The output vector modifier
formula is a kind of batch processing modification. That’s to
2 Φ(X, Cn ) say the output will be adjusted in every round. Define the
Wp,n
objective function in an instantaneous form, so the error
caused by inputting sample:
Figure 1. The structure of RBF neural network. E = 0.5ei2 . (10)
Kernel function in hidden layer should be radial Change the minimized vector modified formula in the
symmetry, so this paper uses Gaussian function as kernel objective model into
function in hidden layer, whose expression is wj
T Δc j = η e G ( X − c )( X − c ) , (11)
( X − Ci ) ( X − Ci ) δ j2 i j j

Φ i ( X , Ci ) = exp[ ]. (1)
2
2σ wj 2

Here Φi denotes the output of the hidden node NO. i; X


Δ δ j = η 3 ei G ( X − c j ) X − c j , (12)
δj
denotes output sample; Ci denotes central value of Gaussian
function. This paper uses supervised learning algorithms to Δw j = η ei G ( X − c j ) . (13)
train data centers, developing constant and weight of output
nodes in basis functions. III. CASE STUDY
Define the objective function as:
p 2 According to trade barrier issues to Chinese horticultural
E = 0.5 ∑ ei . (2) products in recent years, sample countries can be divided
i =1 into two groups. The first group consists Austria, Brazil,
Here p is the number of training samples; ei is the error Canada, Egypt, Germany, Israel, Japan, Korea, Kuwait,
signal aroused while inputting sample No. i; di is the distance Mexico, Netherlands, Philippines, Qatar, Russian, Saudi
between two data centers; Cj is the mean value of samples in Arabia, Spain, Turkey, United Arab Emirates, United
clustering domain. Kingdom, United States of America; the second group
M consists Argentina, Australia, Belgium, Chile, Denmark,
ei = di − F ( X i ) = di − ∑ w j G ( X i − C j ) . (3) Finland, France, Greece, India, Indonesia, Iran, Italy,
j −1 Malaysia, New Zealand, Norway, Pakistan, Singapore, South
To minimize the objective function, the correct value of Africa, Sweden, Switzerland, Thailand. In recent years,
vectors should be proportional to negative gradient. That’s to countries in the first group impose non-tariff barriers to
say, China, while the second group has some unserious trade
∂E conflicts with China [10].
Δc j = −η , (4) This paper assumes network output variable as Y. Y = 1
∂c j means that there is threat from trade barriers, while Y = 0
means there is not threat or the threat is small.
∂E
Δδ j = −η , (5) Pure economics and pure politics can not explain
∂δ j ubiquitous contradiction between politic and economy,
country and market, and society and person in market
∂E economy society. To consider those politic factors is
Δw j = −η . (6) necessary in studying economic issue, while to solve politic
∂w j
issue need economic methods. New political economy comes
into being in a context of international economy integration
and liberalization. As international trade is closed related

406
with political situation in all countries, explanatory variables recognition rate is quite low. Table 3 lists data of 2007 as
in existing literatures can not explain trade flow completely. testing samples and the simulation results, and the spread is
Model in this paper not only uses economic variables, 0.01. China does not have horticultural trade conflicts with
location variables and political variables, but also completes Singapore in 2007, so the real pattern should be 0, but the
political variable and cultural variable with public choice simulation result is 0.98. All other simulation values are
theory and international politic economy theory. The right. Therefore, the erroneous recognition rate is only 10%.
probability that horticultural products exports encounter with
non-tariff barriers mainly lies on agricultural characteristics TABLE II. SOME TRAINING SAMPLES AND THEIR GENERAL RBF
of import countries, economic characteristics and the OUTPUT AND INPUT VALUE

preference of policy maker [11]. Model variables in the Country Input Output
paper are listed in table I. Argentina 0 0 1 1 1 0 0 0.09 0.18 0 0
Australia 1 0 0 0 1 1 1 0.05 0.08 0.02 0
TABLE I. OUTPUT VARIABLES AND THEIR MEANING
Austria 0 1 0 1 1 1 0 0.01 0.09 0 1
Variables Meaning Belgium 0 0 0 1 1 1 0 0.02 0.03 0.01 0
APEC APEC member countries or not Brazil 0 0 1 1 1 0 0 0.33 0.3 0.02 1
Parliamentary Parliamentary republicanism or not Canada 1 0 0 0 1 1 1 0.03 0.04 0.04 1
Presidential Presidential republicanism or not Chile 1 0 1 1 1 0 1 0.06 0.29 0 0
Multipartism Multipartism or not Denmark 0 0 0 1 1 1 0 0 0.07 0 0
Culture Western religious culture or not Egypt 0 0 1 1 1 0 0 0.18 0.68 0.01 1
Income High-income country or not Finland 0 1 0 1 1 1 0 0 0.11 0 0
Position Geographical position. France 0 0 1 1 1 1 0 0.16 0.06 0.03 0
Yield Yield rate of horticultural products of a country
Germany 0 1 0 1 1 1 0 0.07 0.04 0.06 1
Population Agricultural population rate of a country
Greece 0 1 0 1 1 1 0 0.07 0.24 0 0
Export Export rate of horticultural products of a country
India 0 1 0 1 0 0 1 1 1 0.04 0
The above indices cover economy, politic, cultural, Indonesia 1 0 1 1 0 0 1 0.13 0.82 0.11 0
location and policy variables. All output variables, APEC, Iran 0 0 1 1 0 0 1 0.2 0.49 0 0
Parliamentary, Presidential, Multipartism, Culture, Income Israel 0 1 0 1 1 1 1 0.02 0.05 0 1
and Geo-position, are two valued variables. APEC=1 means Italy 0 1 0 1 1 1 0 0.27 0.09 0.06 0
the country belongs to APEC, while APEC=1 means the Japan 1 0 0 1 0 1 1 0.14 0.07 1 1
other side. Parliamentary=1 means the country carries Korea 1 0 1 1 0 1 1 0.12 0.15 0.14 1
Kuwait 0 0 0 0 0 1 1 0 0.02 0 1
parliamentary republicanism, while 0 means not.
Malaysia 1 0 0 1 0 0 1 0.01 0.32 0.09 0
Presidential=1 means the country carries presidential
Mexico 1 0 1 1 1 0 1 0.2 0.43 0 1
republicanism, while 0 means not. Multipartism=1 means
Netherlands 0 0 0 1 1 1 0 0.03 0.06 0.07 1
there are no less than 3 parties in the country, while 0 means
New Zealand 1 0 0 0 1 1 1 0.02 0.16 0 0
less than 3. Culture=1 means the mainstream culture in the Norway 0 0 0 1 1 1 0 0 0.09 0 0
country is related with western religious cultures which refer Pakistan 0 1 0 1 0 0 1 0.08 0.95 0.01 0
to Catholic, Christian, Orthodox and Judaism, while 0 means Philippines 1 0 1 1 0 0 1 0.13 0.73 0.05 1
unrelated. Income=1 means the country belongs to Qatar 0 0 0 0 0 1 1 0 0.02 0 1
high-income country which is decided according to the data Russian 1 0 1 1 1 0 1 0.14 0.19 0.01 1
from World Bank, while 0 means not. Geo-position=1 means Saudi Arabia 0 0 0 0 0 1 1 0.02 0.17 0.01 1
the country is China’s neighbor, while 0 means not. Note: Data about level of national income are from World Bank Data Base; the yield rate of
As Briton carries constitutional monarchy, most horticultural products, agricultural population rate of a country, export rate of horticultural product
are calculated according to the data from FAO data base; political and custom data are from research
scholars think commonwealth countries such as Australia, website of Chinese international strategies and http://www.fmprc.gov.cn; Geo-position are got from
research website of Chinese international strategies and Chapter V: Transportation in International
New Zealand, Canada, as constitutional monarchy Trade of “International Trade Geography (Edition IV)” edited by Zhu Xianru; the data also refer to
APEC s secretariat official website: http://www.apecsec.org.sg.
country. Some scholars are opposite to the idea, but this
paper accepts it. Law in some countries in West Asia, 1.0
such as Saudi Arabia, Kuwait, Qatar and United Arab
0.8
Emirates prohibits parties to take part in politics, so the
paper takes these countries as non-partisan countries. All 0.6
western religions are with the same resource, so they
0.4
share some similarities. Western culture, custom and
values are generated from these religious cultures. This 0.2
paper uses data of 2004 and 2007, but there are only
0.0
output variables and input variables of 2004 listed in
table II. This paper uses Matlab 7.0 to design and realize -0.2
general RBF network. Network training and testing shows 1 2 3 4 5 6 7 8 9 10

that when vector spread ∈[0.02, 0.008], the erroneous Figure 2. The simulation error curve.

407
TABLE III. TESTING SAMPLES AND THE SIMULATION RESULTS Network for Classifying Apples’ Scent,” Food Science,
Country Input mode Simulink
vol.25, No.2, 2004, pp.39-42.
Singapore 1 1 0 1 0 1 1 0 0.23 0.04 0 0.98 [6] Ji Feng, Li Yong, Song Jiashan, Fang Zhaoben, “Credit
South Africa 0 0 1 1 1 0 0 0.06 0 0.01 0 0 scoring model based on SenV-RBF,” Journal of University of
Spain 0 0 0 1 1 1 0 0.22 0.11 0.11 1 0.98 Science and Technology of China, vol.37, No.7, 2007,
Sweden 0 0 0 1 1 1 0 0 0.06 0.02 0 0 pp.767-772.
Switzerland 0 1 0 1 1 1 0 0.01 0.11 0 0 0.22
Thailand 1 0 0 1 0 0 1 0.08 0.86 0.05 1 0.98 [7] Liang Wuke, Zhao Daoli, Ma Wei, etc, “Fault diagnosis of
Turkey 0 1 0 1 0 0 1 0.27 0.53 0.01 1 0.98 hydroelectric units based on rough set and RBF network,”
UAE 0 0 0 0 0 1 1 0.01 0.07 0.01 1 0.98 Chinese Journal of Scientific Instrument, vol.28, No.10, 2007,
UK 0 0 0 0 1 1 0 0.02 0.03 0.13 1 0.98 pp.1806-1809.
USA 1 0 1 0 1 1 1 0.51 0.03 0.15 1 0.98 [8] He Tao, Zhou Zheng’ou, “Modulation recognition using
Note: The date sources are same with table 2. Improved RBF neural networks,” Signal Processing, vol.22,
No.4, 2006, pp.515-518.
IV. CONCLUSION [9] Zhao Liaoying, Li Xiaorun, Zhao Guangzhou, “Data
This paper applies artificial intelligence technology into classification based on density function estimated by radial
trade barrier recognition. Under the framework of political basis function,” Journal of Zhengjiang University
economic system, the quota system of the trade partners’ (Engineering Science), vol.41, No.7, 2007, pp.1088-1092.
effects on Chinese horticultural products is identified. [10] Wang Ping, Study on Chinese strategy of technical barriers to
Recognizing which country would impose trade barrier to agricultural products trade. Beijing: China Agriculture Press,
Chinese horticultural products by general RBF neural 2004.
network can help Chinese enterprises to take preventative [11] Zhao Yu, Zhang Yu, Qi Chunjie, “Analyze on factors
measures or countermeasures pointedly. The erroneous influencing the horticulture products export: based on new
recognition of RBF neural network is 10%. The political economics,” Ecological Economy, 2008, pp.92-95
classification capacity of RBF neural network is closely
related with the number of training samples, so the
performance of network can be improved by adding the
number of samples. In addition, pattern recognition is based
on the extracted characteristics of recognizing objects, so the
extracted characteristics should be representative and typical.
Therefore, fuzzy principles can be introduced to extract
objects’ characteristics in trade barrier recognition so as to
reduce the erroneous rate of recognition.
ACKNOWLEDGEMENT
It is a project supported by The Trade Barrier of Chinese
Horticultural Production Export and the Research of Its
Gambling Strategy (NCET050671), which was assisted by
the new centurial talent plan of Chinese Education
Department.

REFERENCES
[1] Lang K J, Witbrock M J, “Learning to tell two spirals apart,”
Proceeding of Connectionist Models Summer School, vol.1,
No.1, 1989, pp. 52-58.
[2] Gao Daqi, Yang Genxing, “Basic Principles of Pattern
Classification Methods Based on Improved RBF Neural
Networks,” Journal of East China University of Science and
Technology, vol.27, No.6, 2001, pp. 677-683.
[3] Han Min, Cui Pisuo, “A dynamic RBF neural network
algorithm used in pattern recognition,” Journal of Dalian
University of Technology, vol.46, No.5, 2006, pp. 746-751.
[4] Dang Changqing, Zhang Jinghui, Shen Zhiyuan, “Traffic
incidents detection based on Boosting method and RBF
neural network,” Computer Applications, vol. 27, No.12,
2007, pp. 3105-3107.
[5] Zhao Jiewen, Liu Muhua, Pan Yinfei, Zou Xiaobo, “The
Application of Genetic Algorithm to Optimizing Neural

408
2009 International Conference on Computer Engineering and Technology

An Object-oriented Product Data Management


Fan Wang, Li Zhou
School of Mechanical Engineering
Shenyang Ligong University
Shenyang,Liaoning,110168, China
wangfan48382002@yahoo.com.cn, lizhou@imr.ac.cn

Abstract considered. The first one is the product structure


management and the second one is the workflow engine
Product Data Management (PDM) system enables the [4,5]. Product structure manager organizes and stores the
management of the entire product lifecycle and related whole product data including the parts list and the various
information about its design, its manufacturing and its in- product configurations. It controls the data versioning and
service. The interest of using the object-oriented approach the link between the parts of the bill of material and
for modeling, specifying and implementing PDM systems associated documents (CAD or text files). It also manages
is detailed. Then an implementation method is proposed in of data lifecycle status: available, frozen or obsolete.
order to clarify the instantiation of UML diagrams into According to the product structure definition, workflow
database entities. Finally the system is implemented on engine distributes the right data to the key user at the right
J2EE platform. The used UML diagrams for the modeling time. The workflow functionality allows the
and integration of product, process, and resource data is implementation of ISO oriented processes in product
detailed in order to argue the interest of an object- development in order to be sure that key tasks (such as
oriented approach in such kind of PDM implementation. decision making, product review, etc.) are effectively
carried out by the right team member. Many others
1. Introduction functionalities are also currently available in PDM system
but they will not be discussed in this paper.
“Time to market” is becoming one of the most Functionalities such as product configuration
important business and strategic key elements for product management, digital mock-up visualization, and
development and manufacturing. Customers also want a collaborative tasks management can be mentioned.
more customized product. In aeronautics, companies have
to reduce lead times and to develop a better-configured 2.1. Modeling requirements of PDM
product fulfilling customers requirements including an
higher level of quality and safety [1]. These topics The added value of UML [6,7] for modeling and
represent major challenges in turboprop manufacturing as specifying the product structure [8,9] and the workflow
it is a niche market; in 2001, the sector total sales were [10,11] is considered in the paper. Its applications [12] in
equivalent to the sales of General Motors alone. Section 2 Enterprise Modeling and Business Process Reengineering
presents the key features of Product Data Management [13] have led to the choice of UML for several reasons. It
(PDM) systems and the basic needs for their efficiently supports the modeling and specification of the
implementation. Section 3 proposes the overview of a product breakdown structure (parts) and related product
Unified Modeling Language (UML)-based method for data (documents). It ensures a relevant modeling of
PDM implementation. Section 4 describes the used generic workflow with activities and transition criteria.
approach for product structure modeling. Section 5 details Then their implementation in workflow engine is fairly
the modeling of design process and the specification of simplified. Last, the overall class diagram of the VPM-
the corresponding workflow. Finally, Section 6concludes Chains system for specifying all kind of data to be
this research work and summaries some future managed is efficiently supported by UML.
developments on UML-based method for PDM
implementation. 2.2. Brief survey of PDM implementation
methods
2. PDM features Often, PDM implementation methods are based on
PDM aims at managing and storing the product data information system modeling approaches [14,15,16].
and also information related its entire lifecycle Considering this subject, various methods have been
(manufacturing, assembly, maintenance, etc.) [2,3]. In this proposed for capturing the requirements [17,18],
paper, two main functionalities of such a system will be modeling and structuring the data [10,19], specifying the

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 409


DOI 10.1109/ICCET.2009.42
implementation [20,21]. Several of the above mentioned components. Regarding their types (CAx or MS-Office
research works are based on object-oriented methods. The files), documents are attached to these parts via metadata
MOKA framework can also be mentioned as a good links. In PDM, the product structure allows the
example of UML-based approach [21]. Then the choice of management of bills of material and product
UML as methodological kernel for the PDM configurations [24].
implementation was evident [22] and a proposition of
UML-based method has been developed using the 4.1. Specification of product structure
experience of design chain specification and
implementation. Two kinds of breakdown viewpoints have been
defined: 1) product structure based on design viewpoint; 2)
3. Object-oriented method for PDM product structure based on assembly viewpoint. These two
viewpoints of the breakdown only partially provided a
The implementation process of new chain includes clear understanding of the full product structure. This
five major phases: 1)Clarification of the design chain: In modeling solution avoids duplicating data: the shared data
this phase, the subject and scope of the design chain are are integrated into the common part of the product
defined. The requirements list of design chain is specified structure. The instantiated breakdown does not even have
including the use of UML use-case diagram; 2) Capture to be browsed when searching specific document related
and analysis of process and data: The capture of design to a specific part used in a given activity. The query will
and production engineering processes and the modeling of use a given part linking to the document and the activity.
input and output data of each task are carried out. The The main goal is to allow the workflow engine to
issue of this phase is deliverable summarizing the required automatically retrieve the right data without ambiguity.
data in order to implement the chain with UML use-case, The class diagram of the product structure (Fig. 1)
class and activity diagrams; 3) PDM implementation: This provides not only static information but also helps to
phase consists in the specification of tree structure understand the methods and relationships existing
including product data and documents on the one hand between metadata. The class diagram also specifies how
and in the definition of workflow including all the tasks the product definition is clarified in the system and how
and data processing on the other hand. This workflow the user may handle it. The product structure will be
tends to be created as a generic model with the build time; composed of Part class, its sub-classes and Document
4) CAx integration: The aim of this phase is to link the class. The performer will be able to use these classes
numerous CAD and CAE systems used in design chain in during his activity. The relevant data will be characterized
order to ensure a complete traceability and to improve the with Feature class and its sub-class.
quality of the design. Therefore, design and simulation
Product Type
tasks must be clarified. Each task is identified and named 0..1
1..1
Product Component Product Part
according to generic ID. CAx integration consists then in has
belongs to
contains 0..*
1..1
specifying the name and type of task where the software 1..*
should be used including the data list required to carry out 0..*
Product Series
the tasks. After a set of case studies and final validation, Product Parameter

all softwares to be used are clarified including the data to Product Node

be issued. 1..1 contains 0..*


1..* assemble constraints

belongs to
Indeed, both PDM implementation and CAx 1..*
1..1 1..*
1..* 0..1
integration phases need the complete achievement of the Product
on

1..* assembed after


capture and analysis of process and data phase. These two has
1..1

major phases can be parallelized in order to reduce the Related Document

global implementation time.


Fig.1 Class Diagram of Product Structure
4. Product structure modeling
4.2. Product data and documents lifecycle
All the information belonging to the product lifecycle
phases (design, manufacturing, assembly, etc.) are In product data management a key attribute is the
managed and stored within the product structure. The information status. It represents the current issue of a state
definition of this structure is based on metadata for the change of a data or a document during its lifecycle. It
data classification and configurable links for the provides a very important maturity criterion for data
specialization of relationship between the metadata [23]. transfer and persistency. Then user may have access or
The product structure is considered as a hierarchical parts not to the data and documents depending on their status.
list including: product, sub-assemblies, and basic For a document, four possible statuses exits (Fig. 2): 1)

410
“In progress” means that the data is currently being activities may start as soon as the required input data are
modified by an activity (or that nothing has been done available rather than waiting the end of an activity for
yet); 2) “Shared” means that the data is mature enough to triggering the following one. This “pull” approach is
be used by the process as input for other activity; 3) currently what the users really needed, but nowadays only
“Released” means that this data is frozen and will not be the “push” one is included in VPM-Chains system.
further modified in this configuration; 4) “Obsolete”
means that the data cannot be used as input for an activity. 5.2. Specification of generic process
A comment usually explains why data is not usable. The
owner of the data is in charge of it and promotes or The build-time VPM-Chains functionality is used for
demotes the maturity level in the system. modeling “templates” describing generic design processes.
Obsolete
Then UML-based processes should be as generic as
[demote] possible in order to ensure a huge level of reuse [11]. It
includes generic sub-processes as specified in the class
[promote] [promote] diagram of the design process (Fig. 3). The process and
In Progress shared Released
the product structure diagrams contain the generic names
[demote] of the relevant data (in the product structure, data is also
Fig. 2 State diagram of a product document. identified by the name of the father’s part). The link
between a product and the considered process enables
5. Design process modeling query on the needed data.
Software part

The PDM system includes workflow functionality


[28]. The main goal is to build (model) and run the same
0..*
generic process with controlled data for each new implements
turboprop development. The workflow ensures 0..*

airworthiness authority and customers of ISO oriented Performer changed by Activity contains Process
0..* 0..1 0..*
quality and information traceability. It also allows a
0..1
project team member to find every relevant input data of a
given activity.

5.1. Capture of activities and processed data Action

In order to clarify the workflow, interviews with


experts are carried out, and the process split up into basic Fig. 3 Class diagram of design process
activities [25,26] according two criteria: an activity is
under the responsibility of one person and lasts only a few 6 The implement of PDM
days. Then all the business processes have to be redefined
with all the relevant data (input or output data of each The PDM is developed on the J2EE platform. The
activity)[19]. A difficult point is to identify which system can be divided into three sub-systems: product
activities should be considered as “push” and which ones data management, workflow management and design
as “pull”. At the end of “push” activities the following one process management.
is triggered. Mainly due to concurrent engineering [29,27],
the need to pull data in order to launch activity is required:

411
Fig.4 Representative Interfaces of QMIS

The product data management sub-system manages all Weblogic 8.1. The session beans in the EJB container are
the product structure data and their related document. The realized based on the defined use cases(Due to the limited
all the states of product document are managed here. space, all the use cases are omitted in this paper), while
Workflow sub-system manages all the workflow models, the entity beans are realized according to the class
and all their instances are initiated, monitored in it. The diagram defined in previous sections. The tier 3 is user-
design workplace is an integrated client of both product interfaces that are designed by using java swing. The
data management sub-system and workflow sub-system. representative interfaces related to the quality
All kinds of actors anticipated a product development management of project process are shown in fig.4.
project can use the design workplace sub-system to
complete their design work. 7. Conclusion
Three-tier software architecture, including user
interfaces, business logics and databases, is applied in this Object-oriented method provides a secured
system. The three-tier design enables more efficient management for CAD or CAE data linked with product
system development by modularizing tiers and separating structure and workflow. The business process analysis has
the application from the database, since this makes it highlighted the need for more flexible tools concerning
easier to modify one tier without affecting the other tiers. the build time (workflow modeling) and run time
The databases, which are the tier 1, are developed by (workflow engine) modules. UML-based method for
using MS SQL Server 2000. All files used in PDM are PDM implementation has been proposed and validated
managed through FTP service implemented by using within the business case study of design process. The
Microsoft IIS Service. The tier 2 is business logics, in method efficiently guides project team and helps them in
which the EJB technologies are employed by using carrying out complex design processes. Various

412
abstraction levels with the same kind of diagrams have [13] F.B. Vernadat, Enterprise Modeling and Integration:
been described: the needs of business case study, the Principles and Applications, Chapman & Hall, London,
global architecture, and the links between objects with 1996.
class diagrams. The user interactions with the system have [14] J.A. Harding, B. Yu, K. Popplewell, Information modeling:
an integration of views of a manufacturing enterprise, Int. J.
been clarified with use case diagrams and generic Product. Res. 37 (1999) 2777–2792.
processes with activity diagrams. Based on the experience [15] Z. Irani, M. Themistocleous, P.E.D. Love, The impact of
presented in the paper, UML can be considered as a enterprise integration on information system lifecycles,
relevant and efficient notation enabling the modeling, Inform. Manage. 41 (2003) 177–187.
specification, and implementation of PDM system [16] K.T.H. Toh, Modelling architectures: a review of their
especially concerning the product structure and workflow. application in structured methods for information systems
This modeling notation limits misunderstanding problems specification, Int. J. Product. Res. 37 (1999) 1439–1458.
for the various dimensions of the implementation phase. [17] A. Lowe, C. McMahon, S. Culley, Characterising the
Preliminarily to this step, enterprise modeling requirements of engineering information systems, Int. J.
Inform. Manage. 24 (2004) 401–422.
methodologies such as ARIS, CIMOSA, GRAI or PERA [18] Q.A. Siddiqui, N.D. Burns, C.J. Backouse, Implementing
should be carried out for the global understanding of the product data management the first time, Int. J. Comput.
company organization and management, and for the re- Integr. Manuf. 17 (2004) 520–533.
engineering its key business process. Considering the [19] L. Gzara, D. Rieu, M. Tollenaere, Product information
modeling, specification and implementation steps of systems engineering: an approach for building product
dedicated system such as PDM, ERP, or SCM, UML can models by reuse of patterns, Robot. Comput.-Integr. Manuf.
be considered as an unquestionable supplementary 19 (2003) 239–261.
modeling language. [20] Y.M. Chen, M.W. Liang, Design and implementation of a
collaborative engineering information system for allied
concurrent engineering, Int. J. Comput. Integr. Manuf. 13
(2000) 11–30.
References [21] R. Klein, Knowledge modelling in design – the MOKA
[1] T. Pardessus, The multi-site extended enterprise concept in framework, in: J.S. Gero (Ed.), Artificial Intelligence in
the aeronautical industry, Air Space Eur. 3 (2001) 46–48. Design ’00, Kluwer Academic Publishers, Dortrecht, 2000.
[2] CIMdata, Product Lifecycle Management “Empowering the [22] C. Merlo, B. Eynard, Ph. Girard, A. Odinot, T. Gallet,
Futre of Business”. A CIMdata Report, (CIMdata Inc, Ann Compared implementations of PDM systems based
Arbor, 2003), http://www.cimdata.com. onUMLspecifications, Int. J. Product Lifecycle Manage. 1
[3] D.T. Liu, X.W. Xu, A review of web-based product data (2005).
management systems, Comput. Ind. 44 (2001) 251–262. [23] E. Eloranta, A.P. Hameri, L. Lahti, Improved project
[4] F. Lafont, VPM-Chain Design and Industrialisation Process management throught improved document management,
Software, in: Proceedings of European Catia Forum, Berlin, Comput. Ind. 45 (2001) 231–243.
Germany, October 17, 2001. [24] P.Y. Chao, T.T. Chen, Analysis of assembly through
[5] Z. Kovacs, J.M. Le Goff, R. McClatcey, Support for product configuration, Comput. Ind. 44 (2001) 189–203.
product data from design to production, Comput. Integr. [25] A.W. Scheer, ARIS – Business Process Modelling,
Manuf. Syst. 11 (1998) 285–290. Springer-Verlag, Berlin, 1999.
[6] Object Management Group, The Unified Modeling [26] K. Saikali, Flexibilit´e des workflows par l’approche objet:
Language, Release 1.1, Reference Manual, 1997, 2Flow: un framework pour workflows flexibles, PhD
http://www.omg.org/. Thesis of Ecole Centrale de Lyon, France, 2001.
[7] G. Booch, J. Rumbaugh, I. Jacobson, The Unified [27] B. Prasad, Concurrent engineering fundamentals, Vol. 1,
Modeling Language User Guide, Addison-Wesley, Prentice-Hall, Englewood Cliffs, 1996.
Reading, 1999. [28] F. Leyman, D. Roller, Production Workflow, Prentice-Hall,
[8] L. Chen, T.Wang, Z. Song, A web-based product structure Englewood Cliffs, 2000.
manager to support collaborative assembly modeling, J. [29] G. Sohlenius, Concurrent engineering, Ann. CIRP 41
Comput. Inform. Sci. Eng. 4 (2004) 67–78. (1992) 645–655.
[9] Y. Oh, S.H. Han, H. Suh, Mapping product structures
between CAD and PDM systems using UML, Comput. Aid.
Des. 33 (2001) 521–529.
[10] Y.M. Chen, T.H. Tsao, A structured methodology for
implementing engineering data management, Robot.
Comput.-Integr. Manuf. 14 (1998) 275–296.
[11] D.R. Liu, M. Shen, Workflow modeling for virtual
processes: an order-preserving process view-approach,
Inform. Syst. 28 (2003) 505–532.
[12] C. Marshall, Enterprise Modeling with UML, Addison-
Wesley, Reading, 2000.

413
2009 International Conference on Computer Engineering and Technology

Study of 802.11 Network Performance and Wireless Multicasting

Biju Issac
School of Computing and Design
Swinburne University of Technology (Sarawak Campus)
Kuching, Malaysia
e-mail: bissac@swinburne.edu.my

Abstract—IEEE 802.11 proposed a number of standards and between access points. A wireless network adapter connects
each one had a specific goal. They can be configured in users via an access point to the rest of the LAN. A wireless
infrastructure mode or ad hoc mode. In the study of station can be using a PC card in a laptop, an ISA or PCI
infrastructure mode, the focus was on 802.11b/g co-existence adapter in a desktop computer, or can be fully integrated
along with other single mode operations to analyze the within a handheld device. The different extensions to the
throughput and traffic drop through simulation. In the study 802.11 standard use the radio frequency band differently.
of ad hoc mode, the focus was to analyze the behavior of ah hoc Some of the popular IEEE 802.11 extensions are as follows:
networks with demand driven ad hoc routing protocols like – 802.11b – specifies the use of DSSS at 1, 2, 5.5 and 11
Ad-Hoc On-demand Distance Vector Routing, Dynamic Source
Mbps. 802.11a – specifies the use of a frequency
Routing and Temporally-Ordered Routing Algorithm in terms
multiplexing scheme called as Orthogonal Frequency
of throughput. Finally an investigation is done to study
wireless multicasting and its behavior.
Division Multiplexing (OFDM) and it uses a physical layer
standard that operate at data rates up to 54 Mbps. 802.11g –
Keywords-wireless network performance, wireless specifies a high speed extension to 802.11b that operates in
mulitcasting, infrastructure mode, ad hoc mode. 2.4 GHz frequency band using OFDM to obtain data rates
up to 54 Mbps and as well as backward compatible with
802.11b devices. This is now a popular standard. 802.11i –
I. INTRODUCTION
recognizes the limitations of WEP and enhances wireless
The 802.11 wireless networks can be broadly classified security. It defines two new encryption methods as well as
into two modes, namely – infrastructure mode and ad hoc an authentication method. The two encryption methods
mode. Infrastructure mode has wireless nodes designed to replace WEP include Temporal Key Integrity
communicating with a central access point (AP), which is in Protocol (TKIP) and Advanced Encryption Standard (AES)
turn is linked to a wired LAN, to form an Infrastructure [1].
Basic Service Set (IBSS). Here the AP acts as a relay Related works on performance analysis can be found in
between wireless stations or between wired and wireless [2]-[3]. The simulation is performed through OPNET
stations. A combination of many BSS with a backbone software [4] for the analysis of different 802.11 standards.
distribution system (normally Ethernet) forms an Extended We considered 802.11a, 802.11b, 802.11g and 802.11b with
Service Set (ESS). In contrast, Ad hoc mode has wireless g networks. Comparisons are done in terms of throughput
stations or nodes communicating with one another without and other factors when they work in single and mixed mode.
an access point to form an independent BSS. Nodes of these The trajectory timing of the mobile node movement is
network act as routers that discover and maintain routes to generally set between 0 and 49 seconds as the mobile nodes
other nodes [1]. Infrastructure and ad-hoc mode of move from one end to the other and back.
operations are used in different circumstances.
The rest of this paper is organized as follows. Section 2 A. Mixed Mode (802.11 b and g) vs. Single Mode (802.11 a, b, g)
In this case, different scenarios of single mode (802.11
is on Infrastructure network and its performance, section 3
a, 802.11 b and 802.11 g) and mixed mode (802.11 b and
is on Ad-hoc network and its performance, section 4 is on 802.11 g) were created. After the simulation run, the data
wireless multicasting and section 5 is the conclusion. traffic dropped and throughput were measured. We created
an 802.11b with 802.11g WLAN that consisted of two Basic
II. INFRASTRUCTURE NETWOK AND ITS PERFORMANCE Service Set (BSS) networks – BSSLEFT and BSSRIGHT. The
In a wireless infrastructure setup, there are two basic data rate of 802.11g mobile node is set to 54 Mbps and that
components – access points and wireless stations. An access of 802.11b node is set to 2 Mbps. The nodes communicate
point or base station functions as a bridge by connecting to a to a Target Station T that is connected to an Ethernet LAN
wired LAN (Local Area Network) through Ethernet cables. where the access points of BSSLEFT and BSSRIGHT are
It receives data, buffers and transmits data between the connected. In the initial setup, BSSLEFT consist of five
wireless and the wired network infrastructure. 802.11g stations that transmit data (each over 2Mbps) to T
A building may require several access points to provide and an 802.11g AP (AP1). The total load of BSSLEFT thus
complete coverage and allow users to roam seamlessly becomes around 13 to 14 Mbps. BSSRIGHT consist of five

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 414


DOI 10.1109/ICCET.2009.161
Figure 1 The topology used in the scenario where 802.11g nodes with AP
(on right) co-exist with 802.11b nodes with AP (on left)

802.11b stations that do not transmit data and an 802.11b


AP (AP2). The wireless network topology used is as shown
in figure 1.
The five 802.11b stations moves toward BSSLEFT and
gets associated with AP1 and this happens between 5 and 21
seconds as shown in figure 2. The 802.11g station in
BSSLEFT now have to use ‘CTS-to-self’ protection
mechanism before transmitting their data frames at 54 Mbps
Figure 2. The throughput on the target station T using different
because the newly arrived 802.11b stations cannot decode configurations like 802.11b, 802.11g, 802.11 b with g and 802.11a.
802.11g data. This and association of 802.11b stations to
BSSLEFT causes the throughput rate to drop from 14 Mbps to
10 Mbps during 10 to 21 seconds. 802.11b supports, compared to the other configurations. In
Later the five 802.11b stations traverses back to the first half of simulation, the mobile nodes that are
BSSRIGHT and re-associates with AP2 during 21 to 30 moving from right to left AP and back to original position
seconds. Now the throughput rises to 14 Mbps as BSSLEFT are not transmitting anything, but only receiving.
becomes an all-802.11g WLAN. The five 802.11g stations In the second half of the simulation, the transmitting
on left hand side do a similar but reverse exercise. They mobile nodes makes move from left to right AP and then
move toward BSSRIGHT and associate with AP2 during 30 to back to original position. In 802.11b and 802.11g (mixed
33 seconds. Now the throughput drops down as they are mode), the transmitting 802.11g mobile nodes will only
disassociated with AP1 and are scanning for AP2. From 33 work at the throughput of 802.11b access points with ‘CTS-
to 44 seconds, all the five 802.11g stations attach to AP2 in to-self’ protection mechanism enabled, in the second half of
BSSRIGHT and as AP2 is a 802.11b AP, the throughput drops simulation.
down to less than 6 Mbps. From 44 to 49 seconds, the five The performance of the mixed mode operation is not that
802.11g stations traverses back to BSSLEFT. This causes a encouraging compared to the single mode operation. Even
short dip in the throughput as they have to disassociate with for single mode operation, where all devices are of the same
AP2 and reassociate with AP1. Thus the 802.11g stations standard, the packets dropped are high (and hence more
move to and fro between 30 and 49 seconds. delay) when the mobile nodes move from one access point
Figure 2 shows the above processes of 802.11b with to another and thus it would hamper the smooth handoff and
802.11g co-existence in detail and shows the ups and downs seamless connectivity.
in the throughput graph as measured on Target station T.
The throughput is comparable for all 802.11g and all
802.11a networks that support 54 Mbps. For all 802.11b
networks, the throughput is lower. In the other simulation
models, the 802.11 standard is changed on the devices to
accommodate comparison of standards. The network
structure and node movements still remain the same. Thus
wireless networks with all 802.11a devices, with all 802.11b
devices and 802.11g devices were created and simulations
were performed on them for throughput and performance.
The graph for data traffic dropped is shown in figures 3,
which is more of an inverse of figure 2.
The drop is quite consistent and uniform for all 802.11b
Figure 3. The data traffic dropped in WLAN configurations like 802.11b,
node networks. For other configurations the drops are 802.11g, 802.11 b with g and 802.11a.
comparable. This is because of the low data rate that

415
III. AD-HOC NETWORK PROTOCOL AND ITS
PERFORMANCE
Ad-Hoc On-Demand Distance Vector Routing (AODV) is
a reactive protocol in ad hoc network, and the finding of
route is based on a route discovery cycle that includes a
network search that is broadcasted and a unicast reply
containing the discovered paths. When a node wants to
establish a communication link, it does a path-discovery
process to locate the other node. If a path to destination
exists in the source node’s routing table, it will use that Figure 4. The mobile ad hoc network topology used for simulation.
existing route to send data packets. Otherwise to start the
route discovery, the source node broadcasts a route request,
RREQ packet with its and destination’s IP addresses, study the performance and to analyze its behavior, under
Broadcast ID (or RREQ ID) and the sequence numbers of different number of nodes etc using existing models [6]-[8].
source and destination nodes. The RREQ ID is a per-node A review of current routing protocols for ad-hoc mobile
counter that is incremented every time the node initiates a wireless network can be found in [9].
new RREQ. This makes the RREQ ID together with the
A. Performance Comparison
source IP address quite unique and can be used to identify a
As shown in figure 4, a wireless server is configured
particular RREQ. When a node receives this RREQ, it
initially with DSR and 40 mobile nodes are configured as
creates a reverse path to the node and the hop count in the
work stations (that can generate application traffic) running
RREQ is incremented by one. Once the receiving node’s
DSR. They are placed as 20 nodes on one side and
sequence number is greater than or equal to the destination
remaining 20 nodes on the other side. Later the same
station’s sequence number as indicated in the RREQ, it
exercise is done with 80 nodes, by placing 40 nodes each on
generates a route reply, RREP (reply message) indicating
either side of the server. The simulation is done for 30
the route. The node then unicasts the message to its next hop
minutes (1800 sec).
towards source node. Thus the receiving nodes set a
The wireless nodes can communicate to each other
backward pointer to the source and generate a RREP unicast
within a cloud or to the server. They can also communicate
packet. The reverse route created as RREQ is forwarded and
with the wireless nodes in the other cloud. Figure 5 shows
is used to channel the RREP back to the source. AODV
the generated throughput of 40 and 80 node DSR networks
favors the least congested route and uses hello messages to
that run some applications like Telnet, Email or FTP
maintain node connectivity.
sessions. The mobile nodes are configured to eliminate all
Dynamic Source Routing (DSR) also uses source based
receivers that are over 1500 meters away.
routing rather than table based and it is source initiated
The graph shows an expected result that the throughput of
rather than hop-by-hop. A node wishing to communicate
80 node DSR network is greater than the 40 node DSR
issues a Route Request to all its neighbors and each
network, reaching a peak of around 24,000 bits (during 1200
neighbor in turn rebroadcasts this Request adding its own
sec) compared to 12,000 bits (during 500 sec) for 40 nodes.
address in the header of the packet. When a Request is
Secondly, a wireless server is configured with TORA and
received by the destination node or by an intermediate node
40 mobile nodes are configured as work stations running
in the path to destination, a Route Reply is sent back to the
TORA by placing 20 nodes on one side and remaining 20
sender along with addresses accumulated in the Request
nodes on the other side. Later the same exercise is done with
header. Thus the entire route is maintained in the packet
80 nodes, by placing 40 nodes each on either side of the
header. DSR is not that scalable to large networks.
Temporally-Ordered Routing Algorithm (TORA) is a
distributed and adaptive protocol that can operate in a
dynamic network [5]. For a particular destination, it uses the
‘height’ parameter to determine the direction of a link
between any two nodes. Thus multiple routes are often
present for a given destination. For a node to start
communication, it broadcasts a Query to all its neighbors,
which is rebroadcast through the network until it reaches the
destination. This node would reply with an Update that
includes its height with respect to the destination, which is
sent back to the sender. Each node that receives the Update
sets its own height to one greater than that of the neighbor
that sent it, which results in a series of directed links from
sender to destination in the order of height values.
We did OPNET network simulation of ad hoc network Figure 5. The throughput of ad-hoc network when using DSR with 40
demand driven protocols like DSR, TORA and AODV to nodes and 80 nodes.

416
speed in comparison to packet transmission latency [7]. As
DSR packets need to contain full routing information, the
memory overhead is more compared to AODV. But it does
not make use of periodic router advertisement which saves
some bandwidth and power consumption. A direct result of
this is that router advertisement overhead would be nil and
topology changes are eliminated. As DSR allows multiple
routes to the destination, in the event of a link failure, the
other valid routes can be checked and this can prevent route
reconstruction, hastening the route recovery. If multiple
routes are not available, route discovery should be done to
find a route. As DSR assumes small network diameter, it is
not scalable to large networks. The requirement to place the
Figure 6. The throughput of ad-hoc network when using TORA with 40 route in both route replies and data packets increases the
nodes and 80 nodes. control overhead much more than in AODV.
AODV overhead is much lesser in comparison to DSR as
the route replies need to carry only the destination IP
server. The simulation is done for 30 minutes (1800 sec).
address and sequence number. This also reduces the
Figure 6 shows the generated throughput of 40 and 80
memory overhead in comparison to DSR. AODV also uses
node TORA networks that run some applications like
a route discovery mechanism that is similar to DSR. A big
Telnet, Email or FTP sessions. The nodes are configured to
advantage of AODV is its support for multicast
eliminate all receivers that are over 1500 meters away. The
communication. But on the negative side it needs symmetric
throughput graph for 40 nodes and 80 nodes TORA
links between nodes and cannot make use of asymmetric
networks looks comparable.
links. TORA is a link-reversal algorithm that is suitable for
Thirdly, a wireless server is configured with AODV and
densely populated network with large number of nodes. It
40 mobile nodes are configured as work stations running
creates directed acyclic graphs (DAG) to help route creation
AODV by placing 20 nodes on one side and remaining 20
and supports multiple routes for single source-destination
nodes on the other side. This is done in the default mode.
pair. Multiple routes reduce route reconstruction overheads.
Later the same exercise is done with 40 nodes, with reduced
TORA needs synchronized clocks for its operation and if the
or light traffic. The simulation is done for 30 minutes (1800
external time source fails, the protocol would fail. Even
sec). It is configured to eliminate all receivers that are over
route rebuilding can incur lengthy delays because of
1500 meters away. Parameters set for AODV (to reduce
synchronization related oscillations [8]-[9].
routing traffic) are as follows: Route Discovery Parameter:
Gratuitous Reply – Enabled, Active Route Timeout: 30 sec IV. WIRELESS MULTICASTING
and WLAN data rate: 1 Mbps.
Figure 7 also shows the throughput comparison of all 3 To understand the effects of multicasting, we configured
protocols –DSR, TORA and AODV. AODV with gratuitous wireless networks that support unicasting and multicasting
reply enabled (light traffic/LT option) and DSR shows using simulation. PIM-SM (Protocol Independent Multicast
comparable throughput. Default AODV shows a greater – Sparse Mode) is the multicast routing protocol model
throughput and TORA is in between. used.
A comparison summary on the three simulated protocols Protocol-Independent Multicast (PIM) is a family of
can be given as follows. DSR is meant for wireless ad hoc multicast routing protocols that can provide one-to-many
networks where the mobile nodes move with moderate and many-to-many data distribution over networks,
especially the Internet. PIM uses routing information
supplied by other traditional routing protocols such as
Border Gateway Protocol (BGP) and does not include its
own topology discovery techniques – hence it’s protocol
independent. PIM Sparse Mode (PIM-SM) explicitly builds
unidirectional shared trees rooted at a Rendezvous Point
(RP) per group, and optionally creates shortest-path trees
per source. PIM-SM generally scales fairly well for wide-
area usage. PIM relies on an underlying topology-gathering
protocol to populate a routing table called the Multicast
Routing Information Base (MRIB) with routes. The routes
in this table may be taken directly from the unicast routing
table, or they may be different and provided by a separate
routing protocol such as Multiprotocol Border gateway
Figure 7. The Throughput for ad-hoc network when using DSR, TORA and
AODV (default and low traffic (LT)) with 40 nodes.
protocol. (MBGP). Regardless of how it is created, the
primary role of the MRIB in the PIM protocol is to provide

417
Figure 10. The wireless throughput in the sender station

V. CONCLUSION
Figure 8. The point-to-point link utilization and throughput for wireless
unicast and multicast network
This paper presents an analysis of different 802.11
network standards – single and mixed mode. It was
observed that the mixed mode (802.11b/g) networks can
the next-hop router along a multicast-capable path to each bring down the network throughput drastically. The
destination subnet. The MRIB is used to determine the performance analysis of the ad hoc network and its three
next-hop neighbor to which any PIM Join/Prune message demand driven ad-hoc routing protocols, namely – AODV,
is sent. Data flows along the reverse path of the Join DSR and TORA were also done. The different protocol’s
messages. Like all multicast routing protocols that performance varies depending on different factors like lesser
implement the service model from RFC 1112, PIM-SM or higher number of nodes, light or heavy traffic etc. Lastly
must be able to route data packets from sources to receivers wireless multicasting efficiency was also looked into.
without either the sources or receivers knowing a priori of
the existence of the others [10].
IP multicasting [11] can be enabled or disabled for each REFERENCES
IP interface during simulation. In the WLAN scenario that [1] G. Held, Securing Wireless LANs. Sussex: John Wiley, 2003.
was simulated, the sender uses unicast and multicast to [2] V. Clincy, A. Sitaram, D., Odaibo and G. Sogarwal, A Real-Time
setup a video conference with the three receivers that are Study of 802.11b and 802.11g, International Conference on Systems
connected over a point-to-point link. In unicast separate and Networks Communications, 2006, pp.69-69.
sessions are setup for each receiver. Therefore, the sender [3] S.-C, Wang,, Y.-M., Chen, T. H. Lee and A., Helmy, “Performance
sends three copies of each video packet, one for each evaluations for hybrid IEEE 802.11b and 802.11g wireless
networks”, Proc. of 24th IEEE International Conference on
receiver as shown in figure 8, resulting in greater traffic. Performance, Computing, and Communications, 2005, pp.111-118.
In multicast only a single session is setup for all receivers.
[4] OPNET Modeler , Website: http://www.opnet.com
Therefore, the sender sends only one copy of each video
[5] S. Basagni, M. Conti, S. Giordano and I. Stojmenovic, Mobile Ad-
packet, resulting in lesser traffic. So the multicasting Hoc Networking, Wiley InterScience, 2004.
approach is more efficient as it reduces line congestion. [6] J. Broch, D. A. Maltz, D. B. Johnson, Y-C. Hu, and J. Jetcheva,
Figure 9 and 10 shows the wireless throughput in sender and “A performance comparison of multi-hop wireless ad hoc
receive stations. network routing protocols”, Proc. of the 4th International
Conference on Mobile Computing and Networking (MOBICOM),
1998, pp. 85–97.
[7] P. Johansson, T. Larsson, N. Hedman, and B. Mielczarek,
“Routing protocols for mobile ad-hoc networks – comparative
performance analysis”, Proc. of the 5th International
Conference on Mobile Computing and Networking , 1999.
[8] S. R. Das, R. Castaneda, J. Yan, and R. Sengupta. “Comparative
performance evaluation of routing protocols for mobile, ad hoc
networks”, Proc. of 7th Int. Conf. on Computer Communications
and Networks (IC3N), 1998, pp. 153–161.
[9] E. M. Royer and C-K. Toh, “A Review of Current Routing
Protocols for Ad Hoc Mobile Wireless Networks”, IEEE
Personal Communications, 1999, pp. 46-55.
[10] B. Fenner, M. Handley, H. Holbrook and I. Kouvelas, Protocol
Independent Multicast - Sparse Mode (RFC 401), 2006.
[11] U. Varshney, 'Multicast over Wireless Networks', Communications
Figure 9. The wireless throughput in each of receiver stations of ACM, 45(12), 2002, pp.31-37.

418
2009 International Conference on Computer Engineering and Technology

A Novel Approach for Face Recognition Based on Supervised Locality


Preserving Projection and Maximum Margin Criterion

Jun Kong∗, Shuyan Wang, Jianzhong Wang, Lintian Ma, Baowei Fu, Yinghua Lu
Computer School, Northeast Normal University, Changchun, Jilin Province, China
{Kongjun,wangsy273,wangjz019,malt442,fubw561,luyh}@nenu.edu.cn

Abstract while LLE and Laplacian Eigenmap both preserve


local properties [9]. However, these manifold learning
In this paper, we propose a novel approach for face approaches are developed for data embedding and
recognition, that combine Supervised Locality manifold visualization [10], [11], they are only for
Preserving Projection (SLPP) with Maximum Margin train samples, and have no straightforward extension
Criterion (MMC) for preserving the within-class for out of sample examples, since are not suitable for
neighborhood structure of facial manifold and classification.
meanwhile finding an optimal feature space for Some LDA based methods [12], [13], [14], [15] are
classification. We also give an effective solution to the suitable for practical application, such as pattern
eigenvalue problem. Our method can avoid the classification. Given a new high-dimension data, it will
preprocessing stage of resizing the original image find the corresponding low-dimension point via the
optimal transformation matrix which is learned by
resolution and Principle Component Analysis (PCA)
these methods. Unfortunately, these LDA based
projection, so there is no information lost. Experiment
methods are all linear methods, without consideration
results demonstrate the effectiveness of the proposed of the nonlinear structure of the image space.
approach on the ORL face database . In order to overcome the above shortcomings, we
propose a effective method for face recognition which
1. Introduction combine the manifold learning with discriminant
analysis based approach. Locality Preserving
Face recognition is a focus in the pattern Projection (LPP) [16] is a linear approximation of the
recognition and computer vision research area. In the nonlinear Laplacian Eigenmap, it can optimally
past few decades, numerous algorithms have been preserves the neighborhood structure of the face
proposed for face recognition. Among these methods, manifold, and shares many of the properties of
Principle Component Analysis (PCA) [1] and Linear nonlinear techniques such as Laplacian Eigenmap,
Discriminant Analysis (LDA) [2] are the most popular LLE. What’s more, an extension of LPP that is
ones. As an unsupervised method, PCA finds a Supervised Locality Preserving Projection (SLPP) [17]
subspace where the samples have the minimum takes class label into consideration which is more
efficient for classification. Maximum Margin Criterion
reconstruction error, while LDA employs class label
(MMC) [12], [13] is a good discriminant analysis
and searches for a subspace where the sample from the
based method, it aims at maximize the average margin
same class are as compact as possible and meanwhile between classes, that can not only obtains an optimal
the sample from the different classes are as far as low-dimension feature space for classification but also
possible. However, a number of researches [3], [4], [5] solve the so-called small sample size (SSS) [18], [19]
have shown that facial images lie on a nonlinear problem.
manifold. Though the PCA and LDA are simple to We utilize the idea of combine SLPP with MMC.
implement and efficiently computable, they fail to First, within-class scatter matrix and between-class
detect the intrinsic structure of the image space. scatter matrix are learned by SLPP and maximizing the
Recently, some nonlinear techniques have been distance of interclass margin samples , respectively;
proposed to discover the nonlinear structure of the then MMC is used to search for a feature space that
manifold, such as Isomap [6], LLE [7] and Laplacian makes intraclass compact and interclass separate;
Eigenmap [8]. Isomap preserves global properties Finally, we give an effective solution to the eigenvalue


Corresponding author.Tel.:+86 431 84639647; fax:+86 431 84639647

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 419


DOI 10.1109/ICCET.2009.55
problem. Our method avoids the preprocessing stage of effective for face recognition. The interclass distance
resizing the original image resolution and PCA (or margin) can be denoted as :
projection, thus, there is no information lost.
Experiment results show the effectiveness of our d (Ci , C j ) = d (mi , mj ) − (S(Ci ) + S(C j )) (2)
proposed algorithm. The rest of paper is organized as
follows: In section 2, LPP and MMC are reviewed.
Our proposed algorithm is described in section 3. where mi and mj are class mean of ith class and jth
Experiment and comparison results are presented in class respectively, d(mi, mj) is defined as the Euclidean
section 4. Conclusions are summarized in section 5. distance between mi and mj, S(Ci) and S(Cj) are defined
as the traces of the scatter matrices of the ith and jth
class, respectively. After some deduction, the average
2. Review of Locality Preserving Projection margin between classes under projection A is:
and Maximum Margin Criterion
Given a set of
N sample images
(
J ( A) = tr AT ( S B − SW ) A ) (3)

X ={xi ,i =1,2,", N | xi ∈R }, Each xi belongs to one of C


m
The transformation matrix A that maximize (3) is
classes. Y = {yi , i = 1,2,", N | yi ∈ Rd } (d < m) are the learned by solving the following eigenvalue problem:
corresponding projected vectors. A ∈ R m×d is the
transformation matrix, that is Y = A T X . ( S B − SW ) A = λA (4)

2.1. Locality Preserving Projection and its Both SB and SW are matrices of size m × m. However,
extension m is often very large in face recognition. e.g. given
face images of size 92 × 112, m equals 10304, it will be
LPP is a recently proposed method for very expensive to compute A. In [13] the author resized
dimensionality reduction and image recognition. It can the original image resolution of 92 × 112 to 23 × 28 for
preserve the local structure of the image space by computation efficiency in the experiment of face
considering the manifold structure. Let W be an recognition. However, it must lose some important
affinity matrix defined on samples. The objective of information in the process of resizing which has a bad
LPP is to solve the following problem: influence on the recognition result.
N

∑ (1)
2
arg min
A
yi − y j W ij 3. The proposed algorithm
i, j

= arg min AT XLX T A In this section, our proposed algorithm which


A
combine SLPP with MMC is introduced. We learn
subject to A XDX A = I
T T
within-class scatter matrix based on SLPP which can
preserve with-in neighborhood geometry structure,
where L = D −W is the Laplacian matrix and while between-class scatter matrix is computed by
D ii = ∑ W ij , measures the local density around xi , I
maximize the distance of margin point belong to
j different classes. Through this two scatter matrix,
is an identity matrix. A is determined by the minimum MMC looks for an optimal feature space for
eigenvalue solution to the generality eigenvalue classification. Finally, a simple and efficient solution
problem. to the eigenvalue problem is given.
An extension of LPP, SLPP has been developed to
enhance the performance of LPP in pattern recognition 3.1. Within-class scatter matrix
by considering class label information into original
LPP. Different from LPP, SLPP computes W with the In order to make the projected vectors of the sample
constraint that we find one point’s k nearest neighbors of same class compact with each other, based on the
with class label the same as that point’s. method of SLPP, we minimize the following cost
function:
2.2. Maximum Margin Criterion 1 N


2
min yi − y j W ij (5)
2 i, j
MMC is a discriminant analysis based method, aims
1 N

2
at maximizing the average margin between classes, it = min A T x i − A T x j W ij
can solve the SSS problem and is reported to be very 2 i, j

420
= min tr (AT X ( D − W ) X T A) Let L1 = D − W and L 2 = D '−W ' , ui and vi be the

{ exp( − xi − x j
2
t) xi ∈k1 ( j ) or x j ∈k1 ( i )
ith eigenvalue and eigenvector of L2 − L1 , respectively.
Wij = U = diag (u1 , u 2 , " , u N ) , V = [ v 1 , v 2 , " , v N ] , we
0 otherwise
can obtain L2 − L1 = ZZ T where Z = VU 1 2
VT.
S B − S W = X ( L2 − L1 ) X
T
where t is a constant parameter, k1(i) denotes the set of So (8)
k1 nearest neighbors of xi in the same class. Let
= FF T

SW = X ( D − W ) X T , and we call it the within-class where F = XZ , and FF T is of size m × m.


scatter matrix. Since the size of F T F is N × N, according to the
knowledge of linear algebra, let λ i and l i be the ith
3.2. Between-class scatter matrix non-zero eigenvalue and the corresponding eigenvector
of F T F , ai = (λi ) −1 2 Fli is the eigenvector
With the purpose of making the projected vectors of corresponding to the ith non-zero eigenvalue of FF T ,
the sample of different class far from each other, we let rank ( F ) = r , L = [l1 ,", lr ] , Λ = diag ( λ1 ," , λr ) ,
maximize the distance of margin points belong to
different classes, the cost function is as follows: A = [a1 ,", ar ] , we get:
1 N

2
max y i − y j W ij ' (6)
2 i, j A = FLΛ−1 2 (9)
1 N T

2
= max A xi − AT x j Wij ' Finally, we can obtain the transformation matrix
2 i, j from eigenvectors corresponding to the d largest non-
= max tr ( AT X ( D'−W ' ) X T A) zero eigenvalues of FF T in A.

{
For a new test sample xi, we can project it to the
1 xi ∈k2 ( j ) or x j ∈k2 (i )
Wij ' = subspace via transformation matrix A as yi = AT xi ,
then classify it by nearest neighbor criterion.
0 otherwise
Compared with some other methods, our proposed
where k2(i) denotes the set of k2 nearest neighbors of algorithm has the following advantages:
xi in the different class. Let SB = X ( D'−W ' ) X T , and we • It merges respective advantage of two methods,
not only preserves within-class neighborhood
call it the between-class scatter matrix. geometry structure but also has excellent
discrimination ability, which is effective for
3.3. Projection face recognition.
• Based on the method of MMC, it can solve the
According to MMC, we will maximize the
SSS problem in face recognition and avoid
following criterion:
projecting the sample images into PCA
subspace in the preprocessing step, so without
J ( Aopt) = maxtr(AT (SB − SW ) A) (7) losing any important discriminative
information.
The transformation matrix A is obtained based on • We give an efficient solution to the eigenvalue
(4). problem, makes it relate to the number of
training samples rather than the size of the
3.4. An effective solve to the eigenvalue image, since our method avoids resizing the
original image of high resolution, there is no
problem
information lost.
Since the dimension of facial image is often very 4. Experiment
high, computing the eigenvector of SB -SW is time-
consuming. We give an efficient computation to the To evaluate the proposed algorithm, we compare it
transformation matrix A, it avoids the process of with several other methods, Fisherface [2], marginal
resizing the original image which gives cause for the fisher analysis (MFA) [20], geometry preserving
information loss in the MMC. projection (GPP) [21] (single model), MMC [12], [13],
SLPP [17], using the well-known ORL face database.

421
4.1. ORL face database

The ORL database contains 400 facial images, they


are 10 different grey images for each of 40 individuals. Figure 1. Examples of ORL face database
For some subjects, the images were taken at different
times, the facial expressions( smiling or not smiling,
open or closed eyes) and facial details( glasses or no
glasses) also vary. Each image has the resolution of
92 × 112 pixels with 256 grey levels per pixel. Twenty
sample images of four individuals in the ORL database
are displayed in Figure 1.
To see the influence of the number of train sample
to the recognition rate, we chose randomly n (n = 3, 4,
5) different images from each person for training and
the rest 10-n for testing, respectively. For each n, we
repeat this operation 15 times, the final recognition rate
is the average result over 15 random training sets.

4.2. Experiment setting


(a)
For all the methods except our proposed method,
we first resize the face images from 92 × 112 to 30 × 37
for computation efficiency in the experiment, then for
methods: Fisherface, MFA, SLPP, GPP (single model),
we preprocess them using PCA step, and N - C
principle components are retained.
We experiential set the parameters in the
experiment. We chose the value k1 ( 2 ≤ k 1 ≤ 4 )
according to the number of train sample of each
2
person, and k2=40. In the heat kernel exp(− xi − xj t) ,
we let constant parameter t=2. The nearest neighbor
classifier is used for final classification.

(b)
4.3. Experiment result

Figure 2 shows the plots of recognition rate vs.


reduced dimensions for the aforementioned methods.
The experiment result above demonstrates that our
proposed algorithm achieves the best recognition
performance.
We give some analysis on the above result:
• MFA, GPP (single model) and our proposed
algorithm are similar, they all preserve local
manifold structure and meanwhile search for
optimal feature space for effective classification.
However, our proposed algorithm outperforms
GPP (single model) a little, mainly because our
method avoids resizing the image and the process
(c)
of PCA projection, without losing any
information. Figure 2. Performance comparisons on the
ORL database (a) 3 train. (b) 4 train. (c) 5 train

422
Table 1. The top recognition rate achieved by [1] M. Turk and A.P. Pentland, “Face Recognition Using
Eigenfaces,” IEEE Conf. Computer Vision and Pattern
each method and the corresponding subspace Recognition, 1991.
dimension [2] P.N. Belhumeur, J.P. Hespanha, and D.J. Kriegman,
“Eigenfaces vs. Fisherfaces: Recognition Using Class Specific
3train/7test 4train/6test 5train/5test Linear Projection,” IEEE Trans. Pattern Analysis and Machine
Intelligence, vol. 19, no. 7, July 1997, pp. 711-720,.
Fisherface 87.4%(39) 89.5%(39) 92.0%(39)
[3] H.S. Seung and D.D. Lee, “The Manifold Ways of Perception,”
MFA 87.1%(40) 90.0%(50) 93.3%(42) Science, vol. 290, Dec. 2000.
MMC 88.1%(39) 90.2%(39) 92.2%(39) [4] A. Shashua, A. Levin, and S. Avidan, “Manifold Pursuit: A
New Approach to Appearance Based Recognition,” Proc. Int’l
GPP 89.0%(42) 92.5%(45) 95.0%(58) Conf. Pattern Recognition, Aug. 2002.
SLPP 83.2%(45) 89.6%(39) 92.5%(36) [5] Y. Chang, C. Hu, and M. Turk, “Manifold of Facial
our method 89.4%(40) 93.2%(46) 95.6%(45) Expression,” Proc. IEEE Int’l Workshop Analysis and
Modeling of Faces andGestures, Oct. 2003.
[6] J.B. Tenenbaum, V. de Silva, and J.C. Langford, “A Global
• Our proposed algorithm has better performance Geometric Framework for Nonlinear Dimensionality
Reduction,” Science, vol. 290, Dec. 2000.
than both SLPP and MMC, the reason is that
[7] S. Roweis and L. K. Saul, “Nonlinear dimensional reduction by
samples from different classes may be close to locally linear embedding,” Science, vol. 290, December 2001.
each other in the feature space learned by SLPP,
[8] M. Belkin and P. Niyogi, “Laplacian eigenmaps and spetral
as a result, errors will happen in the recognition techniques for embedding and clustering,” Advances in Neural
process; while MMC is a linear dimensionality Information Processing Systems, vol. 15, 2001.
reduction method, it doesn’t consider the [9] L.J.P. van der Maaten, E.O. Postma, and H.J. van den Herik.
manifold structure of face image space. Dimensionality reduction: A comparative review. Preprint.
2007.
• Fisherface is a well-known method for face [10] M. Brand, “Charting a Manifold,” Proc. Conf. Advances in
recognition, that is PCA+LDA. However, it fails Neural Information Processing Systems, 2002.
to discover the underlying structure, if face [11] L.K. Saul and S.T. Roweis, “Think Globally, Fit Locally:
images lie on a nonlinear manifold. UnSupervised Learning of Low Dimensional Manifolds,” J.
Machine Learning Research, vol. 4, 2003, pp. 119-155.
[12] H. Li, T. Jiang, K. Zhang, Efficient and robust feature
5. Conclusions extraction by maximum margin criterion, in: Advances in
Neural Information Processing Systems, 2003.
[13] H. Li, T. Jiang, K. Zhang, Efficient and robust feature
In this paper, we proposed a novel approach by the extraction by maximum margin criterion, IEEE Trans. Neural
combination of SLPP and MMC for effective face Networks 17 (1), 2006, pp. 157–165.
recognition. It merges respective advantage of the two [14] H. Cevikalp, M. Neamtu, M. Wilkes, A. Barkana,
methods, not only preserves within-class neighborhood Discriminant common vectors for face recognition, IEEE
geometry structure but also has excellent Trans. Pattern Anal. Mach. Intell. 27 (1), 2005, pp.4–13.
discrimination ability. An efficient computation of [15] X. Zhuang, D. Dai, Improved discriminate analysis for high-
dimensional data and its application to face recognition, Pattern
transformation matrix is also given. Our method avoids Recogn. 40 (5) , 2007, 1570–1578.
the preprocessing stage of both resizing the image and [16] X. He and P. Niyogi, “Locality Preserving Projections,” Proc.
PCA projection, thus, there is no information lost. Conf. Advances in Neural Information Processing Systems,
Experiment results show that Our method achieves 2003.
better performance than several present methods in [17] Zheng,Z. Zhao,Z. Yang,Z. "Gabor Feature Based Face
face recognition. Recognition Using Supervised Locality Preserving
Projection", in Proc. ACIVS, 2006, pp.644-653.
In the future, we will focus on extending our
[18] R. Huang, Q. Liu, H. Lu, S. Ma, Solving the small sample size
approach to multimodel biometrics recognition rasks problem of LDA, in: International Conference on Pattern
Recognition, 2002, pp. 29–32.
Acknowledgment [19] W. Zheng, L. Zhao, C. Zou, An efficient algorithm to solve the
small sample size problem for LDA, Pattern Recognition 37 ,
2004, 1077–1079.
This work was supported by the TrainingFund of [20] S. Yan, D. Xu, B. Zhang, H. Zhang, Q. Yang, S. Lin, Graph
NENU’S Scientific Innovation Project (No. NENU- embedding and extensions: a general framework for
STC07018) and the Fund of Jilin Provincial Science & dimensionality reduction, IEEE Trans. Pattern Anal. Mach.
Technology Department (No.20070322). Intell. 29 (1), 2007, 40–51 .
[21] T. Zhang, X. Li, J. Yang, and D. Tao, “Multimodal Biometrics
using Geometry Preserving Projections,” Pattern Recognition
References (PR), vol. 41, no. 3, March 2008, pp. 805-813.

423
2009 International Conference on Computer Engineering and Technology

Association Rules Mining Based On Simulated Annealing Immune Programming


Algorithm

Yongqiang Zhang Shuyang Bu


Hebei University of Engineering College of Information and Electrical Engineering
Handan,China Hebei University of Engineering
yqzhang@hebeu.edu.cn Handan,China
bushuyang840617@163.com

Abstract—Association rules mining is an important problem of significant characteristics. Firstly, it's the characteristic
data mining, in this paper we propose a association rules succession of evolutionary programming "random evolution,
mining algorithm based on the simulated annealing immune survival of the fittest", which has a better global
programming algorithm which combines each character of the optimization;Secondly, it introduces the feature of
simulated annealing algorithm and immune programming "immunization" on the composition model of unfavorable
algorithm. Through the theoretical analysis and the gene, which use awareness of the human brain on the
experiment we can find that this algorithm has better problem to avoid the search of complete random algorithm in
robustness and the global and local ability of search, thus it the region of no solution, thereby reduce the amount of
can quickly, effectively excavate more association rules which
calculation and improve the speed of solving questions.
meet the conditions.
Because the simulated annealing algorithm has strong
Keywords-Data mining; Association rules; Simulated ablity of local optimization and can make the search to
annealing algorithm; Immune programming algorithm avoid falling into the local optimal solution. Therefore, the
algorithm of this paper combines the simulated annealing
I. INTRODUCTION algorithm based on the immune programming algorithm, to
achieve the global and local organic combination. While
Association Rules Mining is an important area of this algorithm retains the feature of stronger ablity of local
research of data mining, it is used to look for the interesting optimization of simulated annealing algorithm, it also inhers
relationship or association between the data items of the
the feature of global optimization and the better
given data. Association Rules Mining is firstly raised by
characteristics of ability of computing of immune
Agrawal, Imielinske and Swami. Well-known Apriori
algorithm was proposed by Agrawal and Srikant[1]. On the programming, and thus it can better adapt association rules
many expansion of Association Rules Mining, Agrawal and mining of data mining. Therefore, this algorithm provides a
Srikant proposed a sequential pattern mining again[2], novel solution of the problem for association rules mining
Koperski and Han also studied the spatial association rule because of its powerful searching ability of the global and
mining[3] and so on. However, these traditional methods of local combination.
association rule mining existed various problems of slow
convergence and the low extraction rate of the right II. THE RELATED CONCEPTS OF ASSOCIATION RULES
associated rule. Moreover, the association rules mining need Let I = {i1, i2 ,..., im} be the collection of item sets (called
to find mostly frequent patterns which meet the item sets),and the task-related collection of data D is a group
requirements of support, it will face a great deal of space to of the transaction sets(called transaction database), in which
search. Therefore, this will require a high-speed, efficient each transaction T is also a item set, that is, T ⊆ I. Let A be a
method for association rules mining. collection of item sets, if and only if T ⊆ I, called transaction
Immune programming[4] is an effective algorithm of T include A. Association Rule is a kind of rule that contains
global optimization, which is proposed based on the
evolutionary programming. In this algorithm the immune
the following form: A⇒ B ,where
operation was joined into the evolutionary programming, to A ⊂ I,B ⊂ I,A ∩ B = φ .
a certain extent, it can inhibit degradation phenomenon in Generally, we use two parameters to describe the
the completely random optimization process of evolutionary attribute of associate rules:
programming and the possible fluctuation phenomenon in (1) Support: Let D have the transaction of the s% to
the latter time of evolution. The core idea is that the support the item sets of both A and B, s% is called the
operation is completed through two steps which are support of association rules A ⇒ B .
vaccination and immune operation based on reasonably
Called as support ( A ⇒ B ) = P ( A ∪ B ) .
extraction of immune vaccine. The former is to increase the
individual's fitness, the latter is designed to prevent the (2)Confidence: Let the transaction of D which support
degradation of the group. Therefore, the algorithm has two the item sets of A have the transaction of the s% as well as

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 424


DOI 10.1109/ICCET.2009.156
to support the item sets of B, c% is called the confidence of proportion α(0 ≤ α ≤ 1). The vaccine is extracted from the
association rules. prior knowledge of the problem, and it contains
Called as confidence ( A ⇒ B ) = P ( B | A) . informations and its accuracy which play an important role
In order to excavate a significant association rules, we on the efficiency of the implementation of this algorithm.
need to set two thresholds: minimum support and minimum 3) Immune selection. That is: we test individual which
confidence. If one both meet the threshold of the two rules, was vaccinated. If the offspring fitness is smaller than the
it is called the rules of strong. If item sets meet the parent generation, which show that resulted in serious
minimum support, that is, the emerging frequency of item degradation in the genetic process, then this individual will
sets is greater than or equal to the product of the minimum be replaced by the corresponding individual of the father. If
support and the total number of transaction of D, often the offspring fitness is better than the parent generation, it
called as frequent itemset. will enter into the next generation instead of the parent.
Association rules mining mainly includes two steps as Immune selection plays a positive role on the convergence
follows: of the algorithm, it can eliminate the negative influence and
Step one: Find all the frequent item sets, the frequency has strong robustness. Immune selection has the effective on
of these item sets should be at least equal to (pre-set) the inhibiting the poor adaptive modern and enhancing its role
minimum frequency of support according to the definition. in the strong, so it is the fundamental guarantee of
Step two: It can generate strong association rules accord convergence.
to the collection of frequent item sets. According to the B. The flow chat of the simulated annealing immune
definition these rules must meet the minimum threshold of programming algorithm
confidence.
III. SIMULATED ANNEALING IMMUNE PROGRAMMING
ALGORITHM Initialization

A. The description and analysis of immune operator


Fitness calculation
This paper introduces a new operator based on
enlightenment of the life sciences in the standard
evolutionary programming algorithm, that is, immune Stop running and
operator. Immune operator is made up of three steps, they Y output the optimal
Conditional
value
are extraction of the vaccine, vaccination and immune judgement
selection. Vaccination is to improve the individual fitness,
and immune selection is to prevent degradation of the N
group. Specific description is as follows: Extraction of the
1) Extraction of the vaccine. This algorithm takes the vaccine
adaptive method to extract the vaccine. In the evolution
process of the groups, we extract effective information from
The operation of
the best individual genes of every generation in order to simulated annealing
produce vaccines. The procedure is: let the individual be x
= x1, x2, ..., xL, through the analysis of the best individuals
which are reserved from the former K-1 generations, we The operation of
gauss mutation
take the common characteristics and effective informations
of this best individual's gene x1, x2 as vaccines H.
2) Vaccination. Set up individual b ∈ Rn, b = (b1, ..., Vaccination
bn). Vaccinated to them means to amend some genes of the
b according to the prior knowledge, so that individuals
could have the higher adaptation degree with the greater Immune selection
probability. These prior knowledges can be probably value
range of the optimal solution's some components, they may
also be a certain restrictive relation between some The updating of
components. Moreover, the operation should meet the popolation
following conditions: if b is already the best individual,b
transfer to b with probability 1; if b is the worst individual, Figure 1 The flow chat of the simulated annealing
that is, every gene of b with is different from the best immune programming algorithm
individual, b transfer to b with probability 0. Let the Groups
B = (b1, ..., bN), Vaccinated to B is a sort of operation that
random select Nα = αN individuals according to a certain

425
IV. THE ASSOCIATION RULES MINING
ALGORITHM BASED ON THE ALGORITHM OF THIS ⎧ 1, f i + 1≥ f i
p = ⎨ (2)
⎩ exp[( f i + 1 − f i / T )], f i + 1 < f i
PAPER
1) Initialization code: At present, antigen and antibody
in the general immune algorithm, that is: the coding Where fi +1 is the fitness value of the offspring
methods of solution of the problems mainly have three individual, fi is the fitness value of the father individual,
kinds which are binary code, real-coded and character temperature T acts as the control parameters which diminish
encoding, there are also a few gray code. It is mainly in the process of the algorithm.
transaction database for the discovery of association rules, 6) The operation of gauss mutation: The operation of
in which the application aimed are some data. Therefore, gauss mutation is conducted for the current group of father
this paper adopts the character encoding. Each record in Ak, thus generates the new group Bk. Let Ak=(a1,a2,...,aN),
data mining which will be dealt with is regard as each
antigen, candidate pattern which will be generated in the ai Ω ⊂ Rn, a i = (a i ,a i ,...,a i ) ,(i =1,2,…,N)
1 2 n
searching process is regard as antibody. Assume that there
are transaction data as follows (the commodities were The operation of gauss mutation which is carried out for
individual ai generates the new individual bi as follows:
bought by customers )
Table1 The coding of commodity
Commodity 1 Commodity 2 Commodity 3 Commodity 4 b ij = a ij + ξ ji , j =1,...,n j = 1 ,..., n (3)
a b c d
a
a
d
i
e
j
h
d
Where ξ ij obeys the gaussian distribution N(0, δ ij ),
2

variance is calculated according to the formula (4)


For the table 1 the antigen coding is a, antibody
a ⇒ d can be defined as a structure, coding is (a,d). δ ij = (Tk M j + m j ) /(Tk + f (a i )) (4)
N individuals are randomly generated in data set,thus
constitue the initial parent groups A0. The gauss mutation carried out for the group Ak is
2) Fitness function: Because the support Supp(x) and conducted for some individuals of the groups according to a
the confidence Conf(x) are the two important parameters in certain probability of mutation. Mj and mj respectively
association rules, we take the fitness function as follows: control the degree of mutation of the individual during the
early and late of evolution process. Or rather, they control
F(x) = W × Supp(x)/Supp + the step of the optimization of algorithm in the different
s min evolution stages. Therefore, the choose of these two
(1)
W × Conf(x)/Conf parameters have a great relationship with the shape and size
c min of Ω, and mj≠0.
7) Immunization: We carry out the operation of
Where Ws + Wc = 1,Ws ≥ 0,Wc ≥ 0, Suppmin is the immunization for the group Bk, thus have got the group Ck.
threshold of support, Confmin is the threshold of confidence. 8) Immune selection: We carry out the operation of
We can see that the greater the support and confidence, the immune selection for the Ck, thus have got the new father
larger the value of fitness function. generation Ak+1, then transfer to (2).
3) Conditional judgement: If the current group has V. THE RESULT OF EXPERIMENT
included the optimal solution (that is, the antibodies which
In this paper, according to the record data of transaction
have been got meet the minimum support and minimum
of customers in e-shopping we conduct the corresponding
confidence at the same time) or have already met some
mining of association rules. We can discover the habits of
termination condition (such as setting a maximum iteration
customers who used to buy commodities by using the
numbers), the algorithm would stop running and output the
algorithm of simulated annealing immune programming,
result; Otherwise continue.
thus help businesses develop targeted marketing and
4) Extraction of the vaccine: We extract the vaccines H advertising plans and compile the proper list of commodities.
based on the best individual. For example: the analysis result of market shopping will
5) The operation of simulated annealing: We take fitness help businessmen plan and design how to rationally put the
as the energy in the simulated annealing algorithm. When commodities inside market.
the value of fitness increases, we accept the current solution For some basic informations of customers and the name
to be the next current solution, or accept this solution by a of commodities(that is, the fields of database ), such as the
certain probability p = exp (-fitness / T), that is : customer's age, occupation, income and the name of the

426
electronic goods and so on, we express them by means of experiment show: this algorithm has the feasibility and high
the character encoding. Some values of the attributes effectiveness.
encoded in the following table 2.
ACKNOWLEDGMENT
Table 2 The coding of attributes values
This paper is supported by National Natural Scieence
Name of attribute Wide of attribute Values of coding
Foundation of Hebei Province No: F2006000648 and No:
<20 a
F2008000752.
Age 20-39 b
40-59 c REFERENCES
>59 d [1] Agrawal R, Srikant R. Fast Algorithm for Mining Association Rules.
20K-29K a In Proceeding 1994 International conference Very Large Data
30K-39K b Base(VLDB 94). Santiago, Chile. Sept, 1994:487-499.
Year of income 40K-49K c [2] Agrawal R, Srikant R. Mining Sequential Patterns. In Proceedings
50K-59K d International Conference Data Engineering (ICDE,95). Taibei.Taiwan.
… … 1995:3-14.
Student a [3] Koperski K, Han J.Discovery of Spatial Association Rules in
Worker b Geographic Information Databases. In Procceeding 4th International
Occupation Manager c Sympothsis Large Spatial Databases (SSD,95). Portland,
Teacher d Me.1995:47-66.
… … [4] Agrawal R, Srikant R.Fast Algorithm for Mining Association Rules.
Computer a In Proceeding 1994 International conference Very Large Data
DV b Base(VLDB 94). Santiago, Chile. Sept, 1994:487-499.
Category of MP3 c [5] Meilian Liang, Jiahui Liang, Guo Chen.Association rule mining
commodity Mobile hard disk d algorithm based on arrificial immune system[J]. Computer
Anti-Virus Software e Applications.Aug.2004.
… … [6] Yang jie, Genhao Deng. Mining Association Rules Based on
Artificial Immune Algorithm. Computing Technology and
In the experiment the parameters of algorithm are: the Automation. Mar. 2005.
initial group is 50, the number of iteration are 100 times, the [7] Parthasarathy S, Zaki M J, Ogihara M. Parallel data mining for
probability of the gauss mutation is 0.6; The parameter Tk in association rules on shared-memory systems[J]. Knowledge and
the annealing selection meets the formula: Tk= ln[T0/k+ Information Systems, 2001; 3(1): 1-29.
1](where T0=100) , the threshold of confidence is 75%, the
threshold of support is 1%.
The following are some association rules excavated
which meet the minimum support and confidence:
Computer ⇒ Anti-Virus Software
[support=2%,confidence=90%]
Age ( X , <20) ⇒ category of commodity ( MP3)
[support=4%,confidence=75%]
Age(X,20-39) ∩ Income of year(30K-39K)
⇒ category of commodity(computer)
[support=6%,confidence=80%]
...
From the result of the experiment we can see that this
algorithm could effectively find most frequent sets and
generate the association rules. These rules meet the actual
conditions, thus show that this algorithm is effective and
feasible for use in the association rules mining.
VI. CONCLUSION
This paper proposes a association rules mining
algorithm based on the simulated annealing immune
programming algorithm which combines the immune
programming algorithm and simulated annealing algorithm.
This algorithm has stronger robustness and the effectively
global and local ability of search. The result of the

427
2009 International Conference on Computer Engineering and Technology

Processing Power Estimation of Simple Wireless Sensor Network Nodes by Power


macro-modeling

M. Rafiee, M. B. Ghaznavi-Ghoushchi, B. Seyfe


Electrical engineering dept.
Shahed university
Tehran, IRAN
{rafiee, Ghaznavi, seyfe}@shahed.ac.ir

Abstract— The operation of wireless sensor networks is sequences for each circuit block. 2) Simulate each block at
fundamentally constrained by available energy sources. In this gate or circuit-level using the collected input sequences. 3)
paper, we propose a numerical power estimation technique for Add the power consumption for all blocks to produce the
register transfer level. This technique allows estimating the power consumption of the whole circuit. The disadvantage of
power dissipation of components in WSN1 to their statistical this approach is that it requires the interaction between RT-
knowledge of primary inputs/outputs. During power level simulators and low-level simulators; power evaluation
estimation procedure, the sequence of an input stream is is actually done at gate-level.
generated using input metrics and numerical macro-model Other technique for power estimation at RTL-level is
function is used to construct a set of functions that maps the
macro-modeling. In this technique, low-level simulations of
input metrics of a module to its output metrics. Then,
simulation is performed and power dissipation is predicted by
modules under their respective input sequence are replaced
a macro-model function. The results are effective and highly by power macro-model equation evaluation.
correlated, with average error of 3.5%. Macro-modeling techniques use capacitance models for
circuit modules and activity profiles for data or control
Keywords-component; Wireless Sensor Networks, Processing signals [8-10].
Power, Macro-modeling In this paper, we focus on the problem of power
estimation at register transfer level (RTL) for processor
I. INTRODUCTION components of node in sensor network.
Various power estimation techniques can be divided into
Networked sensor systems are seen by observers as an two categories: probabilistic and statistical.
important technology that will experience major deployment Probabilistic techniques [11-13] use the probabilities of
in next few years for a plethora of applications. Typical the input stream and their propagation into the circuit to
applications include, but are not limited to, data collection, estimate the internal switching activities. These techniques
monitoring, surveillance and medical telemetry [1-2]. are very efficient, but they cannot accurately capture factors
Wireless Sensor Network consists of large number of sensor like glitch generation and propagation. In statistical
nodes. These tiny nodes consist of sensing, data processing, techniques [14-16] the circuit is simulated under randomly
and communicating components. Sensor Network (SN) aims generated input patterns and the power dissipation is
to provide an efficient and effective connection between the monitored using a power estimator. Therefore, the power
physical and computational worlds. Sensor-nets are enabling values are used to estimate the power dissipation for every
previously impossible applications but since they are often input stream.
battery-powered -typically by a pair of AA alkaline batteries The used technique generates random input vectors and
that can supply 3 volts at 2000mAhr – sensor-net operations its power dissipation is estimated using power estimator. The
are fundamentally constrained by energy availability. sequence vectors were provided to estimate power
The four main ways in which nodes consume energy are dissipation of a given circuit with certain statistical
sensing, communication, computation, and storage [3-6]. constraints such as confidence levels and error. The average
Energy constraints, coupled with the need for longer life- power dissipation was estimated by simulating the circuit
times, have led to a variety of techniques for modeling [7] using a large number of samples in these vectors.
and managing energy consumption. The input/output (I/O) metrics of our macro-model are
Power estimation at RT level is crucial in achieving a the average input signal probability Pin, average input
short design cycle. Macro-modeling is the major technique transition density Din, input spatial correlation Sin, average
for power estimation at RT-level. output signal probability Pout, average output transition
The standard hierarchical simulation approach to RT- density Dout, and output spatial correlation Sout.
level power estimation consists of three steps: 1) functionally The rest of this paper is organized as follows. In Section
simulate the RT-level description and collect the input II we give the background for the input parameters of our
macro-model. In Section III, we describe structure of WSN.
1
Wireless sensor network
In Section IV, we discuss about our macro-model

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 428


DOI 10.1109/ICCET.2009.91
construction. This macro-model is evaluated in Section V. nodes that do stimulation of the sensors, 2) sensor nodes that
The results depict in Section VI. Section VII summarizes our monitor events and 3) user nodes that query the sensors and
work. are the final destination of the target reports.
Node performs a simple task: take an analog sample, and
II. POWER MACROMODELING transmit the data over the wireless link to one or more
Our macro-model consists of a nonlinear function and receivers. Node module functionally consists of three
estimates the average power dissipation Pavg using equation concurrent modules, which are analogous to the four main
(1). components of the node, namely, Analog-To-Digital (ADC)
Pavg = f ( Pin , Din , Sin ) (1) Converter, Microcontroller, Encryption and Transceiver.
The ADC converts the analog signal into digital values.
The macro-model function f (.) is obtained by a given Transceiver Sender receives data from sensor module, or
module macro-modeling which maps space of input signal receives data from other node module or transmits the data to
properties to the power dissipation of a circuit. other node module through the wireless channel.
Given a circuit block with n inputs and a binary input Microcontroller controls the whole process by setting an
stream I={(i11,i12,…,i1n)},…,(il1,il2,…,iln)} of length l, these interface between the two other sections.
metrics are defined as follows: All the nodes perform the same function but at different
n l
frequency, data resolutions and data domains.
ikj ADC converts the analog value into 10-bit digitals.
Module C takes the data from the ADC, adds the address of
j =1 k =1
Pin = (2) the receiver node and provides the data payload for the
n×l Transceiver module. Transceiver can send data to next node
or sink by using IEEE 802.15.4 standard [17] (CSMA/CA
n l −1
policy).
Sink consists of two components, Receivers, and CPU.
ikj ⊕ ik +1 j Receiver receives data from concurrent node module and
j =1 k =1
Din = (3) sends to CPU Module.
n × (l − 1) Fig. 1 shows the overall structure of sample WSN
system. Fig. 2 depicts the structure of Node module in WSN.
n n l
Port
ink ⊕ inj Node
S tim u lu s

M onito r
1 FIFO
j =1 k =1 n =1
Sin = (4) Sink
l × n × (n − 1) Port FIFO
Node
The output metrics are the average output signal 2
probability Pout, average output transition density Dout and FIFO
output spatial correlation Sout. The macro-model function f in ECO System
equation (1) can be used to construct to a set of functions fA ,
fB and fC that maps the input metrics of a macro-block to its Figure 1. Overall eco system
output metrics Pout, Dout, Sout are derived in equations (5), (6),
and (7):
16 16
Pout = f A ( Pin , Din , Sin ) (5)
ADC

ADC

Dout = f A ( Pin , Din , Sin ) (6)


Transceiver

Sout = f A ( Pin , Din , Sin ) (7)


10 10

The sequence of an input stream is generated for a µc


desired input metrics, then the output stream sequence is
extracted by the output waveforms simulation technique, and 30 64
the power dissipation is predicted by macro-model function.
III. STRUCTURE OF WSN Encryption

A sensor network is modeled as a set of heterogeneous


entities. Sensor nodes deployed over the area of interest.
They are triggered by a certain set of stimuli that are
transmitted to a remote base-station. Three main types of
Figure 2. Node module
sensor nodes need to be created and supported: 1) target

429
IV. MACROMODEL CONSTRUCTION TABLE I. ACCURACY OF POWER ESTIMATION

Several methods [18-20] have been proposed to construct


power macro-modeling. Circuits Average error %
In used static power estimation procedure, the input ADC-1 7.2
metrics is computed for an input stream. The output stream
ADC-2 4
sequence is derived from the output waveforms of each
module. The average power dissipation Pavg is predicted ADC-3 8
using equation (1). ADC-4 3
We define a power macro-model as a linear function for
ADC-5 9.6
the estimation of power dissipation.
ADC-6 5.1
Pavg = β 0 + β 1 Pin + β 2 Din + β 3 Sin (8) DES-1 0.59
DES-2 0.33
Where the coefficientsβ i are the unknown and are to be DES-3 0.17
determined during the characterization using regression DES-4 0.44
analysis as discussed in [21]. To improve accuracy, another DES-5 0.29
option is the function considering I/O statistics Pin, Din, Sin,
Pout, Dout, and Sout as independent variables in (9):
Power consumption used model of microcontroller is less
than 0.0001 mW hence effect of this power in total
Pavg = β 0 + β 1Pin + β 2 Din + β 3 Sin + β 4 Pout processing power is inconsiderable.
+ β 5 Dout + β 6 Sout (9) Fig. 3 illustrates power comparison between macro-
model and reference simulated power in ADC module.
Fig. 4 depicts power comparison between macro-model
The key difference between the (8), (9) models is the
and reference simulated power in DES module.
number of fitting coefficients that impact the achievable
accuracy and the characterization effort.
V. MODEL ACCURACY ANALYSIS
Power macro-model is built at RTL level. The accuracy
of the proposed model is evaluated on processor components
of wireless sensor network. For those modules, we generated
random values of Pin, Din, and Sin. The function f in
equation (1) is used to construct to a set of functions fA, fB
and fC that maps the input metrics of a module to its output
metrics Pout, Dout, Sout.
The power values predicted by macro-model are
compared with those from simulations, and average errors
are computed.
Experimental results show that our randomly generated
sequences are with accurate statistics and highly
convergence. We generated 40 sequences with 10, 16, 64 Figure 3. Power comparison between macro-model and reference
bits wide. The sequence length is 200 vectors for the simulated power in ADC module
modules
VI. RESULTS
It is obvious from Table I that the function is accurate for
estimating the average power for ADC, Microcontroller, and
DES modules. In Table I the first column represents the
name of modules. Column two give the average error for the
estimates obtained with our macro-model. Reference values
for the module’s power dissipation are obtained using time
delays from the Synopsys PowerCompiler. In our
experiments, the average error is 3.5%.

430
[6] J. Polastre, “Design and implementation of wireless sensor networks
for habitat monitoring”, Master's thesis, University of California at
Berkeley, 2003.
[7] V. Shnayder, M. Hempstead, B. rong Chen, G. Werner-Allen, and M.
Welsh, “Simulating the power consumption of large-scale sensor
networkapplications”, in Proceedings of the Second ACM Conference
on Embedded Networked Sensor Systems (SenSys'04), Nov. 2004.
[8] S. Powell and P. Chau, “Esitmating power dissipation of VLSI signal
processing chips: The PFA techniques”, Proceeedings of IEEE
Workshop on VLSI Signal Processing IV, vol. IV, pp.250-259, 1990.
[9] P.Landman and J. Rabaey, “Power esitmation for high-level
synthesis”, Proceedings of IEEE European Design Automation
Conference, pp.361-366, Feb, 1993.
[10] D. Liu and C. Svensoon, “Power consumption estimation in CMOS
VLSI chips”, IEEE Journal of Solid State Circuits, vol. 29, pp.663-
670, Jun. 1994.
[11] A. A. Ghose, S. Devdas, K. Keutzer and J. White, “Estimation of
average switching activity in combinational and sequential circuits,”
In Proceedings of the 29th Design Automation Conference, pages
Figure 4. Power comparison between macro-model and reference 253-259, June 1992.
simulated power in DES module
[12] F. N. Najm, R. Burch, P. Yang, and I. N. Hajj, “Probabilistic
simulation for reliability analysis of CMOS circuits,” IEEE
Transactions on Computer-Aided Design of Integrated Circuits and
Systems, 9(4):439-450, April 1990.
VII. CONCLUSIONS [13] R.Marculescu, D. Marculescu, and M. Pedram, “Logic level power
Sensor-net lifetime is severely constrained by the estimation considering spatiotemporal correlations,” In Proceedings
available energy source, Hence in this paper we present a of the IEEE International Conference on Computer Aided Design,
pages 224-228, November 1994.
new numerical macro-modeling technique for high level
[14] G.Y. Yacoub and W.H.Ku, “An accurate simulation technique for
power estimation. This procedure uses input/output (I/O) short-circuit power dissipation,” In Proceedings of International
statistical parameters at the architectural level. We compare Symposium on Circuits and Systems, pages 1157-1161, 1989.
our macro-modeling results with Synopsys Power Compiler [15] C. M. Huizer, "Power dissipation analysis of CMOS VLSI circuits by
power estimation tool and find accuracy of this technique is means of switch-level simulation,” In IEEE European Solid State
good. Our model shows average error of 3.5%. Circuits Conf., pages 61-64, 1990.
[16] C. Deng. “Power analysis for CMOS/BiCMOS circuits,” In
REFERENCES Proceedings of 1994 International Workshop on Low Power Design,
pages 3-8, April 1994.
[1] I.F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci,
"Wireless sensor networks: a survey",Computer Networks, 38(4), pp. [17] L. Cheng, “IEEE 802.15.4 MAC Protocol Study and Improvement”,
393–422, March 2002. A Dissertation Submitted in Partial Fulfillment of the Requirements
for the Degree of Doctor of Philosophy, Georgia State University,
[2] D. Estrin, L. Girod, G. Pottie, and M. Srivastava, "Incrementing the
2000.
World with Wireless Sensor Networks", IEEE ICASSP 2001, 4, pp.
2033-2036, 2001. [18] G. Bernacchia, and M. C. Papaefthymiou, “Analytical
Macromodeling for High-Level Power Estimation”, In Proc. IEEE
[3] L. Doherty,B. Warneke,B. Boser, and K. Pister, “ Energy and
Int. Conf. Computer Aided Design, pp.280-283, 1999.
performance considerations for smart dust”, International Journal of
Parallel Distributed Systems and Networks, vol. 4, no. 3, pp. 121-133, [19] M. Anton, I. Colonescu, E. Macii, and M. Poncino, “Fast
2001. characterization of RTL power macromodels”, In IEEE Proc. of
ICECS, pp. 1591–1594, 2001.
[4] P. Dutta, M. Grimmer, A. Arora, S. Bibyk, and D. Culler, “Design of
a wireless sensor network platform for detecting rare, random, and [20] S. Gupta and F.N. Najm, “Power Macromodeling for High Level
ephemeral events”, in Proceedings of the Fourth International Power Estimation,” In Proceeding IEEE Transactions on VLSI, 1999.
Conference on Information Processing in Sensor Networks (IPSN [21] Q. Qiu, Q. Wu, M. Pedram, C. S. Ding, “Cycle-Accurate Macro-
'05). Models for RT-Level Power Analysis”, International Symposium on
[5] S. Madden, “ The design and evaluation of a query processing Low Power Electronics and Design, pp. 125 – 130, 18-20 Aug 1997.
architecture for sensor networks”, Ph.D. dissertation, U.C.Berkeley,
2003.

431
2009 International Conference on Computer Engineering and Technology

A Fault-tolerant Strategy for Multicasting in MPLS Networks

Huang Weili, Guo Hongyan


College of Information and Electrical Engineering
Hebei University of Engineering
Handan, P.R. China
E-mail: starshine_0819@163.com, guohongyan_0819@163.com

Abstract—Multicast is an effective way for increasing the accordingly, many algorithms have been proposed to support
efficiency of network resources utilization. But when designed, multicast in MPLS networks.
MPLS did not consider the support of multicast. So multicast Reference [4] proposed an algorithm called MMT to
in MPLS has many problems. To solve this, we introduce and solve the problems of scalability of multicast in MPLS
propose a new multicast strategy in this paper that combines networks. By using this algorithm, forwarding states can
ERM and AMFM. Compared with the previous multicast only be stored on branching node routers, which largely
algorithms, it simplifies LSP setup and has less forwarding reduces the forwarding states of the network. And reference
states. And it is fault-tolerant. So if implemented in MPLS [5] gives out an algorithm called ERM which only selects
networks, it can get a better performance.
edge routers as the branching nodes, and in doing so, many
Keywords-MPLS; multicast;fault-tolerant; FSMM
advantages are gained. To further reduce multicast state,
reference [6] proposed an algorithm named Aggregated
Multicast, which allows multiple multicast groups to share a
I. INTRODUCTION single delivery tree in a MPLS domain. For the consideration
Increasing the efficiency of Internet resources utilization of the robustness of multicast in MPLS, reference [7]
is becoming more and more important. Several evolving proposed an algorithm called AMFM which facilitates fault-
applications like WWW, video/audio on-demand services, tolerance in a very elegant way. Though so many algorithms
and teleconferencing consume a lager amount of network have been proposed, they only aim at solving one kind of
bandwidth. Multicasting is a useful and effective operation problems without any consideration for other kinds of
for supporting such applications. Using the multicast problems. It may successfully solve problems it studies, but
services, data packets can be sent from one source to several other kinds of problems still exist. And through thoroughly
destinations by sharing the link bandwidth. Only one copy of study, we can find that different multicast algorithms may
the data packet is needed while a number of copies of data solve different problems and have different performance, but
packets are necessary in a unicasting network environment. the technologies they adopted can be very similar. So it is
So, multicast uses the bandwidth resource more effectively impossible to combine different kinds of algorithms to solve
and efficiently. several different kinds of problems together and
Besides, Multi-protocol label switching (MPLS) [1] [2] simultaneously. For this purpose, a new strategy called fault-
has emerged as an elegant solution to meet the bandwidth tolerant strategy for MPLS multicasting (FSMM) is proposed
management and service requirements for next generation in this paper.
Internet Protocol (IP) based backbone networks. We think The remainder of this paper is organized as follows. In
that Multicast and MPLS are two complementary this section, we present a brief introduction to Multicast and
technologies, and by merging these two technologies MPLS, and state the reason and motive for our proposed
together, we can enhance the network performance and strategy. Section 2 describes in detail our proposed strategy.
present an efficient solution for multicast scalability and And Section 3 is analysis and evaluations of our proposed
control overhead problems; Multicast attempts to reduce strategy. Section 4 is a summary followed by a list of
network bandwidth usage, while MPLS attempts to provide references.
users with needed bandwidth in an appropriate switched-like
manner. However, at the beginning, MPLS is designed II. A FAULT-TOLERANT STRATEGY FOR MPLS
without any consideration for supporting multicast. For MULTICAST
supporting multicast in MPLS networks, problems arise Through firmly comparison and thoroughly study, we
while mapping layer 3 multicast trees to layer 2 LSPs (Label find that the algorithms ERM and AMFM are perfect
Switched Path). Thus a number of issues need to be solutions of the problems which they study. What is more,
addressed, such as flood and prune, source/shared trees, the technologies they adopted are found to be similar. So it is
uni/bin-directional trees and encapsulated multicast. To solve very possible to combine them to get a better solution for
the difficulties generated by implementing multicast in multicasting in MPLS networks. Based on this concept and
MPLS networks, reference [3] proposed a new framework the algorithms of ERM and AMFM, we proposed a new
for supporting multicast in MPLS networks. And strategy for MPLS multicast (FSMM). Our new proposed

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 432


DOI 10.1109/ICCET.2009.138
strategy has both the characteristics and advantages of ERM flow assignment algorithm can be executed to map the flow
and AMFM, and furthermore, it can further reduce the onto an LSP. This will increase the latency for the delivery
forwarding states and get a better performance of the of the very first packet. So we use explicit join and leave.
networks. The Fig. 1 shows an example of our proposed Based on the information stated above, it is enough now
FSMM, and in the following of the section, we will describe to construct a multicast tree. However, considering the
our proposed strategy in detail based on Fig. 1. robustness of our strategy, it is still not perfect. So for each
multicast source, we construct two multicast trees at one
A. Construction and Destruction of the Multicast Tree time. One is for present use, and the other is a backup tree. If
In this paper, we mainly focus on the intra-domain one link of the present tree breaks or fails for some reasons,
routing algorithm because inter-domain routing protocols we can transfer the multicast flow to the backup tree and
allow each autonomous domain to have its own multicast destroy the failed tree. By doing so, our strategy is fault-
implementation. And we assume that in MPLS domain, tolerant. And its robustness is largely developed.
Multicast group members are directly attached to LERs Take Fig. 1 as an example, and as stated above, the
(Label Edge Routers). Then our new proposed strategy tries construction procedure of multicast tree can be described as
to construct a tree whose branching nodes are only located at follows.
LERs. And in our new proposed scheme we adopt source- (1) Select a node as the MIM of the network, which can use
based tree; that is means we construct a multicast tree per the same procedure adopted by the algorithms MMT
source. Source-based tree has an advantage over core-based and PIM.
tree in address allocation, since each source can freely pick (2) The Source informs the MIM that he is the first active
any address and create a unique (S, G) state. Besides, in our branching node of the multicast tree.
new proposed strategy, we use centralized-control, which (3) If a new LER, say E1, wants to join the tree, it sends a
means we select a dedicate node called ‘Multicast QUERY message to MIM.
Information Manager’ (MIM). The role of our MIM is very (4) MIM returns an ANSWER message with a list of
different from the ‘Core’ or ‘RP’ in CBT and PIM. It candidates, in this example, the candidates only include
functions more like an information and managing server, and S.
is responsible for group membership management in an (5) Based on the own routing table, E1 picks the best
MPLS domain. It keeps a record of current active on-tree candidate, say S, as the join point.
edge routers and returns a list of candidates to a new (6) E1 sends a JOIN message to S, and S updates its routing
receiver. The merits of centralized-control include easy table by creating an outgoing entry for multicast state (S,
implementation and simplified routing algorithms. In our G).
strategy, we avoid using the flood-and-prune approach for (7) If successful, S informs MIM that E1 is now an active
members to join and leave the multicast tree. Instead we use on-tree edge router through an ADD message.
explicit join and explicit leave. For the density of a multicast (8) MIM inserts E1 in the active member list.
group is likely to be sparse compared to the size of network. (9) If there are still LERs who want to join, then repeat the
Explicit join and leave would be more efficient in such procedure between step 3 and step 8, until the whole
environment. Besides, flood and prune are traffic driven, not multicast tree is constructed
control driven. When a multicast flow arrives at the edge of a
network, it needs to set up a tree first, only after which the

E2 (g0,g1,g2)
Ts
MIM R2

R6

R1 R5
T
R4
R7
R8

R3
(g0,g1,g2) S E1 (g0,g1)

Multicast Information Manager Label Switching Router


Label Edge Router Backup Tree Ts Multicast Tree T

Figure 1. Illustration of FSMM

433
(10) As the multicast data being transmitted by the A. Simplifies LSP Setup
established multicast tree, we construct a backup tree The multicast tree structure requires establishing point-
using the same procedure as stated above. This time, if to-multipoint LSPs or even multipoint-to-multipoint LSPs. In
a new member wants to join the tree, it must select a current MPLS architecture, only point-to-point LSP has been
different LSP from that of the previous tree to get to the addressed. MPLS does not exclude other type of LSPs, but
join point. no mechanism has been standardized for this purpose. The
As depicted in Fig. 1, and by the procedure stated above, design of efficient multicast-enabled LSPs layout is still an
we construct two trees for the multicast source S. They are intriguing issue for researchers. In our proposed strategy,
tree T includes LSP (S-R4-R5-R6-E2) and LSP (S-R7-R8- since the diverging nodes of the tree are only located at edge
E1), and tree Ts, Ts includes LSP (S-R1-R2-E2) and LSP LSRs, there is no need to create and maintain point-to-
(S-R3-E1). An edge node will leave a multicast tree when multipoint or multipoint-to-multipoint LSPs. Instead, a tree
two conditions are met. First, it detects that there is no can be decomposed and mapped to multiple point-to-point
active member directly attached to it by Internet Group LSPs. So in the core network of a MPLS domain, the LSRs
Management Protocol (IGMP) report. Second, it does not do not need to care whether a packet is a multicast packet or
have any downstream peer. The leaving node will send a a unicast packet. That means it is no need to establish point-
SUBTRACT message to the MIM to update the member multipoint or multipoint-multipoint LSPs. So the setup of
list, and a PRUNE message to its upstream peer. When LSPs is much simplified.
there is no multicast packets transmitted through the tree.
Then the MIM destroys the tree and the backup tree. B. Reduces the Forwarding States of the Network
B. Group Aggregation and Fault-tolerance In our proposed strategy, each branch of a multicast flow
can be aggregated with other unicast flows which share the
In our proposed strategy, in order to further reduce same ingress and egress LERs. Thus the scalability of MPLS
forwarding states, we will use group aggregation. That traffic engineering will not be compromised. And by group
means when a new multicast data flow arrives at an ingress aggregation, several multicast sessions can share a single
LER, we will not immediately establish a multicast tree for multicast tree, so the number of multicast trees of the
it. We first check if there is already a existing tree that can network is much reduced. So in a word, the total forwarding
cover all the members of the new multicast session. If there states is much reduced.
is one, then we will transmit it through the tree. And if there
is none, we will establish a new tree for it. In this way, C. Relaxes the requirements of the core LSRs
several multicast sessions can share one multicast tree. For One of the reasons that IP multicast is not widely
example in Fig. 1, we assume there are three multicast implemented is because of the fact that many core routers in
sessions from source S--g0, g1, and g2. g0, g1 include E1 the backbone are not multicast ready. As the core routers are
and E2, g2 includes E2. Then these three sessions can share usually carrying out critical missions, they are unlikely to be
the same multicast tree T. What is more, we can see that we upgraded off-line in the near future. So our approach is
limit the branching nodes at edge routers of the domain; in designed in such a way that it poses little or no multicasting
this way, there is no need for the LSRs to store any restrictions on core routers. In our proposed strategy, core
multicast states. As for the LSRs, they do not care whether LSRs are not involved in the whole procedure, for them, it is
a packet is a multicast packet or a unicast packet. It only the same as in a unicast MPLS network.
needs to forward it according to its incoming label. So, the
forwarding states in the domain are largely reduced. D. Better robustness
For fault-tolerance, we construct two trees. One for In our proposed strategy, when a failure occurs, the tree
present use and the other backup tree for future use if the manager invokes the failure recovery module, which first
present tree fails. If a failure occurs in the present tree, then detects which aggregated trees are affected. The recovery
the MIM informs the source S that, from now on, every module retrieves the backup trees of the failed trees, and
multicast FEC (Forwarding Equivalence Class) that goes switches the related multicast groups to the backup trees.
through the failed tree T will be moved to the backup tree Ts. Note that this tree-switching can be done very quickly and
Meanwhile, MIM will establish a new multicast tree as the efficiently since we only need to change the group-tree
backup tree. Then, MIM will inform all the branching nodes matching entries at the edge of the network. In this way, our
of the failed tree to delete all the forwarding states they proposed strategy is fault-tolerant. So the robustness of the
stored and destroy that tree. network is greatly improved.
From the analysis above, we can see that our proposed
III. ANALYSIS AND EVALUATION OF THE FAULT- strategy can simplify the setup of LSPs and makes multicast
TOLERANT STRATEGY FOR MPLS MULTICAST flows aggregatable with unicast flows, which together with
Through the procedure we adopted to construct multicast group aggregation much reduced the forwarding states of the
tree, we limited the branching nodes of the tree only at edge network. And our strategy is fault-tolerant, so it has a better
routers. By doing this, many advantages can be gained. The robustness. In a word, through our proposed scheme, the
advantages of our proposed strategy are itemized as follows: MPLS multicasting can get mangy advantages and gain a
better performance.

434
IV. CONCLUSIONS architecture will be necessary to meet the requirements of
In this paper, we proposed an overview of a prominent future networks for high performance and reliability.
scheme for fault-tolerant multicasting in MPLS networks. REFERENCE
We identify the weakness of the previous schemes and
[1] E. Rosen, A. Viswanathan, and R. Callon, “Multi-protocol label
proposed a novel architecture, FSMM, for fault-tolerant switching architecture”, IETF RFC3031, January 2001
multicast provisioning. The idea is based on ERM and [2] Rosen E, Viswanathan A, Callon R, “Multiprotocol label switching
AMFM. By our proposed strategy, LSP setup is simplified, architecture”, IETF RFC3031, 2001.
and the multicast flows can be aggregated with the unicast [3] Ooms D, Sales B, Livens W, et al. “Overview of IP multicast in a
flows in core networks. Together with group aggregation, the multi-protocol label switching environment”, IETF RFC3353, 2002.
forwarding states are much reduced. Besides, it relaxes the [4] Boudani A, Cousin B, “An effective solution for multicast scalability:
the MPLS multicast tree”, IETF Internet Draft, 2003.
work of the core LSRs, and enables them to do more critical [5] Yang B J, Mohapatra P, “Edge router multicasting with MPLS traffic
jobs. So the performance of the network is improved. What engineering”, 10th IEEE International Conference on Networks,
is more, it is fault-tolerant, so we can get a better robustness Mumbai India, 2002.
of the network. In a word, our proposed strategy can better [6] Fei A, Cui J, Gerla M, et al. “Aggregated multicast: an approach to
support multicast in MPLS networks. reduce multicast state”, Global Telecommunications Conference, San
Antonio US., 2001.
For the future, we want to integrate QoS and MPLS-TE [7] Cui J H, Faloutsos M, Gerla M, “An architecture for scalable,
(traffic engineering) considerations in our scheme to provide efficient, and fast fault-tolerant multicast provisioning”, Network
a prominent multicast architecture. We believe that such an IEEE, 2004

435
2009 International Conference on Computer Engineering and Technology

A Novel Content-based Information Hiding Scheme

Jun Kong1, 2, Hongru Jia1, 2 , Xiaolu Li1, 2, Zhi Qi 1


1
Computer School, Northeast Normal University, Changchun, Jilin Province, China
2
Key Laboratory for Applied Statistics of MOE, China
E-mail: , kongjun@nenu.edu.cn, lixl605@nenu.edu.cn

Abstract data is decided with the number of wavelet


coefficients of larger magnitude.
This paper presents a novel content-based hidden By these block-based methods, the cover image is
transmission method for secret data to improve the divided into a number of fixed non-overlapping
security and secrecy. In the proposed method, the blocks. Then the feature of each block is extracted
secret data is encrypted by chaotic map before and the secret data is embedded into the cover
embedding. Then the cover image is segmented by images according to the result of feature extraction.
watershed algorithm and fuzzy c-means clustering. However, the main drawback of this technique is that
At last we extract the feature of each region and it doesn’t consider the content of the cover image.
embed the secret data into the cover image There may exist different features in one block. For
according to the result of feature extraction. Our example, one block can include some smooth areas
method can overcome the disadvantage of block- and some high texture areas, but when we calculate
based steganographic techniques. Experimental the features for this block, the block is treated as a
results show that the security and performance of the whole to deal with. So the block-based segmentation
proposed scheme are high. method is inaccurate. If the blocks are too small, it
can’t reflect the feature of an area.
1. Introduction To overcome this drawback, a novel content-
based hidden transmission scheme is present. First,
With the rapid growth in communication the secret data is encrypted by chaotic map and the
technology, more and more digitalized data are cover image is segmented into different regions.
distributed and transmitted over the Internet. For After that, each region includes different content.
these exposed data, security becomes one of the main Then, the feature of each region is extracted by
issues for the public channel. Many methods have calculating the entropy. At last, the secret data is
been proposed [1–2] to provide a way of data hiding embedded into the cover image according to the
called steganography that embeds the secret data into result of feature extraction.
a cover carrier confidentially so that only the The rest of this paper is organized as follows. In
intended receiver can detect and reveal the secret Section 2, we shall briefly introduce the. The
message. In steganography, the quality of the stego- proposed image hiding method is described in
image must be sufficiently high so as to make it Section 3, and experimental results are presented in
visually indistinguishable from the cover image, so Section 4. Finally, conclusions are drawn in Section
that an unintended observer will not be aware of the 5.
very existence of the secret data, thereby maintaining
the secrecy of the embedded information. 2. Relative technique
Many block-based steganographic techniques
have been proposed in the literature [3-5]. Wang et al. The basic ideas of the techniques used in this
[3] proposed an image hiding method based on best- paper are described briefly and the related work of
block matching and k-means clustering, the method each topic is introduced.
splits the entire secret image into multiple non-
overlapping blocks. For each block, they search for 2.1. Chaotic map
the best similar block from a series of numbered
candidate blocks that are generated from the cover In mathematics and physics, chaos theory deals
image. Kang et al. [5] divide an image into blocks of with the behavior of certain nonlinear dynamic
prescribed size, and each block is decomposed into systems that under certain conditions exhibit a
one-level wavelet. The capacity of the hidden secret phenomenon known as chaos, which is characterized

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 436


DOI 10.1109/ICCET.2009.167
by sensitivity to initial conditions. These special in the feature domain. The membership functions
characteristics make chaotic maps excellent and cluster centers are updated by Eq. (2).
candidates for data hiding and encryption to increase
the security [6]. Chaotic signals, which are complex ∑
N m
1 u x
and impossible to predict over long time, can be uki = and vk = i =1 ki i
(2)
xi − vk 2 ( m −1) ∑
N m
∑ l =1 ( x − v ) u
c
generated by simple dynamic systems such as i =1 ki
i l
logistic map and chebyshev map. In our scheme,
chaotic map is used for encrypting the watermark. It
provides the following features: (1) resistant to the In implementation, matrix V is randomly
finite world length effect of the chaotic sequence, (2) initialized, and then U and V are updated through an
very unpredictable, and (3) resistant to repeated iterative process using Eq. (2).
group attack.
3. The proposed method
2.2. Watershed algorithm
3.1. Secret data encryption
Watershed algorithm is a widely used approach
for image segmentation [7], which is based on In our scheme, the secret data is grayscale image
immersion simulation: the topographic surface is which size is 128 × 128. Before encrypting, secret
immersed from its lowest altitude until water reaches data is changed into a binary stream I (n) ∈ {0,1} . For
all pixels. The output of watershed algorithm is
the encryption, as described in section 2.1, we use
segmentation of cover image into a set of non-
logistic map to generate 1-D sequence of real
overlapping regions. The length of the gradients is
numbers that is used as a sequence key. The
interpreted as elevation information. During the
following equation shows the logistic chaotic map:
successive flooding of the grey value relief,
watersheds with adjacent catchment basins are
constructed. This flooding process is performed on yn +1 = g ( yn ) = μ yn (1 − yn ) (3)
the gradient image, i.e. the basins should emerge
along the edges. Normally this will lead to an over- where n = 1, 2,3… is the map iteration index and μ is
segmentation of the image. the system parameter, for 3.57 < μ ≤ 4.0 , the
sequence is nonperiodic, non-convergent, and very
2.3. Fuzzy c-means clustering sensitive to the initial value. The secret keys μ and
y0 are generated randomly as the parameter value
The fuzzy c-means clustering (FCM) algorithm
and initial condition of the logistic map, respectively.
assigns pixels to each category by using fuzzy
The dynamic secret key generates a sequence of
memberships. Let X = {xi , i = 1, 2,…, N | xi ∈ R d } denote
different pseudorandom numbers at each transaction
an image with N pixels to be partitioned into session, so our chaotic encryption module can resist
c classes (clusters), where xi represents feature data. the statistical characteristics of plaintext and
The algorithm is an iterative optimization that ciphertext attacks as mentioned in [8].
minimizes the objective function defined as follows: Because the stream generated by logistic map is a
sequence of real numbers, the output of the logistic
c N map in Eq. (3) is quantized into binary stream by the
J m = ∑∑ ukim xi − vk
2
(1) following threshold:
k =1 i =1

⎧1, yn ≥ 0.5
where uki represents the membership of pixel xi in f ( n) = ⎨ (4)
the k th cluster, vk is the k th class center, ⋅ is a ⎩0, yn < 0.5
norm metric, m > 1 is a weighting exponent on each
So the normalized sequence created by logistic
fuzzy membership. The parameter m controls the
map is f (n) ∈ {0,1} and the secret data is changed
fuzziness of the resulting partition. The cost function
is minimized when pixels close to the centroid of into binary stream I (n) ∈ {0,1} . XOR operation is
their clusters are assigned high membership values, used to encrypt the secret data, and the encrypted
and low membership values are assigned to pixels data is obtained by
with data far from the centroid. The membership
function represents the probability that a pixel w(n) = f (n) ⊕ I (n) (5)
belongs to a specific cluster. In the FCM algorithm,
the probability is dependent solely on the distance Figure.1 shows the result images after encrypting
between the pixel and each individual cluster center the secret data.

437
c
and ∑ uik = 1, Ω = {1, 2, … , n} . (6)
k =1

where the matrix U = {uik } is a fuzzy c-partition of I G ,


and uik gives the membership of region Ri in the
k th cluster ck , c is the total number of clusters and
set to 4 in our study. v = {v1, v2 , v3 , v4 ,} is the set of fuzzy
(a) (b) cluster centroids, m ∈ (1, ∞) is the fuzzy index. The
Figure 1. (a) The secret data, (b) The encrypted result image after using RFCM is shown in Figure.
secret data. 3(a).

3.2. Embedding process

In this section the standard 256 × 256 color images


are used as cover images. Before embedding, we
convert RGB image to grayscale and segment the
cover image into different regions using watershed
algorithm. The output of watershed algorithm is
segmentation of cover image into a set of non- (a) (b)
overlapping regions. Figure. 2(b) demonstrates the Figure 3. (a) The result image after using RFCM, (b)
watershed result. The result image without watershed lines.

After clustering, each of the region is classified


into a certain cluster, but the regions of watershed
lines. So we need to remove the watershed lines by
re-segmenting these regions. In this paper we exploit
the classical k nearest neighbor (KNN) classifier to
partition the regions needed re-segmentation. For
(a) (b) each data point to be classified in re-segmented
Figure 2. (a) The cover image, (b) Partition result regions, KNN compute this point’s closest k training
using watershed algorithm samples in feature space. Then the data is classified
with the label most represented among these
The watershed transformation constitutes one of k nearest neighbors. We choose k = 7 in the
the most powerful segmentation tools provided by experiments presented in this paper according to the
mathematical morphology. But there exist a suggestion which Enas given in [10]. Figure. 3(b) is
disadvantage in the watershed algorithm. The result result image without watershed lines.
of classical watershed algorithm on images is often We calculate the entropy of each region and
over-segmentation, as shown in Figure. 2(b). The embed the secret data into cover image according to
next step, we solve the over-segmentation problem the entropy values. Entropy is a statistical measure of
by merging the over-segmentation regions. The randomness that can be used to characterize the
Fuzzy C-Means (FCM) cluster has been applied texture of the input regions. Low entropy regions,
widely to image segmentation [9], and regarded as such as those containing a lot of black sky, have very
one of the most promising methods. In our work, the little contrast and large runs of pixels with the same
output of watershed algorithm is the segmentation of or similar pixel values. On the other hand, high
cover image I G into a set of non-overlapping regions entropy regions such as an image of heavily cratered
denoted by Ri , i = 1, 2,… , n, where n is the number of areas on the moon have a great deal of contrast from
one pixel to the next. Entropy is defined as:
regions. To implement the merging of similar regions,
we use the region-based Fuzzy C-Means (RFCM) L −1
clustering. The mean value, denoted by
mi , i = 1, 2,…, n of each region Ri , is needed. The
Entropy: e = − ∑ p( z ) log ( z )
i =0
i 2 i (7)

RFCM clustering algorithm in this paper is


formulated as: where zi is a random variable indicating intensity,
c
p(z ) is the histogram of the intensity levels in a
J RFCM (U , v ) = ∑∑ uikm mi − vk
2
region, L is the number of possible intensity levels.
i∈Ω k =1
The color cover image is decomposed into three
sub-images indicated as R, G and B channels. The

438
embedding strength is based on the characteristic of values are higher than 46.8 dB, which is indicative of
Human Visual System which gives the following the high quality of the stego-images. Figure. 4 shows
rule: Disturbs are much less visible in highly the resulting images by content-based steganographic
textured regions than in uniform areas. So we embed scheme.
more information in highly textured regions than in
uniform regions. A threshold T is used to partition Table 1. The PSNR values of stego-images.
the two categories. If the entropy value of a region is Cover images PSNR
lower than T, the binary streams of the secret data is Lena 47.11
then inserted into the 2 least significant bit (LSB) F16 49.73
planes of the three channels of the region. If the Sailboat 47.82
entropy value of a region is higher than T, we embed
Pepper 46.87
4 bits into the 4-LSB planes of the three channels.
For each region, a flag is set to indicate the texture
feature. In highly textured regions, the flag is set to 1;
otherwise, it is set to 0. The locations and flags of
each region are as the secret key of the scheme.

3.3. Extraction process

At the receiver, the extraction process is the (a) (e)


reverse of the embedding process. For a stego-image,
the same secret key used during embedding is now
used to extract the secret data. For each region, if the
flag is 1, we extract 2-LSB planes of the three
channels; if the flag is 0, we extract 1-LSB plane of
the three channels. The original secret data is
obtained by combining the binary streams to an
(b) (f)
image.
We generate a chaotic sequence by the same key,
which was used in section 3.1. At last the XOR
operation is applied to decrypt the extracted secret
data, so the original secret data is obtained.

4. Experimental results
(c) (g)
In this section, we show some experimental
results to demonstrate the visual quality of our
proposed hiding method. The peak signal to noise
ratio (PSNR) is used to estimate the visual quality of
the stego-images, which is defined as follows:

M × N × max( I 2 (i, j )) (d) (h)


PSNR = 10 × log10 ( ) (8)
∑ i −1 ∑ j −1[ I (i, j ) − I ' (i, j )]2
M N
Figure 4. Cover images (a)-(d) and stego-images (e)-
(h).
where I (i, j ) and I ' (i, j ) are the grey-scale values of In experiment we attempt to hide more
the cover image and the stego-image respectively. information into the cover image to achieve overall
Generally spearing, a larger PSNR value means a payload of each images. Table 2 shows that the
smaller difference between the steto-image and the PSNR values of the cover images and the stego-
original cover image. However, the difference is images are also high. We conducted experiments
unnoticeable by the human eye when the PSNR using image “F16” and provide comparisons with the
value is higher than 30dB. block-based algorithm. For block-based algorithm,
In our experiments, 4 cover images, “Lena”, the image is divided into a series of blocks with size
“F16”, “Sailboat”, “Pepper”, 256×256 each, are used 8 × 8 and the secret image is embedded into the cover
to check out the performance of the content-based image in the same way with our scheme. Table 2
steganographic scheme. The PSNR values of various summarizes the performances between the two
stego-images are listed in Table 1. All of the PSNR methods. The fact is that the block-based method can

439
generate the stego-image with higher PSNR than our The payload capacity of the images “Lena” and
method, but our scheme highly improves the “pepper” are higher than “F16”and” Sailboat”, it
embedding capacity. indicates that the payload of each image is different
The threshold T plays a dominating role in according to the complexity of the cover image. The
deciding the payload and the stego-image quality for higher the complexity of cover image, the higher the
each image. Furthermore we test all images by using payload.
various threshold values T where T=10,20,30,…,100
percent of the largest entropy value, respectively. 5. Conclusions
Figure 5 shows the payload capacity and PSNR
obtained by using different threshold T. In order to This paper presents a novel content-based hidden
maintain better stego-image quality and higher transmission method of secret data to improve the
hiding capacity, the threshold value T is set to be security and secrecy. Our method can overcome the
seventy-five percent of the largest entropy value. In disadvantage of block-based steganographic
deed, no difference can be perceptually told between techniques. Experimental results show that the
the original cover images and the stego-images. security and performance of the proposed scheme are
high.

10. References
[1] C.C. Chang, J.Y. Hsiao, C.S. Chan, “Finding
optimal LSB substitution in image hiding by
dynamic programming strategy”, Pattern
Recognition 36 (7) (2003) 1583–1595.
[2] Y.C. Tseng, Y.Y. Chen, H.K. Pan, “A secure data
hiding scheme for binary images”, IEEE Trans.
Commun. 50 (2002) 1227–1231.
[3] Ran-Zan Wang, Yao-De Tsai, “An image-hiding
method with high hiding capacity based on best-
Figure 5. The payload capacity obtained with block matching and k-means clustering”, Pattern
different threshold T. Recognition 40 (2007) 398 – 409.

Table 2. The comparison between the two methods


block-based method Our method
Stego-
images Capacity(bits) Capacity(bits/pixel) PSNR(dB) Capacity(bits) Capacity(bits/pixel) PSNR(dB)
Lena 586369 2.98 31.54 644538 3.28 30.83
F16 515755 2.62 35.62 561025 2.85 35.95
Sailboat 608754 3.09 32.51 615937 3.12 31.79
Pepper 597889 3.04 31.78 670261 3.41 30.14

[4] Chih-Chiang Lee, Hsien-Chu Wu, “Adaptive [8] Alvarez G, Montoya F, Romera M, Pastor G.
lossless steganographic scheme with centralized “Cryptanalysis of a chaotic encryption system”. Phys
difference expansion”, Pattern Recognition 41 (2008) Lett A 2000; 276:191–6.
2097 – 2106. [9] Bezdek J., Hall L., Clarke L, “Review of MR
[5] Kang Zhiwei, Liu Jing and He Yigang, image segmentation techniques using pattern
“Steganography based on wavelet transform and recognition”. Med. Phys. 20 (4), (1993)1033–1048.
modulus function”, Journal of Systems Engineering [10] Enas, G., Choi, S., 1986. “Choice of the
and Electronics, Vol. 18, No. 3, 2007, pp.628–632. smoothing parameter and efficiency of k-nearest
[6] Zhang J, Lei T, Tai HM. “A new watermarking neighbour classification”, Computers and
method based on chaotic maps”. In: Proc IEEE Mathematics with Applications 12A (2), 235-244.
ICME’04, Taiwan, 2004.
[7] Luc Vincent, Pierre Soille, Watersheds in Digital
Spaces: An Efficient Algorithm Based on Immersion
Simulations, IEEE Transaction on Pattern Analysis
And Machine Intelligence, vol 13, No 6, (1991).

440
2009 International Conference on Computer Engineering and Technology

Ambi Graph: Modeling Ambient Intelligent System


K.Chandrasekaran,I.R. Ramya, Syama .R
National Institute of Technology Karnataka (NITK), Surathkal.
kch@nitk.ac.in, ir.ramya@gmail.com, syamar@gmail.com

Abstract - In computing, ambient intelligence (AmI)[2,3] sophisticated approach. In this paper, we introduce a
refers to electronic environments that are sensitive and notation, called Ambi Graphs, for specifying the
responsive to the presence of people. In an ambient work flow in any ambient intelligence system.
intelligent world, devices work in concert to support Though elements can be thought of as building
people in carrying out their everyday life activities,
blocks to model ambi graph, element diagram
tasks and rituals in easy, natural way using information
and intelligence that is hidden in the network formalism does not provide mechanisms to model the
connecting these devices. The ambient intelligence typical features of ambi graph. Some important
paradigm builds upon ubiquitous computing [4] and ambient intelligence device features are specifying
human-centric computer interaction design. In this element location, properties, types of sensors used,
paper, we introduce a notation, called Ambi Graphs, for adaptability, etc. Currently, element diagrams do not
specifying the work flow in any ambient intelligence have clean mechanisms to specify the above features.
system. An ambi graph is elegant when it is designed to In this work, we extend the specification of an
adapt to the wide range of users that work on it. element with a describer called tasks. Now each
element can independently describe its traits and
Keywords-Ambient intelligence, sensor, surrounding,
tasks completely. Using ambi graph, users can design
target, sensing, interpretation, action, element diagram,
computational diagram, ambi graph. ambient intelligent devices by understanding how
exactly they want the device to function.
I. INTRODUCTION
What is a notation and why it is used
Having a well-defined and expressive notation is
important to the process of any kind of development. A standard notation, that unambiguously expresses
Standard notations make it possible for describing a different aspects of a system, is important to the
computing scenario or developing device architecture process of software development. The expressiveness
and then unambiguously communicate these of a standard notation helps analysts and developers
decisions to others. A notation is a vehicle for to describe a computing scenario or to formulate
capturing the reasoning about the behavior and software architecture and then to communicate these
architecture of a system. It is wholly a very well decisions unambiguously to other team members. An
defined approach which does not involve the use of expressive notation eliminates much of tedium of
state diagrams or object diagrams. Characteristics of checking the consistencies and correctness of the
ambient intelligence environments differ from architectural decisions of the developer by using
traditional ones due to various factors, like merging automated tools.
with the surroundings, acting in response to a set of
sensed objects, and so on. A generalized approach to What is ambient intelligence?
represent every ambient intelligence system has to be
self-explanatory to every user. We find that the Ambient Intelligence is a vision of a world where we
notations reported in literature, such as State are surrounded by a huge amount of intelligent and
diagrams and object diagrams are not sufficient to small devices, which are seamlessly embedded in the
describe an ambient intelligence system to its fullest. user's environment. It is a vision on the future of
A State diagram [1] is used to show the state space of consumer electronics, telecommunications and
a system, the events that cause a transition from one computing that was originally developed in the late
state to another and the actions that result from a state 1990s for the time frame 2010–2020. A key to the
change. Here we have extended the State diagrams process of realizing an ambient intelligent system is
formally as Computational diagrams, that have the defined using the following stages:
same features of State diagrams and some more
features to model the characteristics to give a • Sensing
generalized approach. Object diagrams [1] model the • Interpretation
dynamic behavior of an object in its lifetime. Here • Action
we have used a notation called Element diagram to
specify real-time systems. The notation uses the
object diagram’s representations but with a much

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 441


DOI 10.1109/ICCET.2009.203
II. AMBI GRAPH Let us consider the very famous home intelligence
systems. When somebody enters the hallway, the
The following three models are used to define an lights automatically get turned on. When they sit on
ambient intelligence system. Element graph- one that the couch, the coffee maker starts making coffee, etc.
describes all the elements present in the model;
Computational graph- describes various Here our surrounding is the room. The possible traits
computational techniques used and the sequence in of this room could be the presence or not of anybody
which the system proceeds with various inputs; Ambi around. Based on this, the task is the turning on or off
graph- diagram that shows the actual flow of data of the lights. If we consider the count of people as the
element graph and the computational graph to trait, the task could be how many people to prepare
describe the system as a whole. coffee for.

Element Graph Similarly, for sensor and target also we can have
traits and tasks. These are based on the computation
In an ambient intelligence system (device), there has involved with respect to the entity that is sensed.
to be a classification of different elements which These shall be discussed later so as to provide a clear
constitute not only the device but also the idea because it follows the computations involved in
surroundings. Here, surroundings play a vital role each step of sensing.
because most of the existing ways of representation
has description of only how the device works. By Computational Graph
describing surroundings, we ensure that the changes
that are sensed are clearly monitored. In the element Any intelligent system is known so for it's decision
graph we describe the various elements which making ability. We have a particular form of
constitute any ambient intelligence device. The major representing our computations with details such as
elements are as follows: what events and corresponding actions are
performed, the current state of the device, the
• Environment
conditions which act like a split-road. So we
• Sensor
represent all these details in a very sophisticated form
• Target
in Fig.2.
To name each element, we use a semi-circular block.
This is placed over two other rectangular blocks. One
of which consists of the traits of the element and the
other, the tasks. Traits and tasks are used to describe
the two features of the elements- its characteristics
and its mode of operation related to it.

We connect the elements with arrows to show the


work flow. This is a trivial work-flow model. Here Figure 2:Computational diagram
we enhance on the traits and tasks rather than the
links from/to various elements. Since this approach is Each state is represented in the form of block arrows.
dynamic, we express the traits and tasks within each The upper half describes the event and action. The
element as shown in Fig.1. Modification of data is lower half specifies the state name. Both, event and
possible at any stage of development. It has to be
action are separated by a ‘/’. Event is the occurrence
reflected in all the dependent models. The following
diagram is a generalized view of all the elements of a particular process. Action is the process of doing
mentioned above. something that can lead us to the next state.
Sometimes an ambiguity occurs when we have to
decide which the next state has to be based on a
specific condition. In such cases we use utility
functions that maps each possible state of a system or
object to a real scalar value on a common scale.
Figure1. Element Graph Utility function is specified in the circle. The value
returned by the utility function is written in a box at

442
the beginning of the next state. The start state and Figure 3. Ambi Graph
final state are marked with an asterisk (*) and a hash
In the above diagram environment, sensor and target
(#) respectively.
are the element graphs specified by rectangular
boxes. The element diagram is specified inside the
We use a policy based approach that separates the
rectangle. The computational model is specified
policy from the implementation of a system and inside the rhombus. The arrows show the flow of data
therefore permit the policy modified without between the element graphs and the computational
changing the systems underlying implementation. In graph. Data received from elements or as a result of
the model being described we will have two policies certain computation is written on the arrows. This
a low level policy and an efficiency level policy. A allows the programmer to have a clear picture of the
low level policy basically describes the flow of data along with all the processes and
transitions taking place in the system. The
computational model at a very abstract level. At the
programmer gets a better view of the whole scenario
efficiency level, the computational model described and the things he has to take care of at any given
is very specific. This approach helps maintain the point of execution of the system.
hierarchy. As ambient intelligence is a technique
used widely in the armed forces there should be The ambi graph has two forms a private form and a
check on what is available to whom. This kind of a public form. In the private form all the details are
policy based approach ensures that critical described and the total workflow is represented.
Whereas in the public form only the outer picture or
information does not fall in the wrong hands.
abstract picture is represented.
Getting back to the home intelligence system, if In the case of our intelligent home, the turning on or
somebody sitting on the couch is the event and off of lights depends on certain data such as presence
making coffee is the action. If we had to choice or absence of people in the room. Similarly the
between making coffee and juice, we need a amount of coffee that has to be made depends on the
condition. This condition could be sensing the count of people. This data is represented on the arrow
temperature. In on a clod day, the coffee maker can headed lines in the above mentioned model. This data
is processed by the computational model which again
serve us and on a hot day, nice cold juice could be leads to a new piece of data leading to another
heaven! element.

Ambi Graph III. CASE STUDY


WORKING OF A TREADMILL
The ambi graph is the core of any ambient intelligent
system. It shows the actual step by step process that As the famous saying by Albert Einstein goes,
takes place. By making use of the element chart as
“Example isn't another way to teach, it is the ONLY
well as the computational chart the ambi graph gives
a very precise model of ambient intelligence. It is way to teach." Treadmill is a device used to exercise.
very important to have such a model as the elements It consists of a continuously moving belt. The
and the computations alone cannot lead to the treadmill is programmable regarding simulated
understanding of a system. The ambi graph acts as a course, distance, initial speed, and user weight, and
container which uses both these models to give a records approximate caloric burnt. Sensors
complete description. The model may roughly be strategically positioned below the belt upper surface
divided into two parts:
regulate belt speed to keep a user toward the center of
• Elements the treadmill.
• Computations
The treadmill works as follows. The upper surface of
the revolving belt upon which a user performs is
equipped, on the underside, with three sensors. The
sensor nearest the front of the belt is an acceleration
sensor. The acceleration sensor causes the speed of
the rotating belt to increase. Conversely, the
deceleration sensor slows the belt speed. The target

443
speed sensor maintains belt speed. Through these adjusts to the momentary speed of the runner or
mechanisms, the present invention automatically walker, through any course. No impact on the sensors
adjusts to the momentary speed of the person, stops the treadmill.
through any course. No impact on the sensors stops
the treadmill. Drive Motor
The driver/controller is itself controlled through
Element diagram programmable circuitry having a display and

In a treadmill, we have identified the following keyboard with user input options. The controller
elements with respect to our modeling concepts. receives signals from a speed sensing device attached
They are as follows: to the AC induction motor to maintain the rotational
speed of the AC motor within pre-selected limits. The
• Acceleration sensor AC induction motor is attached to one or more
• Deceleration sensor flywheels and directly engages, through a drive
• Target speed sensor roller, a walking belt. The matched combination of an
• User AC motor driver/controller with appropriately sized
• Belt flywheels allows utilization of a variable speed AC
• Drive motor
induction motor for the direct drive of the treadmill
belt.
Acceleration sensor
It is placed below the belt. The Belt
acceleration sensor causes the
The treadmill has an endless belt
speed of the rotating belt to
entrained around a drive roller
increase when the belt is
and an idler roller. The belt has a
compressed against it by a user's
first or upper reach and a second
foot. An increase in speed of the belt thereby carries a
or lower reach extending
user back toward the midpoint of the belt upper
between the rollers. The belt has
surface, the most desirable position for a user to be
an outer surface and an inner surface. The endless
in.
belt encircles a support deck so that a user positioned
Deceleration Sensor on the outer surface of the upper reach is supported
The deceleration sensor is by the top side of the deck. The inner surface of the
disposed below the belt proximal upper reach is in a sliding relationship with the deck.
to the rear of the drive assembly
User
of the treadmill. When the belt is
Each user has different
caused to be compressed against
properties. For example, the
the rear sensor by a user's foot
weight of each user differs and so
strike, the belt communicates that information to the
does the walking speed. Certain
CPU which in turn slows the belt speed, providing
treadmills give an option to have
for the user to return to the midpoint of the rotating
different profiles for each user.
belt.
The amount of calories burnt is also kept a record of.
Target Speed Sensor Depending on the user’s position on the belt, the
The target speed sensor is speed of rotation of the belt varies.
disposed midpoint below the belt
Computational Graph
upper surface. The target speed
sensor maintains belt speed, as the In the computational graph of the treadmill we
user is ideally positioned when in describe the various computations and decision
the center. Through these makings taking place in the treadmill.
mechanisms, the present invention automatically

444
First let us see the low level policy based Private Ambi Graph
computational graph which gives an overview of the
We make use of a private ambi chart in order to make
working without going into the intricate details. In
every process visible to the user. This solely depends
Fig.4 we describe where each sensor comes into on the kind of user. This level is preferred for the
picture without giving an actual description of the advanced level users.
internal working and the use of motors.

Figure 3. Private ambi graph

Public Ambi Graph

Figure 4. Low level computational graph The public level is used for the reference of a normal
user. At this level only the basic knowledge of how a
In Fig.5, the efficiency diagrams, we look at each treadmill works is required.
sensor separately and show the actual computations
and interactions with the driver motor and the belt.
The acceleration sensor increases the speed of the
driver motor if the pace at which the user is moving
is greater than the pace of the belt. This is done so as
to make the user move towards the centre of the belt
where his target speed is calculated. Similarly the
deceleration motor slows down the driver motor if
the user is walking too slowly. Figure 3. Public ambi graph

CONCLUSION

We have tried to give a notation for ambient


intelligence systems above. Such a system is very
useful in the analysis and planning stages. It provides
a very clear understanding of the system describing
all the functionalities and properties of it. It is also a
form of documentation for the system. Using such a
notation makes it easier for the programmer to design
the system.
REFERENCES
[1] Satyajit Acharya Hrushikesha Mohanty and R.K.
Shyamasundar “Mobicharts: A Notation to Specify Mobile
Figure 3. Efficiency level computational graph Computing Applications”
[2] Orit Zuckerman “Interactive Portraiture: Designing Intimate
Interactive Experiences”
Ambi Graph [3] Paolo Remagnino Gian Luca Foresti “Ambient Intelligence: A
New Multidisciplinary Paradigm”
Treadmills are used by different category of people. [4] Anand Raghunathan, Srivaths Ravi, Sunil Hattangady, and
Depending on the class and understanding required Jean-Jacques Quisquater “Securing Mobile Appliances: New
Challenges for the System Designer
by them, we propose two types of ambi charts. For
the high level a private one and for a comparatively
lower level a public one. Below is the complete
description of the two types.

445
International Conference
on Computer Engineering and Technology

Session 7
2009 International Conference on Computer Engineering and Technology

Research on Grid-based Short-term Traffic Flow Forecast Technology

Wang Xinying Juan Zhicai Liu Xin Mei Fang


College of Computer Institute of Transportation Network Center College of Computer
Science and Studies, Antai College of Jilin University Science and
Technology Economics & Management Changchun, China Technology
Jilin University Shanghai Jiao Tong lx@jlu.edu.cn Jilin University
Changchun, China University Changchun, China
xinying@jlu.edu.cn Shanghai, China meifang@jlu.edu.cn
zcjuan@sjtu.edu.cn

Abstract critical that accurate forecasts of traffic flow are made


within 5 minutes.
Short-term traffic flow forecast is an important In this paper, traditional forecast model and
topic in the research field of intelligent transportation nonlinear dynamics theory with characteristics of the
systems. The article analyses the preliminary results in short-term traffic flow are analyzed. Then a new
the short-term traffic flow forecast, takes full method is raised, that is the accuracy of the forecast is
advantage of the characteristics of grid technology, improved based on the combination of Chaos theory
and builds a model based on chaos theory and neural and neural networks is used to. At the same time, the
network. It uses grid resource management effectiveness of algorithm is solved by using of grid
mechanisms and migration strategies to solve issues of resource management mechanism and the task of
effectiveness, and proposes the algorithm of minimum migration strategy.
price for Self-Governing Domain on the aspect of
resource management to improve the efficiency and 2. Short-term traffic flow forecast model
performance.
There are many short-term traffic flow forecast
Short-term traffic flow forecast; grid; MPSGD models. According to principles, they can be divided
into four categories [2], the first category is based on
the analysis of mathematical forecast models,
1. Introduction including the History Average Model, Linear
Regressive Mode, Time Serial Mode, Kalman Filtering
With the continuous development of urban Model, Maximum Likelihood Formulation Model, and
transportation, short-term forecasting for urban traffic so on. In this kind of models, it is usually used
flow becomes one of the most important issues of analytical mathematical model to describe the state
Intelligent Transportation System (ITS). It is the variable traffic trends, which is built on mathematical
premise of and key to that of the realization of traffic statistics, and based on the assumption that the future
guidance and control [1]. Short-term traffic flow traffic data and historical traffic data has the same
forecast means real-time forecasts for the next time characteristics. These items are simple models with
t +Кt (Кt less than 15min), and even some time after poor accuracy, especially not suitable for the section
it, based on the information collection at the time point with larger changes in the traffic flow. The second
t. Decision-making, according to this forecast, can category is knowledge-based intelligent model,
guide and control the traffic flow migration, coordinate including non-parametric regressive forecast model
and balance the traffic flow, which plays an important and neural network models, knowledge-based
role in alleviating traffic jams. With regard to real-time intelligent model points to the view of the non-linear
performance requirements, the typical cycle of traffic and uncertainty characteristics in the transportation
control and guidance is usually to be 5min, so it is systems, makes fits with the real traffic flow data, then
forecast traffic flow at the next time. Such methods of

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 449


DOI 10.1109/ICCET.2009.64
forecasting are better, but with a large amount of for computer processing power and calculation
calculation. The third category is based on the strength. No single device can afford it. And it will
simulation of traffic, including model based on traffic lead to high input costs, if a large number of hardware
simulation and model based on dynamic traffic upgrades. So this article brings about the method of
distribution. These models realized the traffic using grid technology to make full use of idle
simulation, which is an important tool for the traffic computing resources in grid when computing, and to
analysis, but with non-real-time characteristics. solve effectiveness problem of the algorithm by using
Generally speaking they are used for the evaluation of grid resources management mechanisms and task
the existing models. The fourth one is the combination, migration strategies.
which combines these forecast models, enhances Grid is an integrated computing and resource
strong points and avoids weaknesses, in order to environment, which integrates the recourses in
achieve better forecast results. This category earns the computer network into a huge supercomputer to realize
catholic concern. of the full range of access and sharing. To achieve high
Transport system is essentially a giant complex performance computing and sharing of heterogeneous
system, which is full of nonlinear interactions. And grid resources, there must be a unified and effective
traffic flow has the natures, such as high degree of resource management mechanism for the network to
complexity, uncertainty and randomness. Therefore, find and use the idle resources, share the computing
the traditional single forecast technology can no longer tasks of short-term traffic flow forecast. By conclusion
meet the rising accuracy. As a matter of fact, the traffic the resource management mechanisms [8], it takes
flow time series has the characteristics not only cycle advantages of P2P and MDS, proposes the resource
and trend, but also chaos. Chaos refers to a seemingly management mechanism based on the minimum price
random movement, random acts taking up in certain of self-governing domain (MPSGD), as shown in
nonlinear systems without any additional random Figure 1.
factors (intrinsic randomness). Forecast algorithm
based on Chaos theory requires large data sample [3],
GGN1 SGD3
resulted in the eager aid of computer in modeling. Now,
people try to set up integrated models based on chaos Node31 Node32
theory and neural network, which makes space Grid System
reconstruction of the time series by using chaos theory,
then forecast with neural network. It has been proved GGN2 SGD1 GGN3 SGD2
that [4], higher forecast accuracy can be achieved by
the models based on Chaos theory and neural network. Node11 Node12 Node21 Node22

3. Enhance real-time performance by using


grid
Figure1. Structure of Minimum price SGD
It has advantages in principle, and is feasible in
practice, that integrated model based on chaos theory Grid system is divided into some logically separate
and neural network is used in short-term traffic flow autonomous regions, and each region has a dedicated
forecast. However, it is real-time that the thorny node, GGNi, which is in charge of grid resources
problem need to be solved. The algorithms of chaos information services (GRIS) and grid directory
theory are so complex, that it will cause delay when information service (GIIS). Each node in the
using it to analyze the traffic flow time series. It has autonomous region i should obey active report strategy,
made effective that by improving the forecast report its own state to the other ones periodically,
algorithm [5], building a new structure of the neural discover the neighbor’s corresponding information,
network model [6], the introduction of genetic organize it in special data structure, and post it to the
algorithm [7] or other methods to improve the service node GGNi. The GGNi in every domain should
effectiveness of the algorithm. But none can improve not only store the information of SGDi, but also
the forecast efficiency fundamentally. change own information with other GGNi node
According to the model's basic theory, both the periodically, so that the whole system can provide
forecast method based on neural network and based on available resources information sheet. When the local
chaos theory are needed to deal with a lot of real-time node need to migrate a task, it may only send a request
data in a limited time, that results in a higher demand to the local services node GGNi directly. This method

450
has two strong points. One is that the discovery Hongfei for all the help and support and advices.
mechanism is better than MDS, and the other is that Thanks to my lab-mates for their comments and
there is no duplicate data storage, reducing system suggestions. At last my thanks would go to my beloved
overhead. family for their loving considerations and great
In the division of regional autonomy, using a confidence.
minimum price law, nodes which have lower migration
cost will gathered in one domain. When it is too large 6. References
for a node to finish a computing task itself, it will ask
the GGNi for help. If there is a certain node in SGDi [1] Hu J M, et al. An applicable short-term traffic flow
which is lighter on load ,after query, migration will be forecasting method based on chaotic theory. Proc. of IEEE
on. If there is no, the one with lighter load in other 6th International Conference on Intelligent Transportation
SGD will be the successor. This method can ensure Systems (Vol.1)[C]. 2003:608-613.
[2] Wang Jin,Shi Qi-xin. The summery of the short-term
that the task successfully finished with low cost.. traffic flow predicts model. China Public Security,
2005(1):92-98.
4. Conclusion [3] J.M. Lipton, K.P.Dabke. Reconstructing the State Space
Of Continuous Time Chaotic Systems Using Power Spectra.
It compares several models in the field of traffic Physics Letters A, 1996(201):290-300.
[4] Zhang Yumei,Qu Shiru,Wen Kaige. A Short-term Traffic
flow forecast. According to request of the real-time
Flow Forecasting Method Based on Chaos and RBF Neural
and high accuracy, it draws a conclusion that the network. Systems Engineering, 2007(11):26-30.
model based on chaos theory and neural networks is [5] Yu Jiangbo,Chen Houjin. Traffic Prediction Based on the
better for traffic guidance and control with grid. The Subsection Learning of BP Neural Network. Intelligent
high efficiency is benefited from the minimum price of Transportation System, 2006(2):28-30
Self-Governing Domain algorithm. Further research in [6] Dong Chaojun,Liu Zhiyong. Multi-layer Neural Network
the theory is based on simulation system, to create a Involving Chaos Neurons and Its Application to Traffic-flow
higher accuracy in the real-time forecast system. Prediction. Journal of System Simulation, 2007(19):4450-
4453.
[7] Hua Dongdong,Chen Senfa. Application of an Improved
5. Acknowledgment ANN to Short -Term Traffic Flow Prediction. Modern
Transportation Technology, 2004(1):60-62.
I would like to express my sincere gratitude to those [8] Zheng Lei,Liu Fangai. Research on Resource Discovery
who have spent time for examining and revising my and Monitoring Mechanisms in Grids. Computer Technology
paper. I also thank to Prof. Wang Demin and Prof. Jia and Development, 2006(1):83-86.

451
2009 International Conference on Computer Engineering and Technology

A Nios II Based English Speech Training System For Hearing-impaired


Children

Ningfeng Huang Haining Wu Yinchen Song


School of Electronic Science School of Automation School of Biological Science
and Engineering Southeast University and Medical Engineering
Southeast University Nanjing, China Southeast University
Nanjing, China wuhaining821@gmail.com Nanjing, China
ningfengh@gmail.com songyinchen@gmail.com

Abstract To help hearing-impaired children learn to speak,


many researchers have developed various speech
We propose a novel feature system of language training aids. Most of them are based on computer or
training for hearing-impaired children’s speech MCU+DSP[2-5]. This paper describes a Nios II based
rehabilitation based on DE1 development board, English speech training system, which is designed for
which contains an on-chip system called uc/os. The the hearing-impaired children. The system is
system is imbedded with Nios II processors, which developed on the Altera DE1 development board. DE1
could make our system stable, portable and cheap. board provides a lot of features to enable various
Considering the limited storage and calculation ability multimedia project developments for users. Cyclone II
of imbed system, at the same time, and we recognize FPGAs are perfectly suited as an embedded processor
child’s voice by Single phoneme, we use LPCC as or microcontroller when combined with Altera's 32-bit
Eigenvector to judge the similarity between speaker’s Nios II embedded processor intellectual property (IP)
voice and example’s. cores. Users can add many other functions to the
FPGA with additional IP cores available from Altera
Corporation and Altera's partners. Compared with the
1. Introduction computer or MCU+DSP based systems, system based
on Nios II is much more compact, stable and cheaper.
Hearing-impaired children have difficulty in Considering the hearing-impaired children have
hearing, for which people may consider that they difficulty pronouncing and producing intelligible
cannot speak a word and will become so-called “deaf speech, we design this system with several speech
and dumb” people. However, most of them actually training modules according to the feature of speech
meet the requirements for learning to speak. Firstly, training system for hearing-impaired children and the
most of the hearing-impaired children have healthy connection between the acoustic character and
speech organs. What’s more, using hearing aids to physiological character of the speech, such as
amplify and modulate sounds, 95% hearing-impaired breathing training, vowel training and consonant
children can compensate for their poor sense of sound, training.
as a result of which they can understand phonic This paper is organized as follows. In Section 2, a
language and learn to speak. Thirdly, sense of vision, brief introduction of the construction is presented. In
feeling and motion contribute to learning phonic Section3, we describe the main algorithm we use to
language[1]. recognize speech. In Section 4, we discuss about how
we realize it using Altera DE1 Multimedia

This work was supported by the Altera University Program.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 452


DOI 10.1109/ICCET.2009.159
Development Board and the experimental results are speech organs perform during the complete process of
given in Section 5. Section 6 is conclusion of the pronouncing a certain syllable with written instructions
whole paper. both in Chinese and English step by step. The system
can response immediately after the user record his
2. Construction of A System speech. Then user could get the score from the
progress bar and replay his speech and the sample
The system is designed for hearing-impaired speech, making a comparison on his own directly.
children to rehabilitate the speech ability. Figure 1
shows the structure of the system. The system is 3. Speech Recognition
developed on the Altera DE1 board. Using VGA
monitor and mouse as interfaces between users and In a short period of time, voice can be considered to
system, the system provides users some introductions be stable. Considering the low-frequency CPU of
and samples of pronouncing syllables by audio and embedded systems, limited storage resource
acquires the speech signal from the users by characteristics, we need to reduce the amount of
microphone. The speech signal will be processed by calculation to ensure real-time, we have adopted a
advanced speech signal processing and recognition time-domain short-time voice processing as follows [7-
technologies. The system will make a comparison 8]:
between users’ speech and the sample speech and
eventually give users score by quantitating the
matching rate.
Figure3. Speech recognition process
Data samples at 8 kHz, the length of a frame is 240 (30
ms), frame shift 80 (10 ms). There are 10 groups of
girls’ voice samplings and 10 groups of boys’ voice
samplings of children between 8~9 years old.
Preprocessing, including sub-frame, pre-emphasis,
and endpoint detection. Sub-frame is to multiple the
original voice signal with a mobile window, between
the two overlapping, we selected rectangular windows
function as a window.
Rectangular windows formula:
w(n) = 1.0 ≤ n ≤ N − 1 (1)
Figure1. Construction of the system (N is length of a frame)
This training system consists of breathing training, The purpose of pre-emphasis is to increase the high-
vowel training and consonant training[6]. frequency part of voice, which is the weaker part of
signal, and filter the baseline drift caused by DC
changes, filtering 50hz frequency interference. We use
FIR filter to realize it.
FIR formula:
data(n) = S (n) − 0.93* S (n − 1) (2)
The system detects endpoint by measuring the
Figure2. Structure of the training system sample’s short-term average amplitude and short-term
The breathing training is aimed to estimate the zero-crossing rate,
length of the period that user pronounces a syllable at Short-term average amplitude formula:
his highest volume and help modulate his breathing. N −1
The progress bar is used to display how much the time M n = ∑ | S w ( n) | (3)
the user have been pronouncing. We estimate that n=0
children commonly could persist for 10 seconds.
In the vowel training and consonant training parts,
user could hear the sample speech and observe how the

453
Short-term zero-crossing rate formula:

Zn =
1
2
{∑ sgn[Sw (n)] − sgn[ Sw (n − 1)] } (4)

We use Autocorrelation to estimate the signal cycle


length, the formula is: (N is the length of a frame)
N −1−l
Rw (l ) = ∑S
n =0
w ( n) S w ( n + l ) l ∈ [1, N ] (5)

Then we use Durbin algorithm to calculate linear Figure5. Each five vectors figure of [iə]
prediction-based cepstral coefficient (LPCC) by the
recurrence formulas showed in reference [9] 4. Hardware Implementation
We match the example voice’s LPCC vector with This implement use FPGA to create system, based
speaker’s voice vector, each vector contains 16 LPCCs. on SOPC builder. Taking the NIOS II processor as a
ai is example’s LPCC, and bi is speaker’s. After having core, we link many interfaces and user logic to the
rate value, we qualify error to rate, in order to show Avalon bus. Because we bring many existing IP cores
percentage of speaker’s similarity, as following to the design, many of which offered by Altera
formulas shows: corporation to support the DE1 board, development


16 process is largely accelerated[10].
(ai − bi ) 2
error = i =1
(6) In this system, we use Mathwork’s simulink
16 software and Altera corporation’s DSP builder
Rate = 100 − 100 × log(error ) (7) software to design the voice short-time signal
processing user logic which realized by hardware. This
Besides, if error > 10, rate=0%, if error<1,
block links with NIOS II system through Avalon MM
rate=100%.
bus. In NIOS II system, we can obtain voice real-time
Considering the specific condition of Diphthong,
processing by using C language and this design has
like “oi”, “ei”, we analyze the LPCC graph simulated
been proved to be highly effective. It can reduce the
in MATLAB, noticing that most of them mainly
burden of the processing core and operation system to
contain two strands, each stands for corresponding
make the system more stable.
monophthong’s LPCC graph, So we take first five
The major functions of this model is to obtain the
vectors of each monophthong’s LPCC and calculate
real-time calculation of voice signal’s short time
error and qualify rate as above, call them Rate1, Rate2,
average magnitude Mn and short-time zero-crossing
then it turns out that Rate= (Rate1+Rate2)/2.
rate Zn which are defined in section 4. These two
Take [iə] for example; figure 4 shows the all vectors
parameters of voice signal are very important in
figure of [iə], figure 5 shows each monophthong’s five
judging the end-point of voice and further analysis of
vectors figure of [iə].
the voice.
3
This model is composed by Avalon MM write bus,
2 pre-emphasize filter, short time average magnitude
calculate block, short-time zero-crossing rate calculate
1 block, signal combination blocks and Avalon MM read
bus.
0

-1

-2

-3

-4
0 2 4 6 8 10 12 14 16

Figure4. All LPCC vectors figure of [iə]

454
5. Experiment
After realizing speech processing in Nios, we use
the wavread function, contained in Matlab, to convert
the sample signal to txt document, so c program can
read and calculate LPCC vector, and then show them
in Matlab.
In this figure, blue lines are speakers’ vector curve
Figure6. The entire design in dsp builder of “i:” pronunciation, the red one is the average of
them, standing for the standard curve. The difference
of them is small and reasonable.

Figure7. FIR filter symbol

Figure8. Sub-frame accumulation


After simulation, we can see the block work
satisfactorily in detecting the endpoint of the
pronunciation. From top to button, the fist one is wave Figure10. Simulation result
of two words, the second one is the signal filtered by
FIR filter, we can see DC part significantly reduced 6. Conclusion
high-frequency gain significant. The third one and the
forth one are the wave of the average amplitude and This paper proposed a novel feature system of
zero-cross rate, observing the transition part between English speech training for hearing-impaired
two words, the amplitude is almost zero, the rate children’s speech rehabilitation. The system
remain high. developed on Altera DE1 development board, which is
embedded with Nios II processors, is much more stable,
portable and cheaper by comparison.
The training system consists of 3 sections as
follows: breathing training, vowel training and
consonant training. It aims to help modulate users’
breathing while talking and let them produce
intelligible speech.
This system adopts LPCC algorithm to determine
the accuracy of pronunciation, maintained by
programming c in imbedded Nios II processors. The
pre-processing part is realized by DSP builder, which
works as a block linked to Avalon MM bus.
The authors invited students from Nanchang Road
Elementary School (Nanjing) to record their voices
and made them into speech samples, given that users
of this system are hearing-impaired children. And the
Figure9. Simulation result authors also tested for a lot of times in order to make

455
sure of the system’s stability. Although the system is 2001. PACRIM. 2001 IEEE Pacific Rim Conference on,
vol. 1, pp. 51-54
currently designed for hearing-impaired children’s
learning English speech, it is expected that the
[4] Y.Y. Shi, J. Liu and R.S. Liu, “Single-chip speech
developed system could be a useful tool for hearing- recognition system based on 8051 microcontroller
impaired people in speech training no matter how old core,” IEEE Transactions on Consumer Electronics,
they are and what language they are going to speak. Vol. 47, No. 1, 2001, pp. 149-153

7. Acknowledgment [5] S. Phadke, R. Limaye, S. Verma and K. Subramanian,


“On design and implementation of an embedded
automatic speech recognition”, in Proc. of the 17th Int.
We wish to gratefully acknowledge the advice, Conf. on VLSI Design(VLSID’04)
comments and assistance we received from Professor
Tang Yongming of the School of Electronic Science [6] I. Kirschning and M.T. Toledo, “Vowel & diphthong
and Engineering of Southeast University. And we tutors for language therapy,” in Proc. of the 6th
Mexican Int. Conf. on Computer Science(ENC’05), pp.
deeply appreciate Ms. Liu Ruixue of Nanchang Road 26 – 30
Elementary School (Nanjing) for providing children’s [7] Y. Yazama, Y. Mitsukura, M.Fukumi and N. Akamatsu,
speech samples. “Vowel recognition method by using features included
in amplitude for mobile device,” in Proc. of the 2004
IEEE Int. Workshop on Robot and Human Interactive
8. References Communication, Kurashiki, pp. 613-618

[1] Alsaka, Y.A.; Doll, S.; Davis, S., “Portable speech [8] W.M. Campbell, K.T. Assaleh and C.C. Brown, “Low-
recognition for the speech and hearing impaired,” complexity small-vocabulary speech recognition for
Southeastcon '97. 'Engineering new New Century'., portable devices,” in 5th Int. Symposium on Signal
Proc. IEEE, 1997, pp. 151-153 Processing and its Applications, ISSPA ’99, Brisbane,
pp. 619-622
[2] M.L. Hsiao, P.T. Li, P.Y. Lin, S.T. Tang, T.C. Lee, S.T.
Young, “A computer based software for hearing [9] G.D. Wu and Z.W. Zhu, “Chip design of LPC-cepstrum
impaired children’s speech training and learning for speech recognition,” in 6th IEEE/ACIS Int. Conf. on
between teacher and parents in Taiwan,” in 2001 Proc. Computer and Information Science (ICIS 2007)
of the 23rd Ann. EMBS Int. Conf., Istanbul, pp. 1457-
1459.
[10] DE1 Development and Education Board User Manual,
Version 1.1, Altera Co., San Jose, CA , 2006, pp. 1-45
[3] Weerasinghe, D.; Dias, D., "DSP-based techniques for
speech training of hearing impaired children,”
Communications, Computers and signal Processing,

456
2009 International Conference on Computer Engineering and Technology

A New DEA Model for Classification Intermediate Measures and


Evaluating Supply Chain and its members

S. M. Hatefi, F. Jolai, H. Iranmanesh, and H. Kor


Department of Industrial Engineering, College of Engineering,
University of Tehran
Tehran, Iran
s_m_hatefi@yahoo.com , fjolai@ut.ac.ir, hiranmanesh@ut.ac.ir, hkor@ut.ac.ir

Abstract—Appropriate selection of intermediate measure chain members based upon single performance measures
status in supply chain is an important requirement for the [3]. Other performance evaluations have been focused on
effective management of supply chain. The data envelopment studying the impact of management practices on supply
analysis (DEA) is suitable tool for evaluating supply chain
performance. In the conventional DEA it is deemed that the chain performance [4].
variable status of each performance measures from the point Within the context of DEA, there are a number of
view of input or output is known. In supply chain intermediate methods that have the potential to be used in supply chain
measures treat as both inputs of buyer and outputs of seller. efficiency evaluation. Seiford and Zhu [5] and Chen and
Conventional data envelopment analysis cannot be employed Zhu [6] provide two approaches in modeling efficiency as a
directly to measure the performance of supply chain and its two-stage process. Along a related line, Färe and Grosskopf
members, because of the existence of the intermediate
measures that connects the supply chain members. In this [7] develop the network DEA approach to model general
paper we develop a DEA model to classify the status of multi-stage processes with intermediate inputs and outputs.
intermediate measures and evaluate the performance of supply Zhu [8], on the other hand, presents a DEA-based supply
chain members. The proposed model for each DMU0 permits chain model to both define and measure the efficiency of a
that supply chains (DMUs) choose which is best for each supply chain and that of its members, and yield a set of
intermediate measure, whether to designate it as an output of optimal values of the (intermediate) performance measures
seller or input of buyer. Then we illustrate the application of
model in a numerical example. that establish an efficient supply chain. The different kinds
of DEA models for evaluation of supply chain can be found
Keywords-Buer-seller supply chain; intermediate measures; in [9, 10].
flexible measures; performance evaluation In the conventional application of DEA, it is assumed
that the status of performance measures from point view of
input or output is specified. But in some conditions there are
I. INTRODUCTION variables or measures that treat as both an input and output.
Effective management of an organization’s supply Consider the buyer-seller supply chain as presented in Liang
chains has proven to be a very effective mechanism for et al. [9]. In supply chain there are some measures between
providing prompt and reliable delivery of high-quality seller and buyer that are called intermediate measures. In
products and services at the least cost. To achieve this, this study, the seller has three inputs, labor, operating cost,
performance evaluation of the entire supply chain is shipping cost and three outputs, number of three products
extremely important. This means utilizing the combined shipped. The buyer has another input (labor) in addition to
resources of the supply chain members in the most efficient number of shipped products and two outputs, sales and
way possible to provide competitive and cost-effective profit. Intermediate measures in supply chain are number of
products and services. However, lack of appropriate shipped products. In performance evaluation of supply chain
performance measurement systems has been a major members at the same time these measures treat as both
obstacle to effective management of supply chains [1]. inputs (inputs of buyer) and outputs (outs of seller).
There are studies on applying the standard DEA model, to Examples of flexible measures in evaluating performance of
evaluate the performance of supply chain members. For university, hospital and highway maintenance crew can be
example, Weber and Desai [2] employ DEA to construct an seen in [11]. Recently, Cook and Zhu proposed the new
index of relative supplier performance. Models have been method for classifying inputs and outputs based on standard
established to estimate the exact performance of supply DEA model (CCR model) [11].

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 457


DOI 10.1109/ICCET.2009.217
However, such an efficiency approach cannot be applied ߤ௥ ǡ ߴ௜ ǡ ߱௟ ǡ ߨ௞ ൒ Ͳሺʹሻ
directly to the problem of evaluating the efficiency of
supply chains, because some measures linked to supply
chain members cannot be simply classified as “outputs” or  zl
“inputs” of the chain. In fact, with respect to those xi yr
Seller Buyer
measures, conflicts between supply chain members are
likely present. For example, the supplier’s revenue is an
output for the seller, and it is in the seller’s interest to ‫ݔ‬ƴ ୩
maximize it; at the same time it is also an input to the buyer
who wishes to minimize it. Simply minimizing the total Figure 1. Buyer-Seller supply chain
supply chain cost or maximizing the total supply chain
revenue (profit) does not properly model and resolve the
inherent conflicts. In this paper we develop a DEA model to Model (2) only considers the intermediate measures as
classify the status of intermediate measures from point view outputs of seller and ignores the effect of intermediate
of input or output and evaluate the performance of supply measures on buyer. Model (2) can’t present true
chain members. performance of supply chain. Zhu [8] also showed that if
The rest of the paper is organized as follows. Section II intermediate measures are treated as both inputs and outputs
introduces the DEA models for performance evaluation of in CCR model, all supply chain members become efficient.
supply chain. In section III, we establish the proposed model Overall efficiency of supply chain is affected performance
and show that the model is capable to classify intermediate of seller and buyer and the performance improvement of one
measures in supply chain. In section IV, we illustrate the supply chain member affects the efficiency status of the
application of proposed model with the numerical example other, because of existence of intermediate measures.
found in literature. Conclusions are discussed in Section V. Consequently, we may establish following DEA model
based on the average efficiency of the buyer and seller:
II. DEA MODELS FOR SUPPLY CHAIN EVALUATION
Consider Buyer-Seller supply chain as showed in Figure ͳ σ௅௟ୀଵ ߱௟ ‫ݖ‬௟଴ σ௦௥ୀଵ ߤ௥ ‫ݕ‬௥଴
‫ ݔܽܯ‬ቈ ௠ ൅ ௅ ቉
1., Where xi (i =1,2,…,m) is the input of the seller, and zl (l ʹ σ௜ୀଵ ߴ௜ ‫ݔ‬௜଴ σ௟ୀଵ ߱ƴ ௟ ‫ݖ‬௟଴ ൅ σ௄ ௞ୀଵ ߨ௞ ‫ݔ‬ƴ ௞଴
= 1,2,…,L) is the seller output. Also zl and š୩ƴ (k = 1, 2,…, σ௅௟ୀଵ ߱௟ ‫ݖ‬௟௝
K) are the inputs of buyer and yr (r = 1,2,…,s) is the output ܵǤ ‫ݐ‬Ǥ ௠ ൑ Ͳ݆ ൌ ͳǡʹǡ ǥ ǡ ݊
σ௜ୀଵ ߴ௜ ‫ݔ‬௜௝
of buyer.
σ௦௥ୀଵ ߤ௥ ‫ݕ‬௥௝
Suppose there are n supply chains or observations and we  ௅ ൑ Ͳ݆ ൌ ͳǡʹǡ ǥ ǡ ݊
interest to evaluate supply chain performance. The CCR σ௟ୀଵ ߱ƴ ௟ ‫ݖ‬௟௝ ൅ σ௄ ௞ୀଵ ߨ௞ ‫ݔ‬ƴ ௞௝
DEA efficiency of the supply chain is measured as : ߤ௥ ǡ ߴ௜ ǡ ߱௟ ǡ ߱ƴ ௟ ǡ ߨ௞ ൒ Ͳሺ͵ሻ

σ௦௥ୀଵ ߤ௥ ‫ݕ‬௥଴ Model (3) considers correctly intermediate measures in


‫ݔܽܯ‬ ௠
σ௜ୀଵ ߴ௜ ‫ݔ‬௜଴ ൅ σ௄௞ୀଵ ߨ௞ ‫ݔ‬ƴ ௞଴
performance evaluation of supply chain members, but it
σ௦௥ୀଵ ߤ௥ ‫ݕ‬௥௝ does not reflect the relationship between the buyer and the
‫ݏ‬Ǥ ‫ݐ‬Ǥ ௠ ൑ Ͳ݆ ൌ ͳǡʹǡ ǥ ǡ ݊ seller, because of the weights of intermediate measures as
σ௜ୀଵ ߴ௜ ‫ݔ‬௜௝ ൅ σ௄௞ୀଵ ߨ௞ ‫ݔ‬ƴ ௞௝
outputs of the seller ሺɘ୪ ሻ doesn’t equal to the weights of
ߤ௥ ǡ ߴ௜ ǡ ߨ௞ ൒ Ͳሺͳሻ
intermediate measures as inputs of the buyer ሺɘƴ୪ ሻ .
Following Liang et al. [9] in performance evaluation of
Model (1) only considers the inputs and outputs of the
supply chain model (3) considers the buyer and seller as two
supply chain system and ignores intermediate measures in
independent units and can’t characterize ideal efficiency of
performance evaluation of supply chain. Zhu [8] showed
supply chain. Liang et al. [9] set the weights of intermediate
that model (1) fails to correctly specify performance of
measure as the outputs of seller equal to the weights of
supply chain. One is to treat the intermediate measures as
intermediate measure as the inputs of buyer in model (3).
outputs in the following CCR model when DMU0 is under
With respect to this condition model (3) becomes nonlinear
evaluation:
programming problem. He showed that this new model can
be treated as a parametric linear program and obtained a
σ௦௥ୀଵ ߤ௥ ‫ݕ‬௥଴ ൅ σ௅௟ୀଵ ߱௟ ‫ݖ‬௟଴
‫ݔܽܯ‬ heuristic search for solving it.
σ௠ ௄
௜ୀଵ ߴ௜ ‫ݔ‬௜଴ ൅ σ௞ୀଵ ߨ௞ ‫ݔ‬ƴ ௞଴ In next section we establish new two stage DEA model
σ௥ୀଵ ߤ௥ ‫ݕ‬௥௝ ൅ σ௅௟ୀଵ ߱௟ ‫ݖ‬௟௝

for classification intermediate measures and evaluating
‫ݏ‬Ǥ ‫ݐ‬Ǥ ௠ ൑ Ͳ݆ ൌ ͳǡʹǡ ǥ ǡ ݊
σ௜ୀଵ ߴ௜ ‫ݔ‬௜௝ ൅ σ௄
௞ୀଵ ߨ௞ ‫ݔ‬ƴ ௞௝ supply chain members.

458
III. NEW TWO STAGE MODEL intermediate measures ሺɘ୪ ሻ as outputs of seller don’t equal
Consider two following DEA models. Model (4) is to the weights of intermediate measures ሺɘƴ୪ ሻ as inputs of
called output-oriented multiplier DEA model where the goal buyer in model (6). As mentioned model (6) considers buyer
is to minimize the inputs while keeping the outputs at their and seller as two independent units and can’t describe true
current levels. The optimal value to model (4) isɅ‫ כ‬൒ ͳ. performance of supply chain. Because of intermediate
When DMU0 is under evaluation, if Ʌ‫ כ‬ൌ ͳ then DMU0 is measures are the relationship between the seller and buyer
efficient. If Ʌ‫ כ‬൐ ͳ, then DMU0 is inefficient. we set ɘ୪ ൌ ɘƴ୪ ሺŽ ൌ ͳǡ ǥ ǡ ሻ .
Model (5) is called input-oriented multiplier DEA model Theorem 1. With respect this condition ሺɘ୪ ൌ ɘƴ୪ ሻ ,
where the goal is to maximize the outputs while keeping the model (7) ignores the effect of another inputs ሺšƴ ୩ ሻ of buyer
inputs at their current levels. The optimal value to model (5) in performance evaluation of DMU0.
isԄ‫ כ‬൑ ͳ. When DMU0 is under evaluation, if Ԅ‫ כ‬ൌ ͳ then Proof: Applying this condition to model (7) yields
DMU0 is efficient. If Ԅ‫ כ‬൏ ͳ, then DMU0 is inefficient. σ୐୪ୀଵ ɘ୪ œ୪଴ ൌ ͳ (seller) and σ୐୪ୀଵ ɘ୪ œ୪଴ ൅ σ୏୩ୀଵ Ɏ୩ šƴ ୩଴ ൌ
௠ ͳ(buyer). We conclude that σ୏୩ୀଵ Ɏ୩ šƴ ୩଴ ൌ Ͳ
‫כ‬
ߠ ൌ ‫ ݊݅ܯ‬෍ ߴ௜ ‫ݔ‬௜଴ ሺͶሻ Therefore intermediate measures can’t treat as both
௜ୀଵ outputs of seller and inputs of buyer in model (6). For
௦ ௠
solving this problem we define †୪ ‫ א‬ሼͲǡͳሽ as binary
෍ ߤ௥ ‫ݕ‬௥௝ െ ෍ ߴ௜ ‫ݔ‬௜௝ ൑ Ͳ݆ ൌ ͳǡ ǥ ǡ ݊ variables, where †୪ ൌ ͳ designates that zl is considered as
௥ୀଵ

௜ୀଵ an output of seller and †୪ ൌ Ͳ designates it as an input of
buyer. Let ɘ୪ be the weight for each intermediate measure l.
෍ ߤ௥ ‫ݕ‬௥଴ ൌ ͳǡ ߤ௥ ǡ ߴ௜ ൒ Ͳሺߝሻ We establish the following mathematical programming
௥ୀଵ model:

௠ ௦
‫כ‬
߶ ൌ ‫ ݔܽܯ‬෍ ߤ௥ ‫ݕ‬௥଴ ሺͷሻ ‫ ݊݅ܯ‬෍ ߴ௜ ‫ݔ‬௜଴ െ ෍ ߤ௥ ‫ݕ‬௥଴ ሺ͹ሻ
௜ୀଵ
௦ ௠ ௜ୀଵ ௜ୀଵ
ሺ‫ݎ݈݈݁݁ݏ‬ሻ
෍ ߤ௥ ‫ݕ‬௥௝ െ ෍ ߴ௜ ‫ݔ‬௜௝ ൑ Ͳ݆ ൌ ͳǡ ǥ ǡ ݊ ௅ ௠
௥ୀଵ ௜ୀଵ
௠ ‫ݏ‬Ǥ ‫ݐ‬Ǥ ෍ ݀௟ ߱௟ ‫ݖ‬௟௝ െ ෍ ߴ௜ ‫ݔ‬௜௝ ൑ Ͳ݆ ൌ ͳǡ ǥ ǡ ݊
෍ ߴ௜ ‫ݔ‬௜଴ ൌ ͳǡߤ௥ ǡ ߴ௜ ൒ Ͳሺߝሻ ௅
௟ୀଵ ௜ୀଵ

௜ୀଵ
෍ ݀௟ ߱௟ ‫ݖ‬௟଴ ൌ ͳǡ ߱௟ ǡ ߴ௜ ൒ Ͳሺߝሻ
Both models (4) and (5) identify the same efficient ௟ୀଵ

frontier, because Ʌ‫ כ‬ൌ ͳ if and only if Ԅ‫ כ‬ൌ ͳ. We establish ሺܾ‫ݎ݁ݕݑ‬ሻ


௦ ௅ ௄
the following cooperative linear programming problem.
෍ ߤ௥ ‫ݕ‬௥௝ െ ෍ሺͳ െ ݀௟ ሻ߱௟ ‫ݖ‬௟௝ െ ෍ ߨ௞ ‫ݔ‬ƴ ௞௝ ൑ Ͳ
௠ ௦ ௥ୀଵ ௟ୀଵ ௞ୀଵ

‫ ݊݅ܯ‬෍ ߴ௜ ‫ݔ‬௜଴ െ ෍ ߤ௥ ‫ݕ‬௥଴ ሺ͸ሻ ݆ ൌ ͳǡ ǥ ǡ ݊


௅ ௄
௜ୀଵ ௜ୀଵ
ሺ‫ݎ݈݈݁݁ݏ‬ሻ ෍ሺͳ െ ݀௟ ሻ߱௟ ‫ݖ‬௟଴ ൅ ෍ ߨ௞ ‫ݔ‬ƴ ௞଴ ൌ ͳ ǡ ߤ௥ ǡ ߱௟ ǡ ߨ௞ ൒ Ͳሺߝሻ
௅ ௠ ௟ୀଵ ௞ୀଵ

‫ݏ‬Ǥ ‫ݐ‬Ǥ ෍ ߱௟ ‫ݖ‬௟௝ െ ෍ ߴ௜ ‫ݔ‬௜௝ ൑ Ͳ݆ ൌ ͳǡ ǥ ǡ ݊


Thus, model (7) for performance evaluation DMU0
௟ୀଵ ௜ୀଵ
௅ permits that DMU to choose which is best for each
෍ ߱௟ ‫ݖ‬௟଴ ൌ ͳǡ ߱௟ ǡ ߴ௜ ൒ Ͳሺߝሻ intermediate measure , whether to designate it as an output
of seller or input of buyer. Model (7) is clearly nonlinear.
௟ୀଵ
ሺܾ‫ݎ݁ݕݑ‬ሻ But it can be linear by way of the change of variables
௦ ௅ ௄ Ɂ୪ ൌ †୪ ɘ୪ for each ݈, imposing the constraints:
෍ ߤ௥ ‫ݕ‬௥௝ െ ෍ ߱ƴ ௟ ‫ݖ‬௟௝ െ ෍ ߨ௞ ‫ݔ‬ƴ ௞௝ ൑ Ͳ݆ ൌ ͳǡ ǥ ǡ ݊
௥ୀଵ ௟ୀଵ ௞ୀଵ
Ͳ ൑ ߜ௟ ൑ ‫݀ܯ‬௟
௅ ௄ ߜ௟ ൑ ߱௟ ൑ ߜ௟ ൅ ‫ܯ‬ሺͳ െ ݀௟ ሻሺͺሻ
෍ ߱ƴ ௟ ‫ݖ‬௟଴ ൅ ෍ ߨ௞ ‫ݔ‬ƴ ௞଴ ൌ ͳ ǡߤ௥ ǡ ߱ƴ ௟ ǡ ߨ௞ ൒ Ͳሺߝሻ
௟ୀଵ ௞ୀଵ Where M is a large positive number. These linear integer
restrictions capture the nonlinear expression †୪ ɘ୪ ൌ Ɂ୪ ,
Following Chen and Zhu [6] , model (6) correctly without actually having to directly specify it in the
defines the efficiency of a Buyer-Seller supply chain and optimization model. Note that if †୪ ൌ ͳ then ɘ୪ ൌ Ɂ୪ , and
further can consider the effect of intermediate measures in if †୪ ൌ Ͳ , then Ɂ୪ ൌ0. By this way of the changing variables
performance evaluation of supply chain. But the weights of

459
ߜ௟ ൑ ߱௟ ൑ ߜ௟ ൅ ‫ܯ‬ሺͳ െ ݀௟ ሻǡ ݀௟ ߳ሼͲǡͳሽǡ ‫݈׊‬
TABLE I. RESULTS FROM MODEL (9) FOR THREE INTERMEDIATE
MEASURES
Also this model is capable to provide efficiency score

Supply chain no. d1 d2 d3 objective function
for seller and buyer. At the optima, ߠ஺‫ כ‬ൌ σ೘ ణ‫כ‬௫ and
1 1 0 0 0.0000 ೔ ೔ ೔బ
Ʌ‫כ‬୆ ൌ σୱ୰ୀଵ ρ୰‫› כ‬୰଴ present the efficiency scores for the seller
2 0 0 1 0.2231
and buyer respectively when DMU0 is under evaluation.
3 0 1 0 0.2500
Also overall supply chain efficiency of DMU0 can be
4 0 0 1 0.3721 ଵ ଵ
calculated by ൤ ൅ σ௦௥ୀଵ ߤ௥‫ݕ כ‬௥଴ ൨.
5 1 1 0 1.0435 ଶ σ೘ ‫כ‬
೔ ణ೔ ௫೔బ
6 1 0 1 0.0000
7 0 1 0 0.1667
IV. NUMERICAL EXAMPLE
8 1 1 0 0.2980
9 0 0 1 1.0000 In this section, we apply our model to the numerical
10 1 0 0 0.4419
example used in Liang et al. [9]. In this data the seller has
three inputs, x1 (labor), x2 (operating cost) and x3 (shipping
cost) and three outputs, z1 (number of product A shipped), z2
(number of product B shipped) and z3 (number of product C
model (7) converts to a mixed integer linear program shipped). The buyer has another input šƴ ଵ (labor) in addition
such as bellow: to œଵ ǡ œଶ ǡ œଷ and two outputs: y1 (sales) and y2 (profit).
௠ ௦ Table I. reports the results from model (9), where the
second, third and forth columns show the optimal d for
‫ ݊݅ܯ‬෍ ߴ௜ ‫ݔ‬௜଴ െ ෍ ߤ௥ ‫ݕ‬௥଴ ሺͻሻ
classifying the status of intermediate measures ሺœଵ ǡ œଶ ǡ œଷ ሻ
௜ୀଵ ௜ୀଵ
ሺ‫ݎ݈݈݁݁ݏ‬ሻ respectively and the fifth column, the optimal value to
௅ ௠ model (9). In this case, when supply chain 1 is under
‫ݏ‬Ǥ ‫ݐ‬Ǥ ෍ ߜ௟ ‫ݖ‬௟௝ െ ෍ ߴ௜ ‫ݔ‬௜௝ ൑ Ͳ݆ ൌ ͳǡ ǥ ǡ ݊ evaluation, z1 (number of product A shipped) treats as an
output of the seller and z2 (number of product B shipped)
௟ୀଵ ௜ୀଵ
௅ and z3 (number of product C shipped) treat as the inputs of
෍ ߜ௟ ‫ݖ‬௟଴ ൌ ͳǡ ߱௟ ǡ ߴ௜ ൒ Ͳሺߝሻǡ ‫݈׊‬ǡ ݅ the buyer. Supply chain 5 treat z1 and z2 as two outputs of
௟ୀଵ
the seller and z3 as an input of the buyer.
ሺܾ‫ݎ݁ݕݑ‬ሻ Table II. reports the efficiency scores for the seller ሺߠ஺‫ כ‬ሻ
௦ ௅ ௅
௄ , buyer ሺߠ஻‫ כ‬ሻ and the supply chain efficiency in model (9)
ߜ௟ ‫ݖ‬௟௝ െ ෍ ߨ௞ ‫ݔ‬ƴ ௞௝ ൑ Ͳ and Liang et al. cooperative model [9] .As mentioned, Liang
෍ ߤ௥ ‫ݕ‬௥௝ െ ෍ ߱௟ ‫ݖ‬௟௝  ൅ ෍ et al. obtained heuristic search for solving the nonlinear
௞ୀଵ
௥ୀଵ ௟ୀଵ ௟ୀଵ
݆ ൌ ͳǡ ǥ ǡ ݊ cooperative supply chain model. Note that model (9) is the
௅ ௅ ௄ mixed integer linear program. Results show that efficiency
෍ ߱௟ ‫ݖ‬௟଴ െ ෍ ߜ௟ ‫ݖ‬௟଴ ൅ ෍ ߨ௞ ‫ݔ‬ƴ ௞଴ ൌ ͳ scores for the seller and buyer and supply chain efficiency
௟ୀଵ ௟ୀଵ ௞ୀଵ of two models is extremely closer to each other.
ߤ௥ ǡ ߱௟ ǡ ߨ௞ ൒ Ͳሺߝሻǡ ‫ݎ׊‬ǡ ݈ǡ ݇
Ͳ ൑ ߜ௟ ൑ ‫݀ܯ‬௟
TABLE II. EFFICIENCY SCORES

model (9) Liang et al. model


Supply
chain no. Ʌ‫כ‬୅ Ʌ‫כ‬୆ Supply chain Ʌ‫כ‬୅ ߠ஻‫כ‬ Supply chain
1 1 1 1 1 0.894 0.947
2 0.972 0.805 0.889 0.924 0.801 0.862
3 0.8 1 0.9 0.691 1 0.846
4 1 0.628 0.814 1 0.628 0.814
5 0.676 0.436 0.556 0.676 0.573 0.625
6 1 1 1 1 1 1
7 1 0.833 0.917 1 0.819 0.909
8 0.770 1 0.885 0.747 1 0.873
9 0.5 1 0.75 0.5 1 0.75
10 1 0.558 0.779 1 0.596 0.798

460
V. CONCLUSION
The current study develops new DEA-based model for
evaluating supply chain and its members. Recent DEA
models cannot be applied directly to the problem of
evaluating the efficiency of supply chains, because some
measures linked to supply chain members cannot be simply
classified as “outputs” or “inputs” of the chain. The
proposed model is capable to classify the status of
intermediate measures from the point view of input or
output. The presented model for performance evaluation
DMU0 permits that DMU to choose which is best for each
intermediate measure, whether to designate it as an output
of seller or input of buyer. Also, in this paper we provide the
score efficiencies for the seller, buyer and the supply chain
efficiencies. Our model is an important tool for the
managers in monitoring and planning their supply chain
operations.

REFERENCES
[1] Lee, H.L. and C. Billington. (1993). “Material management in
decentralized supply chains.” Operations Research, 41, 835–
847
[2] Weber, C.A. and A. Desai. (1996). “Determinants of Paths to
Vendor Market Efficiency Using Parallel Coor-dinates
Representation: A Negotiation Tool for Buyers.” European
Journal of Operational Research 90, 142–155
[3] Cheung, K.L. andW.H. Hansman. (2000). “An exact
performance evaluation for the supplier in a two-echelon
inventory system.” Operations Research, 48, 646–653
[4] Forker, L.B., D. Mendez, and J. Hershauer. (1997). “Total
quality management in the supply chain: What is its impact on
performance?.” International Journal of Production Research,
35, 1681–1702
[5] Seiford, L.M. and J. Zhu. (1999). “Profitability and
marketability of the top 55 US commercial
banks.”Management Science, 45(9), 1270–1288
[6] Chen, Y. and J. Zhu. (2004). “Measuring information
technology’s indirect impact on firm performance.”
Information Technology and Management Journal, 5(1–2), 9–
22
[7] Färe, R. and S. Grosskopf. (2000). “Network DEA.” Socio-
Economic Planning Sciences, 34, 35–49
[8] Zhu, J. (2003). Quantitative Models for Performance
Evaluation and Benchmarking: Data Envelopment Analysis
with Spreadsheets. Boston: Kluwer Academic Publishers
[9] Liang, L. , Yang, F., Cook, W. D., Zhu, J., 2006, DEA
models for supply chain efficiency evaluation, Ann Oper Res
, 145, 35–49
[10] Chen, Y., Liang, L., Yang, F. , 2006, A DEA game model
approach to supply chain efficiency, Ann Oper Res , 145, 5–
13
[11] Cook, W. D., Zhu, J., 2007, Classifying inputs and outputs in
data envelopment analysis, European Journal of Operational
Research, 180, 692–699

461
2009 International Conference on Computer Engineering and Technology

A Novel Binary Code Based Projector-Camera System Registration Method


Jiang Duan1,2, Jack Tumblin2
1
Southwestern University of Finance and Economics, 2Northwestern University
Duanj_t@swufe.edu.cn, jet@cs.northwestern.edu

Abstract pixel error can make big difference in recovering the


projector-camera homography. In addition, the
Precisely relating pixels in the projector image to assumption of using homography based approaches is
pixels in camera image plays a significant role in that the projector-camera system undergoes a
many projector-camera systems. In this paper, we perspective transform. However, in practice, lens
present a novel method of finding the correspondence curvature of both projector and camera as well as other
in a simple and efficient manner. Our registration unknown factors can make the assumption fail, which
approach uses binary coding scheme, only need to makes the projector-camera homography fail.
capture a few pictures and does not need to give any Other methods like [2, 3] use a lookup table to
assumption in the projector-camera system. Our store the correspondence between projector image and
experimental results demonstrate the advantage of camera image, i.e., each point in one domain is used as
using our registration methods. an index to obtain the corresponding point in the other.
To determine this 2D mapping, a sampling of
corresponding points are obtained by projecting
1. Introduction uniformly spaced square patches on the scene and the
corresponding images are acquired. Then mapping
Finding the correspondence between pixels in the between the two coordinate frames are modeled using
projector image P and camera image I play a piecewise second-order polynomials. This approach
significant role in many projector and camera systems, can produce very accurate results as it can
like [1, 2, 3]. Consider a point (X, Y) in the projector accommodate for geometric distortions that may be
image, which is projected to a position located on the caused by the optics of the projector and the camera as
projection screen. This process involves a perspective well as parallax due to the shape of the scene [3].
transform whose parameters depend on the some Similar with the work from [2, 3], in our work,
unknown factors such as the position and orientation we use a novel binary code based method to recover
of the projector relative to the screen etc. The point on the correspondence between projector image and
the screen is then captured by a camera and appears at camera image. However, we propose a simpler and
a pixel location (x, y). This process involves another much more efficient method to achieve this aim.
perspective transform whose parameters depend again
on some unknown factors like the position and 2. Our binary code based registration
orientation of the camera relative to the screen etc. The method
goal of finding the correspondence is to relate the
position in projector image (X, Y) with the position in In order to relate the projector pixel position to
camera image (x, y) without knowing the unknown camera pixel position, an easy way is to use projector
factors, i.e. for a position in the camera image at (x, y), to project certain pattern image onto the projection
we would like to find out the point (X, Y) in the screen and then use camera to capture the projected
projector image that corresponds to this position. pattern. Next, the positions of certain features in both
A category of finding the correspondence is the projector image and camera image are computed as the
homography based approaches like [1]. In this kind of sample points and are associated with each other. If the
methods, 4 corresponding pairs of points in projector correspondence of these samples between projector
image and camera image are usually required in order image and camera image can be recovered accurately
to obtain projector-camera homography. The success enough, the correspondence of other position can be
of this category of methods highly depends on how recovered by interpolation. Thus, the key in our
accurate these points are located [4], as just 1 or 2 projector-camera registration method is to precisely

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 462


DOI 10.1109/ICCET.2009.51
recover the correspondence of these samples between easy to work out how many pictures are needed using
projector image and camera image. the following equation:
In order to obtain the sample points, we can Pn log 2 Sn (1)
divide the projector image space into uniformly spaced
Where Sn is the sample points used in registration
rectangular patches. Each time, only one patch is lit
and Pn is the picture number needs taking to obtain
and a picture is captured. Then the centers of the
these sample points. With this equation, it is easy to
patches in both projector image and camera image are
work out that, 16 sample points needs 4 pictures, 64
computed as a pair of one of the correspondent sample
sample points needs 8 pictures and so on. This is much
points. Using this way, to obtain N sample points, N
efficient with the naïve patch-by-patch-lit process. In
pictures are required, which makes this process slow
our work, we use 64 sample points to carry on the
and inefficient. In our work, we use binary strip
projector and camera registration. The projector-
patterns instead of the patch patterns described above
camera system we have used is a CANON LV-7325U
and propose an efficient coding scheme to make this
and the camera we used is the CANON Powershot G6
process efficient and achieve the same aim.
VPL-CS5.
The binary strip patterns we used in our work are
shown as below in Figure 1. Patterns are sent to the
projector in the sequence from left to right and top to
bottom and corresponding pictures are taken. Thus,
each pixel either in the projector image or in the
camera image would have N chances of being either
turned on or turned off in the ideal situation, as long as
Figure 2. Left: Coding scheme for 16 patches
N pictures are taken. Based on this fact, our coding
computed using 4 pictures. Right: A selected camera
scheme is described as following.
picture we used in our experiment
1. The pixels in the upper left picture represent
Using above method, the center of each patch that
the most significant bit in the coding scheme and the
is used as sample point in the projector images can be
pixels in the right bottom picture represent the least
easily determined, as the projector images are
significant bit in the coding scheme.
produced using computer program and each pixel in
2. If the pixel is turned on, the bit is stored as 1,
the images can be explicitly controlled to have two
otherwise, the bit is stored as 0.
possible values, which are either turned on or turned
off. However, this is not the same story in the camera
pictures. The point spread function and noises of the
sensor, the ambient light interaction as well as the non-
uniformity of the lighting coming from the projector
all contribute to make the pixels’ values varies across a
wide range and pixels cannot be explicitly turn on or
... turn off as projector images (Figure 2 (Right)).Thus, it
is difficult to find a single threshold value that can
Figure 1. The strip patterns used in our experiment, perfectly differentiate whether pixels in the captured
which are sent to projector in the sequence from left to camera images are lit or not following the same style
right and top to bottom as projector images, i.e., if pixels are lit in the projector
Let’s look at a simple example of using only 16 image, the corresponding pixels in the camera picture
sample points in our project-camera registration to should be determined as lit pixels using the threshold
illustrate how the coding scheme works. As described value and vice versa. The difficulty would add
above, in order to locate the position of 16 sample uncertainty in properly determining the centers of the
points, we need to found out pixels belonging to 16 patches in the camera image.
individual rectangular patches, based on which the According to the above analysis, we carried out
centers can be computed as the sample points. In this an experiment to determine pixels belonging to
case, only 4 pictures are required to determine the 16 different patches and pixels showing uncertainty that
individual rectangular patches. According to the are hard to determine which patches they should
coding scheme proposed above, the 16 patches can be actually belong to. We set the pixel values that are
easily determined based on pixels’ codes as shown above 90 to 1 and the pixel values that are below 70 to
below in Figure 2 (Left). With this coding scheme, it is 0, and set the pixel values that are between 70 and 90
as uncertainty pixels. Following this scheme, in the

463
Figure 3 (Left), we show an example in which the
white pixels show these pixels whose codes value is
111010, the black pixels shows these pixels that
belong to other patches and the red pixels show pixels
with uncertainty. As seen from the Figure, pixels that
lie toward the edge of the patches of the patches show
more uncertainty in comparison with the pixel that are
located towards the center of the patches. The pixels Figure 5. Some of the pictures taken for the new
with uncertainty presents challenge in our projector patterns
and camera registration method, as they would make With the new pattern scheme, the centers of the
the calculated centers of the patches in the camera patches of the camera images can be determined using
images shift from the theoretical center. the following procedures
1. Obtain the absolute value for each pair of
complimentary images i. i just represent the index of
the pairs and i ę Sn.
Ai(x, y) | Ii(x, y) - Iic(x, y) | (2)
Where Ii(x,y) represents the first image, the Iic(x,y)
represents its complementary image in the pair and Sn
represents the total pairs of the complimentary images .
Figure 3 (Right) shows an image which displaying the
Figure 3. Left: A recovered patch in for camera Ai(x, y) for a pair of images. From this Figure, it can be
pictures computed based on the scheme describe above. seen that the patches show high intensity, while the
In this image, the white pixels show these pixels whose boarder of each patch shows low intensity. This is
codes value is 111010; the black pixels shows these exactly the result from our pattern design. The
pixels that belong to other patches; the red pixels show differences of complementary pixels produce high
these pixels that show uncertainty and that are hard to value for Ai(x, y), while pixels around the patch board
determine which patches they should actually belong gives low value for Ai(x, y) as they hold the same value
to. Right: An image displaying the Ai(x, y) for a pair of in both projector complimentary images and thus
complimentary images (See Equation (2)). produce very close value in the camera complimentary
In order to solve the problem, we propose to use images. As seen from the Figure, boarder pixels and
refined patterns shown in Figure 4. In the new pattern patch pixels are easier to be separated from each other.
scheme, there are two main changes. First, we add a This is important, as we pointed out before that
complementary pattern for each of the pattern shown boarder pixels show high uncertainty. Using this way,
before, i.e., in Figure 4, the second row is we can easily exclude these uncertain pixel and utilize
complementary element of the first row. Secondly, we more certain pixels in finding the centers of the
make grids in the pattern using gray pixels so that each patches.
of the recovered patches is actually added with a 2. As described in step 1, we can set a threshold
boarder. With the complementary pattern and the (we use 80 in our experiment) to easily separate
added boarder, we can more certainly recover the boarder pixels and patch pixels and assign 1 or 0 to
pixels belonging to a patch and use these pixels to find patch pixels according to following procedure:
the patch center as the simple point used in our If Ai(x, y) >T
registration method. In Figure 5, we show some of the If I1(x,y) – I2(x,y) > 0
camera pictures taken for the new patterns. I1(x,y) = 1
Else
I1(x,y) = 0
Else
Mark this pixel as boarder pixel
3. The coding scheme described before is used
to recover the pixels belonging to each patch based on
the detected certain pixels.
After recover the pixels belonging to each patch,
Figure 4. A few pattern selected form New pattern these pixels’ position can be averaged to find the
scheme centers for each of the patch. However, in order to

464
compensate the drawback of using only a single The left bottom right image is the result after applying
threshold in step 2 and improve the accuracy, we our registration method to the right image.
propose to use the weighted patch pixel position to 3. Conclusion
achieve this aim as following:
4. Find the maximum value for Ai(x, y) as Aimax
5. Decide a certainty factor for each patch pixel as: In our work, we propose a simple projector and
CF ( x , y ) ¦
CF i ( x , y ) / S n (3)
camera registration method, which makes no
assumption comparing with homography based method
CFi ( x, y ) Ai(x, y) / Aimax (4) and can accommodate for geometric distortions that
Where Sn is the number of pairs used. may be caused by the optics of the projector and the
6. The center of the patches can be computed as: camera. It only needs to take a few images and simple
computation can achieve the accurate projector and
¦ CF ( x , y ) ˜ x camera registration.
C kx For (x, y) ę k (5)
References
¦ CF ( x , y )
1. R. Sukthankar, R. Stockton, and M. Mullin.
Smarter Presentations: Exploiting Homography in
¦ CF ( x, y ) ˜ y Camera-Projector Systems," Proceedings of the
C ky For (x, y) ę k (6) International Conference on Computer Vision, 2001.
¦ CF ( x, y ) 2. S. Nayar, H. Peri, M. Grossberg, and P.
Belhumeur. A projection system with radiometric
Where Ckx and Cky represent x and y coordinate of compensation for screen imperfections. In IEEE
the center for patch k. International Workshop on Projector-Camera Systems,
After finding the correspondence of the centers Oct. 2003.
for both projector and camera images that would be 3. M. Grossberg, H. Peri, S. Nayar, and Peter N.
used as the sample points, we can interpolate to find Belhumeur. Making One Object Look Like Another:
the correspondence for other projector and camera Controlling Appearance using a Projector-Camera
pixels. In our work, the OpenGL texture mapping is System. Proc. Conf. on Computer Vision and Pattern
used for this purpose. In Figure 6, we show the result Recognition (CVPR), Washington, DC, IEEE
of our projector and camera registration system. The Computer Society, I, 452—459, 2004
left top image is the projector image, The right image 4. S. M. Smith and J. M. Brady (May 1997).
is a camera image and the left bottom image is the SUSAN - a new approach to low level image
result after applying our geometric mapping. The processing. International Journal of Computer Vision
boarder of the image is empty because we do not 23: 45-78.
sample points in these regions. A future work for us is 5. M. Ashdown, M. Flagg, R. Sukthankar, J. M.
to find out pixels correspondence in these regions. Rehg: A Flexible Projector-Camera System for Multi-
Except these regions, projector pixels position and Planar Displays. CVPR (2) 2004: 165-172, 2004
camera pixel position are accurately related with each 6. R. Raskar, M.S. Brown, R. Yang, W. Chen, H.
other. Towles, B. Seales, and H. Fuchs. Multi-projector
displays using camera-based registration. In Proc.
IEEE Visualization, pages 161-168, Oct. 1999..
7. A. Majumder, Z. He, H. Towles, and G. Welch.
Achiev-ing color uniformity across multi-projector
displays. In T. Ertl, B. Hamann, and A. Varshney,
editors, Proc. IEEE Visualization, pages 117-124,
2000.
8. K. Li and Y. Chen. Optical blending for multi-
projector display wall system. In IEEE Proc. 12th
. Lasers and Electro-Optics Society, volume 1, pages
281-282, 1999.
Figure 6. Registration results. The left top image is the
projector image; The right image is the camera image;

465
2009 International Conference on Computer Engineering and Technology

Non-temporal Multiple Silhouettes in Hidden Markov Model for View Independent


Posture Recognition

Yunli Lee Keechul Jung


Department of Media Department of Media
Soongsil University Soongsil University
Seoul, South Korea Seoul, South Korea
yunli@ssu.ac.kr kcjung@ssu.ac.kr

Abstract—This paper introduces a non-temporal multiple insensitive representation for action recognition. Each action
silhouettes in Hidden Markov Model (HMM) for offering view is represented in envelop shape, where this representation is
independent human posture recognition. The multiple viewpoint insensitive under assumption of affine camera
silhouettes are used to reduce the ambiguity problem of projection model. Cen Rao [2] did a lot of related works on
posture recognition. A simple feature extraction of the 2D view invariant analysis for human activity in his Ph.D. study.
shape contour based histogram is used for image encoding and He used trajectory of hand centroid to describe human action
K-Means algorithm is applied for clustering and code-wording that are performed by hand. Both Feng Niu and Mohamed
of eight simple postures from multiple views. Therefore, 3D Abdel-Mottaleb [3], and Mohiuddin Ahmad and Seong-
volume reconstruction is not required, in return helps to
Whan Lee [4], used multiple view image sequences of
reduce the complexity of modeling and computational power of
combined features in Hidden Markov Model (HMM) for
feature extraction. HMM is trained to obtain view independent
recognition model using multiple silhouettes. A combination of human action recognition. They built HMM model for each
non-temporal multiple silhouettes, code-wording and HMM action in each viewing direction to characterize the variation
methods in this proposed approach make it possible to from the change of viewing direction. However, this
recognize human posture in view independent. The approach requires more HMM models of each action at each
experimental results demonstrate the effectiveness of non- viewpoint for view independent characteristic. Liu Ren et al.
temporal multiple silhouettes in HMM for recognizing posture. [5] used extracted silhouettes from three video streams to
match the body configuration of the user against a database
Non-temporal multiple silhouettes; Hidden Markov Model; of dance motion.
view independent; posture recognition Different from previous works, we use synthetic models
in virtual environment that relies on silhouettes extracted
I. INTRODUCTION from seven virtual cameras to generate posture information
in various view. These clean non-temporal multiple
Human gesture or action leads to the most active research silhouettes are extracted automatically and clustered using
in computer vision community by offering several important K-Means algorithm for code-wording purpose. The order of
applications in our daily life, such as surveillance system, cameras and code-wording are used to train the HMM for
human-computer interfaces, games, virtual reality and others. posture recognition model where it can handles view
These applications enable us to use hand or body gesture to independent issue.
convey information to the system or to control the device Section 2 describes the overview of our proposed HMM-
naturally without additional modal. based view independent posture recognition system using
However, human body is not a rigid object and we could multiple silhouettes. We briefly explain the feature
present various kinds of gesture that composed by a representation and extraction of silhouette images in Section
sequence of postures from each individual. Therefore, 3. A simple K-Means classification used to create the code
posture is a basic element of human gesture or action. The book is presented in Section 4. In Section 5, we introduce the
goal of our research is to recognize human posture in view concept of HMM and how it is adapted to offer view
independent without restricting the actor or observer independent posture recognition. The experimental results of
position. Simple vision processing and feature extraction posture recognition are discussed in Section 6. Some
supply an intuitive 2D shape contour based histogram, and thoughts about future work and conclusion are remarked in
K-Means algorithm clusters the set of training posture Section 7.
silhouette images. Then, the code-wording of eight simple
postures are trained by using the Hidden Markov Model II. PROPOSED SYSTEM ARCHITECTURE
(HMM) which is supporting view independent posture
The system architecture of this proposed system consists
recognition.
of four parts. It contains a virtual studio of 3D model posture
In order to offer view independent posture recognition,
capturing module which automatically generates a sequence
several approaches have been proposed. Feiyue et al. [1]
of non-temporal multiple silhouette images from seven
used stereo cameras of image pairs to propose a viewpoint
virtual cameras; a 2D shape representation and extraction

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 466


DOI 10.1109/ICCET.2009.113
module that extracts the contour points and computes the A. Multiple Views Posture Databases
gradient point accumulation based on histogram bins Our multiple views posture database comprises of eight
template from silhouette image; a K-Means classification postures as follows
module that creates code-wording for non-temporal multiple 1. T Shape,
silhouette images of defined postures for training the HMM 2. Stand,
models; and a posture recognition module which uses Baum
3. Both Hands Front,
Welch and forward algorithm [6-7] for training and
4. Both Hands Up,
evaluating the input sequence of non-temporal multiple
silhouettes. The overview of the proposed system is 5. One Hand Up,
illustrated in Figure 1. 6. T Shape Foot Up,
In the virtual studio of 3D model posture capturing 7. T Shape Bend,
module, seven virtual cameras are used to capture the 3D 8. Crawl.
model posture. Seven units of camera are placed around the Each posture has been acquired from seven viewing
ceiling view. This module automatically generates seven position with 51 degree apart. Each posture was executed by
clean silhouettes from each camera view. Each posture is seven synthetic 3D models for six times. The sequence of
represented with seven non-temporal views in clockwise camera order is important to represent the posture
order where the cameras’ position is about 51 degree apart. information in view independent. However, we do not fix the
The contour points are extracted from the silhouette image starting position of the camera sequence. As long as the
and the gradient of each point on the contour to the center cameras sequence order is concerned, the starting position
point is computed and accumulated into 12 bins template. A does not affect the learning performance. The database
symbol which corresponds to a code-word in the code book comprises 2352 images. As a whole, eight HMMs are
created by K-Means is assigned to each silhouette image. A created to model eight postures that support view
sequence of code-word is formed by seven camera’s view independent using minimum number of cameras for training.
and used to train the HMM models. Without restricting the
III. FEATURE EXTRACTION
start position of the camera view and actor, six times
permutation of the sequence training dataset is applied. We assume clean silhouettes are extracted from the
Baum Welch algorithm [6-7] is used to obtain the HMM system. A simple posture representation of silhouette image
parameters from the training dataset. is used to extract the feature vectors. In this work, we extract
the posture contour from each silhouette, while the center
point of the posture contour is computed as a reference
center point of 12 bins template. The gradient between each
contour point and center is computed, and each bin from the
defined template accumulates the number of contour points
that overlaid on the corresponding bin. The feature named as
gradient point accumulation is extracted from contour points
of silhouette image. Let, Sv = {p1, p2, …, pn} be the contour
of silhouette image of a posture for each camera, where v is a
camera index, pi= (pxi, pyi) is a contour point, and n is the
total number of contour points, which is extracted using
boundary following algorithm. The center point cx,y, of the
contour is obtained by the following equation from Yiğithan
Dedeoğlu et al. [10]:

⎛ ∑n pxi ∑n pyi ⎞
4 3
5 2

1
cx, y = ⎜ i =1 , i =1 ⎟ (1)
⎜ ⎟
6

12
n n
⎝ ⎠
7

8
11
9 10

Fe a t u re s Re pre s e n ta ti o n f o r T S h a pe Po s tu re o f C 3 Vi e w
A 12 bins template is defined with 30 degree apart from
0.25

each bin. Then, the gradient G, between the center point cx,y
nts

0.2
do
Pi

0.15
m z
ie

of contour with respect to each contour point on the contour


a
l

0.1
o
Nr

0.05
0
1 2 3 4 5 6
Bin
7 8 9 10 11 12
is computed using below equation:

G ( p[i ], c x , y ) = arctan ( pyi −c y


pxi −c x ), ∀i ∈ [1, " , n] (2)

Human varies in shape and size. As such, we propose a


Figure 1. Overview of HMM-based view independent human posture non-temporal multiple silhouettes to represent a posture
recognition system. because each silhouette may have a different contour shape.

467
Therefore, normalization is required to standardize the which code-word of the most similar (minimal error) feature
extracted features. The normalized accumulation of gradient vectors in the code book. Figure 3 shows the mapping result
point for 12 bins template, B = {b1, b2, …, b12} is shown in for the defined postures from the clustering result of K-
Figure 2. B is bin with 12 dimensions feature vectors that are Means, where K is defined as 56 by assuming the training
used to classify the contour shape of each silhouette image. dataset of eight postures has seven different views for each
posture. The clustering result of simple K-Means is
reasonable even though some postures are mistaken.

Fe atu re s Re pre se n tati on for T S h ape Postu re of C 3 Vi e w

0.25
Normalized Points

0.2
0.15
0.1
0.05
0
1 2 3 4 5 6 7 8 9 10 11 12
Bin

Figure 2. Bins distribution template and 2D shape representation graph of


T Shape.

IV. MAPPING FEATURE TO SYMBOL


We propose seven multiple silhouettes to represent a
posture, where each silhouette consists of 12 dimension Figure 3. The defined postures and symbols of K-Means clustering.
feature vectors. We map each silhouette image into code-
wording representation that forms a sequence of symbols for V. HIDDEN MARKOV MODEL
a posture in seven viewpoints using K-Means clustering.
This result in a sequence of symbols represented as a posture Hidden Markov Models (HMM) is a probabilistic state
and used to train the HMM model subsequently. Hence, a transit model in which the system being modeled is assumed
simple K-Means algorithm is applied to cluster the training to be a Markov process where the states sequence could not
feature vectors posture into K clusters, which equals to the be observed directly. There are widespread approaches to
size of code book. Consequently, the size of K clusters probabilistic sequence modeling [6-7]. HMM is well known
equivalent to the number of HMM output symbols, M. as transition system which is able to attempt image
understanding through model of patterns. It can deal with
A. K-Means and Code-wording transitions in time, and also transition through another
Simple K-Means algorithm [8] was introduced for pattern. Thus, by taking this advantage of transition through
clustering, where K is the number of cluster that cluster the another pattern, we learn a sequence of non-temporal
data using means information from given dataset. For the multiple silhouettes from different views of multiple cameras
silhouettes clustering, we initialized the means value of K for a defined posture that offers view independent human
corresponds to the defined postures. Since K is equivalent to posture recognition system.
M, these K symbols are used to generate code book for The basic parameters of HMM with N states with M
assigning a sequence of code-wording symbols for defining observation symbols can be specified by λ = ( A, B, π )
the input postures dataset to train the HMM models. Each
where λ represents the HMM model. The detailed
silhouette is transformed into the symbol which is assigned
to the cluster which is nearest to the means vector of the explanation of HMM model parameters are as below:
feature space. z N is the number of states in the model where the states
For posture recognition, we select non-temporal multiple are hidden
silhouettes of feature vectors for representative camera views z M is the number of observation symbols correspond to
from each posture as code-word in the code book. The the physical output of the system being modeled
extracted feature vectors would be mapped to a symbol, z A is a state transition probability matrix
z B is an observation probability for each state

468
z π is an initial state distribution Another testing dataset has been created using two new
We propose only eight HMMs for recognizing the eight 3D synthetic models. The postures were captured two times
defined posture where each model can offer view in same camera views and six times in new camera views.
independent by using a sequence of non-temporal silhouette Figure 4 shows two sets of test data for T Shape posture
images from multiple cameras. The set of parameters of which are generated from the new models in different
HMM λ j , where j is number of HMMs of the proposed camera views and classified to obtain input observation
symbols. Table 2 shows the recognition results of testing
recognition system, is learned by using Baum-Welch dataset. The mean accuracy of this proposed recognition
algorithm [6-7] from the training dataset. To recognize a model is 89.8%.
given posture O, we evaluate P(O | λ j ) with forward
algorithm [6-7] for each j models and choose the maximum
probability of model c to recognize the posture:

c = arg max j P(O | λ j ) (3)

A. View Independent HMM


View independent posture recognition enables user to
perform posture command naturally without restricting the Figure 4. Two sets of new synthetic models with different camera views
observation position. We have chosen seven cameras to be of T Shape posture.
placed around the working space for capturing the posture.
Non-temporal sequence of images is ordered in clockwise- TABLE II. CONFUSION MATRIX FOR POSTURE TESTING MODELS
order and six times permutation of view sequences has been
applied to represent a posture where the user can perform the Posture 1 2 3 4 5 6 7 8
posture freely without any restriction. 1 14 0 0 0 0 2 0 0
These sequences are then used for training in HMM. The 2 0 15 1 0 0 0 0 0
sequence of cameras is important for HMM to understand 3 2 1 13 0 0 0 0 0
the posture in various views. HMM is able to learn the 4 2 0 0 14 0 0 0 0
relation between each view image of each observed camera 5 0 0 0 0 16 0 0 0
in order to support the view independent condition. 6 4 0 0 0 0 12 0 0
7 0 0 0 0 0 1 15 0
VI. EXPERIMENTAL RESULTS 8 0 0 0 0 0 0 0 16
The proposed framework has been tested using synthetic
dataset. The system has been trained using training data from VII. CONCLUSION AND FUTURE WORK
seven 3D models with different size and gender. The models
have been obtained from the 3D model database [9] and This work proposes an efficient 3D human model posture
Poser software application. Eight postures as defined in recognition using non-temporal multiple silhouettes without
Section 2.1 have been created using biped bone of 3D max any 3D volume reconstruction process. The contour points of
studio application for 3D models. silhouettes are extracted to represent the human posture.
We have used synthetic data to evaluate the accuracy of Each posture is composed from seven multiple contours of
proposed system. The synthetic postures dataset are divided silhouette views which are represented in gradient point
into two sets, one for training dataset, and another one is the accumulation feature. The gradient point accumulation is
testing dataset. Table 1 shows the confusion matrix obtained allocated into 12 bins template. A set of training defined
with five states of HMMs that learned from seven synthetic postures are clustered into K symbols that corresponds to a
3D models. The mean accuracy of the proposed recognition code-word of code book created by K-Means classification.
model is 97.7%. Seven sequences symbol of code-wording expressing a
defined posture. The recognition rate achieves average
97.7% of training models and 89.8% of new test models. The
TABLE I. CONFUSION MATRIX FOR POSTURES TRAINING MODELS HMM-based non-temporal multiple silhouettes show a
potential result for view independent human posture
Posture 1 2 3 4 5 6 7 8
recognition.
1 49 0 0 0 0 0 0 0 For future work, we plan to apply the non-temporal
2 0 47 0 2 0 0 0 0 multiple silhouettes of contour point features in HMM for
3 0 0 49 0 0 0 0 0
view independent posture recognition in real environment.
4 0 0 0 42 7 0 0 0
5 0 0 0 0 49 0 0 0
More postures definition and test data are required for
6 0 0 0 0 0 49 0 0 evaluating the proposed features and HMM-based multiple
7 0 0 0 0 0 0 49 0 silhouettes on the robustness of view independent human
8 0 0 0 0 0 0 0 49 posture recognition system.

469
ACKNOWLEDGMENT Conference on Pattern Recognition (ICPR 2006), Vol. 1, pp. 263-266,
2006
This work was supported by the ‘Seoul R and BD [5] Liu Ren, Gregory Shakhnarovich, Jessica K. Hodgins, Hanspeter
Program (10581cooperateOrg93112)’. Pfister, and Paul Viola, “Learning Silhouette Features for Control of
Human Motion,” ACM Transactions Graphics, Vol. 24, No. 4, pp.
1303-1331, October 2005.
REFERENCES [6] Lawrence R. Rabiner, “A tutorial on Hidden Markov Models and
[1] Feiyue Huang, Huijun Di, Guangyou Xu, “Viewpoint Insensitive Selected Applications in Speech Recognition,” Proceedings of the
Posture Recognition for Action Recognition,” Proceedings of IEEE, vol. 77, no. 2, pp. 257-286, 1989.
Articulated Motion and Deformable Objects (AMDO 2006), LNCS, [7] Lawrence R. Rabiner, B.H. Juang, “An Introduction to Hidden
Vol. 4069, pp. 143-152, 2006. Markov Models,” IEEE ASSP Magazine, vol. 3, pp. 4-16, 1986.
[2] Cen Rao, “Invariance in Human Action Analysis,” Ph.D. [8] Vitorino Ramos, Fernando Muge, “Map Segmentation by Colour
Dissertation of University of Central Florida, 2003. Cube Genetic K-Mean Clustering,” Proceedings of the ECDL, 2000.
[3] Feng Niu, Mohamed Abdel-Mottaleb, “View-Invariant Human [9] INRIA Gamma team research database, http://www-
Activity Recognition Based on Shape and Motion Features,” IEEE c.inria.fr/gamma/gamma.php
Sixth International Symposium on Multimedia Software Engineering, [10] Yiğithan Dedeoğlu, B. Uğur Töreyin, Uğur Güdükbay, A. Enis Çetin,
pp. 546-556, 2004. “Silhouette-Based Method for Object Classification and Human
[4] Mohuiddin Ahmad, Seong-Whan Lee, “HMM-based Human Action Action Recognition in Video,” 9th European Conference on
Recognition Using Multiview Image Sequences,” 18th International Computer Vision (ECCV 2006), LNCS, vol. 3979, pp. 64-77, 2006.

470
2009 International Conference on Computer Engineering and Technology

Classification of Quaternary [21s + 1, 3] Optimal Self-orthogonal Codes

Xuejun Zhao(1),(2) Ruihu Li(2) Yingjie Lei(1)


(1) Department of Computer Science,College of Missile,Air Force Engineering University Sanyuan,Shaanxi 713800,PRC
(2) Department of Mathematics,College of Science, Air Force Engineering University Xi’an,Shaanxi 710051,PRC
e-mail:zlycczlycc@163.com; liruihu2008@yahoo.com.cn; lei@ieee.org

Abstract orthogonal codes over F4 with s ≥ 1 and t ∈ {0, 16, 19}


meeting the Griesmer bound are unique under equivalence.
The classification of quaternary [21s + t, 3, d] codes with In this paper, we give complete classification of [21s+1, 3]
d ≥ 16s and without zero coordinates is reduced to the optimal self-orthogonal codes over F4 with s ≥ 1.
classification of quaternary [21c(3, s, t) + t, k, d] code for Let F4 = {0, 1, ω, $} be the Galois field with four
s ≥ 1 and 0 ≤ t ≤ 20, where c(3, s, t) ≤ min{s, 3t} is elements such that $ = 1 + ω = ω 2 , ω 3 = 1, and the
a function of 3, s, and t. Quaternary optimal Hermitian conjugation is defined by Γ(x) = x̄ = x2 . Let F4n be
self-orthogonal codes are characterized by systems of the n−dimensional row vector space over the quaternary
linear equations. Based on these two results, the complete field F4 . A k−dimensional subspace C of F4n is called a
classification of [21s + 1, 3] optimal self-orthogonal codes quaternary linear [n, k] code.
for s ≥ 1 is obtained, and the generator matrices and The Hermitian inner product of u, v ∈F4n is defined as
weight polynomials of these 3-dimensional optimal self- n
X n
X
orthogonal codes are also given. (u, v)h = uv T = uj vj = uj vj2 .
1 1

Keywords: quaternary linear code; self-orthogonal code; The Hermitian dual code C of C is defined as C ⊥ = {u ∈

optimal code; Griesmer bound. F4n | (u, v)h = uv T = 0 for all v ∈ C}. A code C is self-
orthogonal if C ⊆ C ⊥ , and self-dual if C = C ⊥ . A quaternary
1. Introduction code is SO if and only if it is even,i.e. the weights of all
codewords in C are even, see [4] and [10]. An [n, k] SO
Since the pioneer work of MacWillams et.al. in [1] in code C is called optimal if it has the highest weight among
1978, people paid much attention on quaternary Hermitian all [n, k] SO codes.
self-dual codes—a subclass of self-orthogonal codes ( SO Two quaternary codes C and C 0 are equivalent if one can
codes, for short) over the quaternary field F4 , and a vast be obtained from the other by permuting the coordinates,
number of paper have been devoted to the study of quater- multiply some coordinates by non zero elements, or conju-
nary self-dual codes, see the excellent survey of [2] and [3] gate all the coordinates. If two matrices G and G0 generate
for an overview of these results and the references therein. equivalent codes, we denote them as G ∼ = G0 .
Recently, people begin to study optimal [n, k] self- We use 1n =(1, 1, · · · , 1)1×n and 0n =(0, 0, ..., 0)1×n to
orthogonal codes of rate less than 12 and use these optimal denote the all-ones vector and the zero vector of length n,
[n, k] SO codes to study quantum error-correcting codes and respectively. And use iG = (G, G, · · · , G) to denote the
self-dual codes, see [4-5]. In [6], Bouykliev et al. studied the juxtaposition of i copies of G for given matrix G.
classification of binary optimal SO codes of length ≤ 40 and
dimension less than 10, and gave complete classification 2. Quaternary Self-orthogonal Codes and Sys-
of 3-dimensional optimal SO codes. In [7] Bouykliev et. tems of Linear Equations
al. studied the classification of optimal SO codes of length
n ≤ 29 and dimension less than 7 over F3 and F4 , and In order to present our main results, we need some
give complete classification of [n, 3] optimal self-orthogonal preparations.
codes over F4 for 6 ≤ n ≤ 29. Their results of optimal SO A row (or column) vector is monic if its first non
codes over F4 show that some optimal SO codes meeting zero coordinate is 1. Let α1 =(0, 1, 0)T , α2 =(1, 0, 0)T ,
the Griesmer bound are unique under equivalence. α3 =(1, 1, 0)T , α4 =(1, ω, 0)T , α5 =(1, $, 0)T , α6 =(0, 0, 1)T ,
In [8], we studied the classification of binary [15s + t, 4] α7 =(0, 1, 1)T , α8 =(1, 0, 1)T , α9 =(1, 1, 1)T , α10 =(1, ω, 1)T ,
optimal SO codes for s ≥ 1 and t ∈ {1, 2, 6, 7, 8, 9, 13, 14}. α11 =(1, $, 1)T , α12 =(0, 1, ω)T , α13 =(1, 0, ω)T ,
T T
In [9], Ruihu Li proved that [21s + t, 3] optimal self- α14 =(1, 1, ω) , α15 =(1, ω, ω) , α16 =(1, $, ω)T ,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 471


DOI 10.1109/ICCET.2009.93
α17 =(0, 1, $)T , α18 =(1, 0, $)T , α19 =(1, 1, $)T , of G and C the code corresponding to LG . Let Y T = A3 LTG ,
T T
α20 =(1, ω, $) , and α21 =(1, $, $) . Then all the where Y = (y1 , y2 , ..., y21 ). Then Y = (y1 , y2 , ..., y21 ) is a
monic vectors of dimension 3 are these 21 vectors. projective weight vector of C. Since GL(3, F4 ) acts double
Definition 2.1 For a linear code C= [n, k, d] with genera- transitively on {α1 , · · · , α21 }, hence, in the following, we
tor matrix G, a matrix whose rows are formed by all monic can assume l1 ≥ l2 ≥ li , i = 3, 4, · · · , 21, l6 ≥ rj , j =
vectors of C is called a projective matrix of C and denoted 7, · · · , 21 as in [6], and without further explain.
as P (C) or P (G). Let P (G) = (β1T , β2T , · · · , βN T T
k
) and Let C be an [21s + t, 3, 16s + dt ] SO code with generator
W (C) = (w(β1 ), w(β1 ), · · · , w(βNk )) = (x1 , x2 , ..., xNk ), matrix G and define vector L = (l1 , l2 , ..., l21 ), where s ≥ 1,
W (C) is called a projective weight vector of C, and 1 ≤ t ≤ 20. Using the Griesmer bound, one can deduce
x1 , x2 , · · · , xNk are called projective weights of C. an upper bound of dt , hence the projective weight vector
If P = (aij ) is a matrix over F4 , its projection (P )p = of C can be assumed as Y = (y1 , y2 , ..., y21 ), where yi =
(bij ) is a binary matrix, where bij = 0 if aij = 0 and bij = 1 16s + dt + 2λi and λi ≥ 0 for 1 ≤ i ≤ 21. Thus we have
otherwise. the following equations
Fix G3 = (α1 , α2 , ..., α21 ), then G3 is a generator matrix 
l1
 
y1

of the Simplex code C3 = [21, 3, 16].  l 2   y2 
Let P2 and A2 = (P2 )p as Ak  .  =  . 
   
(1)
 ..   .. 
 
0 1 1 1 1 l21 y21
 1 0 1 ω $ 
  Then, for given Y , an [21s + t, k, 16s + dt ] SO code with
P2 =  1 1 0 $ ω ,

 1 ω $ 0 1  projective weight vector Y exist if and only if the above
linear equations (1) has non-negative integer solution.
1 $ ω 1 0
Let L0G = LG − s121 . Then, from Y T = A3 LT , one can
deduce that 21dt + 2(λ1 + λ2 + · · · + λ21 ) = 43−1 (l10 + l20 +
 
0 1 1 1 1
0
 1 0 1 1 1  · · · + l21 ), thus 2(λ1 + λ2 + · · · + λ21 ) = 43−1 t − 21dt . Let
Λ = (λ1 , λ2 , · · · , λ21 ), dt = 2at , δt = λ1 + λ2 + · · · + λ21 .
 
A2 =  1 1 0 1 1 .

 1 1 1 0 1  Then an [21s + t, 3, s43−1 + dt ] SO code with projective
1 1 1 1 0 weight vector Y exist if and only if the following system
of linear equations have integer solution L0G such that each
And, let J5 be the 5 × 5 all one matrix, denote P2 = P2,0 , s + li0 is non-negative.
P2,1 = P2 +J5 , P2,2 = P2 +ωJ5 and P2,3 = P2 +$J5 , their
 A3 (L0G )T = 2(at 1T
 T
projections are denoted as A2 = (P2 )p and A2,i = (P2,i )p , 21 + Λ ),
1 ≤ i ≤ 3, respectively. 2δt = 43−1 t − 21dt , (2)
λi ≥ 0, i = 1, 2, · · · , 21.

From the generator matrix G3 of C3 , we have P3 = P (C3 )
and A3 = (P3 )p as follow: Our classification of [21s+t, 3] optimal SO codes is based
  on the following lemma given in [9], its proof is similar to
P2 0 P2 P2 P2 the proof of Theorem 1.1 given by [8].
 0 1 15 ω15 $15 
 T
 Lemma 2.1 Suppose , s ≥ 1, 0 ≤ t ≤ 20 and n =
P3 =  P2 1 5 P 2,1 P2,2 P2,3  , 21s + t. Then, every [n, 3, d] quaternary code C with d ≥
 P2 ω15 T P2,2 P2,3 P2,1 
16s and without zero coordinates is equivalent to a code
P2 $15 T P2,3 P2,1 P2,2 with generator matrix G = ((s − c(3, s, t))G3 , H), where

A2 0 A2 A2 A2
 c(3, s, t) ≤ min{s, 3t} is a function of 3, s and t, and H
 0 1 15 15 15  has 21c(3, s, t) + t columns.
 T
 According to this lemma, the classification of [n, 3] opti-
A3 =  A2 15
 A2,1 A2,2 A2,3  .
 A2 15 T A2,2 A2,3 A2,1  mal codes is changed into determining c(3, s, t), and can be
reduced to the classification of [m + t, 3] optimal SO codes
A2 15 T A2,3 A2,1 A2,2
for m ≤ 21c(3, s, t).
Now, we can use systems of liner equations to characterize For given s ≥ 1 and 1 ≤ t ≤ 20. Denote the set of all
SO codes of given minimum distance as in [8]. the generator matrix G (determined above) of [21s + t, 3]
From the definition of equivalence of quaternary linear optimal SO codes as G[21s + t, 3], and let D[21s + t, 3]
codes, we can suppose an [n, 3] code C with generator matrix = {LG is the define vectors of G, G ∈ G[21s + t, 3]}. Then
G, where the columns of G are all monic. If the columns c(3, s, t) = −min1≤i≤21 {li − s | LG ∈ D[21s + t, 3]}.
of G have li copies of αi for 1 ≤ i ≤ 21, we denote G as Thus, this explains how to determine the generator matrices
G = (l1 α1 , l2 α2 , . . . , l21 α21 ) for short and call such G in of all [n, 3] optimal SO codes and how one can determine
order form, and call LG = (l1 , l2 , · · · , l21 ) the define vector c(3, s, t).

472
3. Results of Classification The nine L1,i , 4 ≤ i ≤ 12, in the second group are as
follow:
In this section, we will use the results of the above two L1,4 =(2,2,1,0,1,2,1,1,1,1,1,0,1,1,1,1,1,0,1,2,1),
sections to study the classification of optimal [n, 3] SO codes L1,5 =(2,2,1,1,0,2,1,1,1,1,1,1,0,1,1,2,0,1,1,1,1),
for n = 21s + 1, s ≥ 1. Let M (n, 3) be the number of L1,6 =(2,2,1,1,0,2,1,0,1,1,2,0,1,1,1,1,1,1,1,1,1),
non equivalent optimal [n, 3] SO codes, and M0 (n, 3) and L1,7 =(2,2,0,1,1,2,1,1,1,1,1,1,1,1,1,1,0,0,2,1,1),
M1 (n, 3) be the number of non equivalent optimal [n, 3] SO L1,8 =(2,2,0,1,1,2,1,1,1,1,1,0,0,2,1,1,1,1,1,1,1),
codes with zero coordinates and without zero coordinates, L1,9 =(2,2,1,0,1,2,1,0,1,2,1,1,1,1,1,1,0,1,1,1,1),
respectively. L1,10 =(2,2,1,1,0,2,0,1,1,1,1,1,1,1,1,1,1,0,1,1,2),
From [9], we know that there is only one [21s, 3, 16s], L1,11 =(2,2,1,0,1,2,0,1,1,1,1,1,0,1,2,1,1,1,1,1,1),
hence, for n = 21s + 1, M0 (n, 3) = 1 and M (n, 3) = L1,12 =(2,2,0,1,1,2,0,0,2,1,1,1,1,1,1,1,1,1,1,1,1),
M1 (n, 3) + 1. To save space, we only explain our classifi-
cation process for several [22, 3] optimal SO codes without Let the code with define vector L1,i be C i and its
zero coordinates, other cases can be deduced similarly. generator matrix be Hi , 4 ≤ i ≤ 12. Then
Let G and G0 be two 3×n matrices with define vectors L H4 =(2α1 ,2α2 ,α3 ,α5 ,2α6 ,α7 ,...,α11 ,α13 ,...,α17 ,α19 ,2α20 ,α21 ),
and L0 , respectively. From the definition of equivalence of H5 =(2α1 ,2α2 ,α3 ,α4 ,2α6 ,α7 ,...,α12 ,α14 ,α15 ,2α16 ,α18 ,α19 ,α20 ,α21 ),
quaternary code, we know that G and G0 generate equivalent It is not difficulty to check that
codes if and only if gG0 Dσ= G or = Γ(G), where g ∈    
100 100
GL(3, F4 ), D is an n × n invertible diagonal matrix, σ is  001  H5 D0 σ 0 = H4 , g 0 =  001 
a permutation that change gG0 D in order form and Γ is the
010 010
conjugate map.
A [21s + 1, 3] optimal SO code has minimum distance where D0 = diag{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, $, 1, ..., 1},
16s + 2. Using MATLAB[11] program, one can easily check σ 0 is a permutation that change g 0 H5 D0 in order form.
that there are 102 solutions satisfying equation (1) if s = 1, Hence C 4 and C 5 are equivalent, they all have weight
there are 381 solutions if s = 2, and there are 528 solutions polynomial 1 + 42y 16 + 18y 18 + 3y 20 . Similarly, one can
if s = 3. Thus, we give our classification results in three check that C i and C 4 are equivalent for 4 ≤ i ≤ 12.
cases. The third group and the forth group can be discussed as
Case 1.1 For s = 1, there are 102 solutions satisfying the above two groups similarly.
equation (1), denote these 102 solutions as L1,i , 1 ≤ Let H1,1 = H1 , H1,2 = H4 , and let
i ≤ 102. These 102 L1,i can be divided into four groups H1,3 =(2α1 ,2α2 ,α3 ,α4 ,2α6 ,α7 ,2α9 ,α10 ,α11 ,α13 ,α14 ,2α16 ,α17 ,
according to the weight polynomials of their corresponding α18 ,2α20 ,α21 ),
codes. The first group are L1,i , 1 ≤ i ≤ 3; the second H1,4 =(2α1 ,2α2 ,2α3 ,2α6 ,2α7 ,2α10 ,2α11 ,α13 ,...,α16 ,α18 ,...,α21 ),
group are L1,i , 4 ≤ i ≤ 12; the third group are L1,i ,
13 ≤ i ≤ 30; the fourth group are L1,i , 31 ≤ i ≤ 102. Two It is not difficulty to check that the codes with define
codes with define vector in different groups have different vector in the i−th group are equivalent to the code with
weight polynomials. generator matrix H1,i , 1 ≤ i ≤ 4.
The three L1,i , 1 ≤ i ≤ 3, in the first group are as Case 1.2 For s = 2, there are 381 solutions satisfying
follow: equation (1), denote these 381 solutions as L2,i = 2121 +
L1,1 =(2,2,2,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1), L02,i , 1 ≤ i ≤ 381. These 381 L2,i can be divided into
L1,2 =(2,2,0,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1), 6 groups according to the weight polynomials of their
L1,3 =(2,2,0,0,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1), corresponding codes or the characteristics of L02,i . Two codes
with define vector in different groups have different weight
Let the code with define vector L1,i be C i and its generator polynomials or their L02,i have different characteristics.
matrix be Hi , 1 ≤ i ≤ 3. Then H1 =(2α1 ,2α2 ,2α3 ,α6 ,...,α21 ), The first 102 solutions satisfying L2,i = 121 +L1,i , 1 ≤
H2 =(2α1 ,2α2 ,2α4 ,α6 ,...,α21 ). It is not difficulty to check that i ≤ 102. Hence, these 102 solutions can be divided into four
    groups according to Case 1.1. The other 279 solutions can be
100 100
 0ω0  H1 Dσ = H2 , g =  0ω0  divided into 2 groups, named as the fifth group and the sixth
group. These 2 groups are as follow: L2,i , 103 ≤ i ≤ 156;
001 001
L2,i , 157 ≤ i ≤ 381;
where D = diag{$, $, 1, 1, 1, 1, 1, $, 1, 1, 1, 1, $, 1, 1, Let H2,i = (G3 , H1,i ), 1 ≤ i ≤ 4, and let
1, 1, $, 1, 1, 1, 1}, σ is a permutation that change gH1 D in H2,5 =(3α1 ,3α2 ,2α3 ,2α4 ,α5 ,3α6 ,3α7 ,2α8 ,α9 ,2α10 ,3α11 ,α13 ,3α14 ,
order form. Hence C 2 and C 1 are equivalent, they all have 2α15 ,...,2α21 ),
weight polynomial 1 + 39y 16 + 24y 18 . Similarly, one can H2,6 =(3α1 ,3α2 ,3α3 ,2α4 ,3α6 ,3α7 ,α8 ,α9 ,3α10 ,3α11 ,2α13 ,3α14 ,α15 ,
check that C i and C 1 are equivalent for 1 ≤ i ≤ 3. 2α16 ,2α17 ,2α18 ,α19 ,2α20 ,3α21 ),

473
It is not difficulty to check that the codes with define vectors 4. Conclusion
in the i−th group are equivalent to the code with generator
matrix H2,i , 1 ≤ i ≤ 6. Two codes in different groups are We have given the complete classification of quaternary
inequivalent. [21s+1,3] optimal SO codes for s ≥ 1, our results of [22, 3]
Case 1.3 For s = 3, there are 528 solutions satisfying (1), optimal SO codes are concordant with the results of [7]. Our
denote these 528 solutions as L3,i = 3121 + L03,i , 1 ≤ i ≤ classification method given in Section 2 differ from that of
528. These 528 L3,i can be divided into 11 groups according [6] and can be generalized to [n, k] optimal SO codes for
to the weight polynomials of their corresponding codes or k ≥ 3.
the characteristics of L03,i . Two codes with define vector in
different groups have different weight polynomials or their 5. Acknowledgement
L03,i have different characteristics.
The first 381 solutions satisfying L3,i = 121 +L2,i , 1 ≤ This work is supported by Nation Natural Science
i ≤ 381. Hence, these 381 solutions can be divided into Foundation of China under Grant No.60573040, and Nation
six groups according to Case 1.2. The other 147 solutions Natural Science Foundation of Shannxi Province.
can be divided into 5 groups, named as the seventh group
to the eleventh group. These 5 groups are as follow: L3,i ,
382 ≤ i ≤ 384; L3,i , 385 ≤ i ≤ 411; L3,i , 412 ≤ i ≤ 483; References
L3,i , 484 ≤ i ≤ 519; L3,i , 520 ≤ i ≤ 528.
Let H3,i = (G3 , H2,i ), 1 ≤ i ≤ 6, and let [1] F.J.MacWilliames , A.M.Odlyzko, N.J.A.Sloane H.N.and Ward
H3,7 =(4α1 ,4α2 ,4α3 ,4α4 ,3α6 ,...,3α21 ), , self-dual codes over GF(4). J . Combin. Theory Ser.A vol.25,
H3,8 =(4α1 ,4α2 ,3α3 ,3α4 ,2α5 ,4α6 ,4α7 ,2α8 ,3α9 ,3α10 ,4α11 ,3α13 , 288-318, 1978.
4α14 ,2α15 ,3α16 ,4α17 ,3α18 ,2α19 ,4α20 ,3α21 ),
H3,9 =(4α1 ,4α2 ,4α3 ,3α4 ,α5 ,4α6 ,4α7 ,α8 ,3α9 ,4α10 ,4α11 ,4α13 ,4α14 , [2] E.M.Rains and N.J.A. Sloane, Self-dual Codes, in: V.S.Pless,
W.C.Huffman(Eds.), Handbook of Coding Theory, Elsevier,
α15 ,3α16 ,4α17 ,3α18 ,1α19 ,4α20 ,4α21 ),
Amsterdam, pp.177-294,1998.
H3,10 =(4α1 ,4α2 ,4α3 ,2α4 ,2α5 ,4α6 ,4α7 ,2α8 ,2α9 ,4α10 ,4α11 ,4α13 ,
4α14 ,2α15 ,2α16 ,4α17 ,2α18 ,2α19 ,4α20 ,4α21 ), [3] W.C.Huffman, On the classification and enumeration of self-
H3,11 =4(α1 ,...,α4 ,α6 ,α7 ,α9 ,...,α11 ,α13 ,α14 ,α16 ,...,α18 ,α20 ,α21 ), dual codes, Finite Fields Appl. vol.11, 451-490, 2005.

[4] A. R. Calderbank, E. M. Rains, P. W. Shor, and N. J. A. Sloane,


It is not difficulty to check that the codes with define Quantum error-correction via codes over GF(4), IEEE Trans.
vectors in the i−th group are equivalent to the code with Inf. Theory, vol. 44, no. 4, pp. 1369C1387, Jul. 1998.
generator matrix H3,i , 1 ≤ i ≤ 11. Two codes in different
groups are inequivalent. [5] S.Bouyuklieva, Some Optimal Self-Orthogonal Codes and
From the above discussion, one can have Self-dual Codes, Discrete Math., vol.287:1-10, 2004.
Theorem 3.1 If n = 21s + 1, s ≥ 1, then the following
[6] I.Bouyukliev, S.Bouyuklieva, T.A.Gulliver and P.Ostergard,
holds: Classification of Optimal Binary Self-Orthogonal Codes. [On-
(1) If s = 1, then M1 (22, 3) = 4. The four non equivalent line]. Available: Http://users.tkk.fi/ pat/patric-pub-html.
[22, 3, 16] optimal SO codes without zero coordinates have
generate matrices H1,i , 1 ≤ i ≤ 4, and have weight polyno- [7] I. Bouyukliev, P.Ostergard, Classification of self-orthogonal
codes over F3 and F4 , SIAM J. Discrete Math., 19(2):363-
mials W22,i (y) as 1+39y 16 +24y 18 , 1+42y 16 +18y 18 +3y 20 ,
370, 2005.
1 + 45y 16 + 15y 18 + 3y 22 , 1 + 51y 16 + 12y 20 , respectively.
(2) If s = 2, then M1 (43, 3) = 6. The 6 non equivalent [8] Ruihu Li, Zongben Xu, Xuejun Zhao, On The Classification
[43, 3, 32] optimal SO codes without zero coordinates have of Binary Optimal Self-orthogonal Codes. IEEE Trans. Inf.
generate matrices H2,i , 1 ≤ i ≤ 6, and have weight polyno- Theory, pp:3778-3782, 2008.
mials W43,i (y) as follow: W43,i (y) = 1+y 16 (W22,i (y)−1),
[9] Ruihu Li, Research on Quantum Code and Self-orthogonal
1 ≤ i ≤ 4, and 1 + 51y 32 + 12y 36 , 1 + 54y 32 + 6y 36 + 3y 40 , Codes. Post-doctor Report. Xi’an Jiaotong University, May 29,
respectively. 2008.
(3) If s ≥ 3, then M1 (n, 3) = 11. The 11 non equiva-
lent [n, 3, 16s] optimal SO codes without zero coordinates [10] W.C.Huffman and V. Pless, Fundmentals of Error-Correcting
Codes, Cambridge University Press, Cambridge, UK, 2003.
have generate matrices Hs,i , 1 ≤ i ≤ 11, and have
weight polynomials Wn,i (y) as follow: Wn,i (y) = 1 + [11] MathWorks. MATLAB R2006a. 2006.
y 16(s−2) (W43,i (y) − 1), 1 ≤ i ≤ 6, 1 + 51y 16s + 12y 16s+4 ,
1 + 54y 16s + 6y 16s+4 + 3y 16s+8 , 1 + 57y 16s + 3y 16s+4 +
3y 16s+12 , 1 + 57y 16s + 6y 16s+8 , 1 + 60y 16s + 3y 16s+16 ,
respectively.

474
2009 International Conference on Computer Engineering and Technology

Performance Analysis of Large Receive Offload in a Xen Virtualized System

Hitoshi Oi and Fumio Nakajima


The University of Aizu, Aizu Wakamatsu, JAPAN
{oi,f.nkjm}@oslab.biz

Abstract Large receive offload (LRO) is a technique to reduce


the overhead of handling received message packet [6],
System-level virtualization provides us various advan- [7]. Previously, we ported the LRO into a Xen virtualized
tages including independent and isolated computing en- system and reported the results of preliminary performance
vironments on which multiple operating systems can be measurements [8]. In this paper, we will analyze the
executed, and improved resource utilization. These benefits performance of LRO in a Xen virtualized system in more
come with performance overheads and network operation detail and investigate the interference with the workload
is one of most typical cases. In this paper, we first present running on another domain on the same platform.
the experimental results of network performance with LRO This paper is organized as follows. In the next section,
under varying message sizes and maximum transmission we explain the technical background of this work. In
unit (MTU). We analyze the effectiveness of large receive Section III, experimental results and their analysis are pre-
offload (LRO) in a consolidated execution environment sented. We show how network throughput is changed under
based on Xen. When SPECjbb, a CPU-intensive workload, varying application message size, maximum transmission
and network receiver are executed on separated domains, unit and LRO scheme. We also show the effect of CPU
LRO in physical and virtual NICs improve the throughput utilization by another guest domain. Previous work related
up to 8 and 14%, respectively. to this paper is presented in Section IV and we conclude
the paper in Section V.
Keywords Virtualization, Network, Performance Analysis
II. Background of This Work
I. Introduction
In this section, we present the background of this
System-level virtualization technologies provide mul- work. First, we provide a brief description of the Xen
tiple independent computing environments on a single internal network architecture. Next, Large Receive Offload
physical platform. Each computing environment (virtual (LRO), an implementation technique to reduce the network
machine, or domain in Xen) can run a (possibly) dif- operation overhead, is presented. The objectives of this
ferent operating system (guest OS) and resource isola- paper derived from our previous work are explained in
tion between virtual machines (VMs) are guaranteed [1]. Section II-C.
The advantages of virtualization come with performance
overheads. With hardware supports for CPUs, switching A. Xen Internal Network Architecture
between privileged and unprivileged execution modes is
relatively fast [2], [3]. However, accesses to I/O devices Figure 1 shows the architecture of the Xen internal
are still costly operations and networking is one of most network. Each guest domain has zero or more virtualized
typical cases. In Xen, paravirtualization (PV) model is used network interface called netfront. In the privileged domain
for virtualizing I/O devices. With the PV device model, handling physical network interface (driver domain), there
multiplexing of a single I/O device among guest domains is a counterpart for each netfront (netback). Netfront
is possible. In addition, the interface of the I/O device and corresponding netback exchange packets by sharing
for each guest domain can be abstracted. However, the page frames pointed to by the descriptor ring. For event
performance degradation of network interface in the PV notification, virtual interrupt mechanism (event channel)
model is significant and various optimization attempts have through Xen hypervisor is used. This paravirtualized net-
been made [4], [5]. work architecture of Xen has advantages, such as device

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 475


DOI 10.1109/ICCET.2009.112
Config. TP CLK INST LRO
isolation or transparency to the guest domain, but it incurs (Mb/s)
high network performance overhead. In [5], it is reported Linux 557.0 6.27 6.30 N/A
that the per packet CPU overhead (in clock cycles) in Xen Xen 505.4 9.71 7.16 N/A
pLRO 508.4 8.01 5.36 1.99
network is more than four times larger than that of native vLRO 615.3 9.87 7.49 4.92
Linux.
TABLE I. Effectiveness of LRO [8]. For the
Driver Domain Guest Domain abbreviations in Config. column, see Table III.
Bridge Application TP stands for throughput in Mbps. CLK and
Descriptor INST stand for the numbers of clock cycles
Ring and instructions in 1010 for a 10GB message
Physical Backend Frontend transfer. LRO is the number of packets com-
Interface Interface Interface bined by LRO.

Event Channel
NIC Xen VMM III. Experiments and Results
Fig. 1. Xen Internal Network Architecture In this section, we present the results and analysis of our
experiments. First, the hardware and software environment
used for the experiments are described. Next, we present
B. Large Receive Offload the measurement results of throughput for varying MTU
and LRO scheme. Finally, the performance interference
Large receive offload (LRO) was initially implemented between the packet processing overhead and the workload
by hardware on the Neterion 10GbE Ethernet card [6]. Jan- in other domain is investigated.
Bernd Themann implemented it in software as a patch for
the Linux kernel [7] and it has been adopted to the kernel A. Experimental Environment
tree from version 2.6.24. LRO combines the received TPC
packets and passes them as a single larger packet to the
upper layer in the network. By reducing the number of Component Description
packet processing operations, the CPU overhead is lowered CPU Xeon 3GHz
Memory 2GB
and the performance improvement is expected. NIC 1Gbps
Operating System Linux 2.6.18
C. Objectives of This Paper VMM Xen 3.1.1
Network Measurement Netperf 2.4.4
Java workload SPECjbb2001 v1.04
In our previous work, we ported LRO into the physical Guest Domains
and virtual NICs of a Xen virtualized system and measured vCPU 1/domain
its effectiveness [8]. As shown in Table I, LRO in the Memory 512MB/domain
physical NIC reduced the numbers of clock cycles and
TABLE II. Benchmarking Environments
instructions for the same amount of message transfer while
LRO in the virtual NIC increased the throughput.
Following these results, our objectives in this paper Table II shows the details of the machine used as
are as follows: (1) some NICs support larger maximum the message receiver. The hardware platform used has a
transmission units (MTUs) than standard 1500B. Larger Xeon processor, 2GB of memory and a Gigabiet NIC.
MTUs can reduce CPU utilization and lead to more This machine is connected to another machine used as
efficient message transfer. We show how a larger MTU a message sender by a cross-cable. The base operating
affects the effectiveness of LRO in Xen virtualized system. system is Linux kernel 2.6.18 and Xen 3.1.1 is used for
(2) In the previous results shown in Table I, the LRO in virtualization. This receiver machine is the same as the
the physical NIC reduced the CPU overhead of message one used in our previous work [8]. The machine used as
receive operation. We show that how this reduction of CPU the message sender is also a Linux 2.6.18 based machine,
overhead affects the performance of the workload in other but the main difference is the NICs. Previously, we used
domain sharing the hardware platform. (3) Similarly, we on-board NICs for both the sender and the receiver. In
investigate how the network performance is altered when this paper, we use NICs that support larger MTUs which
the workload in another domain is varied and whether LRO are connected through the PCI-Express bus. Also, we
can reduce the performance interference or not. previously used a network switch but in this paper a

476
cross-cable connects two machines. For measurements of the throughput is almost constant for all configurations.
message throughput, we use the TCP STREAM TEST of Throughput for all configurations are higher than those in
netperf [9]. To control the CPU utilization of the receiver Table I. The primary factor of these improved throughput
machine, we use SPECjbb2005 [10]. should be the cross-cable connecting sender and receiver
machines (avoid the network switch used in the previ-
Abbrv. Configuration ous work). The amount of improvement varies from 3%
Linux Native (Non-virtualized) Linux
Xen Xen-virtualized (no LRO) (vLRO) to 29% (Linux). The vLRO is least affected by
pLRO LRO in Physical NIC (possibly) the use of the cross-cable. This is understandable
vLRO LRO in Virtual NIC because the LRO operations take place at the virtual NIC
which is distant from the physical NIC.
TABLE III. Configurations and Their Abbrevi-
ations We also note other differences between the results in
this paper and those in the previous one. Previously, the
improvement of throughput by pLRO was less than 1%
but this time it is up to 8%. We may attribute this result
B. Standalone Performance to the LRO rate of pLRO in Figure 5. Previously the
LRO rate in pLRO was 1.99 but now it is up to 2.70.
Standard maximum transmission unit (MTU) on the Again, these higher LRO rates should be due to the cross-
Ethernet is 1500B. Some NICs support larger MTUs which cable which transmits the packets at a higher rate than the
improve the transmission efficiency. However, the larger network switch. The difference between pLRO and vLRO
the MTU, the fewer the packets to be sent which lead to the is shrunk compared to the previous one. vLRO achieved
fewer chances of LRO. Also, the application level message 22% and 21% higher throughputs than Xen and pLRO,
sizes (e. g. the size of the message chunk with which respectively, in the environment for the previous paper.
send() is invoked) affect the CPU overhead for packet This time, throughput of vLRO is only 12% and 5% better
processing. In this section, we show the throughput and the than Xen and pLRO, respectively.
LRO rate (the number of receive packets divided by the
number of packets transferred to the upper network layer)
for the varying MTU, message size and LRO schemes 850
(Table III). In the virtualized configurations (Xen, pLRO
800
and vLRO), only the guest domain for the message receiver
is activated as the guest domain. 750
Throughput (Mbps)

700
650
750
600 Linux
700 Xen
550 pLRO
650 vLRO
Throughput (Mbps)

500
600 450
550 400
64 128 256 512 1K 2K 4K 8K 16K 32K
500 Linux Message Size (Byte)
Xen
450 pLRO
vLRO Fig. 3. Throughput (MTU = 4000B)
400

350 The throughput for MTU = 4000B are shown in Fig-


64 128 256 512 1K 2K 4K 8K 16K 32K ure 3. We see great improvements of up to 15% in through-
Message Size (Byte) put over the MTU = 1500B cases in the native Linux.
Fig. 2. Throughput (MTU = 1500B) The larger MTU of 4000B also improves the network
performance of Xen-based configurations: the throughputs
of Xen, pLRO and vLRO are increased by up to 27%,
Figure 2 shows the throughput of four configurations 15% and 15%, respectively1 . Unlike MTU = 1500B cases,
for M T U = 1500. In the case of M T U = 1500B, LRO does not seem to improve the throughput of Xen-
throughput is quite low for the message sizes of 64 and
128B. However, for the message sizes of 256B or larger, 1 The cases for 128B or smaller messages sizes are excluded

477
based systems for MTU = 4000B. vLRO and Xen perform
almost the same and pLRO is actually worse than Xen 4.5
for the message sizes of 8KB or larger. The small benefit
of LRO should be attributed by the small LRO rates as 4
pLRO (MTU = 1500)
seen in Fig. 5: for the pLRO and vLRO cases, their LRO vLRO (MTU = 1500)
3.5 pLRO (MTU = 4000)
rates are 1.2 or smaller and 1.5 or smaller, respectively. As vLRO (MTU = 4000)

LRO Rate
mentioned above, another thing we should note is that the 3 pLRO (MTU = 4500)
vLRO (MTU = 4500)
throughput of pLRO becomes lower than Xen and vLRO
for the message sizes of 8KB or larger. We do not have 2.5
a clear answer to this question and further investigation 2
is required. However, the Xen internal network passes
network packets by exchanging page frames whose size 1.5
is 4KB and the above phenomena may be related to this
page frame size. 1
64 128 256 512 1K 2K 4K 8K 16K 32K
Message Size (Byte)

850 Fig. 5. LRO Rates


800
Linux
750 Xen
pLRO LRO rates for pLRO and vLRO with MTUs of 1500B
Throughput (Mbps)

700 vLRO
to 4500B are shown in Figure 5. As mentioned above,
650 for MTU = 1500B cases, pLRO rate is higher and vLRO
600 rate is lower than those reported in our previous work,
respectively. In all MTUs, vLRO achieves higher LRO
550
rates than pLRO. MTU = 4500B cases achieve higher
500 LRO rates than MTU = 4000B cases. Especially, vLRO
450 in MTU = 4500B achieves LRO rates of around 2.5. One
possible explanation is as follows. Again, due to the page
400
64 128 256 512 1K 2K 4K 8K 16K 32K frame exchanging mechanism of the Xen internal network,
Message Size (Byte) one packet of 4500B is divided into two part and then
merged at the virtual NIC. The LRO rates of vLRO for
Fig. 4. Throughput (MTU = 4500B) MTU = 4000B (1.5 or smaller) support this idea because
a packet of 4000B can fit in a single page frame. Again,
The throughput for MTU = 4500B are shown in Fig- further instrumentation and analysis are needed to validate
ure 4. This is the largest MTU we could set in our system. this idea. In all other large MTUs, LRO rates are quite
Similar to the MTU = 4000B cases, the native Linux takes small and coincide with the little effectiveness of LRO in
advantage of MTU = 4500B and 15% of improvement in these configurations.
throughput is achieved. Unfortunately, Xen-based systems
we used cannot take advantage of this yet larger MTU. In C. Performance Interference
all three cases (Xen, pLRO and vLRO), the throughput are
even lower than MTU = 1500B cases. Please note that, for In the previous subsection, only the guest domain for
the results shown in Figs. 3 and 4, MTUs of all Xen in- the message receiver was activated. In this subsection,
ternal network components (bridge, netback and netfront) we also activate another guest domain for running the
are set to 4000B and 4500B, respectively. We consider this SPECjbb benchmark to see the performance interference
poor network performance for MTU = 4500B as follows. between two guest domains. SPECjbb is modeled after
As briefly mentioned above, the backend transfers the TPC-C benchmark [11] which is an OLTP workload, but
packet by exchanges page frames with the frontend of the the main difference is that all the database tables are
target domain. Since MTU is slightly larger than the size of stored in main memory (rather than HDDs in TPC-C).
page frame, we have to use two page frames and only small To control the CPU usage of the SPECjbb domain, we
fraction of the second page frame is filled with payload. inserted short sleep periods in the transaction clients, which
These results suggest that even when the physical NIC is the same methodology used in benchmark suites for
supports the jumbo frame feature, we have to set actual consolidated systems [12], [13]. For the measurements in
MTU by taking the page frame size into consideration. this subsection, we use the message size of 1KB and

478
MTU = 1500B. We set the scaling factor of SPECjbb IV. Related Work
W = 4, which is scaled down from the configuration of
the SPECjbb in the VMmark (W = 8 for vCPU = 2) [12]. Meron et. al. evaluated three optimization techniques for
the network performance in Xen [4]: the virtual network
interface, the data path between guest and driver domains,
700 and the virtual memory. They redefined the virtual network
Linux interface so that it could utilize the hardwares support
650 Xen
pLRO from modern NICs such as TCP segmentation offloading
600 vLRO (TSO). In [1], the design of Xen is described in detail.
Throughput (Mbps)

550 In this paper, they compared the network performance of


500 Xen with native Linux, VMware and User-mode Linux.
In addition to the standard MTU of 1500B, they used a
450
smaller MTU of 500B to present the network connection
400 in dial-up PPP client which is no longer used these days.
350 Santos et. al. analyzied the Xen receiving network path
by breaking down the CPU time into functional groups,
300
such as network device driver, grant copy, etc. [5]. They
250 applied various optimization techniques to these categories
0 1000 2000 3000 4000 5000 6000 7000 8000
SPECjbb Score
and reduced the overhead. Some of the techniques they
used (such as reduction of packet copy operation) should
Fig. 6. Consolidated Performance be applicable to our cases and we plan to do so. When mul-
tiple domains on a single platform are configured to form a
The relationship between the SPECjbb score and net- multi-tier system, inter-domain communication traffic can
work throughput in four configurations are shown in be large and it could be the performance bottle neck of the
Figure 6. The right-most point for each line represents system. Jian Wang et. al. proposed XenLoop which is a
the case where SPECjbb is executed without CPU usage inter-domain communication channel [15]. It bypasses the
control. Due to the discrete even nature of SPECjbb and regular virtual network interfaces in Figure 1, yet provides
unpredictability in system softwares (both Xen and Linux), transparency in the sense that the application programs
there are several “noises” on each graph. However, we can still use standard TCP/IP APIs. Vconsolidate is Intel’s
can find the followings from Figure 6: First, as expected, proprietary benchmark suite for evaluating consolidated
native Linux achieves higher throughput when SPECjbb server. Apparao, et. al., evaluated how performance metrics
consumes low CPU time, and vice verse. However, we of each workload is changed under consolidation with
can also say that in the multiprogramming environment of varying cache sizes and CPU affinity [13].
the native Linux, one CPU-intensive workload can use too
much CPU time which may result in performance degra- V. Conclusion
dation of other workloads (in this case the lower network
throughput). In Xen-based cases, resource isolation works In this paper, we presented and analyzed the network
as expected and such extreme case seen in the native Linux receiving performance of a Xen virtualized system with
case is avoided. LRO. When only the guest domain for the network receiver
Second, the throughput of all cases degrease linearly was activated, LRO in the physical and virtual NICs
against the increasing SPECjbb scores. However, the rates improved the throughput by 5 and 12%, respectively.
of throughput decreases change at around SPECjbb score When another guest domain was activated and SPECjbb, a
3000 for the Xen-based cases and 6000 for the native CPU-intensive workload, is executed, the network through-
Linux. These SPECjbb scores correspond to about 30% put was dropped linearly against the CPU utilization of
(Xen-based cases) and 60% (Linux) of the physical CPU SPECjbb. However, throughout the ranges of the workload
time utilization. In the cases of Xen-based configurations, mix used in this paper, LRO in physical and virtual NICs
two guest domains are running, and it looks to imply that improved the throughput by 4% to 8% and 7% to 14%,
the network throughput decreases linearly until another respectively. Open questions and future work include the
domain uses around 60% of its CPU time share. Further following. First, compared to the standard MTU of 1500B,
investigation is necessary to confirm this hypothesis. Fi- we saw that MTU of 4000B improved the throughput of
nally, the throughput improvement rate the pLRO ranges both native Linux and Xen-based systems by up to 27%.
from 4% to 8% while that by vLRO rangres from 7% to In the current system, we have to use the same MTU for
14%. all the network components within Xen. When we use a

479
standard MTU (1500B) for the physical NIC, we apply [6] Leonid Grossman, “Large Receive Offload implementation in Ne-
LRO there and use a larger MTU of the page frame size terion 10GbE Ethernet driver,” in Proceedings of the Ottawa Linux
Symposium, pp195–200, July 2005.
(4KB). In this configuration, we may reduce the packet [7] Jan-Bernd Themann, “[RFC 0/1] lro: Generic Large Receive
handling overhead at the physical NIC and maximize the Offload for TCP traffic,” Linux Kernel Mailing List archive,
throughput of the Xen internal network. Second, we saw http://lkml.org/lkml/2007/7/20/250.
[8] Takayuki Hatori and Hitoshi Oi, “Implementation and Analysis of
the changes in the relationship between the throughput Large Receive Offload in a Virtualized System,” in Proceedings
and SPECjbb score around CPU utilization of 60% and of the Virtualization Performance: Analysis, Characterization, and
reasons of this change should be identified. Lastly, various Tools (VPACT’08), April 2008.
[9] “Netperf: a network performance benchmark,” Hewlett-Packard
optimization techniques mentioned in Section IV should Company, Feb. 15, 1995.
also be incorporated into our experimental system. [10] SPECjbb2005,
http://www.spec.org/jbb2005/ .
[11] TPC-C, http://www.tpc.org/tpcc/ .
References [12] VMmark, http://www.vmware.com/products/
vmmark/
[13] Padma Apparao, et. al., “Characterization & analysis of a server
[1] Paul Barham et. al., “Xen and the Art of Virtualization,” in Pro- consolidation benchmark,” in Proceedings of the fourth ACM
ceedings of the ACM Symposium on Operating Systems Principles SIGPLAN/SIGOPS international conference on Virtual execution
(SOSP’03), pp164–177, October 2003. environments, pp21–30, March 2008.
[2] “AMD Virtualization,” [14] Aravind Menon, et. al., “Diagnosing performance overheads in
http://www.amd.com/virtualization . the Xen virtual machine environment,” Proceedings of the 1st
[3] “Intel Virtualization Technology in Computing,” ACM/USENIX international conference on Virtual execution envi-
http://www.intel.com/technology/ ronments (VEE05), pp13–23, June 2005.
virtualization/ . [15] Jian Wang, Kwame-Lante Wright and Kartik Gopalan, “XenLoop:
[4] Aravind Menon, Alan Cox and Willy Zwaenepoel, “Optimizing A Transparent High Performance Inter-VM Network Loopback,”
Network Virtualization in Xen ,” in Proceedings of the 2006 in Proceedings of the 17th International Symposium on High
USENIX Annual Technical Conference, pp15–28, May–June 2006. Performance Distributed Computing (HPDC’08), pp109–118, June
[5] Jose Renato Santos, et. al., “Bridging the Gap between Software 2008.
and Hardware Techniques for I/O Virtualization,” in Proceedings
of the Usenix ’08, pp29–42, June 2008.

480
2009 International Conference on Computer Engineering and Technology

An Improved Genetic Algorithm Based on Fixed Point Theory for Function


Optimization

Jingjun Zhang Yuzhen Dong Ruizhen Gao Yanmin Shang


Scientific Research Office College of mathematics& physics
Hebei University of Engineering Hebei University of Engineering
Handan, Hebei, P.R.China Handan, Hebei, P.R.China
santt88@163.com ddongyuzhen@163.com

Abstract—This paper introduces triangulation theory into it has vital significance to design objective criterion of
genetic algorithm and with which, the optimization problem termination judgment.
will be translated into a fixed point problem. An improved This paper proposed an improved genetic algorithm
genetic algorithm is proposed by virtue of the concept of based on the fixed point. First of all, carrying on the
relative coordinates genetic coding, designs corresponding triangulation to the solution space and calculating the integer
crossover and mutation operator. Through genetic algorithms label of the vertex, and then designing the encoding scheme,
to overcome the triangulation of the shortcomings of human crossover operator and mutation operator with the
grade, it can start from any point to find the most advantages. conception of the relative coordinate. This algorithm
Gradually fine mesh will be introduced the idea of genetic
overcomes the shortcoming of man-made label of the
algorithms so that the search area gradually decreased,
triangulation for fixed point and converges when all the
improving the efficiency of search. Finally, examples
demonstrate the effectiveness of this method. (Abstract) individuals are completely labeled simplexes.
II. ABOUT TRIANGULATION
Keywords- genetic algorithm; triangulation; relative
coordinates; gradually fine mesh; Fixed Point (key words) So-called triangulation [5] is that making sure h > 0 and
with three groups of straight lines, such as {x1 = mh} ,
I. INTRODUCTION
{x2 = mh} and {x2 = x1 + mh} (among them m is an
Genetic algorithm [1] (GA) is a computational model of 2
simulation of natural biological evolution. GA is based on integer), the 2 Dimensional Euclidean space R will be
the criteria of survival of the fittest and carries on genetic divided into many triangles and obtains the triangulation
operations repeatedly to the population containing the 2
of R .
possible solution to generate new evolving population, and 2
Carrying on triangulation to the Euclidean Space R , the
simultaneously it searches the best individual of population g
with the overall parallel searching methods to achieve the goal is to find such a triangle under the self-mapping . The
optimal solution to meet the requirements. Comparing to first coordinate component of one vertex of the triangle
other search methods, GA has some merits, such as simple dropped, another vertex's second coordinate component
and robust. And it can also search the optimal solution or decreased, and the third vertex's two coordinate components
quasi-optimal solution with the overall parallel methods by remained unabated. As a result of continuity of g , if this
adjusting the direction of the search space continuously. triangle's diameter is small enough, the change of three
However, the algorithm also has some shortcomings, such as vertices will not differ too far. In this case, each vertex is an
slow convergence rate, prematurely and so many iterations. approximate fixed point.
To overcome these shortcomings, some improvement on Supposing that x is a vertex of a triangle, its integer label
genetic algorithm has been made constantly, for example the is determined according to l (x ) .
adjustment of population size[2], the optimization of control
parameters[3], an outstanding individual protection strategy ⎧ 0 g1 ( x) − x1 ≥ 0, g 2 ( x) − x2 ≥ 0
[4] and so on. ⎪
l ( x) = ⎨ 1 g1 ( x) − x1 < 0, g 2 ( x) − x2 ≥ 0
Genetic algorithm can converge to global optimal
⎪ 2 g 2 ( x) − x2 < 0
solution theoretically, but in the actual design, there is no ⎩
mature principle and methods of designing the convergence The triangle with three different kinds of integer labels is
criteria. Instead, the designing of convergence criteria called a completely labeled simplex. Usually, we use the
basically relies on the experience and understanding of the man-made labels not relying on self-mapping g and find the
extent to the question, and the most common method is
taking the max generation as the convergence criteria or the completely labeled simplexes though substitution of vertex
iteration will be terminated if average fitness of the continual with the same label (as shown in Figure 1).
m- generation has not been improved obviously. Therefore,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 481


DOI 10.1109/ICCET.2009.116
obtained, they are
B ( a + ( n + 1) h, c + kh) ,C ( a + ( n + 1) h, c + ( k + 1)h) a
nd D ( a + nh, c + ( k + 1) h) . Therefore, we can calculate
the coordinates of other vertices of the square only if the
relative coordinate of A is given. In view of this fact, we take
the relative coordinate of an intersection point which is
decided by two groups of straight lines as genetic encoding.

Figure 1. The triangulation


4
In this paper, the thought of triangulation is introduced to
genetic algorithm and as a result, the improved genetic 3
algorithm avoids the shortcoming of man-made initial point.
Though evolution, narrowing the searching ranges gradually
to enhance the convergence rate and reduce the iteration 2
times
III. THE IMPROVED GENETIC ALGORITHM 1
We frequently meet the questions of solving the optimum
value of max f ( x ) ( a ≤ x ≤ b) without constraint 0 1 2 3 4
condition, and supposing that f (x ) has continuous Figure 2. .relative coordinates

derivative in the given interval. In this case, the question of Crossover operator: Using the overall arithmetic
solving the optimum value of f (x ) can be transferred to
crossover strategy, supposing that p1 = ( x1 , x2 ) and
(1) (1)

solve the zero point of f (x) and then it can be transferred to


p2 = ( x1( 2) , x2( 2) ) are two parent vectors with satisfaction
solve the fixed point of f (x) according
of x1 ≠ x1 and x2 ≠ x2 . s1 = ( z1 , z2 ) ,
(1) ( 2) (1) ( 2)
to g ( x ) = x + f ′( x ) . Obviously in the numerical
calculation, it is difficult to find a vector x satisfying the s2 = ( w1 , w2 ) are the two descendants obtained though
formula of g ( x ) = x .Under the circumstance, the crossover operator.
conception of ε fixed point [5] has been introduced. z1 = [α x1(1) + (1 − α ) x2(1) ⎤⎦

that ε > 0 , we say x ∈ R is a ε
n
z 2 = [ β x1( 2 ) + (1 − β ) x 2( 2 ) ⎤⎦
Supposing -fixed point
(approximate fixed point) of the self- ,
mapping g : R n → R n , if x − g (x) < ε . Here w1 = [ (1 − α ) x + α x ⎤⎦
(1)
1
(1)
2

x − g (x) expresses the vector mold in Euclidean space.
w2 = [ (1 − β ) x (2)
1 + β x ⎤⎦
(2)
2
Relative coordinates: Supposing that the definition .
domain of f ( x1, x 2) is that a ≤ x1 ≤ b, c ≤ x 2 ≤ d and In the formulas above , α and β are random real
dividing the domain into many squares with two groups of number with satisfaction of 0 < α < 1 and 0 < β < 1 , [ ]
straight lines of {x1 = mh} and {x2 = mh} ( m is an is the integer operator.
integer).For a random point of intersection named A, we Mutation operator: In order to manifest the influence of
(1) (1) the integer label in genetic manipulation, the mutation
suppose that it’s coordinate is ( x1 , x2 ) , then there are
operation is as follows:
surely existing n, k satisfying the formula Taking the relative coordinate of A as the genetic encode,
then we can determine a square with A as a left bottom
of x
(1)
1 = a + nh , x = c + kh , and then (n, k ) is called
( 2)
1 vertex. Each vertex can search two aspects information; one
the relative coordinate of A. aspect expresses the parallel direction of the square and
Genetic encoding: selecting four adjacent points of a another describes the length of stride. Take vertex A as the
square randomly, according to the subdivision above, if the example, it has two directions, downward and towards left
relative coordinate of the lower left quarter vertex A of the (as shown in Figure 3), the length of stride for in this
square is given (as shown in Figure 2), recording that ( n, k ) , direction is the grid number with different label of A though
then the other three vertices` relative coordinates record the parallel migration. If the vertex happens to be in
B (n + 1, k ) , C (n + 1, k + 1) and D (n, k + 1) , boundary, then the length of stride to boundary outside is ∞ ,
or if searching in the boundary along a direction not to find a
simultaneously the coordinates of B, C and D can be
vertex with different integer label, we also suppose length of

482
stride along this direction is ∞ . If each direction length of
stride is ∞ , approaches to the origin. Chose the minimum
length of stride from 8 directions of four vertexes and obtain Start
a square though parallel moving according to this direction.
The coordinate of the left bottom vertex of the new square,
recording (n′, k ′) , is taking as the chromosome encoding According to precision request, design
after mutation of vertex ( n, k ) . First of all, this mutation h = {h1 , h2 ,", hn } ;
need to search the in formations of the vertices, then it
carries on specific operation according to the results of the
mutation. We call this mutation as neurons mutation that is a
guiding mutation. Carries on square cutting in half region Di , with two

groups of lines { x1 = mhi } , {x 2 = mhi }


A D

Coding, initialization, p(0) , t<-0


B C
Calculates each individual to correspond the

Square four apexes the integer markings


Figure 3. Relative coordinates and vertex information

For example, as shown in Figure3, giving the square


corresponding with the mutation individual according to the
counter clockwise, the search information is given according
to the below order: first the horizontal direction, then vertical Whether has the entire
direction, under the circumstance, obtaining 8 integers,
supposing that are: 12, 23, 8, 15, 7, 12, 5, 6, choosing the sign square?
minimum one that should be 5. According to above
hypothesis order, 5 correspond with left direction. Suppose N
A’s encoding is ( n, k ) , the mutation encoding Y

becomes (n − 5, k ) . Carrying on search according to the


N
direction of coordinate connection though crossover Whether meets the
operator, this is carried on along the vertical or horizontal precision Y
direction between the selected individual.
The individual which obtains through crossover
Y
operation or mutation operation must be examined that
whether the four vertices integer labels of the square includes End
0, 1, and 2. If including the three labels, we call the square
the completely integer label square, the small region
determined by the square is the extreme point scope. Selection
In order to make sure the operation effectively, the
algorithm uses the thought of gradually thin cuts in half.
Design a series of h = {h1 , h2 ,", hn } , Crossover

satisfies hi % hi +1 = 0 according to the result precise degree.


In which % is the complement of a number operator, that is Mutation
the vertex which obtained in preceding cutting in half is still
in the latter thinner cutting in half. Firstly in the given scope,
determine a smaller scope which includes the optimal Obtains the new generation of
solution, then takes this scope as the new domain of individual p (t + 1)
definition and searches again. Reduce the search scope
gradually until the algorithm meets the requirements
precision.
Improvement genetic algorithm flow chart following
shown in Figure 4: Figure 4. The improved GA flow chart

483
IV. EXAMPLE CONFIRMATIONS and then designing genetic operator, Population is used to
The test function: find a full-scale triangle as a more objective criteria for
convergence. Simulation gains the good result as expected.

⎪ min f ( x1 , x2 ) = ( x1 + x2 )
2 2
⎨ ACKNOWLEDGMENT

⎩ s.t− 2 ≤ x i ≤ 2. (i =1,2) The authors gratefully acknowledge the supports of
National Natural Sciences Foundation of China under the
The function achieves the minimum in (0,0) . project number 60875037 and Natural Sciences Foundation
In this example, h = {1,0.1,0.001,0.0001} crossover of Hebei Province under No.F2007000710 and
No.E2008000731.
probability pc = 0.1 , mutation probability pm = 1 .The
completely label square obtains though the iteration, the
search scope are: (0 ≤ xi ≤ 1) , (0 ≤ xi ≤ 0.1) , REFERENCES
[1] Holland, J. Adoptation in Natural and Artificial Systems [M].
(0 ≤ xi ≤ 0.01) and (0 ≤ xi ≤ 0.001) in turn. From this, University of Michigan Press, 1992,44~50
the search scope reduces unceasingly with unceasing thinner [2] Arabs J, Michalewicz Z,MulaWka J. GAVaPS--a Genetic
cutting in half. From this example the search scope are Algorithms
st with Varying Population Size.In:Proceedings of the
1 IEEE International Conference on Evolutionary
contracting to (0,0) gradually, using the limit thought, the Computation(ICEC’94), 1994, 73-78
optimum point is (0,0) . [3] Eiben A. E., Hinterding R., Michalewicz Z. Parameter Control in
Evolutionary Algorithms. IEEE Transaction on Evolutionary
Computation, 1999, 3(2): 124-141
V. CONCLUSION
[4] Farzad G,Gecil A. Application of random restart in genetic
This paper proposed an improved genetic algorithm algorithms[J].Information Sciences.1996,85(2):81~102
based on the fixed point. Carrying on the triangulation to the [5] Wang Zeke, pure fixed point algorithm foundation [M]. National
solution space and calculating the integer label of the vertex University of Defense Technology publishing house, 1993

484
2009 International Conference on Computer Engineering and Technology

Example-Based Regularization Deployed to Face Hallucination


Hong Zhao1, 2 Yao Lu1 Zhengang Zhai1, 3 Gang Yang2
1
Beijing Laboratory of Intelligent Information Technology, School of Computer Science, Beijing
Institute of Technology, Beijing 100081 PRC, China
2
College of Mathematics and Computer Science, Hebei University, Baoding 071002, China
3
Chinese People’s Liberation Army Air Defence Forces Command College, Zhengzhou, China
E-MAIL: valen_zhao@bit.edu.cn, vis_yl@bit.edu.cn, zz_gang@bit.edu.cn, yanggang@hbu.cn

Abstract probability density function of the image (PDF) and


forcing a simple expression to describe the image, the
Regularization plays a vital role in ill-posed image examples can guide us in the construction of the
problems. A properly chosen regularization can direct priors. The ways to exploit examples can be roughly
the solution toward a better quality outcome. An divided into two categories [10]: use them to learn the
emerging powerful regularization is one that leans on parameters of previously defined regularization
image examples. In this paper, we propose a novel expressions or use them directly for the reconstruction
scheme for face hallucination. We target specially the procedure.
quality of highly zoomed outputs. Our work bases on In this paper, we propose a new scheme for face
the pyramid framework and assigns several high- hallucination. We target specially the quality of highly
quality candidate patches for each location in the zoomed outputs, because the quality of the results in
degraded image. We definite a global MAP penalty Fig. 1 is not satisfying. Our algorithm bases on the
function to reject all the problematic examples, and pyramid framework presented in Baker [1] and starts
then reconstruct the desired image using the patch by assigning several high-quality candidate patches
which is left after pruning. Experimental results designed for each location in the degraded image.
demonstrate that our approach can get better Motivated by Elad [10], we do not use these candidate
resolution. examples to compute the reconstructed image directly.
By contraries, we definite a global MAP (maximum a
1. Introduction posteriori probability) penalty function for rejecting the
irrelevant examples. Only when one candidate is left,
Super-resolution is the process of combining does the reconstruction begin.
multiple low-resolution images to form a higher This paper is organized as follows: in section 2 we
resolution one. Numerous super-resolution algorithms describe the relevant theory and core algorithm; in
have been proposed in the past decades [1], [2], [3], [4], section 3 we present the experiment results; in section
[5], [6], [7]. Generally speaking, there are three 4 we conclude this paper.
categories of approaches for super-resolution:
interpolation-based methods, reconstruction-based
methods and learning-based methods.
Face hallucination is an application of the super-
resolution techniques to human facial images whose
procedure is generally based on a single measured (a) (b) (c) (d)
image. Thus, the priori knowledge of the face in the
image is needed in order to compensate for the lack of Figure 1. Two results of Baker’s method.
data. This leads to the concept of regularization [8], [9]. (a)(c)Eightfold hallucinated (b)(d) Original
Regularization plays a vital role in inverse
problems, especially in ill-posed ones such as super-
resolution. In recent years, an emerging powerful
regularization that is drawing research attention is one 2. Theory and Algorithm
that leans on examples. Rather than guessing the

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 485


DOI 10.1109/ICCET.2009.52
2.1 The Maximum a Posteriori Probability denote its feature:
Estimator FP i ( l ) = ( L i ( l ), H i ( l ), V i ( l ), H i2 ( l ), V i 2 ( l )) (6)
where i is from 0 to N. Meanwhile, the Parent Structure
We model the formation of the measurements l vector can be written as:
from the ideal image h by Par i ( l ) = (FP i ( l ), FP i + 1 ( l ), " , FP N ( l ) ) . (7)
l = Dh + η . (1)
For each pixel ( x , y ) in the input image li
This is the problem we target in this paper, where
independently, we compare its Parent Structure vector
D is the degradation operator and it may include blur,
with all training Parent Structure vectors at the same
decimation, geometrical warp and more. The symbol
level i. By setting up a threshold T, we can select
η stands for an additive noise. For simplicity we will several closest matching pixels in different training
assume that the noise is Gaussian, white and zero- images at the same level. In other words, all pixels that
mean. satisfied
The method of maximum a posteriori probability 2
Par i ( l ( x , y )) − Par i ( h k ( x , y )) ≤ T (8)
(MAP) practices the Bayesian approach and estimates 2

h as follow:
are considered as the candidates of pixel l i ( x , y ) .
*
h MAP = arg max P (l | h ) P (h )
h
Consequently, we find several patches which are in the
= arg min ( − ln P ( l | h ) − ln P ( h )) . resolution we desired. These patches form the nearest-
h

(2) neighbor candidates set which we denote as Ω ( x , y ) .


Considering the model in Equation (1), based on
the Gaussianity of the noise and the fact that x is 2.3 A Global MAP Penalty
assumed to be known, thus, the likelihood function can
be written as follow: Once all the candidates have been found in every
1 ⎧ 1 2⎫ location, there are two classical way to reconstruct the
P (l | h ) = ⋅ exp ⎨ − ⋅ l − Dh 2 ⎬ (3)
M
( 2π ) σ2 M ⎩ 2 σ 2
⎭ image including MMSE estimating and MAP
where M is dimension of vector h. estimating. These pixel-based reconstructions are easy
Losing no generality, a convenient to describe to implement. However, their simplicity comes with a
the PDF of h is the Gibbs distribution, which price — the examples found contain many outliers
represents p(h) in an exponential form: with irrelevant content, and those may divert the
P ( h ) = Const ⋅ exp {− α A ( h ) } . (4) desired result. The work in Freeman [3], [4] considered
a pruning of the found examples by modeling the inter-
The constant in front of the exponential is a relations between adjacent/overlapping patches by a
normalization factor, guaranteeing that the integral random Markov network, and using of the Bayesian-
over all h is 1. The term A(h) is a non-negative energy Belief-Propagation (BBP) for choosing the proper
function, supposed to be low for highly probable examples in the recovery.
signals and high otherwise. In order to address the problem of outliers, we use
Using Equation (3) and Equation (4), we obtain: a global MAP penalty function to choose the

h MAP = arg max P (l | h ) P ( h ) problematic examples and prune them out step by step.
h (5) The MAP penalty function is written as follow:

h
{ 2
= arg min l − Dh 2 + 2σ α ⋅ A( h) .
2
} ∧ ∧
ε (h ) = D h − l + ∑
2



wk( x , y ) R( x , y ) (h) − hk( x , y )
2

.
2 ( x , y ) k∈Ω ( x , y ) 2

2.2 Finding the Nearest-Neighbor Candidates (9)


In this function, the first term stands for the log-
Our method resembles the Baker’s and constructs likelihood, with the assumption that the noise is white
the training set which contains a lot of feature and Gaussian. The second is the regularization term,
pyramids. For each face image, we firstly create the and it is defined by all examples found in one
Gaussian pyramid; secondly, we get several pyramids, location ( x , y ) . The weights wk( x , y ) are binary: ‘0’ for
including the horizontal first and second derivatives of a pruned example and ‘1’ for an active one. The
the Gaussian pyramid, the vertical first and second ∧
derivatives of the Gaussian pyramid and the Laplacian operator R(x ,y) extracts a patch from the image h . The
pyramid. Finally, we form a pyramid of features. For a inner summation is done over all found nearest–
th
low resolution face image l at i level, we use FP (l) to neighbors, their indices taken from the set Ω ( x , y ) .
i
The outer summation runs through all pixels in the

486
training image. Expression (9) suggests that the ( x , y ) are 1. As might be expected, our algorithm
reconstructed image should agree with every found performs well, especially in the part of eyes and
example and in every location. mouth.
In Figure 2 we give the comparison of two choice
2.4 Pruning Problematic Examples of the threshold T. Figure 3 presents the experimental
results of the fourfold zooming-up. In Figure 4 we give
In the training stage we found several candidate the experimental results of the eightfold zooming-up.
patches for each pixel location. However, some In order to evaluate the hallucination effect of two
irrelevant examples have been selected and put into the methods objectively, the paper used Peak Signal Noise
candidate set. In order to improve the quality of the Ratio (PSNR) to measure their efficiency. For the
super resolution, we must decide which one is the most image of M×N, its PSNR defined as:
problematic example and throw it out from the ⎡ ⎤
candidate set. ⎢ 255 2 ⎥ (11)
We start with the assignment wk( x , y ) = 1 for all PSNR = 10 log ⎢ M −1 n −1

⎢ 1 2 ⎥
⎢⎣ M × N ∑ ∑ mn ( X − X )
( x , y ) and k. Based on the following steps, we prune ⎥⎦
mn
m = 0 N =0
one patch one time:
where X mn , X mn is on behalf of the original image
Step 1. For the current choice of weights and
∧ and the image to be assessed. Table 1 and Table 2
current location ( x , y ) , the MAP value of ε (h) is show the comparison of the PSNR of two methods and
( x, y ) demonstrate that our results are superior to those of
computed with the omission of patch hk .
( x, y )
Baker’s method.
Step 2. Per each patch hk with wk( x , y ) = 1, we
compute the optimal output image minimizing the 4. Conclusion
modified MAP function
2 In order to reconstruct high-quality face images, we
∧ ∧
ε (h) − ∑ ∑
( x , y ) k ∈Ω ( x , y )
w k( x , y ) R ( x , y ) ( h ) − hk( x , y ) . (10) must try to reject the irrelevant candidate patches. In
2 this paper, we use examples to obtain an effective
Step 3. Among all examined patches, we prune the regularization for the problem of face hallucination.
one that gives the largest difference between the The global MAP penalty function can exploit the
reference penalty value by assigning wk( x , y ) = 0. The spatial coherence in some degree, considering the
patch discarded is considered to be the least compatible unknown image as a whole. Thus, it can be used to
with the remaining patches. decide which one is the most unlikely candidate patch.
The effectiveness of our approach is demonstrated
by extensive experimental results. The results show
3. Experiment and Results
that the output images are certainly in the higher
resolution than that of Baker’s, especially in the part of
Our experiments are conducted with FERET [11]
eyes and mouth.
database consisting of 596 images of 278 individuals
(92 women and 186 men). As a necessary preamble
step, we perform normalization manually. By doing so, Acknowledgements
every image is cropped to 96×128 as the high-
resolution image. We compute low-resolution input This paper is supported by the Beijing laboratory of
image by smoothing and down-sampling the intelligent information technology. The authors would
corresponding high-resolution image. We use a “leave- like to thank Ziye Yan and Yaozu An for the insightful
one-out” methodology to test our algorithm. discussions.
Our target is to improve the quality of the highly
zoomed outputs. So, we only consider the case of
enhancing 12×16 pixel images eightfold to give
96×128 pixel images. The size of the searching
window is chosen to be 3 and the value of T is
assigned 35. We assume that the same part of the face
appears in roughly the same part of the image to save
the searching time. The initial values of wk( x , y ) for all

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

Figure 2. Comparison between two different Figure 3. Comparison between our method
values of the threshold T. (a) Input 12×16 (b) and Baker’s method. (a)) Input 24×32(b) Our
T=80 (c) T=35 (d) Original 96×128 method (c) Baker’s method (d) Original
96×128.

(a) (b) (c) (d) (e) (f) (g) (h)

Figure 4. Comparison between our method and Baker’s method. (a)(e) Input 12×16 (b)(f) Our method
(c)( g) Baker’s method (d)(h) Original 96×128.

488
Table 1. Comparison of PSNR for Fourfold Experimental Results in Figure 3.

Our method Baker’s method


Row 1 25.1726 24.5178
Row 2 25.4913 24.7310
Row 3 24.6323 24.5289
Table 2. Comparison of PSNR for Eightfold Experimental Results in Figure 4.

Our method Baker’s method


Left row 1 21.4741 21.2273
Left row 2 21.2619 20.6807
Left row 3 22.4739 22.0687
Left row 4 20.7809 20.6454
Right row 1 23.2435 22.6496
Right row 2 21.9418 21.6736
Right row 3 21.2839 20.8392
Right row 4 21.3963 21.2901

References algorithms”, Proceeding of the 1997 Conference on


Computer Vision and Pattern Recognition, 1997,
pp.137-143.
[1] S. Baker, T. Kanade, “Limits on Super-Resolution and
How to Break them”, IEEE Trans. on PAMI, Vol. 24,
No. 9, 2002, pp. 1167-1183.
[2] S. Baker, and T. Kanade, “Hallucinating Faces,”
Proceeding of Inter. Conf. on Automatic Face and
Gesture Recognition, 2000, pp.83-88.
[3] W. T. Freeman, and E. C. Pasztor, “Learning Low-
Level Vision”, Proceeding of ICCV, Vol. 2, 1999, pp.
1182-1189.
[4] W. T. Freeman, T. RJones, and E. C. Pasztor,
“Example-based Super-resolution”, IEEE Computer
Graphics and Applications, Vol. 22, No. 2, 2002, pp.
56 -65.
[5] C. Liu, H. Shum, and C. Zhang, “A Two-Step
Approach to Hallucinating Faces: Global Parametric
Model and Local Nonparametric Model”, Proceeding
of CVPR, Vol. 1, 2001, pp. 192-198.
[6] M. A. Turk , and A. P. Pentland, “Face recognition
using eigenfaces”, Proceeding of IEEE Conf.
Computer Vision and Pattern Recognition, 1991, pp.
586-591.
[7] X. Wang, and X. Tang, “Face hallucination and
recognition”, Proceeding of 4th Int. Conf. Audio- and
Video-Based Personal Authentication, IAPR,
University of Surrey, Guildford, U.K., Jun. 2003, pp.
486- 494.
[8] A. K. Jain, Fundamentals of Digital Image Processing.
Prentice-Hall, Englewood Cliffs, NJ. ,1989.
[9] R. L. Lagendijk, and J. Biemond, Iterative
Identification. 1991.
[10] D. Datsenko, and M. Elad, “Example-based single
document image super-resolution: a global MAP
approach with outlier rejection”, International Journal
of Multidimensional Systems and Signal Processing,
Vol. 18, No. 2, 2007, pp. 103–121.
[11] P. J. Philips, H. Moon, P. Rauss, and S. A. Rizvi., “The
FERET evaluation methodology for face-recognition

489
2009 International Conference on Computer Engineering and Technology

An Ensemble Approach for Semantic Assessment


of Summary Writings
Yulan He∗ , Siu Cheung Hui† and Tho Thanh Quan‡
∗ Schoolof Engineering, Computing and Mathematics
University of Exeter
North Park Road, Exeter EX4 4QF, UK
y.l.he.01@cantab.net
† School of Computer Engineering

Nanyang Technological University


Nanyang Avenue, Singapore 639798
asschui@ntu.edu.sg
‡ Faculty of Computer Science and Engineering

Hochiminh City University of Technology


Hochiminh City, Vietnam
qttho@cse.hcmut.edu.vn

Abstract—Computer-assisted assessment of summary writings [6], n-gram co-occurrence [7] have been proposed. However,
is a challenging area which has recently attracted much interest most of these techniques are unable to achieve satisfactory
from the research community. This is mainly due to the advances performance for assessing summary writings. In this paper,
in other areas such as information extraction and natural
language processing which have made automatic summary as- we propose an ensemble approach, that integrates two of the
sessment possible. Different techniques such as Latent Semantic most effective summary evaluation techniques, LSA and n-
Analysis, n-gram co-occurrence and BLEU have been proposed gram co-occurrence, for improving the accuracy of automatic
for automatic evaluation of summaries. However, these techniques summary assessment.
are unable to achieve good performance. In this paper, we Summary writings are usually assessed based on two cri-
propose an ensemble approach, that integrates two of the most
effective summary evaluation techniques, LSA and n-gram co- teria, content and style. In this paper, the proposed ensemble
occurrence, for improving the accuracy of automatic summary technique focuses mainly on content assessment. The rest of
assessment. The performance of the proposed ensemble approach the paper is organized as follows. Section II reviews some
has shown that it is able to achieve high accuracy and improve of the techniques currently employed in summary evaluation.
the performance quite substantially compared with other existing The proposed approach is presented in Section III. Perfor-
techniques.
mance analysis is discussed in Section IV. Finally, Section V
I. I NTRODUCTION concludes the paper.

Summary writing is an important part of many English II. S UMMARY A SSESSMENT T ECHNIQUES
examinations. The assessment of summary writings is nor- This section reviews some of the most popular summary
mally conducted based on content overlapping and linguistic evaluation techniques including those based on Latent Se-
qualities by comparing a student’s candidate summary with mantic Analysis (LSA) [2], [3], [4], [5] and those based on
a reference summary. However, manual assessment is always machine translation evaluation methods [6], [8], [7].
a tedious and labor-intensive process. Furthermore, there is a
problem of inconsistency in human assessment that different A. LSA Based Techniques
markers might give different grades for the same candidate Landauer et al. [3] first developed Latent Semantic Analysis
summary. To help alleviate such problems, there has been a (LSA) in the late ’80s with the purpose of indexing documents
growing interest recently in automatic summary assessment or and information retrieval. Automated assessment of natural
computer-assisted assessment of summaries. text was an interesting problem since that time. Landauer
Computer-assisted assessment is a long-standing problem modified LSA to assess natural text. LSA functions by using a
that has attracted much interest from the research community matrix to capture words and frequency of the words appearing
since the sixties and has not been fully resolved yet [1]. With in a context. The matrix is then transformed using Singular
the recent success of e-learning and the advances in other Value Decomposition (SVD). Cosine correlation is used to
areas such as Information Extraction (IE) and Natural Lan- determine the similarity. Based on the result of Landauer’s
guage Processing (NLP), automatic assessment of summary experiment, LSA is capable of producing results that are
writings has become possible. Some of the techniques such approximately as well as experts’ assigned scores as the scores
as Latent Semantic Analysis (LSA) [2], [3], [4], [5], BLEU correlate with each other. However, LSA does not make use

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 490


DOI 10.1109/ICCET.2009.90
of word order as Landauer claims that word order is not the algorithm in machine translation. N -gram with length greater
most important factor in collecting the sense of a passage [2]. than one can be used to estimate the fluency of summaries.
A commercial summary evaluation system, Laburpen Ebalu- ROUGE-L consists of matching two sequences by matching
aketa Automatikoa (LEA) [4], also makes use of LSA to derive their subsequence. The longer the matching subsequence, the
summarization scores. LEA is designed to address two types of more similar the two sequences are. ROUGE-W is simi-
users, teachers and students. LEA allows teachers to manage lar to ROUGE-L in which they both deal with matching
summarization exercises and inspect students’ answers, and al- subsequences but in ROUGE-W weights are used. ROUGE-
low students to create their own summaries. There is a support S uses skip-bigram to estimate the similarity between two
tool that is available to help students write their summaries. summaries. Since ROUGE-L and ROUGE-W can only match
LEA evaluates summaries based on the combination of partial subsequence, ROUGE-S compensates this by being able to
scores in cohesion, coherence, adequacy, use of language and match pairs of word in their sentence order with arbitrary gaps
comprehension. in between them. ROUGE-SU is similar to ROUGE-S with
Franzke et al. [5] at the University of Colorado at Boulder the addition of unigram based co-occurrence statistics. The
developed Summary StreetTM , an automated tool to evaluate evaluation of ROUGE had shown that it correlates surprising
the content of students’ summaries. Summary Street grades well with human evaluations.
students writing by comparing it with the actual text, eval-
uating it based on content knowledge, writing mechanics,
III. P ROPOSED A PPROACH
redundancy and relevancy. Based on the grading given by
Summary Street, feedback is given to help the student know In semantic assessment of summary writings, student so-
where his/her mistake is. The core of Summary Street is lutions are graded based on the number of content points
the Knowledge Analysis TechnologiesTM (KAT) engine. The answered. Apart from those commercial techniques such as
KAT engine uses a modified version of Latent Semantic LEA and Summary Street, there are mainly four summary
Analysis (LSA). assessment techniques, namely LSA, BLEU, n-gram co-
B. Machine Translation Based Techniques occurrence and ROUGE. After evaluating these techniques,
we found that the overall performance of ROUGE is quite
Perez et al. [6] modified the BLEU algorithm, which was
poor compared with the other three techniques. We then built
originally developed for ranking machine translation systems,
the ensemble approach using LSA, n-gram co-occurrence and
into one that is capable of marking students’ essay. The
BLEU. However, we found that BLEU produced low scores in
modified BLEU algorithm is capable of assessing a student’s
its performance when ensembled with other techniques. This
essay for relevant information by matching it with the model
might due to the brevity penalty over penalization. As such,
essay stored in the system. BLEU’s Brevity Penalty factor was
the resultant ensemble approach only comprises LSA and n-
modified to increase the performance of the system, the results
gram co-occurrence. Furthermore, as the LSA and n-gram co-
of the modification showed that it was able to outperform the
occurrence techniques have roughly the same performance,
original BLEU algorithm in terms of correlation. Based on
both techniques will have very similar weights if the weighted
their evaluation, they had concluded that the modified BLEU
approach is used. Since the weights are similar, the use of the
algorithm is capable of achieving reasonable correlation with
unweighted approach will simplify the amount of processing
the human markers and it is more than sufficient to replace
required by the ensemble approach.
keyword matching techniques in the assessment of students’
Figure 1 shows the proposed ensemble approach which con-
essays.
sists of two major modules: pre-processing and ensembling.
Lin et al. [8] conducted a study on using the two ma-
chine translation evaluation techniques, BLEU and NIST’s n-
Student Standard
gram co-occurrence scoring procedures, on the evaluation of Solution Solution
summaries. The main idea of the comparison is to measure
the closeness of the candidate to the reference summary by Pre-processing
using the weighted average of variable length n-gram matches Word Stop Word Synonym
Stemming Removal Replacement
from that of BLEU. Based on the result of their experiments,
they had found out that unigram co-occurrence statistics is a
Ensemble
good automatic scoring metric as it is capable of constantly
achieving high correlation with human assessments. N-gram Co-
LSA
Lin [7] also developed an automatic summary evalua- occurrence

tion program called Recall-Oriented Understudy for Gisting


Ensemble
Evaluation (ROUGE). The current version of ROUGE con- Score
sists of five different automatic evaluation methods, namely
ROUGE-N, ROUGE-L, ROUGE-W, ROUGE-S and ROUGE- Fig. 1. The proposed ensemble approach.
SU. ROUGE-N uses n-gram co-occurrences between the can-
didate and reference summaries, which is similar to the BLEU

491
A. Pre-processing N -gram co-occurrence measures how well a candidate
Both the student’s candidate solution and the standard summary overlaps with a reference summary using a weighted
(reference or model) solution will first go through the pre- average of variable length n-gram matches. First, the n-gram
processing module. To avoid the problem that the student’s match ratio is calculated as follows:
 
candidate solution uses different words from the reference Sr ∈S n-gram∈Sr Countmatch (n-gram)
summary, the pre-processing module aims to create a common Cn =   (1)
Sr ∈S n-gram∈Sr Count(n-gram)
basis for comparison by converting all words used by the
candidate and reference summaries to a common one. There- where S = {S1 , S2 , ..., SR } comprises all the sentences in
fore, the pre-processing module provides text pre-processing a reference summary. Countmatch (n-gram) is the maximum
functions such as converting synonyms into a common word, number of n-grams co-occurring in a candidate summary and
eliminating grammatical differences and removing stop words. a reference summary and Count(n-gram) is the number of n-
For the first two functions, WordNet [9] was used. As for the grams in the reference summary.
removal of stop words, a list obtained from the University of The n-gram co-occurrence
j statistics is defined as
Glasgow1 was used. n-gram(i, j) = exp ( n=i wn log Cn ) where j ≥ i, i
and j range from 1 to 4, and wn = 1/(j − i + 1). n-
B. Ensembling gram(1, 4) is a weighted variable length n-gram match
The ensemble approach comprises the modified LSA algo- score similar to the IBM BLEU score [10]; when i = j,
rithm and n-gram co-occurrence which are discussed in this n-gram(i, i) is simply the average i-gram coverage score Ci .
subsection. 3) Ensemble Approach: In the ensemble approach, the
1) Modified Latent Semantic Analysis (LSA): When apply- scores of the individual techniques of LSA and n-gram co-
ing Latent Semantic Analysis (LSA) to summary assessment, occurrence are used for the unweighted voting by taking an
first, a reference summary and a student’s candidate summary unweighted average, i.e.,
is split into a set of sentences. For any summary, suppose LSA Score + n-gram co-occurrence Score
there are m distinct terms in n sentences. The summary Ensemble Score =
2
can be represented as a term-sentence (m × n) matrix X,
whose component xij is the weighted frequencies for how A threshold value will be assigned to determine if the averaged
often a term ti occurs in a sentence dj . The original matrix score is considered as a positive or negative solution.
X is then broken into the product of three new matrices IV. P ERFORMANCE A NALYSIS
X = U ΣV T where U and V are the matrices of the left
In this section, we present the performance of the proposed
and right singular vectors for terms and sentences respectively.
ensemble approach in comparison with other assessment tech-
Σ comprises a diagonal of scaling factors. Some number k of
niques. As LEA and Summary StreetTM are commercial and
the scaling factors is retained and the matrices are recombined
patented techniques, we were unable to obtain their programs
using only the retained factors. Thus, the original matrix X is
for testing. However, the other techniques such as LSA,
approximated with a rank-k matrix Xk = Uk ΣVkT by setting
BLEU, ROUGE and n-gram co-occurrence are compared. The
the smallest r − k singular values to zero (r is the rank of X).
following six different types of tests are used to compare the
The result is a compressed form of the original matrix in
performance. The objectives of these tests are given below:
which frequency values are approximated (raised or lowered)
depending on the number of factors used. After generating the • Exact test - It is used to judge if the technique is capable

compressed matrix for a reference summary, a vector for each of providing a high score for totally related candidate
sentence can be constructed by taking values in the matrix for summary and reference solution.
each term found in that sentence. A vector for each sentence • Opposite test - It is used to judge if the technique

in the candidate summary can also be computed in a similar is capable of providing extremely low score when the
way. The cosine distance between the reference vector and the candidate summary and reference solution are totally
candidate vector can then be calculated as an indication of their unrelated.
semantic similarity. A candidate sentence can be considered • Content test - It is used to determine whether the tech-

as matched with a reference sentence if their cosine distance nique is capable of producing a score that is proportional
is within an empirically determined threshold. The final score to the number of content points present in the candidate
is computed as the total number of matched sentences out of summary.
the total number of sentences in the reference summary. • Synonym test - It is used to determine if the technique

2) n-gram Co-occurrence: An n-gram is a subsequence of is able to evaluate the candidate summary based on their
n items from a given sequence. In our application here, n- content and not be influenced by the different synonyms
gram refers to a subsequence of n words in a sentence. An used in the summaries.
n-gram of size 1 is a “unigram”; size 2 is a “bigram”; size 3 is • Grammar test - It is used to determine if the technique

a “trigram”; and size 4 or more is simply called an “n-gram”. is able to evaluate the candidate summary based on their
content and not be affected by the different grammar used
1 http://ir.dcs.gla.ac.uk/resources.html in the summaries.

492
• Student test - It aims to determine if the technique is LSA N-gram BLEU ROUGE Ensemble

capable of producing score that is closely related to the 1.2

one that is given by a human expert. The candidate sum- 1

maries used in this test are written by current students, 0.8


as opposed to those that are generated artificially used

Accuracy
0.6
for the above tests. Therefore, this allows us to test if
0.4
the technique is capable of accurately assessing real-life
summaries. 0.2

The six tests are used to evaluate the performance of the 0


Exact Opposite Content Synonym Grammar Student
ensemble approach in comparison with other base techniques. Techniques

All reference summary solutions used in the tests are obtained


from Cambridge O-Level English Language Examination [11],
[12]. The performance evaluation was conducted on 50 test Fig. 3. Performance comparison of the existing techniques and the proposed
ensemble approach.
samples (or student summaries) with 1 being the most accurate
and 0 being the most inaccurate for all the tests. All the test
samples were collected from a class of students taking the
Mid-Year Examination 2007 of Hillgrove Secondary School as it had the highest chances of producing them while having
in Singapore. These candidate summaries had been graded by the lowest probability for producing false negatives. On the
their O-Level English teacher. whole, the ensemble approach proves to be superior to the
Figure 2 shows the accuracy of the ensemble approach base techniques.
for each of the six tests versus the different settings of the
TABLE I
threshold value that defines the matching criteria. It can be C ROSS COMPARISON BETWEEN THE ENSEMBLE APPROACH AND OTHER
observed that the optimal threshold value is 0.7 as the accuracy TECHNIQUES IN FP AND FN.
starts to decline beyond this value. Method False Positive False Negative
LSA 0.094 0.228
Exact Opposite Content Synonym Grammar Student
N-gram 0.033 0.093
BLEU 0.026 0.194
1.2 ROUGE 0.003 0.476
Ensemble 0.124 0.046
1

0.8
Accuracy

0.6

0.4
V. C ONCLUSIONS
0.2 In this paper, we propose an ensemble approach which
0 integrates two of the most effective assessment techniques
0.3 0.4 0.5 0.6 0.7 0.8 0.9
of LSA and n-gram co-occurrence into an efficient technique
Threshold
for automatic summary assessment. Performance comparison
between the proposed ensemble approach with other existing
Fig. 2. Performance of the proposed ensemble approach vs threshold values. techniques has also been conducted. The proposed approach
has achieved an overall accuracy of 96% as compared to the
best existing technique, BLEU, which has an overall accuracy
Figure 3 shows a comparison of the ensemble system and
of 87%. For future work, as the techniques used and proposed
the base techniques on LSA, n-gram co-occurrence, BLEU
in this paper are mainly based on latent semantic analysis
and ROUGE using their best performance parameters and
or machine translation based evaluation techniques, we will
thresholds. It can be observed that the ensemble system is able
investigate the effectiveness of using machine learning or
to outperform all the base techniques in all the tests except for
statistical approaches for the assessment of summary writings.
the content test. For the other tests, the ensemble approach is
In addition, as our current approach only focuses on semantic
capable of outperforming the other techniques by at least 0.003
assessment of contents, we also intend to develop a complete
and at most 0.774 in terms of accuracy. Based on the results of
summary assessment system by incorporating an English lan-
the tests, the proposed approach is capable of producing equal
guage assessor and style checker.
or higher accuracy compared to the existing techniques in all
tests except for one. Even though the proposed approach did
R EFERENCES
not perform as well in the content tests, its overall accuracy of
96% is still much higher than that of the existing techniques. [1] D. Perez, A. Gliozzo, C. Strapparava, E. Alfonseca, P. Rodriguez,
When comparing the chances of producing false positives and B. Magnini, “Automatic assessment of students’ free-text answers
underpinned by the combination of a bleu-inspired algorithm and latent
with the existing base techniques as shown in Table I, the semantic analysis,” in Proceedings of the 18th International FLAIRS
ensemble approach is slightly worse than the other techniques Conference, Clearwater Beach, Florida, May 2005.

493
[2] T. Landauer, D. Laham, B. Rehder, and M. E. Schreiner, “How well can
passage meaning be derived without using word order? a comparison of
latent semantic analysis and humans,” in Proceedings of the 19th Annual
Conference of the Cognitive Science Society, 1997.
[3] T. Landauer, P. Foltz, and D. Laham, “Introduction to latent semantic
analysis,” Discourse Processes, vol. 25, pp. 259–284, 1998.
[4] I. Zipitria, J. Elorriaga, A. Arruate, and A. de IIarraza, “From human
to automatic summary evaluation,” in 7th International Conference on
Intelligent Tutoring System, 2004.
[5] M. Franzke and L. Streeter, “Building student summarization, writing
and reading comprehension skills with guided practice and automated
feedback,” Highlights From Research at the University of Colorado, A
white paper from Pearson Knowledge Technologies, 2006.
[6] D. Pérez, E. Alfonseca, and P. Rodrı́guez, “Upper bounds of the
BLEU algorithm applied to assessing student essays,” in Proceedings of
the 30th International Association for Educational Assessment (IAEA)
Conference, 2004.
[7] C.-Y. Lin, “ROUGE: a package for automatic evaluation of summaries,”
in Proceedings of the Workshop on Text Summarization Branches Out
(WAS 2004), Barcelona, Spain, July 2004.
[8] C.-Y. Lin and E. Hovy, “Automatic evaluation of summaries using n-
gram co-occurrence statistics,” in Proceedings of the 2003 Conference
of the North American Chapter of the Association for Computational
Linguistics on Human Language Technology, 2003, pp. 71–78.
[9] G. A. Miller, C. Fellbaum, R. Tengi, P. Wakefield, R. Poddar, H. Lan-
gone, and B. Haskell, WordNet: a lexical database for the English
language, Princeton University Cognitive Science Laboratory, 2006.
[10] K. Papineni, S. Roukos, T. Ward, and W. jing Zhu, “BLEU: A method
for automatic evaluation of machine translation,” in Proceedings of the
40th Annual Meeting of the Association for Computational Linguistics,
2002, pp. 311–318.
[11] K. Rajamanikum, English language (Yearly) Worked Solutions. Redspot
Publishing Singapore, 2000.
[12] J. Lee, O-Level English. Singapore Asian Publications (S) Pte Ltd,
2005.

494
2009 International Conference on Computer Engineering and Technology

A fast reassembly methodology for polygon fragment

Gang XU, Yi XIAN


Department of Electrical and Electronic Engineering
North China Electric Power University
Beijing 102206, China
pxugang@163.com, xianyi0743@hotmail.com

Abstract—A new general methodology is introduced for


computer-aided reassembly of the polygon image fragments. II. REASSEMBLY METHODOLOGY BASED ON CORNER
Since polygon image fragment has a characteristic that it has DETECTION AND GRAY CORRELATION
obvious corners, this methodology takes advantage of such
characteristic, and detects the corners by Hough transform A. Fragment image pretreatment
and fuzzy reasoning. Meanwhile, it computes the length of each After we obtain an image with some fragments, as shown
side, compares the side length, finds out the sides with equal
Figure 1, each fragment is separated from the background
length in different fragments, and then computes the gray
using image segmentation algorithm. Subsequently, each
correlation of equal sides to determine the most optimal
matching location for reassembly. Experimental results show
fragment contour is obtained using following quite classical
that the reassembly methodology for polygon fragment based method.
on corner alignment and gray correlation is effective and fast.

Keywords—Fragment reassembly, corner detection, Hough


transform, fuzzy reasoning, gray correlation.

I. INTRODUCTION
The problem of image fragment reassembly is a novel
and typical application in the field of computer vision,
pattern recognition and image analysis. In the computer
vision domain, it can be approximately viewed as the jigsaw
puzzle problem which has been researched for some years,
[1], [2]. At present, the hard, tedious and repetitive works of Figure 1. Original fragments image.
reassembling image fragments are still completed artificially
in the fields of reassembling information fragments, judicial The color depth of each fragment decreases from 256 to
authentication and cultural relic fragments repair. So how to black and white under a threshold. Therefore, the whole
use computer to finish reassembly is one of the important fragment is white and its background black. Then we can
problems for many archaeologists and criminologists. execute contour trace algorithm to generate the fragment
The hot research topic aims at irregular curve edge contour in the form necessary for subsequent analysis. At the
fragment whose contour is unique. Therefore, we can same time, the gray values on the contours have been
reassemble the fragments using their contours, [3], [4], [5], recorded.
[6]. However, another type of fragment, irregular polygon B. Corner detection based on Hough transform and fuzzy
fragment, has seldom been researched. The most usual reasoning
example is paper fragment from paper shredder, whose sides
This paper aims at irregular polygon fragment, so the
are straight lines. Because the sides on polygon contour are
corner is defined as the intersection point between two
the same object in shape for computer, if we use the
straight lines, and a typical corner is shown in Figure 2a.
aforesaid contour matching methodology to deal with such
Because the corner is an important feature point on contour,
kind of fragment, there will be so much redundant and wrong
there are numbers of detection methods in the past. [7], [8],
matching-pair that the reassembly work will be failed. In
[9], [10], [11].
reaction to the irregular polygon fragment, we must take
The corner detection method based on Hough transform,
advantages of shape and gray information in fragment image,
which uses the characteristic that contour corner has two
so this paper proposes a polygon fragment reassembly
peaks in the Hough transform mapping space, can find out
methodology based on corner alignment and gray
the corner accurately. According to the principle of Hough
correlation, which proved to be correct by abundant
transform, the equation of the straight line which goes
instances.
through the origin can be represented as

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 495


DOI 10.1109/ICCET.2009.144
x sin θ + y cos θ = 0 . (1) arm i j 2 = max {θ j } . (3)
j∈[1,180 ]∩ j ≠ j 1

The formula has only one parameter θ , and


y Obviously, if pi is a corner, the values of arm i j 1 and
θ = arctg ( − ) . It illuminates that if one straight line
x arm i j 2 will be big or large. Hence, arm i j 1 and arm i j 2 are
which goes through the origin, all feature points on line will
good measures as evidences for pi to be a corner. To deal
have the same value θ , and a peak will be in mapping space.
If the origin is a corner, there will be two peaks in the with these evidences for existence of corner at semantic level,
mapping space, as shown in Figure 2b. we introduce fuzzy sets to represent them. The fuzzy
membership values for arm i j 1 and arm i j 2 are determined as
shown graphically in Figure 4a and Figure 4b.
Definition 2. Every point pi on contour has an angle with
front point and behind point, and the angle value is

δ i = ∠p i + L _ Hough p i p i − L _ Hough , (4)

then,

2
Figure 2. (a) A typical corner; (b) corner’s Hough transform mapping
space; there are two peaks in the mapping space.
δ i* = ∑ω
k = −2
k δ i+ k , (5)

where {ω k } are smooth weights. The fuzzy membership


value for δ i* is determined as shown graphically in Figure
4c.

Figure 3. A part of practical contour with noise, point P is a corner.

The corner is a partial feature on contour, so we can


execute Hough transform in a sliding window. In practical Figure 4. Determining fuzzy membership values; (a)quality
application, the actual contour is always influenced by arm i
j1
arm i j 2
fuzzy membership; (b)quality fuzzy membership;
contour extraction error and various kinds of noise, as shown
in Figure 3, so that the traditional corner detection method δ*
(c)quality i fuzzy membership.
must enlarge the sliding window to withstand noise. This
problem will make the amount of computation increase. In The conclusion whether current point p i is a corner has
this situation, this paper proposes a new corner detection
method based on Hough transform and fuzzy reasoning to two conclusion subsets {YES , NO } , and then the membership
reduce the sliding window and withstand the noise. value of p i with respect to class YES is calculated as
In the method, we can choose a small sliding window
whose length is L _ Hough for Hough transform and obtain
μ YES ( pi ) = μ big ( pi ) ∧ μ l arg e ( pi ) ∨ μ bend ( pi ) . (6)
the angle values of current point p i in mapping space, [11].
Definition 1. Every point on contour has 180 θj (here, the From the formula, we can know whether the point p i is
quantification precision of Hough transform is 1 ), then the a corner. Using fuzzy reasoning can strengthen anti-noise
maximal peak of the current computing point pi in mapping robust of corner detection method based on Hough transform
space is and shorten the sliding window to reduce amount of
computation.
arm i j1 = max {θ j } , (2) C. Fragment contour rotation
j∈[1,180 ]
Fragment contour rotation is a very important step for
fragment reassembly. After contour corner detection, we can
and the second maximal peak is
obtain the coordinates of corner, and we can also compute

496
the length and angle of every side. Subsequently, find out the Calculate and find out the minimal distance Dmin ( X 0 , X l )
equal length sides, and calculate the difference between to determine the accurate matching location. The
equal length sides’ angle, as shown in Figure 5. The error corresponding l of Dmin ( X 0 , X l ) is the optimal matching
Δp of angle depends on quantification precision of Hough
location between two sides.
transform, and rotation can be executed only γ ,
γ = α − β ± 2Δp . So we can obtain the optimal matching
angle between two fragments by 5 rotation computations. Of
course, rotation around the origin by an angle γ moves
point ( x, y ) via

⎡ Y ⎤ ⎡cos(γ ) − sin(γ ) ⎤ ⎡ y ⎤ . (7)


⎢ X ⎥ = ⎢ sin(γ ) cos(γ ) ⎥ ⎢ x ⎥
Figure 6. Gray correlation between matching sides; (a) the sides L1 and
⎣ ⎦ ⎣ ⎦⎣ ⎦ L2; (b) the computing result of gray correlation between two sides.

There are two true matching sides, L1 and L2, as shown


in Figure 6a. From optimal matching location setting forward
38 pixels as the starting offset, shift backwards one pixel
every computation. And there are 50 computing values under
different offsets. As shown in Figure 6b, the optimal
matching location is determined at offset 38 whose
corresponding Dmin is 313.7.
E. Methodology represent and analysis
Figure 5. Rotation between two fragments. A polygon fragment reassembly system has been
developed to implement the aforementioned algorithm, and
Direct application of this formula probably reduces the the Figure 7 shows the flow chart of the system. After the
number of pixels on contour, because the rotation corner detection of all fragments, we can obtain some ( ≥ 2 )
computation possibly generates a small quantity of length matching sides. If the number of matching sides
coincidence points. In order to solve the problem, we can use exceeds 2, the true matching sides will be easily
averaging method to determine the gray value at the distinguished through gray correlation of matching sides.
coincidence point, and then re-execute the contour trace The concrete matching process in system is as follow:
algorithm to rotated contour. 1) If the number of length matching sides is 2, fix one
D. Gray correlation matching fragment and move the other fragment to align the one
corner at the fixed matching side. Subsequently, rotate the
In order to find out accurate matching location or
distinguish the true matching sides apart, we must compute second fragment contour around the aligned corner and
the gray correlation among equal length sides. The compute the optimal matching angle, and then compute the
measurement of gray correlation can be represented by optimal matching location by gray correlation. Lastly, rotate
distance between two contour gray vectors. Suppose that the the whole second fragment to complete the reassembly
equal length side has L pixels, the gray value of every pixel process.
is xi , and then the gray vectors of two sides are represented 2) If the number of length matching sides is n , n>2 , we
as must firstly determine the true matching sides using gray
correlation of contour, and then execute the step (1).
X 0 = {x1 , x2 , x3 ,..., x L } ; (8) 3) Detect the corner of new fragment contour from step
(1), and set new fragment as the fixed fragment. Then find
out the matching sides to execute step (1) or (2), until all
X l = {x1' +l , x2' +l ,..., xL' +l } . (9) fragments have been reassembled.
The maximal amount of computation of reassembly
methodology attributes to Hough transform, because the
Here, X 0 is the gray vector of the fixed fragment contour, transform is executed at every point on contour. Suppose that
l can be set at will, and it is set as {− 2,−1,0,1,2} in this paper. the fragment number is M , the pixel number in each
The distance between two gray vectors is fragment is NPi , i ∈(1,2,...,M) , and length of each fragment
contour is NC i .Then Hough transform needs
Dl ( X 0 , X l ) = X 0 − X l = ( X 0 − X l )( X 0 − X l )T . (10) M

∑ NC × L _ Hough multiplication and addition. The other big


i =1
i

amount of computation attributes to fragment rotation, and it

497
M −1
III. EXPERIMENTAL RESULTS
needs
∑ NP i
multiplication and addition. According to the
i =1 In order to verify the possibility and effect of the
analysis, the amount of computation lies on the number and fragment reassembly methodology, a test was done with a
size of fragments and L _ Hough . In this methodology, we scan image from a part of newspaper, as shown in Fig. 1.
can use a smaller value of L _ Hough , so the amount of The computer’s CPU frequency is 2.8GHz, EMS memory is
computation can be reduced obviously. For a certain size 768Mb, computing software is Matlab 7.0, and image size is
image, the ultimate value of amount of computation is 520×540 pixels.
certain, as shown in Figure 8, and that is calculating all The parameter values used in reassembly process was set
pixels in image. But in practice, it is impossible. Therefore, as follow:
the polygon fragment reassembly methodology based on a) two different values of L _ Hough : First 60, then
corner alignment and gray correlation is effective and fast. 30;
b) M = 7.
We firstly set Hough transform sliding window,
L _ Hough = 60 . The corner detection method in
reassembly process was used with method based on Hough
transform and fuzzy reasoning and method based on Hough
transform, [9]. Both of the reassembly processes with
different corner detection methods were completed, and the
reassembly results were right. Both of the runtime we used
were less than 3 seconds.
Then, we set Hough transform sliding window,
L _ Hough = 30 .As above, we used the reassembly
methodology with different corner detection methods. This
time, only one corner detection method based on Hough
transform and fuzzy reasoning had completed the reassembly
process, and runtime we used was less than 2 seconds. And
the other method failed, because it couldn’t find the correct
corner. From these experiments, we know that the corner
detection method based on Hough transform and fuzzy
reasoning has the better anti-noise performance and faster
computing speed. They also prove that the polygon fragment
reassembly methodology based on corner alignment and gray
correlation is effective and fast. The correct reassembly
result is shown in Figure 9. We still have completed some
other experiments such as shown in Figure 10, and the
reassembly runtimes are shown in Table I.

Figure 7. The flow chart of the actual reassembly system.

(a) (b)
Figure 9. Fragment reassembly result; (a) the contour reassembly result;
(b) the complete reassembly result.

During the experiments, we find that the scan precision


of paper fragments is also an important reason for successful
reassembly and amount of computation. If the scan precision
is too low, incorrect matching will increase and even lead to
reassembly failure. Oppositely, if scan precision is too high,
Figure 8. Relationship among computing cost, number of fragment and
the amount of computation will increase a lot. So we need to
length of sliding window. choose an appropriate scan precision in actual experiment.

498
TABLE I. RUNTIME IN THE DIFFERENT EXPERIMENTS [4] da Gama Leitao H.C., Stolfi J, “A Multiscale Method for the
Reassembly of Two-Dimensional Fragmented Objects”, IEEE
Type of Size M L _ Hough Runtime(s Transactions on Pattern Analysis and Machine Intelligence, Sep 2002,
image ) 24(9), pp. 1239-1251.
newspaper 500×700 9 30 <2
newspaper 500×1000 12 25 <3 [5] RAO Rui-ling, JIN Xue-feng, LU Huai-wei, “A Method of Contour
newspaper 1500×1000 18 30 <5 Matching Based on Chain Code”, Computing Technology and
Automation, Jun 2007, 26(2), pp. 34-37.
picture 1944×2592 28 21 <6
picture 3072×2048 40 25 <11
[6] ZHOU Feng, HUANG Xiao-ming, “Algorithm of 2D Contours
Matching Based on Angle-sequence”, Science Technology and
Engineering, Aug 2007, 7(15), pp. 3757-3760.
IV. CONCLUSION
In this paper, a new fragment reassembly methodology [7] E.R.Davies, MA, DPhil, etc, “Application of the generalized Hough
based on corner alignment and gray correlation is proposed transform to corner detection”, IEE Proceedings, Jan 1988, 135(1), pp.
for polygon image fragment. Using the obvious feature 49-54.
corners on polygon contour and gray correlation among
fragments, we can complete fragment reassembly process [8] Pritchard A.J., Sangwine S.J., Horne R.E.N, “Corner and Curve
Detection along a Boundary Using Line Segment Triangles”, IEE
correctly. This methodology proves to be fast and highly Colloquium on Hough Transforms, 7 May 1993, P2/1-P2/4.
effective both in theory and practical experiments.
REFERENCES [9] Liyuan Li, Weinan Chen, “Corner detection and interpretation on
planar curves using fuzzy reasoning”, IEEE Transactions on Pattern
[1] Freeman H , Garder L, “Apictorial jigsaw puzzles: the computer Analysis and Machine Intelligence, Nov 1999, 21(11), pp. 1204-
solution of a problem in pattern recognition”, IEEE Trans. Elec. 1210.
Comp, 1964, 13, pp. 118-127.
[10] Khattak N.S., Stockman G, “Shape and Structure for Image Matching
[2] Burdea B.G., Wolfson H.J., “Solving Jigsaw Puzzles by a Robot”, and Retrieval”, Proceedings of the IEEE International Conference on
IEEE Transactions on Robotics and Automation, Dec 1989, 5(6), pp. Machine Vision, Dec 2007, pp.79-84.
752-764.
[11] Chen Hongbo, Xu Xiaorong, “Corner Detection Based On Improved
[3] Papaodysseus C, Panagopoulos T, Exarhos M, etc, “Contour-Shape Hough Transform”, Computer Applications and Software, Feb 2008,
Based Reconstruction of Fragmented, 1600 BC Wall Paintings”, 25(2), pp. 57-60/76.
IEEE Transactions on Signal Processing, June 2002, 50(6), pp. 1277-
1288.

(a) (b) (c)

Figure 10. An example of picture fragment reassembly; (a) the initial fragment image; (b) the contour reassembly result; (c) the complete reassembly result.

499
2009 International Conference on Computer Engineering and Technology

A Data Mining Approach to Modeling the Behaviors of Telecom Clients


LIU Xiaodong
Department of Computer Software Engineer
Shenzhen Institute of Information Technology
Shenzhen, P.R.China
liuxd@sziit.com.cn

Abstract:We begin this paper by describing our rationale and (1)Real time detection. It can find exceptional clients
overall design of an exceptional client model based on data mining in a few days or even more short time, which is helpful for
algorithm. Then, we continue by summarizing the simulation CRM to adjust configure quickly.
details and describing the type of results obtained from
implementing the proposed system, which consists of three (2)Automatically detection. Most of the exceptional
heterogeneous data mining algorithms. The idea behind the model client distinguish job can be automatically done without
is that three heterogeneous data mining algorithms are combined manual work, which means short time and great efficiency.
in the phase of data processing and one algorithm’s outcome is
another algorithm’s input. By using the method of neural network, (3)Adaptation to new exceptional client detection.
the exceptional client attribute weight is calculated based on the DMECD can find interesting data attributes based on
original dada. The characteristics of exceptional client are decision tree although exceptional client’s character is
identified accordingly by using the method of decision tree based protean. This self-adapted attribute reduction method based
on the attribute weight. Then, the distinguishing model is on decision tree algorithm can find not only all exceptional
generated adaptively on the basis of clustering. The combination clients and its variation, but also new exceptional client type.
of the three algorithms helps distinguish exceptional client
effectively. It can not only alarm the existing system but also The paper is organized as follows. In the next section the
analyze and specify the data of exceptional client and consequently principle and process that relates to our algorithm DMECD
supports the distinguishing system. (a Data Mining method based on Exceptional Client
Distinguish) is presented, followed by the experimental setup
used in this study and analyze the results in Section 3. We
Key Words: Data Mining;Neural network;Decision Tree conclude with a summary of our contributions and raise
;Clustering;Real Distinguishing several issues for future work in Section 4.

I. INTRODUCTION II. DMECD


Exceptional Client Distinguish(ECD)is used to detect A. Principles of DMECD
exceptional clients from common clients, which is very In this section, we present an algorithm DMECD (a Data
popular in the field of financial and telecom. Generally, Mining method based on Exceptional Client Distinguish) for
client distinguish includes credit card exceptional client distinguishing exceptional clients. Firstly, the proposed
distinguish and telecom exceptional client distinguish[1]. method belongs to the family of exceptional distinguish
methods, which is one of the most important distinguish
This paper is concerned with telecom client distinguish
methods[2]. The principle of exceptional distinguish is to
technique. Traditional telecom exceptional client distinguish
classify new data by the normal data model which is derived
technique depends on manual history data analysis by
from history data.
telecom experts. The idea of this method is to find character
of exceptional client, and then apply the rule in the client Secondly, self-adapted distinguish model method is used
relation management system. This kind of work pattern has in DMECD. The principle of this method is described by the
two drawbacks. Firstly, the manual history data analysis by following figure 1. Data is collected from related systems
telecom experts uses more person and money. Secondly, it and cleaned in the part of Data Preparation. Then in the part
often misses the best chance to find exceptional client after a of Attribute Reduction, attributes are reduced by weights,
long time for searching exceptional client. which are computed by specific algorithm. In the next part,
Characters of exceptional client behavior are generated by
A novel data mining based exceptional client distinguish
specific algorithm. The result of this part can be used in the
method (DMECD) is proposed in this paper, which
fourth part and the fifth part in the sense of those characters
combines neural network algorithm, decision tree algorithm,
is high abstracts from raw data. In part 4, Self-adapted
and clustering algorithm. This method can find exceptional
distinguish model is generated by specific self-study
clients automatically, real time, and effectively, which gives
algorithm from history data and characters. In part 5,
not only alarm to the system, but also character rules to the
DMECD can distinguish exceptional clients automatically
client serve department. The following is the advantage of
depends on the self-adapted distinguish model and characters
DMECD comparing with traditional method:
of behavior.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 500


DOI 10.1109/ICCET.2009.164
1. Data 2. Attribute yn is the output variable. Let { Ai 1≤ i ≤ MaxAtt} be
Preparation Reduction the set of attributes of a domain, and for each Ai ,
{ Vij 1 ≤ j ≤ MaxAttVali} be its value set, where MaxAtt is
the number of attributes, and MaxAttVali is the number of
3. Characters of
different values of Ai . Since the focus of this paper is on
Behavior
classification problems, yn takes values from a set of
5. To distinguish
predefined values, which is yn ∈ {Cl1 , …, Clc } , where c is the
exceptional clients
number of classes, xn takes values from Vij . A classifier C is
4. Self-adapted
a function that is applied to the training set D to construct a
distinguish model
model C(D). The generated model is a mapping from the
input space X to the discrete output variable Y. When used
Fig.1 Self-adapted distinguish model generation
as a predictor C( xi , D), it assigns a y value to the
Self-adapted model methods based on exceptional example xi .
distinguish need specific algorithms. Clustering algorithm in
the field of data mining is one of the choosing methods[3]. To characterize correlation of yn and Ai , we first
The idea of clustering algorithm is that similar data belong to propose to use weights of attributes. Classifiers
one cluster. The distance between same type data is closer C1 ( D), C 2 ( D), …, C T ( D ) change weights of attributes and
than the distance between different type data. Clustering
weights of instances when they misclassify one instance.
algorithm can generate normal client cluster from history
Then rules will be constructed from the attributes. One of the
data by adjusting algorithm parameters, while the distance of
challenges in constructing rules is to choose criteria for
exceptional client will be faraway from the center of normal
partitioning the instances at each node. Some examples of
cluster.
the different node splitting criteria include entropy or its
Clustering algorithm parameters include attributes, such variants, the chi-square statistic, the G statistic, and the GINI
as average fee, social circle. The selection of these index of diversity. Despite these efforts, there appears to be
parameters is very important to the performance of clustering no single node splitting that performs the best in all cases;
algorithm. In this work, attributes reduction is implemented nonetheless there is little doubt that random splitting
with the neural network learning algorithm, which is a more performs the worst.
direct implementation of the theory. Some evidence exists
Our node splitting criteria is a variant of entropy. Prior to
that DMECD works better in practice. The process of
introducing it we defined some notation used throughout this
DMECD for the study is discussed in detail in the next
section. section. Of N instances, N Cl k belong to class Clk .

B. The process of DMECD ∑ k NCl k = N . The decision rule at the node splits these
The process of DMECD includes model generation and instances into V partions, or V child nodes, each of which
exceptional clients distinguish. Three algorithms include has N (v ) instances. In a particular partition, the number of
neural network, decision tree, and clustering in the field of examples of class Clk is denoted by N Cl (v )
. ∑ k N Cl
(v)
= N (v) .
k k
data mining are used to generate models in the DMECD.
This paper focuses on a particular form of data Information gain is based on the calculation of entropy.
(attribute-value vectors), so a brief overview of relevant More specifically the information gain resulting from
concepts and terminology seems appropriate. We assume splitting the instances based on attribute Ai can be written
that data is described using a fixed collection of features or as,
attributes. A single case is then a vector of values, one for
each attribute, which can also be thought of as a point in the c N Cl k N Cl k v N (v) c
G( Ai )= [ ∑ − ( ) log( )] - [ ∑ − ( ) ∑−
instance space in which there is one dimension for every k =1 N N v =1 N k =1
attribute. (v) (v )
N Cl N Cl
k k
Neural network, decision tree, and clustering are ( ) log( )] (1)
constructed from a training set, which consists of objects. N (v) N (v)
Each object is completely described by a set of attributes and The first term in Eq. (1) is the entropy at the parent node
a class label. The concept underlying a data set is the true and the second term is the weighted entropy of the child
mapping between the attributes and the class. nodes. wA j represents weights of attribute A j . We define
The following will give more details about DMECD. We new information gain as:
assume a given set of N instances, D = ( xn , yn ) with n =
1,… , N, where xn is a multidimensional input vector, and

501
c N Cl k N Cl k wA j For i:= 1 to d do
wG( Ai )= [ ∑ −( ) log( )] - ( )
k =1 N N 1 − wA j {
(v ) (v) For k:= 1 to n do
v
N (v) c N N
[∑ − ( ) ∑ −( Cl k
(v)
) log( Cl k
(v)
)] (2)
v =1 N k =1 N N { Choose the attribute A j which has the smallest
weights.
The attribute which will be chosen is the one that results
in the largest attribute weight information gain. So the bigger Induce classifier Ĉ t , using training data D
wA j is, the more important it is. Refer to Table 1 for details
of the DMECD boosting algorithm. Calculate ε t of Ĉ t on the training data.
Table 1. DMECD Induce classifier Ĉ t , using training data D without A j
Given:
Calculate error rate εˆ t of Ĉ t on the training data.
A data set D contains n training instances xi with
Compare ε t and εˆ t
labels yi , d attributes A j , A Maximum trials, T. Base
learner, C. If ε t > εˆ t Then, Delete A j from D, j=j-1;
/*Initialization*/
Else Return Tree Ĉ t based on attribute A j
For j:= 1 to d do wA0j = 1 / d /* initial weights of all
attributes */ }

For t:= 1 to T do }
/* Self-adapted distinguish model */
{Induce classifier C t , using weighted training data and
C. Function Cluster( Ĉ t )
Calculate attribute error rate εAt of C t on the training {If stop Criteria( Ĉ t ) = True
data.
Generate a subcluster: Cluster j = Rule( D j )
If εAt > 1/2, discard C t and stop.
}
If εAt = 0, then C t gets infinite weight.
/*Re-weight attributes*/
The process of model generation is described by the
if C t ( xi ) ≠ yi then, For j := 1 to d do figure 2.

{if wAtj is concerned with C t ( xi ) = yi Neural net Decision tree


Data 1 Attribute 1 Character 1
Data 2
then wAtj +1 = wAtj /(2εAt ) ……
Attribute 2 Character 2
…… ……
Data n
else, wAtj +1 = wAtj /(2(1 − εAt )) . Attribute m Character m

Renormalizing so that ∑ j wAtj+1 = 1 Self-adapted distinguish model


Clustering
} Cluster 1
/*Construct the order of attribute Aj / Cluster 2
……
The order of attribute A j is obtained by comparing the Cluster m
t
attribute weights wA j . Fig.2 The process of model generation

/* Decision tree */

502
Attribute reduction, character generation, and exceptional III. EXPERIMENTAL RESULTS
model are three main steps of DMECD. The following will In this section we present experiments where the
give more details about these steps. DMECD is used to one city telecom database[4]. First, the
(1)Attribute reduction experimental setting is described, and then, results of the
experiments are presented. The experiments are conducted
There are 141 exceptional clients attributes, which can be on one city telecom database, which contains 263654 records
divided into three parts that are client data, call behavior, and about telecom consumer.
consume data. Client data contains attributes such as
SUBSCRBID, AREAID, ORDERDATE, REMOVEDATE, We present accuracy values and check time for DMECD
and PRCPLNID(telecom product type). In the part of call in the testing dataset in table 2. D represents DMECD, while
behavior, there are MAXUSERNUM(the max calls of one T represents traditional system.
client in one month), AVGTIME(the average call time of TABLE 2. PERFORMANCE OF DMECD IN DISTINGUISHING EXCEPTIONAL
one client in one month), and MAXCIRCLENUM(the CLIENTS
number of different phone number that one client calls in one exceptional Check time Accuracy
month). ID clients (min) (%)
(%) D T D T
Consume data contains attributes, such as
1. 0.3 1 5 0 0
P_ACC1(client’s account of last month), P_ACC2(client’s
2. 0.6 2 20 67 46
account of this month), and WMAXCOST(client’s max
account in a week). 3. 1.2 8 40 72 53
4. 1.8 12 60 78 62
If 141 exceptional client attributes are all added into the
5. 2.4 16 80 82 65
model, the result of the model will be very complex and
sensitive. Such model will have a high probability to make a 6. 3.0 23 120 86 68
wrong prediction for the new data. So, neural network 7. 3.7 27 160 91 72
algorithm is used to calculate attributes weight. Only those
attributes which weight is bigger than the average can be From Table 1 one can see that DMECD works better
selected to the model. than traditional system. The accuracy of traditional system in
the training dataset is also lower than that of DMECD in the
The neural network algorithm adopted in this study was a
training dataset.
three-layer, feed-forward network with a back-propagation
algorithm. The input layer consisted of 141 neurons that DMECD and traditional system cannot find exceptional
corresponded with the 3 part features of each client; the clients in the training dataset when the proportion of
hidden layer consisted of 7 neurons decided experientially; exceptional clients is lower than 0.3%. But DMECD can
the output layer consisted of one neuron, whose output find exceptional clients in a real dataset, because the
values ranged from 0 to 1, indicating the likelihood of proportion of exceptional clients is higher than 3%in a real
exception. The network was trained by the environment.
Levenberg-Marquardt rule, and the training was complete
when the sum of square of error was less than 0.001. IV. CONCLUSIONS
The output of training sample is the weight order of 141 Our study highlighted some new aspects in detecting
attribute. The more big one attribute is, the more important exceptional clients from common clients, which is very
one attribute to the conclusion about one client is normal or popular in the field of financial and telecom. While we made
not. The output of neural network algorithm cannot give a several new observations that make three data mining
rule about the result. So we need decision tree algorithm to methods useful in the field of detecting exceptional, there are
describe the result. Because more attributes are added to still some issues that require investigation in future research.
decision tree algorithm can make a worse prediction for new
1. We find exceptional clients in the training dataset and
data, we use the neural network algorithm to reduce the
the experiments show this to be a successful approach. But
attributes. The detail will be described in the follow section.
we don’t compute the impact of noise data, which is exist in
(2)Client character generation the real environment. Are there methods to make our
algorithms more robust when the dataset is very noisy?
The output of neural network algorithm is the weight
order of 141 attribute. But how will we reduce the attributes? 2. How can our methods in the field of detecting
The key is that we need decision tree algorithm to describe exceptional clients be applied to other fields? How can our
the result. Because more attributes are added to decision tree three data mining algorithms be replaced by other
algorithm can make a worse prediction for new data, we use algorithms, such as k-nearest-neighbors?
the neural network algorithm to reduce the attributes. The Data mining classification algorithms have been
detail will be described in the follow section. demonstrated spectacular success for learning tasks, and we
expect to see them used significantly more than they are
today.

503
REFERENCES [3] Shehroz S.Khan, Amir Ahmad. Cluster center initialization algorithm
for K-means clustering[J], Pattern Recognition
[1] Rui Xu, Donald Wunsch II. Survey of Clustering Algorithm[J]. IEEE Letters,2004(25):1293-1302.
Transactions on Neural Networks, 2005,16(3):645-678.
[4] Newman D. UCI Repository of machine learning databases[EB/OL].
[2] Donato Malerba. Mining Model Trees from Spatial Data[A]. Jaime G. http://www.ics.uci.edu/~mlearn/MLRepository.html, 2007.
Carbonel. Knowledge Discovery in Databases: PKDD 2005 [C]. Berlin
Heidelberg, Germany: Springer-Verlag Press, 2005. 169-180.

504
2009 International Conference on Computer Engineering and Technology

Simulating Fuzzy Manufacturing System: Case Study

A. Azadeh, S. M. Hatefi, H. Kor


Department of Industrial Engineering, College of Engineering,
University of Tehran
Tehran, Iran
aazadeh@ut.ac.ir, s_m_hatefi, hkor@ut.ac.ir

Abstract—This paper presents an approach by considering once the system is described and the goals specified, the
fuzzy parameters in simulation model to obtain fuzzy simulation system drives itself to goal achievement.
throughputs in manufacturing systems. The basic subject of Several studies show the applications of intelligent
simulation is the probabilistic approach to describing real simulation in the area of production systems. Intelligent
world uncertainty. However, in many cases we do not have
simulation environments are also proposed for information
information that would be precise enough to build the
corresponding probabilistic model or there are some human systems, just-in-time and aerospace manufacturing systems
factors that prevent doing so. In such conditions the statistical in [6-9].
and mathematical tools of fuzzy set theory may be successfully In simulation all natural uncertainties are usually
used. This paper applies t-test for validating the results considered in stochastic sense. Fuzzy set theory provides
obtained from conventional simulation and fuzzy simulation in new tools to represent uncertainty. The fuzzy approach has
comparison with the actual data of manufacturing system. been used to assist the design of manufacturing systems.
Then, we use fuzzy simulation to improve the performance of Application to plant layout has been proposed in [10-11].
manufacturing system by considering production constraints, Fuzzy methods may also be used to choose the most
system limitations and desired targets. The design of fuzzy
efficient maintenance approach .These methods were used
simulation is discussed for an actual and large multi product
assembly shop. in [12-13]. Various applications have been issued from
fuzzy concept. In project management, where activity
Keywords- Intelligent Simulation; Performance duration times are assumed to be random fuzzy variables,
Improvement; Fuzzy Parameters; Fuzzy Simulation; Multi project scheduling is considered with mixed uncertainty of
Product Assembly Shop randomness and fuzziness. One application of this approach
was published in [14].
I. INTRODUCTION A Fuzzy Inference System is proposed as an alternative
approach to handle effectively the impreciseness and
Computer simulations are exquisite tools for modeling
uncertainty that are normally found in supplier selection
and analyzing the true performance of the evolving
processes. Applications of fuzzy set theory in supply chain
production systems. An intelligent computer simulation
management are demonstrated in [15]. Fuzzy production
environment would allow the designers of manufacturing
planning problems with vagueness parameters were
systems to predict and provide the means to control the
considered in [16-17].
relevant disturbances to an acceptable degree of
Therefore it is the objective of this study to describe
completeness. It would automatically enable us to foresee
fuzzy simulation because of uncertainties and human factors
the behavior of such systems in normal and increased
that exist in manufacturing systems. Using fuzzy approach
production situations [1-2].Furthermore, it should
is one of the best ways that reflects uncertainties in systems.
intelligently guide us to a smoother and more efficient
The simple and natural way to do this is to replace in our
performance for production systems.
model the probability densities by the similar fuzzy
An integrated computer simulation environment for
intervals. The fuzzy simulation approach is verified and
optimization of production systems is proposed in [3].
validated t-test. Then, fuzzy simulation is used to optimize
Reference [4] proposes an intelligent simulation
the system performance considering production constraints,
environment based on the idea of machine learning and
system limitations and desired targets. The prescribed
improvement mechanism. They describe the potential of
framework is discussed for a large multi product assembly
learning in simulation as means for extracting rules to be
shop with conventional and fuzzy simulation.
used in expert systems. Reference [5] proposes a goal-
oriented simulation environment for optimization of
manufacturing systems. In a goal-oriented environment,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 505


DOI 10.1109/ICCET.2009.216
II. METHODOLOGY
We will be using fuzzy numbers for parameters in Historical data
probability density functions (probability mass functions, Next D Next D
the discrete case) and in this section we show how we obtain Let 0 d D d 1
these fuzzy numbers from confidence intervals [22]. Let X
be a random variable with probability density function (or
Prepare confidence interval
probability mass function) f ( x , T ) for single parameter T .
(1  D )100% for all parameters
It is easy to generalize our method to the case where T is a in probability density functions
vector of parameters. Assume that T is unknown and it
must be estimated from a random sample X 1 ,..., X n .Let Fuzzy inputs
Y u (X 1 ,..., X n ) be a statistic used to estimate T .Given (Parameters)
the values of these random variables X i x i ,1 d i d n , we

Crisp outputs
Crisp inputs
Generate random
obtain a point estimate Tˆ y u (x 1 ,..., x n ) for T . We numbers from
would never expect this point estimate to exactly equal T so confidence intervals
we often also compute a (1  E )100% confidence interval
for T . We are using E here since D , usually employed for Discrete Event
simulation
confidence interval, is reserved for D  cuts of fuzzy
numbers. In this confidence interval one usually sets E
Set of crisp outputs
equal to 0.10, 0.05 or 0.01.
We propose to find the (1  E )100% confidence
Fuzzy outputs
interval for all 0.01 d E d 1 . Starting at 0.01 is arbitrary and
you could begin at 0.001 or 0.005 etc. Denote this
Fuzzy D  cuts
confidence interval as ¬ªT1 ( E ),T 2 ( E ) ¼º . Outputs
For 0.01 d E d 1 . Add to this confidence interval
Figure 1. Modeling and fuzzy simulation
ªTˆ,Tˆ º for 0% confidence interval for T . Then we have
¬ ¼
(1  E )100% confidence interval for 0.01 d E d 1 . Now III. ACTUAL PROTOTYPE
place these confidence intervals, on the top of the other, to
To show how an intelligent environment could be
produce a triangular shaped fuzzy number T whose D  cuts designed and developed, a large manufacturer of electric
are the confidence intervals. We motors was considered. The system being studied is
have: T (D ) ª¬T1 (D ), T 2 (D ) º¼ For all 0.01 d D d 1 .In this composed of three units: 1) coil operation shop, 2) core
paper we obtain crisp number from triangular shaped fuzzy insulation shop and 3) final assembly shop. The semi-
finished products from coil operation and core insulation
T (D )  T 2 (D )
number by 1 for each D  cuts . shops are required to go under special treatments and are
2 therefore sent to other shops outside the system and are
finally routed back to core insulation and final assembly
The fuzzy simulation is the process that produces shops, respectively (Figure 2.). There are 21 manual, semi-
fuzzy outputs Y form fuzzy inputs X using a step-by-step manual and fully automated workstations. The target was
analysis. This process is shown in Figure 1. In fuzzy defined as to determine the strategies required meeting the
simulation, at first we prepare (1  D )100% confidence increased demand by 30 percent. Historical data, general
interval for all parameters in probability density functions. engineering knowledge, specifications and layouts were
Then a fuzzy simulation experiment is started for each collected systematically. In addition, an identification form
random number of the confidence interval (with was developed for each workstation. It contains valuable
triangular random numbers in visual slam) and the results information such as process times, buffer size, number of
{Y} are collected. The output results obtained for the input operators and machines. It also reveals machine speed rates
value of the D -cut are placed together and the gaps are and description of operations of a workstation. Performance
filled to form an interval. That intervals are possible D -cut measures were defined as daily production rates in each the
for the output and so there are used to reconstruct the fuzzy three shops. Process times were collected by a time study
output. methodology and analyzed through a series of robust
statistical techniques. Other information such as machine's

506
Figure 2. A general overview of the assembly shop

and upper bounds of fuzzy parameters


speed rates, buffer sizes, etc. was provided by historical (for D  cuts 0.01,.05, 0.1, 0.3, 0.5, 0.7, 0.9 ). Maximum
data and general engineering knowledge of supervisors. and minimum production rate of system are occurred at
Due to stochastic nature of the processes, the D  cuts 0.01 . The assembly shop was simulated with
distribution functions of several activities were evaluated. conventional and fuzzy approach for one working day and
Goodness of Fit techniques was applied to evaluate the best repeated 100 times. System is idle in 30 percents of days
distribution functions for all activities and processes of the and it has production in 70 percents of days. In fuzzy
assembly shop. An integrated database was designed to simulation we obtain 70 fuzzy throughputs with
contain all of the above information. The conventional D  cuts 0.01 and then defuzzyfy them. The outputs of 70
simulation model was developed by AWESIM simulation ordinary simulations and fuzzy simulations runs were
language . It contains detailed information about the compared with the production rates of 70 working days.we
processes and operations of the assembly shop. To translate calculate absolute of differences between outputs of
the traditional simulation model into the prescribed ordinary simulation and actual production rates and call
approach, the interacting systems namely: Insulating them d1i (i=1,2,…,70) hence calculate absolute of
Varnish and Machine shops should be modeled into the differences between outputs of fuzzy simulation and actual
simulation environment. To create a flexible and parametric production rates and call them d2i (i=1,2,…,70).
environment, a series of Visual SLAM variables and Hence null hypothesis H 0 : Pd d Pd is tested against
network functions must be modeled into the simulation 1 2
program. Furthermore, all variables and constants must be alternative hypothesis H 1 : Pd t Pd .Table I. show the
1 2
changed to global variables and mathematical expressions
and constraints should model system’s limitations such as summary statistics for t-test. The results revealed that at
production capacity, machine tolerances, etc. The simulation D 0.01 the null hypothesis is rejected. Also, from the
must be capable of generating various alternatives (by independent t-test, we conclude that behavior of fuzzy
changing resources and tolerances) until the optimum simulation outputs have significantly greater similarity to
solution is reported. The database should be capable of actual system than ordinary simulation outputs and fuzzy
interacting with the simulation environment through a series approach improve accuracy of simulation in this case study.
of READ and WRITE statements. By designing a sequence Note that the equality of variances of H 0 : V d21 V d22
of rule based conditions, the model searches for the by F-test was tested prior to the t-test. Furthermore, the null
optimum solution in relation to the defined objective. The hypothesis was rejected at D 0.01 . Table II. shows
learned strategies are stored in the integrated database for summary statistics for production rates for assembly shop,
the future use and comparative analysis. This process is conventional simulation and fuzzy simulation. Table III.
repeated until the strategies required to increase the shows the classification of various alternatives in unit three
throughput by 30 percent are reported. The conventional and of the
fuzzy simulation model must be verified and validated prior assembly shop. The number in the boxes below workstation
to translation into intelligent environment. Therefore, it was number indicates the number of additional operators to a
verified and validated against the actual assembly shop. particular workstation. For example, if one operator is added
Daily production rate was chosen as the validation to workstation number eleven, 12.96 percent increase in
parameter. production throughput would be expected. The alternatives
First we obtained fuzzy numbers for parameters in all shown in Table III. are chosen from a set of more than 25
probability density functions. We run simulation with lower scenarios. In fuzzy simulation approach, each scenario is
separately designed, modeled, run and evaluated by the user.

507
TABLE I. SUMMARY STATISTIC RESULTS

Test Statistics Df P-value


H 0 : Pd d Pd vs H 1 : Pd t Pd t-statistic = 2.4849 115.63 0.0072
1 2 1 2
2 2 2 2
H 0 : Vd Vd vs H1 : Vd z Vd F-statistic = 2.5704 (df1,df2)=(69,69) 0.0001
1 2 1 2

TABLE II. RESULTS OF SIMULATION AND ACTUAL PRODUCTION RATE

No. of observations Mean Std. Deviation 95% Confidence Interval


Actual production rate 70 days 72.81 31.99 [65.18, 80.44]
Conventional simulation 70 days 64.04 30.78 [56.70, 71.38]
Fuzzy simulation 70 days 74.69 14.18 [71.31, 78.07]

This approach is a very time-consuming effort and may lead actual system because it reflects uncertainties better than
to human errors. In addition, due to complexity of conventional simulation.
manufacturing systems, a near optimum solution may be
introduced. However, by utilization of the intelligent fuzzy V. CONCLUSION
simulation framework (discussed in this study) the user This paper represented an approach by considering fuzzy
directly obtains the best solution (alternative number 6) parameters (fuzzy inputs) in simulation model to obtain
without confusion in a shorter time. Furthermore, system fuzzy throughputs in manufacturing systems. We used fuzzy
limitation is defined as allowance of addition of up to two numbers from confidence intervals to obtain fuzzy
operators to workstation number 11 and one operator to parameters in probability density function. Finding fuzzy
workstations number 12. Alternative number 6 may be outputs is an iterative process that is guided in modeling and
achieved through a series of learned rules and strategies and fuzzy simulation. To illustrate the prescribed framework, the
flexible and integrated structures of the fuzzy simulation actual system of fuzzy modeling manufacturing are
model of the system being studied. Moreover, the intelligent considered in comparison with the conventional simulation
fuzzy simulation model considers system’s limitation and results. T-test is verified the validity of conventional and
by a rule-base learning mechanism locates the optimum fuzzy simulation in comparison with the actual data of
rather than near optimum solution. The reader should note manufacturing system. Conclusions showed that behavior of
that the percent improvement in throughput remains almost fuzzy simulation outputs is statistically more similar to
the same after one operator is added to workstations number actual manufacturing system than ordinary simulation
11 and 12. However in simulation approach alternative outputs.
number 7 or 8 may be selected if further analysis is not Various alternatives and strategies retrieved to
performed. It means alternatives with the same outcome but improve the performance of system considering
higher costs are proposed. management and economics factors [8] .To sum up, we
would like to point out the following:
IV. SIGNIFICANCE
This study presents an integrated framework for using x Fuzzy Simulation is a powerful tool to help
fuzzy approach in simulation of actual system. It has been production managers in planning, controlling and
shown that fuzzy simulation approach is more applicable in improving the performance of manufacturing
uncertain conditions than conventional simulation and systems.
behavior of fuzzy simulation outputs is statistically more x In practice, it is often impossible or unnecessary to
similar to actual manufacturing system than ordinary use the probability distributions for mathematical
simulation outputs. This result was retrieved by t-test and F- formalization of uncertainties available. Therefore, it
test. Consequently, using fuzzy simulation, considering seems natural to use the fuzzy interval numbers
system’s limitations and all endogenous and exogenous instead of precise probability distributions in the
factors such as management and economics factors, various cases of the real-world system modeling.
strategies were retrieved to improve the performance of x In real-world fuzzy simulation reflects uncertainties
system. The distinct feature of this study is accomplished better than conventional simulation.
by integration of computer simulation, obtaining fuzzy
numbers from confidence intervals, fuzzy simulation and t-
test. In addition, fuzzy simulation may be deployed in the

508
TABLE III. SELECTED ALTERNATIVE BASED ON FUZZY SIMULATION RESULTS

Alternative Workstation Number Fuzzy production rate Percent improvement


Number 11 12 13 15 D cuts 0.01 throughput
1 - - - - [54,59.99,64] -
2 1 - - - [60,67.77,72] 12.96
3 1 1 - - [64,71.89,78] 19.83
4 1 1 1 - [63,72.1,78] 20.18
5 1 1 1 1 [64,72.12,78] 20.22
6 2 1 - - [71,82.74,89] 37.92
7 2 1 1 - [71,82.89,88] 38.17
8 2 1 1 1 [74,82.9,88] 38.19
9 1 2 1 1 [66,74.38,80] 23.98
10 1 1 2 1 [65,72.25,77] 20.43
11 1 1 1 2 [64,72.14,78] 20.25

Computer-Integrated Manufacturing, vol. 23, no.1, pp. 126-


REFERENCES 137, 2007.
[1] M.A. Azadeh, “An algorithm for accomplishment of simulation [12] B. Al-Najjar and I. Alsyouf, “Selecting the most efficient
projects in developing countries: The case of an assembly maintenance approach using fuzzy multiple criteria decision
shop.” Proc. of the Fourth Intl. Conf. on Reliability, making, ” International Journal of Production Economics, vol.
Maintainability and Safety (ICRMS’99), Shanghai, China, 84,pp. 85–100, 2003.
1999. [13] L. Wang, J. Chu and J. Wu, “Selection of optimum
[2] M.A. Azadeh, “Simulation of consolidated performance of maintenance strategies based on a fuzzy analytic hierarchy
man-machine systems.” Proc. Of Europ. Ergonomics Society process,” International Journal of Production Economics, vol.
and Belgium Society of Mechanical Engineering, Brussels, 107, no. 1, pp. 151-163, 2007.
Belgium, 1988. [14] Hua Ke and Baoding Liu, “Project scheduling problem with
[3] A. Batocchio and G.N. Franco, “The theory of constraints mixed uncertainty of randomness and fuzziness, ” European
integrate to computer simulation to analyze the viability of Journal of Operational Research, vol. 183, no. 1, pp. 135-147,
production systems.” Proc.of First Intl. Symp. on Climbing 2007.
and Walking Robot, Brussels, Belgium,1998 [15] D.A Carrera And R.V Mayorga,“Supply chain management: a
[4] B. Khoshnevis and S. Parisay, “Machine learning and modular Fuzzy Inference System approach in supplier
simulation-application in queuing systems.” Simulation, vol. selection for new product development ” Journal of Intelligent
61, pp. 294-302,1993. Manufacturing, vol. 19, pp. 1–12, 2008.
[5] S. Prakash and R.E. Shannon, “Development of a goal directed [16] P.M. Vasant, “Fuzzy production planning and its application
simulation environment for part manufacturing systems.” to decision making,” Journal of Intelligent Manufacturing,
Simulation, vol. 61, pp. 103-115, 1993 vol. 17, pp. 5–12, 2006.
[6] A.A.B. Pritsker, “Decision support systems for engineers and [17] J. Mula, R. Poler and J.P. Garcia-Sabater, “Material
scientists. Intl. Computer Graphics User Show, London Requirement Planning with fuzzy constraints and fuzzy
England, 1985. coefficients,” Fuzzy Sets and Systems, vol. 158, no. 7, vol.
[7] S. Manivannan and C.D. Pegden, “A rule based simulator for 783-793, 2007.
modeling just-in-time manufacturing systems.” Simulation,
vol. 55, pp. 109-117,1990.
[8] M.A. Azadeh,“Design of an intelligent simulation environment
for manufacturing systems.” Proc. of the Third Intl. ICSC
Cong. on World Manufacturing Cong., Symp. on
Manufacturing Systems (ISMS'2001), 24-27 Sep., at the
Center for Integrated Manufacturing Studies, Rochester, New
York, 2001.
[9] M.A. Azadeh and S.F. Ghaderi, “A Framework for Design of
Intelligent Simulation Environment,” Journal of Computer
Science, vol. 2, no. 4, pp. 363-369, 2006.
[10] M. Enea, G. Galante and E. Panascia, “The facility layout
problem approached using a fuzzy model and a genetic
search,” Journal of Intelligent manufacturing, vol. 16, pp.
303–316, 2005.
[11] T. Yang, and C. Hung,“Multiple-attribute decision making
methods for plant layout design problem,” Robotics and

509
2009 International Conference on Computer Engineering and Technology

Research of INS Simulation Technique based on


UnderWater Vehicle Motion Model

Cheng Jian-hua, Li Yu-shen, Shi Jun-yu


School of Automation
Harbin Engineering University
Harbin, Heilongjiang, China
ins_cheng@163.com

Abstract— Considering the dynamic error of Platform inertial INS characteristic testing with the real vehicle has a lot of
navigation system ( INS ) caused by vehicle mobile disadvantages such as high risk, high cost, long time, and
movement, output information of underwater vehicle and easily limited by environment and equipment [2]. Thus,
input information of INS are deeply analyzed. This paper gives computer simulation became the most convenient in testing
the transform relationship among geographical reference INS by assumption of various motion state of underwater
frame, fixed and reference frame which are used to describe vehicle. However, the traditional simulation method can not
movement of underwater vehicle. Then, logical join between reflect and trace the actual vehicle movement because of the
vehicle movement output information and INS’s input complexity of real underwater vehicle [3], we need establish
calculation information are established so that INS can get the the analog simulation environment of INS based on the
navigation system close to actual underwater vehicle motion, motion state of actual vehicle. This is very important for
thus vehicle movement was reflected actual. Computer
improving the movement adaptability of the carrier and
simulation shows that the join between vehicle and INS is
solving some overshoot such as switching state,
correct. This is a good method for the movement adaptability
examination of INS.
comprehensive calibration and other practical issues of INS.
II. DESCRIPTION OF UNDERWATER VEHICLE
Keywords- INS; underwater vehicle motion; space motion
equation; coordinate transformation MOTION MODEL
The underwater vehicle depends upon tail elevator, head
I. INTRODUCTION elevator and rudder to keep and change the depth and
direction. We usually regard the underwater vehicle as rigid
INS has become the core system of marine navigation body in establishing the vehicle model. By using momentum
system because of its autonomy and ability that can provide theorem of rigid body, the Newton law of motion and
high-precision position, velocity and attitude information for hydromechanics principle, Taylor Series and differential
a long time. It can be used not only in ensuring the safety of equation theory, the equation of 6-DOF motion of
underwater vehicle, surface ships but also in providing the underwater vehicle can be inferred.
information base for shipboard(potential) weapon system The integral vehicle motion is very complex. Considering
launching[1]. the obtainment difficulty of the whole hydrodynamic
Comparing with the aerospace navigation system, marine coefficient and the difficulty of the equation calculation, we
INS need provide high-precision information for several can simply the general space manipulation equation of
days or even longer time. Therefore, the designers not only underwater vehicle reasonable according to the symmetry
need develop higher-precision inertial sensors, but also and motion characteristic of the vehicle. If the static and
reduce localization error by system technology. For example, buoyancy has already been balanced, the hull is approximate
Schuler, Foucault and Earth oscillation of INS can be longitudinal and bilateral symmetrically well, the coupling
damped by using horizontal and azimuth damp network, between the rudders is not considered, the second-order and
comprehensive calibration can increase the ability of hydrodynamic coefficients of coupling terms are neglected
navigation system greatly because it can realize gyro drift and so on, the space manipulation equation of underwater
correction, azimuth correction and position amendment[2]. vehicle accordance with the simplified conditions can be
Although systematic measures can improve the obtained as[4][5]:
autonomous navigation, it destroyed the Schuler adjusting
A(u v w p q r)T = ( f X fY f Z f K f M f N )T (1)
condition. In this case, vehicle movement, especially mobile
movement can lead to dynamic error of INS during state Where, A is the coefficient matrix ( A = ( a ij ) 6×6 ); u , v ,
switch and comprehensive calibration. Therefore, the w is longitudinal velocity, bilateral velocity, vertical
adaptability study of carrier movement on INS is also an velocity of the underwater vehicle relative to the earth; p ,
important technology research content of marine inertial
navigation technology in addition to improving the inertial q , r is transverse inclination angular velocity, pitch angular
sensor accuracy and system technology. velocity, course rotation angular velocity of the underwater
vehicle.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 510


DOI 10.1109/ICCET.2009.129
According to the coefficient matrix, the solution of the E − ξηζ and the moving coordinate system G − xyz (G is
equation (1) is: the center of underwater vehicle, Gx points to the bow, Gy
⎧ fX
⎪u = a points to the starboard and Gz points to the hull bottom. A
⎪ 11 right-hand coordinate system is composed by them.)
⎪v = (a66a44 − a64a46 ) fY + (a26a64 − a24a66 ) f K + (a46 a24 − a44 a26 ) f N The platform inertial navigation system usually adopts
⎪ a22 (a66 a44 − a64 a46 ) + a24 (a62 a46 − a66 a42 ) geographic coordinate system (its movement with the
⎪ a55 f Z − a35 f M
⎪w = movement of carrier and the earth rotation is the horizontal
⎪ a33a55 − a35a53 and azimuth reference) as the navigation system. Therefore,
⎨ (a62a46 − a66a42 ) fY + (a22a66 − a26a62 ) f K + (a42a26 − a22 a46 ) f N
⎪ p = we need transform the motion parameters of underwater
⎪ a22 (a66 a44 − a64 a46 ) + a24 (a62a46 − a66a42 ) vehicle into that in geographic coordinate system by
⎪ a33 f M − a53 f Z coordinate transformation. Then, it can provide the actual
⎪q = input calculation information for the inertial navigation
⎪ a33a55 − a35a53
⎪  (a64a42 − a62a44 ) fY + (a24a62 − a22a64 ) f K + (a44 a22 − a42 a24 ) f N system.
⎪r = a22 (a66 a44 − a64a46 ) + a24 (a62a46 − a66a42 ) 2.1 The transformations between moving coordinate

(2) system and fixed coordinate system
The 1-order ordinary differential equation of the motion If the transformation matrix between moving coordinate
model can be get by combining auxiliary equation with system and fixed coordinate system can be described by S ,
relationship of the motion[5]. Then, we can obtain the space we can get[6]:
motion state parameter of underwater vehicle by using (ξ η ζ ) T = S ( x G y G z G ) T (3)
numerical integration.
Besides obtaining the output motion information Because of any two rectangular coordinate system can
according to the space motion equation and auxiliary transform each other by three times Euler angular spinning,
equation of underwater vehicle, another two parts of work then we can obtain S the coordinate transform matrix:
should be complete if we want to establish the connections ⎡cosψ cos θ cosψ sin θ sin γ − sinψ cos γ cosψ sin θ cos γ − sinψ sin γ ⎤
between the underwater vehicle motion and the inertial S = ⎢⎢ sinψ cos θ sinψ sin θ sin γ + cosψ cos γ sinψ sin θ cos γ − cosψ sin γ cos⎥⎥
navigation system input. ⎢⎣ − sin θ cosθ sin γ cosθ cos γ ⎥⎦
z The velocity information and the angular velocity (4)
information of underwater vehicle should be transformed Where ψ is the heading, θ is the pitch angle and γ is
from ship coordinate system to geographic coordinate system.
The attitude information of underwater vehicle should be the heeling angle.
transformed form relative to fixed coordinate system to 2.2 The transformations between fixed coordinate
relative to geographic coordinate system. system and geographic coordinate system
z The output information of underwater vehicle should be According to the definition of each axis of fixed
transformed into the INS input information, that is to say, the coordinates system E − ξηζ and geographic coordinate
output information of the underwater vehicle should be
transformed into the input information of relative to the system G − xyz , the coordinate transformation matrix under
inertial space. the condition of origin coincidence based on the following
rotation method can be get by:
III. COORDINATE SYSTEM TRANSFORMATION
OF UNDERWATER VEHICLE MOTION
Its corresponding state transition matrix is:
⎡ξ ⎤ ⎡ x ⎤ ⎡0 1 0 ⎤ ⎡ x ⎤
⎢η ⎥ = C E ⎢ y ⎥ = ⎢1 0 0 ⎥ ⎢ y ⎥ (5)
⎢ ⎥ o ⎢ ⎥ ⎢ ⎥⎢ ⎥
⎢⎣ζ ⎥⎦ ⎢⎣ z ⎥⎦ ⎢⎣0 0 − 1⎥⎦ ⎢⎣ z ⎥⎦
The definition of fixed coordinates system E − ξηζ
regards the earth as a horizontal plane. It doesn’t move with
the position changing of carrier, but the geographic
E − ξηζ and
Fig.1 Fixed coordinate system coordinate system will change by the earth rotation. It also
moving coordinate system G − xyz moves with the movement of carrier. When the position of
The space motion description of underwater vehicle carrier changed, the equation can’t reflect the relationship
widely adopted the system which is recommended by the between the local geographic coordinate system and the
international Towing Tank Conference (ITTC) and kinetic coordinate system of definition. Therefore we should
bulletined by Society of Naval Architects and Marine establish the changes of geographic coordinate system with
Engineers. (SHAME), including fixed coordinate system the movement of the carrier.

511
IV. THE TRANSFORM BETWEEN THE MOVEMENT
z' INFORMATION AND THE INS INPUT INFORMATION
y'
The movement calculation information input of platform
y x' inertial navigation system is the acceleration which is along
o' z the geographic coordinate system and relative to inertial
space. The coordinate transformation only transmitted the
o x
movement information into the geographic coordinate
δϕ system. We still need join the underwater vehicle movement
oe output information in geographic coordinate system with the
δλ INS’s input calculation information. The motion model of
carrier plays a good role of bridge which connects motion
model of underwater vehicle with embedding INS[7].
Fig.2 the changes of geographic coordinate system with the movement of
the carrier Ax = Av sin H + Vd ⋅ cos H ⋅ Ah ⎫
⎬ (10)
As Fig.2 shown, because of the different origin of the Ay = Av cos H − Vd ⋅ sin H ⋅ Ah ⎭
geography coordinate system show different trends. The
vector angle between them is δθ . We can obtain each axis Where, Av is linear acceleration of underwater vehicle;
component of the vector angle δθ from Figure 2. The Ah is angular velocity of underwater vehicle; H is course
component is: angle of underwater vehicle; Vd is velocity of underwater
δθ x = −δϕ ⎫ vehicle.

δθ y = δλ cos ϕ ⎬ (6) According to the conversion relationship among moving
δθ z = δλ sin ϕ ⎪⎭
coordinate system, fixed coordinate system and geographic
coordinate system, we can transform the motion state
Similar to the definition of attitude angle, we can obtain information into that in the geographic coordinate system.
the rotation relationship of the geography coordinate system The transformation information of the rotational movement
with the movement of the carrier. and angle movement can be described as:
⎡ x⎤ ⎡ x' ⎤ ⎡ 1 δλ sin ϕ − δλ cos ϕ ⎤ ⎡ x'⎤ ⎡ Avx ⎤ ⎡ u ⎤
⎢ y ⎥ = C o ⎢ y '⎥ = ⎢− δλ sin ϕ
⎢ ⎥ o' ⎢ ⎥ ⎢ 1 − δϕ ⎥⎥ ⎢⎢ y '⎥⎥ (7) ⎢A ⎥ ⎢ v ⎥
⎢ vy ⎥ ⎢ ⎥
⎢⎣ z ⎥⎦ ⎢⎣ z ' ⎥⎦ ⎢⎣ δλ cos ϕ δϕ 1 ⎥⎦ ⎢⎣ z ' ⎥⎦ ⎢ Avz ⎥ ⎡G3T×3 0 ⎤ ⎢ w ⎥ (11)
According to formula (5) and formula (7), we can obtain ⎢ ⎥=⎢ T ⎥⎢ ⎥
the rotation transformation (denoted by C) considering the ⎢ Ahx ⎥ ⎣ 0 G3×3 ⎦ ⎢ p ⎥
movement of carrier in fixed coordinate system and ⎢ Ahy ⎥ ⎢q⎥
geography coordinate system. ⎢ ⎥ ⎢ ⎥
⎣⎢ Ahz ⎦⎥ ⎣⎢ r ⎦⎥
⎡ − δλ sin ϕ 1 − δϕ ⎤ Where Avx , Avy , Avz is the axial linear acceleration in
C = Co ⋅ Co ' = ⎢
E o ⎢ 1 δλ sin ϕ − δλ cos ϕ ⎥⎥ the geographic coordinate system of underwater vehicle;
⎢⎣− δλ cosϕ − δϕ − 1 ⎥⎦ Ahx 、 Ahy 、 Ahz is axial angular velocity in the geographic
2.3 The transformation between moving coordinate coordinate system of underwater vehicle.
The transformation of attitude information can be
system geographic coordinate system
described as:
According to the former relationship we have derived ⎡ϕ ' ⎤ ⎡ϕ ⎤
before between moving coordinate system and fixed ⎢θ ' ⎥ = C T ⎢ θ ⎥
coordinate system, moving coordinate system and (12)
⎢ ⎥ ⎢ ⎥
geographic coordinate system. Thus the rotation ⎢⎣ψ '⎥⎦ ⎢⎣ψ ⎥⎦
transformation (denoted by G) of the carrier between moving
coordinate system G − xyz and geographic coordinate We can see that all the inertial navigation system (INS)
input information can be obtained by formula (11) and
system o − xyz can be expressed by:
formula (12) by establishing the connection between motion
⎡ xG ⎤ ⎡ξ ⎤ ⎡ x⎤ information of underwater vehicle and inertial navigation
⎢ y ⎥ = S −1 ⎢η ⎥ = S −1C ⎢ y ⎥ (8) system input information. Dynamic simulation of INS can be
⎢ G⎥ ⎢ ⎥ ⎢ ⎥ realized on the condition of the establishment of relationship
⎣⎢ zG ⎦⎥ ⎣⎢ζ ⎦⎥ ⎣⎢ z ⎦⎥ between vehicle movement information and INS input. Then
According to the orthogonality of rectangular coordinates we can get the navigation input information of underwater
transformation, we can obtain: vehicle such as position, velocity and so on, considering
control rubber angle information, influenced by wind, water
G = ST ⋅C (9) and flow. Then we need study on the movement adaptability
of carrier for INS.

512
V. COMPUTER SIMULATION underwater vehicle embedded have some deviations, but
By using the computer simulation, we can not only study they reach stable soon. The main cause is because of slight
on the movement adaptability of carrier for INS, but also coupling between vertical plane and horizontal plane when
infer the connection between motion information of the underwater vehicle moves, but they regulate equilibrium
underwater vehicle and the model of INS and verify the soon[5].
correctness of the simulation program. Validated by 5.3 Simulation of uniformly accelerative motion state of
simulation we can set reservation input to formula (10) as the underwater vehicle
reference information of the inertial navigation system Assigning u =5.8kn, by increasing propeller thrust
output. constantly the underwater vehicle will be uniformly
Assign the inertial navigation system (INS) simulation accelerative motion. To ensure its accelerative is
condition:
Initial Position ϕ 0 =30° , λ0 =120° ; Platform initial
a =0.005 m / s 2 , and the underwater vehicle will become
uniform motion state. INS works on the internal level damp
error angle α 0 = β 0 =0.3', γ 0 =1';it doesn’t consider the state. The result of it is shown by Fig.7 and Fig.8.
gyro drift and accelerometer bias.
5.1 Simulation of suspension static state of underwater
vehicle
Assigning u =0.0kn, INS works on the level damp state.
The result of it is shown by Fig.3 and Fig.4.

Fig.7 East velocity simulation curves Fig.8 North velocity simulation


of uniformly accelerative state curves of uniformly accelerative state
As we seen from the simulation curves, the result of
INS’s normal calculation curves and calculation simulation
curves after the underwater vehicle embedded is basically in
coincidence, but also both of them produce significantly
Fig.3 East to velocity simulation Fig.4 North to velocity simulation Schuler and Foucault periodical oscillation. This is because
curves of suspended state curves of suspended state that the underwater vehicle works on the condition of
(Curve 1 is the pure INS calculation result, Curve 2 is the uniformly accelerative motion state and the inertial
INS calculation result based on the vehicle motion) navigation system (INS) works on the no-damp state.
Form the result of velocity simulation on the suspended
state, the result of INS’s normal calculation information and VI. CONCLUSION
calculation simulation result after the underwater vehicle According to the movement adaptability problem we face
embedded overlap completely. It doesn’t produce error. in process of design and application of platform inertial
5.2 Simulation of uniform motion state of underwater navigation system, we research simulation technology of
vehicle inertial navigation system (INS) based on the 6-dof space
motion of underwater vehicle. By correct algorithm such as
Assigning u =5.8kn, INS works on the internal level coordinate transformation and motion model embedded of
damp state. The result of it is shown by Fig.5 and Fig.6 the carrier, it embedded into the platform inertial navigation
system successful. We can control the underwater vehicle
movement by giving the initial condition such as control
information, thrust information and so on. It can produce the
motion information close to the actual vehicle and provide
corresponding input information for INS. This provide not
only effective examination method for checking the
movement adaptability of INS used by underwater vehicle,
but also the powerful reference for the examination of the
other marine navigation system’s performance. Therefore, it
has strong theoretical significance and practical value.

Fig.5 East velocity simulation Fig.6 North velocity simulation VII. ACKNOWLEDGE
curves of uniform motion state curves of uniform motion state
The financial support from National Natural Science
Computer Simulation result shows that the results Foundation of China-NSFC under the grant NO. 60674087,
between normal calculation and calculation after the

513
No. 60474046 and postdoctoral fund of Heilongjiang under
the grant NO.LBH-Z06108 are all gratefully acknowledged.
VIII. REFERENCES
[1] Xiong Zhengnan, Cai Kaishi, Wu Fengde. Huang Deming, Cheng
Lu, Inertial navigation system, National Defense Industrial Press,
1982.
[2] Liu Weiren, Zhuang Liangjie. Adaptive hybrid intelligent control of
an INS level damp network[J]. Journal of Harbin Institute of
Technology. 2005(37):1586-1588.
[3] Shan Danping. The Design and Realization of Platform Inertial
Navigation System Simulator Based on COM. Master degree
dissertation of Harbin Engineering University. 2007.P33-P45.
[4] Yi Guangqu Theory on Inertial Navigation. Aeronautics Industry
Press, 1987.
[5] Pan-Mook Lee, Bong-Huan Jun. Simulation of an Inertial Acoustic
Navigation System With Range Aiding for an Autonomous Underwater
Vehicle[J]. IEEE JOURNAL OF OCEANIC ENGINEERING. 2007,32(2)
:327-340.
[6] Qi Xiaoqiang. Motion Model and Control Methods of UnderWater
Vehicle Hovering System[D]. Master degree dissertation of Harbin
Engineering University.2008, P15-29.
[7] Wang Wenwu. The design of Submarine Voyage Training Simulator
Based on Virtual Reality[J]. Journal of System Simulation. .2001(
13):599-602.
[8] Goshen-Meskin D, Bar-Ithack I Y, Unified Approach to Inertial
Navigation System Error Modeling. Journal of Guidance , Control
and Dynamics, 1992, 15(3).
[9] Yuan Xin, Yu Jixiang, Chen Zhe. Navigation Systems. Aeronautics
Industry Press, 1993.

514
2009 International Conference on Computer Engineering and Technology

Modeling and simulation of Wireless Sensor Network (WSN) with SpecC and
SystemC

M. Rafiee, M. B. Ghaznavi-Ghoushchi, S. Kheirh, B. Seyfe


Electrical engineering dept.
Shahed university
Tehran, IRAN
{rafiee, Ghaznavi, kheiri, seyfe}@shahed.ac.ir

Abstract— As the complexity of systems is rapidly growing, the wired and wireless sensor networks with analytical methods,
designers are moving towards use System Level Design computer simulation, and physical measurement. However
Languages (SLDL) such as SystemC and SpecC. In this paper many constraints imposed on sensor networks, such as
we use SystemC and SpecC languages for modeling and energy limitation, decentralized collaboration, and fault
simulation of Wireless Sensor Networks (WSN). First we start tolerance necessitate the use of complex algorithms for
on simple ECO model and add modular sections as increases sensor networks. It appears that simulation is currently the
as the complexity. In the next step, we add data encryption primary feasible approach to the quantitative analysis of
using DES algorithm for security reasons. The future steps sensor networks [4]. On the other hand there is a gap
include modeling the idel/active/work phases for nodes and we
between simulation and synthesis in the traditional
add Attenuation-Transmission-power checking model for
estimation power dissipation among nodes. We also include
approaches. Therefore the tasks done in the system
IEEE 802.15.4 protocol module and buffer insertion module. specification, performance evaluation are not used directly
We have simulated the proposed framework with simulation of during the synthesis. A New approach using SpecC is
3, 7 and 11 nodes in 3000 ms. The fidelity of simulations with reported in [5]. Some new tries started to use SystemC-AMS
SpecC and SytemC meet with 9.8% error and RMSD 4%. Our [15]. The two main reasons for focus on SystemC are: One is
preliminary results from deployment of the functional-proven the existence of very suitable facilities for simulation of
SystemC models into SystemC synthesizers, urges that it may concurrent and parallel phenomena's-where is strongly
be directly used in early stages of WSN nodes synthesis. observed in massive wireless sensor networks-in SystemC,
and the second is the near-to-hardware nature in SystemC
Keywords-component; Wireless Sensor Network, System specifications which could lead to rapid prototyping and less
modeling, SystemC and SpecC languasges time to market in designs.
In this paper we explain available WSN simulation
I. INTRODUCTION techniques in section I. Traditional Approach on WSN
Simulation System modeling is explained in section II and
Networked sensor systems are seen by observers as an system is explained in section III. Modeling of ECO system
important technology that will experience major deployment with SystemC and SpecC languages are covered in sections
in next few years for a plethora of applications. Typical IV and V. Modeling wireless sensor network and result are
applications include, but are not limited to, data collection, described in sections VI, VII and VIII. Finally we conclude
monitoring, surveillance and medical telemetry [1]–[2]. the paper in section IX.
Wireless Sensor Network consists of large number of sensor
nodes. These tiny nodes consist of sensing, data processing, II. TRADITIONAL APPROACH ON WSN SIMULATION
and communicating components. Sensor Network (SN) aims
to provide an efficient and effective connection between the There are different kinds of simulation tools specialized
physical and computational worlds. In addition to for WSN. GloMoSim [14] is a scalable simulation
algorithms, hardware and software architecture will environment for wireless and wired network systems. It is
significantly impact the effectiveness of SN. Furthermore, being designed using the parallel discrete-event simulation
SN design methodologies will have an important impact on capability provided by Parsec 1 [14]. Parsec is a C-based
the cost and performance of SN. SN modeling and simulation language, developed by the Parallel Computing
simulation is too important. In SN, the environment should Laboratory at UCLA, for sequential and parallel execution of
be monitored entirely to obtain acceptable results. Different discrete-event simulation models. It can also be used as a
approaches have used for simulation and modeling of SN parallel programming language. For developing protocols in
and WSN [4]. Traditional approaches consist of various GloMoSim, one should have some familiarity with Parsec,
simulation tools based on different languages such as C,
C++, Java and partly matlab [4]. In the traditional techniques
the main focus is based on analyzing the performance of 1
Parallel Simulation Environment for Complex systems

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 515


DOI 10.1109/ICCET.2009.175
but not as an expert. Most protocol developers write pure C SystemC is that it can be used as a common language by
code with some Parsec functions for time management. system designers, software engineers, and hardware
OMNeT++ [16] is a discrete event simulation designers. The language is an attempt at standardization of a
environment. Its primary application area is the simulation of C/C++ design methodology, and is supported by the Open
communication networks, but because of its generic and SystemC Initiative (OSCI) [8]. IEEE-STD-1666-2005 is
flexible architecture, is successfully used in other areas like SystemC Language Reference Manual Standard. This
the simulation of complex IT systems, queuing networks or standard provides a precise and complete definition of the
hardware architectures as well. OMNeT++ provides SystemC class library [9].
component architecture for models. Components (modules) Beside other features, SystemC models a system with
are programmed in C++, and then assembled into larger logic threads running in parallel. However, its simulator does
components and models using a high-level language such not take advantage of the parallelism. It also recently is used
NED. Reusability of models comes for free. OMNeT++ has during direct model synthesis from system specification [18-
extensive GUI support, and due to its modular architecture, 20]. The above mentioned reasons and features are our
the simulation kernel (and models) can be embedded easily motivation in choosing SystemC and SpecC for modeling
into target applications. and simulation. Our future experiments show that the
synthesis is also very uniform using this approach.
III. SYSTEM MODELING LANGUAGES
System modeling in a large extent is a matter of handling IV. WSN MODELING
abstract and possibly incomplete information and trying to A sensor network is modeled as a set of heterogeneous
evaluate different solutions based on the system model [5]. entities. Sensor nodes deployed over the area of interest.
Ease modeling system depends on the semantics and syntax They are triggered by a certain set of stimuli that eventually
of the used language. At present, there is no complete result in a sensor report that are transmitted to a remote base-
language available for entire system modeling but there are station. Three main types of sensor nodes need to be created
some System-Level Design Language’s (SLDL) being used and supported: 1) target nodes that do stimulation of the
extensively for following system-level design methodology . sensors, 2) sensor nodes that monitor events and 3) user
Two major candidates for system modeling are SpecC nodes that query the sensors and are the final destination of
and SystemC languages. SystemC is now based on IEEE- the target reports. We primarily used the approach proposed
STD 1666-2005 [9]. SpecC and SystemC share many in [5] then we entirely start from scratch and write down a
common features, such as dynamic sensitivity mechanism modular framework for simulation capable to include various
for dynamic scheduling of execution sequence. SpecC is protocols, topology, security and more features.
better suited for the architecture exploration as compared to
SystemC in terms of profiling and determination of A. Node
execution sequence. The architecture refinement step Node performs a simple task: take an analog sample, and
involving allocation, partitioning and mapping is easier in transmit the data over the wireless link to one or more
SystemC compared to SpecC. SpecC and SystemC have receivers. Node module functionally consists of three
similar capabilities in terms of support for transaction concurrent modules, which are analogous to the three main
exploration, except for the determination of channel traffic components of the node, namely, Analog-To-Digital (ADC)
which is much feasible with SpecC on account of its Converter, Microcontroller, and Sender.
profiling capability. Both the SpecC and SystemC are The ADC converts the analog signal into digital values.
equally capable for transaction refinement and the Sender transmits the data through the wireless channel only
refinement process. SpecC and SystemC have similar after forming a packet as shown in Fig. 1. Microcontroller
capabilities in terms of support for communication controls the whole process by setting an interface between
exploration and equally capable for communication the two other sections.
refinement [6]. In the transmitted packet, preamble marks the beginning
The SpecC language was specifically developed for the of the package, ADDR is the address of the receiving node,
specification and design of digital embedded systems, PAYLOAD is the data and CRC is the cyclic redundancy
including hardware and software portions. Built on the top of check. ADDR is added by the microcontroller and preamble
the ANSI-C programming language, the SpecC language & CRC are added by the transceiver. All the nodes perform
supports concepts essential for embedded systems design, the same function but at different frequency, data resolutions
including behavioral and structural hierarchy, concurrency, and data domains. ADC converts the analog value into 10-bit
communication, synchronization, state transitions, exception digitals. Module C takes the data from the ADC, adds the
handling, and timing. Since SpecC is a true superset of address of the receiver node and provides the data payload
ANSI-C, so every C program is also a SpecC program [7]. for the sender module. Sender is analogous to the
SystemC is a C++ based modeling platform supporting transceiver; it forms the packet by adding CRC and preamble
design abstractions at the register-transfer, behavioral, and to the payload and transmits the packet to the Sink.
system levels. The SystemC classes add the necessary ADDR PAYLOAD CRC
Pre-amble
constructs to C++ for modeling systems and hardware at
various levels of abstraction-from the abstract untimed Figure 1. Package Format
models to cycle-accurate RTL models. The power of

516
Port
Node
Node Transceiver

Stimulus

Monitor
1 FIFO
Sink
FIFO Port FIFO
Node
2
FIFO
ADC C
Port ECO System

Figure 4. Overall ECO System


Figure 2. Node module
The above results show that ECO system is successfully
modeled in SpecC and SystemC languages and the
B. Sink simulation results were consistent. Any time varying input
Sink consists of two components, Receivers, and CPU. signal can be easily recovered and monitored in the Monitor.
Receiver receives data from concurrent node module and The maximum absolute value of differences in SpecC and
sends to CPU Module. CPU first waits for the initial startup SystemC is about 9.8% and its RMSD2 is about 4%.
commands from the monitor and then waits receiving data
from Receiver Module. It checks address of the receiver, if VII. MODELING WIRELESS SENSOR NETWORK MODELING
address is right then deletes address from data and starts WITH SYSTEMC AND SPECC
sending 20-bit digital value to monitor. Sensor node has two tasks in wireless sensor network: 1)
C. Monitor and Stimulus receiving data from sensor module, 2) receiving data from
other sensor node. Therefore for change ECO system to
Monitor sends initial startup commands to the sink. Then, wireless sensor network, we add Receiver process to Sender
the monitor starts waiting for the incoming data from the module and produce transceiver module. In this method
station and after receiving the data packets it plots the motion received data from sensor transmit via other node(s) to sink.
data of node. Stimulus basically provides the test bench with Fig. 6, shows structure node and sink in wireless sensor
the sample input data and performs the function of the network.
sensor. To increase security in wireless sensor network, we add
V. OVERALL SYSTEM DES [13] to our design. The algorithm is designed to
encipher and decipher blocks of data. Inputs of this block are
The basic model we used for as primary simulation is 64 bits data and 64 bits key. Deciphering must be
based on ECO [5]. This model is depicted in Fig. 4. The test accomplished by using the same key as for enciphering, but
bench consists of ECO System, Stimulus and Monitor. The with the schedule of addressing the key bits altered so that
ECO System consists of two similar Nodes and one Sink the deciphering process is the reverse of the enciphering
module executing concurrently. process.
Therefore, output data from Microcontroller enters to
VI. COMPARISON ECO SYSTEM MODELING WITH
DES Encryption module, before sending to transceiver
SYSTEMC AND SPECC module, and finally transmitted to the Sink module. In Sink
Network is simulated with SystemC and SpecC module after receiving data by receiver module, data
languages. Simulation time for system model is 3000 ms. decoded by decryption and processed by CPU. Fig. 7, shows
Only difference between two codes is that because SystemC structure of node and sink in wireless sensor network
language is using wait command in the Sender and Receiver
modules because SystemC is without handshake channel
command.
Fig. 5, shows comparision input and output received in
the Monitor modules for the input sine wave from two
networks.

Receiver
FIFO
CPU
FIFO
Receiver
Sink
Figure 5. Comparision input and Output in SpecC and SystemC language

Figure 3. Sink module

2
Root Mean Square Deviation

517
TABLE I. DELAY (MS) DUE MODELING SENSOR NETWORK WITH
DIFFERENT TOPOLOGIES WITH SYSTEMC LANGUAGE

Node

Receiv er
Language SystemC

FIFO
Node_No
ADC

3 7 11
Topology

CPU
Transciev er
Primary wireless

FIFO
200 _ _
sensor network

Receiv er
Port

FIFO

Wireless sensor

FIFO
network with DES 400 700 1000
µc security
Sink
Wireless sensor
network with DES
Figure 6. Structure of node and sink in WSN security & 500 800 1100
Attenuation-
Before sending data, the signal level in all those nodes is Transmission-power
calculated according to the path loss formula 1/da. The Wireless sensor
attenuation exponent (a) is used in the path loss formula 1/da network with DES
security &
where d is the distance between transmitting and receiving Attenuation-
700 1200 1600
nodes. If the signal level in each node is larger than the Transmission-power
receiver sensitivity, then it can be detected. & IEEE 802.15.4
Transceiver can send data to next node or sink by using
IEEE 802.15.4 standard [12] (CSMA/CA policy) surrogate
use of Preamble and CRC. VIII. RESULT
IEEE 802.15.4 is a standard used for low rate personal These codes are simulated with SystemC and SpecC
area networks (PAN). It offers device level connectivity in languages. Simulation time for system model is 3000 ms. the
applications with limited power and relaxed throughput entire network is simulated with three, seven and eleven
requirements. Devices with IEEE 802.15.4 technology can nodes and one sink. The simulation result of the target
be used in many potential applications, such as home systems in various topologies are presented in this section.
networking, industry/environments monitoring, healthcare The primary wireless sensor network is simulated with
equipments, etc, due to its extremely low power features. three nodes.
The IEEE 802.15.4 offers device-level wireless connectivity Table I shows the Delay due four different topologies
at low cost. The low cost, here means lower manufacturing that using different number of nodes in SystemC language.
cost, lower installation cost and lower maintenance cost. The Table II shows the Delay due four different topologies
MAC protocol of 802.15.4 supports both contention-based that using different number of nodes in SpecC language.
medium access (Carrier Sense Multiple Access Collision
Avoidance (CSMA-CA)) and scheduled-based medium TABLE II. DELAY (MS) DUE MODELING SENSOR NETWORK WITH
access (Time Division Multiple Access (TDMA)) DIFFERENT TOPOLOGIES WITH SPECC LANGUAGE

simultaneously [12]. Language SpecC


In CSMA/CA algorithm, ack is sent to destination node Node_No
and if support ack by destination node, source node starts to 3 7 11
transmit data to destination node. Adding this algorithm to Topology
Primary wireless
wireless sensor network increases delay and lost path. sensor network
200 _ _
Wireless sensor
network with DES 400 600 800
Node security
Decryption
Transciev er

Receiv er

Wireless sensor
network with DES
ADC

security &
Port

500 700 900


Attenuation-
FIFO

CPU

Transmission-
Port

Port
power
Port

Wireless sensor
Port
Decryption
Encryption
Port

Receiv er

network with DES


µc security &
Attenuation- 600 900 1200
Sink Transmission-
power & IEEE
802.15.4
Figure 7. Structure node and sink in WSN

518
IX. CONCLUSIONS [8] P. R. Panda, “SystemC a modeling platform supporting multiple
design abstractions,” in International Symposium on System
In this paper we have presented a framework for Synthesis, pp. 75–80, Sept. 2001.
modeling and simulation of Wireless Sensor Networks with [9] "IEEE STD 1666 - 2005 IEEE Standard SystemC Language
SystemC and SpecC language. SystemC and SpecC can be Reference Manual", IEEE, pp. 1- 423, 2006.
used for system modeling but they include limitation for [10] M. S. Obaidat, D. B. Green, "On Modeling Networks of Wireless
system modeling. Simulation of the system-level scenario Microsensors", Kluwer Academic Publishers, pp. 115 - 153, 2003.
shows that the total elapsed time strongly depends on the size [11] H. Karl, A. Willig, “Protocols and Architectures for Wireless Sensor
of the WSN .In the proposed approach the following features Networks”, John Wiley & Sons Ltd, 2005.
are implemented and tested successfully: Simple ECO, Data [12] L. Cheng, “IEEE 802.15.4 MAC Protocol Study and Improvement”,
A Dissertation Submitted in Partial Fulfillment of the Requirements
encryption with DES algorithm, Attenuation-Transmission- for the Degree of Doctor of Philosophy, Georgia State University,
power in sending modes of nodes, IEEE 802.15.4 protocol. 2000.
There are very wide range of other ideas may be stacked on [13] R. G. Kammer, “DATA ENCRYPTION STANDARD (DES)”,
the top of this framework including, node unique Federal Information Processing Standards Publication, 1999 October
Identification, path registration, broadcast (multicast). In 25.
total, accurate modeling of SpecC is better than SystemC. [14] L. Bajaj, M. Takai, R. Ahuja, K. Tang, R. Bagrodia, M. Gerla,
“GloMoSim: A Scalable Network Simulation Environment”,
REFERENCES University Technical Report 990027, UCLA Computer Science
Department, Los Angels, USA, 1999.
[1] I.F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci,
"Wireless sensor networks: a survey",Computer Networks, 38(4), pp. [15] M. Vasilevski, F. Pecheux, H. Aboushady, L. de Lamarre, “Modeling
393–422, March 2002. heterogeneous systems using SystemC-AMS case study: A Wireless
Sensor Network Node”, IEEE International Behavioral Modeling and
[2] D. Estrin, L. Girod, G. Pottie, and M. Srivastava, "Incrementing the Simulation Conference, BMAS'07, San Jose, CA, USA, pp. 11-16
World with Wireless Sensor Networks", IEEE ICASSP 2001, 4, pp. ,20-21 Sept. 2007.
2033-2036, 2001.
[16] S. M. Bruschi, R. H. C. Santana, M. J. Santana, T. S. Aiza, “An
[3] J. Feng, F. Koushanfar, M. Potkonjak. “Sensor Network automatic distributed simulation environment”, Proceedings of the
Architecture”, Book chapter, in: ‘Handbook of Sensor Networks’, I. 36th conference on Winter simulation, Volume 1, pp. 378 – 385, 5-8
Mahgoub and M. Ilyas (eds.), CRC press, Section III, no. 12, 2004. Dec. 2004.
[4] G. Chen, J. Branch, M. Pflug, L. Zhu, and B. Szymanski, “SENSE: A [17] IEEE, IEEE 802.15.4 Standard Specification for Low-Rate Wireless
Wireless Sensor Network Simulator”, Advances in Pervasive Personal Area Networks (LR-WPANs), May 2003.
Computing and Networking, Springer, New York, pp. 249-267, 2004.
[18] “Agility Compiler manual”, For Agility 1.2, Available:
[5] G. Sachdeva, R.Doemer, and P. Chou, "System Modeling: A Case http://www.celoxica.com.
Study on A Wireless Sensor Network", Technical Report CECS-TR-
05-12, University of California, June 15, 2005. [19] “SystemCrafter SC User Manual”, Version 3.0.0, Available:
http://www.SystemCrafter.com.
[6] L. Cai, S. Verma and D. D. Gajski, "Comparison of SpecC and
SystemC Languages for System Design", Technical Report CECS- [20] “Getting Started with CoCentric SystemC Studio”, Version 2002.05-
03-11, University of California, Irvine, May 15, 2003. SP1, synopsys, U.S.A, September 2002.
[7] D. D. Gajski, J. Zhu, R. Dömer, A. Gerstlauer, and S. Zhao, “SpecC:
Specification Language and Design Methodology”, Kluwer
Academic Publishers, 2000.

519
International Conference
on Computer Engineering and Technology

Session 8
2009 International Conference on Computer Engineering and Technology

Sub-micron Parameter Scaling for Analog Design


Using Neural Networks
A.A. Bagheri-Soulla M.B. Ghaznavi-Ghoushchi
School of Engineering, Shahed University School of Engineering, Shahed University
Tehran, IRAN Tehran, IRAN
ali.soulla@gmail.com ghaznavi AT shahed.ac.ir

Abstract—In present work we aimed to develop a NN in submicron region). What will happen for gain in
based approach to translate the design parameter from a scaling, while lambda, mobility and currents come with
submicron technology to a long channel one. The complicated relations?
proposed approach is able to find the superseded design
parameters in 1.2ȝm technology using the input
information, which are design parameters of Gain, Phase 2C ox W 2W 6
AV = μn μ p [7] (1)
( λn + λp )
Margin, Unity Gain Bandwidth and Power in TCMS 2
0.18ȝm. The training data are obtained by various L 2 L 6 I 1I 7
simulations in the HSPICE design environment with
TSMC 0.18ȝm process nominal parameters. The neural There is some approach to scale down an analog
network structure is developed and trained in the C++
circuit with circuit optimization techniques but these
based program. To observe the utility of proposed neural
network model it is tested through at least 50 samples.
techniques need to write circuit’s equations and they
Experimental results show validity of our approach in need optimization techniques that are complicated by
less than 0.5db error for gain, less than 1 degree phase them self [8]. There has been a large research effort in
error for phase margin, 0.1db for unity gain bandwidth the field of analog synthesis tools [9-11]. These tools
and 0.05db for power. aid to design circuits interactively by using special
libraries that include circuit topology, design rules,
analog design; sub-micron design; neural networks; macro-models, etc. they want to use a topology in some
parameter scaling. different technology with their library data.
So we want to relate design parameter in an analog
I. INTRODUCTION design like op-amp in two different technologies when
We have scaling theory on how we can scale down we scale down or scale up a design.
a MOS transistor’s parameters. Submicron transistor’s For this purpose we select a two stage op-amp
model has more parameter and should be more illustrated in Figure 1.
accurate. Some of the transistor’s parameter is variable
in higher level model and they affect the design
parameter like gain, phase margin, unity gain
bandwidth and power. So how we can relate design
parameter for example in an Op-amp in two different
technologies when we scale down or scale up a design.
Sub-micron transistor’s model has more parameter
and is more accurate. For example we can achieve an
acceptable result from level 1 simulation model for a
transistor whit 2ȝm channel length but level 1
simulation result is not acceptable at all for a 0.18ȝm
transistor. While level 49 or higher levels (like level 54)
are most suitable for 0.18ȝm and smaller feature sizes.
Level 1 model has about 8 parameters for a simulation,
LAMBDA and some of important parameters are
constant but in higher level e.g. Level 3 we have about
20 parameters and we have some variable parameters Figure 1. Figure 1: Two stage op-amp [7]
like LAMBDA. Here some problems arise for example
in equation (1) the gain of a two stage op-amp written it
in basic parameter as possible. If we accept gain
equation is true (it has not enough accuracy to be used

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 523


DOI 10.1109/ICCET.2009.139
II. SCALING expressed using generalized Delta Rule and gradient
There are three types of scaling: descent since they have non-linear activation functions
• Full Scaling (Constant Electrical Field): Ideal [4]. In the general form of an MLP network, the xi
model dimensions and voltage scale together by the inputs are fed into the first layer of xh,l hidden units. The
same factor S [1]. input units are simply 'fan-out' units: no processing
• Fixed Voltage Scaling: Most common model until takes place in these units. The activation of a hidden
recently only dimensions scale and voltages remain unit (neuron j) is a function fj of the weighted inputs
constant [1]. plus a bias, as given in equation (2).
• General Scaling: voltages and dimensions scale
with different factors [1]. x pj = f j (¦w ji x pi + θ j ) = f j ( y pj ) (2)
Because of lack in other scaling technique, we used i
general scaling in our work. Full scaling can not be
used because voltage can not be scale as same as Where wji is the weight of input i to neuron j, xpj is
technology and fixed voltage is not acceptable because input i, that is, output i from the previous layer, for
supply voltage and threshold voltage of each input pattern p and șj is the threshold value. The output
technology is defined. Table 1 contains scaling relations of the hidden units is distributed over the next layer of
[1]. xh,2 hidden units until the last layer of hidden units, of
TABLE I. SCALING EQUATIONS [1]
which the outputs are fed into a layer of xo output units
[5].

IV. DEVELOPMENT OF NEURAL NETWORK MODEL


To find the most appropriate model for different
design parameter values, op-amp has to be simulated in
a large region of transistors channel width and other
variable parameters. The variable parameters for
simulations are W 1 ,...,W 8 ,C C , I bias . In our
simulation we assumed RC = 1/ gm 6 [7]. Adding the
output value Gain, Phase Margin, Unity Gain
Bandwidth and Power of the simulations. A program in
C++ generates net-lists in HSPICE format with random
value for variable parameters and then calls HSPICE
and simulates the circuit with HSPICE. Then the output
value gain, phase margin, unity gain and power from
III. THE MULTI LAYER PERCEPTRON NEURAL HSPICE output are extracted. In the next step, program
NETWORKS scales up the same net-list and do simulation for new
Multilayer Perceptron (MLP) is the most common net-list. The variable parameter and output value are
neural network model, consisting of successive linear captured and saved in this step too.
transformations followed by processing with non-linear Random values are generated around a core of a
activation functions. MLP represents a generalization of feasible design with a deviation. For example we have
the single layer perceptron, which is only capable to feasible design in this design parameters
construct linear decision boundaries and simple logic are W 1 =W 2 = 1μ m ,...,W 6 = 12.3μ m .We took
functions. However, by cascading perceptrons in layers these value as core parameters and with respect to their
complex decision boundaries and arbitrary Boolean value we generate random value, random generation
expressions can be implemented. MLP is also capable
to implement nonlinear transformations for function range for W 6 is from 2ȝm to about 25ȝm but this
approximations. [2-3]. range for W 1 is limited to 0.4ȝm to 2.5ȝm.The test data
The network consists of a set of sensory units
were obtained randomly in the same range and they
(source nodes) that constitute the input layer, one or
were different from the training data. Over 1000 data
more hidden layers of computation nodes, and an
points were obtained from HSPICE simulations. The
output layer. Each layer computes the activation
simulation of the neural network was performed in the
function of a weighted sum of the layer's inputs. The
C++ based program. 50 randomly made test data were
input signal propagates through the network in a
applied for testing. The NN applied structure is shown
forward direction, on a layer-by layer basis. The
in figure 2.
learning algorithm for multilayer perceptrons can be

524
Figure 2. NN structure used for training process

Generated samples format are as below: gain is in


db, phase margin is in degree, unity gain and power are
in 10log(x) format. Figure 3 shows error of network for
50 of test data. The result shows our approach can
estimate an acceptable result for scaled circuit design
parameters. In table 2 we illustrate a complete net-list
parameter values in 0.18ȝm and in table 3 we shows
design parameter in 0.18ȝm that HSPICE calculate Figure 3. error of NN for test data
them and scaled circuit design parameter that HSPICE
calculate and our model output value. V. CONCLUSION
The test results prove that the proposed neural
network model can decide scaled circuit parameter
TABLE II. NET-LIST VARIABLE VALUES.
accurately. In the applications of analog circuit design
Parameter Value we need a translator that can find the appropriate design
W1=W2 1.44um parameter in long channel from sub-micron one if we
W3=W4 3.26um want to use low level model in our work. These
W5 0.58um parameters must be determined by the designer with his
experience and knowledge. That is a very important
W6 6.34um
step forward for complex analog design process.
W7 6.20um Adding new input parameters to the neural network
W8 0.97um structure and obtaining more training data, the model
L1=…=L8 0.18um can produce more accurate results in a wider range,
Cc 0.015pF which can make the model an important tool for
Rc 39560.66 designers during the analog integrated circuit design
Ibias 0.601uA process.
VI. REFERENCES
TABLE III. DESIGN PARAMETER VALUE [1] Tsividis, Y., Opration and Modeling of The MOS
Transistor, McGraw-Hill, USA, 1999, pp. 290-301.
0.18ȝm 1.2ȝm 1.2ȝm
HSPICE HSPICE NN output [2] Hush, D., R., Horne, B., “Progress in Supervised Neural
Gain 1.89E+01 2.69E+01 2.793E+01 Networks”, IEEE Signal Processing Magazine, January
PM 5.12E+01 8.16E+01 8.162E+01 (1993), 8-39.
Unity GB 6.90E+01 6.19E+01 6.088E+01
Power -5.53E+01 -5.16E+01 -5.07E+01 [3] Geva, S., Sitte, J. A Constructive Method for Multivariate
Function Approximation by Multilayer Perceptrons, IEEE

525
Transactions on Neural Networks, Vol. 3 (4) (1992), 623- [8] FUNABA S., KITAGAWA A.,TSUKADA T,
624. YOKOMIZO G, A, Fast and Accurate Method of
Redesigning Analog Subcircuits for Technology Scaling,
[4] Haykin, S., Neural Networks - A Comprehensive Analog Integrated Circuits and Signal Processing, 25, 299±307, 2000
Foundation, Prentice-Hall, USA, 1999, pp. 205-233.
[9] R. Harjani, R. A. Rutenbar, and L. R. Carley, ``OASYS:
[5] Avci, M., Babac, M. Y., Yildirim, T., Neural Network A framework for analog circuit synthesis.'' IEEE Trans.
Based MOS Transistor Geometry Decision for TSMC Comput. Aided Des. Integrated Circuit. Syst. 8(12), pp.
0.18μ Process Technology, ICCS 2006, Part IV, LNCS 3994, pp. 1247-1266, December 1989.
615 – 622, 2006.
[10] H. Y. Koh, C. S. Sequin, and P. R. Gray, OPASYN: A
[6] TSMC 0.18ȝmҏҏtechnology parameters. From mosis, url: compiler for CMOS operational amplifiers, IEEE Trans.
http://www.mosis.org (Date:2003), (View:2008) Comput.-Aided Des, Integrated Circuits. Syst. 9(2), pp. 113-
125, February 1990.
[7] M. Hershenson, S. Boyd, T. H. Lee, GPCAD: A tool for
CMOS op-amp synthesis, IEEE/ACM International [11] G. Gielen, K. Swings, and W. Sansen, An intelligent
Conference on Computer Aided Design, San Jose, CA, design system for analogue integrated circuits, Proc
November 1998. European Design Automation Conf., pp. 169-173, 1990.

526
2009 International Conference on Computer Engineering and Technology

An Improved Genetic Algorithm Based on Fixed Point Theory for Function


Optimization

Jingjun Zhang Yuzhen Dong Ruizhen Gao Yanmin Shang


Scientific Research Office College of mathematics& physics
Hebei University of Engineering Hebei University of Engineering
Handan, Hebei, P.R.China Handan, Hebei, P.R.China
santt88@163.com ddongyuzhen@163.com

Abstract—This paper introduces triangulation theory into it has vital significance to design objective criterion of
genetic algorithm and with which, the optimization problem termination judgment.
will be translated into a fixed point problem. An improved This paper proposed an improved genetic algorithm
genetic algorithm is proposed by virtue of the concept of based on the fixed point. First of all, carrying on the
relative coordinates genetic coding, designs corresponding triangulation to the solution space and calculating the integer
crossover and mutation operator. Through genetic algorithms label of the vertex, and then designing the encoding scheme,
to overcome the triangulation of the shortcomings of human crossover operator and mutation operator with the
grade, it can start from any point to find the most advantages. conception of the relative coordinate. This algorithm
Gradually fine mesh will be introduced the idea of genetic
overcomes the shortcoming of man-made label of the
algorithms so that the search area gradually decreased,
triangulation for fixed point and converges when all the
improving the efficiency of search. Finally, examples
demonstrate the effectiveness of this method. (Abstract) individuals are completely labeled simplexes.
II. ABOUT TRIANGULATION
Keywords- genetic algorithm; triangulation; relative
coordinates; gradually fine mesh; Fixed Point (key words) So-called triangulation [5] is that making sure h > 0 and
with three groups of straight lines, such as {x1 = mh} ,
I. INTRODUCTION
{x2 = mh} and {x2 = x1 + mh} (among them m is an
Genetic algorithm [1] (GA) is a computational model of 2
simulation of natural biological evolution. GA is based on integer), the 2 Dimensional Euclidean space R will be
the criteria of survival of the fittest and carries on genetic divided into many triangles and obtains the triangulation
operations repeatedly to the population containing the 2
of R .
possible solution to generate new evolving population, and 2
Carrying on triangulation to the Euclidean Space R , the
simultaneously it searches the best individual of population g
with the overall parallel searching methods to achieve the goal is to find such a triangle under the self-mapping . The
optimal solution to meet the requirements. Comparing to first coordinate component of one vertex of the triangle
other search methods, GA has some merits, such as simple dropped, another vertex's second coordinate component
and robust. And it can also search the optimal solution or decreased, and the third vertex's two coordinate components
quasi-optimal solution with the overall parallel methods by remained unabated. As a result of continuity of g , if this
adjusting the direction of the search space continuously. triangle's diameter is small enough, the change of three
However, the algorithm also has some shortcomings, such as vertices will not differ too far. In this case, each vertex is an
slow convergence rate, prematurely and so many iterations. approximate fixed point.
To overcome these shortcomings, some improvement on Supposing that x is a vertex of a triangle, its integer label
genetic algorithm has been made constantly, for example the is determined according to l (x ) .
adjustment of population size[2], the optimization of control
parameters[3], an outstanding individual protection strategy ⎧ 0 g1 ( x) − x1 ≥ 0, g 2 ( x) − x2 ≥ 0
[4] and so on. ⎪
l ( x) = ⎨ 1 g1 ( x) − x1 < 0, g 2 ( x) − x2 ≥ 0
Genetic algorithm can converge to global optimal
⎪ 2 g 2 ( x) − x2 < 0
solution theoretically, but in the actual design, there is no ⎩
mature principle and methods of designing the convergence The triangle with three different kinds of integer labels is
criteria. Instead, the designing of convergence criteria called a completely labeled simplex. Usually, we use the
basically relies on the experience and understanding of the man-made labels not relying on self-mapping g and find the
extent to the question, and the most common method is
taking the max generation as the convergence criteria or the completely labeled simplexes though substitution of vertex
iteration will be terminated if average fitness of the continual with the same label (as shown in Figure 1).
m- generation has not been improved obviously. Therefore,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 527


DOI 10.1109/ICCET.2009.249
obtained, they are
B ( a + ( n + 1) h, c + kh) ,C ( a + ( n + 1) h, c + ( k + 1)h) a
nd D ( a + nh, c + ( k + 1) h) . Therefore, we can calculate
the coordinates of other vertices of the square only if the
relative coordinate of A is given. In view of this fact, we take
the relative coordinate of an intersection point which is
decided by two groups of straight lines as genetic encoding.

Figure 1. The triangulation


4
In this paper, the thought of triangulation is introduced to
genetic algorithm and as a result, the improved genetic 3
algorithm avoids the shortcoming of man-made initial point.
Though evolution, narrowing the searching ranges gradually
to enhance the convergence rate and reduce the iteration 2
times
III. THE IMPROVED GENETIC ALGORITHM 1
We frequently meet the questions of solving the optimum
value of max f ( x ) ( a ≤ x ≤ b) without constraint 0 1 2 3 4
condition, and supposing that f (x ) has continuous Figure 2. .relative coordinates

derivative in the given interval. In this case, the question of Crossover operator: Using the overall arithmetic
solving the optimum value of f (x ) can be transferred to
crossover strategy, supposing that p1 = ( x1 , x2 ) and
(1) (1)

solve the zero point of f (x) and then it can be transferred to


p2 = ( x1( 2) , x2( 2) ) are two parent vectors with satisfaction
solve the fixed point of f (x) according
of x1 ≠ x1 and x2 ≠ x2 . s1 = ( z1 , z2 ) ,
(1) ( 2) (1) ( 2)
to g ( x ) = x + f ′( x ) . Obviously in the numerical
calculation, it is difficult to find a vector x satisfying the s2 = ( w1 , w2 ) are the two descendants obtained though
formula of g ( x ) = x .Under the circumstance, the crossover operator.
conception of ε fixed point [5] has been introduced. z1 = [α x1(1) + (1 − α ) x2(1) ⎤⎦

that ε > 0 , we say x ∈ R is a ε
n
z 2 = [ β x1( 2 ) + (1 − β ) x 2( 2 ) ⎤⎦
Supposing -fixed point
(approximate fixed point) of the self- ,
mapping g : R n → R n , if x − g (x) < ε . Here w1 = [ (1 − α ) x + α x ⎤⎦
(1)
1
(1)
2

x − g (x) expresses the vector mold in Euclidean space.
w2 = [ (1 − β ) x (2)
1 + β x ⎤⎦
(2)
2
Relative coordinates: Supposing that the definition .
domain of f ( x1, x 2) is that a ≤ x1 ≤ b, c ≤ x 2 ≤ d and In the formulas above , α and β are random real
dividing the domain into many squares with two groups of number with satisfaction of 0 < α < 1 and 0 < β < 1 , [ ]
straight lines of {x1 = mh} and {x2 = mh} ( m is an is the integer operator.
integer).For a random point of intersection named A, we Mutation operator: In order to manifest the influence of
(1) (1) the integer label in genetic manipulation, the mutation
suppose that it’s coordinate is ( x1 , x2 ) , then there are
operation is as follows:
surely existing n, k satisfying the formula Taking the relative coordinate of A as the genetic encode,
then we can determine a square with A as a left bottom
of x
(1)
1 = a + nh , x = c + kh , and then (n, k ) is called
( 2)
1 vertex. Each vertex can search two aspects information; one
the relative coordinate of A. aspect expresses the parallel direction of the square and
Genetic encoding: selecting four adjacent points of a another describes the length of stride. Take vertex A as the
square randomly, according to the subdivision above, if the example, it has two directions, downward and towards left
relative coordinate of the lower left quarter vertex A of the (as shown in Figure 3), the length of stride for in this
square is given (as shown in Figure 2), recording that ( n, k ) , direction is the grid number with different label of A though
then the other three vertices` relative coordinates record the parallel migration. If the vertex happens to be in
B (n + 1, k ) , C (n + 1, k + 1) and D (n, k + 1) , boundary, then the length of stride to boundary outside is ∞ ,
or if searching in the boundary along a direction not to find a
simultaneously the coordinates of B, C and D can be
vertex with different integer label, we also suppose length of

528
stride along this direction is ∞ . If each direction length of
stride is ∞ , approaches to the origin. Chose the minimum
length of stride from 8 directions of four vertexes and obtain Start
a square though parallel moving according to this direction.
The coordinate of the left bottom vertex of the new square,
recording (n′, k ′) , is taking as the chromosome encoding According to precision request, design
after mutation of vertex ( n, k ) . First of all, this mutation h = {h1 , h2 ,", hn } ;
need to search the in formations of the vertices, then it
carries on specific operation according to the results of the
mutation. We call this mutation as neurons mutation that is a
guiding mutation. Carries on square cutting in half region Di , with two

groups of lines { x1 = mhi } , {x 2 = mhi }


A D

Coding, initialization, p(0) , t<-0


B C
Calculates each individual to correspond the

Square four apexes the integer markings


Figure 3. Relative coordinates and vertex information

For example, as shown in Figure3, giving the square


corresponding with the mutation individual according to the
counter clockwise, the search information is given according
to the below order: first the horizontal direction, then vertical Whether has the entire
direction, under the circumstance, obtaining 8 integers,
supposing that are: 12, 23, 8, 15, 7, 12, 5, 6, choosing the sign square?
minimum one that should be 5. According to above
hypothesis order, 5 correspond with left direction. Suppose N
A’s encoding is ( n, k ) , the mutation encoding Y

becomes (n − 5, k ) . Carrying on search according to the


N
direction of coordinate connection though crossover Whether meets the
operator, this is carried on along the vertical or horizontal precision Y
direction between the selected individual.
The individual which obtains through crossover
Y
operation or mutation operation must be examined that
whether the four vertices integer labels of the square includes End
0, 1, and 2. If including the three labels, we call the square
the completely integer label square, the small region
determined by the square is the extreme point scope. Selection
In order to make sure the operation effectively, the
algorithm uses the thought of gradually thin cuts in half.
Design a series of h = {h1 , h2 ,", hn } , Crossover

satisfies hi % hi +1 = 0 according to the result precise degree.


In which % is the complement of a number operator, that is Mutation
the vertex which obtained in preceding cutting in half is still
in the latter thinner cutting in half. Firstly in the given scope,
determine a smaller scope which includes the optimal Obtains the new generation of
solution, then takes this scope as the new domain of individual p (t + 1)
definition and searches again. Reduce the search scope
gradually until the algorithm meets the requirements
precision.
Improvement genetic algorithm flow chart following
shown in Figure 4: Figure 4. The improved GA flow chart

529
IV. EXAMPLE CONFIRMATIONS and then designing genetic operator, Population is used to
The test function: find a full-scale triangle as a more objective criteria for
convergence. Simulation gains the good result as expected.

⎪ min f ( x1 , x2 ) = ( x1 + x2 )
2 2
⎨ ACKNOWLEDGMENT

⎩ s.t− 2 ≤ x i ≤ 2. (i =1,2) The authors gratefully acknowledge the supports of
National Natural Sciences Foundation of China under the
The function achieves the minimum in (0,0) . project number 60875037 and Natural Sciences Foundation
In this example, h = {1,0.1,0.001,0.0001} crossover of Hebei Province under No.F2007000710 and
No.E2008000731.
probability pc = 0.1 , mutation probability pm = 1 .The
completely label square obtains though the iteration, the
search scope are: (0 ≤ xi ≤ 1) , (0 ≤ xi ≤ 0.1) , REFERENCES
[1] Holland, J. Adoptation in Natural and Artificial Systems [M].
(0 ≤ xi ≤ 0.01) and (0 ≤ xi ≤ 0.001) in turn. From this, University of Michigan Press, 1992,44~50
the search scope reduces unceasingly with unceasing thinner [2] Arabs J, Michalewicz Z,MulaWka J. GAVaPS--a Genetic
cutting in half. From this example the search scope are Algorithms
st with Varying Population Size.In:Proceedings of the
1 IEEE International Conference on Evolutionary
contracting to (0,0) gradually, using the limit thought, the Computation(ICEC’94), 1994, 73-78
optimum point is (0,0) . [3] Eiben A. E., Hinterding R., Michalewicz Z. Parameter Control in
Evolutionary Algorithms. IEEE Transaction on Evolutionary
Computation, 1999, 3(2): 124-141
V. CONCLUSION
[4] Farzad G,Gecil A. Application of random restart in genetic
This paper proposed an improved genetic algorithm algorithms[J].Information Sciences.1996,85(2):81~102
based on the fixed point. Carrying on the triangulation to the [5] Wang Zeke, pure fixed point algorithm foundation [M]. National
solution space and calculating the integer label of the vertex University of Defense Technology publishing house, 1993

530
2009 International Conference on Computer Engineering and Technology

P2DHMM:A Novel Web Object Information Extraction Model

Jing Wang1,Zhijing Liu1


1School of Computer Science and Technology, Xidian University, Xi’an 710071, China
E-MAIL: wangjing@mail.xidian.edu.cn , liuprofessor@163.com

Abstract—Due to the difference between web page and plain presentation of P2D-HMM, and improves P2D-HMM for
text document, the concept of web object is introduced in web objects extraction and Section 4 is the experimental
this paper. Besides, the supposed state transition and the results and analysis. Finally, Section 5 concludes this
emission symbol conditions are improved based on Pseudo paper.
two dimension hidden Markov model (P2D-HMM), and a
novel web objects information extraction method is II. WEB OBJECTS
proposed. Finally, through an example, it shows that the
proposed method has a very high precision for web objects Due to the differences between web page and plain text
information extraction. document, we define the concept of web objects as the
principle data units about which web information is to be
Keywords : Web Object; Pseudo two-dimension Hidden collected, indexed and ranked [3]. Usually, web objects
Markov Model (P2D-HMM); Information Extraction (IE) are noun concept such as authors, papers, conferences or
journals. Of course, different types of objects represent
I. INTRODUCTION the different concepts information, and we suppose the
Along with the rapid and continuous development of same style of objects have a common rational
the Internet technology, web pages can provide a huge pattern R ( a1 , a2 ,… , am ) , where the attribute
amount of information. But how to extract the needed set A = {a1 , a2 ,… , am } is used to describe the objects.
information from the web is always a necessitous
problem. To resolve the problem, the web information For the web page creators are always displaying
extraction (IE) is proposed. Now there are three common semantically related information together, the information
models for IE: the model based on pattern dictionary, the about an object on web page is usually grouped together
rule-based model and the hidden Markov model (HMM). too, and we call the collection of information which
At present, the classic information extraction from relates to a single object is object block. For an object
plain text document usually makes use of nature language block on a web page, we can further segment it into
processing (NLP), and the extraction rules mainly are atomic extraction entities called object elements. So the
based on the rational syntax among words [1]. Although object block Ei can be described as a sequence of
the web page may contain structured and plain text, it’s
always semi-structured text. And the information on page
elements Ei =< ei1ei 2 eiT > , where eij only belongs to
is also dynamic and appears in different style, so the a single attribute of the object, whereas an attribute can
classic information extraction for processing plain texts contain several elements.
cannot be directly applied to the web page. Of course, we
can transform each web page into a plain text document
by removing HTML tags and other irrelevant codes. But
treating web page as plain text is unwise obviously,
because a lot of information such as page structure and
layout will be lost [2].
In this paper, a new information extraction method
based on web objects is proposed and it can effectively
extract web objects from multiple heterogeneous web data
Figure 1. Web objects information extraction
sources. For example, information about “author” objects
can be found in personal homepages, paper header and As shown in the right of Figure 1, every section can be
even online databases. For the web objects features, consider as an object block, where “Bill Gates” is a web
traditional HMM is extended to Pseudo two- object with the attributes name, title, organization. After
dimensional HMM model (P2D-HMM) for the web extracting the objects, the data shown in the left of Figure
objects information extraction. 1 can be obtained.
The paper is organized as follows. Section 2 briefly
Given an object block Ei =< ei1ei 2 eiT > and its
introduces the concepts of web objects, object block and
object elements and so on. Section 3 provides a detailed relevant object pattern R(a1 , a2 ,… , am ) , we should

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 531


DOI 10.1109/ICCET.2009.147
assign an attribute name from the attribute
set A = {a1 , a2 ,… , am } to each object element eij , so the
corresponding label sequence Li =< li1li 2 liT > of
block Ei can be gotten. After segmenting a given object
block into an object element set, the label operating can
be consider as a sequence data classification problem.
One of the most popular and effective methods is HMM (c)
for the task [4]. For the web objects have several Figure 2. The states of P2D-HMM
attributes, this paper extended traditional HMM to P2D-
HMM, and makes it more appropriate for web objects As above Figure showing, traditional one-dimensional
extraction. In the following section 3, we will have a HMM is extended to a two-dimensional hidden Markov
detailed discussion about P2D-HMM. model (P2D-HMM), which contains a "super-state" and
each super-state has a HMM known as the "Sub-state".
III. P2D-HMM The structure of Two-dimensional hidden Markov model
In general, Web page can be divided into Navigation, is actually a group of HMM will be embedded in another
Theme Text, User Interaction, Copyright, the Websites state of HMM
Label areas and so on. Although the position of web page P2D-HMM is no real sense of the "two-dimensional
may be different in the term of various web design styles, hidden Markov model," because it is impossible for a
but the content of the division is not affected. So we can super-state in one state to transfer to another super-state,
establish a Hidden Markov Models of five states for the the vertical transfer of the state is limited to super-states.
HMM. Figure 2 is typical two-dimensional Hidden Markov
In this model, five states themselves are not directly Model for web information extraction. Obviously,Website
visible, but the each observation vector belongs to a Label and Copyright area have less characteristics
certain state. Namely, all the observation vectors are relatively, and the other area has more ,especilly the
divided into five states, which reflect the changes in Theme text area.
HMM[5]. HMM do use the method to record the Although more of the sub-state, the higher the
differences of web page in different area accuracy of modeling, but the complexity of computation
Although a one-dimensional HMM can be used in will also be increased. Practice has proved that the
information extraction, but a Web page is two- number of sub-state is 2,3,5,2,2 in six super-state
dimensional, so two-dimensional HMM model should be respectively, under the precondition of computational
better reflected the differences of web page in different complexity being controled, we can build the model for
area. In this way, we can enhance the accuracy and the webpage more accurately.
efficiency of the model. So the two-dimensional hidden Formally, a P2D-HMM[6] consists of the following
Markov model is introduced in this paper. five parts:
Observing that visual layout structure of a Web page qid is the i th sub-state on d th layer, where
reveals the logical relationship among different blocks,
this state transition sequence in which page elements d ∈ {0, D} . And it represents super-state when d=0
following a logical relationship, is rather stable and and sub-state when d=1.
appropriate .so we propose a VIPs method for the Web
a) N o is the number of super-states in model. These N
page Segmentation and the result as the Figure2 showing.
states are q 0 = {qi0 } , 1 ≤ i ≤ N o
b) Π q0 = {π 0 ( qi0 +1 )} : the super-state initial
probability distribution, where π 0 ( qi0+1 ) represent the

super-state qi0 probability in time 0 .


c) A: the hidden state transition probability
distribution. Aq0 = {aq0 q0 } , where aq0 q0 is stand for the
i j i j

(a) (b) probability from the super-state q transferred to q 0j


0
i

532
d)
i
{ ( )} is the distribution matrix of
Bq0 = bq0 Ot0,t1
i
P (O | Q , λk1 ) = bq(1 ) (o1, s )bq(1q)1 (o2, s )
k
1

T
k
1 2
bq(1 ) q1 (oT , s )
k
T −1 T
(2)
Observation probability, where Ot0 ,t1 is observation = bq1 (o1, s )∏ bq1
(k ) (k )
1 (ot , s )
1 t −1qt
t =2
vector concentrated in the row t1 and column t 0 .
Formula (1) multiplied by formula (2) is:
Embedded in the super-state of the hidden Markov
model includes the following elements: P(O, Q | λk1 ) = π q(1k )bq(1k ) (o1, s )aq( k1q)1 bq(1kq)1 (o2, s )
1 1 1 2 1 2
(k ) (3)
1) The number of sub-states in k th super-state is N 1 T
i∏ (aq( 1 ) q1 q1 bq(t−1) qt (ot , s ))
k k

and the set of sub-states is q1 = {qi1} . t =3


t − 2 t −1 t

For given the model λk , find out the state transition


1
2) The initial probability distribution of sub-states:
Π (k )
q1
= {π (k )
q1i
}; π (k )
q1i
is the probability of sub-state q i
1
sequence Q which maximizes P (O, Q | λk ) is our
1

in super-state k at time 0. objective. In GHMM an observation symbol k is


3)The probability matrix of states transfer: extended from its mere term attribute to a set of attributes
Aq(1k ) = {aq(1kq)1 } ; aq(1kq)1 is the probability of k super- as n1 , n2 , , nZ . We assume the attributes are
i j i j

1 independent from each other and consider a linear


state’s transfer from state qi to state q j1 . Z
combination of these attributes bij (n) = ∑ α ib (n ) .
s =1
s
s
ij s

4) B
(k )
= {bq1 (Ot0,t1 )} is the distribution matrix of
(k )
i Where α s is the weight factor for the ns attribute,
Observation probability, where Ot0 ,t1 is observation Z

vector concentrated in the row t1 and column t 0 .


and ∑α s
= 1, 0 ≤ α s ≤ 1 . So equation (3) now becomes:
s =1

Λ ( k ) = {Π (qk1 ) , Aq(1k ) , B ( k ) } representing the k-th k ⎡ ⎤


Z
If
P(O, Q | λk1 ) = π q(1 )bq(1 ) (o1, s )aq( 1q)1 ⎢ ∑ α s ibqs1q1 (o2, s ) ⎥
k k

super-state, P2D-HMM that can be defined


1 1 1 2
⎣ s =1 1 2
⎦ (4)
as λ = (Π q0 , Aq0 , Λ ) , where Λ = {Λ(1) , Λ( 2) , , Λ( N0 ) } ⎡ ⎤
T Z
i∏ (aq( 1 ) q1 q1 ⎢ ∑ α s ibqs1 q1 (ot , s ) ⎥)
k

The difference between HMM is reflected by the t =3


t −2 t −1 t
⎣ s =1 t −1 t

corresponding relation between their states and parted In (4), if we set α1 = 1 , α s = 0(2 ≤ s ≤ Z ) , that is, we
observation vectors. Hence, it is the first thing to get a choose only one observation symbol set, then we can
group of observation vectors for the establishment of reduce (4) to (3). The improvement based on P2DHMM
HMM, which means that Web page segmentation is can be extended to Forward-Backward algorithm, Viterbi
needed. Here we adopt VIPs algorithm. algorithm and Baum-Welch algorithm, so as to resolve
Given sub-model λk in k-th super-state, get the state
1
three basic problems that must be solved for the model to
be useful in real-world applications. These problems are
sequence probability Q = q11q12 qT1 . evaluation, decoding and learning problems.
P(Q | λk1 ) = π q(1k ) aq( 1kq)1 aq(1kq)1 q1 aq( 1k ) q1 1
IV. WEB OBJECT INFORMATION EXTRACTION
1 1 2 1 2 3 T −2 T −1qT

T (1) To extract Web text information, first we need to


= π q(1k ) aq(1kq)1 ∏ aq(1k ) q1 1 process Web page according to their formats, and then
1 1 2 t −2 t −1qt
t =3 information is extracted from semantic understanding
(k ) level of Web text.
Where π is the probability of sub-state qi1 of k-th
q1i Web page information extraction based on P2D-HMM
super-state at the time i. aq(1kq)1 is the probability of k consists of the following two phases:
i j (1) Learn model parameters using statistical method
super-state’s transfer from state qi to state
1
q j1 . Given from training data
Step1:The content block of the Web pages
model λk , in the case of state sequence Q the probability
1
identification;
we propose multiple features (term, layout, and
of observation sequence O is:
formatting) as the emission of P2D-HMM , and separate
the web content block by Vips as observation sequences
of P2D-HMM.

533
Step2: Web page pre-processing: Segment page into numbers of correct Web object identification
R=
several single object blocks. For every block Ei , segment numbers of all Web object identification
it into object element set Ei =< ei1ei 2 eiT > , and P=
numbers of correct Web object identification
numbers of possible Web object identification
labeling every eij ; the segmentation of the super-state
2× R × P
HMM embedded in the input sequence is adjusted by the F=
R+P
one-dimensional Viterbi algorithm to make
To verify the proposed method of information
P(O | Q, λ( k ) ) output the maximum value. extraction based on web objects, we randomly selected
Step3:The output of P (O | Q, λ ) 200 computer scientists’ homepages from the Internet,
(k )
as the
and choose the “author” of homepage as the object with
observation probability of λ . After completing all the
(0)
seven attributes such as name, affiliation, address, email,
observed sequence calculation, we can implement the phone, degree and other. We randomly selected 150 pages
one-dimensional Viterbi to output maximum value of as training set and the other 50 pages as testing set.
P(O | Q, λ( 0 ) ) .therefore we can identify hidden state In this experiment, three different approaches are
applied for the testing set: (1) the approach based on
behind super-state in P2D-HMM, and the content block conditional random field (CRF); (2) the approach based
E = E1 E2 EN on maximum entropy Markov model (MEMM); (3) the
Step4:Apply ML algorithm to learn P2D-HMM P2D-HMM approach based on web object. The average
parameters. In this step, the extended Baum-Welch extraction precision of each approach is shown in Table 1.
algorithm is used to calculate the initial probability,
transition probability and emission probability; it means TABLE I. THE COMPARED RESULT
to solve the learning problem of P2D-HMM. Approach P R F
(2) web objects information extraction based on the CRF 73.2% 76.7% 74.4%
learned P2D-HMM model MEMM 78.8% 76.5% 78.1%
P2D-HMM 85.2% 83.2% 82.6%
Step1:Pre-process the input of web page, and convert it
into a sequence of object blocks. The emission probability Table1 shows that the method proposed in this paper
of one block is the sum of emission probabilities of each has highest precision, because the precision based on
object element. Supposed block object block is higher than that based on single word, and
the labeling process is based on object elements instead of
sequence E = E1 E2 EN , where EK can be divided single word too. The detailed extraction precisions of the
into T-th Web object and Ek =< ek 1ek 2 ekT > . So the testing set are shown in table2.
probability of state j emission k-th block is: TABLE II. TABLE 2 THE DETAILED EXTRACTION PRECISIONS OF
T
bij ( Ek ) = ∑ bij ( Ekt )
THREE APPROACHES

CRF MEMM P2D-HMM


t =1
Name 69.4% 75.4% 82.4%
Step2:Baum-Welch algorithm is uesd for each well
Affiliation 81.9% 85.3% 89.3%
training model HMM to slove λ* = arg max P(O | λk ) , Address 61.8% 70.2% 81.7%
which can be identified the classes of the content blocks Email 81.2% 87.6% 92.5%
Phone 90.3% 93.2% 96.6%
in web page . 66.5% 70.7% 76.3%
Degree
Step3: Input the block sequence E = E1 E2 EN and
Web object Ek =< ek 1ek 2 ekT > ,the Viterbi In the table 2 ,the extraction precisions of Email and
addresses are increased sharply, that is because these two
algorithm is applied to find the state sequence attributes have the notable feature format. Therefore, we
λ * = arg max P(O | λk1 ) of maximal probability, which training less sample for such attributes, it can get good
matches the observation block sequence, and output the identification.
label sequence. VI. CONCLUSIONS
V. EXPERIMENTS AND ANALYSIS In this paper, a concept of web object is introduced for
Here, we take the recall and accuracy ratio as web-specific features, and a novel approach for web page
evaluation standards. When we compare segmentation information extraction is proposed based on P2D-HMM.
results of the different class of web page, we use the F The approach firstly segments page into some object
measure which combines recall (R) and precision (P), and blocks, and then uses P2D-HMM for web objects
the recall, precision and F measure are defined as: information extraction. The experimental results show

534
that the novel approach can significantly improve the web Knowledge and Data Engineering, VOL.18, NO.3. MARCH
2006:334-349.
object extraction accuracy.
[3] Z.Nie, Y.Zhang, J.-R.Wen et al. Object-level ranking: Bringing
order to web objects. In Proceedings of WWW Conference, 2005.
ACKNOWLEDGEMENTS [4] J.Zhu, Z.Nie, J.-R.Wen et al. 2d conditional random fields for
This research project was promoted by the National web information extraction. In Proceedings of ICML Conference,
2005.
Science & Technology Pillar Program No. [5] Jinlin Chen, Ping Zhong, Terry Cook. Detecting Web Content
2007BAH08B02. Function Using Generalized Hidden Markov Model. IEEE
Proceedings of the 5th International Conference on Machine
REFERENCES Learning and Applications. 2006.
[1] Lance A.Ramshaw, Ralph M.Weischedel. Information extraction. [6] Du Shi-ping. The Baum-Welch algorithm of mixture of HMM2
IEEE ICASSP 2005, 2005: 969-972. [J]. Journal of Yunnan University, 2006, 28(2):98-102.
[2] Shiren Ye, Tat-Seng Chua. Learning Object Models from
Semistructured Web Documents. IEEE Transactions on

535
2009 International Conference on Computer Engineering and Technology

An Efficient Multi-Patterns Parameterized String Matching Algorithm with Super


Alphabet

Rajesh Prasad Suneeta Agarwal


Department of Computer Science & Engineering Department of Computer Science & Engineering
LDC Institute of Technical Studies Motilal Nehru National Institute of Technology
Allahabad, India-212502 Allahabad, India-211004
rajesh_ucer@yahoo.com suneeta@mnnit.ac.in

Abstract— In the parameterized string matching, a given alphabets, Σ: for fixed symbols, and Π: for parameter
pattern P is said to match with a sub-string t of the text T, if symbols. The symbols of P and T are taken from Σ∪Π. In
there exist a bijection from the symbols of P to the symbols of t. this type of matching, while looking for occurrences of P in
This problem has an important application in software T, the symbols of Σ must match exactly whereas the symbol
maintenance where it is required to find equivalency between of Π can be renamed. A given pattern P is said to match with
two sections of codes. Two sections of codes are said to be
equivalent if one can be transformed into the other by
a sub-string t of the text T, if ∃ a bijection from the symbols
renaming identifiers and variables only. In this paper, we of P to the symbols of t. This problem has important
extend single pattern exact shift-or string matching algorithm applications in software maintenance and plagiarism
to find all parameterized occurrences of multiple patterns P0, detection. In software maintenance, it is required to find
P1, P2 …Pr-1, (r≥1), each of equal size m , in the text T. The set equivalency between two sections of codes. Two sections of
of r multiple patterns is being handled by using the concept of codes are said to be equivalent if one can be transformed into
classes of characters. The new algorithm is named as multi- the other via one-to-one correspondence. A number of
pattern parameterized shift-or (MPSO) string matching algorithms have already been developed for exact string
algorithm. We further extend MPSO by using the concept of matching problem, but only a few exist for parameterized
super alphabets. Implementation results show that by using a matching. In [6], parameterized on-line matching algorithm
super alphabet of size s, the algorithm (MPSO) is speeded-up for a single pattern was developed. This algorithm runs in
by a factor of s, where s is the size of the super alphabet (i.e. s O(n log min (m, |Π|)) worst-case time. Another algorithm
is the number of characters processed simultaneously). By was given in [7] that achieve the same time bound both in
using multi-pattern parameterized string matching, the search average and worst case. In [8], shift-or string-matching
time is lesser than individual pattern searching in the text. We algorithm for parameterized string matching problem was
also show the performance of super alphabet MPSO with developed.
respect to duplicity present in the code. However these In this paper, we extend single pattern exact shift-or
algorithms are applicable only when pattern length (m) is less
string matching algorithm to find all parameterized
than or equal to word length (w) of computer used (i.e. m≤w).
occurrences of multiple patterns P0, P1, P3 …Pr-1, (r≥1), each
Keywords- Algorithm, finite automata,shift-or, bit-parallelism, of equal size m , in the text T. The set of r multiple patterns
prev-encoding and parameterized matching. is being handled by using the concept of classes of
characters. The new algorithm is named as multi-pattern
parameterized shift-or (MPSO) string matching algorithm.
I. INTRODUCTION We further extend MPSO by using the concept of super
In the exact single pattern string matching problem, all alphabets. Implementation results show that by using a super
the occurrences of a given pattern P[0…m-1] in the given alphabet of size s, the algorithm (MPSO) is speeded-up by a
text T[0…n-1] are to be reported. Many algorithms for factor of s, where s is the size of the super alphabet (i.e. s is
solving this type of problem exists [1, 2, 3]. In the multi- the number of characters processed simultaneously). By
pattern [4] string matching problem, all the occurrences of using multi-pattern parameterized string matching, the search
multiple patterns P0, P1, P2 …Pr-1, (r≥1) in the given text T time is lesser than individual pattern searching in the text.
are to be reported. In the present discussion, we assume that We also show the performance of super alphabet MPSO with
all patterns have equal size m. In any bit-parallel algorithm, respect to duplicity present in the code. However these
multiple patterns can be handled in 3-ways. In the first way, algorithms are applicable only when pattern length (m) is
concept of classes of characters is used. In the second way, less than or equal to word length (w) of computer used (i.e.
we concatenate the first characters of each patterns, then m≤w). To the best of our knowledge, these generalizations of
second characters of each patterns and so on to form a single shift-or string matching algorithm have not been studied.
pattern. In the third way, we concatenate the patters as such.
In the present discussion, we consider the classes of II. PARAMETERIZED STRING MATCHING PROBLEM
characters for handling the multiple patterns. In the We assume that pattern is P[0…m-1] and text is
parameterized string matching [5], we have two disjoint T[0…n-1]. All the symbols of P and T are taken from Σ∪Π,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 536


DOI 10.1109/ICCET.2009.199
where Σ is fixed symbol alphabet of size σ and Π is B[c] is zero, then in automaton, there is a transition from the
parameter symbol alphabet of size π. The pattern P matches state i to i+1 with character c.
the text substring T[j…j+m-1] if and only if ∀ i ∈ For searching, algorithm needs a bit mask D so that ith bit
{0,1,2…m-1}, fj (P[i] = T[j+i]), where fj(.) is a bijective of this mask is set to 1, if and only if state i in NFA is active.
mapping on Σ∪Π. It must be identity on Σ but need not be For each text symbol c the state vector D is updated by D ←
identity on Π. For example, let Σ = {A, B} and Π = {X, Y, (D << 1) | B[c], where D << 1, makes the state active and
Z, W} and P = XYABX. P matches the text substring then looks for transition on that state. If after the ith step
ZWABZ with bijective mapping X → Z and Y → W. This (after processing the ith symbol of the text), the (m-1)th bit of
mapping can be simplified by prev encoding [5]. For any D is zero, then there is an occurrence of P with shift i-m. If m
string S, prev(S) maps its each parameter symbols to a non- ≤ w, then the running time of the algorithm is O(n). In
negative integer p, where p is the number of symbols since general, running time of the algorithm is O(n⎡m/w⎤).
the last occurrences of s in S. The first occurrence of any
IV. MULTIPLE PATTERNS HANDLING METHODS
parameter symbol in prev encoding is encoded as 0 and if
s∈Σ it is mapped to itself (i.e. to s). For example, prev (P) = In this section we explain the methods of handling
00AB4, prev(ZWABZ) = 00AB4. With this scheme of prev multiple patterns. There are three ways of handling multiple
encoding, the problem of parameterized string matching can patterns in any bit-parallel string matching algorithm. In the
be transformed to traditional string matching problem, where present discussion, we assume that all patters are of equal
prev(P) is matched against prev(T [j…j+m-1]) for all j = 0, 1, size (m).
2...n-m. The prev (P) and prev(T [j…j+m-1]) can be In the first way, the basic idea is that each text character
recursively updated as j increases with the help of lemma is allowed to match to the character of position j in any of
given in [5]. the patterns. For example, if we have patterns “Hello” and
“world” then we form a single super pattern “{H, w}, {e,
III. SINGLE PATTERN SHIFT-OR STRING MATCHING o}, {l, r}, {l}, {o, d}”. This matches many text strings, for
PROBLEM example, “wello”, “Horlo” and “Helld”. This is a filter and
Before presenting standard shift-or string matching potential matches require verification. The algorithm does
algorithm [1], we define the following terms: not change at all, but only preprocessing changes. After we
- bm-1bm-2…b1b0 denotes bits of computer word of have computed Bi table for each character of each patterns
length m. Pi, we take the union of 1(set) bit to give resulting B. Rest of
- Exponentiation is used to denote bit repetition (e.g. the algorithm remains the same. This approach is applicable
041=00001) for large number (r) of patterns.
- C-like syntax is used for operations on the bits of In the second way, to search a set of patterns P0, P1…Pr-1
computer words: “|” is for bit-wise or, “&” is for of length m in parallel, we concatenate the first characters of
bit-wise and, “~” complements of all the bits. The each patterns, then second characters of each patterns and so
shift left operation, “<<r”, moves all bits to the left on to form a single pattern. The shift in D is not in one bit
by r and enters ‘r’ zeros in the right.
but in r bits. i. e. D = D << r and instead of looking for the
In the shift-or algorithm, an automaton is constructed as
follows: The automaton has states 0, 1, 2…m. The state 0 is highest bit dm-1 of the computer word, we consider all the r
the initial state, state m is the final state and ∀ i = 0…m-1, bits corresponding to the highest positions, i.e. we replace
there is a transition from state i to state i+1 for character P[i]. the old 10m-1 mask by 1r0r×(m-1) .This will automatically
In addition, there is a transition for every c ∈ Σ from and to search for r words of length m and keep all the bits needed
the initial state, which makes the automaton non- for each word. This approach is applicable when number of
deterministic. For example, for the pattern P = ba, the shift- pattern (r) is not very large and total length of pattern (after
or automaton is shown in fig. 1. catenation) is ≤w/2. In this approach, we do not get any
false matches.
a, b In the third way, we just concatenate the patterns to form
a single pattern. In this case, the shift is of only one bit and
b a the bit mask is (10m-1)r. In this way D is replaced by D = (D
0 1 << 1) & (1m-10)r. This way is applicable when number of
2
pattern(r) is not very large and total length of pattern (after
concatenation) is ≤w/2. In this way, we do not get any false
matches.

Figure 1. A shift-or automaton for P = ba. V. MULTI PATTERNS PARAMETERIZED SHIFT-OR STRING
MATCHING ALGORITHM
The preprocessing algorithm builds a table B having one In this section, we discuss multi-patterns parameterized
bit mask entry for each c ∈ Σ. For 0 ≤ i ≤ m-1, the mask B[c] shift-or string matching algorithm. This algorithm is
has ith bit set to 0 iff P[i] = c otherwise it is 1. If the ith bit in

537
generalization of the algorithm explained in section 3. We 2 do P′[k] ← Prev-encode(P[k], m)
can generalize it in the following way: 3 for i ← 0 to π-1
(i) The set of patterns P0, P1, P2…Pr-1, (r ≥ 1) are encoded by 4 do pos[П[i]] ← -∞
prev-encoding and stored as prev(Pi), 0 ≤ i ≤ r-1. To 5 for k ← 0 to r-1
compute prev(Pi), an array prev[c] is formed, which for each 6 do for i ← 0 to σ+m-1
symbol c ∈ Σ, stores the position of its last occurrence in Pi. 7 do B[k][A[i]] ← ~0
For example, let pattern P = XAYBX on fixed alphabet Σ = 8 for k ← 0 to r-1
{A, B} and parameter alphabet Π = {X, Y}. Here prev(P) = 9 do for i ← 0 to m-1
0A0B4. 10 doB[k][P′[k][i]]←B[k][P′[k][i]]&~(1 << i)
(ii) For all j = 0, 1, 2...n-m, prev(T[j…j+m-1]) can be 11 for k ← 0 to r-1
efficiently prev-encoded by lemma 1. 12 do for i ← 1 to m-1
(iii) A table B is built such that all the parameterized pattern 13 do B[k][A[σ+i]]←B[k][A[σ+i]] &
prefixes can be searched in parallel.
(B[A[σ]] | (~0<<i))
To simplify indexing into B array, it is assumed that Σ =
14 for i ← 0 to σ+m-1
{0, 1…σ-1}, and prev encoded parameter offsets are
15 do B'[A[i]] ← ~0
mapped into the range {σ…σ+m-1}. For this purpose, an
16 for k ← 0 to r-1
array A[0…σ+m-1] is formed, in which the positions 0…σ-
17 do for i ← 0 to σ+m-1
1 are occupied by element of Σ and the rest positions are
18 do B'[A[i]] ← B'[A[i]] & B[k][A[i]]
occupied by prev encoded offsets. For example, if we take
19 D ← ~0
pattern P = XAYBX on Σ = {A, B} and Π = {X, Y} with σ 20 mm ← 1 << (m-1)
= 2, m = 5, then prev(P) = 0A0B4. Array A looks like as: 21 for i ← 0 to n-1
22 do c ← T[i]
A B 0 1 2 3 4
23 if c ∈ Π
0 1 2 3 4 5 6 24 then c ← i-pos[T[i]]
25 if c > m-1
Let P′ is prev(P) and T′ is prev(T). Searching for P′ in T′ 26 then c ← 0
can’t be done directly as explained below. Let P = XAXX 27 pos[T[i]] ← i
and T = ZZAZZAZZ then P′ = 0A21 and T′ = 01A21A21. 28 D ← (D << 1) | B'[c]
Clearly, P has two overlapping parameterized occurrences 29 if (D & mm) ≠ mm
in T (one with shift = 1 and other with shift = 4), but P′ does 30 then Verify match at position i-m
not have any occurrences in T′ at all. The problem occurs
because of when searching for all the length m prefixes of Following is the algorithm to evaluate prev-encoding of
the text in parallel, then some non-zero encoded offset p in pattern P while prev-encoding of the text is embedded in the
T′ should be interpreted as zero in some case. For example, search code.
when searching for P′ in T′[1…4] = 1A21, 1(from left) Algorithm 2 (Algorithm to Calculate prev-encoding)
should be zero. The solution to this problem is that, the Prev-encode (P, m)
lemma 1 should be applied in parallel to all m-length sub 1 for i ← 0 to π-1
strings of T′. This is achieved as follows: 2 do pos[Π[i]] ← -∞
The bit vector B[A[σ+i]] is the match vector for A[i], for 0 ≤ 3 for i ← 0 to m-1
i ≤ σ+m-1. If the jth bit of this vector is 0, it means that P′[j] 4 do c ← P[i]
= A[i]. If any of the ith least significant bit of B[A[σ]] is 0, 5 if c ∈ Π
corresponding bit of B[A[σ+i]] is also set to 0. This is 6 then c ← i-pos[P[i]]
achieved as follows: 7 if c > m-1
B[A[σ+i]] ← B[A[σ+i]] & (B[A[σ]] | (~0 << i)) 8 then c ← 0
which signifies that, for σ ≤ i ≤ σ+m-1, A[i] is treated as 9 pos[P[i]] ← i
A[i] for prefixes whose length is greater than A[i] and as 10 prev[P[i]] ← c
zero for shorter prefixes thus satisfies lemma 1. 11 return (prev(P))
We apply way I for handling the multiple patterns. In
this approach, we build a table B for each pattern and take VI. MULTI PATTERNS PARAMETERIZED SUPER ALPHABET
the union of zero bits to form a single table B. The SHIFT-OR ALGORITHM
algorithm 1 explains the concept. We first explain the concept of super alphabet [10] then
Algorithm 1 (Multi-Pattern Parameterized Shift-or) we explain the multi-pattern parameterized shift-or
MPSO (T[0…n-1], P[0…r-1][0…m-1]) algorithm using it. In the super alphabet approach,
1 for k ← 0 to r -1 processing of ′s′ number of symbols of the text T at a time

538
is done (i.e. we use a super alphabet of size σs, packing s 25 if c ∈ Π
symbols of T to form a single super symbol, where σ is the 26 then c ← j-pos[T[j]]
size of fixed alphabet Σ). There are two techniques to form 27 if c > m-1
super alphabets: First technique uses the concept of non- 28 then c ← 0
overlapping characters and second technique uses the 29 pos[T[j]] ← j
concept of overlapping characters. 30 C ← C | ((B′[c] & 1m ) << s-p)
In the present paper, we have taken the first technique of
forming super alphabets. In these two techniques the 31 p ← p+1
original automaton is not modified, but super alphabet is 32 prev[j] ← c
used to simulate finite automaton faster. Algorithm 1 given 33 D ← (D << s) | C
in section 4 is speeded-up by a factor of ′s′ by using the 34 for d ← m-1 to m+s-2
concept of super alphabets. In this algorithm, P is encoded 35 do mm ← 1 << d
in the same way as in section 4 but ′s′ symbols of the text T 36 if (D & mm) ≠ mm
are encoded at a time and its encoding is also embedded into 37 then Verify match at l×s-d-1
the search code. In the parameterized super alphabet shift-or 38 i←i+s
string matching algorithm, prev(T) is transformed into T′,
where for any s, T′ contains s consecutive symbols of VII. EXPERIMENTAL RESULTS
prev(T) and the vector D is modified as: We have implemented the algorithms explained in
D ← (D << s) | B′[T′[i]] sections 5 (MPSO) and sections 6 (MPPSO) in C and
Let C = {c1, c2, c3…cs} is a super alphabet consisting of s compiled with Borland C++ version 3.1 compilers. We
symbol of prev(T), then B′[C] = ((B[c1] & 1m) << s-1) | performed the experiments on the Pentium R D 2.80 GHz
(B[c2] & 1m) << s-2) |…| (B[cs] & 1m). If after the lth step, machine with 512 MB RAM, running Microsoft Windows
any of the m-1 to m+s-2 bits (from right to left) is 0, then XP. A text file of size 264244 characters long is taken as
pattern may occur at l×s-d-1, (where dth bit from right is a 0) input. The symbols of text and patterns are taken from
and hence need to be verified. For verification purpose, we Σ∪Π, which is fixed and equal to the set {a, b, c, d, e, f, g,
have taken the help of lemma 1 given in [5]. Following is h, i, j, k, l}. The algorithms can also be tested for different
the pseudo code of the algorithm. sets of symbols of different sizes. We experimented with
Algorithm 3 (Multi-Pattern Parameterized Super Alphabet parameterized super alphabet shift-or algorithm for s = 1(the
original algorithm), s = 3, s =5, s=7 and s = 8, while keeping
Shift-or)
r = 1. We also experimented with parameterized super
MPPSO (T[0…n-1], P[0…r-1][0…m-1], s) alphabet shift-or algorithm by increasing the size of the
1 for k ← 0 to r -1 parameter symbol alphabet (∏) and therefore decreasing the
2 do P′[k] ← Prev-encode(P[k], m) size of the fixed symbol alphabet (Σ) (because Σ∪Π is
3 for i ← 0 to π-1 fixed), while keeping the text size, pattern length (m), and
4 do pos[П[i]] ← -∞ super alphabet size (s) fixed. We also compare the
5 for k ← 0 to r-1 performance of multi-pattern parameterized shift-or
6 do for i ← 0 to σ+m-1 algorithm with single pattern parameterized shift-or
7 do B[k][A[i]] ← ~0 algorithm. For this comparison, we run multi-pattern
parameterized single times, and single pattern parameterized
8 for k ← 0 to r-1
r times. These algorithms only count the number of matches.
9 do for i ← 0 to m-1
Table 1 gives the timings for the multi-pattern
10 do B[k][P′[k][i]]←B[k][P′[k][i]]&~(1<< i) parameterized super alphabet shift-or (MPPSO) algorithm.
11 for k ← 0 to r-1 Fig. 2 gives the effect on processing time of algorithm
12 do for i ← 1 to m-1 MPPSO on increasing the size of the alphabet ∏ (i.e.
13 do B[k][A[σ+i]]←B[k][A[σ+i]] & increasing the duplicity in the code). Fig.3 compares the
(B[A[σ]] | (~0<<i)) performance of the multi-pattern parameterized shift-or
14 for i ← 0 to σ+m-1 algorithm (MPSO) and single pattern parameterized shift-or
15 do B'[A[i]] ← ~0 (PSO) algorithm, while keeping the pattern length (m) and
16 for k ← 0 to r-1 Σ∪∏ fixed.
17 do for i ← 0 to σ+m-1 TABLE I. PARAMETERIZED SUPER ALPHABET SHIFT-OR EXECUTION
18 do B'[A[i]] ← B'[A[i]] & B[k][A[i]] TIME(S) IN SECOND FOR VARIOUS SUPER ALPHABET (FOR FIXED PATTERN
LENGTH M = 5, NO. OF PATTERN = 1)
19 D ← ~0
20 i ← 0, l ← 0 Super s=1 s=3 s=5 s=7 s=8
alphabet
21 while i < n
Time 12.2091 10.1758 8.02087 7.012452 6.45301
22 do l ← l+1, p ← 1, C ← 0 (second)
23 for j ← i to i+s-1
24 do c ← T[j]

539
[3] A.V.Aho and M.J. Corasick, “ Efficient String Matching: An aid to
bibliographic search”, Communication of ACM 18(6), pp. 333-340,
18 1975
16 [4] Leena Salmela, Jorma Tarhio and Jari Kytojoki, “ Multi-pattern
14 String Matching with q-grams: To appear in ACM Journal of
Experimental Algorithm”
12
Time (s) [5] B.S. Baker, “Parameterized pattern matching by Boyer-Moore type
10 algorithms”, In proceedings of the 6th ACM-SIAM Annual
8 Symposium on Discrete Algorithms, San Francisco, CA, pp. 541-550,
1995.
6
[6] B.S. Baker, “Parameterized duplication in string: algorithm and
4
MPPSO (s=2) application in software maintenance”, SIAM J. Computing, 26(5),
2 pp. 1343-1362, 1997.
0 [7] A. Amir, M. Farach and S. Muthukrishnan, “Alphabet dependence in
6, 6 5, 7 4, 8 3, 9 2, 10 1,11 parameterized matching”, Information Processing Letter 49(3), pp.
111-115, 1994.
Sigma, Pi [8] Kimmo Fredriksson and Maxim Mozgovoy, “Efficient parametrized
string matching”, In Information Processing Letters (IPL), 100(3),
pp. 91-96, 2006.
Figure 2. Effect on Processing Time of MPPSO on increasing parameter [9] G. Navarro and Mathieu Raffinot, “Fast and Flexible String Matching
symbol alphabet ∏. by Combining Bit-parallelism and Suffix automata”, ACM Journal of
70 Experimental Algorithms , 5(4), 2000.
[10] Kimmo Fredriksson, “ string matching with super alphabets”, In
60 Information Processing Letters (IPL), 87(4), pp. 201-204, 2003.
50
Time
40
30
PSO
20
MPSO
10
0
1 2 3 4 5
No. of Patterns (r)

Figure 3. Comparison of PSO and MPSO Algorithm (m = 5 and Σ∪∏ are


fixed).

VIII. CONCLUSIONS
We have shown that using a simple trick of moving to a
super alphabet decreases the search time of the algorithms.
The parameterized super alphabet shift-or (s = 3, s = 5, s =
7, and s = 8) algorithm is faster than parameterized shift-or
(s = 1).The experimental results show that when we increase
duplicity present in the code (i.e. increasing the size of ∏,
and hence decreasing the size of Σ), the searching time
increases. From fig. 3, we see that MPSO algorithm
performs better than single pattern algorithm. However
these algorithm works only when pattern length (m) less
than or equal to word length of computer used (i.e. m≤w).
Further extension of super alphabet parameterized shift-or
algorithm can be made for larger pattern size (i.e. for m >
w) and for regular expression searching.
REFERENCES
[1] R.A. Baeza-Yates and G.H. Gonnet, “A new approach to text
searching”, Communication of ACM, 35(10), pp. 74-82, 1992.
[2] R.S. Boyer and J. S. Moore, “A fast string-searching algorithm”,
Communication of ACM, 20(10), pp. 762-772, 1977.

540
2009 International Conference on Computer Engineering and Technology

Research on Modeling Method of Virtual Enterprise in Uncertain Environments


Zhang Jihai
School of Management and Economics
Beijing Institute of Technology
Beijing, China
E-mail: zhangjihai@139.com

Abstract—Virtual Enterprise is a kind of temporary which improves the adaptive ability of the method. Agent
organization which is made up of many enterprises. The UML is a kind of agent modeling language which is based
internal and external environments of virtual enterprises are on UML. [1][2][3]There are a number of frequently used
changing incessantly. Nowadays, it is short of the normalized modeling methods, such as AUML and MESSAGE (
methods of describing this kind of organizations in uncertain
Methodology for Agent Oriented Software Engineering)
environments. Role theory is used to design role view which
associates with task view, workflow view, organization view, .This paper amends MESSAGE using role theory, and
agent view and interaction view. Finally, gains the modeling provides modeling method of virtual enterprises based on
method of virtual enterprise based on extended agent UML. role theory. In this method task view, organization view,
workflow view, agent view are bound together by role view.
Keywords- Virtual enterprise; Agent UML; Role Theory The method has a strong ability to adapt to the uncertain
environments through adding role view and amending task
I. INTRODUCTION view and workflow view.

World-wide economics makes the market become II. TASK VIEW


international and global. Virtual Enterprise provides an Task view describes the relation between goals, tasks,
available approach for the enterprises to respond quickly the context, and the process of decomposing the main task. After
requirements of global market (Roger Nagal and Rick Dove, the leader of the alliance puts forward a new task, it needs
1991; Jiang Xingsong,1996). Based on the information decompose the new task according to the method of
infrastructure, the enterprises can rapidly integrate the decomposition plan. Its main content is that complex
resources, technology, men, organizations and cooperation to problems are decomposed to sub-problems. Finally, the
develop and to produce the available products so as to win complex problems are decomposed to relative unattached
the market chance and competitive (Dove,1995) .It makes sub-problems, and all sub-problems constitute the complex
the manufacturing integration from in one enterprise into problem. The decomposed process of main tasks is shown on
multi-enterprises. On the other hand, it is difficult to design a Fig.1.
suitable virtual enterprise because of the uncertain
environments.
The uncertain environments of virtual enterprises mainly
involve two main aspects. The first one is the external
environment. For example, a virtual enterprise usually is
established for a kind of products. When the demand of the
product is changing, the virtual enterprise needs adjust its
organizational structure, workflow and members. The other
aspect is about the internal environment. Virtual enterprises
usually are made up of many enterprises. The members can
dynamically join and withdraw the virtual enterprises. In fact
the internal environments of virtual enterprises also
dynamically changes. The changes of internal environments Figure 1.Task view
can also lead to change in organizational structure, workflow
and members. For these reasons, the adaptive ability of III. WORKFLOW VIEW
virtual enterprises need be raised. After drawing task view the complex problems are
The adaptive capacity is reflected in the entire life cycle decomposed to sub-tasks. Every sub-task usually represents
of virtual enterprises. When virtual enterprise is established, an activity. When drawing workflow view, every activity can
it needs dynamically adjust target products and decompose be assigned to one role. If the decomposed granularity is
productive tasks. In the operational phase, members can very small, the roles related to the complex problem are very
dynamically join and withdraw the virtual enterprises, and numerous. The virtual enterprise will involve a lot of
therefore the workflow and organizational structure of virtual members and be very complex, so it will be difficult to deal
enterprises need be adjusted. It also needs research the with the so many members. When modeling a virtual
modeling method of virtual enterprises in uncertain internal enterprise a method about virtual activities can be used. It
and external environments. This paper provides a new can assemble a virtual activity with basic activities according
modeling method based on role theory and Agent UML to the assembling method, finally gets a workflow view. A

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 541


DOI 10.1109/ICCET.2009.219
typical modeling process about virtual enterprise usually
includes four steps. Firstly, according to the characteristics of
the target product decomposes the task. Secondly, assembles
basic activities to the virtual activities according assembling
rules. Thirdly, assemble virtual activities to workflow model.
Fourth, defines the member roles according to the virtual
activities. A role usually is bound to one virtual activity.
Fifth, binds the candidates with the member roles. The
binding process is very complex which involves multi-stage
negotiation. After carried out the five steps, a workflow view
about the virtual enterprise can be drawn.
IV. ORGANIZATION VIEW
Organization view is used to describe the structure,
Figure 2.Organization view
competence, functions of virtual enterprises. It opens up
organizational structure of virtual enterprises. This paper V. AGENT VIEW
provides a method which builds organization view according
to role theory. Agent views describe the models of members. They also
The relation of members is described in organization reflect the relation between agent members, the targets,
view. The members of virtual organizations are looked as tasks, roles and resources. Fig.3 shows a typical agent view.
roles in this method. The organization based on role theory is G1
called role organization. The organization views of virtual A2

enterprises are made up of roles which are basic units. The


organizations of virtual enterprises show as the following <<wish>> R1

formula. <<play>>
PS::={TASK,ROLE,AGENT,ROLERLN,
S1 A1
TASKROLELN,ROLEAGENTLN} R2
<<play>>
ROLE::={Role1,Role2,…,Rolen} <<provision>>
accesses
ROLE indicates the set of roles. ROERLN indicates the manages
relation of roles. Virtual enterprises usually contain three
kinds of roles. The first one is the leader of the alliance. The Resource Resource
S2
second one is the basic roles. The last one is the control 1 2
roles. The organization of virtual enterprises is the set of the
three kinds of roles.
The main function of organization view is to describe the
rights and duties of objects of other views, such as workflow Figure 3.Agent view
view, agent view. The characteristics of role view make it Agent view focuses on the descriptions of resources. The
important in the modeling process of virtual enterprises. [5] resources really include the ability and potential of
(1) Describes interactive mode of members. Every members. Agent view covers all the inherent members of
member need take up its rights and duties which virtual enterprises. Every agent usually includes the
following resources properties: capacity, potential and
are defined in roles.
effective time. The capacity is on behalf of the resources
(2) It describes the interactive activities of members. ability of the agent which can be used to carry out the
(3) It’s a kind template that defines the binding productive task currently. Potential indicates the resources
manners between agents and roles. The template ability of agent which can be used to carry out the productive
also supports that agents dynamically change its task in future. Potential can transform into actual capacity.
roles. The attribute of every agent should involve names, ability,
(4) Role organization is a kind of organizational potential, roles and tasks.
plan which can be instantiated, generalized and
aggregated. VI. INTERACTION VIEW
When modeling virtual enterprises, the organization view Interaction view (ID) can be described as a two-
needs describe organizational structure, basic units, agents tuples.ID:=(SD,WD). SD is on behalf of the communications
and the relation between agents and roles. of roles in the alliance which can be described with Agent
UML. ID is made up of workflow views and is the set of the
interaction between roles. Interaction view mainly focus on
the control process of interaction. Fig.4 describes the
interactive process between two members.

542
Initiator
<<participation>>
Collaborator
When building role view, another important concept is
<<pa rticipation>>
member
Travelling
Request 1
member role pattern which is an analytical and design pattern. This
pattern can be reused and combined. Every role pattern
Travel
describes a kind of repeatedly occurred collaboration and
1 Requirement 1 solution in a particular scene. Role pattern is the set of roles,
the relation of roles, and protocols. It is similar with plans
Travel
1..*
Arrangement
1..*
and mainly has four functions. Firstly, it defines the applied
range of role pattern. Secondly, it describes roles and the
relation of roles. Thirdly, the basic situation of agents can be
Figure 4.Interaction view found in role patterns. Finally, it describes the binding
Interactive protocol and the specification of messages relation between roles, tasks and agents.
can be described with interaction view of Agent UML. The A role pattern usually is suitable for special context whose
communications of roles are the basis of other collaboration applied range is very limited, and therefore it need assemble
which is based upon communication mechanism. When many simple role patterns into one complex role pattern.
involving the communications between roles it needs Role contact is imported to assemble simple role patterns. A
consider the specification of messages. typical role contact can be described as following form.
Role Pattern Contract {
VII. ROLE VIEW Name: the name of role contact
Role view is linked to the five other views. The Partner: the list of role patterns
information of other views can intensively display in the role Partner Relation: the relation of role patterns
view. In fact, role view describes the mechanism of virtual Coordination: the rules between role patterns}
enterprises from different aspects. It is an efficient technique to solve complex problems that
can be used to work out a role pattern. The combination of
TABLE I. THE TEMPLATE OF ROLES role patterns is a complex process which contains
Role ID Role Name
organizational integration, demand integration and resource
Role Role Description integration.
Information Role Inheritances
Role Data VIII. THE MODELING PROCESS OF VIRTUAL ENTERPRISE IN
Role Methods UNCERTAIN ENVIRONMENTS
Context Collaboration Collaboration Partner Role
Environment Entry Type
The target for modeling virtual enterprises is to describe
Role Binding Goal Task Goal Name Task Content the process of production and build the information system
Binding Name Reference for virtual enterprises. The modeling method of virtual
Agent Agent Name Binding Content enterprises can be described as following steps.
Binding Kind Reference (1) The productive tasks are decomposed according to
their characteristics, and a task view is drawn.
Role binding reflects the relation between roles, tasks and (2) Get virtual activities according to rules and algorithms
agents. When building a virtual enterprise the binding of combination. In detail, it needs connect virtual
process of roles and tasks is defined by the leader of the
activities with symbolic links. On the other hand, it
alliance according to demands and plans. The binding
needs defines the relation between roles and virtual
relation is very complex between roles and agents. When
assigning a role to an agent, the leader of the alliance needs activities. Every virtual activity usually binds a role.
negotiate with the agent. Role view can be described with (3) Defines roles according to the workflow view. In
Agent UML. Fig.5 displays a typical role view. details every member should be assigned suitable
rights and duties. Finally, gets organization view of the
virtual enterprise.
(4) Defines the model of agents which participate in
productive activities. In details gets the relation
between agents, roles and resources.
The above description indicates that the different views of
a virtual enterprise are related and the role view is the core
of the modeling method.
IX. CONCLUSION
Virtual enterprises are temporary organizations and
established for special products. Nowadays, it lacks the
standardized modeling method of virtual enterprises in
Figure 5.Role view uncertain environments. The method about extended Agent
UML and role theory can describe the virtual enterprises in

543
all directions. The method involves multi-dimensional REFERENCES
views, and role view is the core of the method. Task views [1] B. Bauer, J.P. Mueller,and J. Odell,“An Extension of UML by
describe the decomposing process of productive tasks. protocols for multi-agent interaction,”International
Organization views describe the structure of virtual Conference on Multi-Agent Systems(C).ICMAS '00, Boston,
Massachusetts. 2002,pp.207-214.
enterprises and the relation between roles and agents.
[2] JeanLuc Koning, MarcPhilippe Huget, Jun Wei,and Xu
Workflow views describe the productive process of target Wang, “Extended Modeling Languages for Interaction
product and the binding relation between virtual activities Protocol Design,” AOSE2001. Montréal, Canada. 2001.
and roles. Agent views describe the structure of members [3] Odell James J, Parunak H Van Dyke, and Bauer Bernhard.
and the resource of virtual enterprises. Interaction views “Representing Agent Interaction Protocols in UML,”
describe the communication and interactive methods of http://www.auml.org/, 2001.
roles. The role views links target products, tasks, activities [4] Zhang Jihai, “Modeling and Simulation of National Economy
Mobilization System,”Beijing: Beijing Institute of
and resource. The method has strong adaptability in Technology Press,2008,pp.147-173.
uncertain environments. [5] Qi yan, Li Junshan, Xin Junmao,and Zhi Changqi. “RoMAS:
Role-based Model Method for Multi-Agent System,”National
University of Defense Technology,2002.

544
2009 International Conference on Computer Engineering and Technology

Design of Intrusion Detection System Based on a New Pattern Matching Algorithm

ZHANG Hu
College of Information Technology
Anhui University Finance & Economics
Bengbu, China
e-mail: zhanghu2000@163.com

Abstract—Intrusion detection technology can help the system intrusion is found, the intrusion response module will
to deal with network attacks, extend the security management respond timely, give an alarm, cut off the connection and
ability of the system manager and increase the integrality of record the attack log; otherwise, it will make a detailed
information security foundation structure. Pattern matching record of protocol operation log.
algorithm is the core algorithm of intrusion detection system A detailed description of protocol processing module,
based on feature matching as well as an algorithm which is attack feature pattern matching module, log record module
universally used in current intrusion detection equipment. A and intrusion response module is given below.
design scheme of intrusion detection system based on pattern
matching algorithm is proposed in this paper. Meanwhile,
aiming at several key modules of intrusion detection system, a
detailed analysis of data acquisition module, protocol
processing module, feature matching module, log record
module and intrusion response module is also given in this
paper.

Keywords-intrusion detection system; pattern matching


algorithm; data acquisition module

I. INTRODUCTION
Due to limitations of computer network and vulnerability
of information system, hardware resources, communication
resources, software and information resources on computer
network system are damaged, altered and leaked or their
functions are invalid for foreseeable, unpredictable or baleful
reasons, which make the information system become
abnormal and even lead to system collapse and paralysis,
thereby causing enormous economic losses. A great deal of
practice has proved that as a newly emerging security
technology, it is not enough for intrusion detection to ensure Figure 1. Intrusion detection system based on pattern matching algorithm
the security of network system only depending on traditional
passive protection and a complete security strategy should
include real-time detection and fast response. A design of III. DETAILED DESIGN SPECIFICATION OF SEVERAL
intrusion detection system is proposed in this paper. MODULES

II. GENERAL DESIGN OF SYSTEM A. Data acquisition module


Shown as Fig 1, data acquisition module is responsible Data acquisition module can collect data packets in three
for capturing various types of hardware frames from network ways, namely adopting shared concentrator, switch port
flow and handing these hardware frames to data pretreatment mirror image and monitoring interface box. If data
module and then the data pretreatment module strips off acquisition module wants to monitor the data which flow
hardware frame heads and checks the integrity of messages, through the network card but don't belong to its own host, it
after that, according to the application protocols messages must round the processing mechanism when the system
belong to, these hardware frames are sent to response works normally and access to the network bottom layer
protocol analyzing and processing modules respectively. directly. First, set the working mode of network card as
Various protocol processing modules make corresponding promiscuous mode to make it receive data packets on target
treatments according to concrete protocols, for example, MAC address not its own MAC address and then access to
TELNET protocol has a process of packet. After that, feature the data link layer directly to capture relevant data, the data
pattern matching starts to judge if the intrusion occurs. If the should be filtered by application program not upper layers,

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 545


DOI 10.1109/ICCET.2009.244
such as IP layer and TCP layer, etc, in this way, all the data engine is called to carry out the real-time matching of data
which flow through the network card can be monitored. packages and rules.
Data acquisition module is composed of three parts, In the matching process, you can use the pattern
namely a data packet audiomonitor driver (it acquires matching algorithm to match from low appearance
network data packets and transmits the data packets to the probability to high appearance probability of letters in the
application program which runs on the user layer without pattern string in natural English, when a mismatch occurs,
modification), a low class dynamic link library (it runs on the use Badchar ( ) function which is similar to BM algorithm to
user layer and it can isolate application program from data realize the forward jump of host string pointer and carry out
packet audiomonitor driver to make application program run priority matching for low probability characters according to
on different systems without modification) and a high class probability, in this way, you can find as many mismatches as
static link library (it can be compiled together with you can and reduce as many comparison times as possible so
application program, use the services provided by the low that you can use Badchar ( ) function as early as possible to
class dynamic link library and provide perfect monitoring realize the forward jump of host string pointer.
interfaces for application program). Detection function Detect () will use corresponding rule
chain lists to check current packages according to different
B. Protocol processing module protocols. First, it checks if the contents of rule heads RTN
This module includes all sub-modules aiming at concrete (such as, source/destination address, protocol type and port
protocol processing: HTTP protocol processing module, FTP number, etc) match, if they don’t match, transfer to the next
protocol processing module, TELNET protocol processing node of the rule head chain list to continue to check, if none
module, POP3 protocol processing module, SMTP protocol of rule heads don’t match, which shows that defined
processing module, IMAP protocol processing module, intrusions don’t occur, the function returns to 0. If RTN
TFTP protocol processing module and PRC protocol match successfully, enter into rule option OTN chain list of
processing module. RTN to match, each option keyword corresponds to a
(1) Some protocol packages. TELNET protocol, SMTP concrete processing function plug-in. If a match is found, it
protocol, IMAP4 protocol and POP3 protocol, etc, are shows that an intrusion occurs, and then call the
character-oriented protocols, and therefore, a single protocol corresponding option keyword processing function, the
message transmitted from data acquisition module and data function returns to 1; conversely, if no match is found behind
preprocessing module needs to be cached by a protocol traversal list OTN, it shows that no defined intrusions occur,
processing module and a carriage return character is used to the function returns to 0.
represent the end of this process according to the command When a feature matches rules with Content keywords
end mode stipulated in the protocol, organize several with payloads of data packages, it must call a pattern
continuous protocol packages into a complete command matching plug-in, this plug-in will use efficient pattern
which can be detected by attack feature matching pattern, in matching algorithms to match payloads of data packages to
the process of package, the corresponding treatment of some find potential intrusions.
special keyed characters in concrete client protocol packages Finally, an output processing plug-in is called according
can be made, including command character, space character to detection results to log data packages according to the
and backspace character, etc in the protocol itself. mode set in advance and call concrete processing functions
(2) Preliminary judgment of intrusion behaviors. Some for intrusion behaviors or give an alarm signal.
simple intrusion behaviors can be judged in the protocol
processing module. Take FTP protocol processing module as D. Log record module
an example, after receiving FTP protocol messages, first The log record of intrusion detection system based on
carry out the heat preservation integrity judgment and then attack feature pattern matching can be divided into two
FTP computing operations and parameter lengths can be types, namely attack log record and protocol operation log
defined by the user, which can be regarded as FTP long- record. Attack log record provides essential information for
buffering overflow attack. An alarm signal is generated the network manager after intrusion events occur. Protocol
directly to be sent to the attack log record module and operation log record provides a set of comprehensive,
intrusion response module, it’s unnecessary to continue to operating system-independent and searchable log record,
hand the alarm signal to the attack feature pattern matching which can be used to audit and trace intrusion behaviors
module, which not only enhances the real-time performance afterwards.
of intrusion detection system but also reduces the resource
burdens of using attack feature matching pattern to detect
intrusion behaviors.
C. Pattern matching module
The concrete working process of pattern matching
module is essentially the matching process of rules and data
packages. After the dynamic organization and analysis of
rules and data package processing by package capture and
analysis module and preprocessor are finished, the detection
Figure 2. Call of log record module

546
log record independent of the log record of protected host,
Shown as Fig 2, when protocol processing module deals which provides detailed network or host access information
with corresponding protocol messages respectively, if an for the system manager and can be used to trace the source of
intrusion behavior is found, it will directly calls the attack intruder or the intrusion detection system based on audit, it is
log record module to make an attack log record; if no independent of the log record of server itself, and therefore
intrusion behavior is found, it calls the protocol operation log even though a practiced hacker dodges the detection of
record module to make a normal protocol operation log intrusion detection system, intrudes into the network or host
record. Similarly, when attack feature pattern matching and clears away the logs in the intruded server, the network
module is matched to a certain attack feature, it will also call manager can still find his whereabouts from the operation
the attack log record module. log record of intrusion detection system.
1) Attack log record. Because of different operation contents of various
Attack log record module is used to record the necessary protocols, various protocols have different contents of
information of intrusion behaviors detected by intrusion operation log, generally including the information below:
detection system and its processing flow chart is shown as Protocol service name, occurrence time of operation,
Fig 3. source address of accessor, source port used by accessor,
destination address of access and destination port of access
the rest are concrete operation contents of each application
protocol
For example, the operation content of RPC protocol is as
follows: Remote program number, remote program version,
remote procedure number, mapping program number and
mapping program version.
E. Intrusion response module
Intrusion response module gives corresponding responses
for verified intrusion behaviors, including static measures,
for example, record attack data, store captured data, send
emails and messages to the manager, it can also take some
active dynamic preventive measures, cut off the intruded
connection and modify the access control of router, for
instance. Generally, the corresponding module of system
mainly include three very important functions, namely Alert
(), logtoTable (UNIT SourIP , UNIT DestIP. CTime
TimeStamp) and TraceInstrusion (UNIT SourIP, UNIT
SourPort, UNIT DestIP, UNIT Destport). The function of
Alert () is to give real-time warning of intrusion behaviors,
the function of logtoTable (UNIT SourIP, UNIT DestIP.
CTime TimeStamp) is to set up a log of high danger class
intrusion behaviors in database and the function of
TraceInstrusion (UNIT SourIP, UNIT SourPort, UNIT
DestIP), UNIT Destport is to trace and take evidence of
intrusion behaviors if it proves necessary.
IV. CONCLUSIONS
Because many attack features are in accordance with the
idiomatic usage of natural English and the appearance
probability of English letters varies very much, according to
the above characteristics, a new pattern matching algorithm
Figure 3. Flow chart of attack log record module
is proposed in this paper, first sequence letters in the pattern
A complete attack log record should include the string from low appearance probability to high appearance
information below: probability in natural English, and then match one by one
Occurrence time of intrusion behavior, source address of according to the algorithm, in this way, you can find as many
intruder, source port used by intruder, destination address of mismatches as you can, thereby reducing the comparison
intrusion, objective of intrusion and name of port attack times. Finally, on the basis of this algorithm, an intrusion
feature pattern. detection system model based on pattern matching algorithm
2) Protocol operation log record. is put forward. In addition, a detailed analysis of data
Protocol operation log record module is a set of acquisition module, protocol processing module, feature
comprehensive and open service protocol-oriented operation pattern matching module, log record module and intrusion

547
response module of intrusion detection system is given in [4] Robert Graham, Protocol Analysis and Command Parsing vs. Pattern
this paper. Matching in Intrusion Detection System, http://www.networkice.com
[5] Neil Desai, Increasing Performance in High Speed NIDS,
REFERENCES http://www.linuxsecurity.com/resource-file/intrusion_
detection/increasing_Performance_in_high_ Speed_ NIDS.pdf
[1] Ulf lindvist, Phillip Brentano and Doug Mansur, “IDS Motivation,
[6] Moore, Strother J. The Boyer_Moore Fast String Searching
architecture, and An Early Prototype”, Computer Security
Algiruthm.Texas university. http://www.uteax.edu/moore/best-
Laboratory, US Davis: 160-171
ideas/string-Searching/index. html
[2] R. Bayer, Symmetric binary B-trees: Data structure and maintenance
[7] Jai Sundar Balasubramaniyan, Jose Omar Garcia-Fernandez, David
algorithms, Acta Information, 1972:34-56
Isacoff, Eugene Spafford, Diego Zamboni, “An architecture for
[3] Breslauer D, Efficient String Algorithmic [Ph.D. Thesis], Computer intrusion detection using autonomous agents”, CERIAS Technical
Science Department. Columbia University, NY: 231-255 Report 98/05, June 11. 1998:34-53

548
2009 International Conference on Computer Engineering and Technology

To Construct Implicit Link Structure by Using


Frequent Sequence Miner (FS-Miner)

May Thu Aung Khin Nwe Ni Tun


University of Computer Studies, Yangon University of Computer Studies, Yangon
Myanmar Myanmar
maythuaung.ucsy@gmail.com knntun@gmail.com

Abstract—Generally, link analysis is based re-ranking web-page probability distribution of a certain random walk on the web
retrieval in current web search engine. The primary reason lies link graph- the graph whose nodes are the individual Web
in the difference of link structures and data scale between global pages and directed edges are the hyperlink between pages.
web and website. In this paper, we propose a framework to The low performance of existing technologies lies in
construct implicit link structure by using Frequent Sequence
several aspects: to find relevant information using content-
Miner (FS-Miner) in the User Web Log. And then, the Page
Rank algorithm is applied to re-ranked Web Pages. The popular based similarity such as database approach need more time
web paths are used to extract in user’s navigation web log and and the searching keyword is restricted based on database
predict current user’s next step. Our system can solve the sparsity format. Link analysis technologies could not be directly
of Web links and the diversity problem of user’s access behavior. applied because the system will use the information
Moreover, our approach discovers users’ relevant documents to collected in web server to recommend the website based on
improve the performance of search results. user interest. It is very time consuming and therefore a tool
(intelligent agent) is required to narrow down searching.
Keywords- Web Usage Mining, Frequent Patterns, Sequence In general, the process of discovering useful the frequent
Mining, Incremental Mining, Web Logs, Link Analysis, Log
Mining
sequence is utilized by log mining methods such as
association rule mining, sequential pattern mining,
clustering and etc. A normal association rule mining
algorithm may fail to discover significant rules due to the
I. INTRODUCTION
diversity. Instead of this association rule, they based on the
Data mining has gain a lot of attention nowadays. The FP-growth algorithm to mine for generalized association
utilization of data mining techniques as a powerful data rules efficiently. These association rules are subsequently
extraction method brings up the popularity of data mining. pruned and applied to page re-ranking.
With the increasing popularity of the Web, it is no surprise In this paper, a method is proposed to generate implicit
that Web mining has attracted many attentions. Web mining link structure based on frequent sequence pattern mining
is the use of data mining techniques to automatically from Web Logs. We describe an overview of frequent
discover and extract information from Web documents. The pattern mining for extracting different types of patterns as
three categories of Web mining tasks are Web content implicit link in a Web log. We can obtain page’s access
mining, Web usage mining and Web structure mining. frequency and the traversal patterns of information finding
Structural Mining emphasizes on knowledge discovery by mining the user logs. To compute the importance of
for the structure of the Web system, including the mining of Web page, the link analysis algorithms use implicit links for
the user preferences on web browsing, the usage of the improving the performance of search result.
different URLs in a particular websites, external structure The rest of this paper is organized as follows. In Section
mining and internal structure mining. Structure mining is a 2, we introduce related works. In Section 3, we present
discovery patterns in the browsing and navigation to about frequent sequence patterns mining algorithm. In
understand users’ behaviors on the web. Within this Section 4, we describe mining technology to construct
category, we focus on link mining and review methods implicit links structure and the re-ranking mechanisms in
applied in Web structure mining such as HITs and Page site search. Finally, conclusions and future works are
Rank. Several Link Analysis algorithms, based on the discussed in Section 5.
popular Page Rank algorithm, play key roles in the context
of web search engines.
Global search engine such as Google and AltaVista has II. RELATED WORK
been a great help for users to find desired information on the Earlier works on association rule based log mining
ever growing Web. Google’s Page Rank is a widely applied focused on several applications. Nanpoulos et al. [1]
algorithm, which can be described as the stationary proposed a method for discovering access patterns from web

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 549


DOI 10.1109/ICCET.2009.145
logs based on a new type of association patterns. They use a constructed a new implicit link graph instead of the original
candidate generation algorithm that requires multiple scans explicit link graph in Web. Thus we use a Frequent
of the database. Srikant and Agrawal [6] presented an Sequence Pattern Mining (FS-Miner) method to extract
algorithm for finding generalized sequential patterns that implicit E ′ from Web logs by analyzing the observed users’
allows user-specified window-size and user-defined browsing behaviors.
taxonomy over items in the database. This algorithm also
required multiple scans of the database to generate
candidates.
Zheng Chen et al. [12] proposed an approach to
constructing implicit links by mining users’ access patterns,
and then apply a modified Page Rank algorithm to re-rank
web pages for small web search.
Traditionally, most of them use “full text search”
technology which a large amount of documents containing
the same keywords provided by the user and rank them by
keyword-similarity. Berkeley’s cha-cha search engine
organizes the search results into some categories to reflect
Figure 1. A Framework for constructing Implicit Link
the underlying intranet structure [2].
Kleinberg’s HITs algorithm [5] (is also called modified-
HITs). This method does not separate the user logs into Generally, a web can be modeled as a directed graph G=
sessions based on their tasks, thus many noise data will be (V, E) represent pages in the Web. We construct directed
introduced into the link matrix. implicit graph:
Mobasher et al. [7] proposed a framework for web
mining using various web mining task and implemented a G ′ = (V , E ′)
prototype namely WEBMINER by applying the framework
as proposed. The problem has already pointed out from the where V is the set of vertices represent the web page and
system is to perform cluster analysis on association rules E ′ denote implicit links between pages. Each implicit
and sequential pattern discovery. link I i , j ∈ E ′ assume that there exists implicit link
Mobasher et al. [8] proposed an effective technique for
capturing user profiles based on association rules discovery between pagei and page j . The entire Web log consists of
and usage based clustering combining with current status of a number of browsing session and navigational links is
an on-going activity to perform real time personalization generated by the user. These implicit links are then re-
while Toolan and Kushmerick proposed techniques based ranked by Page Rank algorithm.
on web usage mining to deliver Personalized Site Maps that
are specialized to the interest of each individual visitor.
Renata Ivancsy [11] proposed PD-Tree algorithm for A. Data Preprocessing
determining whether a tree is contained by another tree. By The starting and critical point for successful log mining
using a push down automaton, this can be done frequent is data pre-processing. The pre-processing of Web logs is
itemset discovery and the association rule mining with usually complex and time demanding. It comprises four
different minimum support and confidence threshold values. different tasks: (i) the data cleaning (ii) the identification
In mining phase, the frequent pattern discovery executed and the reconstructing of users’ sessions (iii) the retrieving
iteratively on the whole dataset. of information about page content and structure, and (iv) the
Some recommender systems [10] have been developed data formatting. Each entry in raw web server log contains
to recommend Web pages. They used the Apriori algorithm time, IP address, and automatic created unique session
to mine for association rules over user’s navigation identifier, visited page, referrer and other data. Many entries
histories. Their works focus on the discovery of frequent are considered as uninteresting items for mining and then
item sets in transactional databases but avoid costly repeated are removed. An example of web server logs can be
database scans and candidate generation. illustrated in Table 1.

III. GENERALIZED IMPLICIT LINK


CONSTRUCTION
We developed a general log mining model to discover
frequent sequence pattern for site search. This model is
illustrated in Figure 1. This model uses log file as the input
and output a set of frequent sequence pattern. We

550
6. LogReader.OpenLogFile(LogFilePath,
TABLE I. SAMPLE WEB SERVER LOGS LogFileName, ModeRead
StrTypeOfLogFormat)
7. LogReader.StrReadLog
8. While NOT LogReader.EndOfStrReadLog
9. Retrieve IP Address in Log Attributes
10. Retrieve WebLink in Log Attributes
11. Add IP Address and WebLink to HT
12. logReader.StrReadLog
13. Loop
The remaining entries must be grouped by the visitors 14.
that performed them. We group consecutive entries to a user 15. LogReader.CloseLogFile
session or “transaction”. We support two criteria: 16. End Sub
1) A new session starts when the duration of the
Figure 2. Algorithm for Creating Header Table
whole group of traversals exceeds a time threshold.
2) The elapsed time between two consecutive In Figure 3, to generate frequent pattern, server logs must be
traversals exceeds a threshold. filtered. Many entries are considered uninteresting for
After pre-processing, we can get a set of n pages, P= {p1, p2, mining are removed. Once scan the header table (HT), each
…, pn}, and a set of m transactions T={t1, t2, …,tm}, where entry in frequent table has the name of the link and the
each ti ∈ T is a subset of P. count of that link.

B. Mining Step of FS-Tree 1. Read record in HT


2. For each record in HT
In this section, let a sequence of pages 3. Read fields (URL link)
Seq= { p1 p2 .... pn } be a collection of items and a link li 4. RecordCount= RecordCount+1
5. Next record
from pi to pi +1 denote li = pi → pi +1 . We currently 6. If RecordCount>=min-sup
assume that consecutive accesses from the same host during 7. Save records
a certain time interval come from the same user. The log file 8. Else
9. Remove records
has to be converted into two fields: SID that stores the
session id and InSeq sequences of page references accessed Figure 3. Algorithm for frequent link and non-frequent link table
by the user in a certain order. We allow duplicate items can
be either backward traversal or the same item can appear
more than once in the same sequence. C. FS-Tree Construction
We consider any link that has the total number of links The FS-Tree [3] is a compressed form for representing
in the web log file is greater or equal than the minimum sequences scanned from the input web log file. It is
support count. If the number of link between pages is compressed with three main steps. These steps are
greater than or equal to minimum support count, we called performed for only frequent links (denoted as implicit
as frequent link. If the number of link between pages is less links).
than minimum support count, we called as non-frequent Extracting Derived Paths: We extract its derived paths from
link. In order to choose the most suitable support for mining Header Table (HT) by following the linked list head pointer.
user access pattern, when the minimum support is too small, For each path in frequent sequence tree, we extract its path
the number of implicit links is large. When the minimum from root of the tree until end of its path. We can call
support is large, the impact of the Page Rank on the search derived paths of each link.
result is very weak. In Figure 2, a header table (HT) stores Conditional Sequence Base: By using the set of derived
several attributes about frequent and potentially frequent paths of each link extracted in previous step, we construct
links in the database. Each entry in the header table HT has the conditional sequence base for each link by calculating
three fields: the name of the link, the count of that link and the frequency count of each link in the path.
linked list head pointer that points to the first edge in tree. Constructing Conditional FS-Tree: By using the conditional
The algorithm for creating header table is illustrated below: sequence base, we create a tree and insert each of the paths
from the conditional base of each link into it in a backward
1. Declare Variables manner. We create this tree with necessary nodes, edge and
2. edge counts. This tree is called the conditional FS-tree for
3. Sub HeaderTable (HT) that link.
4. Extracting Frequent Sequence Link Path: Given a
5. Set LogReader= CreateObject conditional frequent sequence tree of that link, we perform a
(“Log File Name”)
depth first traversal for that tree and return only sequences

551
link satisfying minimum support value. This link is called number of links on them, expect for a finite set of path
recommendation link for user based on previous navigation lengths that may be missing.)
web logs.
Now, we described in detail the mining steps that
the final user log contains all implicit links. We separated V. EXPERIMENTAL RESULT
implicit link from explicit links by setting minimum support Traditional search engines are widely used by people to
count. This method generates implicit link pair ( I i , j ∈ E ′) , find information on the web. Nevertheless, people often go
some specific web sites directly. The goal of our work is to
paths of the pattern should occur frequently in the log with improve the search performance by analyzing the user
different in-between pages. Thus we can extract implicit access log in the web site. At the pre-processing step, data
links by analyzing the observed explicit paths in the log file. cleaning is performed by filtering out the access entries for
After frequent sequence patterns are generated, we embedded objects such as images and scripts. After that, we
constructed the implicit link graph G ′ = (V , E ′) . We identify consecutive accesses from the same IP address
normalized implicit links by representing frequent link during a certain time interval is from a same user.
count. The resulting graph is used in subsequent link We use an efficient strategy for discovering frequent
analysis algorithm. patterns in sequence databases that does not require multi
scans of the database. Without the need for scanning and
reloading the entire database, this system scales up linearly
IV. RE-RANKING IMPLICIT LINKS with the size of the input database. Our approach provides
Link analysis algorithm play key role in web search significant performance advantages over full re-computation
system. Link analysis technology has been widely used to even for relatively large size.
analyze the page’s importance, such as HITs [4] and Page In web, hyperlinks could be divided into navigational
Rank [6, 2]. Page Rank is an algorithm of Google which links and recommendation links. The latter is useful for link
measures the importance of web pages. Page Rank analysis to enhance search. Some evidences should be given
algorithm models the users’ browsing model, which to prove that the implicit links satisfy the recommendation
assumes that a user either follow a link from the current assumption. The prediction precision directly reflects the
page or jump to a random page in the graph. The Page Rank correctness of the page recommendation. The precision
measure effectively distinguishes high-quality web pages measures the degree to which the algorithm produces and
from low-quality web pages. The Page Rank of pagei can accurate result. In order to evaluate the precision measures
of search effectively:
be defined as:
P+
Prediction precision =
ε (P+ + P− )
R (i ) =
n
+ (1 − ε ) ∑ R ( j ) / outdegree ( j )
( j ,i )∈G
(1)
+ −
where Where P and P are the numbers of correct and
• ε is a constant usually set between 0.1 and 0.2 , incorrect predictions, respectively. Our experiment result
• n is the number of nodes in G and used from log file from the web proxy server, which
• outdegree(j) is the number of the edges leaving contains different web sites accessed by different users. The
result is shown in Figure 4.
page j .
Link analysis algorithm similar to Page Rank, we apply
it to re-rank the web pages after obtaining the implicit link
structure. To describe the graph, we construct an adjacency
matrix ‘A’ that used to compute the rank score of each page.
Generally, the rank score PRi of pagei is evaluated by a
function on the rank scores of all the pages that point
to pagei :

PR i = ∑ PR . A[ j , i ]
j:I i , j ∈ E
j
(2)

In our system, we will not consider the web graph


represented by matrix ‘A’ that is not irreducible (i.e, there is
a directed path from every node to every other node) and
aperiodic (i.e, for all i,j, there are the paths with all possible Figure 4. Prediction of Precision by Pages

552
We predicted the higher the minimum support threshold Knowledge and Data Engineering Exchage Workshop
of implicit link, the percentage of prediction precision (KDEX’99) (Nov.).
linearly increases. It indicates that our implicit link is [9] Page L., Brin S., Motwani R. and Winograd T. The
accurate and reflects users’ behavior and interest hyperlinks PageRank citation raning: bringing order to the Web.
to indicate our implicit links are accurate. We found that the Technical report, Stanford University Database Group,
performance of implicit link based Page Rank is not worse 1998.
than explicit link-based Page Rank. In order to evaluate our [10] Page L., Brin S., Motwani R. and Winograd T. The
algorithm effectively, given a query Q, the precision PageRank citation raning: bringing order to the Web.
measures the set of the relevant pages to the query and the Technical report, Stanford University Database Group,
number of pages. 1998.
[11] R.srikant and R.Agrawal, “Mining Generalized
Association Rules”, in Proceeding of the 21st Int’l
VI. CONCLUSION AND FUTURE WORK Conference on very Large Databases, Zurich,
This paper navigates web paths in web log for improving Switzerland, Spetermber 1995.
the performance of site search of users’ relevantly. The [12] Yang Q., Zhang H.H. and Li T. Mining web logs for
basic idea can be interpreted jump to a page that is relevant prediction models in WWW caching and prefetching. In
to the current page. Our method use frequent sequence Proc. of KDD’01, 473-478, August 2001.
patterns to construct implicit link structure. And then, our
system applied Page Rank Algorithm to re-rank web pages
based on previous pages in the same user session. The
experiment results show that our system can effectively
improve the search performance. How to discover users’
relevant documents to improve the performance search
results, are main links of our future works. Since Page Rank
is an algorithm which is query independent, in the future we
plan to show that our algorithm improve a part of popular
queries’ precision.

REFERENCES

[1] A.Nanopoulos, D.ketsaros and Y.Manolopou Los.


Effective prediction of web-user accesses. A data
mining approach. In WEBKDD workshop, San
Francisco, CA, Aug.2001
[2] Brin S. and Page L. The anatomy of a large-scale
hypertextual web search engine. In Proc of www 7,
107-117, Brisbane, Australia, April 1998.
[3] C.Ruiz, E.Rundensteiner, and Maged EI.sayed, ‘FS-
Miner: Efficient and Incremental Mining of Frequent
Sequence Patterns in Web Logs”, In ACM, November
13-14,2004.
[4] Kleinberg J.M. Authoritative sources in a hyperlinked
environment. Journal of the ACM, 46(5); 10-25,1963.
[5] Levene M. and Wheeldon R. A Web site naviagation
engine. In Proc. Of www10, HongKong, May 2001.
[6] L.Page, S. Brin, R. Motwani and T. Winograd. The
PageRank Citation Ranking: Bringing Order to the web.
Technical report, Stanford University, Stanford, CA,
1998.
[7] Mobasher, B., Jain, N., Han, E.S., and Srivastava, J.
(1996). Web Mining: Pattern Discovery from
World Wide Web Transactions. Technical Report 96-
050.
[8] Mobasher, B., Cooley, R., and Srivastava, J. (1999).
Creating adaptive web sites through usagebased
clustering of URLs. In Proceeding of the 1999 IEEE

553
2009 International Conference on Computer Engineering and Technology

Recognition of Eye States in Real Time Video

Lei Yunqi, Yuan Meiling, Song Xiaobing, Liu Xiuxia, Ouyang Jiangfan
Department of Computer Science, Xiamen University,
Xiamen, P. R. China
e-mail: yqlei@xmu.edu.cn

Abstract- A composite algorithm is proposed to identify the


opened and shut states of eye in real-time video. Sequentially,
each frame of the video is processed first to find and separate
the eye regions; then, the accumulation array of circular Figure 1. Eye state identification
Hough transform is applied for detecting circles to recognize
the opened state of the eye, and the upper eyelid curve is cal- and extracted from the obtained frame, after that the eye
culated to identify its bending direction to recognize the shut regions are separated and cut from the face area. Followed
state; after that, if the state cannot be determined yet, judging by some pre-processing on eye regions, the exact eyes
by the standard deviation of distance between eyelids, the eye without eyebrow or glasses borders are obtained. And then, a
state of blinking is determined finally. An accuracy of 94% for proper algorithm is applied to identify the eye states, opened
eye state detection is obtained in our experiments by using the or shut. The frequency of blinking and PERCLOS then can
proposed algorithm. As an important part, the algorithm is be determined and fed into the fatigue warning system.
going to be utilized in a fatigue warning system for drivers. As stated above, to detect drowsiness of a driver by
identifying his/her eye states, we need real-time video to
Keywords- Real time video processing; pattern recognition; compute the frequency of blinking and PERCLOS, thus, a
eye state recognition; drowsiness detection; fatigue warning video camera must be installed properly on a car. In our
system
experimental scheme, a camera is installed behind the
windscreen and above the dashboard. In order not to disturb
I. INTRODUCTION the attention of driving and not to block the driver's sight, the
Eye state detection plays an important role in the fields camera is set on driver's right front side (or on left front side)
like human-machine interface and drowsiness detection of other than directly point to the driver, as shows in Fig. 2.
drivers, etc. To detect the drowsiness of a driver, many There is a problem that should be taken into
efforts have been made in the past decades [1,2,3]. The consideration when capturing the video in a car. Generally,
methods already proposed can be summarized as to take the the illumination level changes extremely wide from day time
following three measurements: (1) to monitor the movement to night time, the face area is very bright if the sunlight is
states of the driver (such as the activities of his/her eyelids, directly shined on the driver while it is almost totally dark at
the movement styles of head, the grip strength on steering night. To adapt to this difficult situation, the video camera
wheel, etc.); (2) to analyze the physiological signals (ECG, adopted should be of auto-iris-diaphragm and dual
EMG, etc.) of the driver; (3) to compute the running functioned of both visible light and infrared light. Besides,
parameters of the vehicle (speed, acceleration, driving trace, Infrared Light-Emitting Diodes (IR LEDs) should be used
etc.). Generally, the methods based on the later two are for the infrared light supplement for the camera during the
complex and expensive since a lot of sensors are required. nights or on cloudy dark days.
Our study here is about the first measurement mentioned The rest of this paper is organized as follows. Section 2
above and is focused on the algorithm to implement a video presents the method of how to get the face area. Section 3
monitoring system to identify the opened and shut states of describes the way to extract images of eye region from the
eye in real-time video so as to determine the frequency of face area. In section 4, a composite algorithm to identify eye
blinking, which is to be used as an important reference of states is provided. Experimental results are shown and
getting drowsy of a driver. PERCLOS (the percentage of analyzed in Section 5, and finally in Section 6, conclusions
time that eyes are closed in a given period) is the most-used and remarks are stated.
index of measuring drowsiness. High frequency of blinking
is strongly related to the getting drowsy of a man while high
PERCLOS is strongly related to the drowsy state of the man
[4]. The algorithm we proposed can be applied to determine
the blinking frequency and PERCLOS thus can be used in
fatigue warning system for drivers.
Fig.1 shows a general process for eye state identification
from real time video. The video frames are captured
sequentially, then for each frame, the face area is detected Figure 2. Our video capturing system

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 554


DOI 10.1109/ICCET.2009.105
II. DETECTION OF FACE AREA
In the process for eye state identification (Fig. 1), after a
video frame is captured, detection of face area is conducted.
Till now, lots of approaches have been proposed in the field
of face and eye detection. Yang et al. [5] presented an
overview of face detection methods developed in recent
years. A scheme of boosted cascade algorithm using Haar-
like features as identification patterns was introduced by Figure 5. Detection of face
Papageorgiou et al. [6]. Lienhart and Maydt [7] enhanced the
algorithm, Viola and Jones [8] used the algorithm in face small amounts of frames which containing faces are
detection system. Harr-like features encode differences in discarded wrongly, the accuracy of 99% has been achieved
averaged intensities between different regions in an image in our experiments for face area detection, this is quite
and they may contain rich information about an object, such enough for our purpose.
as an eye region is darker than that of cheek and the bridge of
nose is brighter than its sides. An illustration of Harr-like III. TRACKING AND EXTRACTING OF EYE REGION
features is shown in Fig. 3. For two reasons, the eye on the left or on the right, only
In this kind of boosted cascade algorithm, different Harr- the one which is closer to the camera is necessary to be
like features are selected and processed in different cascade considered in our system. (1) Generally, the left and the right
weak classifiers, a learning algorithm chooses and combines eyes are always open or close simultaneously. Thus,
those weak classifiers to generate a strong classifier. Fig. 4 although occasionally there are cases that two eyes are not at
shows a decision tree which displays the boosted cascade of the same state, asynchronous or asymmetric eyelid
the classifiers. Each classifier at different stage is trained to movements of the two eyes can be ignored with only
detect objects with interested patterns while rejecting a affecting identification results slightly. (2) When the driver
certain fraction of non-object patterns. This cascade scheme rotate his/her head in some angle, the eye more distant from
is called AdaBoost. When the Harr-like features are used, the camera may not appear as a whole or even disappear in
then the scheme can be named as Harr-like+AdaBoost. the video. If the two eyes on both sides are to be considered
To create a ready classifier for face detection a large at the same time, one more camera is necessary and this is
amount of images with and without faces under different not economic.
conditions should be prepared to train the classifier. The To extract the eye region, a two-stage procedure is done
classifier in this paper we used is taken from the Open in our scheme. First, the coarse eye region is detected and
Source Computer Vision Library (OpenCV) [9]. tracked in the scope of the face area, which has been cut out
For our case, a driver's seating posture generally meets by the cascaded classifier as shown in section 2. Then, the
the following conditions: (1) his/her head position is exact eye region without eyebrow or glasses’ border is
relatively fixed and moves only in a small scope; (2) in most extracted for further processing.
of time the driver is looking forward to drive. Therefore, a
natural assumption for our process of face detection is that A. Tracking of eye region
when capturing the real-time video there is only a small To track an eye region correctly, determination of the
change of viewing angle and the face approximately is in a position of the eye region in a frame as the first one which
front view to the camera, thus the faces appeared in frame contains the eye is critical. Several methods were
images are almost complete as a whole. As shown in Fig. 5, implemented in our first stage of study to find the region, but
for the images containing front view faces, the face areas can due to some negative factors, such as that the illumination
be correctly obtained even for the girl with glasses. varies extremely widely, the eyes may be with glasses,
In our processing, if no face area is detected in a frame, closed eyelids obstructed eyeballs thus hidden the important
then the frame is simply discarded. Although there are some clues to identify the region, etc., the results we obtained were
unsatisfactory. The methods we tried included the method
based on intensity projection, the method based on skin color
model and the method based on assumption that the eye
regions are the darkest on the face. The mentioned negative
factors form obstacles for those methods to produce desired
Figure 3. Harr-like features on a face
results.
We turn to the method of Harr-like+AdaBoost which is
Stage 1 Y Stage 2 Y … Stage N Y Faces
already applied when detecting a face area in the former
section, but different in the training stage that the eye region
images instead of the face area images are used to train the
N N N
classifiers. This method is affirmed to be an effective way to
Non-faces
obtain eye regions in our experiments.
We notice in our study that sometimes several but not
unique candidate regions of eye are obtained by the Harr-
Figure 4. A boosted cascade

555
like+AdaBoost algorithm, especially, even a mouth region
which shows similar shape tends to be mistaken as an eye
region. To deal with this situation, we simply confirm an eye
region by checking whether it is in the upper part of face, if
not, just discard the region as non-eye one.
The algorithm is performed for each sequent frame until
the first eye region is found where an eye is detected at the Figure 7. Obtaining of the exact eye regions
first time. For subsequent frames, the found eye region is
traced until there is no eye detected and a new procedure of To fulfill the task of edge detection of eyes, a simple and
detection is followed from the beginning. The cycled work is effective way is adopted here in our scheme. Initially, a
done repeatedly. histogram equalization is carried out to increase contrast of
To track the eye region in subsequent frames, the region the eye region (Fig. 7b), the edges of eyelids and iris are
obtained in the previous frame is enlarged to a bigger obviously darker than the non-eye regions after equalization.
rectangle area in the current frame, then the Harr- Then, the image of the eye region is converted into binary
like+AdaBoost algorithm is performed in this rectangle, one by a dynamic threshold, which depends on the average
which covers the eye region acquired in the previous frame intensity of original eye region. The picture now contains not
due to continuous and small-scope movement style only the eyelid surrounded region purely, but eyebrows,
assumption for drivers. Notice that, now the Harr- glasses borders, or hairs etc., are also appeared in the picture
like+AdaBoost algorithm is only performed in a smaller (Fig. 7c). Generally, those black segments appeared in the
scope other than on the whole detected face area. In this way, binary image are not all connected, the moment and the
it is much more efficient to detect the exact eye region and eccentricity of each segment in the image therefore are
this is the reason why we work with the tracking of the eye computed to isolate the eyelids and the iris region. The
region, it is really beneficial to reduce the computing time segment with moment at central is the possible exact eye
and can assure the system to meet the requirements for region while the other segments are possibly eyebrows or
processing the real-time videos. glasses borders, thus are separated and erased (Fig. 7d).
Only when the driver moves too quickly or turns head It has been shown in our experiments that the approach
with big angle thus the image of the eye disappeared or is not stated above can avoid the interference of glasses effectively
identifiable, then the face detection and eye detection provided that the border of glasses is not connected with the
procedures are to be performed again from the beginning for eyelids. Two examples are shown in the first two columns in
the newly coming frames. Fig. 7. Fig. 7 also shows that the exact eye regions can be
Some results of eye detection are presented in Fig. 6, obtained correctly even under the various conditions of
where the eye regions are visualized by a black rectangle. widely changing illuminations.
The average detection accuracy of the eye regions achieved
for the normal cases is about 98%, but the detection accuracy IV. IDENTIFICATION OF EYE STATES
achieved for closed eyes and those eyes with glasses is about Regarding the identification of eye states, a variety of
95%, lower than for the normal cases. approaches have been studied in recent years [10,11,12,13].
B. Extracting of eye region These methods can generally be divided into two categories:
the methods based on the characteristics of the eyes and the
After the eye region is detected and traced, the exact eye
methods based on pattern recognition. The former ones
is going to be extracted before its states are identified.
utilize the features of eye corners, eyelids and iris, etc. to
Getting exact eye region means finding the eye by detecting
recognize eye states. The intensity template, Fisher method,
the edges of upper and lower eyelids. Many kinds of edge
intensity projection, searching of the upper eyelid, detecting
detection methods exist. The Canny, Sobel, Prewitt and
of iris through Hough Transform(HT) etc. are among the first
Roberts edge detectors were performed in our study to search
category. The methods of the second category generally
the edges of eyelids. However, our experimental results show
convert the problem of identifying eye states into a question
that although the mentioned edge detectors perform well on
of classifying the opened or closed states, that is, consider
eyes under normal illumination, yet the edge information is
and recognize the patterns of eye states. The algorithms of
unstable for those eyes in the cases when the lights shine
neural networks, the support vector machines, and the hidden
strongly from side directions. Sometimes the edges even
Markov model, etc., are among those methods. There are
cannot be searched out.
difficulties to apply the second kind of methods in our real-
time system due to the complexity of training and the diverse
varieties of the images.
For our fatigue warning system, as long as the exact eye
region is obtained, it is more straightforward to use the fore
mentioned first category methods to identify the eye states,
Figure 6. Detection of eyes
opened or shut. Then, the blinking frequency and the time of
eye closing can be determined as the references of
drowsiness. We focus on identification of the two distinct

556
states of opened and shut while ignore the other ambiguous circles so they are mistaken to be opened eyes. Fig. 8 shows
eye states, although our approach stated in subsection IV.C some examples.
can be used to determine roughly the blinking extent of eyes. However, we have found that for the opened eyes, the
Identification of the ambiguous eye states was also depicted corresponding results of the accumulation array obtained
in [14] by Heishman and Duric. from CHT have obvious peaks while that kind of peaks do
Usually, to identify the states of eye, only a single not exit for the closed eyes, this is because that the iris circles
criterion is not enough. The environments are different when have more points on the edge than other fictitious circles.
capturing the video: the extremely widely changing Based on this observation, we check if there is a peak in the
illumination, varied distance between the face and the video accumulation array to know about the existence of iris, hence
camera, etc, thus the images we got maybe quite different. can make decision for the state of an opened eye.
Furthermore, people may have very different eye shapes,
some eyes are relatively round when opened while others are B. By the bending direction of upper eyelid to determine
relatively slender and irises do not expose much even when the shut state
the eyes are opened at the largest extent. We propose a The upper eyelid bends downward when the eye shut
composite algorithm in the following to identify the states of under plain face expressions (Fig. 9a). Therefore, we can
eye and the algorithm is verified in our experiments that it is identify the closed state of an eye by computing the bending
feasible to meet our requirements. The proposed algorithm is curve of upper eyelid. If the curve representing the upper
composed of three procedures as follows. eyelid is below the line from the inner eye corner to the outer
a) The accumulation array of Circular Hough Transform corner, the shut state of eye then can be identified.
(CHT) is computed to find out whether a peak in the array However, when people smile or show some other
exists to detect iris, hence recognizes the opened states; exaggerated expressions, the upper eyelids probably will be
b) The direction of upper eyelid curve is calculated to upward arcs or almost straight lines (Fig. 9b). To deal with
find out whether the eyelid is below a line to recognize the those cases, we propose a standard deviation method and it
shut states; will be discussed in the next subsection.
c) If the states cannot be determined yet, the standard After the exact eye region is obtained, the eye corners
deviation of distance between the upper and lower eyelids is can be easily located by scanning the region from left to
computed to find out whether the deviation is bigger than a right. We discover that the middle part of eyelid could be
threshold to judge the state as it opened or shut. more precise to present the state of eye especially when the
For each sequent frame that contains a face, the above parts that are near to corners tend to be unsteady. Taking this
procedure is carried out to identify the eye states in the factor into account, we let the both eye corners move M
frame. Notice that, once the eye state, opened or shut, is points toward the central point, then we connect the moved
determined, a new frame is always captured for continuous eye corners to form a reference line.
processing of the real-time video, while if no eye or even no The upper eyelid cannot be expected as a perfect smooth
face is detected in the frame, the process turns to capture a curve, there are noises on the images and the faces of people
new frame and the process start from the beginning. are quite different. Hence, the upper eyelid is not required to
be absolutely above the reference line that connects eye
A. Using the accumulation array resulted from CHT to corners. Instead, statistical calculation needs to be
detect iris considered. Let:
An iris exists as a quite perfect round area in an eye.
Generally an iris exposes more than half when the eye
opened normally, that is, a dark region of more than half
round area would appear in an eye image. The Hough
transform then can be used to detect the iris. But, the result
of detecting circles by HT depends on the choice of some
parameters, which are unfortunately difficult to determine.
Xu and Oja [15] proposed a curve detection method of where aσ is the total number of points above the line,
Randomized Hough Transform (RHT) which is faster than
the traditional Hough transform. In our experiments, there while bσ is the total number of points below the line. k is the
are many of closed eyes that are detected by HT have false difference between them, and α represents a threshold value
which is chosen as 2.0 in our experiments. If k is smaller
than the threshold α , the state of eye is considered to be
closed; otherwise, further judgment is necessary as we will
describe in the next subsection.

Figure 8. The resulted accumulation array from CHT

557
Figure 9. a: shut eyes under natural expressions b: shut eyes under other
expressions

C. Standard deviation of distance between upper and


lower eyelids
For the states that cannot be decided yet by the methods
presented in the former two subsections, a final processing is Figure 10. Standard deviation values
necessary to provide answers. A method of computing the
absolute distance between upper and lower eyelids is used in
many papers. The distance is compared to a threshold for V. EXPERIMENTAL RESULTS
making judgment, but there is still no good measure worked The fatigue warning system is to be used in car for driver,
out about the choice of the threshold, while it is critical. so the experiments have been carried out in moving cars. The
Based on the fact that the distance between upper and videos are captured by using an ordinary webcam, with its
lower eyelids is almost the same for a closed eye while it is highest resolution (dpi): 800 x 600, maximum frame
much more different for an opened eye, therefore the frequency (FPS) 30. For not to disturb driving, the camera is
standard deviation of distance between upper and lower set not directly pointing to the driver (Fig. 2). The size of
eyelids is calculated to decide the states of eye. Define frames captured is 320 x 240 pixels.
Table 1 provides some results of identification of eye
states in our system, representing the achievements obtained
by the whole process from face detection at the beginning to
states recognition at the end for sequent frames. In Table 1,
except the video of driver E, which is captured in laboratory,
other four videos were obtained in moving cars. 18 drivers
already took part in our experiments, the average eye state
detection accuracy is about 94%, precise enough for our
Where yiU , yiL means y-coordinate of upper eyelid and fatigue warning purpose.
Besides, our program is suitable for real time videos, for
lower eyelid in column i respectively, while d i is the distance
20 frames can be processed in one second.
between them and d is the mean. s gives the standard
deviation of the distances. VI. CONCLUSIONS AND REMARKS
Simply, the eye is regarded as opened if the standard A composite algorithm is proposed to identify the
deviation s is bigger than a threshold, which is chosen as opened and shut states of eye in real-time video. The
1.0 in our experiments. Otherwise, the eye is considered as algorithm comprises three main stages: face area detection,
closed. In our studies, the suitable threshold values tend to be eye region detection and eye state identification. Sequentially,
around a fixed one for different eyes. each frame of the video is processed in the first stage to find
In Fig. 10, the numbers below the eye pictures are the the face area, then the eye region is separated; A new
standard deviation values of the corresponding eyes. It can composite method is proposed to identify the eye states, the
be seen that the numbers are smaller for closed eyes than for accumulation array of circular Hough transform is applied
opened eyes, thus the deviations can be utilized as the for detecting circles to recognize the opened states of eye,
measurement to discriminate the opened eyes from the and the upper eyelid curve is calculated to identify its
closed ones efficiently, as indicated in Fig.10. bending direction to recognize the shut states; after that , if
If the eye regions are already correctly obtained, by the the state cannot be determined yet, judging by the standard
composite algorithms stated in this section to detect eye deviation of distance between eyelids, the eye state of
states, we reach an accuracy of about 97% in our blinking is determined finally. We have realized a satisfied
experiments. Compared with the results obtained by other detection performance under real conditions in a car, an
methods, such as by intensity template, Fisher method, accuracy of about 94% for eye state detection is obtained in
intensity projection, the averaged detection accuracies are our experiments by using the proposed algorithm.
92%, 93%, 87%, respectively. Apparently, the resulted As an important part, the algorithm is going to be utilized
accuracy of the method we propose is higher. in a fatigue warning system for drivers.
ACKNOWLEDGMENT

558
TABLE I. RESULTS OF IDENTIFYING THE EYE STATES [6] C.P. Papageorgiou, M. Oren, and T. Poggio, “A general framework
for object detection”, A general framework for object detection,
Opened eyes (frames) Shut eyes (frames) Accuracy 1998, pp. 55-562.
Counted by Detected Counted by Detected [7] R. Lienhart and J. Maydt, “An extended set of haar-like features for
observation correctly observation correctly
rapid object detection”, Image Processing.2002. Proceedings 2002
A 678 636 41 36 93.4% International Conference, vol 1, 2002, pp. I-900-I-903.
B 1285 1223 320 312 95.6%
C 866 803 118 106 92.3% [8] P. Viola and M. Jones, “Rapid object detection using a boosted
D 659 607 83 74 91.8% cascade of simple features”, Proceedings of the 2001 IEEE Computer
E 304 299 50 46 97.4% Society Conference, vol 1, 2001, pp. I-511-I-518 .
[9] Intel, “Open source computer vision library;
http://sourceforge.net/projects/opencvlibrary/”, 2001.
This work is supported by National High Tech Research
[10] J. Deng and F. Lai, “Region –based template deformation and
and Development (863) Programme of China rnasking for eye-feature extraction and description”, Pattern
(NO.2006AA01Z129). Recognition, vol 30, 1997, pp. 403-419.
[11] G. Chow and X. Li, “Towards a system for automatic facial feature
REFERENCES detection”, Pattern Recognition, vol 26(12), 1993, pp. 1739-1755.
[1] T. Hayami, K.Hayami, K. Shidoji and Y. Matsuki, “Detecting [12] Y. L. Tian, T. Kanade and J. F. Cohn , “Recognizing upper face
drowsiness while driving by measuring eye movement - a pilot study”, actions for facial expression analysis.”, Proceedings of the IEEE
Proc. 5th Int. Conference on Intelligent Transportation Systems, Conference on Computer Vision and Pattern Recognition(CVPR’00),
2002 , pp. 156-161. vol 1, 2000, pp. 294-301.
[2] T. Hamada , T. Ito , K. Adachi , T. Nakano and S. Yamamoto, [13] Y. L. Tian, T. Kanade and J. F. Cohn , “Eye-state action unit
“Detecting method for drivers' drowsiness applicable to individual detection by Gabor wavelets”, The 3rd International Conference on
features”, Proc. Intelligent Transportation Systems 2003, vol.2, pp. Multi-modal Interfaces(ICMI’00), 2000, pp. 143-150.
1405-1410. [14] Ric Heishman and Zoran Duric, “Using image flow to detect eye
[3] Q. Ji and X. Yang, “Real-time eye, gaze, and face pose tracking for blinks in color videos”, Applications of Computer Vision, 2007, pp.
monitoring driver vigilance”, Real-Time Imaging, vol 8 , 2002 , pp. 52-52.
357-377.
[15] L. Xu and E. Oja, “A new curve detection method: randomized
[4] D. Dinges and R. Grace, “{PERCLOS}: A valid physiological Hough Transform(RHT”, Pattern Recognition Letters,1990,pp. 331-
measure of alertness as assessed by psychomotor vigilance”, Tech 338.
Brief FHWA-MCRT-98-006, 1998.
[5] M.-H. Yang , D. J. Kriegman, and N. Ahuja, “Detecting faces in
images: A survey”, Pattern Analysis and Machine Intelligence, IEEE
Transactions on, vol 24(1), 2002, pp. 34-58.

559
2009 International Conference on Computer Engineering and Technology

Performance Analysis of Postprocessing Algorithm and Implementation on


ARM7TDMI

Manoj Gupta, B.K.Kaushik Laxmi Chand


Department of Electronics & Electrical Engineering, Division of Electronics & Communication Engineering,
G. B. Pant Engineering College, Netaji Subash Institute of Technology,
Pauri-Garhwal (Uttarakhand), INDIA New Delhi, INDIA
manojgupta35@yahoo.co.in, brajesh_k_k@yahoo.com laxmisharma34@yahoo.co.in

Abstract—Due to rapid advancement in multimedia output. MATLAB code is implemented for bass and treble
communication a growing need emerges for the control.
implementation of audio algorithm in real time. Filters are Post processing algorithm is implemented in C-language
often used in Digital Signal Processing applications. The filters for ARM7TDMI and optimized for the real time. For this
fast processing is usually done on DSP chips. The calculation of project work the ARM simulation environment is used. The
the DSP operations like multiplication and accumulation simulator for ARM is available as µvision3 KEIL. The
(MAC) and convolution should be fast enough so that the environment of windows is used throughout the project.
audio can be heard in real time. In this paper we take up a post The bass and treble controls are set to vary the level of
processing algorithm for audio that is used to control the Bass
audio in a band of frequencies centered around 100Hz and
and Treble. For this purpose first order IIR filter is employed.
10,000Hz respectively. There are different kinds of curves,
This filter is used due to low computational burden that it
places on DSP resources. The method that is presented here is with a wide range of frequencies where the boost is constant
based on transforming a prototype analog filter to the desired until the 'slope' of the curve is reached. The values of the
digital filter using the technique of Bilinear Transformation for gain are varied from -12dB to +12dB.
mapping the poles and zeros in Digital domain. The calculated The audio should be played in real time, if there is any
coefficients are used for implementation of audio algorithm for time lag between playing the audio, no one can understand
ARM7TDMI. Implemented code is optimized for the real time the original audio. To play the audio in real time we need to
operations. The analysis is done in MATLAB for showing the optimize the algorithm. Two types of optimization are used
effect of Treble and Bass for different frequencies. The filter in audio. One is for the memory or size reduction and second
mapped in digital domain is stable. is for increase the speed of execution. There is a trade off
between the speed and the size of memory. The algorithm is
Keywords- Digital Filter, IIR filter, Bilinear Transform, optimized for the real time.
ARM Processor, Post processing, PCM
II. POSTPROCESSING AUDIO ALGORITHM
I. INTRODUCTION
A. Bass & Treble Control
Post processing algorithms are often employed to control
low (Bass) and high (Treble) frequency audio components The tone control allows enhancing or reducing the bass
[1-7]. Bass and treble can be controlled by using the either and treble independently. When enhancement is required, it
analog or digital filters. Analog filters are designed using op- is possible to apply on the whole signal a negative gain (tone
amps, resistors and capacitors. Bass and Treble can be attenuation) in order to avoid eventual saturations (the signal
controlled by varying the values of resistor and capacitors could already be at his maximum dynamic that we can’t
according to the circuit design. The disadvantage of analog know). For high and low frequencies a gain and a cut
filter is bulkiness of circuit and precision limitations in frequency are configurable.
controlling the performance. However in digital filters these Different kinds of 'curves' are obtained for treble and
disadvantages can be easily overcome [5]. Thus, digital filter bass. The slope of the curve for treble increases as frequency
are often used for the implementation of post processing is increased for positive gains values. There is a wide range
algorithms [1-4]. of frequencies where the boost is constant until the 'slope' of
We use a first order IIR filter for filtering process. To the curve is reached. Most head units claim to vary the level
compute filter coefficients bilinear transform method is used. by plus or minus 10dB. However, the range may be as high
Bilinear transform converts analog domain filter into the as +12dB or -12 dB.
digital domain filter. S-domain poles and zeros are mapped B. Calculation of the Filter Coefficients
into the Z-domain poles and zeros. We use an input The transfer function of first order IIR filter used is
interleaved PCM file, which is later de-interleaved using two
buffers for left and right channel data. This de-interleaved (a0 + a1* Z−1 )
H(Z) = (1)
data is passed separately through the IIR first order filter. (1 + b1* Z−1 )
After IIR filtering the data is again interleaved by inserting it The coefficients a0, a1, b1 of the digital filter in Z-
into one data buffer. Finally, PCM interleaved data is sent to domain is calculated by using Bilinear Transformation
method.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 560


DOI 10.1109/ICCET.2009.179
C. Bilinear Transform Dividing by (1 + G * X ) we obtain,
The bilinear transform converts a transfer function in the [(G + GX) /(1 + GX) + (GX − G) /(1 + GX)Z−1 ]
H ( Z) =
Laplace transform domain to one in the Z-transform domain, [1 + (GX − 1) /(1 + GX)Z−1 ]
by substituting: On comparing with (1), we obtain the cœfficients as
S = c*
( Z − 1) i.e. S=
2 (Z-1)
(2) (G + G * X) (G * X − G) (G * X − 1)
* a0 = ; a1 = and b1 = (8)
( Z + 1) T (Z + 1) (1 + X*G) (1 + G * X) (1 + X *G)
We get the above value by simple Jacobins
approximation. Here is a simple derivation. 2) Low pass filter
exp(ST/2) The transfer function of the IIR filter in S-domain is
Z = exp(ST) = (3)
exp(-ST/2) [G '* (S + ωc )] 2fs(1 − Z−1 )
H(s) = G * at S = where G ' = 1 G (9)
Now expand numerator and denominator to a 1 order st [(S + G '* ωc )] (1 + Z−1 )
approximation-equally factorizing Using Bilinear transform and inserting S from (5) in (9)
(1 + T / 2*S + ......) (1 − Z−1 )
Z= where T = 1 fs (4) [G '* 2fs * + G ' ωc ]
(1 − T / 2*S + .......) (1 + Z−1 ) [G '− G ' Z−1 ) + G ' X(1 + Z−1 ]
H(z) = G * = G*

So we can write Z =
(1 + T / 2 *S)
and S = 2fs *
(1 + Z−1 ) (5)
[2fs *
(1 − Z −1 )
(1 + Z−1 )
+ G '* ωc ]
[(1 − Z−1 ) + G ' X(1 + Z−1 ]

(1 − T / 2*S) (1 − Z−1 ) Separating the constant terms and coefficients of Z−1


The mapping thus generated has some good properties which [(G '+ G ' X) + (G ' X − G ')Z−1 ]
H ( Z) ) = G *
are: (1) It is one-to-one and order-preserving, and it maps the [(1 + G ' X) + (G ' X − 1)Z−1 ]
Dividing numerator and denominator by (1 + G ' * X )
left-hand S-plane in the Laplace domain to the interior of the
unit circle in the Z-domain. (2) The mapping is not linear. By
setting Z =exp(jΩ) and S=jω in the bilinear transform [(G '+ G 'X) /(1 + G ' X) + (G ' X − G ') /(1 + G ' X)Z−1 ]
H ( Z) = G *
equation, the relation between analog and digital frequencies [1 + (G ' X − 1) /(1 + G 'X)Z−1 ]

can be determined: ωana log = * tan ( Ωdigital 2 ) . There are


2 On comparing with (1) we obtain cœfficients as
T (G' + G '* X) (G '* X − G ') (G '* X − 1)
a0 = G * ; a1 = G * ; b1 = (10)
two methods of compensating for this frequency distortion. (1 + G'*X) (1 + G '* X) (1 + G '* X)
First, an existing analog filter is converted; the constant c can The first order IIR filter used is given by
be selected to make one the filters match at one particular (a0 + a1* Z−1 )
H(Z) = where H(Z) = y(Z) x(Z)
frequency (for instance, the filter's cutoff frequency). The (1 + b1* Z−1 )
filter's frequency specifications can be made in the digital
(a0 + a1* Z −1 )
domain and converted back to the analog domain (with an y(Z) x(Z) = ;
(1 + b1* Z−1 )
arbitrary choice of c). An analog filter is then designed to
meet these specifications; when converted back to a digital Thus, y(Z) = a1* x(Z) * Z−1 − b1* y(Z) * Z−1 + a0* x(Z) .
filter, the critical frequencies will be in the right places. On converting to sampled time domain, output y(n) is:
y(n) = a1* x(n − 1) − b1* y(n − 1) + a0 * x(n) . Here x(n-1) and
D. First Order IIR Filter Coefficients Calculation
y(n-1) are previous input and output values respectively.
1) High pass filter
The transfer function of the IIR filter in S-domain is
(S + ωc ) 2fs(1 − Z−1 )
E. Treble Filter
H(s) = G * at S = (6)
(S + G * ωc ) (1 + Z−1 )
where ωc is the cut of frequency. Using Bilinear transform
and inserting S from (5) in (6) we obtain
(1 − Z−1 )
[2fs * + ωc ]
(1 + Z−1 )
H(z) = G *
(1 − Z−1 )
[2fs * + G * ωc ]
(1 + Z −1 )
[(1 − Z−1 ) + (ωc / 2fs)(1 + Z−1 ]
= G*
[(1 − Z−1 ) + G(ωc / 2fs)(1 + Z−1 ]
[(1 − Z−1 ) + X(1 + Z−1 ]
= G* where X = pi * fc / fs (7)
[(1 − Z−1 ) + GX(1 + Z −1 ]
Separating the constant terms and coefficients of Z−1 Figure 1. High pass filter for Treble
−1
[(1 + X) + (X − 1)Z ]
= G* The gain curve in dB with variation in frequency for the
[(1 + GX) + (GX − 1)Z −1 ] high pass filter or the treble filter is shown in Figure 1. The

561
curve is shown for the positive and negative values of gain.
Initially the positive (GdB>0) and negative (GdB<0) gains
increases with increase in frequency, but after a certain limit TABLE I. VALUES GENERATED FOR THE fc =100HZ
both gains are constant. A positive and negative gain
corresponds to treble augmentation and reduction S.No. GdB Gain a0 a1 b1
respectively. Such type of curves can be obtained for 1 -12 0.251189 0.980977 -0.968214 -0.949191
2 -11 0.281838 0.983695 -0.970897 -0.954591
different cut of frequency values.
3 -10 0.316228 0.986129 -0.9733 -0.959429
The coefficients values for the high pass filter are given 4 -9 0.354813 0.98831 -0.975452 -0.963761
through equation (8). Here, G is given as G = 10GdB / 20 . 5 -8 0.398107 0.990261 -0.977378 -0.967638
6 -7 0.446684 0.992006 -0.9791 -0.971107
F. Bass Filter 7 -6 0.501187 0.993567 -0.980641 -0.974209
8 -5 0.562341 0.994963 -0.982018 -0.976981
9 -4 0.630957 0.99621 -0.983249 -0.979459
10 -3 0.707946 0.997324 -0.984348 -0.981672
11 -2 0.794328 0.998318 -0.98533 -0.983649
12 -1 0.891251 0.999207 -0.986207 -0.985414
13 0 1 1 -0.98699 -0.98699
14 1 1.122018 1.000708 -0.987689 -0.988397
15 2 1.258925 1.00134 -0.988312 -0.989652
16 3 1.412538 1.001903 -0.988869 -0.990772
17 4 1.584893 1.002406 -0.989365 -0.991771
18 5 1.778279 1.002855 -0.989808 -0.992663
19 6 1.995262 1.003255 -0.990203 -0.993458
20 7 2.238721 1.003612 -0.990555 -0.994168
21 8 2.511886 1.003931 -0.99087 -0.9948
Figure 2. Low pass filter for Bass 22 9 2.818383 1.004215 -0.99115 -0.995364
23 10 3.162278 1.004468 -0.9914 -0.995867
The gain (dB) curve with variation in frequency for the 24 11 3.548134 1.004694 -0.991622 -0.996316
low pass or bass filter is shown in Figure 2. The curve is 25 12 3.981072 1.004895 -0.991821 -0.996716
shown for the positive and negative values of gain. The
positive (GdB>0) and negative (GdB<0) gains increases with
decrease in frequency, but after the cut off frequency both
gains does not vary with further decrease in frequency. A TABLE II. VALUES OF COEFFICIENTS GENERATED FOR fc =1000HZ
positive and negative gain corresponds to bass augmentation
and reduction respectively. The coefficients values for the SNo. GdB Gain a0 a1 b1
low pass filter are given by equation (10). The cut of 1 -12 0.25119 0.458808 -0.095723 0.445469
2 -11 0.28184 0.497945 -0.103888 0.398167
frequency of bass filter is set at 100Hz.
3 -10 0.31623 0.538916 -0.112436 0.348649
4 -9 0.35481 0.581563 -0.121333 0 .297104
III. RESULTS
5 -8 0.39811 0.625693 -0.13054 0.243767
IIR first order filter has the less complexity to design and 6 -7 0.44668 0.671077 -0.140009 0.188914
are not as powerful as the higher order filters but from the 7 -6 0.50119 0.717458 -0.149686 0.132856
designing point of view first order filters are preferred for 8 -5 0.56234 0.764554 -0.159511 0.075935
treble and bass control. We have a PCM file input for the 9 -4 0.63096 0.812062 -0.169423 0.018515
10 -3 0.70795 0.859672 -0.179356 -0.03903
post process algorithm to control audio Treble and Bass. We 11 -2 0.79433 0.907069 -0.189245 -0.09631
implemented the filter, gave the input PCM file (PCM stereo 12 -1 0.89125 0.953943 -0.199024 -0.15297
48000Hz) and calculated filter coefficient (a0,a1,b1) for 13 0 1 1 -0.208633 -0.20863
different values of the gain in dB as shown in the Table-I, II 14 1 1.12202 1.044965 -0.218014 -0.26298
and III. The filter coefficients are given for different gain 15 2 1.25893 1.088591 -0.227116 -0.31571
values from -12 dB to +12 dB. 16 3 1.41254 1.13066 -0.235893 -0.36655
The coefficient values for cut of frequencies 100Hz, 17 4 1.58489 1.170993 -0.244308 -0.4153
1000Hz and 10000Hz are calculated. IIR filtering is 18 5 1.77828 1.209445 -0.25233 -0.46178
19 6 1.99526 1.245907 -0.259937 -0.50585
processed after data is de-interleaved. PCM input file has the 20 7 2.23872 1.280308 -0.267115 -0.54742
data for both left and right channels (interleaved data). IIR 21 8 2.51189 1.31261 -0.273854 -0.58646
filter implementation uses previous values as context and 22 9 2.81838 1.342804 -0.280153 -0.62296
saves those vales for the further calculations. 23 10 3.16228 1.37091 -0.286017 -0.65693
24 11 3.54813 1.396969 -0.291454 -0.68842
25 12 3.98107 1.421044 -0.296477 -0.71752

562
TABLE III. VALUES GENERATED FOR fc =10000HZ B. Treble Curve
S.No. GdB Gain a0 a1 b1 The lower corner frequency is 1000Hz and the curves are
1 -12 0.251189 0.458808 -0.095723 0.445469 plotted for the gain ranges from +12dB to -12dB. When the
2 -11 0.281838 0.497945 -0.103888 0.398167 gain is positive or negative the curve is called boost or cut
3 -10 0.316228 0.538916 -0.112436 0.348649 curve respectively. The curve for +12dB to -12dB boost and
4 -9 0.354813 0.581563 -0.121333 0.297104
cut are shown in Figure 4.
5 -8 0.398107 0.625693 -0.13054 0.243767
6 -7 0.446684 0.671077 -0.140009 0.188914
The treble filter utilizes both feed forward and feed back
7 -6 0.501187 0.717458 -0.149686 0.132856 loop in the flow chart. Output rises from lower to higher
8 -5 0.562341 0.764554 -0.159511 0.075935 level with increasing frequency, and response is suitable for
9 -4 0.630957 0.812062 -0.169423 0.018515 bass cut or treble boost. Shelf level difference is dB(f1/f2).
10 -3 0.707946 0.859672 -0.179356 -0.039028 The computation should be mechanized if more than a few
11 -2 0.794328 0.907069 -0.189245 -0.096313 curves are required.
12 -1 0.891251 0.953943 -0.199024 -0.152967 trebbc.m
13 0 1 1 -0.208633 -0.208633
14 1 1.122018 1.044965 -0.218014 -0.262979 10
15 2 1.258925 1.088591 -0.227116 -0.315706
16 3 1.412538 1.13066 -0.235893 -0.366553
17 4 1.584893 1.170993 -0.244308 -0.415301
18 5
5 1.778279 1.209445 -0.25233 -0.461775
19 6 1.995262 1.245907 -0.259937 -0.505845

amplitude dB
20 7 2.238721 1.280308 -0.267115 -0.547423
21 8 2.511886 1.31261 -0.273854 -0.586464 0
22 9 2.818383 1.34804 -0.280153 -0.622957
23 10 3.162278 1.37091 -0.286017 -0.656927
24 11 3.548134 1.396969 -0.291454 -0.688423 -5
25 12 3.981072 1.421044 -0.296477 -0.717521

-10
A. Bass Curve
The curves are plotted for the gain range from +12dB to - 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2
12dB. When the gain is positive the curve is called boost frequency Hz 4
x 10
curve, whereas for negative gains it is called cut curve. The
curve for +12dB to -12dB boost and cut are shown in Figure Figure 4. Treble plot
3.
The Bass filter utilizes both feed forward and feed back C. High Pass Filter Plot
loop of the flow chart. Output falls from higher to lower
level with increasing frequency, and response is suitable for The high pass filter utilizes the feed forward portion of
bass boost or treble cut. the filter to realize a zero at DC and the feedback portion to
BASS FILTER.m
create a pole that pulls the rising response down to a flat
response. The response rises from zero at DC to a shelf at f1.
10 This characteristic is useful for DC offset removal filters. In
the curve below, f1 was set to 10, 20, 50, 100, 200, 500, 1K,
2K, 5K, and 10 KHz.
5 high filter.m
0
amplitude dB

-2
0

-4
amplitude dB

-5
-6

-10
-8

1 2 3 4 5
10 10 10 10 10
frequency Hz -10

Figure 3. Bass Curve -12


1 2 3 4
10 10 10 10
frequency Hz

Figure 5. High pass Filter plot

563
D. Low Pass Filter Plot low filter.m
0
The low pass filter utilizes only the feedback portion of
the filter to realize a pole that sets f1, the corner frequency,
-2
appropriately. In the curves below, f1 was set to 10, 20, 50,
100, 200, 500, 1K, 2K, 5K, and 10KHz. By enabling a zero
at -0.12, this adds extra attenuation needed to more closely -4

match the continuous time filter at 10KHz and above.

amplitude dB
low filter.m -6
0

-8
-2

-10
-4
amplitude dB

-12
1 2 3 4
10 10 10 10
-6
frequency Hz

-8 Figure 8. Zero plot

-10 IV. CONCLUSION


The algorithm for bass and treble was implemented
-12 successfully on ARM. The coefficients for the IIR filter are
1 2 3 4
10 10 10 10
frequency Hz calculated by using the bilinear transform method. Bilinear
transform method is used because, there is no difference in
Figure 6. Low pass plot pole and zeros mapping of the S-domain filter to Z-domain
filter. For different gain values and cut of frequencies, the
curves were plotted for bass and treble control. Optimization
E. Pole and Zero Plot
is done for the real time application. The following results
The pole and zero plots are shown in Figure 7 and 8 are obtained after simulation Code size =7842 KB; RO- data
respectively. =958 KB; RW data=48 KB; ZI data =1242 KB. The results
low filter.m obtained after optimization is Code size =4228 KB; RO- data
0
=168 KB; RW data=28KB; ZI data =642 KB.

-2
REFERENCES
[1] R.H.Yang, S.B.Chiah and W.Y.Chan, “Design and Implementation
-4
of a Digital Audio Tone Control Unit Using an Efficient FIR Filter
Structure,” Proc. IEEE TENCON Digital Signal Processing
amplitude dB

Applications, IEEE Press, Nov., 1996, pp. 273-277 vol. 1, doi:


-6 10.1109/TENCON.1996.608815
[2] R.Yang, B.Liu and Y.C.Lim, "A new structure of sharp transition FIR
-8
filters using frequency-response masking," IEEE Trans. on Circuits
and Systems, vol. 35, pp. 955-966, Aug. 1988.
[3] Y.Lian and Y.C.Lim, "Linear-phase digital audio tone control using
-10 multiplication-free FIR filter,” Journal of Audio Eng. Soc., vol. 41,
no. 10, pp. 791-794, Oct. 1993.
[4] L.Yong, “Frequency-response masking approach for the synthesis of
-12
1 2 3 4
sharp linear phase digital filters," IEEE Trans. on Circuits and
10 10 10 10 Systems, vol. 33, pp.357-364, Apr. 1986.
frequency Hz
[5] Y.C. Lim and L. Yong, “Frequency-response masking approach for
Figure 7. Pole plot digital filter design: complexity reduction via masking filter
factorization” IEEE Trans. Circuits and Systems II: Analog and
Digital Signal Processing, vol. 41, pp. 518 – 525, Aug. 1994.
[6] Y.C. Lim, "Linear-phase digital audio tone control,” Journal of Audio
Eng. Soc., vol. 35, pp. 38-40, jan/feb. 1987.
[7] P. Soardo, “A Versatile Tone Control Circuit and Preamplifier,” IEEE
Trans. on Audio, vol. 11, pp. 195-201, Nov. 1963.

564
2009 International Conference on Computer Engineering and Technology

NURBS Interpolation Method with Feedrate Correction in 3-axis CNC System

Chen Liangji Li Huiying


School of Mechatronics Engineering Resources & Economic Trade Department
Zhengzhou Institute of Aeronautical Industry Zhengzhou Institute of Aeronautical Industry
Management Management
Zhengzhou, China Zhengzhou, China
chenjiaxiclj@163.com Lihuiying.lhy@163.com

Abstract—A real-time Non-Uniform Rational B-Spline


(NURBS) curve directly interpolation method is presented for C(u)=x(u)i+y(u)j+z(u)k 0≤u≤1, (1)
computer numerical control (CNC) machines to achieve the
goal of high-speed and highly accurate machining. To the where u is an arbitrary parameter and i, j, k is the unit vector
feedrate fluctuation of the interpolation method, the feedrate of axis orientation of x, y, z respectively.
correction method is also proposed. To implement the
A p-degree NURBS curve with parameter u can be
proposed methods, Taylor expansion and numerical
defined as follows
calculation methods are used. The given example shows that
the feasibility of the methods applied to achieve high-speed and
high-effect machining. n

Keywords-CNC; NURBS; interpolation; feedrate T


∑N
i =0
i, p (u )Wi Pi
C (u ) = [ x(u ) y (u ) z (u )] = n
, (2)
I. INTRODUCTION ∑N
i =0
i, p (u )Wi
At present, if one performs a cutting task for molds with
a CNC machine tool, firstly, the workpieces have to be where Pi is the ith 3-D control point; Wi is the corresponding
designed using CAD, and then cutter contact (CC) path is weight factor of Pi; (n+1) is the number of control points;
converted to the cutter location (CL) path by CAM. In order Ni,p(u), B-spline basis function with degree of p, can be
to guide the CNC machine to perform cutting along the CL calculated by the following formula
path, the CL paths usually are divided into a set of line or
circular segments(also called NC codes). These segments
will approximate the original CL path to a desired accuracy ⎧ ⎧1 (ui ≤ u < ui +1 )
if sufficient numbers of segments are used. To obtain more ⎪ N i ,0 = ⎨
accurate approximation and to reduce the contour error, the ⎪ ⎩0 ( otherwise )
size of the NC code should be increased, but this approach ⎪⎪ u − ui ui + p +1 − u , (3)
could lead to several drawbacks[1~6]. ⎨ N i , p (u ) = N i , p −1 (u ) + N i +1, p −1 (u )
Based on the above observation and analysis, it is evident ⎪ ui+ p − ui ui + p +1 − ui +1

that accurate high-speed manufacturing is hard to achieve if ⎪0


the conventional line and circular interpolators are used in ⎪ = 0 (prescribed)
CNC systems. Therefore, developing a new type of ⎪⎩ 0
interpolator for CNC machine tools is of importance.
Since NURBS uses fewer data to represent the designed where [ui ,..., ui + p +1 ] is the knot vector. More information
curves and if both the CAD/CAM and CNC systems adopt about NURBS can be found in [7].
NURBS as the geometric representation, a considerable
amount of time spent on transferring data between III. REAL-TIME NURBS INTERPOLATION
CAD/CAM and CNC machine can be saved. Because of the
The key to approximate a parametric curve in real time
advantages of NURBS, a real-time NURBS interpolator is
(namely command generation) is that the segmentation
proposed for machining curves (or surfaces). Consequently,
should be based on equal increments of sampling period Ts,
feedrate can be increased so that the machining time will be
rather than equal increments of the parameter u.
reduced. Accordingly, a method is needed to determine successive
II. NURBS REPRESENTATION values of parameter u(at each sampling period) such that the
ratio between △ s(increment of curve length during each
A general form to describe a parametric curve in the 3-D sampling period)and T is equal to a desired profile V(t) in a
space can be expressed as feedrate control problem. The procedures for determining
successive values of u are summarized as follows.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 565


DOI 10.1109/ICCET.2009.11
Considering the feedrate V(t) along the curve, C(u) in Eq.(2), n n
V(t) can be expressed as
d 2C (u ) ∑ Ni , p (u )Wi ∑ Ni'', p (u )Wi Pi
= i =1 i =0

dC (u ) ⎛ dC (u ) ⎞⎛ du ⎞ du 2 ⎛ n

2

⎜ ∑ N i , p (u )Wi ⎟
V (t ) = =⎜ ⎟⎜ ⎟ , (4)
dt ⎝ du ⎠⎝ dt ⎠ ⎝ i=0 ⎠
n n
hence, ∑N ''
i, p (u )Wi ∑ N i , p (u )Wi Pi
i =0 i =0
2

du V (t ) ⎛ n

=
dt dC (u )
, (5)
⎜ ∑ N i , p (u )Wi ⎟
⎝ i=0 ⎠
du n n n
2∑ N i', p (u )Wi ∑ N i , p (u )Wi ∑ N i', p (u )Wi Pi
Eq.(5) can be processed as follows using Taylor expansion i=0 i =0 i =0

formula 3
⎛ n

⎜ ∑ N i , p (u )Wi ⎟
V (tk ) ⋅ Ts ⎝ i=0 ⎠
uk +1 = uk + , (6) n n n
2∑ N i', p (u )Wi ∑ N i , p (u )Wi Pi ∑ N i', p (u )Wi
dC (u )
du u =uk i=0 i =0 i=0
, (9)
3
⎛ n

where uk and uk+1 denote the value of u at t=tk=kTs and ⎜ ∑ N i , p (u )Wi ⎟
t=tk+1=(k+1)Ts, respectively. And also, the second-order ⎝ i=0 ⎠
interpolation algorithm is
where the general algorithm for mth order derivative of Ni,p(u)
is
V (tk ) ⋅ Ts
uk +1 = uk + −
dC (u ) ⎡ N m −1 (u ) N im+1,−1p −1 (u ) ⎤
du u =uk N i(,mp ) (u ) = p ⎢ i , p −1 − ⎥ (10)
⎢⎣ ui + p −1 − ui ui + p − ui +1 ⎥⎦
⎛ dC (u ) d 2C (u ) ⎞
V (tk ) ⋅ Ts ⎜
2
⋅2

⎝ du du 2 ⎟⎠ u = uk
and
4
. (7)
dC (u ) dC (u )
2⋅ = ( x' )2 + ( y ' )2 + ( z ' )2 . (11)
du u = uk du
The first and second derivative of C(u) with u are where
obtained as
x = x(u ) , y = y (u ) , z = z (u ) ,
n
dx(u ) ' dy (u ) ' dz (u )
dC (u ) ∑N '
i, p (u )Wi Pi x' =
du
,y =
du
,z =
du
. (12)
= i =0
n

∑N
du
i, p (u )Wi
i =0
IV. FEEDRATE CORRECTION METHOD
n n Eq.(7) can be written as follows according to Eq.(5)
∑ Ni', p (u )Wi ∑ Ni , p (u)Wi Pi
i =0 i =0
2
(8) uk +1 = uk + Tsu ′(tk ) + Ts 2u ′′(tk ) / 2 . (13)
⎛ n

⎜ ∑ N i , p (u )Wi ⎟
⎝ i=0 ⎠ The following numerical method is used to solve Eq.(13).
The back ward difference approximation method of [8]
and can be employed here to compute u ′(tk ) and u ′′(tk ) ,
which is

566
u′(tk ) = (uk − uk −1 ) / Ts (14) y
P2 P1
and

u′′(tk ) = (uk − 2uk −1 + uk − 2 ) / Ts2 . (15)

0
Substituting Eqs.(14) and (15) into Eq.(13) will yield an R1
initial value of uk+1

uk +1 =2.5uk-2uk-1+0.5uk-2 . (16) x
0 P0
Figure 1. Example NURBS curve with knot vector[0,0,0,1,1,1].
However, the feedrate Vk resulting from uk +1 can be
calculated as follows The sampling period Ts of CNC system is 1ms, and the
*
desired feedrate Vk is equal to 600mm/min which is given
Vk = C (uk +1 ) − C (uk ) / Ts . by the NC code. Without the correction of federate, the
maximum deviation error can reach to 10mm/min. The
situation can be immediately avoided if the proposed method
In fact, Vk may not be accurate. Let Vk* be the desired were added to NURBS interpolator. Assumed that
ε=6mm/min, 3 mm/min and 0.6mm/min, the feedrate of each
feedrate, so the error of feedrate is | Vk − Vk | .
*
sampling period can be calculated as shown in Figs.2, 3 and
Assumed that 4 ,respectively. From the three figures we can see that the
fluctuation of feedrate is greatly decreased with the proposed
uk +1 = auk +1 +(1-a)uk , (17) method.
605
Feedrate(mm/min)

600
where
595

590
a= Vk
*
/ [bVk + (1 − b)Vk* ] b ∈ (0,1] . 585
0.0 0.2 0.4 0.6 0.8 1.0
Parameter u

Figure 2. Feedrate when ε is equal to 6mm/min.


If feedrate error | Vk − Vk | is enough small, such that the
*

error is smaller than the given tolerance ε, then the iterative 604

calculation described in Eq.(17) will be stopped and let


Feedrate(mm/min)

602

600

uk +1 = uk +1 .
598
(18) 596

594
0.0 0.2 0.4 0.6 0.8 1.0
Parameter u

V. EXAMPLE Figure 3. Feedrate when ε is equal to 3mm/min.


Fig.1 shows the curve for machining—a quarter of circle 601
with radius of 10 mm represented in third-order NURBS
Feedrate(mm/min)

600.5
form, and its control points are P0(10,0,0), P1(10,10,0) and 600
P2(0,10,0) with weights 1, 0.707 and 1 respectively. The 599.5

NC Code is described as follows: 599

G06.2 P3 K0 X10 Y0 Z0 R1 F600 598.5


0.0 0.2 0.4 0.6 0.8 1.0
Parameter u
K0 X10 Y10 Z0 R0.707
K0 X0 Y10 Z0 R1 Figure 4. Feedrate when ε is equal to 0.6mm/min.
K1
K1 VI. CONCLUSIONS
K1
The real-time NURBS interpolator in CNC system is
presented in this paper. To the feedrate fluctuation of the
interpolation method, the feedrate correction method is
proposed at the same time. Compared with the conventional
method, the advantages of the proposed approaches include
the following:

567
• Using NURBS in CNC system, the machine tool can REFERENCES
control the cutters cutting along a curve or a surface [1] G. Qiyi, R. Zhang, and B.Greenway, “Development and implemen-
not line or circular arc segments approximation. tation of a NURBS curve motion interpolator,” Robotics and
• NURBS uses fewer parameters (control points, knots Computer-Integrated Manufacturing, vol.14, 1998, pp. 27-36.
vector and weights) to represent the designed curves [2] M. Cheng, M. Tsai, and J. Kuo, “Real-time NURBS command
(or surfaces), so that CNC memory can be saved. generators for CNC servo controllers,”International Journal of
Machine Tools & Manufacture, vol. 42, 2002, pp. 801-813.
Less data transmission between CAD/CAM and
[3] M. Tikhon, “NURBS interpolator for constant material removal rate
CNC machine results in faster manufacturing speed in open NC machine tools,” International Journal of Machine Tools &
such that the goal of high-speed machining can be Manufacture, vol.44, 2004, pp. 237-245.
achieved. [4] M. Tsai, C. Cheng, and M. Cheng,“A real-time NURBS surface
• With the feedrate correction method, the influence interpolator for precision three-axis CNC machining,” International
on machining result from the fluctuation of feedrate Journal of Machine Tools & Manufacture, vol.43, 2003, pp. 1217-
can be reduced. Similarly, the purpose of high-speed 1227.
and high-effect machining can be reached. [5] B.Bahr, X. Xiao, and K. Krishnan, “A real-time scheme of cubic
parametric curve interpolations for CNC systems,” Computers in
Industry, vol. 45, 2001, pp. 309-317.
ACKNOWLEDGMENT
[6] X. Zhiming, C. Jincheng, and F. Zhengjin, “Performance evaluation
This research is wholly supported by the Chinese of a real-time interpolation algorithm for NURBS curves,”
Aeronautical Science Foundation (No.2008ZE55003) International Journal of Advanced Manufacturing Technology,
through Zhengzhou Institute of Aeronautical Industry vol.20, 2002, pp. 270-276.
Management. The author thanks for their support for this [7] L. Piegl, “On NURBS: a survey,” IEEE Computer Graphics &
Application, vol.11,no.1, 1991, pp. 55-71.
research.
[8] S. Nakamura, “Applied numerical methods in C,” Prentice-Hall
International, Inc, USA, 1993.

568
2009 International Conference on Computer Engineering and Technology

Implementation Technique of Unrestricted LL Action Grammar*

ZHANG Jing , JIN Ying


College of Computer Science and Technique, Jilin University, China, 130012
Zhangjing99@jlu.edu.cn, jinying@jlu.edu.cn

Abstract
Unfortunately, there are some grammars for which no
Action Grammar is a grammar with action amount of alternation will yield a right grammar, and
symbols appearing in the right part of production rules, some transformations often followed by awful side-
which can be used to implement semantic analyzer effects: losing of readability and reliability[2]. For
automatically. An action symbol represents the name example, the well-known and widely used Yacc, a
of a semantic routine. Implementation of action generator of LALR parser, have a restriction that there
grammar relies on specific parsing methods, such as should be no shift/reduce conflicts when generating the
LL(K), recursive-descent or LR, and so on. However, LALR state machine. How to reslove the conflictions
these parsing methods have their own restrictions on is such a difficult work that there is no universal rules
grammars, therefore, in order to accomplish these and general algorithms and the phenomena that the old
parsing methods certain equivalent transformations one disappeared, and a new one springs up occur
have been done to make the grammars meet the frequently in resolving conflicts process[3,4]. A simple
restrictions. This paper has proposed an method to resolve the restrictions problem of grammar
implementation technique of LL action grammar, is using back-tracking technique, but it is more
which requires no transformation to the original difficult for semantics analysis[5].
grammar. Our approach includes following steps: During our implementation of ATLAS language[6],
parsing the input string with back-tracking and hundreds of conflicts were found due to the great
producing the parsing paths for each non-terminal amount of productions for the language, the conflicts
symbol, then constructing LL parsing table with the have never been reoslved by hand. A general efficient
parsing paths obtained, finally conducting semantic tool was in need, which motivated this paper. The key
analysis with LL parsing table. The main contribution idea of our method is getting the parsing paths for each
of this paper is that non-backtracking semantic non-terminal symbol after a backtracking parsing
analyzer has been achieved without making any firstly, then achieving semantics analysis using the
transformations to the grammar. parsing paths rather than backtracking. A great amount
of transformations(may be endless) have been avoided
1. Introduction and any grammar can be processed by our method.
This paper is structured as follows: Action grammar
Software system can be divided into goal-oriented was introduced in section 2. Section 3 describes what
and program-oriented. Program-oriented software is a parsing path and how to use it to parse. A parsing
systems include interpreter, compiler, program algorithm with backtracking, data structures needed
transformer, program optimizer, program analyst, and and a simple example were proposed in section 4.
so on, all complicate actions of these systems acted on Conclusions are made and some key issues are
programs which were string data described by context- discussed in Section 5.
free grammar or Backus-Nour Form notation[1].
Thereby, we must first transform the program into 2. Action grammar
some internal data structure, such as program tree. In
order to implement the transformation, the program Action grammar is a grammar with action symbols
must do syntax analysis. However, the exsiting inserted into the right part of its productions, each
frequently-used parsing methods all have action symbol represents the name of a semantics
corresponding restrictions, and can only be used after routine. The goal of action grammar is to implement
transfoming the grammar to satisfy their preconditions. semantic analyzer automatically. User can put semantic
* This paper is supported by National Natural Science Foundation routines into a parser so that semantic analysis can be
for the Youth of China (No.606030313). accomplished along with parsing.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 569


DOI 10.1109/ICCET.2009.102
Since implementation of action grammars relies on L→ BB L→ < I NI T >B B
parsing, action grammar could be implemented by B→ a B B → a < AD Da > B
LL(K), recursive-descent, LR, LALR, and so on. The B→ b B B → b < ADDb >B
well-known Yacc is an implementation system of B→ c B → c < AD Dc >
action grammar based on LALR. Since each parsing
method has its own restrictions, each method is (a) (b)
applicable to specific group of grammars. In order to Fig.1.Grammar GL and its action grammar
use certain method, some transformation have to be Where INIT, ADDa, ADDb, ADDc all are semantics
made to the grammar if it is possible. Unfortunatelly, routines' name, which identifies the following code
not all transformations are effective and some separately:
transformations are rather inefficient. In this paper an
implementation of LL action grammar using two-pass •I NI T :{ ia: =0 ; ib : =0 ;i c : = 0 }
analysis has been given. • ADD a : { i a:= ia +1 }
A LL predictive parser has an input buffer, a stack, a • ADDb :{ ib : = ib +1 }
parsing table. The input buffer contains the string to be • ADD c : { i c:= ic +1 }
parsed, followed by $, a symbol used as a right end 3. Parsing path
marker to indicate the end of the input string. The stack
contains a sequence of grammar symbols with $ on the Suppose A is a non-terminal, and we have grammar
bottom, indicating the bottom of the stack. The parsing GA:
table is a two-dimensional array LL[A,a], where A is a [1] A → a
non-terminal, and a is a terminal. Each parsing action [2] A → a A a
was determined by A, the symbol on top of the stack, for a given sentence ''aaaaa'', the process of top-
and a, the current input symbol, LL[A, a], the table down parsing is as follows:
element related to A and a.
(A, aaaaa) →[1] (a, aaaaa) →#(, aaaa) →error
z If A = a = $, the parser pops A off the stack and
advances the input pointer to the next input As it was shown, production 1 of A was failed, the
symbol. parser should backtrack to the beginning, and try
z If A = a ≠ $, the parser halts and announces another production 2 of A, the continue process was:
successful completion of parsing. (A,aaaaa) →[2](aAa, aaaaa) →#(Aa, aaaa)
z If A is a non-terminal, the program consults entry
LL[A,a] of the parsing table LL. This entry will →[2](aAaa, aaaa)→#(Aaa, aaa) →[1](aaa, aaa)
be either an A-production of the grammar or an →#(aa, aa) →#(a, a)→# (,) →#
error entry. If, for example, LL[A,a] = p, p is the
number of production A → XYZ, the parser where [n] denotes production number used, #
replaces A on top of the stack by ZYX(with X on represents match operation of terminals. We call
top). If LL[A,a]= error, the parser calls an error <2,2,1> as parsing path for A.
recovery routine. The above grammar was not a LL(1) grammar,
because two productions of A started by the same
As to the action grammar, action symbols are added terminal a, so no LL parsing table could be constructed.
to the stack besides the normal syntax symbols. But with backtracking parsing and collecting of paths
Definition of LL parsing table doesn't change, but information, a new LL parsing table could be
some changes should be made to the meaning of constructed. For the grammar GA:
LL[A,a]. That is, except the above three possibilities, LL-ParseTab[ A, a] = < 2,2,1 >
the forth situation should be handled: So the semantics analysis could proceed determinately
z If A is an action symbol, the program executes without backtracking.
the routine represented by A, then A is popped Unrestricted LL action grammar was defined as
out after the routine had been finished. follows:
< aα, aμ , τ >→# < α , μ, τ >
For example, for the grammar shown in Fig.1.(a), a < Aα , aμ, τ >→[i]<riα, aμ, τ' >
program is needed to check whether any given string is i = first(τ(A)), ٛ τ'= τ[tail(τ(A)/A]
accepted by this grammar and count the numbers a, b,
< @α, μ, τ >→@ <α, μ, τ>
c occurred in the string separately. The LL action
where τ represents the parsing path list of nonterminals,
grammar is shown in Fig.1(b).
ri is the right part of the production i.

570
4. Parsing algorithm productions of X have been tried, node X is failed and
should be backtracked to its brother or father node.
Top-down parsing can be viewed as an attempt to We use pi to denote the ith symbol of the right
find a leftmost derivation for an input string. part of production p; First(X) to denote the first
Equivalently, it can be viewed as an attempt to production of non-terminal X.
construct a parse tree for the input starting from the (3)Input
root and creating the nodes of the parse tree in preorder. Input is a character array to represent any given
Suppose there is a production A→X1 X2... Xn, sentence of the grammar, Input is the name of the array,
then the corresponding syntax tree is as follows: Input[i] represents the ith sysmbol of the sentence. If
Input[i] = "$",the parser has reached the end of the
A sentence.
(4)Parsing paths
x1 x2 ...... xn
Parsing paths for each non-terminal can be gained
A is called the father node of Xi, Xi is called the ith by searching the node stack generated during the
son of A. If the name of the syntax symbol on one parsing. For example, if the node stack is shown as:
node is a terminal, node is called terminal node, and if
(1, X1, p1, i1, F1, B1, S1) bottom
the name of the syntax symbol on one node is a non-
terminal, node is called non-terminal node. (2, X2, p2, i2, F2, B2, S2)
If there is no ambiguity of the language defined by
a grammar, then any legal sentence of this language (n Xn, pn, in, Fn, Bn, Sn)
has a corresponding syntax tree. So the focus of our top
method is how to build a syntax tree for a given
sentence. For any non-terminal Y, Y's parsing path Yτ can be
determined by the following simple searching:
4.1 Data structures from bottom to the top,
In order to implement LL action grammar, we have repeat if Xk = Y then Yτ = Yτ •[pk].
defined following data structures. where the intial Yτ = ε,"•" represents concatenation
(1)Syntax tree nodes operation of list structure.
Node : NodeNum × Symbol × Product × ProductIndex
× FathNode × BroNode × SonNode 4.2 Algorithm
where Symbol ∈Terminal ∪ NonTerminal The parse tree node that is being handled during the
NodeNum, Product, ProductIndex, FathNode, parse tree's construction is called as the current node.
BroNode, SonNode ∈ Integer,which represents the The parse tree nodes can be devided into four classes
current node number c, the current production p, the ith according to different situations: new-terminal nodes,
symbol of production p, the input pointer, the father new-nonterminal nodes, success-backtracking nodes
node, the late brother node, the late son node separately. and fail-backtracking nodes. Suppose we use c to
So, a node is noted as (c, X, p, i, j, F, B, S). represents the current node, then the key part of
In order to facilitate backtracking, node sequence constructing parsing tree backtrackingly is as follows:
generated during the parsing were saved as stack. z c is a new-terminal node:
(2)Productions if Xc = Input[j] then j = j+1; c = F ;
Production: NonTerminal × SymbolList c.Flag = succ-backtracking node;
SymbolList : (Symbol, /, $)* else delete c from the nodestack;
where "/", "$" are endmarkers of one production and F.S = B; c = F;
of all productions for each nonterminal respectively. c.Flag = fail-backtracking node;
For example, for a grammar GA: z c is a new-nonterminal node:
A → Ba | aA oldX = Xc; c = c+1; Xc = First (oldX) ;
B → b | bB if Xc ∈ terminal then c.Flag = new-terminal node;
G was saved as : else c.Flag = new-nonterminal node;
A B a / a A / $ add c to the nodestack;
B b / b B / $ z c is a succ-backtracking node:
Specially, we use | p | to denote the length of the right if (i > | p |) & (p > | X |) then
string of production p; | X | denotes the last production if c is root then successexit ;
of X. It is obviously that : if i > | p |, then production p else c = F; c.Flag = succ-backtracking node
is successful(maybe temparily); if p > | X |, then all the else if (i > | p |) then

571
c = c + 1; Xc = pi +1; there is another alternative for A that we have not tried
if Xc ∈ terminal then but that might produce a match.
c.Flag = new-terminal node; In going back to A, we must reset the input pointer
else c.Flag = new-nonterminal node; to position 2, the position it had when we first came to
add c to the nodestack; A. We now try the second alternative for A to obtain
the tree of Fig.2.(f). The leaf a matches the second
z c is a fail-backtracking node:
symbol of ω and the leaf d matches the third symbol.
if (i > | p |) & (p > | X |) then
Since we have produced a parse tree for ω, we halt and
if c is root then failexit ;
announce successful completion of parsing.
else delete c from the nodestack;
So the parsing path of S is [1] and A is [3]. Then
F.S = B; c = F;
we can use the gotten parsing path to analysis
c.Flag =fail-backtracking node
semantics further whose process was omitted.
else if (i > | p |) then
if S ≠ 0 then c = S;
if Xc ∈ terminal then j = j-1; c = F; 5. Summary
c.Flag = fail-backtracking node;
else i = i - 1; Simplicity and facility are the goals for the
c.Flag = fail-backtracking node; application software. Even for system software such as
compiler, simplification of some phases is welcomed
4.3 A simple example during its working process. Our experience in
constructing the compiler for ATLAS language had
Consider the grammar Gs:
taught us that even for the most professional lingual
S → c A d [1]
specialist, transformation of grammar for an big
A → ab [2]| a [3] enough language is almost an impossible work since
and the input string ω = cad. To construct a parse tree there was no universal rules for such transformations.
for this string top-down, we initially create a tree However, any grammar could be used to LL parsing
consisting of a single node labeled S. An input pointer without any transformations using the method
points to c, the first symbol of ω. We then use the first proposed in this paper.
production for S to expand the tree and obtain the tree How to deal with ε-productions was not mentioned
of Fig.2.(b). in this paper just to be on the simple side. In fact, ε
S symbol can be considered as the wildcard character,
S S that is ε matches with any terminal. The only
c difference between them is that the input pointer
S c c
a doesn't move and no parse tree node generated when ε
symbol was met with.
(a) (b) (c) (d)
References
S S S
[1] A.V. Aho, R.Sethi and J.D. Ullman, Complilers:
c c c d Principles, Techniques, and Tools, Addison Wesley, New
Jersey, 1986.
a b a a [2] Jay, Earley, "An Efficient Context-Free Parsing
(f) Algorithm", Communications of the ACM, Vol. 13(2), Feb.
(e) (g)
1970. pp. 94-102.
Fig.2. Steps in building parsing path [3] Standard Test Language for All Systems-
Common/Abbreviated Test Language for All
The leaf, labeled c, matches the first symbol of ω, Systems(C/ATLAS). "IEEE Std 716-1995". 1995.
so we now advance the input pointer to a, the second [4] LIU Lei and GUO De-Gui, "The Implementation
Technology of Test Language ATLAS",Chinese Journal of
symbol of ω, and generate the next leaf, labeled A. We Scientific Instrument, Vol.25(S2), 2004.pp.16-19.
can then expand A using the first alternative for A to [5] D.E.Knuth, "Semantics of context-free languages",
obtain the tree of Fig.2.(d). We now have a match for Theory of Computing Systems, Vol.2(2), 1968 .pp.127-145.
the second input symbol so we advance the input [6] LI Ai-Ping, WANG Jia-Li and LIANG Hong-Yu, "A
pointer to d, the third input symbol, and compare d Study on YACC Confilct Resolving during ATLAS Syntax
againt the next leaf, labeled b. Since b does not match Analysis", Journal of Electrionic Measurement and
d, we report failure and go back to A to see whether Instrument, Vol.20(4), 2006. pp.97-101.

572
2009 International Conference on Computer Engineering and Technology

Improving BER using RD Code for Spectral Amplitude Coding Optical CDMA etwork
Hilal Adnan Fadhil1, S. A. Aljunid2, R.Badlishah Ahmad3.
1,2,3
School of Computer and Communication, University Malaysia Perlis, 02000 Kuala Perlis,
Perlis, MALAYSIA
*
Corresponding author: eng_hilal_adnan@yahoo.com

Abstract- A new code for spectral-amplitude coding optical code- used to improve the signal-to PIIN noise ratio, this study
division multiple-access system is proposed called Random introduce a code with zero cross correlation at data segment,
diagonal (RD) code. This code is constructed using code segment the systems that adopted this code had improved BER
and data segment. One of the important properties of this code is performance and the encoding/decoding devices could be
that the cross correlation at data segment is always zero, which implemented via fiber-Bragg grating (FBG) easily. However,
means that Phase Intensity Induced "oise (PII") is reduced. For
as the lengths of code words used in the frequency domain
the performance analysis, the effects of phase-induced intensity
noise, shot noise, and thermal noise are considered became larger, the physical length of the FBG array became
simultaneously. Bit-error rate (BER) performance is compared impractical, and introduced unequal insertion loss for different
with Hadamard and Modified Frequency Hopping (MFH) codes. wavelength chips. In terms of code length a good set of code is
It is shown that the system using this new code matrices not only to obtain the maximum number of codes with maximum
suppress PII", but also allows larger number of active users weight and minimum length with the best possible
compare with other codes. Simulation results shown that using autocorrelation and cross-correlation properties. A code with a
point to point transmission with three encoded channels, RD code
larger size should give better BER performance. Hence,
has better BER performance than other codes, also its found that
at 0 dbm PII" noise are 10-10 and 10-11 for RD and MFH unipolar {0,1} codes which have low out-of-phase
respectively. autocorrelation and cross-correlation values are used. Short
code length limit the addressing flexibility of the codes, while
Keywords- OCDMA, PII, MFH, BER. long code length are considered disadvantage in
implementation, since either very wide –bandwidth source or
very narrow filter bandwidth are required, RD codes exists for
I. INTRODUCTION practical code length that are neither too short nor too long. .
This paper is organized as follows: in Section II we will discus
Fiber optic code division multiple access (CDMA) techniques how the code is developed theoretically and also its properties;
provide flexible solution for asynchronous high-capacity simulation results for different OCDMA codes are given in
communication in the field of digital local area networks. The section III, and the conclusion is presented in section VI.
early incoherent optical CDMA (OCDMA) systems used
pseudo-orthogonal sequences to encode signals in the time
domain, but the codes were long and multiple access II. RANDOM DIAGONAL CODE PROPERTIES
interference (MAI) limited the number of simultaneous users.
Thus, spectral-amplitude-coding (SAC) of OCDMA systems Many OCDMA strategies have been proposed [4,5], where
was proposed because of its ability to eliminate the influence one of the major concerns of designing RD code sequences is
of MAI and to preserve the quasi-orthogonality between MAI because the performance of such system is usually
network users [1, 2]. MAI exists in the OCDMA systems when interference limited. However, due to the characteristics of
multiple users accessing the same medium using the same time optical signals, in the direct detection of OCDMA system the
and frequencies for transmitting concurrent data streams. In signature sequence consists of unipolar (0,1) sequences. We
SAC-OCDMA systems, each user is assigned with a sequence
denote a code by N, W, λ where N is the code length, W is the
code that serves as its address. An OCDMA user modulates its
code weight, and λ is in-phase cross correlation. Let us define
code (address) with each data bit and asynchronously initiates

transmission. Thus, this modifies its spectrum appearance, in a λ = ∑ x i y i as the inphase cross correlation of two different
way recognizable only by the intended receiver. Otherwise i =1
only noise like bursts is observed [3]. Many code have been sequences X=(x1,x2,….x) and Y=(y1,y2,….y). When λ =1, it is
used for OCDMA such as Modified Frequency Hopping considered that the code possesses ideal inphase cross
(MFH), prime codes [2], [4] and Hadamard codes [2], [5], etc. correlation. The design of this new code can be preformed by
However, since their in-phase cross-correlations were dividing the code sequence into two groups, which are code
relatively high, as compared with code weight, the phase- segment and data segment.
induced intensity noise (PIIN) degraded system performance Step1, data segment: let the elements in this group contain only
severely. PIIN originated from the intensity noise caused by one “1” to keep cross correlation zero at data level ( λ = 0 ).
the phase noise of the incoherent light fields that were mixed This property is represented by the matrix (K × K) where K
and incident upon a photodiode [5]. The new proposed code is will represent number of users. These matrices have binary

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 573


DOI 10.1109/ICCET.2009.57
coefficient and a basic Zero cross code (weight=1) is defined
as [Y1]. For example, for three users (K=3), Y1 can be 0 1 1 0 1
1 1 0 1 0 
expressed as   
1 0 1 and 0 1
0 0 1     
[Y1 ] = 0 1 0  0 1 1  1 0
[B](j) = [M ]( j) =
1 1 0 0 1
1 0 0    
: : :  : : 
: : :  : : 
where [Y1] –consists of (K × K) identity matrices.    
Notice, for the above expression the cross correlation between aj1 aj2 aj3  a j1 a j 2 
any two rows is always zero.

Step2, code segment: the representation of this matrix can be where j represents the value for K-th user (j=1,2…K), and the
expressed as follows for W=4: value of aj is either zero or one. The weights for code part for
0 1 1 1 0 both matrix [M], [B] are equal to W-1, so the total combination
of code is represented as (K × ) where K=3, =8, as given by
[Y2 ] = 1 1 0 0 1
1 0 1 1 0 [Z1], [Z1]=[Y1 Y2] ‫׀‬
where [Y2] consists of two parts -weight matrix part [W],and  0 0 1 0 1 1 1 0
basics matrix part [B]. Basic part [B] can be expressed as [ Z 1 ] = 0 1 0 1 1 0 0 1
1 0 0 1 0 1 1 0
0 1 1 
[B ] = 1 1 0
From the above basic matrix Z, determine the number of users
1 0 1
(K) and the code length (), as given by (K × ) matrix. Notice
1 0 that the code weight of each row is equal to 4, and the relation
0 1 
 between N and K for this case (W=4) can be expressed as
and weight part called [M] matrix =  1 0  which is

responsible for increasing number of weights. Let i= (W-3) and =K+5 (2)
1 0 
Mi =  0 1  where i represents number of Mi matrix on As a result we can find that for W=5,6, and 7 code, word
 
 1 0  length  can be expressed as K+7, K+9 and K+11
respectively. As a result the general equation describing
matrix [M], given by
number of users K, code length  and code weight W is given
as
[M]= M 1 M 2 M 3 .......M i (1)
 = K+ 2W -3 (3)
For example, if W=5, from Eq.(1) i=2, so that [M]= M 1 M 2
Finally, using the properties of RD code, the SNR for RD code
is derived mathematically as follows:
1 0 1 0 2
[M ] = 0 1 0 1
.  2ℜPsrW 
 
1 0 1 0 SR =   
2eBWPsr ℜ Bℜ 2 PsrW K
+ (K − 1 + W ) + 4 K BTn B
Notice that to increase the number of users simultaneously  2  2 ∆V RL
with the increase of code word length we can just repeat each (4)
row on both Matrixes [M] and [B]. For K-th user matrix [M]
and [B] can be expressed as where Psr is the effective power of a broadband source at the
receiver. The bit-error rate (BER) can be calculated using
Gaussian approximation [8]

1 SR (5)
BER = erfc
2 8

574
Table 1 shows the code lengths required by the different codes
to support a number of users, K, of 30, RD code offers better
performance than other codes in term of code length for same
number of users . Short code length limit the addressing
flexibility of the codes, while long code length are considered
disadvantage in implementation, since either very wide –
bandwidth source or very narrow filter bandwidth are required,
RD codes exists for practical code length that are neither too
short nor too long.

Table 1 Comparison of RD, MFH, OOC, Hadamard and Prime


Codes for the same number of users, K=30.

Code No. of user Weight Code


K W length N
(a)
OCC 30 4 364
Prime code 30 31 961
Hadamard 30 16 32
MFH 30 7 42
RD code 30 3 33

III. OCDMA SYSTEM DESCRIPTION

Figure (1) shows the setup of the proof-of- principle


simulation for the proposed scheme. The performances of RD,
MFH, and Hadamard codes are simulated by using the
simulation software OptiSystem Version 6.0. A simple
schematic block diagram consists of two users, as illustrated in
(b)
Fig. 1. Each chip has a spectral width of 0.8 nm. The tests were
carried out at a rate of 10 Gb/s for 20-km distance with the
ITU-T G.652 standard single-mode optical fiber (SMF). All the Fig. 1 Simulation setup of the proposed scheme a) Transmitter b) Receiver
attenuation α (i.e., 0.25 dB/km), dispersion (i.e., 18 ps/nm
km), and nonlinear effects were activated and specified
according to the typical industry values to simulate the real
environment as close as possible. The performances of the
system were characterized by referring to the bit-error rate
(BER). As shown in Fig.1 after transmission, we used a Fibre
Bragg grating (FBG) spectral phase decoder operates to decode
the code at data level. The decoded signal was decoded by a (a)
photo-detector (PD) followed by a 0.75 GHz low-pass-filter
(LPF) and error detector respectively. The transmitted power
used was 0 dBm out of the broadband source. The noise
generated at the receivers was set to be random and totally
uncorrelated. The dark current value was 5 nA, and the thermal
noise coefficient was 1.8 × 10-23 W/Hz for each of the
photodetectors. The eye pattern diagrams for RD, Hadamard
and MFH codes are shown in Fig.2 respectively. The eyes
diagram shown in Fig.2 clearly depict that the RD code system
gives better performance, having a larger eye opening. The
corresponding simulated BER for RD, Hadamard, and MFH
codes systems are shown in Fig.2. The vertical distance
between the top of the eye opening and maximum signal level (a)
gives the degree of distortion. The more the eye closes, the
more difficult it is to distinguish between 1s and 0s in the
signal. The height of the eye opening at the specified sampling
time shows the noise margin or immunity to noise.

575
(b) Fig. 3: BER versus number of users for RD, MFH and Hadamard code using
Psr =0 dBm, B= 80MHz at the operating wavelength of 1550nm

In OCDMA systems, phase induced intensity noise (PIIN) is


related to multiple access interference (MAI) due to the
overlapping of spectra from different users. Here, we will
analyze the relations between PIIN noise and received power.
We have already shown previously that MAI can be almost
reduced because of zero cross-correlation at data segment.
Thus the effect of MAI is not elaborated further. Figure 4
shows the relations between PIIN noise and received power
(Psr). The values of B, W, and ∆V are fixed (ie. B = 311
MHz, W = 5 and ∆ V = 3.75 THz) but Psr varied from -30
dBm to 20 dBm. When the received power increases the PIIN
noise for MFH and RD codes increases linearly. The PIIN
(c) noise of RD codes family is less compared to that of MFH
( c) code. As shown in Fig.4 the PIIN noise can be effectively
suppressed by using RD code family. This is because of the
Fig. 2 Eye diagram of (a) one of the RD channels, (b) one of the Hadamard
channels, and (c) one of the MFH channels, at 10 G bit/s.
superior code properties of RD code family, such as no cross-
correlation at data level. Also it has been shown that, when the
Using Eq.4, Fig.3 depicts the relation between the number of numbers of users are increased, the PIIN noise increased as
users and the BER, for RD, MFH, and Hadamard codes, where well.
they have been plotted for different values of K (number of
users). This figure clearly shows that RD code results in a
much better performance, i.e (smaller BER) than MFH code
and Hadamrad code schemes. This is evident from the fact that
RD code has a zero cross-correlation while Hadamard code has
increasing value of cross-correlation as the number of users
increases. Note also that the calculated BER for RD was
achieved for W=7 while for MFH and Hadamard codes, the
calculated BER was for W=14, and W=64 respectively.

576
[5] F. R. K. Chung et al., “Optical orthogonal codes: design, analysis, and
applications,” IEEE Trans. Inform. Technol., vol. 35, pp. 595–604, May 1989

[6] Goursaud C., Julien-Vergonjanne A., Aupetit-Berthelemot C., Cances J.P.


and Dumas J.M., "Study of Parallel Interference Cancellation Structures for
Incoherent DSOCDMA Systems”, Asia-Pacific Conference on
Communication, Oct 2005

[7] S. Zahedi and J. A. Salehi, “Analytical comparison of various fiber optic


CDMA receiver structures, “J.Lightw. Technol., Vol 18, no. 5, pp.1718-1727,
Dec.2000

[8]- J. W. Goodman, Statistical Optics. New York: Wiley 1995

.4 PIIN versus Pr for versus OCDMA codes

IV. CONCLUSIONS

In this paper, we proposed a new code can effectively suppress


the PIIN, with a fixed in-phase cross correlation value of 1 at
code level and zero cross correlation at data level is presented.
The properties of this code are described and discussed with
the related equations. Based on the equations, the results of
system performance are presented. To conclude, the
advantages of the code can be summarized as follows: (1)
shorter code length; (2) no cross-correlation in data level which
minimized λ and reduced PIIN (Phase Induced Intensity
Noise); (3) data level can be replaced with any type of codes;
(4) more overlapping chips will result in more crosstalk; and
(5) flexibility in choosing , K parameters over other codes
like MFH code. The performance of the system with the
proposed RD code is analyzed by taking into account the effect
of the intensity noise, shot, and thermal noise sources. It is
found that RD code is the best in term of BER compared to
MFH code and Hadamard code. RD code can be an excellent
candidate for use in next –generation optical access networks.

REFERENCES

[1] Kavehrad, M., and D. Zaccarin. 1995. Optical Code-Division-Multiplexed


System Based on Spectral Encoding of Noncoherent Sources. Journal
Lightwave Technology. 13: 534-545.

[2] Yang, C. C., J. F. Huang, and S. P. Tseng. 2004. Optical CDMA Network
Codecs Structured with M-Sequence Codes over Waveguide-Grating
Routers. IEEE Photonics Technology Letters. 16 (2): 641-643.

[3] Z. Wei and H. Ghafouri-Shiraz, “Proposal of a novel code for spectral


amplitude-coding optical CDMA systems,” IEEE Photon. Technol.Lett., vol.
14, pp. 414–416, Mar. 2002.

[4] Z. Wei et al., “Modified quadratic congruence codes for fiber Bragg-
grating-based spectral-amplitude-coding optical CDMA systems,” J.
Lightwave Technol., vol. 19, pp. 1274–1281, Sept. 2001

577
2009 International Conference on Computer Engineering and Technology

USS-TDMA:Self-stabilizing TDMA Algorithm for Underwater


Wireless Sensor Network

Guo Zhongwen Li Zhengbao Hong Feng


Department of Computer Science,
College of Information Science and Engineering Ocean University of China
Qingdao,China
guozhw@ouc.edu.cn lizhengbao@ouc.edu.cn hongfeng@ouc.edu.cn

Abstract—Underwater wireless Sensor network is often The base station manages the distribution of time slot and
constrained by limited power, limited communication range keeps synchronization by sending diffusion message.
and high bit error rate (BER). We focus on designing a The rest of the paper is organized as follows. In section
TDMA service for a cube-based underwater wireless sensor
Ⅱ, we discuss the network model and some assumptions.
network. Such network is readily found in many
applications in the area of monitoring, hazard detection, and In section Ⅲ, we give the details of our algorithm, present
so on. In this paper, we propose an underwater self- the new TDMA algorithm for three communication
stabilizing TDMA Algorithm for assigning time slots to patterns. In section Ⅳ, we introduce the simulations of
sensors. We present the TDMA algorithm customized for the algorithm and the simulation results. We show that
different communication patterns, namely, broadcast, our protocol is available in underwater environment and
convergecast and local gossip, which occur commonly in
performs better than other protocols, especially in high
sensor networks. The algorithm is self-stabilizing and energy
efficiency. Meanwhile, with the localization service, the traffic load case. Finally, we make conclusion and future
algorithm can be used in mobile sensor networks. work in section Ⅴ.

Keywords- Underwater Wireless Sensor Network, TDMA, II. MODEL AND ASSUMPTIONS
Broadcast, Convergecast, Local Gossip In this section, we propose the network models and
some assumptions in our algorithm. We assume that
I. INTRODUCTION network is plotted into some cubes, the sensors are
Underwater Acoustic Wireless Sensor Networks arranged in the vertexes of cubes and each sensor knows
(UAWSN) can be employed by a vast range of its location. The base station is located in the left-top
applications, e.g., environment monitoring, data position (at location (0,0,0) ). The structure of the network
gathering. So UAWSN has become a hotspot in wireless is shown in Fig. 1. Further we assume each sensor has a
sensor networks researching resent years. However, many communication range and interference range. We
challenging technical issues are existent [2], such as high consider the communication distance is 1 and the
latency and low bandwidth, because of using sound wave interface range is k ( k ≥ 1 away). Also, we assume that
for communication. Moreover, changeful environment the sensors are aware of their communication range and
and ubiquitous noise in underwater environment bring interference range. The length of cube side equals to the
high bit error rate (BER) and exquisite latency changing. communication distance.
All of these challenges made traditional protocols in
wireless ad-hoc networks unavailable in underwater
wireless sensor network.
Designing of medium access control (MAC) protocols
is a distinct challenge for UAWSN. The MAC protocols
for underwater acoustic networks are mainly proposed
from Aloha, CSMA, MACA and CDMA [3, 4, 5, 6, 7, 8].
But they have some shortcomings. Such as, RTS-CTS
may improve end to end latency greatly; the efficiency of
Aloha is not very high and for TDMA, synchronization of Figure 1. The structure of the network model
all nodes is an intractable matter.
In this paper we present a new TDMA algorithm for Now, based on these assumptions, given two sensors, i
underwater wireless sensor network based on [1, 9].The and j, if i is in the interference range of j but i is not in the
algorithm is a collision-freedom one and fairly utilizes the communication range of j then i receives messages sent
bandwidth of acoustic channel among different sensors. by j with a low probability. However, if i receives another

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 578


DOI 10.1109/ICCET.2009.54
message from a sensor n while j is sending a message, it message after (k + 1) slots. If a sensor receives a diffusing
is possible that a collision between these two messages message from its top neighbor, it forwards the message
can prevent i from receiving either of those messages. after (k 2 + k + 1) slots. In short, if the base station initially
Based on the definition of the interference range, it send a diffusing message at time slot 0, the sensor ( x, y, z )
follows that it is at least equal to the communication would forward the diffusing message at time slot
range. As define in [9] the concept of collision domain. ti = x +(k +1) y +(k2 + k +1)z .
The collision domain of sensor j includes the sensors that
are in the communication range of j and the sensors that
interfere with the sensors in the communication range of j.
Hence, if two sensors i and j are allotted the same time
slot then j should not be present in the collision domain of
i and i should not be present in the collision domain of j.
In this paper, we consider three commonly occurring
communication patterns: broadcast, convergecast, and
local gossip. In broadcast, a message is sent to all the
sensors in the network. Based on the internal classification
technique mentioned earlier, we consider the
communication pattern, local gossip, where a sensor sends
a message to its neighboring sensors within some distance.
And, based on the external classification technique
mentioned earlier, we consider the communication pattern,
convergecast, where a group of sensors send a message to Figure 2. The TDMA assignment for broadcast where
communication range=1 and interference range=2. The numbers
a particular sensor such as the base station. associated with each sensor denote the slots at which it can send a
message.
III. THE ALGORITHM FOR TDMA SERVICE
We consider three common communication patterns and 2) TDMA Slots Once the initial time slots were
give three different assignments of time slots. In section A, assigned to the sensors, we should calculate the next time
we present the TDMA algorithm for broadcast. Then, in slot which the sensors can use. Let i and j to be the two
section B, we present the TDMA algorithm for sensors in the network, i is in the collide-domain of j. we
convergecast and we present the algorithm for local gossip proposed a algorithm that if i forwards the message at
in section C. initial slot t i , it can also send message at slot ti + c ∗ MCG,
A. TDMA Service for Broadcast the MCG captures information from the maximum collide-
domain. Because i and j shouldn’t collide in any slots,
Consider a cube grid network where a sensor can
communicate with sensors which are 1 away from it and which means ti + ci ∗ MCG≠ t j + c j * MCG . So | ti −t j |
interfere with sensors which are k away from it, k ≥ 1 .(e.g. couldn’t be a multiple of MCG. In this network model, the
Fig. 2, where k = 2 ) To present the TDMA algorithm, we max | ti −tj | is (k+1)(k2 +k+1) .Such a situation occurs if i is
( k + 1) away from j. Hence, the interval between slots
first present an algorithm for initial slot assignment. Then,
we present an algorithm for subsequent slot assignments. assigned to a sensor is (k +1)(k2 +k +1)+1.The algorithm for
1) Initial slot assignment: Let us assume the base assigning TDMA slots is shown in TableⅠ. You can see
station sends a diffusing message at slot 0, the the time slot assignment in Fig.2.
sensors (1, 0 , 0 ) , ( 0,1,0) and (0,0,1) receive the message at TABLE I. THE TDMA ALGORITHM (3.1) FOR BROADCAST
the same time. However, they can’t all forward the
diffusing message at slot 1 because the message would const P = (k + 1 )( k 2 + k + 1 ) + 1 ;
b

collide in sensor (0,0,0) . So the sensor (1,0,0) is allowed to when sensor i receives a diffusing message from sensor j
if (j is west neighbor at distance 1)
forward the diffusing message at slot 1, the sensor (2,0,0) Transmit after 1 slot.
is allowed to send it at slot 2. We find that if else if (j is north neighbor at distance 1)
sensors (2,0,0) and (0,1,0) forward messages at the same Transmit after (k + 1 ) slots.
time, the message would collide in the sensors (1,0,0) and else if (j is top neighbor at distance 1)
Transmit after (k 2 + k + 1 ) slots.
(1,1,0) (e.g., in Fig.2 while k = 2 ).Hence the sensor (0,1,0)
is allowed to forward the diffusing message at slot ( k + 1) . else
Ignore.
Similarly the sensor (0,0,1) can send the diffusing message If sensor i transmit a diffusion message at time slot ti , i can transmit at
at slot (k 2 + k + 1) . Generally to say, if a sensor receives a time slots, ∀ c : c ≥ 0 : t i + c ∗ Pb .
diffusing message from its west neighbor, it is allowed to
forward the message at next time slot. While it receives the Theorem1 The initial slot assignment for broadcast in
message from its north neighbor, it will forward the algorithm3.1 is collision-free.

579
Proof We can assume that the base station (0,0,0) starts to base station. We can see that the delay is 41 time slots. So
transmit at slot 0. Let’s prove the algorithm will get we should change the algorithm to reduce the delay for
collision-free in any two sensors. Considering two sensors convergecast. Thus, the TDMA algorithm customized for
(x1, y1, z1) and (x2, y2, z2) , t1 = x1 +(k +1)y1 +(k2 +k +1)z1 and convergecast is seen in Table2.
t2 = x2 +(k +1)y2 +(k2 +k +1)z2 are the transmitting time slots. TABLE II. THE TDMA ALGORITHM (3.2) FOR CONVERGECAST
Collision is possible only if the following conditions hold:
const P = ( k + 1 )( k 2 + k + 1 ) + 1 ;
t1 = t 2 , ( x1 − x2 ) + (k + 1)( y1 − y2 ) + (k 2 + k + 1)(z1 − z2 ) = 0 (1)
b

when sensor i receives a diffusion message from sensor j


The Manhattan distance between (x1, y1, z1) and (x2, y2, z2) is: if (j is west neighbor at distance
Transmit after ( P − 1 )th slot.
| x1 − x3 | + | y1 − y3 | + | z1 − z 2 |≤ k + 1 (2) b

else if (j is north neighbor at distance 1)


( x1 , y1 , z1 ) and (x2, y2, z2) are distinct, so the Manhattan Transmit after P - (k + 1 )th slot.
b
distance is at least 1: else if (j is top neighbor at distance 1)
| x1 − x3 | + | y1 − y3 | + | z1 − z 2 |≥ 1 (3) Transmit after P - (k 2 + k + 1 )th slot.
b

We now show that the three conditions will not hold at else
the same time. Firstly we consider | z1 − z2 |= 0 . In this Ignore.
If sensor i transmit a diffusion message at time slot t i , i can transmit at
situation, the conditions will change to
time slots, ∀ c : c ≥ 0 : t i + c ∗ Pb .
(x1 − x2 ) + (k +1)(y1 − y2 ) = 0 (4)
| x1 − x3 | + | y1 − y3 |≤ k +1 (5) C. TDMA Service for Local Gossip
| x1 − x3 | + | y1 − y3 |≥ 1 (6) For local gossip, sensors need communicate with
In [9], the author had proved this situation. Secondly, neighbors, in order to reduce the delay, we increase the
we will prove that when | z1 − z2 |≥ 1 the threes conditions interval period (P) to 2 [( k + 1 )( k 2 + k + 1 ) + 1 ] .In each
still can’t hold at the same time. While | z1 −z2 |≥1, then P, a sensor has two slots to send message, one is even, and
( x1 − x 2 ) + ( k + 1)( y 1 − y 2 ) = − ( k 2 + k + 1)( z 1 − z 2 ) (7)
another is odd. Assume the slots assigned to the initiator at
0 and ( P − 1) .The details are in Table3.
| x 1 − x 3 | + | y 1 − y 3 |≤ k (8)
We can see that TABLE III. THE TDMA ALGORITHM (3.3) FOR LOCAL GOSSIP
| ( x1 − x 2 ) + (k +1)( y1 − y 2 ) |<=| x1 − x2 | +(k +1) | y1 − y 2 |≤ k 2 + k (9)
const P = 2 [ (k + 1 )( k 2 + k + 1 ) + 1] ;
| − (k 2
+ k + 1 )( z 1 − z 2 ) | ≥ k 2
+ k +1 (10) when sensor i receives a diffusing message from sensor j
There occurs a contradiction in (7) 、 (8) 、 (9) and (10). if (j is west neighbor at distance 1
Thus, collision cannot occur in this algorithm. Transmit after 2 slots.
else if (j is north neighbor at distance 1)
Theorem2 The algorithm3.1 satisfies the problem Transmit after 2 (k + 1 )th slots.
specification of TDMA.
else if (j is top neighbor at distance 1)
Proof Consider two distinct sensors j and k such that j is Transmit after 2 (k 2 + k + 1 )th slots.
in the collision domain of k. t j + c1 * pb and t k + c2 * pb are else
the time slots assigned to j and k respectively, c1, c2 ∈N and + Ignore.
if sensor i transmit a diffusion message at time slot t i , i can transmit at
Pb = (k +1)(k 2 + k + 1) +1 . From theorem1.1, we know that
time slots, ∀ c : c ≥ 0 : t i + c ∗ P , ( ( P − 1) − t ) mod P + c * P
i
t j ≠ tk . If t j + c1 * pb = tk + c2 * pb , then collision will occur only
if | tj −tk | is a multiple of pb . However, j is in the collision D. USS-TDMA Properties
domain of k, | t j − tk |≤ (k +1)(k 2 + k +1) , so | t j − t k |< pb .Hence, if 1) Stabilization and Reliability: We now add
stabilization to the algorithm. We consider that the sensors
j and k transmit at the same time, then they don’t present in
start at arbitrary clock values. We ensure that they recover
the collision-domain of each other. This is a contradiction.
to states from where collision-free communication is
Thus, collision cannot occur in this algorithm.
achieved. We modify that algorithm in section Ⅲ(A) to
B. TDMA Service For Convergecast obtain underwater self-stabilizing TDMA (USS-TDMA).
If we use the time slot assigned by the algorithm 3.1 to In USS-TDMA ,the base station periodically send a
transmit a message in the communication pattern diffusing message in its TDMA slots(calculated in the
convergecast, we can find a problem that the delay will be algorithm 3.1).If a sensor receives the diffusing message, it
too long. e.g., in Fig.2 when the sensor (1,1,0) send a recalculates the time slot based on the algorithm 3.1, then
message to the base station at slot 4, the message will be forward the message in its time slot. If a sensor doesn’t
forward at slot 23.At slot 45, the message will arrive in the receive a diffusing message for certain consecutive
number of time slots, the sensor shut down. It will wake up

580
when receives a diffusing message from its neighbor who Fig.3 (b) identifies the number of collisions that occur
is closer to the base station. From then on, the sensors can in different algorithms. As expected, USS-TDMA is
use the TDMA algorithm in section 3.1 to transmit collision free for all network sizes. By contrast, in CSMA,
messages again. [9, 10] about 12% of messages suffer from collisions.
2) Energy Efficiency: Energy efficiency can be Fig.3(c) identifies the maximum delay incurred in
achieved in USS-TDMA as follows. A sensor remains in receiving broadcast messages. Since all sensors may not
active mode only in its allotted time slots and in the receive the broadcast message when CSMA is used, we
allotted time slots of the sensors within its communication consider the delay when a certain percentage, 80-100%,
range. In the remaining slots, the sensor can save energy of sensors receives the broadcast message. As we can see,
the delay in USS-TDMA is only slightly higher.
by turning off its radio and remaining in idle mode.
Suppose the communication range of a sensor is 1, then a B. Simulation for Convergecast
sensor will have at most 6 neighbors. Let P be the period For convergecast, a set of sensors send a message to the
between successive time slots allotted to a sensor. A base station at the same time. In our simulations, we keep
sensor will have to be in active mode in its allotted time the network size fixed at 10x10. We choose a subgrid of
slot and in the allotted time slot of its 6 neighbors, during varying size; sensors in this subgrid transmit the data to
every period. the base station. We assume the subgrid sends the data to
3) Supporting mobile sensor nodes: we know that the base station is in the opposite corner from the base
sensors in marine move following the water. USS-TDMA station. For these simulations, we consider the percentage
of sensors whose messages are received by the base
can be used to deal with this situation while localization
station, percentage of collisions and the maximum delay
service is available. In presence of mobile sensor nodes, incurred in receiving convergecast messages.
the allotted time slot used by a mobile sensor keeps on We can see in Fig. 4(a), the USS-TDMA performs
changing due to its motion. Hence, a sensor should know best in the three protocols; all the messages can reach the
its current location and calculate its allotted time slot by base station. Compared with the CSMA, the number of
the position. In other word, if provided the localization messages that reach the base station is less than 50%. And,
service, our algorithm can be applied to mobile sensor without the MAC layer, no data reaches the base station.
network. [11, 12] In Fig. 4 (b), although USS-TDMA is collision free,
there are a significant number of collisions with CSMA. In
IV. SIMULATION RESULTS Fig. 4 (a) (c), the delay incurred by USS-TDMA is
In this section, we compare USS-TDMA with the case reasonable and that the base station receives all the
where CSMA is used and with the case where no MAC messages sent by the sensors. The delay incurred for 75%
layer is used in three communication patterns. The of the messages to reach the base station is infinity when
the field size is greater than 4.
underlying topology is a cube grid where the base station 16 USS-TDMA
14
USS-TDMA
80
USS-TDMA 30%

is in one vertex of a cube grid. The length of the cube, CSMA 12 CSMA 70 USS-TDMA 70%
CSMA 30%
14 No Mac Layer
CSMA 70%
Messages received by base station

10 60

Average Delay(in clock units)


12
Percentage of collisions

8 50

communication range and interference range is 1. 10

8
6

4
40

30
6

4 2 20

A. Simulation for Broadcast 2

0
0 2 4 6 8 10 12 14 16
0

-2
0 5 10 15 20 25
10

0
0 2 4 6 8 10 12 14 16 18 20
Size of the field sending data to base station Size of the field sending data to base station Size of the field sending data to base station

We conduct the broadcast simulations for different (a) (b) (c)


network sizes. In these simulations, we consider the Figure 4. Results for convergecast with communication range=1,
following metrics: number of sensors that receive the interference range=1
broadcast message, percentage of collisions and the
maximum delay incurred in receiving broadcast messages.
In Fig.3, we present our simulation results for C. Simulation for Local Gossip
broadcast. Fig.3 (a) shows the number of sensors that With local gossip, in a subgrid some sensors transmit
receive the broadcast message. We find that with the data to the sensors in another subgrid and the
CSMA/USS-TDMA, all sensors receive the message. neighbors of the sensors in the subgrid.In our experiments,
However, without the MAC layer, the number of sensors we keep the network size fixed at 10x10. And, we choose
that receive the message is less than 50%. different sizes of subgrid, sensors in this subgrid transmit
250
USS-TDMA
CSMA
No Mac Layer
14

12
USS-TDMA
CSMA
80

70
USS-TDMA 80%
USS-TDMA 100%
CSMA 80%
the gossip messages. For these simulations, we compute
CSMA 100%

the throughput in different traffic load and the percentage


200
10 60
Sensors receiv e m es s age

Percentage of collisions

Delay(in clock units)

8 50
150

100
6

4
40

30
of collisions.
2 20
50

0 10

0 -2 0
0 50 100 150 200 250 300 0 50 100 150 200 250 300 0 50 100 150 200 250
Size of the netwrok Size of the netwrok Size of the netwrok

(a) (b) (c)


Figure 3. Results for broadcast with communication range=1,
interference range=1

581
0.7
Throughput Performance

USS-TDMA
40
USS-TDMA
ACKNOWLEDGMENT
CSMA 35 CSMA
0.6

0.5
30
The experiment is supported by the Chinese National

Percentage of collisions
25

High Technology Research and Development Plan (863


Throughput

0.4
20

0.3
15 program) under Grant No. 2006AA09Z113 and National
0.2

0.1
10

5
Science Foundation of China under Grant No. 60703082.
0
0
0 0.2 0.4 0.6 0.8
offered load
1 1.2 1.4 1.6 0 5 10 15 20
Size of the field sending data to base station
25
REFERENCES
(a) (b) [1] Sandeep S. Kulkarni and Mahesh (Umamaheswaran) Arumugam.
Figure 5. Results for local gossip with communication range=1, “TDMA Service for Sensor Networks”. ICDCS’04 Workshop.
interference range=1 [2] L. Badia, M. Mastrogiovanni, C. Petrioli, S.Stefanakos, and M.
Zorzi. “An Optimization Framework for Joint Sensor
Deployment, Link Scheduling and Routing in Underwater Sensor
Fig. 5 (a) shows the efficiency of USS-TDMA and Networks”. SIGNOBILE 2007, 11(4):44-56, Oct 2007.
CSMA in different traffic loads. When traffic load is low, [3] Xiaoxing Guo, Michael R. and Frater, Michael J. Ryan. “A
CSMA performs a little better than USS-TDMA but when Propagation-delay-tolerant Collision Avoidance Protocol for
traffic load enhances, throughput of CSMA drops quickly Underwater Acoustic Sensor Networks. In proc”. MTS/IEEE
while throughput of USS-TDMA increases and keep OCEANS’06, 2006.
[4] M. Molins, and M. Stojanovic. “Slotted FAMA: a MAC protocol
invariableness at last. Note that in Fig. 5(b) the percentage for underwater acoustic networks”. In Proc. MTS/IEEE
of collisions with the CSMA decrease as the size of the OCEANS’06, 2006.
group performing local gossip increases. As discussed in [5] Borja Peleato and Milica Stojanovic. “A MAC Protocol for Ad-
the case of convergecast, this is due to the fact that with Hoc Underwater Acoustic Sensor Networks. Proceedings of the
increased communication, many messages create 1st ACM international workshop on Underwater networks “
collisions in the initial part of the gossip communication .WUWNet’06, pages 113-115, 2006.
[6] V. Rodoplu and M. K. Park. “An energy-efficient MAC protocol
and then they are lost. for underwater wireless acoustic networks”. In Proc. MTS/IEEE
OCEANS’05. 2:1198-1203, 2005.
V. CONCLUSION [7] Chirdchoo, N. Soh, and K.C. Chua. “Aloha-Based MAC
In this paper, we presented a TDMA service for Protocols with Collision Avoidance for Underwater Acoustic
Networks”. Infocom 2007, pages 2271-2275, may 2007.
underwater wireless sensor networks. As shown in Section [8] Dario Pompili, Tommaso Melodia, and Ian F. Akyildiz. “A
3, the service ensures that communication among sensors Distributed CDMA Medium Access Control for Underwater
is collision free. By contrast, previous CSMA based Acoustic Sensor Networks”. In Submitted for Publication, Aug
techniques suffer significant collisions. We considered 2006.
three communication patterns: broadcast, convergecast and [9] S. S. Kulkarni and M(U). “Arumugam SS-TDMA: A self-
stabilizing MAC for sensor networks”. Sensor Network
local gossip, which occur frequently in underwater Operations, IEEE Press, 2006.
wireless sensor networks. We showed how the TDMA [10] E. W. Dijkstra. “Self-stabilizing systems in spite of distributed
service could be customized for each of the control”. Communications of the ACM, 17(11), 1974.
communication patterns. As discussed in Section 3, we [11] G. Agha, W. Kim, Y. Kwon, K. Mechitov, and S. Sundresh.
recommend that if the application requirements are “Evaluation of localization services (preliminary report),” 2003.
unknown, then the TDMA service for the local gossip be DARPA NEST Program. Available at:
http://osl.cs.uiuc.edu/docs/nest-localization-report-2003/.
used as the solution for local gossip provides substantial [12] T. He, C. Huang, B. Blum, J. Stankovic, and T. Abdelzaher.
benefit to broadcast and convergecast. Our solution “Range-free localization schemes for large scale sensor
assumes that the underlying topology is a cube grid and networks”. In MobiCom, pages 81–95, 2003.
that each sensor is aware of its location in the grid. The
USS-TDMA algorithm proposed in this paper use a simple
routine such as diffusing computation to (re) validate the
slots assigned to a sensor. Further, our algorithms are
stabilizing [10] and reliability. Hence, as long as the
initiator of the diffusing computation does not fail, the
algorithm can recover from some states. The states include
sensors are improperly initialized, slots assigned to sensors
are corrupted and sensors have arbitrary clock drifts. This
is achieved by requiring that a sensor freeze (i.e., stop
transmitting messages) temporarily if it does not receive
the required revalidation message. When the revalidation
message is received, it can then continue to work
normally. With the localization service, out algorithm can
be applied to mobile sensor network [11, 12]. In the future
we will consider how the USS-TDMA scheme works
under general nodes distribution (not regular) and under
more than one source of packets in the same vertex.

582
2009 International Conference on Computer Engineering and Technology

Mathematical Document Retrieval for Problem Solving

Sidath Harshanath Samarasinghe Siu Cheung Hui


School of Computer Engineering School of Computer Engineering
Nanyang Technological University Nanyang Technological University
Singapore 639798, Singapore Singapore 639798, Singapore
sida0001@ntu.edu.sg asschui@ntu.edu.sg

Abstract—Solving mathematical problems is both challenging and presents the experimental results. Finally, the conclusion is
difficult for many students. This paper proposes a document given in Section 5.
retrieval approach to help solve mathematical problems. The
proposed approach is based on Kohonen’s Self-Organizing Maps II. MATHEMATICAL RETRIEVAL SYSTEMS
for data clustering of similar mathematical documents from a Mathematical documents contain special features [6] that
mathematical document database. Based on a user query problem,
make them not so effective to be retrieved by existing search
similar mathematical documents with their associated solutions
are retrieved in order to provide hints or solutions on solving the
engines such as Google and Yahoo. To tackle this problem,
user problem. In this paper, we will discuss the proposed various mathematical document retrieval systems such as
mathematical document retrieval approach. The performance of Math Search Project [7] and Zentralblatt Math [8] are
the proposed approach will also be presented in comparison with currently under development. However, these systems are
other clustering techniques. not developed with the objective for mathematical problem
solving.
Keywords-Knowledge Data Engineering, Data Mining, In this research, we investigate clustering techniques
Artificial Intelligence such as Agglomerative Hierarchical Clustering (AHC) [9]
and partitioning algorithms (e.g. K-means [10]) for
I. INTRODUCTION mathematical document retrieval. In particular, the
Kohonen’s Self-Organizing Map is developed for our
Solving mathematical problems is a challenging task retrieval engine. SOM is a neural network based approach
faced by many students studying in schools and universities. that can be used to discover groups of data in a data set by
When a student finds it difficult to solve a particular extracting the hidden topological structure in the data. SOM
mathematical problem with his existing knowledge, he will has the ability to organize its nodes into clusters based on the
usually refer to the textbooks and study the related examples, similarity between them. The SOM is specifically capable in
or consult his peers for the solution. However, such approach handling high dimensional data as well as data with noise,
is quite inefficient and sometimes difficult. To help students which are characteristic features generally encountered in
solve mathematical problems, a number of computer algebra document data. Thus, SOM is very suitable for document
systems (CAS) such as Maple [1] and Mathematica [2] are clustering. In addition, quite different from most other
available which can provide step-by-step solutions to certain clustering techniques, SOM is able to order input data both
mathematical problems. However, these systems are unable locally as well as globally [11], which leads to form better
to provide solutions to most mathematical problems which data clusters.
comprise the problem description, mathematical expressions
and diagrams. Furthermore, general search engines such as III. PROPOSED APPROACH
Google [3] and Yahoo [4] are also unable to provide hints or Fig. 1 gives the overall process for our proposed
help for mathematical problem solving. document retrieval approach. In the proposed approach, a
In this paper, we propose a document retrieval approach mathematical document database is first constructed. Each
to help solve mathematical problems. The proposed mathematical document contains the question part and
approach is based on Kohonen’s Self-Organizing Map solution part as shown in Fig. 2. Each question or solution
(SOM) [5] for data clustering of similar mathematical part of the document may consist of any of the following
documents from a mathematical document database, which three types of data, namely, plain text, mathematical
could be created manually or downloaded from the Internet. expressions and diagrams. For example, in the question part,
Based on a user query problem, similar mathematical plain text is used for problem description. For mathematical
documents with their associated solutions are retrieved in expressions (or formulae), they are represented and stored in
order to provide hints or solutions on solving the user’s the database using Mathematical Markup Language
problem. (MathML) [12]. This aims for effective semantic extraction
The rest of this paper is organized as follows. Section 2 of mathematical expressions. For some mathematical
reviews the related work on mathematical retrieval systems. problems, they also contain diagrams (e.g. on geometrical
Section 3 discusses the proposed approach. Section 4 figures) in the question part that illustrate the problems.

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 583


DOI 10.1109/ICCET.2009.69
Plain expression. There are two different markups in MathML:
Text
Text content markup and presentation markup. We have used
Preprocessing
presentation markup for mathematical expression
Feature Preprocessing Transformation
Selection representation as it coveys many semantics about the
Mathematical mathematical expressions in addition to the visual
Math. Expression
Model
appearance of them.
Expressions Preprocessing The proposed document retrieval approach consists of the
Generation
following steps: Feature Selection, Preprocessing,
Transformation, Model Generation and Retrieval. Note that
Mathematical Knowledge
Document in the proposed approach, we only train the question part of
Database the mathematical documents for knowledge generation by
SOM. The generated knowledge model will then be used for
Query
Input Query query processing for finding similar mathematical
Knowledge
documents.
Retrieval
Base
User Retrieval Retrieval A. Feature Selection
Client Result
In this step, we identify the useful features from the
Figure 1. Proposed approach. mathematical documents. These features should be able to be
used to distinguish different mathematical documents. Two
Question types of document contents, namely, plain text description
and mathematical expressions will be processed for the
extraction of representative features. Question diagrams are
usually stored as images which make it a complicated task
for feature extraction. However, diagrams are generally
associated with text description for the corresponding
explanation. As such, feature extraction from both plain text
description and mathematical expressions would be
sufficient for our document retrieval purpose.
The figure above shows the region bounded by the curve B. Preprocessing
π Preprocessing aims to remove noisy, erroneous, and
y = tan x , the x-axis and the line x = . Use the identity
4 incomplete data, and prepare the representative features that
sec 2 x = 1 + tan 2 x to find, correct to 2 decimal places, the are suitable for knowledge generation. There are two steps in
volume obtained when the region is rotated through 2π radians preprocessing: Text Preprocessing and Mathematical
about the x-axis. Expression Preprocessing.
1) Text Preprocessing
Solution This step preprocesses the descriptive text using text
The area of each circular area generated is
2 2 preprocessing techniques. It consists of the following steps:
πr = π (tan x) .
(1) Noise Removal removes noisy data in the descriptive
To find the volume obtained, we need to use definite integrals in
π text including numberings and capital letter labels. (2)
the interval: 0 to . Therefore, the volume generated is: Tokenization tokenizes the text string resulted from noise
4
π removal into a sequence of tokens. (3) Stemming converts
4 token words into their root form. Here, we use the Porter’s
Volume =
∫ π (tan x) dx
0
2
stemming algorithm [13] for stemming.

Mathematical MathML
2 2
By using the given identity sec x = 1 + tan x , Expression (Presentation Markup)
π <math>
π <mrow>
4


<msup>
Volume = π (sec2 x − 1)dx = π [tan x − x]04 <mrow>
<mi>x</mi>
0 </mrow>
π 3π 2
x2 +1 <mrow>
= π (1 − )= = 7.40 units3 (Answer) <mn>2</mn>
4 4 </mrow>
</msup>
Figure 2. A mathematical document. <mo>+</mo>
<mn>1</mn>
Fig. 3 gives an example of the MathML representation </mrow>
for an expression. MathML is basically a well-formed XML </math>
Figure 3. An example MathML representation.
that describes different elements of a mathematical

584
(4) Indicative Keyword Identification and Counting higher weightage to keywords that can be used to distinguish
identifies a set of indicative keywords (such as differentiate documents effectively. Next, the resultant vectors are then
and integrate). The keyword list is then used for identifying weighted using TFIDF (Term Frequency x Inverse
the indicative terms from the stemmed set of words. Here, Document Frequency) [14]. Finally, the resultant TFIDF
vectors are normalized into unit length.
the indicative keywords from the document text are
Fig. 5 shows an example on document preprocessing and
extracted and counted to obtain their frequency of transformation.
occurrences.
2) Mathematical Expression Preprocessing D. Model Generation
In this step, mathematical expressions are preprocessed Once the normalized vectors are created, they are fed into
for the extraction of semantic meanings contained in the the SOM for training. Before the training session begins, the
expressions. It extracts the semantics from the MathML weights of the neurons in the SOM grid are initialized with
representation of the mathematical expressions using regular random real numbers within the interval [0, 1]. In each
expressions. As such, we construct a list of mathematical training iteration, the entire set of normalized vectors is fed
into the SOM network. The winning neuron for a particular
regular expressions with their corresponding semantic
input vector is determined by finding the neuron which gives
meanings (represented using indicative keywords). The the smallest Euclidean distance between the input vector and
matching between a mathematical expression and a list of the neuron’s weight vector. Once the winning neuron is
mathematical regular expressions is illustrated in Figure 4. found, only the weights associated with the winning neuron
Then, the indicative keywords identified during regular and its neighbourhood is adjusted to adapt to the input
expression matching are converted into their root form for pattern. When the training session is completed, the weight
further processing. vectors of the SOM network and the cluster information are
After preprocessing the text and mathematical stored in the knowledge base which can then be used for
expressions, the stemmed sets of keywords with their document retrieval.
frequency of occurrences are counted and merged to form a
keyword vector. The resultant keyword vector is then passed Differentiate the following with respect to x : 7x2 + 4
to the Transformation step.
Feature Selection
7x2 + 4 Plain Text Math.
MathML Representation Expressions
in Presentation Markup
Differentiate the following
<math> with respect to x :
7 x2 + 4
<mrow>
<msqrt> Mathematical
Mathematical Regular Text
<mrow> Expression
Expressions Preprocessing
<mn>7</mn> List of Keywords Preprocessing
<msup> Matching Regular Indicative Extracted Index Index Keyword Extracted Index
<mrow> Expression Keyword Keyword 1 absolute Keyword
<mi>x</mi> <mi[^>]*>\p ... function differentiate 30 2 accelerate mroot 170
</mrow> <msup>\s*(?: … inverse … … … …
<mrow> … … 30 differentiate
<mn>2</mn> .
. <m(?:sqrt|root)>\s mroot … …
</mrow> *<mrow>.*?[x|y].* 170 mroot
</msup> .
?</mrow>\s*(?:<m … …
<mo>+</mo> n[^>]*>\d</mn>\s* 284 zero
<mn>4</mn> . )?</m(?:sqrt|root)
</mrow> . >
</msqrt> . … …
</mrow>
</math> Preprocessing
Results
Matching Result
Keyword Count 1 ... 30 … 170 … 284
mroot 1
polynomialpowertwo 1
0 ... 1 … 1 … 0
… … Keyword Vector
Transformation
Figure 4. Mathematical expression matching.
1 ... 30 … 170 … 284
0 ... 0.901 … 0.401 … 0
C. Transformation
Normalized Vector
Transformation converts the keyword vector into a
normalized vector for neural network training. First, a weight Figure 5. Document preprocessing and transformation.
multiplication is applied to re-compute the weight with
frequency counts in the keyword vector. The idea is to give

585
E. Retrieval is used. Finally, the ranked set of mathematical documents
In document retrieval, user enters a query using the is displayed to the user.
retrieval interface, and in response, a set of documents
(together with the corresponding step-by-step solutions) is IV. EXPERIMENTAL RESULTS
retrieved that are most similar to the features of the user’s We have conducted experiments to evaluate the retrieval
query. First, plain text and mathematical expressions are performance of the proposed approach. The performance is
extracted as features from the user’s query which are done in measured based on the Kohonen’s Self-Organizing Map
a similar way as the Feature Selection step. The extracted clustering algorithm and compared it with two other popular
features are then preprocessed using the same preprocessing clustering algorithms on AHC and K-means. The data set
techniques adopted in the Preprocessing step. After this, the used for our evaluation consisted of 304 mathematical
retrieval step will go through Query Transformation, Cluster documents which were extracted from typical problem
Selection, and Document Retrieval and Ranking. questions from G.C.E. O-Level Additional mathematics. We
1) Query Transformation used 30 training samples and 30 test samples to evaluate the
The generated query vector is then transformed into a training and testing performance respectively.
normalized vector using the similar steps followed in the The retrieval accuracy is measured using the metric on
Transformation step. However, one difference in Average Precision at Seen Relevant Documents [16]. This
metric favors the system to retrieve relevant documents
transforming the query vector is that, instead of weighting
higher in ranking. It is a good indicator for the usability of a
query terms using TFIDF, it is weighted using qf × idf retrieval engine, since users typically spend more time
[15], where qf is the frequency of occurrence of a term in examining top results than lower ranked ones. For each
the query and idf is the inverse document frequency of the query, we manually analyze the result set to evaluate the
query term in the document database collection. The reason relevance of the retrieved mathematical documents. In the
for using qf × idf is because a keyword that occurs more experiments, we only analyzed the first 20 documents ranked
frequently in the query is likely to be more important than in the result set in evaluating the retrieval accuracy. The
those which occur infrequently, and those keywords that relevance was assessed using two categories: relevant or not
occur infrequently in the document collection are likely to relevant.
be more important than the frequent terms. The average retrieval precision obtained for training and
2) Cluster Selection test samples for the three clustering algorithms is shown in
Table 1. The three clustering algorithms have achieved very
After query transformation, the generated normalized
high training performance and the training data that are being
query vector is used to find clusters which contain most searched are mostly retrieved as the first ranked result. For
similar mathematical documents. To do this, the cluster test data, the performance of SOM has achieved around 80%,
centroid vectors stored in the knowledge
G G base are retrieved, which has performed better than the other two algorithms.
and the Euclidean distance distG ( q , c ) is calculated between
the normalized query vector q and a cluster centroid vector V. CONCLUSION
G
c using the following formula: In this paper, we have proposed a mathematcial
→ → n document retrieval approach based on Kohonen’s Self-
dist ( q , c ) = ∑ (q − c )
i =1
i i
2 Organizing Map that can help provide hints or solutions to
solve students’ mathematical problems by finding similar (or
exactly the same) documents to the user’s query problem.
where n is the number of dimensions in the normalized The performance of the proposed approach has been
query vector (and the centroid vector) and q i and ci are evaluated and good initial results have been obtained.
the weights of the ith element in the normalized vector and Currently, further experiments are being conducted with a
the centroid vector respectively. The smaller the Euclidean much larger set of training documents, and more regular
distance, the more likely those clusters will contain expressions are being written for semantic feature extraction
documents similar to the user’s query. Because of that, and from various mathematical topics.
to limit the number of retrieved results, the nearest 10
clusters are selected to retrieve documents from those TABLE I. PERFORMANCE RESULTS
clusters. Clustering Training Testing
3) Document Retrieval and Ranking Technique Accuracy Accuracy
Once the clusters to be retrieved are determined, the SOM 100% 79.70%
K-means 100% 78.80%
mathematical documents are then retrieved starting from the AHC 97% 77.13%
nearest cluster. The retrieved documents are eventually
ranked based on the Euclidean distance between the
normalized query vector and the normalized document REFERENCES
vector. To aid in the ranking process, the normalized [1] Maple. Available at: http://www.maplesoft.com/.
document vector information stored in the knowledge base [2] Mathematica. Available at: http://www.wolfram.com/.

586
[3] Google. Available at: http://www.google.com/. Conference on Machine Learning and Cybernetics (ICMLC 04),
[4] Yahoo!. Available at: http://www.yahoo.com/. Vol.2, 2004, pp. 1282-1287.
[5] T. Kohonen, Self-Organizing Maps. Springer, 1995. [11] M. Hussain and J.P. Eakins, “Component-based visual clusteirng
using the self-organizing map”, in Neural Networks, Volume 20,
[6] J. Misutka and L. Galambos, “Mathematical Extension of Full Text Issue 2, 2007, pp. 260-273.
Search Engine Indexer,” Proc. 3rd International Conference on
Information and Communication Technologies: From Theory to [12] Mathematical Markup Language (MathML). Available at:
Applications (ICTTA 08), April 2008, pp. 1-6. http://www.w3.org/TR/MathML2.
[7] A. Youssef, “Roles of Math Search in Mathematics,” in Mathematical [13] M.F. Porter, “An Algorithm for Suffix Stripping,” Program, 14(3):
Knowledge Management, MKM 2006, Lecture Notes in Computer pp. 130-137, 1980.
Science, Springer Berlin, 2006, 4108: pp. 2-16. [14] G. Salton, A. Wong, and C.S. Yang, “A Vector Space Model for
[8] H. Kruger, “Searching Mathematics with Zentralblatt Math: Automatic Indexing,” Communications of the ACM, Vol. 18, Issue
Overview and Outlook,” in Enhancing the Searching of Mathematics, 11, 1975, pp. 613-620.
IMA “Hot Topics” Workshop, US, 2004. [15] H. Turtle and W.B. Croft, “Evaluation of an Inference Network-
[9] M. Nanni, “Speeding-Up Hierarchical Agglomerative Clustering in Based Retrieval Model,” in ACM Transactions on Information
Presence of Expensive Metrics,” in Advances in Knowledge Systems, Vol. 9, No. 3, 1991, pp. 187-222.
Discovery and Data Mining, LNCS, Springer Berlin, 2005, 3518: pp. [16] R.B. Yates and B.R. Neto, Modern Information Retrieval, Addison-
378-387. Wesley Longman Publishing Co.., Inc., Boston, MA, 1999.
[10] H. Zhang, T.B. Ho, and M.S. Lin, “An Evolutionary K-means
Algorithm for Clustering Time Series Data,” Proc. International

587
2009 International Conference on Computer Engineering and Technology

Lossless Data Hiding Scheme Based on Adjacent Pixel Difference

Zhuo Li, Xiaoping Chen, Xuezeng Pan, Xianting Zeng


College of Computer Science
Zhejiang University
Hangzhou, China
lizhuo84@gmail.com

Abstract—This paper proposes a lossless data hiding scheme significant bit (LSB) planes to obtain extra space for
with high embedding capacity, which can recover the original embedding secret data. Xuan[3] proposed a scheme based on
image without any distortion after the hidden data have been integer wavelet transform (IWT) and created more space in
extracted. In this scheme, difference value of the adjacent high frequency subbands for hiding data, which results in a
pixels is calculated first. After adjusting the difference slightly, two-five times payload as large as that in [2]. Celik et al. [4]
we can increase (decrease) it by 1 or maintain it intact to improved Fridrich et al.’s technique by compressing the
embed information into the cover image. Experimental results quantization residuals of pixels instead of compressing LSB
show that the average embedding capacity can be up to planes to obtain more extra space for embedding secret data.
0.91bpp (bit per pixel) while the PSNR stays larger than 30dB.
The compressed residuals and secret data are concatenated
Compared with some existing known lossless data hiding
and embedded into the cover image. Tian [5] proposed a
schemes, the proposed method provides higher embedding
capacity and lower image degradation. Moreover, the
high capacity reversible data embedding technique by using
presented algorithm is quite simple and the execution time is a difference expansion. Alattar [6] extended Tian’s scheme
rather short. by introducing the difference expansion of a vector to obtain
more extra space for embedding secret data. Ni et al. [7]
Keywords-component; data hiding; steganography; lossless; presented a reversible data hiding scheme. By utilizing the
pixel difference maximum point and the minimum point of image histogram,
they shifted image histogram to obtain extra space for
I. INTRODUCTION embedding data. It is simple and novel, however, the
disadvantage of this method is that few image contains a
Data hiding (or steganography) is a commonly used large number of pixels with equal pixel values, so the
technique that hides secret information into digital media embedding capacity is small.
imperceptibly, such as images, videos, audios, etc. The In this paper, we enhance Ni et al.’s scheme using the
information can serve as authentication codes, annotation, or difference of adjacent pixels - between the first and the
secret data depending on the purpose of the application itself.
second pixel as well as the second and the third pixel, and so
In most cases of data hiding, the cover media will suffer
some permanent distortion due to embedded secret data and on - row-by-row or column-by-column to improve the
cannot be reversed back to the original media. In some embedding performance. Experimental results show that the
applications, such as medical image system, law enforcement payload and the image quality of stego-image are
and military imagery, it is desired to recover the original dramatically improved. Among the eight commonly used
media without any distortion after the hidden data have been cover images, the average payload could even achieve
extracted because of the requirement of high-precision 0.91bpp (bit per pixel) when the PSNR is larger than 30dB.
nature. Therefore, a distortion-free, reversible, lossless data The rest of this paper is organized as follows. The
hiding technique is required. proposed scheme and its characteristics are presented in
Section 2. Experimental results are illustrated in Section 3,
Recently, the number of lossless data hiding schemes
and Section 4 concludes our work.
reported in the literatures has been adding up. Honsinger et
al. [1] in their patent used addition modulo 256 to embed the II. PROPOSED SCHEME
hash value of the original image for authentication. By using
the addition modulo 256, the overflow/underflow is A. Adjacent pixel difference
prevented and reversibility is achieved. But the images
processed by their algorithm exists some annoying salt-and- Suppose that the cover image I is an 8-bit grayscale
pepper noise. Fridrich et al. [2] compressed the least image with size M×N, and denote I(i,j) as the pixel value at
location (i,j) in the original image. The adjacent pixel
difference can be expressed as
* Project supported by the Major Science and Technology Special Project of
Zhejiang Province, China (No. 2007C11088) and the Science and Technology
Project of Zhejiang Province, China (No. 2008C21077)

978-0-7695-3521-0/09 $25.00 © 2009 IEEE 588


DOI 10.1109/ICCET.2009.40
r
d (i , j ) = I (i , j ) − I (i , j + 1) where 1 ≤ i ≤ M and 1 ≤ j ≤ N − 1 .We introduce a
threshold δ. The difference, whose absolute value equals to
δ, will be be used to embed secret data.
in row direction, where 1 ≤ i ≤ M and 1 ≤ j ≤ N − 1 , and Before data embedding, we modify the difference to
obtain extra space. As Fig.2 illustrates, two cases will be
c taken into account for different δ.
d (i , j ) = I (i , j ) − I (i + 1, j )
Case 1. δ=0
Differences with value of 0 are utilized to embed data.
in column direction, where 1 ≤ i ≤ M − 1 and 1 ≤ j ≤ N . All differences, whose value are greater than 0, are added by
For simplicity, in this paper, adjacent pixel difference and 1. And the others remain unchanged, As Fig.2(a) shows. This
difference are interchangeable. process can be described as
Fig.1 shows the histograms of pixel value and difference
of Lena and Baboon. It is obviously to see that the maximum ⎧⎪ d (i , j ) +1,
' d (i , j )>0
number of the point with equal value in (b) and (d) is much d (i , j ) = ⎨ (2)
larger than that in (a) and (c), respectively. So, more space ⎪⎩d (i , j ), otherwise
will be obtained to embed data if utilizing these differences.
After the adjustment, we will find that there is no pixel
difference with value 1 in the whole image. Then check the
to-be-embedded bit b in the bit stream. If the to-be-
'
embedded bit is binary 1, d (i , j ) is added by 1. Otherwise,
'
d (i , j ) remains intact. In this way, data are embedded into
the cover image. This process is described as

' ⎧ '
* ⎪d (i, j)+1, d (i, j)=0 and b =1
d (i, j) = ⎨ (3)
⎪d ' (i, j),
⎩ otherwise

Case 2. δ>0
If δ>0, as the Fig.2(b) illustrates, the differences, whose
value are greater than δ, are added by 1, and those with value
less than -δ are subtracted by 1. The differences between -δ
and δ remain unchanged. It is described as formula (4).
Figure 1. Histograms of pixel value and difference of Lena and Baboon.
(a) histogram of Lena; (b) difference histogram of Lena; (c) histogram of ⎧ d (i , j ) +1, d (i , j ) >δ
Baboon; (d) difference histogram of Baboon. ' ⎪
d (i , j ) = ⎨ d (i , j )−1, d (i , j )<−δ (4)
⎪d (i , j ),
⎩ otherwise

Now, we can find there is no pixel difference with value


of δ+1 or -(δ+1) in the whole image. If the to-be-embedded
'
bit is binary 1, d (i , j ) with value of δ will increase 1, or,
'
decrease 1 if its value is equal to -δ. Otherwise d (i , j )
remains intact if the to-be-embedded bit is 0. Formula (5)
describes this process as following
Figure 2. Pixel difference adjustment. (a) δ=0; (b) δ>0.
⎧ d ' (i, j)+1, d ' (i, j)=δ and b =1

B. Embedding procedure * ⎪
d (i, j) = ⎨d' (i, j)−1, d' (i, j)=−δ and b=1 (5)
Without loss of generality, we will describe the ⎪
r ⎪ d ' (i, j),
embedding procedure using d (i , j ) . In simplicity, we otherwise
r ⎩
represent d (i , j ) as d (i , j ) in next sections. Certainly,
c
d (i , j ) can also be utilized to hide data. * *
Denote I as the stego image. I (i , j ) can be calculated
by
d (i , j ) = I (i , j ) − I (i , j + 1) (1)
* *
I (i , j ) = I (i , j + 1) + d (i , j ) (6)

589
where 1 ≤ i ≤ M and 1 ≤ j ≤ N − 1 . ⎧ * *
Note that the pixels in the last column will be used to ⎪ d (i, j)−1, d (i, j)>0
d(i, j) = ⎨ (12)
retrieve the hiding data and restore the original image, so ⎪d * (i, j), d * (i, j)≤0

they remain unchanged with no hidden data embedded as
formula (7) describes.
in the extraction procedure.
*
*
Repeat the process (9) ~ (11) for all I (i , j ) until j=1, all
I (i , j )= I (i , j ), j = N (7) hidden data are extracted and the original image is restored
without any distortion.
It is clearly observed from the embedding procedure that
the capacity of this method equals to the number of D. Prevention of overflow/underflow
difference with value of ±δ. Assume that there is no pixel As mentioned above, we may add (or subtract) 1 to the
with overflow and underflow in the embedding phase. In the original pixel difference in the embedding procedure. That
worst case, all pixels will be altered by 1. Hence, the mean is to say, the original pixel value I(i,j) could be changed to
square error (MSE) is at most equal to one, i.e., MSE=1. I(i,j)+1 or I(i,j)-1 after hiding data. Therefore, for the pixels
Therefore, the PSNR of the stego image can be calculated as whose value equal to 0 or 255 in an 8-bit grayscale cover
image, overflow or underflow will occur. In the proposed
255×255 scheme, we pre-process the cover images. At first, we
PSNR = 10 × log10 ( ) ≈ 48.13 (8) preserve the location and grayscale value of pixels which
MSE
equal to 0 or 255, and reset them to 1 or 254 respectively.
In short, the lower bound of the PSNR of the stego image Then compress this overhead information losslessly and
is about 48.13dB. append it to the hidden data. As a result, the actual
embedding capacity (pure payload) is less than or qula to
C. Data extraction the maximum size of embedded data. In this way, we can
Alien to the embedding sequence, hidden data will be prevent the overflow/underflow and restore the original
image losslessly.
acted reversely, from right to left in each row.
*
At first, let I (i , N ) = I (i , N ) . Then calculate the pixel III. EXPERIMENTAL RESULTS AND ANALYSIS
difference of stego image by
In order to evaluate the performance of our proposed
scheme, we use eight commonly used 8-bit grayscale
* *
d (i , j ) = I (i , j ) − I (i , j + 1) (9) images with size of 512×512 as the cover images, and a
pseudo random generator to generate hidden data. Fig.3
shows the test images. Peak-Signal-to-Noise-Ratio (PSNR)
where 1 ≤ i ≤ M and 1 ≤ j ≤ N − 1 . is used to evaluate the image quality.
Suppose that we used the pixel differences with value of Comparision with Ni et al.’s [7] scheme.
*
δ(δ>0) in the embedding procedure. If d (i , j ) equals to δ We use the difference of adjacent pixels in row direction
* r
or -δ, a bit 0 will be extracted; if d (i , j ) equals to δ+1 or – denoted as d (i , j ) mentioned in Section 2 and choose
(δ+1), a bit 1 will be extracted. The original pixel difference “δ=1” to embed hidden data. We re-implement Ni’s scheme
between location (i,j) and (i,j+1) can be calculated by on all the eight test images. Tab.1 shows the performance of
the proposed scheme on all test images. Experimental
⎧ d * (i, j)−1, d * (i, j)≥δ +1 results clearly reveal that the capacity and the stego image
⎪ quality of our proposed and Ni et al.’s scheme are both

d(i, j) = ⎨d * (i, j)+1, d * (i, j)≤−(δ +1) (10) better than Ni’s method.
⎪ The smoother the images are, the more centralized the
⎪ d * (i, j), −δ ≤ d * (i, j)≤δ
⎩ pixel differences are. As Fig.1(b)(d) illustrate, the number of
pixel difference equals to “±1” in smooth image Lena is
Then we can restore the original pixel value in the much larger than that in complex image Baboon. So, more
data will be hidden in Lena. Experimental results in Table1
location (i,j) by using formula (11) also prove this conclusion. The smooth images (such as
Lena, Airplane, Tiffany) have higher embedding capacity
*
I (i , j ) = I (i , j + 1) + d (i , j ) (11) than complex images (such as Baboon, Goldhill). Based on
this characteristic, our proposed scheme can provide better
performance in medical images.
Note that if we have used δ=0 to embed data, formula
(10) will be replaced by

590
extra data. Hidden data are composed of embedded bits in
these two phases. In the extraction procedure, we can
distortion-free restore the temp image It using “δ=1” at first,
then use “δ=2” to restore the exact original image losslessly.
If the embedding procedure is called many times, a high
embed capacity can be achieved.
r
We propose a solution that use d (i, j ) to get pixel
differences first and “δ=6,5,4,3,2,1” sequentially to embed
c
data. After that, calculate pixel differences using d (i , j )
and use “δ=6,5,4,3,2,1” again to embed more data. In this
way, more data will be embedded into the cover image.
Fig.4 illustrates the performance of this proposed solution.
TABLE I. PERFORMANCE COMPARISON BETWEEN NI ET AL.’S AND
OUR SCHEME ON SOME COMMONLY USED IMAGES.

Ni[7] Proposed
Cover Image
Pure payload Pure payload
PSNR (dB) PSNR (dB)
(bits) (bits)
Lena 5,468 47.69 48,670 49.11

Airplane 15,388 48.29 60,500 49.54

Tiffany 10,153 46.10 58,770 49.42

Barbara 4,729 50.19 41,874 48.93

Baboon 5,499 45.94 15,002 48.40

Boat 10,546 49.14 50,290 49.12

Goldhill 5,178 46.08 33,006 48.74

Peppers 5,713 48.21 50,711 49.42

Figure 3. Test images. (a) Lena; (b) Airplane; (c) Tiffany; (d) Barbara; (e)
Baboon; (f) Boat; (g) Goldhill; (h) Peppers.

Extend to hide more data. Figure 4. Performance of the extended proposed scheme on all the eight
In fact, we can easily extend our proposed scheme to test images.
r c
hide more data by using both d (i , j ) and d (i , j )
We use bpp (bit per pixel) to measure the embedding
alternately. In addition, another δ can be utilized to hide bits.
capacity. From Fig.4 we can easily find that when the PSNR
Therefore, more data can be embedded into the original is above 30dB, our scheme can have the payload capacity
r
image. For example, we firstly use “δ=2” and d (i , j ) to more than 0.8bpp on all test images except Baboon.
embed data and obtain a temp image It. Then, for this temp Actually, the average capacity of our scheme is up to
c
image It we can use another “δ=1” and d (i , j ) to embed

591
0.91bpp when the PSNR stays above 30dB on all test IV. CONCLUSION
images. Embedding capacity and the quality of stego-image are
Comparison with some other existing schemes with two important factors for a lossless data hiding scheme. In
high capacity. this paper, we present a lossless data hiding scheme based
Xuan et al.’s [3] method and Celik et al.’s [4] method are on the difference of adjacent pixels. Experimental results
lossless data hiding schemes with high embedding capacity. demonstrate that our proposed scheme outperforms Ni et
Alattar [6] extended Tian et al.’s [5] method and obtained a al.’s [7] scheme in terms of the capacity and image quality.
higher capacity. Compared with all these three schemes, our Furthermore, our method can be easily extended to hide
proposed method is proved to provide better performance in more data. As this paper has shown, our proposed scheme
terms of payload capacity and image quality. performs high embedding capacity and low degradation.
Tab.2 describes the experiment result. The data of the
r
proposed scheme in Tab.2 are obtained by using d (i , j ) ,
c REFERENCES
“δ=2,1” and d (i , j ) , “δ=2,1”. Experimental results
demonstrate that compared with their schemes, our [1] C.W. Honsinger, P. Jones, M. Rabbani, and J.C. Stoffel, “Lossless
proposed scheme provides better performance. Recovery of an Original Image Containing Embedded Data”, U.S.
Patent 6278791, Aug. 2001.
TABLE II. COMPARED WITH SOME OTHER EXISTING SCHEMES ON [2] J. Fridrich, M. Goljan, R. Du, Lossless Data Embedding - New
LENA AND BABOON. Paradigm in Digital Watermarking. EURASIP J. Applied Signal
Processing. 2002 (2) (2002) 185-196.
Lena Baboon [3] G. Xuan, J. Zhu, J. Chen, Y. Q. Shi, Z. Ni, and W. Su, “Distortionless
Method data hiding based on integer wavelet transform,” IEE Electron. Lett.,
Pure payload Pure payload
PSNR (dB) PSNR (dB) vol. 38, no. 25, pp. 1646–1648, Dec. 2002.
(bits) (bits)
[4] M.U. Celik, G. Sharma, A.M. Tekalp, and E. Saber, Lossless
Xuan[3] 85,507 36.6 14,916 32.8
Generalized-LSB Data Embedding, IEEE Trans. Image Processing.
Celik[4] 74,600 38 15,176 38 14(2) (2005) 253-266.
[5] J. Tian, Reversible Data Embedding Using a Difference Expansion,
Alattar[6] 57,885 36.6 28,794 36.6 IEEE Trans. Circuits and Systems for Video Technology, 13(8)
(2003), 890-896.
Proposed 138,4201 39.07 52,468 38.53 [6] A.M. Alattar, Reversible Watermark Using the Difference Expansion
of a Generalized Integer Transform, IEEE Trans. Image Processing.
13(8) (2004) 1147-1156.
[7] Z. Ni, Y.Q. Shi, N. Ansari, W. Su, Reversible Data Hiding, IEEE
Trans. Circuits and Systems for Video Technology, 16(3) (2006),
354-362

592
Author Index - Vol 1

A.R, Ananya. ............................................. 267 Chen, Houquan........................................... 210


Agarwal, Suneeta........................................ 536 Chen, Junjie................................................ 218
Ahmad, R. Badlishah.................................. 573 Chen, Liangji.............................................. 565
Ahmad, R.B. .............................................. 108 Chen, Qian.................................................. 303
Ahmed, Khandakar Entenam Unayes......... 205 Chen, Shu................................................... 295
Ai, Changsheng.......................................... 272 Chen, Xiaoping........................................... 588
Akbar, Habibullah...................................... 343 Cheng, Jian-hua.......................................... 510
Al-Fedaghi, Sabah........................................ 16 Chien, Yu-Hung......................................... 157
Aljunid, S.A. .............................................. 573 Choudhury, B.B. .......................................... 32
Allison, Brendan......................................... 223 Cong, Ming................................................. 119
An, Hong.................................................... 119 Cui, Herui........................................... 347, 395
Anaraki, Firouz B. ..................................... 400 Ding, Xiangqian......................................... 321
Arora, Prabhjyot......................................... 238 Dong, Liying.............................................. 281
Aung, May Thu.......................................... 549 Dong, Yuzhen..................................... 481, 527
Azadeh, A. ................................................. 505 Duan, Jiang................................................. 462
Azadeh, Ali................................................... 42 Fadhil, Hilal Adnan.................................... 573
Bagheri-Soulla, A.A. ................................. 523 Fang, Mei.................................................... 449
Bai, Chengzhe............................................ 303 Feng, Yuan................................................. 321
Baolin, Yin................................................. 195 Fouladian, Majid........................................ 166
Bayat, Mahdi M. ........................................ 166 Fu, Baowei.................................................. 419
Bera, Debasish............................................ 145 Gai, Jingfen.................................................. 23
Bhilare, D.S. .............................................. 365 Gao, Lijun................................................... 215
Bian, Weiwei.............................................. 334 Gao, Ruizhen...................................... 481, 527
Bie, Libo..................................................... 200 Gaurav, Shriprakash..................................... 91
Bikas, Md. Abu Naser................................ 371 Ghaznavi-Ghoushchi, M.B. ............... 515, 523
Biswal, B.B. ................................................. 32 Ghaznavi-Goushchi, M.B. ......................... 428
Bu, Shuyang............................................... 424 Gong, Dawei................................................. 28
Cao, Shukun............................................... 272 Gong, Faming............................................. 326
Chand, Laxmi............................................. 560 Gräser, Axel................................................ 223
Chander, Vinay............................................. 91 Guo, Hongyan............................................ 432
Chandrasekaran, K. ................................... 441 Guo, Li........................................................ 182
Chang, Chaowen.................................. 37, 312 Guo, Zhongwen.......................................... 578
Chen, Honghui.............................................. 47 Guojie, Jin.................................................. 195

593
Author Index - Vol 1

Gupta, Daya................................................ 238 Jolai, F. .............................................. 390, 457


Gupta, Manoj.............................................. 560 Jung, Keechul............................................. 466
Haleh, H. .................................................... 252 K, Arun Ram. ............................................ 267
Han, Jingti.................................................. 383 Kakhani, Manish.......................................... 91
Hao, Sun..................................................... 129 Kang, Cui.................................................... 326
Hasan, Md. Khalad............................. 205, 371 Karray, Fakhri.............................................. 81
Hatefi, S.M. ....................... 252, 390, 457, 505 Kaur, Inderjeet............................................ 238
Hatefi, Seyed-Morteza.................................. 42 Kaushik, B.K. ............................................ 560
He, Hongjiang............................................ 361 Khalib, Zahereel Ishwar Abdul.................. 108
He, Ming..................................................... 172 Khanwalkar, Nishant.................................... 91
He, Yulan.................................................... 490 Kheiri, S. .................................................... 515
He, Yunhui................................................. 262 Kong, Jun............................................ 419, 436
He, Zheng................................................... 177 Kor, H. ............................... 252, 390, 457, 505
Hendessi, Faramarz.................................... 166 Kor, Hamrah................................................. 42
Hong, Feng................................................. 578 Kulkarni, M. .............................................. 238
Hou, Hong.................................................. 281 Kumar, Preetham........................................ 124
Hu, Aiqun................................................... 172 Lee, Yunli................................................... 466
Hu, Dan........................................................ 47 Lei, B. .......................................................... 55
Huang, Ningfeng........................................ 452 Lei, Yingjie................................................. 471
Huang, Weili.............................................. 432 Li, Changchun.............................................. 73
Huang, Weitong............................................ 64 Li, Huiying................................................. 565
Hui, Siu Cheung................................. 490, 583 Li, Min........................................................ 232
Huimei, Yuan............................................. 129 Li, Ruihu..................................................... 471
Hussain, Altaf............................................. 371 Li, Shufen................................................... 142
Imran, Ale................................................... 186 Li, Wenxin.................................................... 11
Iranmanesh, H. .......................... 252, 390, 457 Li, Xiaolu.................................................... 436
Issac, Biju................................................... 414 Li, Yu-shen................................................. 510
Jia, Hongru................................................. 436 Li, Zhengbao.............................................. 578
Jiang, Wenchao.......................................... 383 Li, Zhuo...................................................... 588
Jiangfan, Ouyang........................................ 554 Li, Zongmin................................................ 161
Jie, Shen...................................................... 352 Liang, Jinzhao.............................................. 98
Jin, Ying..................................................... 569 Lin, Han-Yu................................................ 330
Jing, Huang................................................. 103 Lin, Hu........................................................ 103

594
Author Index - Vol 1

Liu, Chen.............................................. 37, 312 Qadeer, Mohammed A. ............................. 186


Liu, Heping................................................. 232 Qi, Chunjie................................................. 405
Liu, Huan-Wen........................................... 243 Qi, Zhenyu.................................................... 28
Liu, Lianzhong............................................. 23 Qi, Zhi........................................................ 436
Liu, Wenshuo............................................... 11 Qiao, Xiangjie.............................................. 51
Liu, Xiaodong......................... 73, 88, 321, 500 Qiu, Hangping............................................ 172
Liu, Yanmin.................................................. 64 Qiu, Yuxia.................................................. 191
Liu, Yujie.................................................... 161 Quan, Tho Thanh........................................ 490
Liu, Zhihua................................................. 142 Quan-Xun, Ding......................................... 352
Liu, Zhijing................................... 60, 229, 531 Rafiee, M. .......................................... 428, 515
Lu, Fei........................................................ 114 Rahimi, Morteza......................................... 166
Lu, Wei-Ping.............................................. 243 Rahman, Mostafijur.................................... 108
Lu, Yao....................................................... 485 Ramani, A.K. ............................................. 365
Lu, Yinghua................................................ 419 Ramya, I.R. ................................................ 441
Luo, Na....................................................... 150 Rana, Md. Mashud..................................... 205
Luo, Xueshan................................................ 47 Reddy, Aravind............................................ 91
M, Ganesh Kumar. .................................... 267 Ren, Wuling................................................ 134
Ma, Lintian................................................. 419 Ren, Yongqing............................................ 119
Mahapatra, R.N. .......................................... 32 S, Ananthanarayana V................................ 124
Mallika, R. ................................................. 137 Samarasinghe, Sidath Harshanath.............. 583
Mei, Xie...................................................... 182 Saravanan, V. ............................................ 137
Meiling, Yuan............................................. 554 Sen, Jaydip.................................................. 145
Mekhabunchakij, Kittima........................... 357 Seyfe, B. ............................................ 428, 515
Meng, Yadong.............................................. 73 Shafieinejad, Alireza.................................. 166
Munim, Md. Fazle...................................... 291 Shahriar, Tamim......................................... 205
Naing, Thinn Thu....................................... 316 Shang, Yanmin................................... 481, 527
Nakajima, Fumio........................................ 475 Shen, Ji-hong.............................................. 379
Nematbakhsh, Naser................................... 276 Shi, Jun-yu.................................................. 510
Oi, Hitoshi.................................................. 475 Shi, Kangyun.............................................. 114
Pan, Xuezeng.............................................. 588 Shoeb, Abu Awal Md. ............................... 371
Ping, Liu..................................................... 103 Shohag, Md. Al-mamun............................. 205
Prabuwono, Anton Satria........................... 343 Song, Li...................................................... 272
Prasad, Rajesh............................................ 536 Song, Yinchen............................................ 452

595
Author Index - Vol 1

Soon, I.Y. ..................................................... 55 Wang, Zhiliang............................................. 51


Štava, Martin.................................................. 3 Wei, Ping.................................................... 210
Sugavanan, V. .............................................. 68 Wen, Shen.................................................. 352
Sugiarto, Indar............................................ 223 Wu, Fangjun....................................... 257, 338
Sun, Liang.................................................. 281 Wu, Guo-qing............................................. 295
Sun, Li-hong............................................... 379 Wu, Haining............................................... 452
Syama, R. .................................................. 441 Wu, Tzong-Sun.......................................... 330
Tan, Runhua............................................... 114 Xian, Yi...................................................... 495
Tanwani, Sanjay......................................... 365 Xiao, Jing.................................................... 295
Tapaswi, Shashikala..................................... 91 Xiaobing, Song........................................... 554
Tawsopar, Kattiya...................................... 357 Xie, Keming............................................... 191
Thakur, Kamal............................................ 238 Xie, Yinggang.............................................. 51
Tian, He........................................................ 28 Xin, Fan...................................................... 352
Tian, Yawei................................................ 308 Xin, Liu...................................................... 449
Tumblin, Jack............................................. 462 Xinying, Wang........................................... 449
Tun, Khin Nwe Ni...................................... 549 Xiuxia, Liu.................................................. 554
Tvrdík, Pavel.................................................. 3 Xu, Gang............................................ 247, 495
Ueno, Haruki.............................................. 177 Xu, Jing........................................................ 28
Ukil, Arijit.................................................. 145 Xu, Lei........................................................ 215
Usino, Wendi.............................................. 343 Xu, Luxiong.................................................. 64
Venkatesh, V. Prasanna................................ 68 Yan, Hao....................................................... 73
Wan, Fangrong........................................... 281 Yan, Huiqiang............................................ 114
Wang, Bo.................................................... 308 Yang, Gang................................................. 485
Wang, Fan.................................................. 409 Yang, Li.............................................. 347, 395
Wang, Jianzhong........................................ 419 Yang, Miaomiao......................................... 405
Wang, Jianzhou............................................ 98 Yang, Wenxian........................................... 247
Wang, Jing.......................................... 229, 531 Yao, Xiaolan............................................... 161
Wang, Lirong.............................................. 334 Yen, Chien-Cheng...................................... 157
Wang, Shuyan............................................ 419 Yu, Song..................................................... 129
Wang, Sujian.............................................. 334 Yu, Xiaohao.................................................. 47
Wang, Xiangdong....................................... 200 Yuan, Fuyu................................................. 150
Wang, Yuanyuan.......................................... 98 Yue, Jingxia................................................ 177
Wang, Yuqiao....................................... 37, 312 Yunqi, Lei................................................... 554

596
Author Index - Vol 1

Zaman, Safaa................................................ 81 Zhang, Lu................................................... 215


Zamanifar, Kamran.................................... 276 Zhang, Wenyu.............................................. 98
Zaw, Wint Thida......................................... 316 Zhang, Yamin............................................. 361
Ze, Xiangbo................................................ 272 Zhang, Yongqiang...................................... 424
Zeng, Jianqiu.............................................. 218 Zhao, Canming........................................... 119
Zeng, Xianting............................................ 588 Zhao, Hong................................................. 485
Zhai, Zhengang........................................... 485 Zhao, Jijun.................................................. 334
Zhan, Zhixiong........................................... 210 Zhao, Xuejun.............................................. 471
Zhang, Fan.................................................. 286 Zhao, Yu..................................................... 405
Zhang, Hao................................................... 60 Zhicai, Juan................................................ 449
Zhang, Heng............................................... 272 Zhou, Li...................................................... 409
Zhang, Hu................................................... 545 Zhou, Pan.................................................... 134
Zhang, Jihai................................................ 541 Zhou, Yuchen............................................. 218
Zhang, Jing................................................. 569 Zia, Fatima Binte........................................ 291
Zhang, Jingjun.................................... 481, 527 Zohali, Alireza............................................ 276
Zhang, Jun.................................................. 119 Zuo, Wanli.................................................. 150
Zhang, Li.................................................... 308

597
IEEE Computer Society
Conference Publications
Operations
ations Committee
CPOC Chair
Chita R. Das
Professor, Penn State University
Board Members
Mike Hinchey, Director, Software Engineering Lab, NASA Goddard
Paolo Montuschi, Professor, Politecnico di Torino
Jeffrey Voas, Director, Systems Assurance Technologies, SAIC
Suzanne A. Wagner, Manager, Conference Business Operations
Wenping Wang, Associate Professor, University of Hong Kong
IEEE Computer Society Executive Staff
Angela Burgess, Executive Director
Alicia Stickley, Senior Manager, Publishing Services
Thomas Baldwin, Senior Manager, Meetings & Conferences
IEEE Computer Society Publications
The world-renowned IEEE Computer Society publishes, promotes, and distributes a wide variety of authoritative
computer science and engineering texts. These books are available from most retail outlets. Visit the CS Store at
http://www.computer.org/portal/site/store/index.jsp for a list of products.

IEEE Computer Society Conference Publishing Services (CPS)


The IEEE Computer Society produces conference publications for more than 250 acclaimed international
conferences each year in a variety of formats, including books, CD-ROMs, USB Drives, and on-line publications.
For information about the IEEE Computer Society’s Conference Publishing Services (CPS), please e-mail:
cps@computer.org or telephone +1-714-821-8380. Fax +1-714-761-1784. Additional information about Conference
Publishing Services (CPS) can be accessed from our web site at: http://www.computer.org/cps
IEEE Computer Society / Wiley Partnership
The IEEE Computer Society and Wiley partnership allows the CS Press Authored Book program to produce a
number of exciting new titles in areas of computer science and engineering with a special focus on software
engineering. IEEE Computer Society members continue to receive a 15% discount on these titles when purchased
through Wiley or at: http://wiley.com/ieeecs. To submit questions about the program or send proposals, please e-
mail jwilson@computer.org or telephone +1-714-816-2112. Additional information regarding the Computer
Society’s authored book program can also be accessed from our web site at:
http://www.computer.org/portal/pages/ieeecs/publications/books/about.html
Revised: 21 January 2008

CPS Online is our innovative online collaborative conference publishing system designed to speed the delivery of
price quotations and provide conferences with real-time access to all of a project's publication materials during
production, including the final papers. The CPS Online workspace gives a conference the opportunity to upload
files through any Web browser, check status and scheduling on their project, make changes to the Table of Contents
and Front Matter, approve editorial changes and proofs, and communicate with their CPS editor through discussion
forums, chat tools, commenting tools and e-mail.
The following is the URL link to the CPS Online Publishing Inquiry Form:
http://www.ieeeconfpublishing.org/cpir/inquiry/cps_inquiry.html
598

Вам также может понравиться