Uploaded by NOUR CHRARA

IRECOS VOL 8 N 4

advertisement
International Review on
Computers and Software
(IRECOS)
Contents
Entropy Based Approach to Prevent the DDoS Attacks for Secured Web Services
by S. Igni Sabasti Prabu, V. Jawahar Senthil Kumar
888
Dynamic Extended Rectangle Based Method for 3D Visual Scene Segmentation
by N. Charara, , M. Sokhn, I. Jarkass, O. Abou Khaled, E. Mugellini
892
Enhancement of Game Theoretic Approach Using Nash Equilibrium with Markov Chains
for VANET Security
by Prabakaran M., A. R. Deepti, G. Mahadevan, R. M. S. Parvathy
900
A Novel Approach for Hiding Image Using Pixel Intensity
by M. Shobana, P. Gitanjali, M. Rajesh, R. Manikandan
904
An Optimal Architecture for Dynamic Web Service Discovery and Selection
by Abdallah Missaoui
909
The Implementation of Plagiarism Detection System in Health Sciences Publications
in Arabic and English Languages
by K. Omar, B. Alkhatib, M. Dashash
915
Sensitive Information Protection and Recovery Using One to One Compound Mapping
by N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
920
Review of Methods of Distributed Barrier Synchronization of Parallel Processes
in Matrix VLSI Systems
by Jamil S. Al-Azzeh
927
Classification of Ultrasound Carotid Artery Images Using Texture Features
by Dhanalakshmi Samiappan, Venkatesh Chakrapani
933
Fuzzy Based Congestion Detection Technique for Queuing in IP Networks
by S. Nandhini, S. Palaniammal
941
Combining UML Class and Activity Diagrams for MDA Generation of MVC 2 Web Applications
by M’hamed Rahmouni, Samir Mbarki
949
Digital Image Watermarking and Encryption Using DWT and RSA
by Omar Alirr, Kasmiran Jumari
958
Study on Multi-Agent Q Learning Based on Prediction
by Ya Xie, Zhonghua Huang
964
Optimization of Processor Architecture for Sobel Real-Time Edge Detection Using FPGA
by Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
970
(continued)
.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Aspect-Oriented Modeling Approaches and Aspect Code Generation
by Abid Mehmood, Dayang N. A. Jawawi
983
Achieving Energy Efficient MAC Protocol for MANETs by Channel Utilization and Queue Size
by P. Sivanesan, S. Thangavel
996
Image Compression Based on Crucial Region for Radiographic Weldment Images
by V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
1004
Energy Based Efficiency Evaluation of Cluster and Tree Based Routing Protocols
for Wireless Sensor Networks
by M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
1012
A Wavelet Based Scheme for Video Watermarking
by M. Sundararajan, G. Yamuna
1023
Signature Analyzer Block for Secure Node Entry
by C. Navaneethan, K. Helen Prabha
1033
Swarm Based Topology Control for Fault Tolerance in MANET
by D. Manohari, G. S. Anandha Mala
1037
A Bayesian Classification Approach for Handling Uncertainty in Adaptive E-Assessment
by V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
1045
A Technique to Mine the Multi-Relational Patterns Using Relational Tree
and a Tree Pattern Mining Algorithm
by M. Ravi Sankar, P. Prem Chand
1053
Errata corrige
1062
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Entropy Based Approach to Prevent the DDoS Attacks
for Secured Web Services
S. Igni Sabasti Prabu, V. Jawahar Senthil Kumar
Abstract – A web service is a standards-based, language-agnostic software entity, that it accepts
specially formatted requests from other software entities on remote machines via vendor and
transport neutral communication protocols, producing application specific responses. Web
services are used in every nook and corner of the world. The main strategy of web service is the
availability of web service to all and its security over a distributed architecture. To ensure
customer satisfaction web services must be available to all the users without any hindrance. The
intrusion of attackers may be in any form such as a person or a program to cease the availability
of the server. The Distributed Denial of Service attack is one of the severe attacks. The proposed
system is an entropy based system which prevents the web service from the denial of service
attack. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: DDoS, Entropy, Security, Web Service
I.
Handlers are the middle level application system that
receives request from source and forward the request to
the destination system. Handlers have one or more
agents. The intermediate system does not know that the
source system has the attacking module and it continues
to perform the task given by the sender system.
When an attacker uses a genuine address, the proxy
server uses the Deficit Round Robin algorithm to collect
the address of the client request. If an attacker sends
requests much faster than its fair share, the scheduling
policy will drop its excess traffic. Moreover, for each
genuine IP address, the system will perform accounting
on the number of requests that reach the firewall.
Using the number of requests we calculate the entropy
for each agent and then calculate the entropy value for a
handler. The administrator has set a threshold value.
The entropy value of each handler is checked with the
threshold value and if it exceeds the threshold value the
particular IP is blocked.
Introduction
Web services are a standard way to integrate web
based applications by the help of SOAP, WSDL, and
XML [1]-[25]. XML tags the data, SOAP transfers the
data and WSDL describes the services. Security,
performance and availability are important issues of Web
services computing.
Disrupting the availability of web service or resource
is the main goal of denial of service attack.
Denial of service attack is an attack which is intended
by a person or a machine or a piece of code to disrupt the
service to a legal client or an user by making the network
resource unavailable to the user.
This is considered as one of the worst threats to web
service. DDoS attack is distributed denial of service
attack where the attackers flood from different sources to
attack the victim. The number of attackers varies from a
hundred to thousands. The attackers may also attack the
system either by sending a special crafted message which
consumes more CPU time or flood the system with more
number of requests so that the server is unable to
respond.
The main aim of the attacker is to deny the legitimate
user the desired functionality. Figure 1 shows the Attack
architecture.
II.
Proposed Architecture
The proposed system architecture is designed
separately for the sender and receiver.
The Client initiates a request to the server using a
SOAP request. The request message is not sent directly
to the destination, but forwarded to the system that
handles the destination details.
Fig. 1. DDoS Attack Architecture
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
888
S. Igni Sabasti Prabu, V. Jawahar Senthil Kumar
Number of requests with xi as source:
P (xi) = mi / m
Total number of requests
Here total number of requests is the number of
requests seen for a time window t. Similarly we can
calculate probability for each source (user) port as;
Number of requests with xi as source:
Fig. 2. Architecture of the sender
P (xi) = No: of request from/Total number of requests
Normalized entropy calculates the over all probability
distribution in the captured flow for the time window T:
Normalized entropy = H / log n0
where n0 is the number of distinct xi values in the given
time window.
Fig. 3. Architecture of the receiver
The main aim of our proposed system is to detect the
denial of service attacks on the web service. In this
system we are detecting the attackers using entropy
based value. The detail of the entropy calculation is as
follows. Entropy is a measure of the uncertainty or
randomness associated with a random variable or in this
case data coming over the network. The more random it
is, the more entropy it contains. The value of sample
entropy lies in range [0, log n]. The entropy shows its
minimum value 0 when all the items (IP address or port)
are same and its maximum value log n when all the items
are different. The entropy of a random variable X with
possible values {x1, x2…, xn} can be calculated as:
III. Implementation
The Web services system which is implemented in
this work has 10 MB band width, and each handler has 1
MB band width. The web service was implemented in an
employee system. The experiment carried out is as
follows:
1) Collect sample flows for a time window T on the
users;
2) Calculate entropy:
n
H X   
n
H X   
 P  xi  log P  xi 
3) Calculate NE = ( H / log n0 ), where NE = normalized
user entropy;
4) If NE (Normalized handler entropy) is less than the
threshold, d1 identify the suspected attack flow;
5) Calculate the entropy rate;
6) Compare the entropy rates;
7) If the resultant rate is less than the threshold, then
mark it as attack, else legitimate user;
8) Discard the attack flow.
Tables I to III show the calculation of entropy for each
agent and then the normalised entropy of a handler.
In the experiment carried out we had taken 10
handlers and each handler had three agents. Some
handlers did not have any request, so the normalized
entropy is 0.
If we are interested in measuring the entropy of
requests over a unique source or destination address then
maximum value of n is 232 for ipv4 address. If we want
to calculate entropy over various applications ports then
n is the maximum number of ports. Here p (xi) where xi 
X is the probability that X takes the value xi.
Suppose we randomly observe X for a fixed time
window w, then p (xi) = mi /m, where mi is the frequency
or number of times we observe X taking the value xi:
n
 mi
i 1
n
H X   
  mi / m  log  mi / m 
 P  xi  log P  xi 
i 1
(1)
i 1
m
(3)
TABLE I
HANDLER 1
(2)
i 1
Handler
Agent
No of request
Handler 1
Agent 1
29
Handler 1
Agent 2
24
Handler 1
Agent 3
28
Handler entropy =0.01908 + 0.0387 + 0.0372=0.2667
Normalized entropy=0.2667 / log2 3= 0.55
H (X) = Entropy.
If we want to calculate the probability of any source
(user) address then:
mi = number of requests with xi as source;
m = total number of requests from all sources;
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Entropy
0.01908
0.0387
0.0372
International Review on Computers and Software, Vol. 8, N. 4
889
S. Igni Sabasti Prabu, V. Jawahar Senthil Kumar
TABLE II
HANDLER 2
Handler
Agent
No of request
Handler 2
Agent 1
28
Handler 2
Agent 2
27
Handler 2
Agent 3
54
Handler entropy =0.0368 + 0.0363 +0.0729 =0.146
Normalized entropy=0.146 / log2 3= 0.30
TABLE III
HANDLER 3
Handler
Agent
No of request
Handler 3
Agent 1
29
Handler 3
Agent 2
28
Handler 3
Agent 3
27
Handler entropy =0.0381 + 0.037 + 0.0365 =0.1116
Normalized entropy=0.1116 / log2 3= 0.23
[4]
Entropy
0.0368
0.0363
0.0729
[5]
[6]
Entropy
0.0381
0.037
0.0365
[7]
[8]
[9]
[10]
[11]
[12]
[13]
Fig. 4. Entropy approach with source and destination system
[14]
The above graph specifies the entropy approach with
source and the destination system. H1 till H10 are the
handlers distributed application that reaches the
maximum normalized entropy. All normalized entropy
value lesser than the 0.5 is identified as attack and
response to the handler is denied.
[15]
[16]
[17]
IV.
Conclusion
[18]
Distributed denial of service has been a serious threat
to web services. Our experiment was to prevent the
unknown attacks before they attack the web server. An
entropy based approach is a solution to prevent
unknown attacks. The main advantage of this system is
the attackers are detected and blocked before they disrupt
the service of the server.
[19]
[20]
[21]
[22]
References
[1]
[2]
[3]
Aboosaleh Mohammad Sharifi,Saeed K. Amirgholipour,Mehdi
Alirezanejad, Baharak Shakeri Aski , Mohammad Ghiami
Availability challenge of cloud system under DDOS attack, Indian
Journal of Science and Technology June 2012. ISSN: 0974- 6846
Amazon Web Services. Amazon Elastic Compute Cloud (ec2),
Available on theWww, 2009. /http://aws.amazon.com/ec2S, last
accessed 10, November 2009
Asayuki Murakami and Nakaji Honda (2007) A study on the
modeling ability of the IDS method: A soft computing technique
[23]
[24]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
using pattern-based information processing. Int. J. Approx.
Reasoning. 45(3), 470-487
Ashley Chonka ,Yang Xiang, Wanlei Zhou Alessio Bonti”Cloud
security defence to protect cloud computing against HTTP-DoS
and XML-DoS attacks” Journal of Network and Computer
Applications ,Volume 34 Issue 4, July, 2011Pages 1097-1107
Basheer Al-Duwairi and Manimaran G (2009) JUSTgoogle: a
search engine-based defense against botnet-based DDoS attacks.
Proce. IEEE Int. Conf.Commun (ICC'09)
Belenky A, N. Ansari, Tracing Multiple Attackers with
Deterministic Packet Marking (DPM), IEEE Pacific Rim
Conference on Communications, Computers and Signal
Processing, 2003, pp.49-52.
Chonka, Ashley, Zhou, Wanlei and Xiang, Yang 2008, Protecting
web services with service oriented traceback architecture, in CIT
2008 : Proceedings of IEEE 8th International Conference on
Computer and Information Technology, IEEE, Piscataway, N.J.,
pp. 706-711.
Chonka, A., Singh, J., Zhou, W. "Chaos Theory Based Detection
against Network Mimicking. DDoS Attacks." International
Journal of Computer and Electrical Engineering,April, 2010
,IEEE Communications Letters, Vol. 13, No. 9
Dean D. An algebraic approach to IP traceback. ACM
Transactions on Information and System Security (1094–9224)
2002;5(2):119
Dittrich D.The ‘mstream’ distributed denial of service attack tool.
University
of
Washington,
/http://staff.washington.edu/dittrich/misc/mstream.analysis.txtS,20
00
Dittrich D. The DOS Project’s ‘‘trinoo’’ distributed denial of
service attack tool.University of Washington analysis, 1999
L. Feinstein, D. Schnackenberg, R. Balupari, and D. Kindred.
“Statistical approaches to DDoS attack detection and response”.
In Proc of DARPA Information Survivability Conference and
Exposition, 2003.
P. Garcı´a-Teodoro, J. Dı´az-Verdejo, G. Macia´-Ferna´ndez, E.
Va´zquez
Anomaly-based
network
intrusion
detection:Techniques, systems and challenges computers & s e c u
rity 2 8 ( 2 0 0 9 ) Elsevier Ltd.
Jensen,M. Gruschka, N.; Herkenhoner, R.; Luttenberger, N., SOA
and Web Services: New Technologies, New Standards - New
Attacks, Fifth European Conference on Web Services, 2007.
ECOWS '07 ISBN: 978-0-7695-3044-4.
Jose Nazario (2008) DDoS attack evolution. Network Security. l7,
7–10.
He Y, Chen W, Peng, W, Yang, M. Efficient and Beneficial
defense against DDOS Direct Attack and Reflector Attack, ISPA,
2005, LNCS, vol. 3758, p. 576–87 Springer-Verlag Berlin
Heidelberg 2005.
Hibler,Ricci,Stoller, Duerig Guruprasad S, Stack T, et al. Largescale virtualization in the emulab network testbed. In: Proceedings
of the 2008 USENIX annual technical conference, 2008.
Loannis G. Baltopoulos, Introduction to Web Services, CERN
School of Computing (iCSC), 2005 Geneva, Switzerland
A. Lakhina , M. Crovella and C. Diot , “ Mining anomalies using
traffic feature Distributions “. In proc. of ACM SIGCOMM, 2005.
W. Lee, D. Xiang, “Information-theoretic measures for anomaly
Detection”, In Proc. of IEEE Symposium on Security and Privacy,
2001.
G. Nychis, V. Sekar, D. G Andersen, H. Kim and H.Zhang, “An
Empirical Evaluation of Entropy-Based Traffic Anomaly
Detection”. Tech. Rep. CMUCS- 08-145, Computer Science
Department, Carnegie Mellon University, 2008.
Sumit kar,Bibhudatta sahoo “AN ANOMALY DETECTION
SYSTEM FOR DDOS ATTACK IN GRID COMPUTING”
INTERNATIONAL
JOURNAL
OF
COMPUTER
APPLICATIONS IN ENGINEERING, TECHNOLOGY AND
SCIENCES (IJ-CA-ETS) ISSN: 0974-3596 | April ’09 –
September ’09 | Volume 1 : Issue 2 | Page: 553
Thomas M. Cover and Joy A. Thomas, “Elements of Information
Theory”, second edition, 2007.
S. Murugan, V. Ramachandran, Rough Sets Based
Trustworthiness Evaluation of Web Services, (2012) International
Review on Computers and Software (IRECOS), 7 (6), pp. 2974-
International Review on Computers and Software, Vol. 8, N. 4
890
S. Igni Sabasti Prabu, V. Jawahar Senthil Kumar
2980.
[25] He Li, Model of SNOD Algorithm of Spatial Outlier Data Mining
and Analysis Based on Entropy, (2012) International Review on
Computers and Software (IRECOS), 7 (6), pp. 2875-2879.
Authors’ information
S. Igni Sabasti Prabu is a Research Scholar in
Sathyabama university. He has completed his
B.E
in
Computer
Engineering
from
Manonmanium
Sundaranar
University,
Tirunelveli, Tamilnadu, in 1995 and M.E. in
Computer
Sciencel
Engineering
from
Sathyabama University, Chennai in 2004. He is
pursuing Ph.D. degree in Computer Science &
Engineering from Sathyabama University, Chennai. His research
interests are in the areas of Web security.
V. Jawahar Senthilkumar is an Assistant
professor at the Department of Electronics and
Communication Engineering, College of
Engineering-Guindy, Anna University Chennai.
He received the Bachelor of Engineering Degree
in Electrical and Electronics Engineering from
Hindustan College of Engineering, Madras
University, Chennai .He did his post graduation
in Applied Electronics from Bharatiyar University, Coimbatore and
Ph.D Degree in Information and Communication Engineering from
Anna University Chennai. He has contributed around 40 technical
papers and in various journals & conferences. His main research
interests are in the field of Computer Networks, parallel & distributed
algorithms, VLSI design, Network design and management and
scientific computing.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
891
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Dynamic Extended Rectangle Based Method
for 3D Visual Scene Segmentation
N. Charara1, 2, M. Sokhn3, I. Jarkass2, O. Abou Khaled1, E. Mugellini1
Abstract – A novel approach for semantic scene segmentation with computer vision is presented
in this paper. The principle goal is to capture the scene distribution of the different zones of any
multipurpose hall, taking into account both monocular visual cues (texture feature) and depth
information. A feature extraction strategy based on a dynamic extension of the rectangular
patches is proposed in order to provide a more accurate segmentation and to avoid redundancy
penalties.The depth constraints control the initial classification decision that is obtained by a
neuro-fuzzy classifier. An experimental study is applied on our dataset to demonstrate this
approach on his different optimization stages. Copyright © 2013 Praise Worthy Prize S.r.l. - All
rights reserved.
Keywords: Scene Segmentation, Texture, Depth Information, Neuro-Fuzzy Classification, Pattern
Recognition
As main contribution, we show that the system can
segment the scene in a semantic way and not just blobs
of similar texture or color. The second important point of
this work is utilizing the depth information to increase
reliability in the comprehension of the scene elements.
Therefore, the third key point in this context is to
employ a functional system that is able to scan and mask
the image with simple algorithms that allow fast
implementations, i.e., we propose an extended rectangle
based method to derive both depth and visual low level
features. This is demonstrated by experiments in which
stationary images of any multipurpose hall will be
segmented in their different zones (details in section III).
The paper is structured as follows: in the next section
we present the related works, section III gives anover
view for the proposed method and details the used
techniques. In section IV, we interpret the experimental
results by applying our approach on a set of multipurpose
hall scene and finally in section we conclude the paper.
Nomenclature
GLCM
SVM
GMM
SIFT
CRF
MDL
VP
N-RMSE
NFC
Gray Level Co-occurrence Matrix
Support Vector Machine
mixture of Gaussian models
Scale-invariant feature transform
Conditional Random Field
Minimum Description Length
Vanishing Point
Normalized Root-Mean-Square Error
Neuro-Fuzzy Classifier
I.
Introduction
In the last years, especially with the growing research
efforts in the computer vision fields [1]-[15], image
processing researchers have been involved increasingly
with segmentation mechanisms as well, [6], [7] and [11].
In general, Segmentation process enables partitioning
and labeling the different homogeneous regions of a
scene. Some researchers considered the term
“segmentation” as a way to represent the labeled
connected component map that is obtained after a
classification step. Moreover, the semantic scene
segmentation problem has attained specifically an
important attention aiming to classify fixed images into
semantic classes such as green fields, urban and
beaches…etc. The emerging problematic here is how to
achieve such segmentation mechanisms, what kind of
criteria to use from the huge quantity of basic features
that may be exist in a scene, and consecutively which
low-level image descriptors to employ. In this work, as
well as stereoscopic vision, the proposed system is also
based on visual features exploration in a single fixed
image taken with simple capturing constraints.
II.
Related Works
Most visual segmentation systems oriented for scene
classification are based on learning-by-example
approaches to learn patterns, proceeding from a training
phase and using low-level features.
In [6] Boutell et al. proposed a multi-label
classification model to handle the problem in that a
sample may possess multiple properties of multiple
classes, and the basic classes are non-mutually exclusive
and may overlap. In contrast, some others [10] use the
multi-class segmentation approach to combine
information of the feature space between separate classes
for a given sample.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
892
N. Charara et al.
Recently
Recently,, iinn [[7
7]] and using the notion of lossy
minimum description length (MDL) for data
compression, an approach has been proposed to segment
natural image
imagess. At smaller scale, the automatic
segmentation of microscopic cellular images [[8
8]] is
employed for diagnosis assistance.
At technical
technical level, we can find in the literature several
segmentation techniques exploiting various tools. A
number of co
computational
mputational method
methodss of segmentation have
been proposed based on probabilistic models,
model e.g.
Conditional Random Field (CRF) models from fully
fullylabeled training data [10
10]] or even from partially-labeled
partially labeled
images [9].
[ . In a recent work, Verbeek and Triggs
introduce a CRF to incorporate both local features and
features aggregated over the whole image or over large
patches. They use texture (SIFT), color and position
descriptors to extract local image content of each patch.
Another pprobabi
robabilistic
robabi stic model is exploited in [7];
[ ; the
mixture of Gaussian models (GMM) is employed to
regroup the feature vectors or windows extracted around
all pixels, into different classes. Some
Some other
others combine
between statistical and evidential models, e.g. Charrier
Charrier et
al. [88]] was presented an automatic segmentation
technique in which the results obtained by Support
Vector Machines (SVM) applied within different color
spaces, are conjunctively combined with the belief
function theory (Dempster
(Dempster-Shafer
Shafer rule). Here, the belief
function of each class is modeled from a posteriori
probability that is computed ffrom
rom the different
segmentation maps (obtained by SVM segmentation).
We note that these models can be applied either at the
pixel level [8]
pixel-level
8]-[2
[2]or
or at patches/super
patches/super-pixels
[ ].
/super pixels level [10]
Other group employstraditional
employstraditional clustering techniques
such as the kk-means
means algorithm
algorithm,, and even spectral
clustering techniques
technique [11].
[1 . These spectral clustering
techniques constitute modern algorithms that depend on
graph theory and linear algebra, in which an optimal
graph cut is defined by using eigenvectors of the
laplacian graph.
Silberman et al. in [[10]] benefit from conditional
random field (CRF) model to explore a variety of
different potential functions, and to perform efficiently
the inference with the graph-cuts
graph cuts optimization scheme.
Onsensory
sensory features aggregation level,
level and as noted in
[12
2], the most important strategies
are:: (1) Proximity: by
strategiesare
grouping the features
eatures nearby in space and time into the
same segment
segment,, (2) Similarity:
Similarity by grouping features
eatures that
have similar attributes, such as brightness,
brightness, (3)
Connectedness: a single segment is formed by a uniform
connected region
region, (4) Memory:
Memory: aggregating the features
eatures
that belong to the same memory pattern
pattern.
Most
ost of the above mentioned previous works
work focus
exclusively on information content nature including
segmentation techniques, feature selection and
classification methods.
They did
did not concentrate on information extraction
strategies e.g
e.g.. how
ow to get this information from
rom the
framed scene without losing the significant spatial
information distribution
distributionss especially from the scenes
scenes
related with behavior analysis problems
problems.. So,
So the essential
contribution in this study is the new segmentation
strategy that is dedicated but not limited to multipurpose
hall scenes, without intervention from a human operator
and without any a priori information.
III. Proposed Segmentation Method
This method virtually split
s ts the scene into different
planes with different depth values in the real scene more
or less far from the focal plane (Fig.
ig. 11).
Fig. 11. The virtual Depth planes segment the scene into
various semantic zones
These Depth plan
planes are detected automatically during
the processing phase to segment the multipurpose hall
scene into different semantic zones. Since each zone has
its special properties, the determination of these Depth
plan is applied according to certain discriminative
planes
features
features. We argue this segmentation strategy that in the
multipurpose
hall the study case, is divided into three
multipurpose hall,
defined zones (see Fig.
Fig. 1: first the spectator seats area,
then more deeply the sidewalk
sidewalk, and last the
the theater or the
onstage or the wide screen
screen, according to the usage).
usage)
Fig. 22. Examples of typical multipurpose hall scenes
Not so far from the traditional image segmentation
processes, our problem is treated by transferring features
from facts domain to image domain by following the
he
extended rectangle strategy. The principle of this method
is based on two assumptions
assumptions:: First, the distribution of
zones is with respect to depth. Second, the image of the
the
multipurpose hall is taken so as to cover most of the hall
Copyright © 201
2013 Praise Worthy Pri
Prize
ze S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
893
N. Charara et al.
components in a single frame as shown in Fig. 2, and this
requires to be taken from back.
These two assumptions lead us to precede the
processing from the deepest point toward the camera
focal plane. The deepest point is in fact the vanishing
point (VP), it is the common point of intersection of the
converging lines in plane image that captured by a
pinhole camera. These projected converging lines are in
fact the parallel lines in the real 3D space of the manmade scene. In our application, this vanishing point has a
significant perception mean. So, the vanishing point
detection is the first step in our algorithm. To this end
and after examining different techniques we refer to a
recent work [2] that demonstrates a very good
performance in VP determination; it is based on 2D
histogramming techniques.We treat our problem on patch
level and not on pixel one, benefiting thus by reducing
the computation, and from another side by applying our
novel processing strategy (Fig. 3) based on extending the
rectangular patches.
For a given
×
grey framed multipurpose hall
scene I, each point Pi, j∈ I, i = 1, ...M and j= 1, ...,N
should belongs a rectangular patch Rt that is centered by a
Ct (XCt, YCt) point, with a width Wt and a height Ht.
At each iteration, all these variables vary
systematically following several criteria that provide
dynamic, homogeneous and convergent rectangular patch
extension. Here, the extension dynamicity is represented
by the width of both horizontal and vertical steps that
vary with respect to statistical features.
The computation of the median and variance of the
difference between the current patch and the next
candidate extended patch at each iteration avoids an
over-step to the next zone.
By this way redundancy is prevented by saving
iterations and by respecting the relative homogeneity of
the patch.
The property of intersection between the rectangular
patch corners and the converging lines will guarantee
rigorously the convergence property. Centered by the
aforementioned VP, the initial rectangular patch is
bordered to start the extraction process (discussed in the
next subsection) of the feature vectors needed by the
Neuro-Fuzzy classifier to take a decision (detailed in).
Finally the decision is examined by the depth
information constraints that are inferred by the relation
between the depth map and the logical distribution of
zones. Once the depth planes are detected, a zone will be
determined between two depth planes.
III.1. Texture Feature
The realization of scene segmentation following our
proposed approach requests to characterize these mantic
content of the scene.
Nevertheless, the automatic extraction of semantic
content is still far from being achieved despite advances
in image processing and recognition algorithms. We will
there for use low-level features to analyze the images and
generate are liable segmentation.
An important issue in the design of segmentation
methods is the selection of low-level features that
represent the content of images. With the absence of a
priori information as noted before, the content of the
images is generally represented by low-level descriptors
that can translate color information, orientation and
texture. However, to choose the most adequate one to our
application, from the huge number of descriptor types
and techniques, a little observation to the various
multipurpose hall examples (Fig. 1) show that color
reflects a weak representation of the different zones.
Despite of the wide use of Color feature in all image
processing domains, there are two principal issues to
keep us away from exploiting this feature here. First, a
certain design (decor) can choose the same color or set of
colors for all zones of the hall. Second, the color
descriptors are relativelysensitive to local variation of
illumination; although some pre-processing method such
as high-pass filtering can realize contrast equalization of
the image, a statistical or non-statistical color descriptor
will fail in such discriminative issue.
Then comes Texture, it is a spatially repetitive microstructure of surfaces formed by repeating a particular
element or several elements in different relative spatial
positions.
This repetition involves local variations of scale,
orientation, or other geometric and optical features of the
elements. The Gray Level Co-occurrence Matrix
(GLCM)method extracts second order statistical texture
features.
If G is the number of gray levels existed in an image I.
Let M the
× GLCM, with Mlx,ly (m, n) the cooccurrence number of each two pixels with gray values m
and n, separated by a given distance (lx, ly).
Another definition is used also by [4] where the matrix
element ML,ө(m,n)contains the second order statistical
Fig. 3. Schematic diagram of the proposed segmentation framework, Z
is the current number of zones and K is the total number of zones
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
894
N. Charara et al.
probability values for changes between grey levels m and
n at a particular displacement distance L and at a given
direction ө.
To avoid the paradoxical situation when the GLCM
dimension will be greater than the original image
dimension, normally the intensity quantization is limited
to 16 grey levels that is often sufficient for discrimination
or segmentation of textures. After GLCM calculation, we
find some of Haralick texture features Fi as follow:
 The homogeneity (1) is the sum of squares of M (m,
n)that will be high in homogenous scene (where the
few grey levels and then high values of P(i, j)):
 Cluster Shade (5):
=
+
−µ −µ
×
( , )
(5)
,
where μx and μy are the means of Mx and My respectively.
Mx (m) is the ith entry in the marginal-probability matrix
obtained by summing the rows of M(m, n).
 Cluster Prominence(6):
=
+
−µ −µ
×
( , )
(6)
,
{ ( , )}
=
(1)
 Sum average (7):
,
( )
=−
( )
( )
=−
 The sum of entropy (2), normally the homogenous
patches has high entropy, while the non-homogenous
has low one:
(7)
 Sum Variance (8):
(2)
(
=−
where:
)
−
( )
(8)
 Dissimilarity (9):
( , )
=
+
=
,
(
− µ)
( , )
=
− ) ]
( , )
{ ( , )}
( , )
(10)
In fact, there are up to 14 computable features in
Haralick set and in [5] they are extended to 28. Since it is
hard to identify theoretically which computable features
contain definitively the most reliable textural
information, a good observation and analysis of values
distribution with respect to real scene depth (according to
zones) demonstrate the usefulness of the mentioned
features as showed in Table I.
The spatial scene segmentation using these relevant
features is determined using a fuzzy inference system,
which described in the next section.
(3)
where μ is the mean value of M :
 The Inverse Difference Moment or the local
homogeneity (4):
[1 + (
(9)
 Max Probability (10):
,
=
− |
,
for: k=0,1....G-1
 The variance (3) here is the dispersion measure of
probabilities, so the elements having relative
difference of M(m, n) values around the average value
are emphasized:
=
( , )|
=
(4)
,
Cluster
shade
Dissimilarity
Variance
Max
probability
Inverse
difference
normalized
Sum
average
Sum
variance
Sum
entropy
Zone 1
Zone 2
Zone 3
Var %
depth
Cluster Prominence
Manually
defined Zones
Homogeneity
TABLE I
VARIATION OF HALARICK FEATURE VALUES WITH RESPECT TO ZONE DISTRIBUTION. THE ZONES HERE ARE MANUALLY SEGMENTED.
(DEC= DECREASING, INC= INCREASING)
Feature
[0.95-1]
[.83-.95]
[.62-.80]
[0 - 1]
[1 - 10]
[20 -200]
<0
0
[5 - 25]
0
[.1 -.3]
[.7 - 1]
0
[.1 -.5]
[.7 - 1]
[.6 - 1]
[.3 -.6]
[.1 -.3]
[8 - 9]
[6 - 8]
[4 - 6.6]
[58 - 76]
[26 - 57]
[14 - 26]
[0 - 1]
[.5 - 1.5]
[1.8 -2.1]
[8 - 9]
[6 - 8]
[4 - 6.6]
Dec
Inc
Inc
Inc
Inc
Dec
Dec
Dec
Inc
Dec
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
895
N. Charara et al.
III.2. Depth Information
III.3. Fuzzy Logic for Classification
While in [2] the depth data is used within a merging
process to obtain joint features vectors set, our proposed
system uses the depth information as a constraint to
avoid any estimation error caused by the texture based
pattern recognition technique. Various systems have been
proposed for depth exploration, each with pros and cons.
There are two main groups, passive methods and
active methods. Passive methods use only information
from two or more cameras to estimate the standard depth.
Among them, stereo vision systems that exploit the
position corresponding to locations indifferent images,
seems to be the most commonly used. Active methods
such as structured light, laser scanners and sensors TOF
(Time of Flight), are based on projecting certain kind of
light on the real scene. Such methods may lead to better
results than those obtained by passive stereo systems, but
they are however more expensive firstly, and from
another side, it is preferable to merge the multimodal
information source (image and sound) with the depth
exploration source in order to avoid synchronisation and
fusion problem.So, dealing with the stereoscopic
solution, two cameras with a known physical relation are
correlated via certain algorithm.
By finding correspondences of common pixel values
(from left and right image),and calculating the distance
between these areas, an approximate depth map can be
created.
This is very similar to how the human brain uses
stereoscopic information from eyes to get depth and
relief information. The camera attributes must be known
(the focal length and the distance between them, etc...),
and therefore calibration is performed. Once this is done,
the system can be used to detect the distance of objects
by triangulation [14]-[15]. In practice, stereoscopy
involves many steps during the use of two calibrated
cameras.
After removing-mathematically- the radial and
tangential distortion lenses, the distortion-free images
will be rectified by adjusting the angles and distances
between the cameras.
Then, finding all specific pixels coordinates of the left
and right images that match the same point of the real
world is known as the correspondence stage. The output
of this step is a disparity map, where disparities are
differences in the x-coordinates of the 2D image of the
same view function in the left and right cameras. Finally,
if we know the cameras geometrical arrangement, we can
use triangulation to transform the disparity map to
distances.
This step is called "Reprojection", and the output is a
depth map.
Stereovision systems have been greatly improved in
recent years, but they have the drawback of inability to
work on non-textured regions, while the most effective
methods are also very costly in computation time. In our
application, normally the multipurpose hall scenes are
well-structured, hence exceeding the problem and the use
of two calibrated cameras.
After obtaining feature vectors, scene segmentation is
turned into a classification problem. Variety of solutions
has been proposed by different methods, such as support
vector machines, Bayes classifiers and neural networks.
Fuzzy classification is the task of partitioning a feature
space into fuzzy classes that relies onfuzzy inference
rules where Mamdani if-then rules are the most
common.A supervised learning method is prosperous to
automate the construction process of a fuzzy classifier.
So, to take advantage of the network-based learning
properties with the intelligibility and effectiveness of the
fuzzy classification techniques, a neuro-fuzzy classifier
(NFC) is used to solve our classification problem.
Normally, NFC comprises four steps: fuzzy
membership,
fuzzification,
defuzzification
and
normalization.
Fig. 4. Depth map estimation with stereoscopic vision system
After transforming the numerical values of GLCM
features (fi for i = 1, 2,.10)into fuzzy interval values that
are defined on a representation space:
=
,
,
,
,
,
,…
,
,
If-then rules set is defined to express the qualitative
aspects of human perception and to describe the relation
between this representation space and the fuzzy classes’
space = {Zk/ k = 1, 2… K} where K is the number of
zones in the scene (K=3 in this application):
Rule i:IF
,
∈
THEN is
where , represents the GLCM feature value at
the thsample;
denotesthe fuzzy interval of kth class or
th
the k zone, all for the ith GLCM feature. Based on
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
896
N. Charara et al.
labeled training dataset, our adaptive classifier encodes
this prior knowledge into neuro-fuzzy classifier
parameters, in this way the convergence to the optimal
point is accelerated. To this end, the algorithm recent
proposed by [1] and referred by ‘‘speeding up scaled
conjugate gradient algorithm (SSCG)”; is used to
compute the second-order information by calculating two
first-order gradients for the NFC parameters. In this
study, a least square estimator (LSE) is used to reduce
the number of operations and hence the processing time.
IV.
aforementioned capturing conditions. For that we
supposed to study the impact and effectiveness of two
mapping strategies by extracting the feature vectors
either from whole rectangular patches that are extended
in all direction or just from the down side as shown in the
figure. Experiments show that the segmentation process
is enhanced and the averaged N-RMSE value is reduced
by 0.0181. We interpret these results that the different
zones are characterized essentially in the down side, so
the low level features is mostly pertinent in all image
samples. Moreover, exploring the upper side may cause
information scattering and redundancy. All these facts
affect the execution time that records 4.18 seconds using
the improved method while analyzing the whole image
where the rectangular patches are extended in all
directions take 6.45 seconds. Based on these results, we
have decided to adopt the down side strategy.
Experimental Results
The difficulty of evaluation of such semantic
segmentation methods comes from the subjectivity in the
result analysis and the conversion from the qualitative
description into the quantitative one. We have adopted an
expert based evaluation method so that the original scene
will be manually segmented (offline) to be compared
with our results on pixel-level. To quantitatively study
the algorithm behavior in its different stages, the
normalized root-mean-square error (N-RMSE) is
computed to measure the differences between the manual
segmented zones (as a reference) and those obtained
automatically by our segmentation method.
In addition to dimensions and edge pixels intensity, NRMSE is a function of some statistical features of the
detected zones. Moreover, another performance
measurement is employed, the recognition rate (RR), to
compare the number of pixels that has been classified by
the experts with that obtained by the proposed method.
The segmentation method performance is evaluated on
our test-set, which consists from a variety of 2D realworld multipurpose hall scene collected with the
corresponding produced depth maps.
Fig. 6. The two mapping strategies; 1- analyzing the whole image in all
directions (in cyan), 2- analyzing the image bottom (in blue)
In Fig. 7, we study the algorithm behaviour as a
function of zone distribution. All the method stages are
tested on our dataset and the corresponding N-RMSE
graphs are shown. We can observe that the performance
in all stages increases inversely proportional with depth,
e.g. the error records its highest value in detecting the
first zone (the deepest zone) and decreases with the next
zones, to reach its lowest values with the third zone.
A good point can be inferred, that the error doesn’t
accumulate from zone to the next, noting that our method
starts with detecting the deepest zone to the nearest one,
always in respect to the camera plane.
As is clear in Fig. 7 the algorithm is more promising
with depth information cues, it presents the more
accurate segmentation results, and this is justified with
the RR presented in Table II.
In addition to performance enhancement, the dynamic
step proposition reduces the number of iterations at
execution level.
Fig. 5. Final segmented and annotated scene
Some of these images are downloaded from the
Internet; they are used only in visual features based tests
since the lack of the ground truth depth maps.
The experimental studies are conducted on a personal
computer with a Core i32.13 GHz processor, 2 GB RAM
memory and MATLAB R2010a environment.
As observed in Fig. 6, normally the relevant
information is carried by the down side of the
multipurpose hall image, which is taken with the
TABLE II
MEAN OF THE RECOGNITION RATE (RR) OF THE DIFFERENT
METHOD STAGES
Algorithm stages
Mean of RR
Stage1: Analysing the whole image
70.63 ± 3.88
Stage2: Analysing the down side - Fixed step
79.24 ± 4.15
Stage3: Dynamic step without depth constraints
88.95 ± 5.56
Final Stage : Dynamic step + Depth constraints
91.76 ± 5.97
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
897
N. Charara et al.
0,45
0,4
0,35
Averaged N-RMSE
Dynamic step + Depth
constraints
Dynamic step - Without
depth constraints
0,3
0,25
0,2
Analysing the image
bottom - Fixed step
0,15
0,1
0,05
Analysing the whole
image
0
zone#1
zone#2
zone#3
Fig. 7. Quantitative evaluation of the different method stages performance with respect to zone distribution
Figs. 8. (a) Patch extension with fixed step: The two examples illustrate the overstep phenomenon causing the zone overlap
(b) Patch extension with dynamic step: The zone borders are respected
V.
This work is in fact introduced in the security
monitoring systems to improve human-behavior
recognition capability. Moreover, this research domain,
the semantic scene segmentation, is employed in several
applications as content-based image retrieval and
indexing.
Conclusion
This paper introduced a novel approach for semantic
scene segmentation, taking the multipurpose hall as a
principle used case.
The texture feature extraction is oriented with the new
mapping strategy, in order to automatically detect the
depth planes and hence the semantic zones from a unique
still image. Despite the use of a limited training dataset,
the algorithm simplicity and effectiveness constitute
significant advantages for this approach. Moreover, the
role of depth information provided by the stereoscopic
system is resumed by enhancing the segmentation
process performance.
Indeed, the experimental results confirm that our
method attains the required segmentation task even when
the algorithm is limited to intensity information. Despite
its effectiveness on segmenting a multipurpose hall
scene, this approach provides a good result when it is
exclusively applied on images captured with specific
acquisition constrains.
References
[1]
[2]
[3]
[4]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
B. Cetişli, A. Barkana. Speeding up the scaled conjugate gradient
algorithm and its application in neuro-fuzzy classifier training.
Soft Computing 14(4):365–378.2010
Bo Li, KunPeng, Xianghua Ying, HongbinZha, Vanishing Point
Detection Using Cascaded 1D HoughTransform from Single
Images, Pattern RecognitionLetters,Vol 33, Iss 1, pp. 1-102, 2012.
Sun CT, Jang JSR.A neuro-fuzzy classifier and its
applications.Proc. of IEEE Int. Conf. on Fuzzy Systems, San
Francisco 1:94–98.Int. Conf. on Fuzzy Systems, San Francisco
1:94–98. 1993
Fritz Albregtsen,Statistical TextureMeasuresComputed from Gray
Level Co-occurrenceMatrices, Image Processing Laboratory,
Department of Informatics, University of Oslo, November 5,
2008.
International Review on Computers and Software, Vol. 8, N. 4
898
N. Charara et al.
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
R.M. Haralick, K. Shanmugam, and I. Dinstein, TexturalFeatures
for Image Classification, IEEE Trans. on Systems, Man and
Cybernetics, Vol. SMC-3, pp. 610-621, 1973.
M. R. Boutell, J. Luo, X. Shen, C. M. Brown,Learning multi-label
scene classification. Pattern Recognition, Vol. 37, No. 9. (2004),
pp. 1757-177.
Shankar Rao, HosseinMobahi, Allen Y. Yang, Shankar Sastry, Yi
Ma, Natural Image Segmentation with Adaptive Texture and
Boundary Encoding. ACCV (1) 2009: 135-146
C. Charrier, G. Lebrun, O. Lezoray, Evidential segmentation of
microscopic color images with pixel classification posterior
probabilities, Journal of Multimedia, Vol. 2, N° 3, pp. 57-65,
2007.
Jakob J. Verbeek, Bill Triggs, Scene Segmentation with CRFs
Learned from Partially Labeled Images. Neural Information
Processing Systems (NIPS), 2007.
Silberman, N. and Fergus, R. Indoor Scene Segmentation using a
Structured Light Sensor. 3DRR Workshop, the 13th International
Conference on Computer Vision ICCV, 2011.
Jian Li, Shaogang Gong, Tao Xiang, Scene Segmentation for
Behaviour Correlation. In Proc. of the 10th European Conference
on Computer Vision (ECCV '08)Part IV, pages: 383-395, 2008.
DeLiang Wang, Visual Scene Segmentation, In Arbib M.A. (ed.),
The Handbook of Brain Theory and Neural Networks, 2nd Ed.,
MITPress, Cambridge MA, pp. 1215-1219, 2003.
Dal Mutto. PietroZanuttigh. Guido M. Cortelazzo. Scene
Segmentation by Color and Depth Information and its
Applications, Department of Information Engineering, University
of Padova. September 2011.
Jian Song, A Target Location Method Based on Binocular Stereo
Vision for Eggplant Picking Robot, (2011) International Review
on Computers and Software (IRECOS), 6 (6), pp. 1094-1098.
Stefano Mattoccia, Stereo vision: algorithms and applications,
Università di Firenze, May 2012.
Iman Jarkass was born inTripoli (Lebanon), 23
May 1970. PhD in Control of Systems at the
University of Technology of Compiegne
(UTC), France, 1998. She is an associate
professor atthe Lebanese University (Lebanon).
She is interested in the data fusion, especially
applied to dynamic systems.
Omar Abou Khaled holds a PhD in Computer
Science
received
from
theUniversityof
TechnologyofCompiègne, and a Master in
Computer Science from the same university. He
is Professor at the University of Applied
Sciences ofFribourgEIA-FR. Since 1996 he has
been working as research assistant in the
MEDIA group of the Theoretical Computer
Science Laboratory of EPFL (Ecole Polytechnique Fédérale de
Lausanne) in the field of Educational Technologies and Web Based
Training research field.
He is International Advisor at HES-SO. He was Head of International
Relations Office at EIA-FR. Head of MRU "Advanced IT Systems
Architects" at EIA-FR. Until 2007 He was leader of the MISG
(Multimedia Information System Group). He is responsible of several
projects in the field of Document Engineering, Multimodal Interfaces,
Context Awareness, Ambient Intelligence, Blended Learning, and
Content-Based Multimedia Retrieval.
Elena Mugellini holds a PhD in Telematics and
Information Society received from the
University of Florence in 2006, and a Master in
Telecommunication Engineering from the same
university received in 2002. She is Professor at
the Information and Communication Department
of the University of Applied Sciences of
Western Switzerland, Fribourg (EIA-FR). Elena
is the leader of MISG research group. She is also member of the
Telematics Technology Laboratory at the University of Florence.Her
current research interests are on the areas of Ambient Intelligent,
Multimodal Interaction, Tangible User Interface, Personal Information
Management, and Document Engineering
Authors’ information
1
University of Applied Sciences of Western Switzerland, Fribourg,
Switzerland.
2
Lebanese University, Doctoral School for Science & Technology,
Beirut, Lebanon.
3
University of Applied Sciences of Western Switzerland, Sierre,
Switzerland.
Nour A. Charara received her License and
Master1 degrees in Electronics from the
Lebanese University Faculty of Sciences in 2008
and 2009 respectively. Also she received
Research Master degree in Signal, Telecom,
Image, and Speech (STIP) from the Lebanese
University, Doctoral School of Sciences and
Technology in 2010. Currently, she is member
of the Multimedia Information System Group, MISG at the University
of Applied Sciences of Western Switzerland, Fribourg, Switzerland.
Her research interests include video analysis, image processing and
behavior recognition.
Maria Sokhn holds a PhD from the Telecom
Paris Tech in 2011. She graduated from the
Engineering Faculty of Saint Joseph University,
with a Computer and Communication Engineer
diploma, and holds a specialized master
diploma from Telecom Paris Tech in
Multimedia production and creation. Actually
she is a professor at the University of Applied
Sciences (EIA) of Sierre, and member of the Multimedia Information
System Group MISG. She was the head of the eGov Technology Center
at EIA of Fribourg. Her researches interest focuses on eGovernement,
multimedia information retrieval, knowledge management, modeling
and visualization.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
899
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Enhancement of Game Theoretic Approach Using Nash Equilibrium
with Markov Chains for VANET Security
Prabakaran M., A. R. Deepti, G. Mahadevan, R. M. S. Parvathy
Abstract – Vehicular ad-hoc networks (VANETs) are a special type of Mobile ad-hoc networks,
which provides safety and commercial applications to the vehicles. Typically, this technology uses
every moving car as nodes to form a network. To make a travel more convenient for the user, the
VANET has provided a good service and security for them. Recently, game theoretic models are
used to address network security issues. The VANET faces the greatest security threats in the game
theoretic approach. In this paper a Game theoretic potential for VANET security is applied. This
new technique is termed as NE (Nash Equilibrium) with Markov chains based on the game model,
is used for VANET to improve the performance and security better. Copyright © 2013 Praise
Worthy Prize S.r.l. - All rights reserved.
Keywords: Nash Equilibrium, Markov Chain, VANET
To improve the security of VANET, many techniques
have been presented earlier. One of the technique named
TPM hardware for the security framework of VANET by
developing the trusted infrastructure for neighboring
nodes. A Nash Equilibrium (NE) technique is provided to
improve the communication security in game theoretic
approach. The NE has been used for variety of game applications like blocking games, intelligent virus attacking
games and so on.
Nomenclature
NE
VANETs
MC
Ti
gn
Nash Equilibrium
Vehicular ad-hoc networks
Markov Chains
Strategy set for player
Set of approach
I.
Introduction
Vehicular ad-hoc networks (VANETs) are a special
type of Mobile ad-hoc networks, which provides safety
and commercial applications to the vehicles [1]-[9]. Typically, this technology uses every moving car as nodes to
form a network. To make a travel more convenient for
the user, the VANET has provided a good service and
security for them. Recently, game theoretic models are
used to address network security issues.
The VANET faces the greatest security threats in the
game theoretic approach.
In Game Theory, one player's result depends on his
decisions and also his adversary. Likewise, in the network, the security depends on the actions of the users
that are sharing the systems, and also their peers situated
in other networks. All these agents act realistically according to their various incentives. Thus, the Game
Theory helps the agents to predict each other's behavior
and suggests a course of action to be taken in any given
situation.
II.
III. Enhancing Game Theoretic Approach
for Vanet Security
The basic assumption of a game theoretic model is
that decisions makers are rational [7]. In a game the
players are termed as decision makers, comprise the crucial entities of a game. A player can represent a person, a
machine or a group of persons. Within a game, players
perform actions which they describe from their particular
action sets. The plan of actions that a given player takes
during a game play is called the strategy of that player.
When all players play their strategies, it leads to an
outcome, which is the vector of the actions taken by the
players in that game. An outcome gives a positive or
negative (prn) reward to each player.
The prn of a given player is derived from the preference that the player has of some outcome compared to
others. A player's preference is given by a utility function
where the outcome be a real number.
Literature Review
III.1. Markov Chains for Game Model
In general, a VANET can be modeled as a weighted
graph G = (N, E). N contains the network nodes (eg;
moving cars), while E is the set of edges.
The construction of Markov chains are used to measure the security and provide the game model based on the
transitions in VANET.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
900
Prabakaran M., A. R. Deepti, G. Mahadevan, R. M. S. Parvathy
It is an arbitrary process where the next state depends
only on the present state and not on the series of events
that headed it. The Markov model is used to identify the
probability of state transition from one state to another
[8]. Depends upon the user’s actions states in VANET, it
construct the Markov model of the system. To construct
the Markov model, we use the steps given below:
Pseudo code
Step1: Let the source be Ti,
Step2: Let Destination be Tj,
Step3: if transition from the state Ti to state Tj,
Step4: Compute actions profiles of ρ1, ρ2…ρk With the
rates of μ ρ1……. μρk consequently,
Step5: Evaluate the total rate of the state transition from
Ti to the state Tj:
k
λij = Σ n=1 μρn
Fig. 1. Architecture Diagram of Game theoretic approach
using NE and MC
(1)
Step6: End If.
The pseudo code describes the state transition nodes
from source to destination. Before transmitting the nodes,
it is necessary to evaluate the action profiles for each
node in the network.
Then choose the transition path and evaluate the rate
of the transition path by using Eq. (1) Therefore, for
computing the transition rates in Markov chain, it is
enough to compute the rates of μρi.
If, the state s of the system has equal rate of transition,
then for action profile of ρi = ρr1, ρr2……. ρk with occurrence probabilities (π*,s 1 (ρr1)………. π*,s k (ρk)), the rate
will be as follows:
Step7: if transition has equal state,
Step8: Compute the action profiles ρi = ρr1, ρr2……. ρr k ,
Step9: for each action profiles,
Step10: Evaluate the total rate of the state transition:
μ ρi = μ * π*,s j (ρj)
III.2. Nash Equilibrium
Nash Equilibrium (NE) is applied in game theory
where two or more players involve in a game under
VANET. It is computed based on the game model like
intelligent virus game, blocking game and so on which
are derived from MC (Markov Chains). This paper describes the process of deriving the NE based on the players involved in game theoretic model in VANET security. It can also be termed as mixed strategies, where
players involved in a game, select the probabilities from
possible actions made on it. The pseudo code for NE to
secure the VANET using the game model derived using
MC:
Step1: Derive the game model using MC;
Step2: Let the game be G, and players be n;
Step3: Compute the strategy set Ti;
Step4: For each player;
Step5: Compute the payoff fi(x);
Step6: end for;
Step 7: Based on fi(x);
Step 8: Evaluate NE (Eq. (4));
Step 9: To identify the state of the game strategy;
Step 10: End.
Let (T,g) be a game with n players, where Ti is the
strategy set for player i, T=T1 X g2 ... X gn is the set of
approach and g=(g1(x), ..., gn(x)) is the payoff function
for x ∊ T. Let xi be an approach of player i and x-i be an
approach of all other players except player i. When each
player i ∊ {1, 2, ..., n} selects approach xi resulting in approach profile x = (x1, ..., xn) then player i gets payoff
fi(x). Note that the payoff depends on the approach chosen. A approach x* ∊ S is a Nash equilibrium (NE) if no
unilateral variation in approach by any single player is
beneficial for that player, that is .
(2)
Step11: end for,
Step12: end if.
Therefore, to compute the rates of action profiles, it is
enough to compute the rate of actors and the occurrence
probabilities of the actions. The later is computed by
solving the game model and the former is computed as
follows.
Step 13: If users’ actions on the state path fail,With
probabilities as:
γ1(1), γ2(2),……… γn1(n1)
Step14: The state of those actions rate is computes:
n1
μ*,i1 = μ1* Σ
k=1
(1-γ1(k))
(3)
∀,
Step15: derive the game model.
The Eq. (2), said above in step 10 for computing the
Markov chains is to derive the game model.
The proposed Markov chains and Nash Equilibrium
for VANET security is shown in Fig. 1.
∈
,
≠
∗
: ( ∗,
∗
)≥ ( ,
∗
)
(4)
The game model is finally derived using MC and NE
successfully to improve the efficiency of VANET
security.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
901
Prabakaran M., A. R. Deepti, G. Mahadevan, R. M. S. Parvathy
IV.
Performance Evaluation
0.3
0.25
The proposed VANET security using NE and MC is
evaluated in an efficient manner using NS2 simulator.
Initially the experiment is evaluated with 100 nodes in
a flat area of 100×100 m2. The incoming time of each
nodes is measured in terms of seconds as t1, t2….tn.
Using MC, it derived the game model. Based on game
model, NE is applied for a secure communication. The
simulation results show that it takes 800 secs to travel
from source to destination by choosing the path
efficiently without any interruption. In the simulations,
two particular scenarios are studied: first one rural and
the other urban, which vary from each other in road and
traffic density. The penalty for the attacker is when both
players decide the identical road segment, are initially set
to r = 0.2 approximately interpreted as 20 percent loss.
From penalty, the equilibrium value (NE) (Eq. (5)) of
the game amounts to v = w = 0.4145. If the penalty is
decreased to 0.01, the value raises to 0.6560, i.e., a gain
for the attacker as predictable.
V.
0.2
probability 0.15
Attack
0.1
Defense
0.05
0
40
60
80
100
120
Vehicle Density
Fig. 2. Attack and Defense rate of VANET
security in rural scenario
TABLE II
ATTACK AND DEFENSE RATE OF VANET SECURITY
IN URBAN SCENARIO
Vehicle
Probability (urban scenario)
Density
Attack factor
Defense factor
10
0.05
0.09
20
0.16
0.19
30
0.09
0.1
40
0.14
0.17
50
0.27
0.3
Fig. 3 describes the attack and defense rate of VANET
security in an urban scenario using NE and MC. In urban
scenario, the vehicle density might be high. So when the
vehicle density increases, the probability of attack is high
and so the defense rate should also be high to show the
better performance. The attack and defense rate is measured in terms of probability factor. When using NE and
MC for VANET security in urban scenario, the attack
rate is very high and defense rate is also being high compared to an existing ACO for VANET security.
Table III Performance Rate of VANET security using
NE and NC. Fig. 4 describes the performance measure of
VANET security using NE and MC for game theoretic
approach. When the probability of attack for VANET security increases, the performance for securing the
VANET environment is also be high by using NE and
MC. Since the Nash Equilibrium is used for VANET security, the state of the vehicles are maintained stable and
it does not allow the intruders to intrude the vehicle in a
specific interval of time. Finally, it is observed that the
proposed MC and NE for VANET security efficiently
designed using NS2 simulator. The game model is derived based on user’s action profiles in the state transition
paths using Markov chain model. Based on game model,
the equilibrium state is derived and identified by the stable state of the game model.
Results and Discussion
Let us assume a 1000 × 1000 grid of a map where
nodes can travel randomly for vehicular network environment (VANETS). Normally, in the urban city, the vehicle density is high. These nodes attempt and communicate with each other depends on another random set of
connections of TCP or UDP. The systems use a simple
maliciousness model to inject malicious behavior into the
system. At this situation, NE and MC for VANET security perform well. The parameters are carried over here for
VANET security using NE and MC. All simulations are
run 20 times over and averaged. Table I describes the
probability of attack and defense factor based on vehicle
density in a rural scenario.
TABLE I
ATTACK AND DEFENSE RATE OF VANET SECURITY
IN RURAL SCENARIO
Vehicle
Probability (rural scenario)
Density
Attack factor
Defense factor
10
0.06
0.09
20
0.13
0.15
30
0.16
0.2
40
0.21
0.25
50
0.25
0.29
Fig. 2 describes the attack and defense rate of VANET
security using NE and MC. In rural scenario, the vehicle
density might be low. So when the vehicle density increases, the probability of defense rate for the attack is
high to show the better performance. The probability of
attack is also being low compared to urban scenarios.
The attack and defense rate is measured in terms of probability factor. When using NE and MC for VANET security, the attack rate is very low compared to an existing
ACO for VANET security. Table II describes the probability of attack and defense factor based on vehicle density in an urban scenario.
0.3
0.25
0.2
probability 0.15
Attack
0.1
Defense
0.05
0
10
20
30
40
50
Vehicle Density
Fig. 3. Attack and Defense rate of VANET security in urban scenario
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
902
Prabakaran M., A. R. Deepti, G. Mahadevan, R. M. S. Parvathy
TABLE III
PERFORMANCE RATE OF VANET SECURITY USING NE AND NC
VANET security using NE and MC
Probability of
Attack
Performance Rate
0.04
25
0.08
34
0.12
30
0.16
35
0.2
33
[7]
[8]
[9]
VANET Security using NE and MC
35
30
25
performance 20
15
rate
10
5
0
Authors’ information
0.04
0.08
0.12
0.16
Prabakaran M., was born in 1964 at Salem,
Tamilnadu, India. He recdeived his Master of
Computer Applications degree from Madurai
Kamaraj University, Madurai, Tamilnadu, India
in 2003, and Master of Philosophy degree in
2004 from Periyar University, Tamil nadu,
India. He was awarded with Master of
Engineering degree in 2007 from Anna
University, Chennai, India. Now, he is pursuing his Ph.D., under Anna
university, Chennai, under the guidance of Dr. Mahadevan. He has
published his research articles in various Indian and Foreign Journals.
His area of research is Mobile Adhoc Networks. He is much
interestingly carrying out his research in Vehicular Adhoc Networks.
He is life member of ISTE.
E-mail: Prabhakar.prof@gmail.com
0.2
probability of attack
VANET Security using NE and MC
Fig. 4. Performance measure of VANET security
VI.
Conclusion
To improve the game theoretic approach in VANET
security, this paper presents a new technique MC (Markov Chains) and NE (Nash Equilibrium). The MC here
presented an efficient game model based on the issues
raised in the VANET environment. The NE has been
computed efficiently based on the game model where issues over VANET have been decreased.
The security game outperforms the raw approach of
protecting locations equivalent to their methods by ignoring attacker behavior. The numerical analysis is based on
the sensible simulation data attained from traffic engineering systems. The simulation results showed that the
game theoretic approach for VANET security using MC
and NE is the best to use.
Dr. Mahadevan born in 1967 at Tanjore,
Tamilnadu, India. He received his Bachalor
degree of engineering in 1989 from
Bharathidasan University, Trichy ,Tamil Nadu,
India. His Master Degree in computer science
was awarded in 1994 and was awarded his
Ph.D. In 2002 by Tamil university, Thanjavur,
Tamil nadu, India. His area of Interest is
networks. He has wide experience for about 25 years in various levels
like lecturer, Research associate, Professor and principal.He has
Published 24 research articles so far in his areas of interest. He has
organized many international and national conferences. He is Life
member of IEEE, ISTE, IETE, CSI and various other prestigious
bodies. He has visited Dubai, Singapore, Muscut, Malaysia, Thailand
and Manila to give technical talk, key note address and research papers
presentation.
References
[1]
[2]
[3]
[4]
[5]
[6]
Trends in Information Science and Service Science (NISS), 2010
4th International Conference on 17 June 2010
Tansu Alpcan and Sonja Buchegger, “Security Games for
Vehicular Networks ”,IEEE TRANSACTIONS ON MOBILE
COMPUTING, VOL. 10,2011
Y. Do, S. Buchegger, T. Alpcan, and J.-P. Hubaux, “Centrality
Analysis in Vehicular Ad-Hoc Networks,” technical report, EPFL/
T-Labs, 2008.
Wagan, A.A. ; Mughal, B.M. ; Hasbullah, H. “VANET Security
Framework for Trusted Grouping Using TPM Hardware”,
Communication Software and NetWorks, 2010. ICCSN '10.
Second International Conference on 25, March 2010
Dr. Deepti, has completed her Ph.D., from
University of
Madras, Chennai. She is
presently working as Associate Professor at
Acharya Institute of Technology, Bangalore,
India. She completed her Master Degree in
Computer Applications from University of
Madras, Chennai, India. Her area of interest of
research is Cryptography and its security, image
processing, adhoc network and cloud computing.
Asif Ali Wagan, Bilal Munir Mughal & Halabi Hasbullah,
“VANET Security Framework for Trusted Grouping using TPM
Hardware”, 2010 Second International Conference on
Communication Software and Networks.
Behzad Zare Moayedi, Mohammad Abdollahi Azgomi, ” A Game
Theoretic Approach for Quantitative Evaluation of Security by
Considering Hackers with Diverse Behaviors ”, 2009 Eighth
IEEE International Conference on Dependable, Autonomic and
Secure Computing
Grossklags.J, N. Christin, and J. Chuang, “Secure or Insure? A
Game-Theoretic Analysis of Information Security Games,” Proc.
17th Int’l Conf. World Wide Web (WWW ’08), pp. 209-218,
2008.
Grossklags, N. Christin, and J. Chuang, “Predicted and Observed
User Behavior in the Weakest-Link Security Game,” Proc. First
Conf. Usability, Psychology, and Security (UPSEC ’08), pp. 1-6,
2008.
Mehraeen, S. ; Dierks, T. ; Jagannathan, S. ; Crow, M.L., “Zerosum two-player game theoretic formulation of affine nonlinear
discrete-time systems using neural networks”, Neural Networks
(IJCNN), The 2010 International Joint Conference on 14 October
2010
Samara, G. ; Al-Salihy, W.A.H. ; Sures, R., ‘Security issues and
challenges of Vehicular Ad Hoc Networks (VANET)’, New
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
903
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
A Novel Approach for Hiding Image Using Pixel Intensity
M. Shobana, P. Gitanjali, M. Rajesh, R. Manikandan
Abstract – Data communication technologies has leaped into a great level of acceptance
globally as it goes hand-in-hand with the other types of data in the carry plane of communication
providing every ounce of optimized data. When it has been put in to the public network. Data can
be coded as an image or audio or video using a cipher technique named steganography, where
image preferred as a cover object. Taking into account of the RGB channel of the given image
three kinds of algorithm are utilized in the method that exist earlier whereas with slight alteration
were rendered to the proposed system to improve embedding capability .Color channels were used
for designing three algorithm with intensity as its cornerstone. Analyzing the accomplishment of
three algorithms the most efficient one is considered. Copyright © 2013 Praise Worthy Prize S.r.l.
- All rights reserved.
Keywords: Non-Data Plane, Data Plane, Random Image Steganography
It is slower than spatial domain but it has very difficult
processing steps. They have a benefit of being more
secure and noise tolerant. The advantages and
disadvantages in the techniques of watermarking are
common to steganography also. So it can be concluded
that, the goal of steganography is to prevent an illegal
user to manipulate the secret data.The parameters which
are important to consider while implementing
steganography are given below:
(1) Impercibility: this is in the variance between the
original and the Stego object.
(2) Quantity: The secret information quantity of the
cover is equal to its performance. Here the challenge is
high capacity of message can affect the image’s quality
to a considerable level because quantity and impercibilty
are contrasting each other. Hence, to enlarge the size of
embedding bits by not affecting the quality of the cover
is the great challenge [5].
The existing techniques which is used developed so
far for implementing steganography are LSB embedding,
pixel value differencing, transform domain technique,
spread spectrum technique.
There are two scratch modules involved in
steganography is hiding a covert data in the cover and
retrieving the message from stego.
During the hiding module, the secrecy information is
embedded into the cover by varying specific area.
The extraction module permits to retrieve the secret
information from the stego-object. Various types of
cover images used in steganography are binary images,
grayscale images and color images. Due to its persistent
nature, steganography left noticeable mark within
medium object features.
This permits opponent to apply steganalysis
technology to expose covert conversation is carrying out
[3].
Nomenclature
LSB
MSE
PSNR
Least Significant Bit
Mean Square Error
Power Signal-to-Noise Ratio
I.
Introduction
On day-to-day life lots of users capture, store, and
transmit, and manipulate digital data [1]-[7]. All
multimedia contents (Digital audio, video, images, and
documents) are winged through Internet to their
corresponding receivers. Unfortunately, intruder choose
to intrude and get the content for themselves. Due to
access free digital media communication also provides
virtually unmatched opportunities to pirate copyrighted
material [7]. Steganography is an “invisible” or
“subliminal” in which two or more parties may
communicate. Whereas watermarking, used to hide the
copyrighted data using covert images. These are
subjected to illegal use of essential components of
applications commercial multimedia [6]. These are
reduced by using watermarking, cryptography and
steganography methodologies. It lessens the ability of the
intruder to extract the secret data illegally. There are
many methods for embedding the secret data (digital
watermarking) and hide the secret data (steganography).
Steganography, is further classified into spatial and
frequency domains. In spatial domain approach, the
secret data is hidden into least significant bits of pixels in
covert image. It is quick process but it is quite less secure
to steganalysis attacks [4]. In frequency domain approach
a covert image pixel into frequency based Coefficients
and embeds the covert message in it. Discrete Cosine
transform and Discrete Wavelet Transform etc is needed
for transform process.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
904
M. Shobana, P. Gitanjali, M. Rajesh, R. Manikandan
II.
should used to hold the message bits.
Existing System
The entire cover image will be split into red, green
and blue plane. In this paper, we have proposed three
new mechanisms for selecting the data and index planes,
In order to maximize the embedding bits in the cover
medium. There are two plane namely data plane and
index plane.
The data plane will holds the message in terms of bits.
The index plane is used to indicate which plane should
used to hold the message bits. Here the first bit indicates
red plane, the second bit indicates green plane and the
third bit indicates blue plane [2].
II.1.
III.1. 3-Bit Based Random Image Steganography
In this method, the non dataplane is selected by using
the all combination of three bits. The three bits value is
used here is binary equivalent of 0, 1, 2, 3, 4, 5, 6 and 7.
For each pixel, a three bit value is assigned.
Here the first bit indicates red plane, the second bit
indicates green plane and the third bit indicates blue
plane. In first case, in these three bits, any two of the bits
are common and it’s different from the remaining one bit
then the plane corresponding to the place of that different
bit will not hold plane and the remaining two planes are
said to be data planes. In second case, all the values of
the three bits are identical here red plane will not
message bits.
The Three Methods Used in Existing Method
In first method, the index channel is selected by using
the all combination of three bits. For each pixel, a three
bit value is assigned. In first case, in these three bits, any
two of the bits are common and it’s different from the
remaining one bit then the plane corresponding to the
place of that different bit will act as the index plane and
the remaining two planes are said to be data planes. In
second case, all the values of the three bits are identical
here red plane is act as index plane as default [1].
In second method, 3-bit LFSR will generate random
bits for every pixel in the cover object. In the first case
any of one bit is differ then its corresponding plane act as
index plane and the other two same bits will act as the
data plane. In second case all three bits are same then red
plane act as the index plane [1].
In third method, all the three color planes will be
converted in to binary values. For each pixel in the
image, the plane which has the minimum number of ones
in its MSB will act as index plane and the other two color
planes are considered as data planes [1].
After determining the index and data channel using
any of the method which is specified above then follow
these steps: For each index plane its two LSB is
considered.
If the value of the LSB is 00 or 11 then the embedding
process will be on both data plane or if the value is 01
then data will hide in data plane 2 alone or if the value is
10 then data will hide in data plane 1 alone.
The number of bits gets embed in the data plane is
equal to the number of ones in its MSB of the data plane.
These above steps are similar for all the three methods
[1].
III.1.1. LFSR Based Image Steganography
In this method, 3-bit LFSR will generate random bits
for every pixel in the cover object. In the first case any of
one bit is differ then its corresponding plane will not
message bits and the other two same bits will act as the
data plane. In second case all three bits are same then red
plane will not hold message bits.
III.2. Pixel Intensity Based Image Steganography
In this method, all the three color planes will be
converted in to binary values. For each pixel in the
image, the plane which has the minimum number of ones
in its MSB will not hold message bits and the other two
color planes are considered as data planes.
Compared to method 1 and method 2 in the proposed
work, this method will help us to embed more number of
message bits in the cover medium.
IV.
Algorithm
IV.1. 3-Bit Based Random Image Steganography
1) Embedding method
Variables used: Covert Image (D), Carrier image(C)
as inputs, Stego-image (I) with covert image embedded
in it as output.
1. Convert secret image pixels to binary
2. Isolate the carrier image to Red, Green and Blue
planes.
3. When every bit traversed in D perform the steps given
below
3.1 For each bit in D, assign an three bits value of (0…7),
starts from 0 increment the value by 1 until it reaches 7,
if it reach again go back to 0 and repeat increment
3.1.1 If one of the three bits is 1 and the other two bits
is 0 then according to the position of the’1’ bit one nondata plane and two data plane is selected:
-if 1 is in first bit position then Red plane act as
the non-data plane
III. Proposed System
The entire cover image will be split into red, green
and blue plane. In this paper, three new mechanisms for
selecting the data and index planes has been proposed, in
order to maximize the embedding bits in the cover
medium.
There are two plane namely data plane and index
plane. The data plane will holds the message in terms of
bits. The index plane is used to indicate which plane
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
905
M. Shobana, P. Gitanjali, M. Rajesh, R. Manikandan
-if 1 is in second bit position then Green plane
act as the non-data plane
-if 1 is in third bit position then Blue plane act as
the non-data plane
3.1.2 If one of the three bits is 0 and the other two bits
is 1 then according to position of the ‘0’ bit one non-data
plane and two data plane is selected
-if 0 is in first bit position then Red plane act as the
non-data plane
-if 0 is in second bit position then Green plane act as
the non-data plane
-if 0 is in third bit position then Blue plane act as the
non-data plane
3.2 If it is 000 or 111 value then Red plane is selected as
the default non-data plane
4. For every pixel traversed in Non-data plane perform
the steps given below:
Let g1=1’s count in dataplane1 (MSB)
g2= 1’s count in dataplane2 (MSB)
Hide g1 bits and g2 bits of message in data plane1 and
data plane 2 respectively
-If all secret data is embedded then
Goto next step
Else
Repeat this step
5. Save the resulting stego Image
the steps given below
Let g1=no of 1 in MSB of dataplane1
g2= no of 1 in MSB of dataplane2
Embed g1 bits and g2 bits of message in data plane1
and data plane 2 respectively
-If all secret data is embedded then
Goto next step
Else
Repeat this step
7. Save the resulting stego Image
2) Extraction method
Variables used: Stego Image (I), key (k) as input and
Covert image (D) as output.
1. Stego image I is splitted into Red, Green and Blue
Planes.
2. Message (image) size is given as the key (k)
3. Perform the step 3 and step 4 which is given in the
embedding side for g times to get non-data and data
planes
4. For every pixel traversed in Non-data plane perform
the steps given below:
Let g1 = 1’s count in dataplane1 (MSB)
g2= 1’s count in dataplane2 (MSB)
Extract g1-bits and g2-bits from current pixel of
dataplane1 and dataplane2 respectively
5. Save the result as Secret image (D).
2) Extraction method
Variables used: Stego Image (I), key (k) as input and
Covert Image (D) as output.
1. Stego image I is splitted into Red, Green and Blue
Planes.
2. Message (Image) size is given as the key (k)
3. Perform the step 3 which is given in the embedding
side for k times to get non-data and data planes
4. For every pixel traversed in Non-data plane perform
the steps given below:
Let g1 = 1’s count in dataplane1 (MSB)
g2= 1’s count in dataplane2 (MSB)
IV.3. Pixel Intensity Based Image Steganography
1) Embedding method
Variables used: Covert image (D), Carrier image(C)
as inputs, Stego image (I) with covert image embedded
in it as output.
1. The secret image pixels is converted into binary
2. The carrier image is splitted into Red, Green and Blue
3. Consider the plane value which has minimum number
of 1 in the MSB as non-data plane
4. For every pixel traversed in Non-data plane perform
the steps given below:
Let g1=1’s count in dataplane1 (MSB)
g2= 1’s count in dataplane2 (MSB)
Hide g1 bits and g2 bits of message in data plane1 and
data plane 2 respectively
-If all covert message is embedded then
Goto next step
Else
Repeat this step
5. Save the resulting stego Image
Extract g1-bits and g2-bits from current pixel of data
plane1 and dataplane2 respectively
5. Save the result as Secret Image (D)
IV.2. LFSR Based Image Steganography
1) Embedding method
Variables used: Covert Image (D), Carrier image(C)
as inputs, Stego image (I) with covert image embedded
in it as output.
1. Convert secret image pixels into binary
2. Isolate the carrier image into Red, Green and Blue
planes.
3. Initialize the 3bit LFSR
4. Generate 3-bit value of LFSR for the pixels present in
cover image
5. On the basis of LFSR value non-data and data plane is
selected
6. For every pixel traversed in Non-data plane perform
2) Extraction method
Variables used: Stego Image (I) as input and Covert
image (D) as output
1. Stego image I is splitted into Red, Green and Blue
Planes.
2. Message size is given as the key (k)
3. Perform the step 3 which is given in the embedding
side for k times to get non-data and data planes.
4. For every pixel traversed in Non-data plane perform
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
906
M. Shobana, P. Gitanjali, M. Rajesh, R. Manikandan
the steps given below
Let g1 = 1’s count in dataplane1 (MSB)
g2= 1’s count in dataplane2 (MSB)
Extract g1-bits and g2-bits from current pixel of data
plane1 and dataplane2 respectively
5. Save the result as Secret Data (D)
V.
 R2 
PSNR  10 log10 

 MSE 
where M and N are rows and columns of the matrix of the
image’s pixels and R denotes the maximum error occurs
in the stego image.
Results and Discussion
To investigate the efficiency for the above three
algorithm can be represented using two parameters MSE
and PSNR. For example four 256×256 images such as
Lena, baboon, Gandhi, temple as cover images.
The secret image used here is sastra logo which is
165×165 images. As a result, four stego images, has
obtained and computed the PSNR and MSE value for the
four stego images using the following equations:
MSE 
(2)
2
1 m 1 n 1
 I  i, j   K  i, j  
mn i 0 j 0

Fig. 1. Original images
(1)
Fig. 2. Stego images
TABLE I
COMPARISON IS MADE BETWEEN THE MSE AND PSNR FOR 3-BIT BASED RANDOM IMAGE STEGANOGRAPHY
Plane1
Plane2
Plane3
Cover image
MSE
PSNR
MSE
PSNR
MSE
PSNR
Lena
2.0588
44.9947
1.1992
47.3420
0.9015
48.5810
Gandhi
2.8565
43.5725
1.8957
45.3530
1.5820
46.1387
Baboon
1.6638
45.9198
0.9338
48.4283
1.1607
47.4837
Temple
1.1049
47.6975
0.7770
49.2267
1.0925
47.7465
TABLE II
COMPARISON IS MADE BETWEEN THE MSE AND PSNR FOR LFSR BASED IMAGE STEGANOGRAPHY
Plane1
Plane2
Plane3
Cover image
MSE
PSNR
MSE
PSNR
MSE
Lena
1.7921
45.5972
1.3610
46.7921
0.9875
Gandhi
2.4952
44.1598
1.9977
45.1225
1.6575
Baboon
1.4276
46.5848
1.0071
48.1000
1.2496
Temple
0.9802
48.2178
0.8364
48.9066
1.1706
PSNR
48.1854
45.9364
47.1630
47.4468
TABLE III
COMPARISON IS MADE BETWEEN THE MSE AND PSNR FOR PIXEL INTENSITY BASED IMAGE STEGANOGRAPHY
Plane1
Plane2
Plane3
Cover image
MSE
PSNR
MSE
PSNR
MSE
PSNR
Lena
2.1118
44.8843
1.2846
47.0431
1.0811
47.7921
Gandhi
3.3397
42.8937
2.0494
45.0145
2.0339
45.0476
Baboon
2.0520
45.0090
1.1176
47.6478
1.5400
46.2557
Temple
1.1718
47.4423
0.8916
48.6290
1.2683
47.0987
VI.
Conclusion
References
[1]
Thus the secret image is hidden in the cover object
(image) using three algorithm of random image
steganography. Using this algorithm 165×165 image is
embedded in the 256×256 image with good PSNR and
MSE value.
This three algorithm can be further enhanced to hide
secret image which is having the same size of cover
image with low error rate. Through manipulating the
pixels at the RGB layer we can assure high security to
these methods.
[2]
[3]
[4]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
M.Shobana , R.Manikandan , Efficient Method for Hiding data by
pixel intensity , International Journal of Engineering and
Ttechnology(IJET), vol .5 n.1, Feb-March 2013, pp. 75-81.
Amirtharajan R, Mahalakshmi, V, Sridharan, N, Chandrasekar.
M,Rayappan.J.B,Modulation of hiding intensity by channel intens
ity - Stego by pixel commando,
International Conference on
Computing, Electronics and Electrical Technologies (ICCEET)
2012.
R.Amirtharajan,Dr. R. John Bosco Balaguru, Tri-Layer Stego for
Enhanced Security – A Keyless Random Approach , Internet
Multimedia
Services
Architecture
and
Applications(IMSAA),December 2009,pp.1 – 6.
Kang Leng Chiew, Josef Pieprzyk, Blind Steganalysis: A
Countermeasure for Binary Image Steganography, conference on
International Review on Computers and Software, Vol. 8, N. 4
907
M. Shobana, P. Gitanjali, M. Rajesh, R. Manikandan
[5]
[6]
[7]
Availability, Reliability and Security(ARES),Feb -2010,pp. 653 –
658.
Fabien A. ,P. petitcolas, Ross .J. Anderson, and Markus G. Kuhn,
Information Hiding—A Survey, proceeding of the Institute of
Electrical and Electronics Engineers (IEEE) ,vol. 87 n. 7, July 1999,pp. 1062 – 1078.
M. Shirali-Shahreza, S. Shirali-Shahreza, Text Steganography
Using Ligatures, (2008) International Review on computers and
software (IRECOS), 3 (4), pp. 418-423.
M. Shirali-Shahreza, Steganography in Artistic Websites, (2007)
International Review on computers and software (IRECOS), 2 (1)
pp. 25-29.
M. Rajesh obtained the degree of
B.Sc(Electronics and Computer Science) in
SASTRA University, India .He obtained
M.Sc(Electronics) in St.Joseph Trichy (TN). He
is currently pursuing M.Tech (VLSI Design),
SASTRA University. He is interested in the area
of partitioning in VLSI Design.
R. Manikandan is currently working as a
Senior
Associate
Professor,
SASTRA
University, Thanjavur (TN) India. He obtained
B.E (Computer and science Engineering) in
Bharathidasan University and then finished
M.Tech (VLSI design) in SASTRA university.
He has published more than 20 papers in various
fields in Computer Science.
Authors’ information
M. Shobana obtained the degree of B.Tech
(Computer Science and Engineering) in
SASTRA University, India. She is currently
Pursuing M.Tech (VLSI Design) in SASTRA
University, Thanjavur (TN), India. She is
interested in the area of cryptography and
steganography.
P. Gitanjali obtained the degree of B.Tech
(Information Technology) in Trichy Anna
University, India. She is currently pursuing
M.Tech (VLSI Design), SASTRA University,
Thanjavur (TN), India. She is interested in the
area of cryptography and steganography.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
908
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
An Optimal Architecture for Dynamic Web Service
Discovery and Selection
Abdallah Missaoui
Abstract – The composition of a set of Web services is an important aspect of Web services
technology. This allows solving several types of problems by combining available services
elementary and ordering them to best meets the requirements of problems. Automatic composition
gives us flexibility of selecting best candidate services at composition time satisfying QoS
requirements; This would require the user to define constraints for selecting and composing
candidate Web services. In this paper, we present QoS broker - based architecture for web
services. From the model architecture which allows the management of QoS that we have
previously proposed, we focus on how we can use web service with a technique supporting QoS
under dynamic web service composition. The main goal of the architecture is to support the client
in selecting web services based on his/her required QoS. We also present an efficient method to
predict QoS of Web service and to select the suitable web service based on the consumer’s
requirements along with QoS. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Web Service, Architecture, QoS, Neuro-Fuzzy
integrating QoS criteria and also the functional
requirements. Also, we present a technique for dynamic
composing services integrate the qos management’s and
ameliorate service providers’ selection.
The rest of this paper is organized as follows. Section
2 presents basic concepts of Web service. Section 3
presents some related work. Section 4 discusses
extensions to Web service standards for QoS
management. In section 5, we describe our proposed Web
Service architecture for dynamic web service discovery.
Section 6 proposes a method to predict the QoS value
by using neuro-fuzzy model. Section 7 closes the paper
with contributions and future work.
Nomenclature
QoS
µM
Q
wk
Quality of service
Membership function (MF)
A vector of QoS feedbacks
The weighting factor
I.
Introduction
The increasing number of Web service providers has
encouraged research in service description and discovery.
All clients of Web service need tools to search for
appropriate services all over the world.
This poses challenges not only in discovery process
but also in assuring good-quality information for
published services. Universal Description, Discovery and
Integration is a platform-independent, Extensible Markup
Language (XML)-based registry by which businesses
worldwide can list themselves on the Internet, and a
mechanism to register and locate web service
applications.
However, UDDI supports Web service description,
selection and discovery based only on functional
properties. Thus, consumer requirements may include
functional properties of Web services but also nonfunctional properties. Therefore, the discovery process
depends on the capability to define and to match QoS
information’s and demands, in addition to functional
properties. This paper describes an architecture model of
web service which insures the quality of the invoked
services. This model proposes a new method for predict
qos information’s of Web service providers and new
methods for publication and discovery of the web service
II.
Web Services
A Web service is an electronic service identified by a
URI (Uniform Resource Identifier). XML (eXtensible
Markup Language) [1] standards are used to specify
service interfaces and to invoke services through the
Web. Web service technology comprises three basic
standards:
• Web Services Description Language (WSDL): A
service interface definition is an abstract or reusable
service definition that may be instantiated and
referenced by multiple service implementation
definitions. Think of a service interface definition like
an IDL (Interface Definition Language), Java
interface, or Web service type. This allows common
industry standard service types to be defined and
implemented by multiple service implementers [2].
• Universal Description Discovery & Integration
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
909
Abdallah Missaoui
(UDDI) [3] offers a service registry that supports the
publication and discovery of service providers, the
Web services they make available and the technical
interfaces that service consumers may use to bind and
interact with the services.
• Simple Object Access Protocol (SOAP): The
messaging protocol currently used by web services is
SOAP. SOAP is designed to enable separate
distributed computing platforms to interoperate [4]
The actual and well established model of service web
architecture (Fig. 1) is composed of three principal
entities [5], [6], [7]:
• The service provider: it answers to the demand and
return the request results. The provider describes the
service by a WSDL file which represents the provider
interface and must be published in registers of type
UDDI;
• The registers UDDI: they permit to reference the
service. The register is organized according to six
types of data;
• The service requestor: This is any consumer of the
web service. The requestor invokes an existing web
service by opening a network connection and sending
an XML-SOAP.
The second theme treats the quality attached to the
cost and the management of the configuration [11]. The
provider must assure the transactions and guaranty the
operations. Many researches [12], [13], [14] have studied
QoS issues to improve two processes of discovery and
selection of services. Several QoS-aware web service
selection mechanisms have been developed in recent
years in order to perform the web service composition
and to improve performance applications based on
services. This mechanisms’ main objective is how to
properly select a set of providers that most satisfy the
constraints defined by the user in his business processes.
Menascé studies the problem of finding services that
minimize the total execution time. It presents an
optimized heuristic algorithm that finds the optimal
solution without exploring the entire solution space. The
solution provided in [15] covers only the important case
of execution constraints but not all QoS properties.
Pfeffer proposed a fuzzy logic based model for
representing any kind of non-functional service
properties. This representation of user preferences
enables the fast evaluation of the requested service
composition by a fuzzy multiplication of the service
composition properties. Thus service composition’
properties are measured during or after execution [16].
III. Related Work
IV.
For all web services, it’s essential to be able to specify
the request of the QoS before the invocation of the web
service mostly for the applications in the domain of Ebusiness. These requirements of QoS can be classified
under many themes according to their context.
The quality of service covers many functions for the
working of web service such as the execution time,
availability, security and the transactions. In the
following section, we will define the different aspects of
QoS by arranging them by theme. The first one concerns
the quality of service attached to the execution time.
Many studies have been interested to this type of
quality of service [8], [9], [10]. These qualities act
directly on the operations progress and determine the
execution time.
They include availability, accessibility (it can be
expressed like a probability measure denoting the success
rate or the chance of a successful instance of service to a
point in time), the treatment capacity, the performance (it
is evaluated by a measure of the execution speed of a
request from the service which depend on the execution
time and the latency time) and the robustness.
discovery
Service
consumer
Service
registry
binding
Quality of Service Constraint
QoS is a grouping of some non-functional
characteristics. QoS publication helps selection between
services with the similar functionality. The publication of
QoS properties enables service composition based on
QoS. They also make possible the evaluation of
alternative execution paths for process adaptation.
Additionally, QoS can be used as a basis for cost
models that drive process optimization. Moreover, QoS
prediction helps attaining quality levels expected by
consumers. It also allows customers to detect problems,
accommodate change and balance cost/performance
ratios. Table I defines main QoS attributes [11], [13],
[17].
Most of the works presented in section 3 do not
consider performance evaluation of web services and
scalability issue while the number of clients is
continuously increasing and their requirements are
always changing. In the next section, we present the
design of the proposed QoS broker-based architecture.
We describe the new process of Web service selection
and the QoS verification and certification functions.
publication
V.
Architecture Description
The control and the management of the attributes of
the service quality help to assure the good progress of the
operations, and to reach the levels of QoS required by the
consumers and consequently, we maximize the profits.
Besides the traditional functionalities of services, the
description and the publication of QoS, allows the
consumer to choose the more suitable provider.
Service
provider
Fig. 1. Web service architecture
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
910
Abdallah Missaoui
QoS Attribute
Response time
Availability
Concurrency
Accessibility
Throughput
Reliability
Price
Security Level
TABLE I
WEB SERVICE QOS CRITERIA
Description
The interval between a user-command and the
receipt of an action, result, or feedback from the
service;
Availability is the percentage of time that a
service is available for use;
Represents the maximum ability to support
concurrent transactions;
Accessibility represents the degree that a system
is normatively operated to counteract request
messages without delay;
It means the max number of services that a
platform providing Web services can process for
a unit time;
Reliability is the quality aspect of a Web service
that represents the degree of being capable of
maintaining the service and service quality. The
number of failures per month or year represents a
measure of reliability of a Web service;
Represents the money that the customer should
pay for this service. It is always associated with
the value of the service’s functionality, i.e. The
more a service costs, the more complicated
functions it provides;
Represents the security level of a service. It
includes the existence and type of authentication
mechanisms the service offers, confidentiality
and data integrity of messages exchanged, nonrepudiation of requests or messages, and
resilience to denial-of-service attacks.
•
The selection system: a list of services will be
received by this system from the UDDI registers; the
role of the selection system is to classify the services
according to their qualities asked by the consumer.
• The certification system: its role is to predict or verify
the QoS declarations given by the supplier.
• The requests filter: it analyses the received requests
and extracts all tags of the document.
• The interface filter: it examines the received files
WSDL and extracts all QoS tags of the document.
Web services need to be defined in a consistent
manner so that they can be discovered by and interfaced
with other services and applications. The Web Services
Definition Language (WSDL) is a W3C specification
providing the foremost language for the description of
Web service definitions. Its define services as collections
of networks endpoints or ports.
B. Chan proposes to extend the WSDL with an
optional attribute in order to control the level of QoS.
The extension enables the system to support partial
request satisfaction by a priority attribute controlling the
priority of WSDL-Request and the corresponding subrequest. By exploiting the studies of Chan, the service
supplier sends the WSDL file for his publication to the
UDDI register.
This WSDL file contains in addition to the basic tags,
a new tag describing the features and the specifications
of the QoS offered [18]. Before treating this by the
interface filter, the system of certification verifies the
declarations of QoS given by the supplier. Once the
service is registered, it can be invoked by all the clients.
On the other hand, the SOAP request sent by the
customer is a request proposed by KangChan Lee and al
[19]. It integrates requests concerning quality in addition
to functionalities. This request will be analyzed and sent
to the UDDI register that answers by a file containing the
list of the services without any classification.
Next, the system of selection makes an association
between the requests concerning quality of service and
the available demands. Such analysis will be made in the
database using XQuery requests [20]. It classifies the
services found according to an order: The services that
answer the user's requirements better will be classified as
the first. The services that don't assure the quality of
service or that doesn't answer to the required demands
will be eliminated. Finally, the system sends a SOAP
answer to the consumer.
The customer of service uses the web services
applications. The quality of service requested by him is a
combination of qualities and proprieties of service.
We propose a web service architecture that takes into
account the management of the service qualities based on
the present functional standards. The addition of a new
layer between the classic registers UDDI on the one side
and the supplier and the consumer of service on the other
side, permits the management of the qualities and
improves the process of web services selection. This new
layer allows keeping the present registers UDDI. This
layer contains four systems to communicate with the
three entities which are the provider, the client and the
registers.
We will take among the two following scenarios:
• The publication of the web services and thereafter the
discovery and the invocation according to the classic
methods using the present standards but without
assuring the QoS;
• The publication of the service with the proposed QoS
and the discovery according to the functional and
non-functional aspects of the services. For the present
web services architecture, the problem resides in the
difficulty to modify this architecture to support the
QoS.
We propose to add a system that will communicate by
itself with the different entities (supplier, consumer and
UDDI registers) by assuring the QoS management while
keeping the functional present methods. It allows
publishing the web services with or without the
management of QoS in the same UDDI register. The
proposed architecture present new entities:
Fig. 2. Extended Web service architecture
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
911
Abdallah Missaoui
VI.
We assume that the fuzzy inference system under
consideration has n inputs Q1, Q2,…,Qn (which are one
service attributes). Each input has five linguistic terms,
for example, the input Q1 possesses the terms {M11,
M12,…,M15}.
For each input Qi, we have defined linguistic
expressions
Li={Very Poor(vp), Poor(p), Medium(m), Good(g), Very
Good(vg) }
The common fuzzy if-then rule has the following type:
Rule 1: If (Q1 is M11) and (Q2 is M21) and … and (Qn is
Mn1) then f1(Q1, Q2,…, Qn)
We denote the output of the ith node in layer k as Ok,i.
Figure 4 shows the schematic diagram of the ANFIS
structure, which consists of five layers.
Evaluation for Quality of Service
The core idea of this certification system is that
participating Web service is able to evaluate each other
on the basis of evaluating results to produce scoring rate
for consumer and provider as well as QoS reports.
Certification system is able to exploit the QoS reports
processed by the QoS prediction algorithm, which act as
a decision-making criterion.
In order to predict the quality of service of a set of
web services, we collected the real delivered value of
QoS feedbacks of response time for a certain service over
a time period, then we use these data to predict its future
quality performance, and in conjunction with service
ranking and selection to discover the best suitable Web
service for service consumer.
The service Quality is defined as Qij. Where i is the
non-function property of Web service and j is the time at
which the service quality data are acquired.
For example, we suppose that Q1={Q11,Q12,…,Q1P} is
a vector of QoS feedbacks of response time for a certain
service over a time period
We aim to solve the selection of web services in a
global and flexible manner by introducing a neuro-fuzzy
way. For this purpose, we have developed a neural-fuzzy
system based on the Sugeno Approach [21]. This is
known as the ANFIS (i.e., Adaptive Neuro-Fuzzy
Inference Systems) [20]. We assume that semantic
matchmaking has taken place to identify functionally
equivalent services. When several of them are available
to perform the same task, their quality aspects become
important and useful in the selection process [22].
An ANFIS is a multi-layered feed forward network, in
which each layer performs a particular task. The layers
are characterized by the fuzzy operations they perform.
Figure 4 describes the global architecture of this neuralfuzzy system. It shows a n-input, type-5 ANFIS. Two
membership functions are associated with each input.
Layer 1: Every node i in this layer transform the crisp
values to a fuzzy one:
O1,i   M1i  Q1  for i  1, 2,...,5 and
O1,i   M 2 i  Q2  for i  1, 2,...,5 and, …, and
O1,i   M ni  Qn  for i  1, 2,...,5
where QK is the input to node K and Mki ( k  1,...,n and
i  1,...,5 ) is a linguistic label (very poor, poor, fair,
good, very good) associated with this node. In other
words, O1,i is the membership grade of a fuzzy set:
M  M11 ,...,M15   M 21 ,...,M 25   ...  M n1 ,...,M n5 
and it specifies the degree which the given input QK
( k  1,...,n ) satisfies the quantifier M.
We use the following generalized Bell function as the
membership function (MF):
1
M  Q  
1
Q  ci
ai
2bi
where ai, bi and ci are the parameters set of MF. The
bell-shaped function varies depending on the values of
these parameters where the parameters a and b vary the
width of the curve and the parameter c locates the center
of the curve. The parameter b should be positive. The
parameters in this layer are referred to as premise
parameters.
Fig. 3. Evaluating QoS of Web service
Layer 2: Every node in this layer is a fixed node
labeled ∏. The weighting factor, wk, of each rule is
calculated by evaluating the membership expressions in
the antecedent of the rule. This is accomplished by first
converting the input values to fuzzy membership values
by utilizing the input membership functions and then
applying the and operator to these membership values.
Fig. 4. Anfis Network
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
912
Abdallah Missaoui
The and operator corresponds to the multiplication of
input membership values:
approach that reduces the complexity of matching user
requests according to the specified functional and QoS
properties.
This model can be seen as a contribution towards a
more complete solution for web service composition
integrating fully QoS features.
O2 ,i  wi   M1i  Q1   M 2 i  Q2  ... M ni  Qn 
Each node output represents the firing strength of a
rule.
Layer 3: Every node in this layer is a fixed node
labeled N. The function of the fixed node is used to
normalize the input firing strengths:
References
[1]
[2]
wi
O3,i  wi 
n
i  1,...,n
[3]
 wj
j 1
[4]
[5]
Layer 4: Every node in Layer 4 is a parameterized
function, and the adaptive parameters are called
“consequent parameters”.
The node function is given by:

O4 ,i  wi fi  wi p1i Q1  p2i Q1  ...  pni Q1  pni 1
[6]

[7]
Layer 5: The single node in this layer is a fixed node
labeled ∑, which computes the overall output as the
summation of all inputs:
[8]
[9]
n
n
O5 ,1 
 wi f
 wi f  i 1n
i 1
 wi
[10]
i 1
[11]
[12]
Thus, the ANFIS network is constructed according to
the TSK fuzzy model. This ANFIS architecture can then
update its parameters according to the backpropagation
algorithm [23], [24].
This algorithm minimizes the error between the output
of the ANFIS and the desired output.
The QoS value was predicted using the neuro-fuzzy
method, whose input parameters were the evaluation
values of one QoS-property for a certain service over a
time period. It allows automating the selection process in
the dynamic composition of services.
[13]
[14]
[15]
[16]
[17]
VII.
Conclusion
[18]
The integration of the QoS properties is necessary for
the realization of the web service technology. Due to the
increasing reputation of Web services technology and the
potential of dynamic service selection, several service
providers are now providing similar services. QoS is a
decisive reason to distinguish functionally similar Web
services providers.
The main problem of current selection process is the
nonexistence of a tool that considers QoS properties for
the web service selection. In this paper, we propose an
[19]
[20]
[21]
[22]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
W3C. Extensible markup language (xml) 1.0 (second edition).
http//www.w3.org/TR/2000/REC-xml-20001006.2000.
E. Christensen, F. Curbera, G. Meredith, S. Weerawarana: Web
Services Description Language (WSDL) 1.1,15 March 2001.
http://www.w3.org/TR/wsdl.
D. Beringer, H. Kuno, and M. Lemon: Using WSCL in a UDDI
Registry 1.02, UDDI Working Draft Technical Note Document,
May
5,
2001.
http://www.uddi.org/pubs/
wscl_TN_forUDDI_5_16_011.doc.
Soap specifications. http://www.w3.org/TR/soap/.
S. Weerawarana and al., Web Services Platform Architecture:
SOAP, WSDL, WS-Policy, WS-Addressing, WS-BPEL,
WSReliable Messaging, and More, Prentice Hall, 2005.
Li, B., Zhang, X., Zhu, J., Design and implementation of a selfadaptive workflow management framework based on BPEL,
(2012) International Review on Computers and Software
(IRECOS), 7 (6), pp. 3251-3261.
N. Kakanakov, M. Shopov, I. Stankov, G. Spasov, Web Services
and Data Integration in Distributed Automation and Information
Systems in Internet Environment, (2006) International Review on
Computers and Software (IRECOS), 1 (3), pp. 194-201.
M Alrifai, T Risse, W Nejdl, A hybrid approach for efficient Web
service composition with end-to-end QoS constraints, ACM
Transactions on the Web (TWEB), 2012.
Q Tao, H Chang, C Gu, Y Yi, A novel prediction approach for
trustworthy QoS of web services, Expert Systems with
Applications, Elsevier, 2012.
Z. Zheng, H. Ma, M. R. Lyu and I. King. QoS-Aware Web
Service Recommendation by Collaborative Filtering, IEEE T.
Services Computing, pp. 140-152, 2011.
D.A. Menasce, “QoS issues in Web services”, IEEE Internet
Computing, 2002.
D Guinard & all, Interacting with the soa-based internet of
things: Discovery, query, selection, and on-demand provisioning
of web services, Services Computing, 2010.
S Wang, Q Sun, F Yang, Towards Web Service selection based
on QoS estimation, Journal of Web and Grid Services, 2010.
M Alrifai, D Skoutas, T Risse, Selecting skyline services for
QoS-based web service composition, conference on World wide
web, 2010.
D. A. Menascéa, E. Casalicchiob, V. Dubeyc, “On optimal
service selection in Service Oriented Architectures”, Performance
Evaluation Journal, Elsevier, 2009.
H. Pfeffer, S. Krüssel, S. Steglich, “A Fuzzy Logic based Model
for Representing and Evaluating Service Composition
Properties”, the Third International Conference on Systems and
Networks Communications, 2009.
Y. Zhang, Z Zheng, MR Lyu, Wsexpress: A qos-aware search
engine for web services Web Services (ICWS), 2010.
Chan, B.Y.L. Ng, V. Chan, S., Quality guarantee for WSDLbased services. Computer Supported Cooperative Work in
Design, 2005.
Kangchan, L., Jonghong, J., QoS for Web Services:Requirements
and Possible Approaches. W3C Working Group Note, 2003
Boag, S., XQuery 1.0: An XML Query Language,
http://www.w3.org/TR/xquery/
O. Nelles, A. Fink, R. Babuka, M. Setnes, “Comparison of two
construction algorithms for Takagi-Sugeno fuzzy models”,
International Journal of Applied Mathematics and Computer
Science, pp. 835–855, 2000.
H. Boudouda, H. Seridi, Hybrid Algorithm for Unsupervised
Automatique Classification, (2008) International Review On
Computers and Software (IRECOS), 3 (3), pp. 296-301.
International Review on Computers and Software, Vol. 8, N. 4
913
Abdallah Missaoui
[23] JSR. Jang, ANFIS: Adaptive-network-based fuzzy inference
system, Systems, Man and Cybernetics, IEEE Transaction, 1993.
[24] P. Werbos. “The roots of the backpropagation: from ordered
derivatives to neural networks and political forecasting”. John
Wiley and Sons, Inc, New York, 1993.
Authors’ information
LR-SITI-ENIT, Tunis, Tunisia.
Abdallah Missaoui was born in Tunisia. He
received the Phd. degree from the National
School of Engineer of Tunis (ENIT- Tunisia), in
2011. He is currently an Assistant Professor in
the department of Computer Science at ISI
medenine (ISImed) and member of SITI
Laboratory (LR-SITI-ENIT). His research
interests include Web services, formal method,
formal verification, model checking, Petri nets, quality of service.
E-mail: abdallah.missaoui@enit.rnu.tn
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
914
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
The Implementation of Plagiarism Detection System
in Health Sciences Publications in Arabic and English Languages
K. Omar, B. Alkhatib, M. Dashash
Abstract – There are many available algorithms for plagiarism detection in natural languages.
Generally, these algorithms belong to main categories including plagiarism detection algorithms
which is based on fingerprint and also plagiarism detection algorithms which is based on content
comparison that contains string matching and tree matching algorithms. Available systems of
plagiarism detection usually use specific types of detection algorithms or mixture of detection
algorithms to achieve effective detection systems (fast and accurate). On rhetorical structure
theory a system for plagiarism detection in Arabic and English health sciences publications has
been developed using Bing search engine; Conclusion, all health sciences manuscripts should be
tested through plagiarism detection system before accepting them for publications. Copyright ©
2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Health Sciences Plagiarism, Natural Language Processing, Plagiarism Detection
Nomenclature
R.S.T.
cue-phrases
II.
Rhetorical structure theory
The sentences connectors
I.
Related Work
Plagiarism detection algorithms are classified into
fingerprinting algorithms which generate code for each
file that identify only one file.
There are several ways to generate the fingerprint, and
the most famous fingerprint algorithm is winnowing [3],
and the most effective fingerprint algorithms which
based on sentences fingerprints [4], and there is a
fingerprints algorithms basing on popular attribute
counting techniques for files [5]. And Content
comparison algorithms which include string matching
and tree matching algorithms. In string matching
algorithms have some weakness points, and the most
important one is “split match problem”[6]. This problem
occurs when the algorithm try to determine the shortest
string length to match when comparing between string
series in files, where appropriate value of this parameter
in programming code files is (20-10) words. In the case
of natural languages texts, the appropriate value is (6-4)
words. In Tree matching algorithms, the main idea of
these plagiarism detection algorithms is to analyze text
files and constructing trees representing these files and
then comparing between these trees to detect plagiarism
[7], [8], [9]. There is a new approach for plagiarism
detection suing fuzzy information retrieval but this
approach required a lot of text pre-processing before
applying it (corpus collecting and stemming) [10], and
the new approaches of plagiarism detection use text
mining Techniques [11], [12].
Introduction
Plagiarism is the process of reusing ideas or writings
of a person or several persons by others, without
referring to the source of information [1], [2].
Research related to plagiarism detection has been
started in the seventies of the last century. Several
algorithms and methods have been designed to determine
the unusual similarities between student’s assignments.
Recently efforts of researchers in natural languages
processing tended to determine the similarities between
natural languages texts.
However, it is not an easy task because of the
ambiguity in natural languages and the unconstrained
vocabulary size in natural languages.
This study aimed to investigate a new method for
plagiarism detection algorithm in both Arabic and
English languages.
The ambiguity in most natural languages texts,
especially in Arabic language that the absence of
diacritics in Arabic text cause a lot of problems when
analyzing the texts morphological analyzing, in addition
the absence of punctuation mark which are important and
essential for defining the natural and logical boundaries
of text sentences, and the absence of punctuation marks
lead to problem in determining the sentences boundaries
correctly.
This paper will present proposed method, system
design and implementation, tests and results, discussion,
conclusion and discuss future work.
III. Proposed Method for Plagiarism
Detection
The theory of rhetorical structure (R.S.T.) was
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
915
K. Omar, B. Alkhatib, M. Dashash
adopted in our plagiarism detection method which splits
the text into units connected with each other and keep the
text homogenous [13], [14], [15], [16].
Where this theory aims to keep the semantic meaning
in the text in natural language processing.
The following table contains Rhetorical relations in
the English and Arabic languages.
“[The measurement of quality of life plays an
important role in medicine]1,[ because quality of
life is a substantial factor for health and wellbeing]2.”
The expression “because” generates causal
relation between first clause and the second one.
TABLE I
RHETORICAL RELATION IN ARABIC AND ENGLISH [13]
Rhetorical
Name in English
Relation
‫ﺷﺮط‬
Condition
‫ﺗﻔﺴﯿﺮ‬
Interpretation
‫ﺗﻌﻠﯿﻞ‬
Justification
‫اﺳﺘﺪراك‬
Recalling
‫ﺗﻮﻛﯿﺪ‬
Confirmation
‫ﻧﺘﯿﺠﺔ‬
Result
‫ﺗﻤﺜﯿﻞ‬
Example
‫ﻗﺎﻋﺪة‬
Base
‫ﺗﻔﺼﯿﻞ‬
Explanation
‫ﻋﻄﻒ‬
Joint
“[If indeed everybody experiences ‘their’ quality
of life somewhat differently]1,[ then it is
impossible to generalize the term and evaluate
individual life situations according to the same
criteria]2.”
The expression “if...Then.” generates conditional
relation between the first clause and the second
In the following there are some examples of relations
in Arabic and English languages:
The relations in Rhetorical structure theory are
generated by connectors which called cue-phrases , as
each connector generates a specific type of relation
between clauses, and connectors form logical sentences
and clauses boundaries in Arabic and English texts.
We will use Rhetorical structure theory for Arabic and
English texts segmentation based on the existing cuephrases in Arabic and English, by using regular
expressions in Java programming language.
Table II contains the most important connectors in
Arabic and English texts [15], [17], [18], [13].
(‫”]ﻨﺴﺘﻨﺘﺞ أن ﻗﯿم ﺘﻌداد اﻟﻤـﺴﺘﻌﻤرات اﻟﺠرﺜوﻤﯿﺔ اﻟﻌﺎم )ﺒﺎﻵﻻف‬
‫] أي أن‬،[1‫ﺒﻌد ﺘطﺒﯿق اﻷوزون أﺼـﻐر ﻤﻨﮭـﺎ ﻗﺒـﻞ ﺘطﺒﯿﻘـﮫ‬
‫اﻷوزون أدى إﻟﻰ ﺘﻨﺎﻗص ﺘﻌداد اﻟﻤﺴﺘﻌﻤرات اﻟﺠرﺜوﻤﯿﺔ اﻟﻌـﺎم ﻓـﻲ‬
” 2[‫ﻋﯿﻨـﺔ اﻟدراﺴـﺔ اﻟﻤﺨﺒرﯿﺔ‬
There expression “‫ ”أي أﻧﮫ‬generates interpretation
relation between the first clause and the second
one.
TABLE II
ARABIC AND ENGLISH CUE-PHRASES [16]
‫“]وھﻨﺎ أﯿﻀﺎ ﻻ ﺒد ﻤن اﻹﺸﺎرة إﻟﻰ ﻀرورة إﺠراﺀ ﻋﯿﻨﺔ‬
‫دﻤوﯿﺔ ﻤﺄﺨوذة ﻤن ﺸﺨص طﺒﯿﻌﻲ ﺒﺎﻟﺘوازي ﻤـﻊ ﻋﯿﻨﺔ اﻟﻤرﯿض‬
‫ ] و ذﻟك ﻟﻨﻔﻲ وﺠود أﯿﺔ ﻤﺸﻜﻠﺔ ﺘﻘﻨﯿﺔ ﻗد ﺘؤدي إﻟﻰ ﻨﺘﺎﺌﺞ‬،[1
‫ إن اﺴﺘﺨدام أﻜﺜر ﻤن ﻨوﻋﯿﺔ‬:‫] وﺒـﺸﻜل ﻋﺎم ﯿﻤﻜن اﻟﻘول‬.[2‫ﻜﺎذﺒﺔ‬
‫ﻤﺴﺘﻀدﯿﺔ ﻟدراﺴـﺔ اﻟﻤـﺴﺘﻘﺒﻠﺔ اﻟواﺤـدة ﺴوف ﯿﻜﺸف ﻋن ﻏﯿﺎب‬
‫ ]ﻓﻌﻠﻰ ﺴﺒﯿل اﻟﻤﺜﺎل اﺴﺘﺨدﻤﻨﺎ ﻓـﻲ‬.[3‫ﻜل ﻤﻜوﻨﺎت ھذه اﻟﻤﺴﺘﻘﺒﻠﺔ‬
GPIIIa / ‫ھذه اﻟدراﺴﺔ واﺴﻤﺘﯿن ﻤﻨﺎﻋﯿﺘﯿن ﻟدراﺴﺔ اﻟﻤﺴﺘﻘﺒﻠﺔ‬
“ [4 GPIIb
In the example above unit 4 connects with all
units 1, 2, 3 with “example” relation, and units
1, 2, 3 are facts to the unit 4.
Rhetorical Relation
Name in English
‫ﺑﻞ‬... ‫ ﻟﯿﺲ‬، ‫ﺑﻞ‬... ‫ﻻ‬
Not…,but
‫ إﻧﻤﺎ‬... ‫ﻟﻢ‬
But
‫ﻻﺑﺪ‬
If and only if
‫ﻣﺨﺎﻓﺔ أن‬-‫ﺧﺸﯿﺔ أن‬
For fear that
‫ﺣﺘﻰ‬
Even so
‫أو ﻻ‬-‫أو‬
Or do-or do not
‫أو‬... ‫إﻣﺎ‬-‫وإﻣﺎ‬...‫إﻣﺎ‬
This…or
‫وإذا –ﻓﺈذا‬-‫إذ‬
When
‫إذن‬
The conclusion is
‫أو‬
Not sure
(‫ﻟﻜﻦ)ﺑﻤﻌﻨﻰ اﻻﺳﺘﺪراك‬
But
‫أم‬
Whether
-‫ ﺳﻮف‬-‫ﻓـ‬-...‫و‬...‫وإذا‬...‫إذا‬
‫ﻓﺴﻮف‬
‫ﻟﺬﻟﻚ‬
If…and if…and…,then
Therefore
Let us have a look on the following sentences:
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
916
K. Omar, B. Alkhatib, M. Dashash
‫ﻜﻤﺎ ﺘﺎﺒﻌﻨﺎ اﻟﻤرﻀﻰ ﻤن ﻨﺎﺤﯿﺔ اﻟﺘﺤﺎﻟﯿل اﻟﻤﺨﺒرﯿـﺔ ﺤـول‬
‫اﻟﺠراﺤﺔ وﺨﺎﺼﺔ وظﺎﺌف اﻟﻜﻠﯿﺔ واﻟﻜﺒـد ﻓﻜﺎﻨـت ﻜﻠﮭـﺎ طﺒﯿﻌﯿﺔ‬
.‫ وﻟم ﻨﺠد أي ﻋﻼﻗﺔ إﺤﺼﺎﺌﯿﺔ ﺒﯿﻨﮭﺎ‬،ً‫أﯾﻀﺎ‬
‫ﻣﻄﻠﻮﺑﺎ ﻓﻲ اﻟﻌدﯿد ﻤـن‬
ً
‫ﯿﺼﺒﺢ اﺴﺘﺒدال اﻟﺼﻤﺎم اﻷﺒﮭري‬
‫ﻤرﻀﻰ اﻟﺘﻀﯿق ﺘﺤت اﻷﺒﮭري اﻟﻤﻨﺘـﺸر ﻤـﻊ ﺼـﻤﺎم أﺒﮭري‬
‫ﻏﺎﻟﺒﺎ ﻤﻊ ﻨﻘـص ﺘﺼﻨﻊ ﻓﻲ‬،
ً
‫أو ﻗﺎﺼر‬/‫ﻏﯿر ﺴوي)ﻤﺘﻀﯿق و‬
‫اﻟﺤﻠﻘﺔ(ﻟﻜن ﯿﺠب اﻟﺤﻔـﺎظ ﻋﻠﯿـﮫ ﻓـﻲ ﺒﻌـض اﻟﻤرﻀﻰ ذوي‬
.‫اﻟﻔوھﺔ اﻟﺼﻤﺎﻤﯿﺔ اﻟﺴوﯿﺔ‬
‫ﻤن ﺨﻼل ﻤﺎ ﺴﺒق ﻨﻼﺤظ اﻷھﻤﯿﺔ اﻟوظﯿﻔﯿﺔ ﻟﻠﻌظم اﻟﻼﻤﻲ‬
‫وﺘﺄﺜﯿر ﺘوﻀﻌﮫ ﻓﻲ اﻟﺒﻨﻰ اﻟﺘﺸرﯿﺤﯿﺔ اﻟﻤﺠﺎورة وﻻﺴﯿﻤﺎ اﻟطرﯿق‬
‫اﻟﮭواﺌﻲ اﻟﺒﻠﻌوﻤﻲ اﻟذي ﻗد ﯿﻨﻌﻜس ﻤن ﺜم ﻋﻠﻰ ﺤﯿوﯿﺔ اﻟوظﯿﻔﺔ‬
.‫اﻟﺘﻨﻔﺴﯿﺔ‬
Fig. 1. Proposed algorithm stages
There are three cases of cue-phrases matching:
 Full match: The names and boundaries of cue-phrases
are equal.
 Right match: The names of cue-phrases and
surrounding words from right are equal.
 Left match: The names of cue-phrases and
surrounding words from left are equal.
After finishing cue-phrases Comparison, the algorithm
also compares between complete segments data (inside
text and surrounding words).
Three methods have been used for cue-phrases
comparisons:
1. Comparing cue-phrase name and Cue-phrase
boundaries.
2. Comparing cue-phrases categories and boundaries, in
this method the algorithm compares cue-phrase with
its synonyms, since there are several cue-phrases
generate the same relation, which means that the
replacement of any cue-phrase with another of its
synonyms does not change the meaning.
3. Comparing cue-phrases without looking at the cuephrase itself, which means that the algorithm only
compares the surrounding words, together with
pervious and next sentence of the cue-phrases,
regardless of the name and category of the cuephrase.
It contains the following cue-phrases and the
generated relations by them:
Relation
Nothing
Recalling
Explanation
Sequence
Cue-phrase
“‫”وﺧﺎﺻﺔ‬
“‫”ﻟﻜﻦ‬
“‫”وﻻﺳﯿﻤﺎ‬
“‫”وﻣﻦ ﺛﻢ‬
The outcome of the medication treatment can be
affected if this medication is taken at the same
as other medications. Therefore, your physician
needs to know if you are taking any of the
following or other medications.
It contains the following cue-phrase and the generated
relation by it:
Relation
Justification
Cue-phrase
“Therefore”
The proposed algorithm contained Analysis and
Comparison stages (as shown in Fig. 1 above). In the
analysis stage, the algorithm detects the cue-phrases in
text paragraphs and detecting surrounding words of each
cue-phrase, and also detects the complete segments
which are:
IV.
( “*”,(*),{*},[*]) (Where * refers to any part of text)
System Design and Implementation
The developed system contains (as shown in Fig. 2
below); Searcher which uses free “Bing” search web
service [19], that can store search results into system
database, and only return “pdf” and “doc” files format;
File downloader which downloads search results from
the internet and stores it into system database; Analyzer
which analyze files based on rhetorical structure theory;
Comparer which can compare between files analyzing
data; and Results viewer which show plagiarism
detection results.
Then for each cue-phrase and complete segment the
algorithm stores its pervious and next sentence, and then
the algorithm segments the text to sentences according to
cue-phrases and complete segments positions.
In Comparison stage, the algorithm compares between
analyzed data from analyzing stage. The algorithm starts
comparing between cue-phrases and complete segments
data.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
917
K. Omar, B. Alkhatib, M. Dashash
The articles which contained figures and tables were
not covered by our algorithm because our algorithm
cannot analyze figures and tables.
Searcher
File downloader
VI.
In our plagiarism detection algorithm the analysis
stage does not need any text pre-processing before
analysis stage. In contrast, in other detection algorithms,
there is a need for text pre-processing to remove stop
words and split long sentences to smaller ones in the case
of string matching algorithms. The comparison stage: is
characterized by its speed in comparison, as it is faster
than all types of plagiarism detection algorithms because
it compares between cue-phrases and their boundaries.
The advantages of our proposed method for
plagiarism detection are:
 Low complexity: the algorithm need O(N*M) to
compare between two files, where N is the number of
cue-phrases in the first file, and M is the number of
cue-phrases in the second file.
 The algorithm does not change the structure of the
files that compare between them. It keeps the
sentences without splitting it or joining it and this
helps in reporting showing the results of similarity.
 The algorithm keeps on the semantic meaning in the
text, where it segments the text logically depending
on the presence of cue-phrases in the text.
 The algorithm can compare between Arabic language
texts without punctuation marks included in it.
 The algorithm does not need diacritics in Arabic
texts.
 The segmentation of Arabic and English text using
R.S.T. leads to a set of clauses without breaking up or
separating the sentences structure. This means when
using this theory, we keep the sentence structure
which is the main component in the text, where is the
semantic meaning exist in the sentence, since the
segmentation of the text to separated vocabulary
leads to loss of semantic meaning (because each
individual word cannot contains semantic meaning).
 The segmentation of Arabic and English texts using
our algorithm (which based on R.S.T.) can be done
without the need for the presence of punctuation
marks in Arabic texts, as most Arabic texts do not use
punctuation marks in correct and accurate way.
 Dependence on the sentences as an essential
component in text comparison is a good solution
because the sentence contains much information than
separated vocabulary.
Analyzer
Comparer
Comparer
Comparer
Results viewer
Fig. 2. System structure
V.
Tests and Results
The proposed algorithm was tested on a sample of
files. About of 1000 public health papers in Arabic and
English languages and the source of these papers was the
internet by using “Bing” search engine web service (that
we integrated it in our system).
Two types of cue-phrases comparison algorithms have
been used (comparing cue-phrases with all its synonyms,
and comparing cue-phrases without taking into account
cue-phrases names and categories and depending only on
cue-phrase surrounding words and sentences). The
second comparison algorithm which is based on cuephrase surrounding words was more effective algorithm
for plagiarism detection. This is because it segments the
text according to cue-phrases existence and compares
between the cue-phrases boundaries words which make
the logical beginning and ending of text sentences.
The testing shows that our algorithm was effective in
detecting plagiarized files on the internet and was more
precise and fast in small-sized files (articles less than
2000 words). We evaluated our system by Precision
factor:
Number of correct plagiarism detection results
Precision =
The total number of suspected files
For English publications, the precision was eighty
percent and for the Arabic publications the precision was
ninety percent, and this value because of the writing style
of the Arabic language that our plagiarism detection
algorithm demonstrates that when a person copy any part
of text from a paper or article he copy at least one
sentence or one clause, and our proposed algorithm
found and detected all clauses in texts. This algorithm
was more effective for plagiarism detection in Arabic
texts because of our algorithm supported Arabic writing
style which has the following form:
Statement
support statements…
support statements
Discussion
VII.
Conclusion and Future Work
In this study we developed a system to detect
plagiarism in both Arabic and English languages using
“Bing” search engine. The system which relies on
plagiarism detection algorithm is effective and can
support both Arabic and English languages.
statement
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
918
K. Omar, B. Alkhatib, M. Dashash
Through experiment and tests on our plagiarism
detection algorithm, we found that this algorithm reduced
the un-useful comparison between texts, since it
compares only between cue-phrases surrounding words
which forms the logical and natural boundaries of text
sentences. Future work is required to include semantic
web technology in plagiarism detection by using general
ontologies such as wordNet [20] and domain specific
ontologies such as medical ontology in our system.
[15]
[16]
[17]
[18]
Acknowledgements
This study is supported by Damascus University,
Syria.
[19]
[20]
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
Vinod K.R.,Sandhya.S,Sathish Kumar D,Harani A,David Banji
and,Otilia JF Banji , Plagiarism history ,detection and prevention ,
Hygeia: journal for drugs and medicines, Vol.3-Issue.1-pp. 1- 4,
2011
Kent C. K.، Salim N., Web Based Cross Language Plagiarism
Detection, Second International Conference of computational
intelligence, Modeling and Simulation, pp. 199 - 204, 2010.
Jadalla, A.; Elnagar, A., A fingerprinting-based plagiarism
detection system for Arabic text-based documents, Computing
Technology and Information Management (ICCM), vol.1, no.,
pp.477-482, 2012.
Jadalla, A.; Elnagar, A., A Plagiarism Detection System for
Arabic Text-Based Documents, M.Chau et al.(Eds.):PAISI
2012,LNCS 7299 (Springer-Verlag Berlin Heidelberg, pp. 145153,2012) Intelligence and Security Informatics Lecture Notes in
Computer Science.
Bin-Habtoor, A. S.; Zaher, M. A., A Survey on Plagiarism
Detection Systems, International Journal of Computer Theory
and Engineering vol. 4, no. 2, pp. 185-188, 2012.
Tachaphetpiboon, S.; Facundes, N.; Amornraksa, T., Plagiarism
indication
by
syntactic-semantic
analysis, Asia-Pacific
Conference on Communications, pp.237-240, 2007.
Kent C. K.، Salim N., Web Based Cross Language Semantic
Plagiarism Detection, IEEE Ninth International Conference on
Dependable, Autonomic and Secure Computing, pp. 1096-1102 ,
2011.
Shizhong Wu, Yongle Hao, Xinyu Gao, Baojiang Cui, Ce Bian.,
Homology Detection Based on Abstract Syntax Tree Combined
Simple Semantics Analysis, International Conference of Web
Intelligence and Intelligent Agent Technology (WI-IAT),
IEEE/WIC/ACM, v(3) pp. 410-414, 2010.
El Bachir M. M., Detection of Plagiarism in Arabic Documents,
International Journal of Information Technology and Computer
Science, vol.4, no.10, pp.80-89, 2012.
Alzahrani, S.M.; Salim, N., On the use of fuzzy information
retrieval for gauging similarity of Arabic documents, Second
International Conference of Applications of Digital Information
and Web Technologies, pp.539-544, 2009.
Al-Taani, A.T., A new approach to the extraction of multiword
terms from arabic texts, (2010) International Review on
Computers and Software (IRECOS), 5 (2), pp. 129-133.
Orabe Almanaseer, Mohammad Alkhaleefah, Sakha’a
Elmanaseer, Business Documents Analysis Using Text Mining
Techniques, (2012) International Review on Computers and
Software (IRECOS), 7 (4), pp. 1663-1677.
Al-Sanie, W., Touir A., Mathkour H., Towards a Rhetorical
Parsing of Arabic Text, Proceedings of the International
Conference on Computational Intelligence for Modeling, Control
and Automation and International Conference on Intelligent
Agents, Web Technologies and Internet Commerce Vol. 02 , pp.
1086—1091, 2005.
Taboada, M. & Mann, W. C., Rhetorical Structure Theory:
looking back and moving ahead, journal of Discourse Studies,
Vol. (8), pp. (423—459), 2006.
Mathkour H.,Touir A., Al-Sanea W., Parsing Arabic Texts Using
Rhetorical Structure Theory, Journal of Computer Science vol.4,
n.9, pp. 713-720, 2008.
Iraky K., A Comprehensive Taxonomy of Arabic Discourse
Coherence Relations, 1st Taibah University International
Conference on Computing and Information Technology AlMadinah Al-Munawwarah, Saudi Arabia, pp. 491—496, 2012.
Mathkou H., Member, IAENG, A Novel Rhetorical Structure
Approach for Classifying Arabic Security Documents,
International Journal of Computer Theory and Engineering, Vol.
1, No. 3,pp. 1793-8201, 2009.
Touir
A., Mathkour H., Al-Sanea W., Semantic-Based
Segmentation of Arabic Texts, Information Technology Journal,
vol.7, pp.1009-1015, 2008.
Bing, API
Basics.
[online]
Available
at:
http://www.bing.com/developers/s/APIBasics.html
[Accessed
15-October 2011 ].
A. Amine, Z. Elberrichi, M. Simonet, WordNet - Based Text
Clustering Methods: Evaluation and Comparative Study, (2009)
International Review on Computers and Software (IRECOS), 4
(2), pp. 220 – 228.
Authors’ information
Damascus University, Syrian Arab Republic.
K. Omar, PhD student in Faculty of informatics
Engineering, Damascus University, Syria,
Master degree in artificial intelligence,
Damascus university, Syria. He obtained his
Master degree in artificial intelligence about
plagiarism detection, and he is currently a PhD
student undertaken research on plagiarism
detection using semantic web techniques. Eng.
Omar is a member of Syrian Scientific Society for Informatics.
B. AlKhatib, An associate professor at
Damascus University, Faculty of Informatics
Engineering, Damascus University, Syria, PhD
in Artificial intelligence, France, Director of
(MWT , MWS) programs in the Syrian virtual
university , Director of the Syrian-COMSATSCOMSTECH IT Centre (SCCITC) Damascus,
Syria. He has many international publications
related to web data mining, plagiarism detection, natural language
processing, and virtual learning. Dr. AlKhatib is a member of Syrian
Scientific Society for Informatics.
M. Dashash, An associate professor in the
Faculty of Dentistry, Damascus University,
Syria, Director of Evaluation and accreditation,
Ministry of Higher Education, Syria. She has her
Doctor of Dental Surgery DDS, from Damascus
University, Syria, Master degree in Peadiatric
Dentistry Msc, from Damascus University,
Syria,
PhD in Peadiatric Dentistry, from
University of Manchester, United Kingdom, and Membership of the
Faculty of Dental surgery, Royal College of Surgeon of Edinburgh
MFDS RCS( Ed), from United Kingdom, She has 23 international
publications related to dentistry, public health, health informatics,
genetics, quality assurance, Medical education, curriculum reform, and
electronic databases. Dr. Dashash is a member of the Syrian Dental
Association, Alumni Association of University of Manchester, and a
member of the Royal College of Surgeon of Edinburgh, United
Kingdom
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
919
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Sensitive Information Protection and Recovery
Using One to One Compound Mapping
N. V. Chaithanya Kumar Reddy1, Diwakar R. Marur2,
Vidhyacharan Bhaskar3
Abstract – With rapid developments in software and hardware technology, nowadays documents
are scanned and stored in Internet connected systems. Scanned images hold lot of confidential
information. It is essential to protect sensitive information like Credit card number, Social security
number, Medical reports etc. from unauthorized access. In this paper, a scheme is proposed to
protect such images based on visible watermarking and encryption techniques. With this scheme,
sensitive information in an image will be made unreadable with mask image using one-to-one
compound mapping. The compound mappings are proved to be reversible, which allows for
lossless recovery of original images from protected image. The mask image generation is
discussed. This work is implemented in MATLAB. Copyright © 2013 Praise Worthy Prize S.r.l. All rights reserved.
Keywords: Lossless Recovering, Mask Generation, Multiple Region Masking, One-To-One
Compound Mapping, Reversible Mapping, Scrambling
driving license, and credit card of an individual has
confidential information. Confidentiality protection for
such images is really a huge challenge. Many techniques
are developed like Encryption, Steganography and
Digital Watermarking to protect confidential images.
Image encryption is a technique to convert image into
unreadable format. On the other side, image decryption
retrieves the original image from the encrypted one.
The image encryption methods based on spatial
domain can be summarized as follows: image scrambling
and pixel replacement [1], Arnold transform [2], Baker
mapping [3], Logistic sequence [4], and 3D Lorenz
sequence [5]. Though these encryption techniques are
providing good security level to confidential images, the
encryption and decryption of the image may consume
more time as well as complex.
Steganography is a technique to hide information
inside the cover image without attracting the attention of
the third party. In steganographyic applications, there are
two common methods of embedding: spatial embedding
in which messages are inserted into the LSB (Least
Significant Bit) [6] of image pixels, and Transform
embedding in which a message is embedded by
modifying frequency coefficients of the cover image [7].
It is easier to embed a confidential image into the
cover image when the size of confidential image is small.
When the size of confidential image increases, the
complexity of embedding increases and degrades the
quality of cover image. Digital watermarking is a
technique to embed information into digital media to
validate their contents [8], which means embedding of
certain specific information about the copyright holder
Nomenclature
I
S
M
P
R
W
H
S
A
B
P
Ri
PSNR
PSNRP
PSNRR
Original Image (Document image or
Confidential image)
Sensitive information region
Mask image
Protected Image
Recovered image
Width of Sensitive information region
Height of Sensitive information region
Value of pixel in Sensitive information region
Average of surrounding pixel of ‘s’
Value of pixel in Mask image
Value of pixel in protected image
Random integer matrices
Peak Signal to Noise Ratio
PSNR of protected image with respect to
original image
PSNR of Recovered image with respect to
original image
I.
Introduction
Due to rapid developments in software and hardware
technology, nowadays documents are scanned and stored
in Internet connected systems. That scanned images hold
more confidential information. Apart from its prevalent
usage, there are mere chances for intrusion. A vital loss
may occur due to the unauthorized access.
For example, scanned copy of tender quotes and
agreements of a company, medical report of a patient,
and unique identification like social security number,
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
920
N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
(company logos, ownership descriptions, etc.) into the
media to be protected. Digital watermarking methods for
images are usually categorized into two types: Invisible
and visible.
In visible watermarking method the cover object is
taken and the watermark is added on it. Visible
watermarks are perceptible to a viewer. In invisible
watermarking method watermark is embedded by
modifying frequency coefficients of the cover image and
invisible watermarks are imperceptible and do not
change the visual appearance of images. Embedding of
watermarks, either visible or invisible, degrade the
quality of the host media in general. A group of
techniques, named reversible watermarking [9]–[18],
allow legitimate users to remove the embedded
watermark and restore the original content as needed,
which means that the recovered image is identical to the
original image, pixel by pixel.
In this paper, a method is proposed to protect sensitive
information in an image from unauthorized access based
on encryption and visible watermarking techniques.
Sensitive information in an image to be protects using
one-to-one compound mapping. The mappings are
proved to be reversible to recover the original images
from protected images.
Rest of the paper is organized as follows. Proposed
scheme and one-to-one compound mapping is described
in Section II. Proposed algorithm and generating mask
described in Section III. Experimental results are
presented in Section IV, and Section V presents the
conclusions.
mapping is governed by one-to-one function. If ‘f1’ and
‘f2’ are inverses of each other, then both are one-to-one
functions.
Here, ‘f1’ and ‘f2’ are inverses of each other if and
only if:
(f1 o f2)(x) = x, x in the domain of f2
and:
(f2 o f1)(x) = x, x in the domain of f1
Let S={s1, s2, s3…, sm}, P={p1, p2, p3…, pm} be two
sets. The compound mapping f is governed by a one-toone function Fx with one parameter x = a or b in the
following way:
p = f(s) = Fb-1(Fa(s))
(1)
The compound mapping described by (1) is indeed
reversible, i.e.‘s’ can be derived exactly from ‘p’ using
the following formula:
s =f-1(p) = Fa-1(Fb(p))
(2)
Substituting (1) into Fa-1(Fb(p)), we get:
Fa-1(Fb(p)) = Fa-1(Fb(Fb-1(Fa(s))))
By reading Fa(s) as a value ‘c’, the right-hand side
becomes:
Fa-1(Fb(p)) = Fa-1(Fb(Fb-1 (c)))
Here, Fb and Fb-1 are cancelled out, to give Fa-1(c). So:
II.
Proposed Scheme
Fa-1(Fb(p)) = Fa-1(c)
Sensitive information in an image that has to be
protected is found out. Here sensitive regions are
assumed to be enclosed in a rectangular region Along
with top left corner coordinates regions’ height and width
is used to form a key. Based on these details create an
image called mask image with randomized colours. By
applying mask image on sensitive information region of
original image, it protects the image.
To apply mask image on to the image one-to-one
compound mapping is used. Lossless recovery of the
original image is possible using reversible one-to-one
compound mapping. If recoverability is not an issue, one
can overlay the mask over the sensitive information in an
image with an application package like Photoshop.
Availability of mask image and key are the two
prerequisite to recover sensitive information from the
protected image. Thus only a legitimate user is be able to
recover the original image from the protected one, which
is not possible for and an attacker to do so.
II.1.
but:
Fa-1(c) = Fa-1(Fa(s))
In the above equation, ‘s’ only remains and operators
Fa and Fa-1 are cancelled out. Hence, original value can
be recovered using corresponding reversible mapping.
III. Proposed Algorithm
Algorithm I: Protecting sensitive information
Input: an image I.
Output: protected image P.
Steps:
1. Read an image I.
2. Select sensitive information region from I where
mask image is to be applied and let it be named as S.
Measure height (h), width (w) of S and also note top
left corner coordinates which is part of the key that is
used for lossless recovery.
3. Generate mask image M using procedure explained in
algorithm III.
4. Overlay mask image M on sensitive information
region S in an image I by using one-to-one compound
mapping.
One-to-One Compound Mapping
One-to-One compound mapping is used for converting
a set of numerical values to another set, such that the
respective mapping is reversible [18]. The compound
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
921
N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
a. Denote each pixel value in S as s and
corresponding pixel in P as p, and pixel in M as b.
b. Calculate average ‘a’ of surrounding pixels (i.e.,
North and West pixels) of s.
c. Map s to a new value p:
q=259mod 256 = 3) to overcome this issue.
Algorithm III: Generating mask image
Mask image can be generated in two ways,
Type I:
a. Generate random integer matrix Ri with the
dimension of hw×1 for gray scale image and hw×3
for colour image.
Here:
p = F(s) = fb-1(fa(s))
Here, fa(s) gives difference between s and a. Let it
be ‘d’:
i.e., fa(s) = (s ~ a) = d
=> p = fb-1(d)
=d+b
(if s > a)
=b-d
(if s < a and b > d)
= 256 + (b-d) (if s < a and b < d)
Ri is in the range [0 255]
hw is product of height and width of sensitive region
S, and if image is:
– Gray scale image:
 a1 
a 
Ri   2 
 : 


 ahw  hw1
5. Set the value of each remaining pixel in P, which is
the outside region S, to be equal to that of the
corresponding pixel in I.
Algorithm II: Lossless image recovery
Input: protected image P and key.
– RGB image:
Output: recovered image R.
 a1R
a
Ri   2 R
 :

 ahwR
Steps:
1. Read protected image P and key.
2. Retrieve information about the masked region in the
protected image P from the key supplied.
3. Use the key-information to regenerate the mask
image as in the Algorithm I.
4. Recover original image from the protected image
using reverse mapping that is explained in the
following steps:
a. Denote each pixel value in P as p and
corresponding pixel in R as s and pixel in M as b.
b. Calculate average ‘a’ of surrounding pixel (north
and west pixels) of p.
c. Recover s from p by setting:
a1G
a2G
:
ahwG
a1B 
a2 B 
: 

ahwB  hw3
The above matrix serves as the secret information
which is to be included in key.
b. Generate a null matrices M with dimension S.
c. Consider each row in Ri as one pixel and fill the
matrix M with these pixels in certain order. In this
way Mask image M is formed.
Order of arrangement has to be preserved at the time
of recovery also.
The Type I method is very quick to execute but it
stores all the values of Ri into key. This increases the key
size and it becomes vulnerable to attacks. To increase the
security, arrangement order of Ri into M should be
complex.
Type II:
a. Generate random integer matrix Ri with the
dimension of N×1 for gray scale image and N×3 for
colour image. Here:
s = fa-1 (fb(p))
here:
fb(p) = (256 – b) + p = c
then:
s = fa-1 (c) = a + c
5. Set the value of each remaining pixel in R, which is
the outside region of protected area, to be equal to
that of the corresponding pixel in P.
There is a possibility that mapped value may exceed
the range of valid pixel values for some values of a, b, c
and d. For example, when:
Ri is in the range [0 255] and N < 10
If image is:
– Gray scale image:
 a1 
a 
Ri   2 
 : 
 
 aN  N 1
a=255, b=254, c=5, and d=5
p = b + d = 254+5 = 259 > 255
s = a + c = 255+5 = 260 > 255
it is possible to use the standard modulo technique (i.e.,
– RGB image:
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
922
N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
 a1R
a
Ri   2 R
 :

 aNR
a1G
a2G
:
aNG
a1B 
a2 B 
: 

aNB  N 3
5.
Algorithm V: Multiple mask recovering
Steps:
1. Locate all masked regions in the protected image P
with reference of key.
2. Based on identified locations, measure the heights
and widths of each individual masked region and
starting points of all regions.
3. Compute maximum height H and width W from the
above values.
4. Use the key-information to regenerate mask image M
as in the Algorithm IV.
5. Based on dimension of masked regions, select set of
pixels from mask image and recover original from
protected image by using reversible one-to-one
compound mapping.
The above matrix serves as the secret information
which is to be included in the key by considering each
row in this matrix as one pixel and the matrix obtained is
used as the initial seed pixels to the mask image.
b. Generate matrix M with dimension S by using the
seed pixels as:
i. Find the binary values of a seed pixels and
scramble them using circular shift operation. This
result in a group of new pixels which are different
in colour compared to the seed pixels.
ii. The new pixels are used to fill the matrix M.
iii. The new pixels will become the new seed pixels
and steps i and ii are repeated until matrix M is
filled.
c. Convert the above matrix into image to form mask
image M.
In this technique seed pixels are to be stored into key
and special a procedure (like scrambling with circular
shift) is used to generate mask image, which creates
more security and reduces key size.
IV.
Experimental Results
A series of experiments are carried out using
MATLAB image processing toolbox. Five test images
were used in the experiments. They are shown in Figs. 15, referred to as “Credit Card”, “Medical Report”,
“Drivers License”, “Social security”, and “Agreement”,
respectively, in the sequel. Fig. 1(c) shows legitimately
recovered image from the protected image 1(b). In this
the sensitive information Credit Card number is clearly
visible as in the original image 1(a). Fig. 1(d) shows
illegitimately recovered image from protected image
1(b), which is not identical to the original image 1(a) and
sensitive information is not recognizable. The same thing
is applicable to remaining test images.
Algorithm IV: Multiple regions masking
Steps:
1. Locate multiple regions that possess sensitive
information in an image I.
2. Based on identified locations, measure the heights
and widths of each individual sensitive region and
starting points of all regions and store these
measured values into key.
3. Find out the maximum height H and maximum
width W among the available sensitive regions.
4. Generate mask image M with dimension of HW×1
for gray scale image and HW×3 for colour image
(a)
using algorithm III.
Based on dimension of sensitive regions, select set
of pixels from mask image and apply onto sensitive
region in an image using one-to-one compound
mapping to protect confidential image.
(b)
(c)
(d)
Figs. 1. Credit Card image with sensitive information:(a) Original image (b) Protected image (c) Legitimately recovered image
(d) Illegitimately recovered image
(a)
(b)
(c)
(d)
Figs. 2. Medical Report image with sensitive information: (a) Original image (b) Protected image (c) Legitimately recovered image
(d) Illegitimately recovered image
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
923
N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
(a)
(b)
(c)
(d)
Figs. 3. Drivers License image with sensitive information: (a) Original image (b) Protected image (c) Legitimately recovered image
(d) Illegitimately recovered image
(a)
(b)
(c)
(d)
Figs. 4. Social Security image with sensitive information: (a) Original image (b) Protected image (c) Legitimately recovered image
(d) Illegitimately recovered image
(a)
(b)
(c)
(d)
Figs. 5. Agreement image with sensitive information: (a) Original image (b) Protected image (c) Legitimately recovered image
(d) Illegitimately recovered image
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
924
N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
TABLE II
ILLEGITIMATELY RECOVERED IMAGE RESPECT TO ORIGINAL IMAGE
PSNR of
PSNR of
PSNR of
Protected
Legitimately
Illegitimately
Image Name
image
recovered
recovered
(dB)
image
image (dB)
Credit Card
14.69
Inf
14.70
Agreement
13.33
Inf
12.38
Medical Report
15.45
Inf
15.51
Drivers License
16.80
Inf
16.84
Social Security
12.32
Inf
12.38
No.
IV.1. Quality Metrics
The quality of the protected image P is measured by
the Peak Signal to Noise Ratio (PSNR) of P with respect
to the original image I in the following way:
PSNR P 
255  255

 10 log10 
m 1 n 1
2
 1
 P  i, j   I  i, j  
 m  n i 0 j 0 







(3)
With reference of Table II, only legitimate user can
recover original image from protected image.
A comparison of Type I and Type II algorithms based
on key size is tabulated as below:
where I(i, j) and P(i, j) denote the pixel values in row and
column of the original image and protected image,
respectively, and m and n stand for the width and height
of the original image respectively.
Also, the quality of a the recovered image R is
measured with respect to the original image I by Peak
Signal to Noise Ratio (PSNR) in a similar way:
TABLE III
COMPARISON OF TYPE I AND TYPE II BASED ON KEY SIZE
Key size in Type I Key size in Type II
Image Name
(KB)
(KB)
Credit Card
72
0.244
Agreement
158
0.260
Medical Report
126
0.275
Drivers License
213
0.244
Social Security No.
31
0.244
PSNR R 
255  255

 10 log10 
m 1 n 1
2
 1
 R  i, j   I  i, j  
 m  n i 0 j 0 







(4)
With reference to Table III, by storing all values of Ri
into key, Type I occupies more size compare to Type II
and security is more in Type II compare to Type I.
where I(i, j) and R(i, j) denote the pixel values in row and
column of the original image and the recovered image,
respectively.
When the two images original and recovered are
identical, the denominator of above expression will be
zero. For this case, the value of PSNR will be undefined.
In Table I and II it will be represented as ‘inf’. When
Type I algorithm is followed for mask generation, the
PSNR values of the Protected image, Legitimately
recovered image and Illegitimately recovered image with
respect to original image are tabulated as below.
V.
Conclusion
In this paper, a new method for protecting sensitive
information in an image has been proposed based on oneto-one compound mapping. Two types of algorithms
proposed for mask image generation.
The proposed method can be extended to mask
multiple regions. The mask image is formed with
different colour pixels, which can prevent illicit
recoveries of original images, i.e. without knowing the
correct pattern of mask image, recovering original image
from protected image is not possible.
Experimental results demonstrated the feasibility of
the proposed method and the effectiveness of security
protection measures.
TABLE I
ILLEGITIMATELY RECOVERED IMAGE RESPECT TO ORIGINAL IMAGE
PSNR of
PSNR of
PSNR of
Protected
Legitimately
Illegitimately
Image Name
image
recovered
recovered
(dB)
image
image (dB)
Credit Card
14.49
Inf
14.52
Agreement
12.92
Inf
12.92
Medical Report
15.05
Inf
15.03
Drivers License
16.46
Inf
16.35
Social Security
11.84
Inf
11.85
No.
References
[1]
[2]
With reference of Table I, PSNR of legitimately
recovered image is “inf”, i.e. legitimately recovered
image is identical to the original image. Hence, only
legitimate user can recover original image from protected
image.
When Type I algorithm is followed for mask
generation, the PSNR values of the Protected image,
Legitimately recovered image and
Illegitimately
recovered image with respect to original image are
tabulated as indicated in Table II.
[3]
[4]
[5]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Zhang Yan, “The research of image and video encryption
algorithm,” Soochow University Master's thesis, pp. 6–16, 2007.
Fangyuan Huang, “Image Scrambling Based on Arnold
Transforming and Implementation,” Guizhou University (Natural
Science Edition), 5th ed., Vol. 25, 2008.
Zhao Huaixun, Wang Xiaoran and Zhen MIN, “A Chaotic Image
Encryption Algorithm Based On Baker Mapping,” Computer
Applications and Software, 7th ed., Vol. 25, 2008.
YU Zhinghong, Wang Jingbo, Liu Zhe Zhou, Xu Li,Jiang, chun
and Yu Zhezhou, “Video Encryption Method Based On Logistic
and Baker Mapping,” Journal of Jilin University (Information
Science Edition), 3rd ed., Vol. 26, 2008.
Zhu Zhiliang, Zhang Wei and Yu Hai, “MPEG Video encryption
algorithm based on Lorenz chaotic system,” Journal of Computer
Applications, 12th ed., Vol. 28, 2008.
International Review on Computers and Software, Vol. 8, N. 4
925
N. V. Chaithanya Kumar Reddy, Diwakar R. Marur, Vidhyacharan Bhaskar
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
H. Zhang and H. Tang, “A Novel image steganography algorithm
against statistical analysis,” Proceedings of the IEEE, Vol. 19, no.
22, pp. 3884-3888, 2007.
Katzenbeisser, S. and Petitcolas, “Information hiding techniques
for steganography and digital watermarking,” (Artech House
Books), ISBN 1-58053-035-4, 1999.
F. A. P. Petitcolas, R. J. Anderson, and M. G. Kuhn, “Information
hiding—A survey,” Proceedings of the IEEE, Vol. 87, no. 7, pp.
1062–1078, 1999.
Y. Hu, S. Kwong, and J. Huang, “An algorithm for removable
visible watermarking,” IEEE Transaction on Circuits Systems,
and Video Technology, Vol. 16, no.1, pp. 129–133, 2006.
Y. Hu and B. Jeon, “Reversible visible watermarking and lossless
recovery of original images,” IEEE Transaction on Circuits
Systems, and Video Technology, Vol. 16, no. 11, pp. 1423–1429,
2006.
B. Macq, “Lossless multiresolution transform for image
authenticating watermarking,” European Signal Processing
Conference, Tampere, Finland, 2000.
J. Fridrich, M. Goljan, and R. Du, “Lossless data embedding—
New paradigm in digital watermarking,” Journal of Applied
Signal Processing, Vol. 2002, no. 2, pp. 185–196, 2002.
M. Awrangjeb and M. S. Kankanhalli, “Lossless watermarking
considering the human visual system,” International Workshop on
Digital Watermarking, Seoul, Korea, 2003.
M. Awrangjeb and M. S. Kankanhalli, “Reversible watermarking
using a perceptual model,” Journal of Electronic Imaging, Vol.
14, no. 013014, 2005.
J. Tian, “Reversible data embedding using a difference
expansion,” IEEE Transaction on Circuits Systems, and Video
Technology, Vol. 13, no. 8, pp. 890–896, 2003.
H. M. Tsai and L. W. Chang, “A high secure reversible visible
watermarking scheme,” Proceedings of the IEEE International
Conference, Multimedia and Expo, pp. 2106–2109, 2007.
S. K. Yip, O. C. Au, C. W. Ho, and H. M. Wong, “Lossless
visible watermarking,” Proceedings of the IEEE International
Conference, Multimedia and Expo, pp. 853–856, 2006.
T. Liu, W. Tsai, “Generic Lossless Visible Watermarking – A
New Approach,” IEEE Transaction on Image Processing, Vol.
19, no. 19, pp. 1224–1235, 2010.
Vidhyacharan Bhaskar received the B.Sc.
degree in Mathematics from D.G. Vaishnav
College, Chennai, India in 1992, M.E. degree in
Electrical & Communication Engineering from
the Indian Institute of Science, Bangalore in
1997, and the M.S.E. and Ph.D. degrees in
Electrical Engineering from the University of
Alabama in Huntsville, USA in 2000 and 2002
respectively. During 2002-2003, he was a Post-Doctoral fellow with
the Wireless Communications research group at the University of
Toronto, Canada. From Sep. 2003 to Dec. 2006, he was an Associate
Professor in the Département of Information Systems and
Telecommunications at the University of Technology of Troyes,
France.
Since January 2007, he is a Professor of the Department of Electronics
and Communication Engineering at S.R.M. University, Kattankulathur,
India. His research interests include Wireless Communications, Signal
processing, Error control coding and Queuing theory. He has published
75 refereed Journal papers and 53 Conference papers in various
International Conferences. Besides this, he also has around 14 Journals
currently under review, and 20 Journals under Preparation. He has also
published two text books, one, on “Adaptive Rate Coding for ACDMA Systems”, in January 2011, published by LAP Lambert
Publishing agency, Germany, and the other on “MATLAB FOR ALL”
in USA in 1998.
He has Supervised 3 PhD research scholars, and 33 Masters students.
He won Prof. SVC Aiya Memorial Award for Outstanding
Contributions in the area of Electronics and Telecommunications in
2012 from Institute of Electronics and Telecommunication Engineers
(IETE). He is a Fellow of the IETE. He is also a Senior Member of the
IEEE. He won the award for the “Best Academic Researcher” on Jan
31, 2012 from the Association of Scientists, Developers, and Faculties
associated with the Techno Form Research and Development Group,
Pondicherry.
Authors’ information
1
M.Tech Student, Communication Systems, Department of ECE, SRM
University, Chennai, India.
2
Asst. Professor, Department of ECE, SRM University, Chennai, India.
3
Professor, Department of ECE, SRM University, Chennai, India.
N. V. Chaithanya Kumar Reddy received
B.Tech. degree in Electronics & Communication
Engg. from Jawaharlal Neharu Technologial
University Ananthapur, Andhra Pradesh, India.
He is currently pursuing M.Tech. degree in
Communication Systems at SRM University,
Chennai, India.
Diwakar R. Marur received his Bachelor of
Engineering in ECE from Thiagarajar College of
Engineering, Madurai, India in 1996, and Master
of Engg. in Communication Systems from
Thiagarajar College of Engineering , Madurai.
Since 2000, he is a working at SRM University.
He is currently pursuing his doctoral degree
under the guidance of Dr. Vidhyacharan
Bhaskar.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
926
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Review of Methods of Distributed Barrier Synchronization
of Parallel Processes in Matrix VLSI Systems
Jamil S. Al-Azzeh
Abstract – The problem of barrier synchronization between parallel processes in VLSI-based
mesh-connected multicomputers is under consideration. This paper introduces and reviews
description of hardware synchronization methods (HSM) in modern microprocessing systems.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: VLSI, Multicomputers, Parallel Processes, Barrier Synchronization, Hardware
The primary aim of this procedure is synchronization
of starting and finishing moments of parallel threads in
special points of control flows called the barriers.
Synchronization usually takes significant time of
program execution that causes degradation of throughput
and performance of the system. Amount of
synchronization time in the parallel program can be
decreased by equivalence conversion of algorithm [7],
but can not be excluded from the algorithm completely.
According to that, elaboration of the barrier
synchronization methods that allow operative
synchronization of program threads in systems with
different architectures is actual and important problem.
The aim of this article is a review and evaluation of all
well known methods of barrier synchronization used in
VLSI systems with matrix topological structure as one of
the most promising subclasses of on-chip computing
systems. In current research methodology of
mathematical simulations and combinatorial optimization
have been used to evaluate synchronization time and
structural
complexity
of
distributed
barrier
synchronization methods. As our research shows, the
main disadvantage of VLSI systems based on discussed
synchronization methods is low flexibility associated
with the severe restrictions on the allocation of
synchronizing branches of parallel program. This
disadvantage can be successfully solved using hybrid
methods of synchronization.
Nomenclature
Bn
va
t'
t''
TBS
WBS
W BS
CBS
The process of the thread number n execution
Activation barrier time
Waiting phase time
Activation phase time
Mathematical expectation of synchronization time
Structural complexity of hardware-software
subsystem
Upper extreme of the structural complexity
Combinatorial flexibility of synchronization
I.
Introduction
Nowadays, the level of integration of modern digital
microchips allows the implementation of high
performance multiprocessors systems with productivity
of many full function processing units on one chip [1][3]. Such VLSI systems can perform complex parallel
computations with related parts of processes, information
and control the interaction provided by the
communication environment (CE). In commercial VLSI
most popular CE is the system with matrix topological
structure which characterized by simple integral
implementation [2], [3].
Most important problem in actual performance
improvement of mentioned systems is the collective
interactions of programs branches that are usually exist
in parallel programs.
For
effective
implementation
of
collective
interactions, the communication approach should be
elaborated. This will allow an operative interaction of
any program threads independently from its allocation in
the system even in the case of limited software or
hardware resources. One of effective program threads
interaction is procedure of the barrier synchronization
[4]. The barrier synchronization (BS) is one of the widely
spread coordinating procedure included to the main
standards of parallel programming [5], [6].
II.
The Essence of the Barrier
Synchronization Problem
The process of synchronization includes sequential
phases of waiting and activation [8], [9]. The phase of
waiting starts at the finishing moment of the first
synchronizing thread, and ends when last thread is
executed. The fact is, by completing this phase, the
conditions of synchronization are considered to be met.
For the following phases, each phase will start
immediately after the proceeding one (without counting a
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
927
Jamil S. Al-Azzeh
time delay to prepare the condition of synchronization,
and ends at the moment of activation of last threads
following after the current barrier).
The process of interaction of parallel threads of
process during the barrier synchronization is illustrated
in Fig. 1. Activation of threads B8-B14 (which are usually
allocated in different processor units) is correct when all
threads B1-B7 (also are usually allocated in different
processors) are executed. This process is defined by the
activation barrier va , where the time moment t 
can be called as universal; WBS – is structural
complexity of hardware-software subsystem, that
implements the method of synchronization in the whole
computing system; WBS is upper extreme of the WBS
value.
corresponds to the waiting phase, and time t 
corresponds to beginning of activation phase. The time of
synchronization (also called as latency) can be evaluated
by the sum t   t  , the value of it is related to the
method of synchronization.
Well known methods of synchronization are
suboptimal because they do not satisfy the criteria 1.
They can be classified by many features. There are
centralized and decentralized, localized and distributed
methods. Centralized methods are determined by
synchronization condition that should be checked by one
of processing unit of the system that called main
processing unit (PU). For each barrier, it may correspond
to personal main processing unit [10]-[12].
After meeting the condition of synchronization, the
main PU sends appropriate messages (signals) for other
PU of parallel computing system.
The decentralized method is characterized by an
independent verification of synchronization condition by
all (or, sometimes some) PU of the parallel processing
system [13], [14]. If the control of synchronization
condition in the system has been provided by common
for all PU; then the device can be called a
synchronization
processor.
The
method
of
synchronization is determined as a localized method
[10], [11], [15]-[17], if the same function is distributed
between several units of the synchronization model, and
is also categorized as distributed method [18]-[21].
Significant decrement of the time of barrier
synchronization is achieved by implementing the method
of synchronization in hardware, in this context the
emphasis of this paper will be done in description of
hardware synchronization methods (HSM). During last
two decades a wide range of HSM methods has been
proposed [10], [11], [15]-[17], [19], [21]-[30].
There
are
also
hybrid
(hardware-software)
synchronization methods that combine special system
utilities with hardware support on the level of standard
communication units [12], [13], [31]-[37].
III. Classification of Barrier
Synchronization Methods
Fig. 1. Interaction of parallel threads of process during
the barrier synchronization
The method of synchronization can be considered as
optimal for the given system, if it guarantees the
minimum value of synchronization time for any subset of
parallel threads, and a minimum price of softwarehardware implementation of the method. Mathematically,
given requirements can be represented as (1):
Distributed hardware synchronization methods
Distributed and often decentralized Synchronization
methods are widely used in the matrix of VLSI systems,
since they involve inclusion to the computing system.
The specialized s barrier environment is the one that
controls the synchronization process. The tree barrier
environments that implement the logical "AND"
operation [23], [24], [30] have become one of the first to
be widespread.
Particularly, the elementary barrier environment of
CM-5 system [23] is organized in the form of two one-bit
binary trees. One of them operates in the waiting phase
(waiting tree) and other one in the activation phase
(activation tree).
Т BS  min;
CBS  max;
(1)
WBS  WBS
where
Т BS
is
mathematical expectation of
synchronization time; CBS - is combinatorial flexibility
of synchronization, and is defined as the ratio of the
number of admissible variants of parallel threads
allocation to the all number of such variants; when the
value of CBS  max  1 the method of synchronization
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
928
Jamil S. Al-Azzeh
To support parallel barriers in CM-5 systems, a set of
concurrent tree environments are used.
Each synchronizing environment associated with a
particular group of synchronized parallel threads. Any
group can be dynamically decomposed in to the smallest
groups and vice versa, any groups can be joined to the
biggest groups. During decomposition or joining
simultaneously decomposition and joining of barrier
environments should be provided. The structure of the
simplest single-bit barrier synchronization system CM-5
in example of 8-processors configuration is represented
in the Fig. 2.
However it has some disadvantages. First, the severe
restriction in configuration of subgroups of parallel
threads; that it is should have a power of 2i , i  1, 2 ,3,
and the threads of subgroups should be allocated in units
of system to be correspondent to neighboring vertices of
the barrier environment ( CBS  1 ). This is the most
significant disadvantage of all. Second, increased system
dimensions because of the complexity of synchronizing
the capacity of barrier protection. Another disadvantage
of the described method is complexity of incrementing of
the barrier environment during incrementing the system
size. Paper [29] introduce a special organization of the
matrix barrier environment called multiple disjoint
barrier synchronizations (MDBS-network), based on the
tree structures of CM-5 system. The MDBS-network is
constructed from two single-bit hardware-based trees.
First tree (AND tree) implements an operation of
pending the completion of parallel threads, the second
one (OR tree) performs operation of signaling that result
activation of units awaiting the completion of
synchronization.
MDBS-network
provides
low
synchronization time and has a low hardware complexity
( WBS  WBS ). However, using this network requires
prior conversion of the parallel program that causes an
increment of the program length. To overcome
mentioned disadvantage, the MDBS-network according
to the [25] proposed to build on the basis of multi-bit
trees, with nodes that implement the operation of finding
the maximum (max-tree).
Unlike to the barrier environment used in the CM-5
systems, the MDBS-trivially embedded in the network
topological structure of the system, providing
theoretically unlimited scalability.
Each unit of the network is a configurable that allows
dynamically generates a variety of configuration subtrees
for synchronization of arbitrary sub-parallel branches of
the network (see Fig. 4). The structure of a unit MDBS
network represented in the Fig. 5. It consists of two
independent parts (both parts separated in the figure by
dotted line).
Fig. 2. The structure of elementary barrier environment
of computing system CM-5
The waiting tree consists of logical gates "AND”.
When activation tree includes duplicator (D), then
each processing unit connected to the waiting tree
through the flag x will indicate ready condition. This flag
is set to the active condition in the moment when PU
finishes execution of parallel thread and is set to the
passive condition when the process of synchronization
has been completed. Synchronization is completed as
soon as the signal from the activation tree activates the
"go" flag z, which indicates running condition.
During decomposition of parallel threads into
subgroups, the barrier synchronization environment
should be also decomposed into fragments.
Decomposition of environment provided by the recommutation of some connections in waiting and
activation trees that results the set of unrelated pairs of
subtrees. Such kind of decomposition of threads into
three subgroups is illustrated in the Fig. 3.
Synchronization environment of CM-5 system
provides a small synchronization time ( TBS  min ) and
is characterized by low implementation complexity
( WBS  WBS ).
&
D
Subgroup 1
&
D
&
D
Subgroup 2
x
&
D
z
x
PU 1
z
PU 2
x
&
D
z
x
PU 3
z
PU 4
x
Subgroup 3
&
D
z
x
PU 5
z
PU 6
x
&
D
z
x
PU 7
z
PU 8
Fig. 3. Decomposition of the barrier environment
of CM-5 system into three fragments
Fig. 4. Example of subtree configuration in MDBS-network
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
929
Jamil S. Al-Azzeh
location of the parallel branches, can easily be embedded
into topological model of the system, which allows
increasing its dimension. In addition, the MDBS-network
provides the same high speed of synchronization
( TBS  min ) and low implementation complexity
( WBS  WBS ), as a synchronization mechanism of CM5 system. The main disadvantage of MDBS-network is
low flexibility because synchronizing branches should be
allocated only in neighboring units of the system (each
group of branches should occupy a continuous region in
the structure of the system). In practice, however, this
requirement is often not feasible. On the one hand,
during allocation the task in the system often cannot find
a continuous region of sufficient size and the task has to
devote several subregions of the system. On the other
hand, even if the task is assigned to the continuous region
(this requirement can be provided by the operating
system), it is unknown how the parallel branches of task
will be grouped.
Another distributed hardware-based synchronization
method proposed in the paper [25]. Unlike to the
previously discussed synchronization methods of CM-5,
T3D, MDBS systems this method does not use a barrier
tree-structure environment. The mechanism of
synchronization based on the barrier environment with
mesh topology, which nodes are related to the operation
of "logical AND". The Environment structure of twodimensional n × n mesh is represented in the Fig. 6.
The procedure of synchronization in the given
environment (see the Fig. 6) includes n-1 sequentially
executed phases, where n is the largest of the mesh sizes.
In each of these phase provided independent
interaction of fours neighbor units through the elements
of wired AND logic (joining units into fours neighbors
determined by their mesh indices). The interaction
between units provided by generation of signals which
denote the completion of parallel branches of the
program as soon as all four units reach the barrier, then,
the signals is distributed into neighboring groups of fours
units.
Fig. 5. The simplified structure of MDBS-network
The upper part provides the distribution of signals in
the waiting phase (that's corresponds to the top of
waiting tree), and the lower part implements the
transmission of signals in the activation phase (activation
corresponds to the top of the activation tree).
The unit is connected to the waiting tree through the
flag of ready condition "x", which is set to the active
condition at the moment when parallel thread finished
and set to the passive condition after confirmation of the
end of synchronization. Confirmation signal connected to
the go flag "z" of the activation tree.
To configure the trees in the MDBS-network registers
the presence of child node (RPCN) and the parent node
(RPPN) are used. The resolution of both registers is
determined by the maximum number of neighboring
units in the system structure (in current case 4 bits
registers are used). Bits of RPCN register are set in such
way that the i-th bit of the register receives a zero value
if the neighbor unit in the i-th direction corresponds to a
child node of the waiting tree out; otherwise register
receives the value of logical one. Note that if current unit
is a leaf of the waiting tree all bits of RPCN register are
set to logic one value.
Setting bits of RPPN register are defined according to
the following algorithm. The i-th bit of the register
receives a zero value if the next unit in the i-th direction
corresponds to the parent node in the activation tree,
otherwise bit values of register are set to the logical one.
All values of RPPN register will be equal one only in
unit that corresponds to the root of the activation tree.
For example, setting logical one in the output of the
AND gate number 3 (see the Fig. 5) will allow
transmitting the synchronization signal from the waiting
tree to the activation tree.
The MDBS-network allows overcoming some
disadvantages of similar synchronization techniques used
in such systems as CM-5, T3D. Particularly, this network
does not require the allocation of synchronizing groups
strictly according to the topology of the barrier protection
branches.
The network is dynamically adjusted to the specified
Fig. 6. The structure of 2D mesh barrier environment
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
930
Jamil S. Al-Azzeh
After receiving the confirmation signal of the
completion of the synchronization begins to activate the
required modules.
Once all the modules will receive a confirmation of
the completion of the synchronization, activation of
required units starts. Figs. 7 illustrate the order of signals
distribution in the 4  4 mesh network ( n  4 ). Four of
the interacting neighboring units are connected by thick
lines. The arrows show the direction of synchronization
signals (logical levels of signals shown above the
arrows).
This method of synchronization provides short
synchronization time. For example, according to the [25],
the value of TBS located in the range 1–10 microseconds
in the 64x64 dimension of the mesh constructed using 3
nanoseconds delay logical gates).
The complexity of the implementation of this method
is low and does not depend on the number of units
( WBS  WBS ).
Main disadvantage of this synchronization method is
low flexibility due to the requirement of allocation the
groups of synchronized branches of parallel program in
rectangular areas of the system ( CBS  1 ). Attempts to
overcome this limitation cause a growth of hardware
complexity of the barrier cell environment Another
disadvantage of this approach is complexity of its
implementation for systems of the higher dimensions
(cubes, hypercubes).
It is possible to note that the synchronization method
of MDBS system discussed above more flexible and
allows to be implemented in hypercubes systems.
IV.
Conclusion
Analysis of known barrier synchronization methods,
used in the matrix of VLSI systems, shows that most of
them provides short synchronization time, and satisfies
the constraint of the structural complexity.
The main disadvantage of these methods is the low
flexibility associated with the severe restrictions on the
allocation of synchronizing branches of parallel program.
Hybrid methods that join hardware and software
techniques of synchronization [12], [13], [31]-[37] in
most cases avoid these limitations.
However, inferior the hardware methods in point of
view of synchronization are time. In addition, application
of hybrid methods cause a rise messages flow in
communication network that, in some conditions can
cause the imbalance of the system.
Thereby, further studies of the barrier synchronization
problem in the matrix VLSI systems, and researches of
universal hardware methods of solution are needed. In
our point of view the question of parallel-pipelined
barrier synchronization in multi-matrix systems based on
distributed coordination environment is most promising
now.
References
[1]
J. Wu, T. Srikanthan. Fast reconfiguring mesh-connected VLSI
arrays / Circuits and Systems, 2004. ISCAS '04. Proceedings of
the 2004 International Symposium on Volume 2, 23-26 May
2004 pp. 949-952. Vol.2.
[2] Axelrod, T.S. Effects of synchronization barriers on
multiprocessor performance / T.S. Axelrod // Parallel Computing.
1986. N3. P. 129-140.
[3] Rodrigo Santos, Jorge Santos, Javier Orozco. Scheduling Hard
Real-Time Tasks in Multicore General Purpose/ Special Purpose
Processors Systems-on-a-Chip: an Energy-Aware Approach.
IRECOS, November 2009 Vol. 4. n. 6 "pp. 728-736
[4] OpenMP Application Programming Interface, Version 2.5, May
2005.
[5] O’Boyle, M. Compile time barrier synchronization minimization /
M. O’Boyle, E. Stohr // IEEE Transactions on Parallel and
Distributed Systems. 2002. Vol.13, N6. P. 529-543.
[6] Arenstorf, N.S. Comparing barrier algorithms / N.S. Arenstorf,
H.F. Jordan // Parallel Computing. 1989. N12. P. 157-170.
[7] O’Keefe, M.T. Hardware barrier synchronization: dynamic
barrier MIMD (DBM) / M.T. O’Keefe, H.G. Dietz // Proc. Intl
Conf. Parallel Processing, August 1990, Urbana-Champaign.
Pennsylvania State University Press, 1990. Vol.1. P. 43-46.
[8] O’Keefe, M.T. Hardware barrier synchronization: static barrier
MIMD (SBM) / M.T. O’Keefe, H.G. Dietz // Proc. Intl Conf.
Parallel Processing, August 1990, Urbana-Champaign.
Pennsylvania State University Press, 1990. Vol.1. P. 35-42.
[9] E. Ilavarasan, P. Thambidurai Genetic Algorithm for Task
Scheduling on Distributed Heterogeneous Computing System,
(2006) International Review on Computers and Software
(IRECOS), 1 (3), pp. 233 – 242.
[10] Yang, J.S. Designing tree-based barrier synchronization on 2D
mesh networks / J.S. Yang, C.T. King // IEEE Transactions on
Parallel and Distributed Systems. 1998. Vol.9, N6. P. 526-533.
[11] Patent 7009976 USA, MKI H 04 L 12/56. Method and apparatus
for using barrier phases to synchronize processes and components
in a packet switching system / Michelson J.E., Williams J.J. (Jr.),
Dejanovic T., Fingerhut J.A. (USA). N894201; announced
27.06.01; accepted 07.03.06.
[12] Feldmann, A. Subset barrier synchronization on a privatememory parallel system / A. Feldmann, T. Gross, D. O’Hallaron
Figs. 7. Distribution of synchronization signals in the mesh barrier
environment (а) - initial condition; (b) - phase number 1; (c) – phase
number 2; (d) – phase number 3
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
931
Jamil S. Al-Azzeh
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[21]
[22]
[23]
[24]
[25]
[26]
[27]
[28]
[29]
[30]
[31]
[32]
[et al.] // Proc. ACM Symp. Parallel Algor. Architect. (SPAA92)
(San Diego, June 29 - July 1 1992). ACM: 1992. P. 209-218.
Patent 5434995 USA, MKI G 06 F 15/16, 15/80. Barrier
synchronization for distributed memory massively parallel
processing systems / Oberlin S.M., Fromm E.C. (USA).
N165265; announced. 10.12.93; accepted. 18.07.95.
Johnson, T.A. Cyclical cascade chains: a dynamic barrier
synchronization mechanism for multiprocessor systems / T.A.
Johnson, R.R. Hoare // Proc. IEEE Workshop Mass. Paral.
Processing, Intl Paral. Distrib. Processing Symp. (IPDPS-01) (San
Francisco, April 23-27 2001). Los Alamitos: IEEE Computer
Society, 2001. P. 2061-2068.
Sivaram, R. A reliable hardware barrier synchronization scheme /
R. Sivaram, C.B. Stunkel, D.K. Panda // Proc. 11 Intl Parallel
Processing Symp. (IPPS-97), Geneva, 1-5 April 1997. Los
Alamitos: IEEE Computer Society, 1997. P. 274-280.
Patent №2280887 Russia, MKI G 05 B 19/18, G06F9/28.
Microcontroller network / A.A. Ivanov, Abdel Jalil, I.V. Zotov
№2005104065/09; announced 15.02.05; published 27.07.06
Cohen, W.E. An optical bus-based distributed dynamic barrier
mechanism / W.E. Cohen, D.W. Hyde, R.K. Gaede // IEEE
Transactions on Computers. 2000. Vol.49, N12. P. 1354-1365.
Sampson, J. Fast synchronization for chip multiprocessors / J.
Sampson, R. González, J.-F. Collard [et al.] // SIGARCH
Computer Architecture News. 2005. Vol.33, N4. P. 64-69.
Shang, S.S. Distributed hardwired barrier synchronization for
scalable multiprocessor clusters / S.S. Shang, K. Hwang // IEEE
Transactions on Parallel and Distributed Systems. 1995. Vol.6,
N6. P. 591-605.
Beckmann, C.J. Fast barrier synchronization hardware / C.J.
Beckmann, C.D. Polychronopoulos // Proc. Intl Conf.
Supercomputing (ICS-90), Nov. 1990. Los Alamitos, CA: IEEE
Computer Society Press, 1990. P. 180-189.
Connection machine CM-5 technical summary / Thinking
Machines Corp.: Nov. 1992.
Cray T3D System Architecture Overview / Cray Research, Inc.:
1993.
Delgado, M. A distributed barrier synchronization solution in
hardware for 2D-mesh multicomputers / M. Delgado, S. Kofuji //
Proc. 3rd Intl Conf. High Performance Computing, Dec. 19-22
1996. IEEE: 1996. P. 368-373.
Dietz, H.G. PAPERS: Purdue's adapter for parallel execution and
rapid synchronization / H. G. Dietz, T. Muhammad [et al.] //
Technical Report TR-EE 94-11, March 1994, School of Electrical
Engineering, Purdue University: 1994.
Hoare, R. Bitwise aggregate networks / R. Hoare, H. Dietz [et al.]
// 8th IEEE Symp. Parallel Distrib. Processing, Oct. 23-26 1996.
IEEE: 1996, P. 306-313.
Johnson, D. A distributed hardware mechanism for process
synchronization on shared-bus multiprocessors / D. Johnson, D.
Lilja, J. Riedl // Proc. Intl Conf. Parallel Processing (ICPP-94),
August 15-19, 1994. / North Carolina State University. NC, CRC
Press: 1994. Vol.2 (Software). P.268-275.
Ramakrishnan, V. Efficient techniques for nested and disjoint
barrier synchronization / V. Ramakrishnan, I.D. Scherson, R.
Subramanian // Journal of Parallel and Distributed Computing.
1999. Vol.58, N8. P. 333-356.
Shimizu, T. Performance evaluation of the AP1000 / T. Shimizu
[et al.] // FUJITSU Sci. Tech. Journal. 1993. Vol. 29, March. P.
15-24.
Patent 6085303 USA, MKI G 06 F 15/16. Serialized race-free
virtual barrier network / Thorson G., Passint R.S., Scott S.L.
(USA). N972010; announced 17.11.97; accepted 04.07.00.
Forsell, M. Efficient barrier synchronization mechanism for
emulated shared memory NOCs / M. Forsell // Proc. Intl Symp.
System-on-Chip (Tampere, Finland, Nov. 16-18 2004). IEEE,
2004. P. 33-36.
Kini, S.P. Fast and scalable barrier using RDMA and multicast
mechanisms for Infiniband-based clusters / S.P. Kini, J. Liu [et
al.] // Proc. 10th European PVM/MPI Users' Group Conf.
(EuroPVM/MPI03) (Venice, Italy, 29 Sep - 2 Oct, 2003). P. 369378.
Moh, S. Four-ary tree-based barrier synchronization for 2D
meshes without nonmember involvement / S. Moh, C. Yu, B. Lee
[33]
[34]
[35]
[36]
[37]
[et al.] // IEEE Transactions on Computers. 2001. Vol.50, N8. P.
811-823.
Olnowich, H.T. ALLNODE barrier synchronization network /
H.T. Olnowich // Proc. 9th Intl Parallel Processing Symp. (IPPS95), Santa Barbara, CA, April 25-28 1995. Los Alamitos: IEEE
Computer Society, 1995. P.265-269.
Sampson, J. Exploiting fine-grained data parallelism with chip
multiprocessors and fast barriers / J. Sampson, R. Gonzalez [et
al.] // Proc. 39th Annual IEEE/ACM Intl. Symp.
Microarchitecture, 2006, MICRO-39, Dec. 2006. IEEE, ACM:
2006. P. 235-246.
R. K. Jena, P. Srivastava, G. K. Sharma, A Review on Genetic
Algorithm in Parallel & Distributed Environment, (2008)
International Review on Computers and Software (IRECOS), 3
(5), pp. 532 – 544.
Sun, Y. Barrier synchronization on wormhole-routed networks /
Y. Sun, P.Y.S. Cheung, X. Lin // IEEE Transactions on Parallel
and Distributed Systems. 2001. Vol.12, N6. P. 583-597.
Yumei Ning, Zhenguo Ding, Ping Zeng, Task Allocation
Algorithm Based-on Distance in Distributed Adaptive Network
Management System, (2012) International Review on Computers
and Software (IRECOS), 7 (4), pp. 1938-1942.
Authors’ information
Dr. Jamil S. Al-Azzeh received his PhD Degree
in Computer Engineering from Saint Petersburg
Sate University – Russia in 2008. Since 2008,
Dr. Al-Azzeh has been an assistant professor in
the Computer Engineering Department, Faculty
of Engineering Technology, at Al-Balqa’
Applied University. His research interests
include image processing. FPGA, digital
systems design, network operating system, and Microprocessors.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
932
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Classification of Ultrasound Carotid Artery Images
Using Texture Features
Dhanalakshmi Samiappan1, Venkatesh Chakrapani2
Abstract – The Cardio Vascular Disease (CVD) is the most fatal disease in the world in terms of
deaths. The cardio vascular disease, associated with stroke and heart attack, is mainly caused by
the increase in calcium deposition in the carotid artery. The Intima-Media Thickness (IMT) of the
Common Carotid Artery (CCA) is widely used as an early indicator of CVD. The risk of CVD
varies with age groups and this can be categorized based on the texture pattern of image of the
carotid artery. This work presents an automated method to classify the carotid artery
abnormalities by determining an appropriate Region of Interest (ROI), extracting the texture
features, and calculating the IMT. The Ultrasound specimen image is acquired, intensity
normalized, pre-processed to remove the speckle noise and then segmented. The texture analysis
for segmented images is done using AM – FM techniques. The instantaneous values of the
amplitude and frequency of each image specimen is obtained and it is quantized. It is then
compared with the standard texture pattern, to identify whether the artery is normal or abnormal.
Simulation results shows significant texture differences between the higher-risk age group of >60
years and the lower-risk age group of <50 and the 50-60 age group. Detecting the level of CVD
was done by measuring the IMT. The overall process aims at implementing a fully automated
system which helps in avoiding human errors, while measuring these values. The measurement
technique is described in detail, highlighting the advantages compared to other methods and
reporting the experimental results. Finally, the intrinsic accuracy of the system is estimated by an
analytical approach. It also decreases inter-reader bias, potentially making it applicable for use in
cardiovascular risk assessment. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights
reserved.
Keywords: Carotid Artery, Intima Media Thickness, Texture Features, Instantaneous Amplitude,
Instantaneous Frequency
The segmentation of the CCA wall is important for the
evaluation of the IMT on ultrasound images. Manual
tracing of IMT is time consuming and also leads to
limited accuracy and precision due to inter and intra
observer variability.
Many authors proposed different algorithms for
segmentation of Carotid Artery (CA) and for measuring
IMT [3]. The Canny technique is an optimal edge
detection technique but the increase in the width of the
Gaussian kernel reduces the detector’s sensitivity to
noise.
The increase in Gaussian width increases the
localization error in the detected edges. Segmentation
process employing watershed transform produces extra
contours. Active contour based segmentation has many
limitations like initial conditions and curve
parameterization [3].
FCM clustering method segments the boundary by
classifying image pixels into different clusters but does
not consider any spatial information in image context,
which makes it very sensitive to noise and other image
artifacts [4].
Nomenclature
x’
hx
hy
hθ
f(x,y)
H2d
Mean of estimated value
Horizontal derivative filter (matrix)
Vertical derivative filter (matrix)
Arbitrary angle derivative filter (matrix)
Input image
Two dimensional hilbert transform operator
I.
Introduction
Over the last few years, image processing has been
playing an increasingly important role in many scientific
and medical areas particularly in ultrasound imaging [1].
Speckle is a multiplicative noise, having a granular
pattern which is the inherent property of ultrasound
images. So ultrasound images are treated as textured
images and thus texture feature extraction plays a crucial
role. The low quality of image influenced by the speckle
noise and fuzziness of mass boundaries usually makes
the segmentation complicated.
Computerized segmentation fails because of a high
failure rate of tissue analysis [2].
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
933
Dhanalakshmi Samiappan, Venkatesh Chakrapani
I.1.
Common Carotid Artery
Intima-Media thickness of the carotid artery is known
as Carotid IMT. The tunica Intima is composed of a
single layer of flattened epithelial cells with an
underlying basement membrane. The tunica media
comprises an inner layer of elastic fibers and an outer
layer of circular smooth muscle. The tunica adventitia is
composed of collagenous fibers. Based on IMT, CA is
categorized as normal, abnormal and sub classification of
abnormal CA like thickening and plaque can also be
done. Reference values of the IMT are the following:
Normal: IMT < 1.0 mm;
Thickening: 1.0 mm < IMT < 1.3 mm;
Plaque: IMT > 1.3 mm.
Each carotid artery is characterized by a longitudinal
tract called common carotid, after an enlargement known
as carotid sinus containing a flow divider, bifurcates into
two arteries, one internal and one external. Due to the
presence of plaque the blood flow through the artery is
reduced which is shown in Fig. 1. Carotid artery disease
may not cause signs or symptoms until the carotid
arteries are severely narrowed or blocked.
II.
The Ultrasound AV is acquired using a linear
ultrasound probe connected to a Phillips En Visor C
ultrasound scanner. The AV is then stored in a PC in
AVI format, as received from the ultrasound scanner.
The acquired AVI file is then split into constituent
frames using MATLAB. This is done using a user
defined Simulink Model. The input of the model is the
video acquired from the ultrasound device and the output
is the constituent frames of the video.
The model consists of a constant, a counter, input
source, summer, frame splitter and an output device. The
number of bits as specified in the counter determine the
number frames obtained from the video. The typical
range for the number of bits is 10-16.
The final block in the Simulink model writes the
output images to the current directory of MATLAB as
they are obtained in sequential order as shown in Fig. 3.
Fig. 1. Cross sectional view of narrowed CA
I.2.
Ultrasound Carotid Artery Imaging
Carotid images are taken by ultrasound equipment
working at frequencies ranging from 1 to 20 MHz, and
are obtained via a probe that has to be positioned on the
patient’s neck. There are two phases to the measurement
process: i) Carotid image capturing ii) Thickness
measurement. Image quality depends both on operator
skill and patient tissue characteristics. The final result of
this phase is characterized by very low repeatability due
not only to this reason but also to the natural variability
of arterial dimensions too.
The operator then carries out thickness measurements
using a track-ball to select measurement points on the
leading edges of the captured ultrasound image. This
phase too has low reproducibility and low accuracy
mainly due to the poor ability of the human eye [5].
I.3.
Image Acquisition
Carotid IMT
The carotid artery typically has three layers as shown
in Fig. 2. The Intima (innermost layer, which is in
contact with the bloodstream), the Media (middle layer),
and the Adventitia (outer layer). IMT refers to the
measurement of the thickness of the two layers, Intima
and Media, of the artery. In patients with atherosclerosis,
these layers may thicken, reducing the size of the lumen
and restricting blood flow.
Fig. 3. Block for Converting Video in to Frames
II.1.
De-Speckling
One of the most prevalent noises in Ultra Sound
images is the speckle noise. The filter that we use to
remove the noise in the image is the KUAN filter, which
has been successfully applied to all types of coherent
imagery like acoustic imagery, and laser illuminated
imagery [5] and has been found to show the best
performance [6].
The Kuan filter is developed from the additive noise
filter. Correlation properties of speckle are used and a
local MMSE (LMMSE) filter is developed using local
statistics. For easy numerical computation, LMMSE and
MAP speckle filters are also presented for cases when
pixel-to-pixel correlation can be neglected.
Fig. 2. Carotid IMT
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
934
Dhanalakshmi Samiappan
Samiappan,, Venkatesh Chakrapani
TABLE I
COMPARISON OF SNR FOR DIFFERENT FILTERS
Signal to Noise Ratio
Filter
Types
Min (dB)
Max (dB)
Mean(dB)
Median
319.953
319.953
319.953
LPF
-0.044
-0.044
-0.044
0.044
-0.044
0.044
Rank Order
-44.17
-44.17
-44.17
44.17
-44.17
44.17
Kaun
8.539
33.41
20.975
Frost
10.52
10.52
10.52
Lee
5.443
5.443
5.443
Steer Gauss
-61.503
-61.503
8.538
-26.483
26.483
Gauss
-9.53
9.53
-9.53
9.53
-9.53
9.53
Wiener
-22.05
-22.05
8.538
-11.025
11.025
This occurs when the sampling interval of the
speckled intensity image is of the order of the co
correlation
rrelation
length of speckle (image resolution). The image samples
can then be assumed to be independent.
II
II.2.
Analysis of the Kuan Filter
Kuan [5] assumed an image model which has non
nonstationary mean and variance (NMNV). A multiplicative
speckle intensity model is used. Assuming no correlation,
the LLMMSE filter reduces to a set of scalar equations
and the simplified Kuan filter becomes:
After the speckle noise is removed from the image
using the Kuan Filter, the gradient of the image is
obtained. This is done by using the ‘gauss
‘gauss gradient
gradient’’
function. It is one of the most common techniques used
in m
modern
odern digital image processing.
As an image is a function of two (or more) variables it
is necessary to def
define
ine the direction in which the
derivative is taken. For the two
two-dimensional
dimensional case we
have the horizontal direction, the vertical direction, or an
arbitrary direction which can be considered as a
combination of the two. If we use hx to denote a
horizontal de
derivative
rivative filter (matrix), hy to denote a
vertical derivative filter (matrix), and hθ
h to denote the
arbitrary angle derivative filter (matrix), then:
2
x’LLMMSE= x’ + [[var
var(xx) / var(
var(x)) + x’’ + vvar
ar(x)]
)] ((z--x’)) (1)
Table
able I shows the comparisons bbetween
etween different
filters. Signal to noise ratio is used for analyzing the best
filter to remove the speckle noise without losing the
texture patterns.
Median filter has the highest SNR when compared to
all the other filters but has more intensity information
loss as seen in Fig. 4(
4(b) and the texture cannot be well
defined using this filtered image.
Kaun filter has the better SNR still it preserves the
edge and intensity information comparatively as shown
in Fig. 4(a)
4(a).. Hence Kaun filter is best used for removing
Speckle noise.
(2)
T
The
he horizontal gradient can be neglected as it is
redundant in the method of processing.
processing The vertical
gradient is the crucial input for the column
column-wise
wise
computation that is performed
performed. The magnitude of the
vertical gradient takes large values when there are strong
edges in the image. Hence for easy computation it is
necessary to normalize the values of the gradient to lie
between 0 and 1.
III.
III Proposed Method for
Identification of ROI
In earlier methods [[3
3]] to correctly identify the region
of interest, morphological considerations were crucial:
The fact that the vessel lumen is characterized by
pixels with lowlow-intensity
intensity and relatively low variance
variance,,
surrounded by high-intensity
high intensity pixels belonging to the
carotid walls was exploited. A pixel is considered
belonging to the adventitia tunica if its intensity is a local
maximum and if at least a pixel belonging to the lumen is
located above it.
It was observed
observed that computing the IMT in one wall of
the Common Carotid Artery was sufficient to predict
cardiac risks, as it is done in the manual operator method.
As a result, one half of the image could be made free
of computing. In all standard carotid images tthe
he tract of
the Carotid Artery lies close to the center of the image.
In our study, it was found that the lower half of the
image is best suited for computing the IMT, as the
Jugular Vein sometimes runs through the upper half of
Fig.
g. 4(a)
(a). Kaun Filtered output image
Fig.. 4(b).
4(b) Median Filtered output image
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
935
Dhanalakshmi Samiappan, Venkatesh Chakrapani
the image and thus may result in erroneous values. Hence
the section of the image containing part of the CCA tract
and the near wall of the Carotid Artery is identified as the
ROI as shown in Fig. 5.
III.2. Measurement of IMT Thickness
The most crucial part of the algorithm is to calculate
the thickness of the Intima-Media layer, which is critical
to predicting the risk of cardiac disorders in patients. The
unique characteristic of the artery wall, when compared
to others parts of the image, is exploited. The walls of the
Carotid Artery have a high intensity and after the
computation of the normalized gradient the walls usually
have a positive gradient value. It is also important to note
that the wall is flanked on both its sides by regions with
relatively low gradient values as they are not part of any
of the edges. The thickness is calculated for each column
of the image. It is best to compute the thickness for a
large number of columns in the image (about 100) to iron
out any errors in measurement. This is done by taking the
average value of all the columns put together. The rate of
cardiac risks can be predicted by comparing the value
obtained to the values mentioned earlier in this paper.
III.1. Contour Segmentation
The Dynamic Programming (DP) algorithm is a
technique for solving optimization problems where not
all variables in the evaluation function are inter-related
simultaneously. It has successfully been applied to
ultrasonic boundary detection. [2]
For the image obtained in the ROI process, local
measurements of intensity gradient, brightness below and
darkness above are extracted and included as weighted
terms in a cost function. Each image point of the search
region then gets a specific cost which, in turn, correlates
to the likelihood of that point being a part of the IntimaMedia layer.
All possible sets of spatially consecutive points are
considered and favor is given to that which minimizes
the cost function. The optimal points are the ones that
minimize the cost function:
()
C(i) = w1c1(i) + w2c2(i) + w3c3(i-1,i)
III.3. Texture Analysis
The normalised image is passed to hilbert operator [1]
and to a filter bank to produce AM-FM features:
fAS(x,y) = f (x,y) + jH2-d f (x,y)
(3)
(5)
f (x,y) denotes the input image and H2d represents the two
dimensional hilbert transform operator applied along the
columns. The normalised image is given to a filter bank
and the output of band pass filter is used to estimate the
instantaneous amplitude (IA), frequency (IF).
The strong vertical artifacts do not represent texture
and in order to avoid the vertical artifacts low pass filter
is used. Thus AM-FM features are extracted only for the
horizontal frequency axis. The normalisation is done by
the following process:
(4)
where w1, w2, w3 are weighting factors, c1, c2 and c3 are
the intensity gradient, brightness below and darkness
above cost terms, respectively.
By the DP algorithm, the optimal boundary is found
without the need for exhaustive search among all
possible lines.
In our implementation of the DP algorithm it was
possible to modify obvious detection errors.
This was done by pointing at a correct position in
order to force the boundary to pass that point. Using this
single point correction technique several points along the
boundary could be modified.
In this study, the amount of manual interventions
required was also low when compared to other detection
methods.
f ¯AS,i(x,y) = fAS,i(x,y) / | fAS.i(x,y)|
(6)
f ¯AS,i(x,y) denote the output of the ith filter. In order to
verify the results, the mean median and standard
deviation of the given image (texture parameters) are
also analyzed. Analytical calculations were carried out
and the cutoff values were set based on trial and error
method.
IV.
Simulation Results and Discussions
Experiments were done using 361 ultrasound carotid
artery images, collected from M/s Bharat Scans,
Chennai, Tamilnadu, India for analysis and evaluation of
the proposed classifier. Studies were done using a
MATlab environment –MATlab R2011b on an Intel®
Core i3, 2.40 GHZ PC with 3 GB memory.
The ultrasound carotid artery image database is
created consisting of total 361 images spanning normal
and abnormal classes. These samples include 167 normal
CA and 194 abnormal CA. Three cases are considered
based on the age of the person.
Fig. 5. Segmented Image of CCA
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
936
Dhanalakshmi Samiappan, Venkatesh Chakrapani
Case I: Age group of less than or equal to 40.
Case II: Age group between 40 to 60.
Case III: Age group of more than 60.
Different texture features [11], [12] are extracted from
the speckle noise removed carotid artery image and then
compared with the standard reference values to classify
the carotid artery. Standard reference values are given in
Table II.
the peak value is found to be 100 and the minimum value
less than 20. Instantaneous frequency is very high and
the peaks are found to be at normal intervals and the
variations between the peaks are same for a normal
carotid artery of age group less than 40. From the Fig.
6(b), it is clear that the real and imaginary part variation
follows different and irregular patterns. Instantaneous
amplitude graph shows the peak value as 40 and the
minimum value as 12. Instantaneous frequency plot
shows that the variations between the peaks are different
for an abnormal carotid artery of age group less than 40.
From the Fig. 6(c), it is evident that the real and
imaginary part variation follows the same and regular
pattern. Instantaneous amplitude varies rhythmically and
the peak value is found to be 120 and the minimum value
as 20. Instantaneous frequency is very high and the peaks
are found to be at normal intervals and the variations
between the peaks are same for a normal artery of age
group 40 to 60.
TABLE II
REFERENCE VALUES FOR THE TEXTURE FEATURES
Texture Features
Reference Values
Mean
30
Median
20
Standard Deviation
25
Instantaneous Amplitude
8
Instantaneous Frequency
-0.06
From the Fig. 6(a), it is evident that the real and
imaginary part variation follows the same and regular
pattern. Instantaneous amplitude varies rhythmically and
Fig. 6(a). Pattern of Normal carotid Artery of age group 40
Fig. 6(b). Pattern of Abnormal carotid Artery of age group 40
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
937
Dhanalakshmi Samiappan, Venkatesh Chakrapani
From the Fig. 6(d), it is clear that the real and
imaginary part variation follows different and irregular
patterns. Instantaneous amplitude graph shows the peak
value as 15 and the minimum value as 0. Instantaneous
frequency plot shows that the variations between the
peaks are different for an abnormal carotid artery of age
group 40 to 60. From the Fig. 6(e), it is evident that the
real and imaginary part variation follows the same and
regular pattern. Instantaneous amplitude varies
rhythmically and the peak value is found to be 130 and
the minimum value less than 5. Instantaneous frequency
is very high and the peaks are found to be at normal
Sl.No
1
2
3
4
5
6
intervals and the variations between the peaks are same
for a normal carotid artery of age group more than 60.
From the Fig. 6(f), it is clear that the real and
imaginary part variation follows different and irregular
patterns. Instantaneous amplitude graph shows the peak
value as 15 and the minimum value as 1. Instantaneous
frequency plot shows that the variations between the
peaks are different for an abnormal carotid artery of age
group more than 60.
Various texture features like mean, median, standard
deviation, IA and IF are analysed for different categories
and tabulated as shown below in Table III.
TABLE III
ANALYSIS OF THE TEXTURE FEATURES EXTRACTED FROM THE PRE-PROCESSED CAROTID ARTERY IMAGES
Various Texture features extracted from the
Nature of Carotid
Category
Pre-Processed Images
Artery
(In terms of Age)
Mean
Median
SD
IA
Normal Carotid
Below 40 Years
28.4781
18.9128
21.7699
7.4641
Artery
Between 40 – 60 years
24.9275
8.111
23.3324
7.6131
Above 60 Years
16.7698
1.0311
24.24
5.8
Abnormal Carotid
Below 40 Years
34.8568
38.4622
29.095
10.5915
Artery
Between 40 – 60 years
54.464
55.76
36.3188
8.8178
Above 60 Years
34.3985
27.3244
41.027
8.556
IF
-0.0293
-0.0569
-0.06
-0.0633
-0.0726
-0.1366
Fig. 6(c). Pattern of Normal carotid Artery of age group 40 – 60
Fig. 6(d). Pattern of Abnormal carotid Artery of age group 40 - 60
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
938
Dhanalakshmi Samiappan, Venkatesh Chakrapani
Fig. 6(e). Pattern of Normal carotid Artery of age group 60
Fig. 6(f). Pattern of Abnormal carotid Artery of age group 60
TABLE IV
COMPARISON OF IMT VALUES FOR MANUAL
AND AUTOMATED ALGORITHM IN PIXEL UNITS
Nature of the image
IMTAutomated
IMTManual
IV.1. Medical Expert Validation
ROI is segmented and then IMT is calculated and the
results are tabulated and compared with the manual
measurement taken by the sonologist.
From the Table IV, it is clear that automated IMT
values are very much close to the manual measurement
done by specialized and experienced sonologist.
We have simulated and tested our algorithm for all
these types of images and found that it works well for
both normal and abnormal carotid artery images of all
age groups.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Normal image (<40)
2.25
Normal image (40-60)
1.86
2.268
1.89
Normal image (>60)
3.01
3.024
Abnormal image (<40)
3.82
3.78
Abnormal image (40-60)
6.62
6.426
Abnormal image (>60)
4.53
4.536
International Review on Computers and Software, Vol. 8, N. 4
939
Dhanalakshmi Samiappan
Samiappan,, Venkatesh Chakrapani
V.
V
[10]
[
T. Gustavsson, R. Abu
Abu-Gharbieh,
Gharbieh, G. Ha
Hamarneh,
marneh, Q. Liang, ((1997),
1997),
“Implementation
Implementation and Comparison of Four Different Boundary
Detection Algorithms for Quantitative Ultrasonic Measurements
of the Human Carotid Artery”, IEEE Computers in Cardiology
Vol 24
24.
[11] Weichu Xiao, Baolong Guo, Weihong Chen
Chen,, Compatible Texture
Image Segmentation Algorithm Based on Mean Shift Method,
(2012) International Review on Computers and Software
(IRECOS)
(IRECOS), 7 (4)), pp. 1931-1937.
1931 1937.
[12] Alireza Samadi, Hossein Pourghassem, A Novel Age Estimation
Algorithm based
based on Texture Features and Curvelet Transform in
Human Face Images
Images, (2012) International Review on Computers
and Software (IRECOS)
(IRECOS),, 7 (1
1), pp. 149
149-157
157.
Conclusion
Automatic classification of normal and abnormal
ultrasound C
Caro
arotid
tid Arteries
Arteri is done using the patterns
obtained from textures is tested and verified in this paper.
paper
Due to dependency on operator
operator, ultrasonic image
quality and background noise manual tracing of
Ultrasound
ltrasound C
Carotid
arotid Artery
rtery IMT gives higher deviation in
result. The proposed method detects the irregularities
without the intervention of humans and thus this work
automates the process.
The new algorithm has been designed and optimized
to classify the Carotid A
Artery
rtery in real
real-time
time by extracting
the boundary and calculating the IMT with less
complexity. Various features are extracted from the
textures and compared
compared with the reference sstandard
tandard values
to check for abnormality of carotid images analytically.
The reference standard values mentioned above are
machine dependent and the one considered here is for the
linear ultrasound probe connected to a Phillips En Visor
C ultrasound scanner. The results of the proposed method
are compared with results from Sonologists and are
found to be the same.
same
The result shows that the proposed method detects the
irregularities without the intervention of humans and thus
this
his work automates the process
process. In terms of speed and
accuracy and simplicity texture feature analysis scheme
provides a significant improvement over the other
automated and semi-automated
semi automated methods.
Authors’ information
1
Easwari Engineering College, Anna University, Chennai, India.
E-mail:
E mail: sdhanalakshmi2004@gmail.com
2
Dean, Faculty of Engineering, EBET Group of Institutions, Kangayam
Kangayam,,
India.
S. Dhanalakshmi, Assistant professor, Easwari
Engineering College, Chennai graduated in EEE
from Bharathiyar University in the year 2002,
and obtained hher Master’s degree in Applied
Electronics from Anna University
niversity in the year
2004 with silver medal
medal.. She has a credit of 10
years of teaching experience
experience She is currently
pursuing Ph.D. under Anna university. She has
published 2 papers in international journal and 10 papers in
conferences. Her areas of interest include medical image processing,
soft computing and speech processing.
Dr. C. Venkatesh
Venkatesh, Dean, Faculty of
Engineering, Erode Builder Educational Trust’s
group of Institutions, Kangayam, graduated in
ECE from Kongu Engineering College in the
year 1988, and obtained his Master’s degree in
Applied Electronics from Coimbatore Institute
of Technolo
Technology,
gy, Coimbatore in the year 1990.
He was awarded Doctorate in ECE from
Jawaharlal Nehru Technological University, Hyderabad in 2007. He
has 16 years of teaching experience during tenure he was awarded Best
Teacher Award twice. He was the founder Principal ooff Surya
Engineering College, Erode. He is guiding 10 Ph.D., research scholars.
He is a Member of IEEE, CSI, ISTE and Fellow IETE. He has
Published 13 papers in International and National Level Journals and
50 Papers in International and National Level conf
conferences.
erences. His area of
interest includes Soft Computing, Sensor Networks and
communication.
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
C. P. Loizou et.al, “Multi
Multi-scale
scale Amplitude Modulation
Modulation-Frequency
Frequency
Modulation Texture Analysis of Ultrasound Images of the Intima
and Media Layers of the Carotid Artery
Artery”, IEEE transactions on
information technology in biomedicine, vol. 15, no. 2, march
2011.
Yan Xu, “A Modified Spatial Fuzzy Clust
Clustering
ering Method Based on
Texture Analysis for Ultrasound Image Segmentation” IEEE
International Symposium on Industrial Electronics, July 5-8,
5 8,
2009
2009.
K.B.Jayanthi, R.S.D.Wahida Banu, 2009. “Carotid Artery
Boundary Extraction Using Segmentation Techniques: A
Comparative Study”, Sixth International Conference on
Information Technology.
Technology
D.T. Kuan et.al “Adaptive restoration of images with speckle,”
JEEE Trans. Acoustics, Speech and Sig. Proc., vol. ASSP
ASSP-35,
35, pp.
373
383, March 1987
373-383,
T. Gustavsson, et.al., “Implementation and Comparison of Four
Different Boundary Detection Algorithms for Quantitative
Ultrasonic Measurements of the Human Carotid Artery”, IEEE
Computers in Cardiology,
Cardiology, vol. 24, 1997, pp. 69
69--72
Consolatina Liguori,
Liguori, Alfredo Paolillo, and Antonio Pietrosanto,
Pietrosanto
(2001),
2001), “An Automatic Measurement System for the Evaluation
of Carotid Intima-Media
Intima Media Thickness “, IEEE Ttransactions on
Instrumentation and Measurement, vol. 50, no. 6.
D.T. Kuan and Alexander A. Sawchuk, T.C. Strand, Pierre
Chavel, (1987),
(1987), “Adaptive restoration of images with speckle”,
IEEE Transactions on Acoustics, Speech, And Signal Processing,
Vol. Assp35, No. 3.
Assp-35,
Rafael C. Gonzalez and Richard E. Woods,
“Digital
Digital Image
Processing Using Matlab
Matlab”, Prentice Hall, 2003
2003.
Silvia Delsanto
Delsanto,, et.al.,(
et.al (2005),
2005), “CULEX
“CULEX-Completely
Completely User
Userindependent Layers Extraction: Ultrasonic Carotid Artery Images
Segmentation”, Proceedings of the 2005 IEEE Engineering in
Medicine and Biology 27th Annual Conference Shanghai, China
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
940
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Fuzzy Based Congestion Detection Technique
for Queuing in IP Networks
S. Nandhini, S. Palaniammal
Abstract – Internet Protocol (IP) has brought rapid development in many applications such as
video and audio streaming, Voice-over-IP (VoIP) and e-commerce. However, these applications
suffer from congestion problem, which severely worsens the network performance of real time
data transmissions. In this paper, we propose a fuzzy based congestion detection technique for
queuing in IP networks. This technique classifies the flow as real time and non real time and the
priority scheduler prioritizes the classified flows as high and low, respectively. The congestion
level of high priority flows is detected by means of fuzzy logic system. The queue delay and arrival
rate are considered as input for Fuzzy logic and the level of congestion is estimated. According to
the congestion level of flows, they are scheduled in two different queuing mechanisms. We
simulate our technique using NS-2 and simulation results prove the efficiency of our approach. It
eradicates unsolicited packet drops and improves packet delivery ratio. Copyright © 2013 Praise
Worthy Prize S.r.l. - All rights reserved.
Keywords: Congestion Detection Techniques Internet Protocol (IP), Queuing, Fuzzy Logic
Each data packet includes the address of source and
destination. IP layer manages the address of each source
and destination. This Internet architecture permits large
technologies to run below the IP layer and applications
running on IP networks management structures within
the IP layer. This facility is supported by single layer
control of Internet. Currently, more importance has been
given to speed, connectivity and reliability of Internet to
improve the performance of network. In view of the fact,
network performance is essential to facilitate inter
business operations of electronic commerce [1], [3], [4].
Most beneficial applications of the Internet include
Email, file transfer protocol, video and audio streaming,
Voice over IP and ecommerce. Further, transmission
media also progressed besides wired links to wireless
systems and dense wavelength division multiplexing
(DWDM). This turns out to be more ubiquitous and
provide multi-gigabit capacities [1].
Congestion had become a key issue of Internet over
past few years. As the number of network users has
increased, an efficient congestion control technique is
needed. TCP/IP was not designed optimally to cope up
with Internet congestion. In the same way, the
requirement for new applications and demand for access
impose more downsides in TCP/IP. Above all, it does not
address any technique to alleviate congestion.
In general, real-time applications are bandwidth
sensitive; in this case, congestion brings in the problem
of delay, jitters and consequently degrades the network
performance. Due to congestion, packets are discarded in
some cases and resources are wasted by retransmitting
lost packets.
Nomenclature
Tc
PDavi
Di(t)

Li T
PLo
Ra
LT
Lact
Is
AvgPAr
PAU
W
DOWn
Pr
Pt
avg DQn
QD
Fc
Current timestamp
Average packet delay
Delay sample at time t
Small fraction to emphasize recent history
The loss ratio at node Ni at interval T
Number of packets lost
Estimated arrival rate of the packet
Total loss ratio at destination
Actual loss ratio
Sampling period
Weighted average packet arrival rate
Upper bound value
Weight factor
One way delay of the packet with index n
Packet received time
Packet transmitted time
Average queuing delay
queuing delay
Fuzzy cost
I.
I.1.
Introduction
Internet and IP Network
Since last two decades, the dependence on computer
communication has increased tremendously [1]-[22].
The achievement of Internet is reasoned by
Transmission Control Protocol and Internet Protocol
(TCP/IP). In this protocol suite, TCP stands above the IP
layer; it segments the data packet into TCP segments,
and then transforms into packets.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
941
S. Nandhini, S. Palaniammal
Apart from congestion, fairness also becomes an
important issue in Internet because some data
transmission in the Internet requires better treatment.
Another major issue the networks suffer is the number
of packets to be processed per second, while a gigabit
link core router has to transmit 90,000 to 2,000,000
packets per second [6].
I.2.
In Internet architecture, congestion is detected by
TCP/IP only after a packet is dropped at the gateway.
It is disagreeable to have large queues to avoid
congestion, where the queues are used to keep track data
packets in the order of delay and bandwidth. In order to
detect congestion in the network an efficient mechanism
is needed.
In this paper, as an extension to our previous works
[12] and [19], we propose a Fuzzy Based Congestion
Detection (FBCD) technique for queuing in IP networks.
Congestion Detection
When the incoming traffic level exceeds the capacity
of the network, then the network is said to be in the state
of congestion. High packet loss ratio and end-to-end
retransmission of packets, bandwidth degradation and
waste of time and energy on congestion recovery are said
to be the major issues of congestion and these issues
consequently affects the overall network performance of
the network. In general, routing algorithms are used to
control the level of congestion. When resources are
shared by multiple users, it is essential to lessen the
transmission rate of each sender in order to alleviate the
circumstance of congestion. Packets that enter into the
congested network are simply discarded and this
unsolicited packet drops affects the network
performance. The network resources are wasted both by
discarded packets and by retransmitted packets.
Thus, network congestion reduces network
throughput. When the condition of congestion is not
handled, then it leads to congestion collapse, where no
data can be delivered [7], [8], [9].
I.3.
II.
Apart from the works of Zhang X. Z et al. [20] and
Xilong Qu et al [21] on fuzzy based congestion control,
other works are listed out below:
C. N. Nyirenda et al. [1] have proposed a fuzzy logic
congestion detection algorithm termed as FLCD. Their
algorithm combines the attributes of both traditional
Active Queue Management (AQM) algorithms and fuzzy
logic based AQM algorithms. The Membership
Functions (MFs) of the FLCD algorithm are designed
using a Multi-Objective Particle Swarm Optimization
(MOPSO) algorithm, to achieve optimal performance on
all the major performance metrics of IP congestion
control.
Further, they have also developed two online selflearning and organization structures to make the FLCD
algorithm to adjust the fuzzy rule base dynamically in
accordance with prevailing conditions.
Aos Anas Mulahuwaish et al. [6] have proposed a new
scheme in AQM with jumbo frame networks. Their
scheme combines the modified random early detection
MRED algorithm with developed drop front DDF. Their
algorithm is suitable only to reduce the packet loss in
jumbo frame networks. Their technique increases the
throughput, by reducing the overhead and enhances the
scalability and efficiency for jumbo frame networks.
Maria Priscilla et al. [7] have introduced an active
queue management called Modified Kohonen-based
RED (MKRED), which combines RED approach with
Kohonen technique to enable a stable queue length
without complex parameters setting and passive
measurements. From the experimental results, their
approach has produced better prediction of buffer size for
any number of patterns. The mean and standard deviation
for the proposed approach are 18.23 ms and 2.95 ms
respectively, which are very less compared to the
conventional techniques. In addition, the learning time
taken by the proposed method is very less compared to
the conventional methods.
Teck-Kuen Chua et al. [13] have proposed a new,
adaptive, responsive, end-to-end congestion detection
technique. They have proposed this technique to
implement application-level congestion detection and
control for real-time applications such as VoIP. Their
scheme proactively reacts to network congestion to
prevent packet loss, thus improving the QoS of
applications.
Fuzzy Logic System
In 1960’s, the fuzzy logic theory was introduced by
Zadeh. He initiated this theory for designing and
predicting uncertainty in natural language. This theory is
appropriate for uncertain and approximate reasoning and
special cases such as mathematical model, which is
complicated to derive. It permits decision making with
computed attributes using any incomplete or uncertain
information.
A typical fuzzy engine is symbolized by inference
engine. It encompasses system rule base, fuzzification
and defuzzification process [10].
1. Fuzzification: In this phase, the input values are
denoted by membership functions of the fuzzy sets.
The fuzzy logic controller makes use of geometric
triangular as membership functions to define over
the range of fuzzy input variables and describes the
variable’s universe of discourse.
2. The inference engine: The rule base in this engine is
described in fuzzy rules. It takes If-Then rules.
3. De-fuzzification: Defuzzification is the final phase,
where fuzzy output is translated into crisp value.
I.4.
Related Works
Problem Identification
In congestion control mechanism, an efficient
congestion detection technique plays an important role.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
942
S. Nandhini, S. Palaniammal
It requires only simple upgrades to the
implementations of the transmitting and receiving
endpoints. As the network becomes congested, the
communicating endpoints using the proposed method
reduce bandwidth utilization to adapt to the congested
environment. When the congestion subsides; the
endpoints adapt to the improvement in the traffic
condition and return to their original transmission
settings. Each endpoint performs a simple task that
demands very little in terms of processing power or
memory.
Pascal Anelli et al. [14] have proposed an original
congestion event algorithm implemented independently
of the TCP source code. The main objective of their
scheme is to demonstrate that congestion event detection
can be realized independently of the TCP code in a sake
of better detecting congestion occurring in the network.
Their algorithm is based on two assumptions such as a
delay or a timestamp to validate a loss following
retransmission and the acknowledgments path.
Federico Montesino et al. [15] have proposed novel
mechanisms for intelligent end-to-end traffic rate control
in Internet by means of fuzzy systems. Their proposed
model provides a rule based perspective of current
evolving rate control schemes. They have designed a
fuzzy TCP-like window based rate controller. A
systematic fuzzy systems design methodology is used in
order to simulate and implement the system as an
experimental tool.
Jammeh et al. [16] have proposed a fuzzy logic for
congestion avoidance and control of networked video.
Their technique considers delay as a network
congestion level indicator, and packet loss as an indicator
of full-blown congestion. Their scheme enables rate
adaptive video streaming applications to optimally adapt
to the available network bandwidth rate for long
transfers. The main advantage of their fuzzy system is
that it also eases finding the compromising solutions for
different user requirements.
The input and output variables are fuzzified by
representing them as member function and congestion
range is computed through defuzzification process.
When congestion range is low, then the flows are
scheduled using CSFQ scheme. Conversely, flows that
have congestion range medium and high are scheduled
using Multiple Queue Fair Queuing technique.
III.2. Flow Classification
The flow classifier identifies the ingress traffic flow as
best effort or real-time based on the estimated delay and
loss.
III.2.1. Delay Estimation
At all ingress routers the real time flows are sampled.
The path of a real time flow has been probed by the
header of the sampled packet. In case of probing the
delay, the ingress routers encode the current timestamp
Tc into the payload and header is marked with a new
protocol value.
The link delay is the resultant of difference between
the own time of packets and Tc. The egress classifies the
probe packets as belonging to flow i, and updates the
average packet delay, PDavi for delay sample Di(t) at time
t using an exponential weighted moving average
(EWMA) [12]:
PD avi(t) =  *PDavi(t-1)+(1-  )*Di(t)
(1)
where  is a small fraction 0    1 to emphasize
recent history rather than the current sample alone.
III.2.2.
Loss Estimation
The detection algorithm runs as follows:
In this technique, source forwards a series of probe
packets along a path P1 to the destination, with no delay
during the transmissions of successive packets. The loss
ratio (Li) at a node Ni along the path P1 at the interval T
can be calculated as [12]:
III. Flow Scheduler
III.1. Overview
Li T = PLo / Ra
In this paper, we propose to deploy a Fuzzy Based
Congestion Detection (FBCD) technique for queuing in
IP networks. Flows entering into the ingress are passed
through flow classifier to classify the flows. It estimates
delay and packet loss ratio of each flow and compares
with predefined threshold value.
When the computed value exceeds a threshold value,
the corresponding flows are classified as real time flows
and other flows as non- real time flows. The priority
scheduler marks real time flows as higher priority flows
and non-real time flows (best effort) as lower priority
flows.
The higher prioritized flows are made to pass through
the fuzzy logic system to detect congestion level. Packet
arrival rate and queuing delay are taken as input variables
and congestion degree as output variable.
(2)
where PLo is the number of packets lost and Ra is the
estimated arrival rate of the packet. Then the total loss
ratio at destination can be calculated as:
LT = ∑ Li T
(3)
Now the actual traffic flows are transmitted for the
same sample interval of T seconds through the ingress
router, which marks the flow arrival rate as label
according to CSFQ. The actual loss ratio (Lact) at each
node along P1 at the interval T can be estimated similarly
as (1). Then the total actual loss ratio Lact at destination
can be calculated as:
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
943
S. Nandhini, S. Palaniammal
LactT = ∑ Lacti T
(4)
It can be given as [16]:
At egress router, the difference in loss ratios can be
then estimated as:
D = LactT – LT
III.2.3.
DOWn = Pr - Pt
(8)
where, Pr is packet received time and Pt is packettransmitted time. Path delay can be computed from
measured delay and minimum delay as:
(5)
Flow Identification by Ingress Nodes
DQn = DOWn - DOWmin
The flow arrival rates and the corresponding source
ids are collected from the labels of the packets, which are
marked by ingress node. If the value of D (as per Eq.
(5)) exceeds to a threshold T1 and if the delay (as per Eq.
(1)) exceeds a threshold T2, then the flows are marked as
real time flows by the egress node, otherwise they are
considered as best effort traffic. Then the flow arrival
rate and the flow id are sent to the source by the egress
router [12].
(9)
The queuing delay is measured as a ratio of average
queuing delay to maximum queuing delay as:
QD 
avgDQn
max DQ
(10)
The average queuing delay (avg DQn) of nth packet is
measured using the formula:
avgDQn  1     avgDQn 1    DQn
III.3. Priority Scheduler
(11)
where,  is the forgetting constant (  ≤1) and during
simulations it takes the value 0.1. Considering these two
variables as input, an outcome of the fuzzy system will
be congestion degree. The general diagram of input and
output variables of fuzzy system is given in Fig. 1.
We apply priority scheduler to the above-identified
flow categories as per following condition:
1. If flow is VoIP or Video, Then
Flow is marked as higher priority in Flow label
Else:
2. If the flow is best effort traffic, then
Flow is marked as lower priority in Flow label
End if.
III.4. Fuzzy Based Congestion Detection
Our technique makes use of fuzzy logic system to
detect congestion of flows with higher priority flow
label. Congestion of higher priority flows has to be
detected to prevent unsolicited packet collisions. The
higher priority flows are made pass through the fuzzy
system to detect congestion level. As we perceive the
congestion of real time flows (VoIP or video), we
consider packet arrival rate and queue delay as input
metrics.
Packet Arrival Rate
At sampling period Is, let p be the number of packets
reached at the buffer. Then the weighted average packet
arrival rate at time t can be calculated as, [17]:
AvgPAr  W  avgPAr  t  I s   1  W   p
Fig. 1. Fuzzy Logic System
III.4.1. Fuzzification
In this phase, the input variables queuing delay and
packet arrival rate are fuzzified and then symbolized in
terms of membership functions. To represent input and
output variables, we use geometric pattern of triangles.
The membership function of inputs namely packet
arrival rate and queuing delay are given in Figs. 2 and 3
respectively. The membership function for output is
given in Fig. 4.
(6)
where W is the weight factor. In weighted packet arrival
rate, consider PAU as the upper bound value. Then packet
arrival rate PAr is given as:
 AvgPAr / PAU
PAr  
1.0
Avg PAr  PAU
Avg PAr  PAU
(7)
Queuing Delay
The one-way delay of packet with index ‘n’ is
estimated as the difference between transmitted and
received time.
Fig. 2. Membership function for packet arrival rate
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
944
S. Nandhini, S. Palaniammal
III.4.3. Defuzzification
Finally, the output value is generated using
defuzzification process. We use centroid of area strategy
method for defuzzifying the input representation [18]:
Rn
FC 
Fig. 4. Membership function for output
III.4.2. Fuzzy Rule Base
The input and output variables are fuzzified into three
ranges as low, medium and high. Based on these input
ranges fuzzy rules are constructed.
It takes the form of If -Then condition.
Case-1
If (PAr = Low && QD = Low)
Then
Congestion Degree is Low
End if
Case-2
If (PAr = Medium && QD = Medium)
Then
Congestion Degree is Medium
End if
Case-3
If (PAr = High && QD = High)
Then
Congestion Degree is High
End if
The entire fuzzy rule base system is given below in
Table I.
Packet Arrival Rate
(PAr)
Low
Low
Low
Medium
Medium
Medium
High
High
High
(12)
In the above equation, Fc represents fuzzy cost, Ni is
node element, the limit value R1 to Rn denotes the fuzzy
rule set and M (Ni) stands for membership functions.
As an outcome of fuzzy system, the congestion range
of higher priority flows is determined. Based on
estimated congestion range value, flows are scheduled
into two queuing technique.
The systematic process of congestion detection and
scheduling is as follows:
(i) High priority flows are made pass through the fuzzy
system.
(ii) Packet Arrival Rate (PAr) and Queuing Delay (QD)
values of a flow is computed using equation (7) and
(10) respectively.
(iii) The input variables are fuzzified and membership
functions are represented.
(iv) Congestion degree is taken as output from
defuzzification process.
(v) Congestion degree is ranged into three values as
low, medium and high.
(vi) If (Congestion degree = Low)
Then
Flows are scheduled using max-min
fairness criterion of CSFQ
Else if (Congestion degree = Medium && High)
Then
Flows are scheduled using Multiple
Queue Fair Queuing technique
End if.
The max-min fairness criterion of CSFQ and Multiple
Queue Fair Queuing techniques are described in our
previous paper [12].
Fig. 3. Membership function for queuing delay
TABLE I
FUZZY RULE SET
Queuing Delay
(QD)
Low
Medium
High
Low
Medium
High
Low
Medium
High
 R1 Ni  M  Ni 
Rn
 R1 M  Ni 
IV.
Simulation Results
IV.1. Simulation Model and Parameters
In this section, we examine the performance of our
Fuzzy Based Congestion Detection (FBCD) technique
with an extensive simulation study based on network
simulator (NS-2) [22]. We compare the results with the
Enhanced CSFQ (ECSFQ) technique [12]. The topology
used in the simulation is shown in Fig. 5. As we can see
from the figure, the architecture consists of 3 pairs of
ingress and egress routers indicated by IE1-EE1, IE2EE2 and IE3-EE3 with 2 core routers C1 and C2.
We use a mixture of Video, CBR and TCP traffic
flows. The packet size is 512 bytes and there are totally
10 flows.
Congestion Degree
(D)
Low
Medium
Medium
Medium
Medium
High
Medium
High
High
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
945
S. Nandhini, S. Palaniammal
Throughput
Bottleneck Bandwidth Vs VoIPThroughput
1.5
ECSFQ
1
0.5
FBCD
0
2
4
6
8
Mb/s
Fig. 7. Bottleneck Bandwidth Vs VoIP-Throughput
B. Effect of Varying Rate
In our second experiment we vary the video traffic
rate as 250 kb to 1000 kb in order to measure the delay
and throughput.
Fig. 5. Simulation Topology
The link bandwidth and link delay is set as 10 Mb and
10 ms respectively. The bottleneck bandwidth for the
links (3, 4), (9,1 4), (18, 4), (22, 9), (5, 4), and (10, 9) is
set as 5 Mb initially.
0.006
Delay(Sec)
IV.2.
Rate Vs VoIP-Delay
Performance Metrics
In the simulation experiments, we vary the bottleneck
bandwidth and traffic rate. We measure the following
metrics for the real time traffic (Video) flows only, since
FBCD enhances the performance of real time higher
priority traffic.
1. Throughput.
2. Delay.
The results are described in the next section.
Delay(Sec)
1000
Throughput(Mb/s)
1.5
1
ECSFQ
FBCD
0.5
0
250
500
750
1000
Rate(Kb)
Fig. 9. Rate Vs VoIP-Delay
From Fig. 8, we can see that the VoIP-delay of our
proposed FBCD is less than the existing ECSFQ model.
From Fig. 9, we can see that the VoIP-throughput of
our proposed FBCD is higher than the existing ECSFQ
model.
FBCD
Case 2 (Video)
A. Based on Bottleneck Bandwidth
In this experiment we vary the bottleneck bandwidth
as 2, 4, 6 and 8 Mb. From Fig. 10, we can see that the
tcp-throughput of our proposed FBCD is higher than the
existing ECSFQ model. From Fig. 11, we can see that the
video-delay of our proposed FBCD is less than the
existing ECSFQ model.
0
6
750
Rate Vs VoIP-Throughput
ECSFQ
4
500
Fig. 8. Rate Vs VoIP-Throughput
0.008
2
FBCD
Rate(Kb)
Bottleneck Bandwidth Vs VoIP-Delay
0.002
0.002
250
Case 1(VoIP)
A. Effect of Varying Bottleneck Bandwidth
In our first experiment, we vary the bottleneck
bandwidth 2 Mb, 4 Mb… 8 Mb.
From Fig. 6, we can see that the VoIP-delay of our
proposed FBCD is less than the existing ECSFQ model.
From Fig. 7, we can see that the VoIP-throughput of
our proposed FBCD is higher than the existing ECSFQ
model.
0.004
ECSFQ
0
IV.3. Results
0.006
0.004
8
Mb/s
Fig. 6. Bottleneck Bandwidth Vs VoIP-Delay
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
946
S. Nandhini, S. Palaniammal
12.2
12.1
12
11.9
11.8
11.7
Rate Vs Video-Delay
Delay(Sec)
Throughput
Bottleneck Bandw idth Vs TCP-Throughput
ECSFQ
FBCD
2
4
6
8
0.025
0.02
0.015
0.01
0.005
0
ECSFQ
FBCD
250
500
Mb/s
Fig. 14. Rate Vs Video-Delay
Bottleneck Bandw idth Vs Video-Delay
0.025
0.02
0.015
0.01
0.005
0
Rate Vs Video-Throughput
Throughput
Delay(Sec)
1000
Rate(Kb)
Fig. 10. Bottleneck Bandwidth Vs TCP-Throughput
ECSFQ
FBCD
2
750
4
6
8
1.5
1
ECSFQ
FBCD
0.5
0
250
Mb/s
500
750
1000
Rate(Kb)
Fig. 11. Bottleneck Bandwidth Vs Video-Delay
Fig. 15. Rate Vs Video-Throughput
Bottleneck Bandw idth Vs Video-Throughput
From Fig. 13, we can see that the tcp-throughput of
our proposed FBCD is higher than the existing ECSFQ
model. From Fig. 14, we can see that the video-delay of
our proposed FBCD is less than the existing ECSFQ
model.
From Fig. 15, we can see that the video-throughput of
our proposed FBCD is higher than the existing ECSFQ
model.
Throughput
1.5
1
ECSFQ
FBCD
0.5
0
2
4
6
8
Mb/s
V.
Fig. 12. Bottleneck Bandwidth Vs Video-Throughput
In this paper, we have proposed a Fuzzy Based
Congestion Detection technique for queuing in IP
networks. The technique classifies the flows as real time
and non-real time by considering delay and packet loss
ratio. The priority scheduler prioritizes the classified
flows as high and low. The congestion level of higher
priority flows are detected by means of fuzzy logic
system. Packet arrival rate and queuing delay are taken as
input variables and congestion degree as output variable.
The input and output variables are fuzzified by
representing in membership function and congestion
range is computed through defuzzification process.
When congestion range is low, then the flows are
scheduled using max-min criterion of CSFQ scheme.
Conversely, flows that have congestion range medium
and high are scheduled using Multiple Queue Fair
Queuing technique.
We have simulated our technique using NS-2 and
simulation results prove the efficiency of our approach. It
eradicates unsolicited packet drops and improves
throughput of real-time traffic.
From Fig. 12, we can see that the video-throughput of
our proposed FBCD is higher than the existing ECSFQ
model.
B. Based on Rate
In this experiment we vary the rate as 250, 500, 750
and 1000 kb.
Throughput
Rate Vs TCP-Throughput
12.5
12
11.5
11
10.5
10
ECSFQ
FBCD
250
500
750
Conclusion
1000
Rate(Kb)
Fig. 13. Rate Vs TCP-Throughput
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
947
S. Nandhini, S. Palaniammal
Control for TCP Networks via Fuzzy Sliding-mode Control,
(2011) International Review on Computers and Software
(IRECOS), 6 (4), pp. 576-585.
[21] Xilong Qu, Zhongxiao Hao,Linfeng Bai, Xizheng Zhang, Design
of T-S Fuzzy Control for Active Queue Management in TCP
Networks, (2011) International Review on Computers and
Software (IRECOS), 6 (5), pp. 820-826.
[22] Network Simulator, http://www.isi.edu/nsnam/ns.
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
Clement Nthambazale, Nyirenda, ”A Multi-objective Particle
Swarm Optimized Fuzzy Logic Congestion Detection and Dual
Explicit Notification Mechanism for IP Networks”, Technical
Report, September 2006.
Lawrence S. Brakmo Sean W. O’Malley and Larry L. Peterson,”
TCP Vegas: New Techniques for Congestion Detection and
Avoidance”, In Proceedings of the SIGCOMM '94 Symposium,
pp. 24-35, Aug. 1994.
Tom Kelly,” The case for a new IP congestion control
framework”, Technical Report CUED/FINFENG/TR.434,
Laboratory for Communication Engineering, Cambridge
University, June 2002.
J. Alan Bivens , Boleslaw K. Szymanski and Mark J. Embrechts,
” Network Congestion Arbitration and Source Problem Prediction
using Neural Networks”, Smart Engineering System Design, vol.
4, pp.243-252, 2002.
Murat Yuksel,”Architectures for congestion sensitive pricing of
network services”, PhD thesis, Rensselaer Polytechnic Institute
Troy, NY, USA, 2002.
Aos Anas Mulahuwaish, Kamalrulnizam Abu Bakar and Kayhan
Zrar Ghafoor,” A Congestion Avoidance Approach in Jumbo
Frame-enabled IP Network”, (IJACSA) International Journal of
Advanced Computer Science and Applications, Vol. 3, No. 1,
2012.
Maria Priscilla and Dr. Antony Selvadoss Thanamani, ”
Managing Network Congestion with a Modified Kohonen-based
RED Queue”, International Journal of Engineering Science and
Technology, Vol. 2, No.11, 2010, 6747-6752.
Sally Floyd and Van Jacobson,” Random Early Detection
Gateways for Congestion Avoidance”, IEEE/ACM Transactions
on Networking (TON), Vol. 1, No. 4, Aug. 1993.
Marina Thottan and Chuanyi Ji ,” Anomaly Detection in IP
Networks”, IEEE Transactions on Signal Processing, Vol. 51,
No- 8, August 2003.
Taqwa Odey Fahad and Prof. Abduladhim A. Ali, “Improvement
of AODV Routing on MANETs using Fuzzy Systems”, Iraq
Journal of Electrical and Electronic Engineering, Vol.7 No.2,
2011.
Susan Rea and Dirk Pesch, “Multi-Metric Routing Decisions for
Ad Hoc Networks using Fuzzy Logic”, Proceedings of IEEE 1st
International Symposium on Wireless Communication Systems,
pp. 403-407, 2004.
S. Nandhini and S. Palaniammal, “Enhanced Core Stateless Fair
Queuing with Multiple Queue Priority Scheduler”, International
Arab Journal of Information Technology, ISSN 1683-3198 Vol.11
No.2 (Yet to be published on March 2014).
Teck-Kuen Chua and David C. Pheanis,” Adaptive Congestion
Detection and Control at the Application Level for VoIP”,
International Journal on Advances in Networks and Services, Vol.
1, No 1, 2008.
Pascal Anelli, Emmanuel Lochin, and Fanilo Harivelo,” Transport
congestion Events Detection (TCED): Towards Decorrelating
Congestion Detection from TCP”, Proceedings of the ACM
Symposium on Applied Computing, pp- 663-669, 2010.
Federico Montesino, Diego R. Lopez, Angel Barriga and Santiago
Sanchez-Solano,” Fuzzy End-to-End Rate Control for Internet
Transport Protocols”, IEEE International Conference on Fuzzy
Systems, pp- 1347 – 1354, 2006.
E Jammeh, M. Fleury and M. Ghanbari,” Delay and Loss Fuzzy
Controlled Video over IP Networks”, www.essex.ac.uk , 2008.
C.N. Nyirenda1 and D.S. Dawoud1 ”Self-Organization in a
Particle Swarm Optimized Fuzzy Logic Congestion Detection
Mechanism for IP Networks, Scientia Iranica, Vol. 15, No. 6, pp.
589-604, Sharif University of Technology, December 2008.
M.M.Goswami, R.V. Dharaskar and V.M.Thakare, “Fuzzy Ant
Colony Based Routing Protocol for Mobile Ad Hoc Network”,
International Conference on Computer Engineering and
Technology, ICCET '09, vol.2, pp- 438 – 444, 2009.
S. Nandhini and S. Palaniammal, "Stateless Aggregate Fair
Marking Scheduler for Differentiated Service Networks", Journal
of Computer Science, Vol. 9, No. 1, pp. 63-73 , 2013.
Zhang X.Z., Shen X.N., Duan Y., Design of Robust Congestion
Authors’ information
S. Nandhini obtained her, Master’s degree and
Master of Philosophy in Mathematics. She is
currently working as a Senior Lecturer in the
Department of Computer Science at Garden City
College of Science and Management Studies,
Bangalore, India. She has presented 2 papers in
National conferences and published 2 papers in
international journals. Her area of interest
includes Queuing Theory, Computer Networks, Graph theory and
Operations Research.
Tel: +91 9902079005
Dr. S. Palaniammal received her Doctoral
degree in Applied Mathematics from PSG
college of Technology, Coimbatore in 2006. She
is currently working as Professor and Head in
the department of Science and Humanities at Sri
Krishna College of Technology, Coimbatore,
India. She has published 57 papers in
national/international Journals/Conferences. Her
areas of interest are Queuing Theory, Data Mining and Networking.
Under her guidance 8 scholars are pursuing their Ph.D, 2 M.Phil
scholars and 1 Ph.D scholar has completed their research work. She has
also authored 9 books in Mathematics for B.E/B.Tech students and 2 of
her books "Probability and Queueing Theory" , "Probability
and Random Processes" are Published in Prentice Hall of India.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
948
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Combining UML Class and Activity Diagrams for MDA Generation
of MVC 2 Web Applications
M'hamed Rahmouni, Samir Mbarki
Abstract – Model transformations are increasingly gaining attention in software design and
development. Model transformation plays a key role in Object Management group (OMG) Model
Driven Architecture (MDA) initiative. In this paper, we experience a high level modeling method
based on MDA to generate MVC2 web model for an E-commerce web application. This idea is
based on the fact that the source metamodel is composed by two metamodels which are: the class
diagram and activity diagram. In order to model the internal logic of a complex operation and
accurately determine the input jsp page of an Action class and all ingredients of this class, we
begin by identifying the operations in view to establish the activity diagram for each operation.
After modeling, we implement the transformation rules. These rules are expressed in ATL
transformation language. In our algorithm, we consider only the operations belonging to the two
diagrams already cited. Practically, we transform only the operations that have an activity
diagram and belonging to the class diagram. The MVC2 web model generated can effectively
simplify the development processing with less time and cost. Copyright © 2013 Praise Worthy
Prize S.r.l. - All rights reserved.
Keywords: MDA, ATL Transformation, MVC 2 Web, E-Commerce, CIM, PIM, PSM, Metamodel
I.
In this work, we begin by analyzing the problem, then
modeling it. In the activity of modeling, we are merely
interested on the UML class diagram (CD) and the UML
activity diagrams (AD), which permit specifying and
simplifying the process of transformation rules and
thereafter verifying the result of this transformation.
The basic idea of this method is to combine the UML
class diagram and UML activity diagram for constitute
one source metamodel of the transformation language.
The aim of using the activity diagram is to describe
the flow of control of the target system, such as the
exploring complex business rules and operations,
describing the use case also the business process.
The activity diagram is more appropriate to model the
dynamics of a task, a use case where the class diagram is
not yet stabilized. Therefore, we can know the relation
between the Action classes, the ActionForm classes and
the jsp pages. Through this activity diagram, we can
especially know the input jsp page of another page which
it will need.
In order to know the relation between the classes,
operations and attributes of each class as well as
associations between classes, we use the UML class
diagram.
The objective of the combination of this later and the
UML activity diagram is to generate precisely the
elements that constitute the ingredients of MVC 2 Web
model and the relations between these elements.
To achieve this model transformation method, we use
the ATL (Atlas TransformationLanguage) transformation
language [4]-[5]-[6].
Introduction
The design and development of any complex
applications using a Model-driven Engineering approach
involve not only the use of many models, but also the use
of many model transformations between them. These
transformations automate critical operations during
development as the refinements, the refactoring and the
code generation. The automation of these operations can
increase the re-use of elements from one project to
another, which save the time and reduce the amount of
redundant programming work. However, model
transformation is based on the concept of meta-models.
A framework that uses model transformation is
Model-Driven Architecture (MDA)[1]. Models in MDA
are the key artefacts in all phases of development and are
mostly expressed with Unified Modelling Language
(UML) [2]-[3]. The latter is represented in XML
Metadata Interchange (XMI).
The use of meta-models with the concepts of models
facilitates specification rules processing and minimizes
their number and their complexity. The employment of
metamodels to generate the transformations also allows
obtaining a transformed model compatible with a
metamodel of target. Finally, the approach for
transforming a model to another can build very generic
transformation rules since these transformation rules can
be applied to all models provided it respects the source of
metamodel. The work described here presents a method
for generating MVC 2 web model for an E-Commerce
web application.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
949
M. Rahmouni, S. Mbarki
The transformation rules are based on the following
idea: each operation generates an Action classes,
ActionForm classes and jsp pages. In our algorithm, we
consider only the CRUD operations and the operations
belong into the combination of CD model and AD model.
The aim of using the ATL transformation rules is to
generate the MVC2 web model which it will be
thereafter the input model of JET so that it would
generate the code of MVC2 web E-commerce
application. The MVC 2 web model is represented in
XML Metadata Interchange (XMI) format.
The remaining part of this paper is as follows: section
2 presents the transformation approach. Section 3
explains the PIM and PSM metamodels. Section 4
permits to develop the Transformation rules. Section 5
presents the case study of this work.
Section 6 presents the result of transformation rules.
Section 7 is dedicated to the related work. Finally,
section 8 concludes the work and gives some
perspectives.
II.
Fig. 1. The transformation approach for transforming
the combination of AD and CD into MVC2 web model
III. PIM and PSM MetaModels
In this section, we present the different meta-classes
that constitute the PIM and PSM meta-models. The PIM
is constituted by the combination of UML class diagram
(CD) and activity diagram (AD). The PIM and PSM
metamodels are detailed here in Figs. 3, 4 and 5.
Transformation Approach
The algorithm of transformation approach is shown in
Figure 1. It consists to combine the UML class diagram
and UML activity diagram for constitute one source
metamodel of the transformation rules.
The basic idea of use the action diagram is to know
the link between the Action classes, the ActionForm
classes and the jsp pages.
Through this activity diagram, we can especially know
the input jsp page of another page which it will need.
Another advantage of this diagram is to define the
attributes of the ActionForm and the object or class
which it belongs each attribute.
The use of the class diagram gives a general idea
about the link between the classes, methods and
attributes of each class as well as associations between
classes.
The fusion of UML class diagram and UML activity
diagram is to generate precisely the elements that
constitute the ingredients of MVC2 Web and the
relations between these elements.
The basic idea of the transformation algorithm for
activity and class diagrams is as follows:
- Consider the UML class diagram and the UML
activity diagram as an input model.
- Browse the UML class diagram and select an
operation.
- Test if this operation belongs to the activity diagram.
If true then transform this operation into PSM code.
Else go to another operation without generating the
PSM code.
- After verifying that the operation belongs to the CD
and AD simultaneously, so we transform this
operation into an Action class, an ActionForm class
and the jsp page.
To implement this algorithm, we begin with the
implementation of source and target meta-models.
III.1. Class Diagram Metamodel
In this meta-model, UMLPackage corresponds to the
concept of UML package, this meta-class is related to the
Classifier meta-class.
This represents both the concept of UML class and the
concept of data type. The Property meta-class expresses
the concept of properties of an UML class or references
to other classes (uni and bidirectional associations). Fig.
3 shows the CD meta-model.
III.2. Activity Diagram Metamodel
Activity diagrams are the blueprints used for
describing system behaviours. The diagram contains
activities and flows which can be separated into control
flows and object flows. There are seven levels of
activities including fundamental, basic, intermediate,
complete, structured, complete structured, and extra
structured [9].
The fundamental level defines activities as containing
nodes which includes actions [9]. In this level, activity,
activity group and action are introduced where: activity
is a containment which consists of name and actions;
activity group is containment but it is not used in this
level, that is, it is not shown in the diagram.
The basic level includes control sequencing and data
flow between actions [9]. In this level, control flow,
object flow, object node, activity parameter node, initial
node and final node are introduced where: control flow is
a sequence of two actions; object flow is an edge which
has an action and an object node at either end; activity
parameter node is an object which is used as an activity
parameter; initial and final node are the point which the
activity is started and terminated, respectively.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
950
M. Rahmouni, S. Mbarki
In this level, fork node, join node, decision node,
merge node, flow final node, and activity partition are
introduced where: fork and join node are used to create
concurrent flows and synchronize concurrent flows,
respectively; decision and merge node are used to create
alternative flows and accept one of alternative flows,
respectively[9]. Flow final node is the point which the
flow is terminated; activity partition is a containment
which contains actions and sub partitions. The Activity
Diagram metamodel is shown in Fig. 3.
ATL is developed by the team of Jean Bézivin at
LINA in Nantes. It is part of the Eclipse M2M (Modelto-Model).
Fig. 5 shows the operational framework of ATL
transformation.
The main purpose of the present paper is to generate
the MVC 2 web model for an e-commerce web
application and thereafter as an input of the JET 2
Template in order to generate the code of this case study.
In this paper, we are interested only by the party
Model-to-Model (M2M) transformation.
III.3. Struts Metamodel
class ACtiv ityDiagram ...
Activity
Activity
activity
Fig. 4 corresponds to the PSM metamodel that is a
Struts metamodel target. In this metamodel, we show
more interest in the tier controller. The ActionMapping
meta-class contains the information deployment for a
particular Action class.
The ActionForm meta-class is a Bean encapsulating
the parameters of a form from the view part. The
execute() method of Action class performs its processing
and then calls the findforward() method on the mapping
object . The return value is an object of an
ActionForward type. The Action meta-class represents
the concept of secondary controller. The Action classes
contain the specific processing of the application.
Consequently, they must be related to business
classes. The complete target meta-model is detailed in [8]
[24].
IV.
activity
-
a: int
+
b() : void
0..1
0..1
inactivity
*
ActivityPartition
0..1
+inGroup
+inGroup
ActivityGroup
*
+containedEdge
*
+edge
ActivityEdge
source
+outgoing
1
+target
*
+containedNode
*
+superGroup
0..1
+subGroup
*
ActivityNode
*
+incoming
1
+node
*
*
ObjectNode
ControlNode
ControlFlow
Action
ObjectFlow
ActivityParameterNode
DecisionNode
MergeNode
JoinNode
FinalNode
ForkNode
FlowFinalNode
InitialNode
ActivityFinalNode
Fig. 3. Activity diagram Metamodel
The Transformation Rules
class Struts ...
The model transformation plays a role in the model
driven engineering.
To this end, several studies have been conducted to
define transformation languages effectively and to ensure
traceability between the different types of MDA models.
ATL (Atlas Transformation Language) is a model
transformation language developed in the framework of
the ATLAS project [4]-[5]-[6].
ControllerPackage
ActionForward
+forwards
+input
1..*
+actionmappings
+forward
JspPage
+view
+formbeans
1..*
*
FormBean
ActionMapping
*
Action
+href
ViewPackage
+form
+actions
*
+bean
1..*
0..1
ActionForm
0..1
+httprequest
HttpRequest
class UML CD Metamo...
+httpresponse
HttpResponse
+request
UMLPackage
-
name: String
Fig. 4. Platform-specific Struts model
Classifier
-
MOF
name: String
conforms to
Property
Parameter
-
Class
DataType
+property
*
name: String
-
Operation
+operations
name: String
*
-
transformation
name: String
upper: int
lower: int
MMa
ATL
MMb
mma2mmb.atl
Ma
Mb
Fig. 5. Operational framework of ATL
Fig. 2. UML class diagram Metamodel
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
951
M. Rahmouni, S. Mbarki
In this section, we present the specification of rules
and the implementation of these rules using ATL
transformation language.
In the first step, we determine the different rules and
in the second step, we implement them in ATL language.
IV.1. Rules Specification
Here are the main rules to transform the models of CD
and AD into a MVC 2 Web model:
 The View Package is composed of a set of JSP pages.
 The Controller Package is composed of a set of
mappings Action.
 The Controller Package is composed of a set of beans
Form.
 The mapping Action is composed of a set of Actions.
 The Bean Form is composed of a set of ActionForm.
 Each operation generates an ActionForm
 The Retrieve operation of the root class does not
generate an ActionForm class.
 Each Operation generates an Action Class, an
ActionForm class and a Jsp Page.
 Each Action is composed of a set of ActionForward
classes.
 An update operation generates an ActionForm and an
End ActionForm.
Fig. 7. From Operation to JspPage
Fig. 8. UMLPackage to ControllerPackage
IV.2. ATL Code
The ATL code for the combination of CD and AD to
MVC 2 Web model transformation consists in 5 rules.
Figs. 6, 7, 8, 9 and 10 show these rules:
- The UMLPackage2ViewPackage rule generates the
view package of jsp pages.
- The Operation2JspPage rule creates the jsp pages
from an operation. The name of jsp page is the name
of the operation.
- The UMLPackage2ControllerPackage rule generates
the controller package.
- The Operation2Action rule creates the Action classes
and the jsp page forwarding of each Action class.
- The Operation2ActionForm rule creates the
ActionForm classes.
In this section, we are developed the different
transformation rules. In the following section, we present
a case study of an e-commerce web application and the
modeling of this case study.
Fig. 9. From Operation to Action class
V.
Case Study
In this section, we describe our UML use case and
thereafter the UML class diagram. In the context of
MDA, the model of CD is used to develop, implement
and thereafter generate an E-Commerce web application.
This class diagram represents the source model of this
web application. This model is a XMI file which contains
all components of this application.
Fig. 6. From UMLPackage to ViewPackage
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
952
M. Rahmouni, S. Mbarki
uc Primary Use Cases
PC Online Shopping
Search Items
<<System>>
Payment Processor
«include»
Customer
Place Order
«include»
Check Order
Status
Maintain account
information
Fig. 11. The use case diagram of the PC online shopping
class Class Diagram
Customer
Web User
-
Fig. 10. From Operation to ActionForm class
login_id: char
password: char
state: UserStatus
0..1
1
+ Create() : void
1
«enumeration»
UserStatus
In this case study, each customer could have some
web user identity. Web user could be in several states and
could be linked to one shopping cart. Each customer has
exactly one account. Account owns shopping cart and
orders.
Orders are sorted and unique. Each order is linked to
none to several payments. Each order has current order
status. Both order and shopping cart have line items
linked to specific product.
Based on the above analysis, we design the use case
diagram of the PC online shopping system. Fig. 11 shows
the use case diagram of the system PC online shopping
and Fig. 12 shows the model of UML class diagram.
In the following section we show the activity diagram
of the use case Place Order. Activity diagram is UML
behavior diagram which shows flow of control or object
flow with emphasis on the sequence and conditions of
the flow.
The actions coordinated by activity models can be
initiated because other actions finish executing, because
objects and data become available, or because some
events external to the flow occur.
Fig. 13 show the activity diagram of the use case
Place Order. After this section, we present the XMI file
that represents this AD.
One of the main ideas shown in this activity diagram
presented in Fig. 13 is that the input jsp pages are
associated with the orderly called objects in this process.
As example, the input jsp of payment Action is the
Order jsp page. In the other hand, we know that the
customer places an order. Therefore, we conclude that
the input jsp of the Order Action is the Customer page
jsp.
For the properties of each Action Forms are the
properties of the input jsp.
Our idea is to present all activity diagrams, and after
we determine the input jsp pages and the properties of
action forms.
0..1
Shopping Cart
New
Active
Blocked
Banned
-
-
address: char
email: char
id: char
name: char
phone: char
+
+
+
+
create() : void
Delete() : void
Retrieve() : void
Update() : void
created: Date
Payment
0..*
-
id: String
paid: Date
total: Real
details: String
*
{ordered,
unique}
1
1
1
Order
1
1
Account
Product
-
cid: String
ram: String
hdd: String
price: Price
category: String
+
+
+
+
Create() : void
Retrieve() : void
Update() : void
Delete() : void
1
+line_item
1
-
id: String
billing_address: Address
is_closed: Boolean
open: Date
closed: Date
+
+
+
+
Create() : void
Retrieve() : void
Update() : void
Delete() : void
+line_item
*
{ordered,
unique}
1
new
Hold
Shipped
Delivred
Closed
+ Create()
+ AddToCart() : void
1
«enumeration»
OrderStatus
1
*
{ordered}
{unique}
-
number: String
ordered: Date
ship_to: Address
status: OrderStatus
total: Real
+ Order() : void
+ Update() : void
1
LineItem
-
quantity: Integer
price: Price
+ Add() : void
+line_item
*
{ordered,
unique}
Fig. 12. The UML source model of the PC online shopping
analysis Business Process Model
Requested
Order
Send
Invoce
Ship
Order
[Order accepted] Fill
Order
Receive
Order
Invoce
Invoce
Make
Payment
Close
Order
Accept
Payment
Fig. 13. The Activity diagram of Order use case
V.1.
XMI File of Activity Diagram of Use Case Order
In this section, we present the XMI file of the activity
diagram of use case Order. This file is as follows:
<Action name='Receive Order'>
<ActivityNode.outgoing>
<ControlFlow idref='T3'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T4'/>
</ActivityNode.incoming>
</Action>
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
953
M. Rahmouni, S. Mbarki
<DecisionNode
name='decision_n_1'>
<ActivityNode.outgoing>
<ControlFlow dref='T5'/>
<ControlFlow idref='T6'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T7'/>
</ActivityNode.incoming>
</DecisionNode>
<JoinNode name='join_1'
kind='Join'>
<ActivityNode.outgoing>
<ControlFlow idref='T15'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T16'/>
<ControlFlow idref='T17'/>
</ActivityNode.incoming>
</JoinNode>
<Action name='Fill Order'>
<ActivityNode.outgoing>
<ControlFlow idref='T8'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T9'/>
</ActivityNode.incoming>
</Action>
<Action name='Close Order'>
<ActivityNode.outgoing>
<ControlFlow idref='T21'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T22'/>
</ActivityNode.incoming>
</Action>
<ForkNode name='fork_1'
kind='Fork'>
<ActivityNode.outgoing>
<ControlFlow idref='T10'/>
<ControlFlow idref='T11'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T12'/>
</ActivityNode.incoming>
</ForkNode>
<Action name='Make payment'>
<ActivityNode.outgoing>
<ControlFlow idref='T27'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T28'/>
</ActivityNode.incoming>
</Action>
<Action name='Accept payment'>
<ActivityNode.outgoing>
<ControlFlow idref='T29'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T30'/>
</ActivityNode.incoming>
</Action>
<Action name='Ship Order'>
<ActivityNode.outgoing>
<ControlFlow idref='T13'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T14'/>
</ActivityNode.incoming>
</Action>
<FinalNode
name='Final_state_1'>
<ActivityNode.incoming>
<ControlFlow idref='T2'/>
</ActivityNode.incoming>
</FinalNode>
<Action name='Send Invoce'>
<ActivityNode.outgoing>
<ControlFlow idref='T23'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T24'/>
</ActivityNode.incoming>
</Action>
<InitialNode
name='initial_state_1'>
<ActivityNode.outgoing>
<ControlFlow idref='T1'/>
</ActivityNode.outgoing>
</InitialNode>
<MergNode name='merge_1'
kind='Merge'>
<ActivityNode.outgoing>
<ControlFlow idref='T18'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ControlFlow idref='T19'/>
<ControlFlow idref='T20'/>
</ActivityNode.incoming>
</MergNode>
<ObjectNode name='Invoce'>
<ActivityNode.outgoing>
<ObjectFlow idref='T25'/>
</ActivityNode.outgoing>
<ActivityNode.incoming>
<ObjectFlow idref='T26'/>
</ActivityNode.incoming>
</ObjectNode>
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
954
M. Rahmouni, S. Mbarki
VI.
The Result of Transformation Rules
VII.
In this section, we show the XMI file generated that is
the result of ATL transformation rules. This
transformation is based on the input XMI file of the
combination of AD and CD. The XMI file generated is as
follows:
Related Work
From a state-of-the-art review in model transformation
and code generation, several proposals have been
identified. The most relevant are [10] [11] [12] [13] [14]
[15] [16][17][18][19][8] [20] [21] [22] [23] [24].
The authors of the work [10], show how to generate
JSPs and JavaBeans using the UWE [11], and the ATL
transformation language [12]. Among future works cited,
the authors considered the integration of AJAX into the
engineering process of UWE.
Bezivin et al. [13] propose to use ATL transformation
to transform PIMs defined by Enterprise Distributed
Object Computing into PSMs for different web services
platforms. Billing et al. [14] define PIM to PSM
transformation in the context of EJB by using QVT.
The authors of the work [15] show that the MDA can
be considered as a software industrialization pattern (or a
software factory). They propose an MDA Engine based
on a real case study in an IT services company. It is a
proposal for a framework to create custom MDA tools,
based on XMI, XSLT and the Visitor Pattern.
The work [16] has proposed a model-driven
development approach for E-Learning platform. The
authors established the domain model (CIM) through the
analysis of business logic, and then they established
robustness diagram of the system after the robustness
analysis. Then, they stratified on the PIM under the J2EE
framework, and proposed the method of transformation
from PIM to PSM layer by layer. The objective of the
work [17] is to introduce a new framework for the design
of secure Data Warehouses based on MDA and QVT,
which covers all the design phases (conceptual, logical
and physical) and specifies security measures in all of
them. One approach which has gained much attention in
the web-based MDA community is the AndroMDA
MDA generator [18]. This framework provides a PIM
schemes to model and integrate a wide variety of
scenarios and comes with a set of plugins, called
cartridges.
Two other works follow the same logic and have been
the subject of two articles [19] [20]. A metamodel of
AJAX has been defined using the AndroMDA tool. The
generation of AJAX code was made and illustrated by an
application that manages CRUD operations of person.
The meta-model is very important and we can join it to
our meta-models for modeling AJAX user interfaces.
The objective of the work of Nasir et al. [21] is to
generate the code of a DotNet application “Student
Appointment Management System”. The method used is
WebML. The code is generated, applying the MDA
approach. In [22], Esbai et al. generate the N-tiers web
application based on UML class diagram. This involves
developing all meta-classes needed to be able to generate
an N-tiers application respecting a MVC2, DI and DAO
patterns. In this work the author applied the approach by
modeling and used the MOF 2.0 QVT standard as a
transformation language.
Recently, the work [23] was conducted to generate the
MVC 2 web model. In this work, the author appropriates
<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.struts:Struts
xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:org.eclipse.struts="http:///org/ec
lipse/struts.ecore">
<viewPackage>
<view name="CreatePayment.jsp"/>
<view name="Order.jsp"/>
</viewPackage>
<controllerPackage>
<actionmappings>
<action path="/Order" name="OrderForm"
type="/OrderAction"
input="AddToCart.jsp">
<forward name="success"
path="//@viewPackege.0/@view.1"/>
</action>
<action path="/CreatePayment"
name="CreatePaymentForm"
type="/CreatePaymentAction"
input="/CreateCustomer.jsp">
<forward name="success"
path="//@viewPackege.0/@view.0"/>
</action>
</actionmappings>
<formbeans>
<form name="CreatePaymentForm"/>
<form name="OrderForm"/>
</formbeans>
</controllerPackage>
</org.eclipse.struts:Struts>
In the following section, we present the PSM model
generated that corresponds to the above XMI file.
The Fig. 14 shows the generated PSM model.
Fig. 14. The generated PSM Model
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
955
M. Rahmouni, S. Mbarki
[6]
the transformation rules by ATL transformation language
in order to generate only the CRUD operations from
three classes Ci, Cj and Ck.
This paper aims to rethink, to complete and generalize
the work presented in the article [23]. This work attempts
to generalize the input model and control the
transformation rules by using the Activity diagram and
class diagram. In this work, we combined CD and AD in
order to generate precisely the ingredients of MVC 2
web.
[7]
[8]
[9]
[10]
VIII. Conclusion and Future Work
[11]
In this paper we have presented a new technique
method to control the transformation of models. This
method allows transforming an UML class diagram
combined with an UML activity diagram to MVC 2 web
model that is the Struts framework.
The aim of using the activity diagram is to model a
workflow in a use case or between use cases or specify
an operation (model the internal logic of a complex
operation) in view to stabilize the class diagram.
Therefore, we can know control the input jsp pages of
an Action classes and the ActionForm classes associated
with these action classes. After stabilize the class
diagram, we can know the relation between the classes,
operations and attributes of each class as well as
associations between classes and finally we can generate
precisely all ingredients of MVC 2 web. This method is
divided into two steps. The first step is to model the
activity diagrams of all operations and determine the
elements necessary of each Action class. In the second
step, after we know the elements of each Action class, we
specify the transformation rules. These rules are
developed in ATL transformation language.
On the other hand, we transform only the operations
that have an activity diagram and belong to the class
diagram. And finally the process of a M2M
transformation, so generated model can be used to
generate an e-commerce web application from this
model. Furthermore, we plan to generate an e-commerce
web code from the MVC 2 web model generated. Our
goal is to facilitate more and more the development and
tests.
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[21]
References
[1]
[2]
[3]
[4]
[5]
[22]
OMG Model Driven Architecture, document update/2012-06-27,
(http://www.omg.org/mda/) (Accessed 26 July 2012).
X. Blanc, MDA en action: Ingénierie logicielle guidée par les
modèles (Eyrolles, 2005).
S. J. Mellor, K. Scott, A. Uhl and D. Weise, MDA Distilled:
Principles of Model-Driven Architecture (Addison-Wesley,
2004).
L. MENET, Formalisation d’une Approche d’Ingénierie Dirigée
par les Modèles Appliquée au Domaine de la Gestion des
Données de Référence. PhD thesis, Université de Paris VIII,
Laboratoire d’Informatique Avancée de Saint-Denis (LIASD),
école doctorale: Cognition Langage Interaction (CLI), 2010.
F. Jouault, F. Allilaire, J. Bézivin and I. Kurtev, ATL : A Model
Transformation Tool, Sciences of Computer ProgrammingElseiver, Vol. 72, n. 1-2, pp 31–39, 2008.
[23]
[24]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Omg/mof Meta Object Facility (mof) specification, omg
document ad/2012-06-27, (Accessed 26 July 2012)
(http://www.omg.org).
http://www.eclipse.org/articles/Article-JET2/ jet_tutorial2.html.
(Accessed 25 July 2012).
S. Mbarki, and M. Erramdani, Model-Driven Transformations:
From Analysis to MVC 2 Web Model, (2009) International
Review on Computers and Software (IRECOS), 4 (5), pp. 612620.
OMG Unified Modeling Language (OMG UML), Infrastructure
OMG Document Number: formal/2010-05-03 (Accessed 10
August 2012). http://www.omg.org/spec/UML/2.3/Infrastructure.
Kraus, A., Knapp, A., Koch N., Model-Driven Generation of Web
Applications in UWE, Proceeding of the 3rd International
Workshop on Model-Driven Web Engineering, CEUR-WS, Vol.
261, 2007.
Koch, N., Transformations Techniques in the Model-Driven
Development Process of UWE, Proceeding of the 2nd
International Workshop Model-Driven Web Engineering, Palo
Alto (Page: 3 Year of publication: 2006 ISBN: 1-59593- 435-9).
F. Jouault, F. Allilaire, J. Bézivin, I. Kurtev, ATL: A model
transformation tool, Science of Computer Programming-Elsevier
Vol. 72, n. 1-2: pp. 31-39, 2008.
Bezivin, J., Hammoudi, S., Lopes, D., Jouault, F., Applying MDA
approach for web service platform, In EDOC’04 preceedings of
the 8th IEEE International Entreprise Distributed Object
Computing Conference, pages 58-70, 2004.
Bezivin, J., Busse, S., Leicher, A., Suss, J.G, Platform
Independent Model Transformation Based on TRIPLE, In
Middleware’04: Proceedings of the 5th ACM/IFIP/USENIX
International Conference on Middleware, pages 493- 511,2004.
T. D. Ndie, C. Tangha1, F. E. Ekwoge, MDA (Model- Driven
Architecture) as a Software Industrialization Pattern: An
Approach for a Pragmatic Software Factories, Journal of
Software Engineering & Applications, pages 561-571, 2010.
Cong, X., Zhang, H., Zhou, D., Lu, P., Qin, L., A Model- Driven
Architecture Approach for Developing E-Learning Platform ,
Entertainment for Education. Digital Techniques and Systems
Lecture Notes in Computer Science, Volume 6249/2010, 111122, DOI: 10.1007/978-3-642-14533-9_12, 2010.
E. Soler, J. Trujillo, C. Blanco, E. Fernandez-Medina, Designing
Secure Data Warehouses by Using MDA and QVT, Journal of
Universal Computer Science, vol. 15, no. 8 pages 1607-1641,
2009.
AndroMDA. http://www.andromda.org/.
Distante, D., Rossi, G., Canfora, G., Modeling Business
Processes in Web Applications: An Analysis Framework, In
Proceedings of the The 22nd Annual ACM Symposium on
Applied Computing (Page: 1677, Year of publication: 2007,
ISBN: 1-59593-480-4).
Gharavi, V., Mesbah, A., Deursen, A. V., Modelling and
Generating AJAX Applications: A Model-Driven Approach,
Proceeding of the 7th International Workshop on Web- Oriented
Software Technologies, New York, USA (Page: 38, Year of
publication: 2008, ISBN: 978-80-227-2899-7)
M.H.N.M. Nasir, S.H. Hamid, H. Hassan, WebML and .NET
Architecture for Developing Students Appointment Management
System, Journal of applied science, Vol. 9, n. 8, pp. 1432-1440,
2009.
Redouane Esbai, Mohammed Erramdani, Samir Mbarki, Ibtissam
Arrassen, Abdelouafi Meziane and Mimoun Moussaoui, ModelDriven transformation with approach by modeling: From UML to
N-tiers Web Model, International Journal of Computer Science
Issues (IJCSI), Vol. 8, Issue 4, No 2, July 2011 ISSN (Online):
1694-0814.
M. Rahmouni, S. Mbarki, MDA-Based ATL Transformation to
Generate MVC 2 Web Model, International Journal of Computer
Science & Information Technology (IJCSIT), Vol 3, No 4, August
2011.
S. Mbarki, M. Erramdanim, Towards automatic generation of
MVC 2 web applications, InfoComp-Journal of Computer
Sciences, Vol. 7, No. 4, pp 84–91, 2008.
International Review on Computers and Software, Vol. 8, N. 4
956
M. Rahmouni, S. Mbarki
Authors’ information
Department of Computer Science, Faculty of Science, Ibn Tofail
University, Kenitra, BP 133, Morocco.
M'hamed Rahmouni PhD Student, holding a
Diploma of Higher Approfondie Studies in
Computer Science and Telecommunication from
the faculty of science, Ibn Tofail University,
Morocco, 2007. He participated in various
international congresses in MDA (Model Driven
Architecture) integrating new technologies
XML, EJB, MVC, Web Services, etc.
E-mail: md.rahmouni@yahoo.fr
Samir Mbarki Received the B.S. degree in
applied mathematics from Mohammed V
University, Morocco, 1992, and Doctorat of
High Graduate Studies degrees in Computer
Sciences from Mohammed V University,
Morocco, 1997. In 1995 he joined the faculty of
science Ibn Tofail University, Morocco where
he is currently a Professor in Department of
computer science. His research interests include software engineering,
model driven architecture, software metrics and software tests. He
earned an HDR in computer Science form Ibn Tofail University in
2010.
E-mail: mbarkisamir@hotmail.com
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
957
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Digital Image Watermarking and Encryption Using DWT and RSA
Omar Alirr, Kasmiran Jumari
Abstract – In DWT based watermarking technique the cover image is decomposed to its
frequency bands, the coefficients in these bands are modified to hide secret messages. The main
characteristics of DWT Watermarking are the imperceptibility, capacity and low complexity.
However, this technique has some limitations if it is used alone; it will not be efficient in terms of
data security. In this paper the aim is to incorporate the DWT technique with the RSA public-key
algorithm, to accomplish a high capacity and secure communication system. The difficulty of
factoring in the RSA algorithm has made it one of the most powerful cryptosystems. The proposed
technique aims to transfer high capacity secure data by embedding it inside the cover image
without affecting or degrading the imperceptibility of the cover image. The security, capacity and
imperceptibility are the main criteria according to which the performance of the system is judged.
Many scenarios with different cover images and secret messages, different sizes and different
image types, these scenarios are used to evaluate the performance of the proposed system by
computing the PSNR and the corresponding payload sizes. For the system to not show any
suspension of secret data that is being transferred, the value of the PSNR should be around 40dB,
so a trade off must be made between security, capacity and imperceptibility to find to what extent
this system can reach. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: DWT Watermarking, RSA, Public-Key Cryptograph
I.
Discrete Wavelet Transform (DWT) has been utilized
in digital watermarking more frequently because of its
better spatial localization and multi resolution
characteristics, which imitate the theoretical modeling of
the humans visual system [3].
The RSA cryptosystem, is the most known used
public-key encryption tool used today. The security of
RSA depend on the fact of the difficulty of computing the
private key by knowing the public key. The problem
relies on factoring to the prime numbers [4], [5].
In the following sections, we present a literature
review on DWT, RSA and then we introduce the
proposed method and its implementation.
Introduction
The development in technology and networking has
generated serious threats to obtain secured data
communication. This has driven the interest among
computer security researchers to overcome the serious
threats to build secured data transmission.
The main requirements needed to be taken into
consideration while building secure transmission system
are, imperceptibility; which is the difference between the
watermarked image and original (cover) image cannot
be distinguished by human eyes. Data Payload, also
known as capacity of watermarking. It is the maximum
amount of information that can be hidden without
degrading image quality and Security; Secret key has to
be used for embedding and detection process in case
security is a major concern. There are three types of keys
used in watermark systems: private-key, detection-key
and public-key. Hackers should not be able to remove
watermark with anti-reverse engineering research
algorithm [1], [2]. Steganography and cryptography are
definitely complementary technologies. They provide
two different services to the data they are protecting.
Stego hides the existence of the data, while crypto makes
the contents of the data difficult to read [1].
In watermarking there are many methods used to hide
secret information, Comparing to spatial domain
schemes, frequency domain watermarking schemes have
proved to be higher effective in term of achieving the
needed imperceptibility and robustness for digital
watermarking schemes.
II.
DWT
In Discrete Wavelet Transform (DWT) the Wavelet
Series is considered as the sampled version of CWT and
its computation may cost significant quantity of time and
resources, that depend on the required resolution. The
DWT, which depend on sub-band coding is found to
reach a fast computation of Wavelet Transform. It is easy
to deploy and reduces the calculation time and the
needed resources [6], [7].
The DWT transform is a special function which, in a
form same as to sine and cosine in Fourier transform,
these wavelets are used as elementary functions to
represent signals. For the 2D images, applying DWT
mean that processing the image using 2D filters in each
dimension of the image. The filters divide the inserted
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
958
O. Alirr, K. Jumari
image into 4 non overlapping multi resolution sub-bands
LL, LH, HL and HH. The sub-band LL denote the coarse
scale DWT coefficients while the sub-bands LH, HL and
HH represent the detail scale of DWT coefficients.[7],
[8].
II.1.
The approximation coefficients and the detail
coefficients at each level are up-sampled by factor of 2,
go through the low pass and high pass filters and then are
added. This process is keeping continue along the same
number of levels as in the decomposition way to generate
the original signal [9], [10].
Multi-Resolution Analysis
In order to analyze a non-stationary signal, we need to
determine its behavior at any individual event. Multiresolution analysis provides one means to do this. A
multi-resolution analysis decomposes a signal into a
smoothed version of the original signal and a set of detail
information at different scales.
This type of decomposition is most easily understood
by thinking of a picture (which is a two dimensional
signal). We remove from the picture information that
distinguishes the sharpest edges, leaving a new picture
that is slightly blurred. This blurred version of the
original picture is a rendering at a slightly coarser scale.
We then recursively repeat the procedure.
Each time we obtain some detail information and a
more and more blurred (or smoothed) version of the
original image. Removal of the detail information
corresponds to a band pass filtering, and generation of
the smoothed image corresponds to a low pass filtering.
Given the decomposition, we can reconstruct the
original image, Fig. 1 shows the decomposition tree. In
Fig. 1, the signal is represented by sequence, x[n], where
n is an integer. The low-pass filters is represented by Go
while the high-pass filters take the symbol Ho. for every
level, the high pass filter generate the detail information,
d[n], and the low pass filter related with scaling functions
generate the coarse approximations, a[n] [6], [9], [10].
Fig. 2. Three level wavelet reconstruction
III. RSA
The idea of public- key cryptography was generated
from the challenge of solving two of the most difficult
problems related with traditional (symmetric) encryption.
The first challenge is the key distribution, as in shared
encryption it is required that the two parties are already
own the same key, but in public-key there is no need to
spread the same shared key with trusted one or using key
distribution center.
The second problem that Diffie solved using the
digital signature for authentication [4], [5]. In order to
break the RSA algorithm, there are two known possible
ways. The first one is the brute- force tool: by trying all
possible private keys. So, the larger number of bits used
in e and d, the higher secure the algorithm. Despite that,
since the computations that are involved in both key
generation and data encryption, are complex, as key
become larger, the system will run slower [11], [4].
The most researches of the cryptanalysis on RSA have
concentrated on the task of number factoring to its two
prime factors. But for a large number with large prime
factors, factoring become a hard problem [4].
IV.
Fig. 1. Three levels wavelet-decomposition
The Proposed System
In this technique there are two branches that represent
the encoding (forward) and the decoding (reverse) of the
proposed technique, in each branch we utilize the
encryption using RSA public key algorithm and the
watermarking using the DWT technique.
Once we have decomposed a signal this way, we may
analyze the behavior of the detail information across the
different scales. We can extract the regularity of a
singularity, which characterizes the signal's behavior at
that point. This provides an effective means of edge
detection.
Furthermore, noise has a specific behavior across
scales, and hence, in many cases we can separate the
signal from the noise. Reconstruction then yields a
relatively accurate noise free approximation of the
original signal. This denoising technique is developed in
[6], [9], [10].
Fig. 2 shows the reconstruction process of the original
signal from its transform coefficients. the reconstructing
process considered as the reverse-back process of
decomposing the signal.
IV.1. The Encoding Procedure
Encoding branch consist of two steps , the first one is
the preparation of secret image and encryption using
RSA algorithm.
The resulted encrypted secret data is then used in the
second step by embedding it inside the DWT coefficients
of the decomposed cover image, to generate the
watermarked cover image. Fig. 3 shows the encoding
procedure followed by the encoding steps:
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
959
O. Alirr, K. Jumari
Step 1: The original cover image is subdivided into nlevel of DWT decomposition to generate the
approximation sub-band and 3 of detailed sub-bands, the
n-level of decomposition depend on the size of secret
image and the robustness we want.
Step 2: select L numbers of wavelet coefficients from
either HL or LH as the watermark embedding positions,
where L refers to the number of bits in the secret
watermark image. The choosing of HL or LH bands
come from the facts that these band are less affected from
external distortion and does not degrade the cover image
severely.
Step 3: The secret image is a binary image with size
NxM must not be larger than the LH or HL sub-band
size.
Step 4: Encrypt the secret binary image using RSA
algorithm, this step is discussed in detail in the next
section.
Step 5: Generally, the wavelet coefficients consist of
positive and negative floating values. the aim is to embed
the encrypted secret image bits in the integer part of the
selected coefficients. So, we convert the whole number
part of a selected wavelet coefficient into its 8-bit binary
format and at the same time, the sign and fractional part
of that selected coefficients are temporary saved.
Step 6: A single bit of the encrypted secret image is
then substituted into the LSB bit of the coefficients
integer part to obtain the watermarked segment. We can
add more than one bit in each DWT coefficient to
increase the capacity, and this will be discussed in the
results chapter.
Step 7: Next, the watermarked segment in Step 4 is
converted back to the decimal representation. To avoid
data missing, the coefficient sign and the fractional part
of it are added to the watermarked segment to produce a
watermarked wavelet coefficient.
Step 8: Step 5 to Step 6 are repeated until the all the
secret image bits of length L is totally embedded.
Step 9: Lastly, n-level of Inverse DWT is performed
to obtain the watermarked cover image.
Step 1: The watermarked cover image is decomposed
into n-level of DWT decomposition to generate the
approximation sub-band and 3 of detailed sub-bands.
Step 2: select the watermarked coefficients from the
chosen HL or LH of the decomposed bands.
Step 3: convert the whole number part of a selected
wavelet coefficient into its 8-bit binary format.
Step 4: A single bit of the encrypted secret image is
then retrieved from the LSB bit of the watermarked
coefficients integer part to construct the encrypted
matrix.
Step 5: Next, the retrieved encrypted matrix in Step 4
is converted to the decimal representation.
Step 6: decrypt the retrieved matrix in step 5 using
RSA algorithm, this step also is discussed in detail in the
next section.
Step 7: Step 3 to Step 4 are repeated until the all the
secret image bits of length L is totally retrieved.
Step 8: Lastly, the decrypted matrix in step 6 is
converted to the binary format and reshaped to construct
the original secret image.
Fig. 4. The Decoding Procedure
V.
Cover image is decomposed using DWT into two
dimensional bands. The secret image is converted to it
equivalent binary representation to be encrypted using
RSA algorithm, the resulted encrypted matrix has a size
bigger than the original secret image, this encrypted form
is considered in the embedding process. All decomposed
DWT bands (LL, LH, HL and HH) are considered and
used as region of embedding in different grayscale
watermark scenarios, to see the impact of different bands
of DWT on the cover image.
V.1.
Fig. 3. The Encoding Procedure
IV.2.
Implementations and
Performance Analysis
The Effect of Embedding One Bit per Coefficient
in the Middle DWT Bands
In this section the cover image is a grayscale image
and the secret watermark is a binary image (pixel=1bit).
The aim here is to embed one pixel from the secret
image inside each coefficient in the middle DWT band
LH of the cover image. Scenarios are shown in the Fig. 5
to Fig. 10.
The Decoding Procedure
The decoding branch also has two steps like encoding
branch but in reverse order, the first step start with
decomposing the watermarked image to its DWT
coefficients, and then selecting the coefficients that
preserve the secret data, and retrieve it back, this
retrieved secret data is then used by the second step to
decrypt it using RSA algorithm, this followed by
reconstructing the original image (watermark) to its
original form. Fig. 4 shows the decoding procedure
followed by the decoding steps:
V.2.
Embedding 3-Bit in Each Coefficient in LH
and HH DWT Bands
In this section the cover image and the secret
watermark are grayscale images.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
960
O. Alirr, K. Jumari
Fig. 9. Encrypted Cameraman and Watermarked Lena pair
Fig. 5. Airplane and Man watermark and cover pair
Fig. 10. Extracted Encrypted and decrypted Cameraman
Fig. 6. Encrypted Airplane and Watermarked Man pair
Fig. 11. embedding 3-bits in LH band
Fig. 7. Extracted Encrypted and decrypted Airplane
Fig. 12. embedding 3-bits in HH band
V.3.
Fig. 8. Cameraman and Lena watermark and cover pair
Embedding 4-Bits in Each Coefficient In LH
and HH Bands
In this section the cover image and the secret
watermark are grayscale images. The aim here is to
embed 4 bits from the secret image inside each
coefficient in LH and HH DWT bands of the cover
image. Scenarios are shown in Fig. 13 and Fig. 14.
The aim here is to embed 3 bits from the secret image
inside each coefficient in LH and HH DWT bands of the
cover image. Scenarios are shown in Fig. 11 and Fig. 12.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
961
O. Alirr, K. Jumari
Band
LH
LH
LH
HH
Fig. 13. Embedding 4-bits in LH band
LH
HH
LH
TABLE I
THE PERFORMANCE IN ALL SCENARIOS
Cover &
Embedded
Cover size
PSNR
watermark
watermark
(pixel)
(dB)
name
size (bits)
Man &
1024×1024
393216
54.7
Airplane BW
Lena &
512×512
98304
54.3
Camera BW
Man &
1024×1024
786432
43.6
Couple gray
Man &
1024×1024
786432
43.8
Couple gray
Man &
1024×1024
786432
39.0
Couple gray
Man &
1024×1024
786432
39.2
Couple gray
Man &
1024×1024
786432
19.4
Couple gray
VI.
1
1
3
3
4
4
8
Conclusion
This paper was mainly devoted to the performance
analysis of the proposed system of the incorporating the
DWT watermarking technique and the RSA public-key
algorithm.
By combining these two efficient methods, the high
secure data communication can be achieved.
Imperceptibility in term of Peak Signal to Noise Ratio
(PSNR), maximum capacity payload and the secrecy, are
used to evaluate the proposed technique. The proposed
technique grants the authenticity and the privacy of the
secret transmitted data by using RSA algorithm
procedure. The proposed technique grants hiding high
amount of secret payload through the embedding in the
DWT decomposed bands coefficients.
Fig. 14. Embedding 4-bits in HH band
V.4.
Bit
Embedding 8-Bits in LH Band
In this section the cover image and the secret
watermark are grayscale images. The aim here is to
embed 8 bit from the secret image inside each coefficient
in LH and HH DWT bands of the cover image. Scenario
is shown in Fig. 15.
References
[1]
E. Cole, Hiding in Plain Sight Steganography and the Art of
Covert Communication ( Wiley Composition, 2003).
[2] S.M. Mohidul, R. Debnath, S. K. Alamgir Hossain, DWT Based
Digital Watermarking Technique and its Robustness on Image
Rotation, Scaling, JPEG compression, Cropping and Multiple
Watermarking, in ICICT , pp.246-249, 2007.
[3] A. Al-Haj, Combined DWT-DCT Digital Image Watermarking,
Journal of Computer Science, Vol. 3, n. 9, pp. 740-746, 2007.
[4] P. M. Sonsare, S. Sapkal, Stegano-Crypto System for Enhancing
Biometric-Feature Security with RSA, in International
Conference on Information and Network Technology, Vol. 4,
pp.196-200, 2011.
[5] W. Stalling, Cryptography and network security (Pearson
education, Prentice Hall, 2011).
[6] B. Furht, E. Muharemagic, D. Socek, Multimedia Encryption And
Watermarking ( Springer science, 2005).
[7] Milan S. Shet, Minal Patel, K. Manikantan, S. Ramachandran,
DWT Based Feature Extraction Using Normalized Magnitude
Based Thresholding and Multilevel Illumination Normalization
for Enhanced Face Recognition, (2012) International Review on
Computers and Software (IRECOS), 7 (5), pp. 1969-1985.
[8] A. Ouled Zaid, A. Makhloufi, A. Bouallegue, C. Olivier, A. NaitAli, Blind Watermarking Integrated to Wavelet Image Coding
Scheme,
(2008) International Review on Computers and
Software (IRECOS) 3 (1), pp. 53-61.
[9] S. Mallat, W. L. Hwang, Singularity Detection and Processing,
IEEE Transaction on Information Theory, Vol. 38, n.2, pp.617643, 1992.
[10] Y. Zhang, Digital Watermarking Technology: A Review, in
Fig. 15. Embedding 8-bits in LH band
The imperceptibility using PSNR and the payload
capacity are compared in all suggested scenarios to
evaluate the system performance. Two types of secret
images are used as watermark, light binary images and
heavy grayscale images. The imperceptibility, payload
capacity and RSA algorithm security show a
collaborative impact on the system performance.
High security mean large prime number in RSA
algorithm, that lead to high capacity payload that degrade
the cover image quality by the amount of this payload
and the chosen DWT band where it is embedded.
Table I summarized the PSNR results that obtained
from all previous scenarios, as shown the impact of the
watermark on the cover image is higher when it is
embedded in the middle bands and lower in the HH band
which represent the details of the image.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
962
O. Alirr, K. Jumari
Future Computer and Communication, International Conference,
pp.250-252, 2009.
[11] Z. Bojkovic, D. Milovanovic, Multimedia Contents Security:
Watermarking Diversity and Secure Protocols, in Modern
Satellite, Cable and Broadcasting Service, 6th International
Conference, Vol. 1, pp.377-383, 2003.
Authors’ information
Department of Electrical, Electronic & Systems Engineering, Universiti
Kebangsaan Malaysia, Bangi, Malaysia.
Omar Alirr received the BS degree in electrical
and computer engineering in 2006 from the
Hashemite University, Jordan. and the MS
degree in communication and computer
engineering in 2012 from the National
University, Malaysia. He is currently working
toward the PhD degree at the PETRONAS
University, Malaysia. His current areas of
interest include watermarking, cryptography and security in data
communication.
Kasmiran Jumari is a Professor in Faculty of
Engineering, Universiti Kebangsaan Malaysia.
He received. The MS degree in Instrument
Design, from University Of Aberdeen, United
Kingdom, 1978. And the PhD degree in
Electronics, University of Kent, Canterbury,
England, 1985. His areas of interest include
Security System, Intrusion detection system,
Signal Processing, Image processing, computer vision, Communication
Engineering and Computer communications networks.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
963
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Study on Multi-Agent Q Learning Based on Prediction
Ya Xie, Zhonghua Huang
Abstract – Multi-agent Q learning algorithm(model) based on prediction is proposed in order to
make multi-agent has the ability of online learning, which two layers of structure are adopted,
planning, prediction and Q learning etc are integrated. The system state is predicted through the
adoption of prediction, which the convergence speed of learning is accelerated, at the same time
planning technology is used in the model through prior knowledge to solve the partial perception
problems, the adaptive learning ability of algorithm has been greatly improved by the application of
prediction technology, where learning algorithm has a strong ability of on-line learning and higher
learning efficiency, the successful application of this algorithm in the RoboCup shows its good
learning performance. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Q Learning, Online Learning, Multi-Agent, Robocup
to model independent, simplicity and efficient
characteristics of Q learning. The statistics learning and
reinforcement learning are integrated organically in order
to solve partial perception, uncertain information and
behavior strategy learning of other agent, which other
agent's strategy is learned through statistics of joint
actions, optimal choice of joint actions is guaranteed by
use of full probability distribution of strategy probability
vector, which guarantees the convergence of the algorithm
in theory. In multi-agent Q learning based on statistics,
statistics techniques are used to solve the uncertain
information and strategy learning of other agent in the
multi-agent environment, but at the same time, statistics
learning needs more training samples, which will lead to
learn more iterative times and slow convergence speed,
then the learning algorithm is not suitable for online
learning. Agent should have the ability of online learning
in many MAS (such as: RoboCup), therefore, an
algorithm with fast convergence speed and suitable for
online learning is needed, based on this, multi-agent Q
learning algorithm based on prediction is proposed, which
two layers of structure are adopted, planning, prediction
and Q learning technology etc are integrated, application
of prediction technology makes the algorithm adaptive
learning ability has been greatly improved, learning
algorithm has strong online learning ability and high
efficiency of learning, the learning algorithm is more
suitable for online learning.
This paper discusses the concept and model algorithm,
and the performance of the algorithm is analyzed.
Nomenclature
TD
MAS
RoboCup
s
a

s

a
m
f
fi
Pt s
A
Temporal Differences
Multi-Agent System
RobotWorldCup
State
Action
The next state
The next action
Model
Mapping function
Element vector
Probability of optimal behavior strategy in
the state st
Action space of agent
Pt0
Optimal behavior strategy without prediction
I.
Introduction
Reinforcement learning of multi-agent introduces the
traditional reinforcement learning technology into MAS
(Multi-Agent System).
Reinforcement learning belongs to unsupervised
learning, it is a kind of adaptive environment learning
method with environmental feedback as input, which
obtains the optimal strategy finally through interaction
with the environment and continuous improvement
strategy. Because of its online learning and adaptive
learning characteristics, reinforcement learning is an
effective tool to solve the optimization problem of the
intelligent strategy, which is widely used in various fields
and has become one of the research hotspots in the field of
machine learning.
Reinforcement learning algorithm in mature are: TD, Q
learning, Dyna-Q and Q-PSP learning etc, this paper
chooses Q learning as multi-agent learning foundation due
II.
The Concept of Multi-Agent
Q Learning Based on Prediction
II.1.
Two Layer Learning Structure
MAS is a complex, dynamic environment, motion state
function with model independent is used as learning goals
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
964
Ya Xie, Zhonghua Huang
in enhance learning such as Q learning, TD learning,
which is suitable for solving unsupervised, dynamic
learning tasks, so this algorithm is suitable for multi-agent
environment, but at the same time, for this learning
algorithm, search spaces of state and action in learning
processing will increase exponentially with the number
growth of agent, which will lead to low efficiency of
learning, in fact, the condition of traditional reinforcement
learning can't be satisfied easily in MAS, so the
convergence can't be guaranteed in MAS.
Multi-agent reinforcement Learning is studied by some
scholars at home and abroad, such as the state and action
of single agent is extended to multi-agent joint actions and
space in Hu and Wellman studies, where the learning form
 
is transformed from (s, a) to( s , a )[1], FOF learning
algorithm is proposed by Littman, which converges to
Nash equilibrium point in certain conditions [2], in fact,
learning efficiency of enhance learning by joint action
space is very low in multi-agent environment, and also the
suitable environment of learning algorithm is too simple,
therefore the traditional reinforcement learning can't be
led into MAS simply, multilayer learning model
comparing to monolayer model will be more effective in a
complex environment that is proposed by Davidsson in
1996 and Stone in 2000 [3][4].
Based on this, multi-agent reinforcement learning
model based on prediction is proposed in this paper,
which consists of two layers, where the top layer is an
action planning module, that consists of abstract motion
state rules, the rules can be designed by the designer
according to the prior knowledge; the bottom layer is a Q
learning module based on prediction.
Through the study found, the prediction of next state of
system will be helpful to reduce the search space of
learning in reinforcement learning, which will improve
the efficiency of learning, at the same time, another good
of integration of prediction technology and reinforcement
learning is that the actual state can be perceived in the next
cycle after the prediction of next action every time,
therefore, the prediction function can be learned easily
through mature supervise learning method.
II.2.
mapping can be described as: m = f(s), where f represents
a mapping function, which system state as input will be
mapped to model as output by the utility, states with same
effectiveness for learning agent will be mapped to the
same model, the number of model is far less than the
number of state, |m| << |s|.
In the enforcement learning, if the look-up table is used
as learning function, then the table will be large in the
complex problems, and the lookup efficiency of table will
be low at the same time, but the learning function will
more abstract to solve the problem of lookup table, but
also can improve the generalization ability of
reinforcement learning, Satinder proposed a set of states
replacement of status columns in lookup table, that is to
say the state space can be mapped using a set [5].
View of the model partition of self-organizing neural
network in the unsupervised case [6], this paper uses it as
mapping functions, which the state will be mapped to
model, element vector as F = (f1, …,fi,…) that can
characterize the system state is used as input of SOM
networks, the network output is the mapping mode, the
structure of SOM network is as follows in Fig. 1.
Fig. 1. Structure of SOM network
In the learning process, the observed state will be
mapped to model through SOM, (m, a) form rather than (s,
a) form is adopted in learning, where a indicates action.
Mapping of State to Model
Because of the limitation of the agent perception ability,
and influence of noise of system environment (or outside),
partial perception of environment can be obtained by
agent in MAS.
In fact, in the learning process, the full system
environment is not necessary to be perceived by learning
agent in each learning step, for example, in RoboCup,
when our attacking players in front of the ball, the
offensive player is not necessary to know our goalie
actions, that is to say, the behavior strategy of offensive
player is not necessary to involve goalkeeper. Similarly,
for learning agent in MAS, lots of state are considered to
be equivalent, that is to say, the system states with large
number can be mapped to models with smaller number,
where s indicates state, and m indicates model, then the
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
III. The Model of Multi-Agent Q Learning
Based on Prediction
Fig. 2 shows the structure of learning model, which
consists of behavior planning module and Q learning
module based on prediction.
Fig. 2. Structure of learning model
International Review on Computers and Software, Vol. 8, N. 4
965
Ya Xie, Zhonghua Huang
(1) Action planning module
The planning module is the set of abstract action rules
according to the prior knowledge, Ye et al pointed out that
it is very difficult to learn the optimal strategy for agent
according to only local (current) knowledge to learn, the
agent requires global knowledge [7].
Here we tend to use the term of prior knowledge rather
than the global knowledge to express, because lots of
global knowledge is included in the priori knowledge,
priori knowledge is more general concept than the global
knowledge. The planning module can be designed by the
designer according to the prior knowledge, in the learning
process, the module can be updated according to the
newly learned knowledge, which can be realized through
the method of abstract rules from knowledge, particularly,
MMDP is proposed by Craig Boutilierk [8], M-Dyna-Q is
proposed by Weiss [9], as the core of this paper is
concerned with the learning module, and the construct and
updating of planning module have been mature method,
so the correlation method will not be discussed for details.
(2) The Q learning module based on prediction
A must considering question in multi-agent
reinforcement learning is that: whether the
communication is needed between agents, agents can
observe joint action and the agent can obtain their own
reward, in this paper assume that the learning agent is a
separate individual without interaction between agents,
agent can observe joint actions and get their reward.
The basic idea of reinforcement learning is the
experiment of every possible action by trial-and-error in
every experience, optimal behavior control strategy can be
formed according to the return, the disadvantage of this
method is that the convergence speed is very slow, which
may fail to converge in the complex environment.
Prediction technique is adopted in order to solve this
problem, unlike much previous research, learning
techniques is not used to learn how to predict, but the
prediction technology is adopted to accelerate the
convergence speed of learning for meeting the
requirements of online learning.
In a cooperative or antagonistic environment, agent's
action is decided according to environment and behavior
of others, if the next action of others can be predicted, then
the optimal strategy will be formed according to the prior
knowledge, the application of prediction technique in the
study will be helpful to reduce the learning search space
and improve the learning speed.
Ledezma A. et al. proposed a method to predict the
opponent's actions by observing the opponent behavior
[10], which is only applicable for simple environment
with two agents. In fact, in multi-agent environment,
forecast for the system state of the next cycle is more
useful and generally than the action predication of agent,
of course, forecast of state is based on the prediction of
action, the predicting state will map to model according to
SOM.
(3) Prediction module
Prediction module is composed of two parts: action
recognition and state prediction. Action recognition is
used to identify the action of other agent, the action of
heterogeneous agent will be identified according to its
usefulness, state prediction part is one of the core of
learning module, where the observation of environment
for input and the predicated state for output, because we
can get the actual state values at each step, this prediction
part can be constructed through supervised learning or TD
learning. In fact, multilayer neural network is used as
prediction part in the experiment, prediction part can be
improved through online learning.
(4) Learning strategy under prediction state
In the study, prediction part will make a prediction
based on the current state, according to the prediction state
model, agent will select behavior strategy for the next
cycle according to the plan of planning part, of course,
even if the model of each forecasting state matches the
model of actual state, we can't think that planning part
gives the optimal plan, but that the plan is correct in most
of the time, the reason is that the prior knowledge is not
suitable for each specific state or lack of planning rules of
this state, planning part can be improved by learning [11]
[12]. At the same time, in order to reduce the influence of
errors plan, ε-greedy strategy will be used for action
selection, that is to say, the agent will select this action
according to planning with probability ε and select other
action randomly with probability 1-ε.
(5) The application of learning model
The state of system, because the application field of
this text is RoboCup, so coordinate of player and ball
within a certain range can be adopted to depict the system
state, of course, it is only reaction of local system state, in
fact, as long as the state within 25 meters can be obtained
timely for agent, the input of SOM is the coordinate value,
output is model that can be a vector to represent, this
vectors can more express mapping of complex system
condition, but also be conducive to as input for prediction
module.
The model prediction can be completed by Prediction
module with the current model as input and the forecast
model of next cycle as output, according to the discussion
above, prediction can be completed adopting supervised
learning technology, because the prediction is a complex
process, and the neural network has strong robustness and
good generalization ability, neural network is used to
realize the forecast module based on comprehensive
comparison the supervised learning algorithm, neural
network perturbation learning has characteristics of
convergence to the global optimum, which is used to train
the network.
This neural network is feedforward neural network
with three layers, the input of which is the output of SOM
network, the output is prediction mode vector, prediction
module training can be completed fast due to the schema
mapping of complicated system state.
IV.
Analysis of Learning Performance
Learning performance of learning model is analyzed by
probability theory in the following.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
966
Ya Xie, Zhonghua Huang
For a certain condition, p indicates correct probability
of the next state prediction by prediction part, q indicates
correct (optimal) action probability according to the
planning, ε-greedy strategy is selected for action selection
by learning agent. The optimal control strategy is learned
by every action trial in traditional reinforcement learning,
now learning process by introducing learning model is:
agent selects action with probability ε according to the
planning, or selects action randomly with probability 1-ε,
if the state prediction is correct and planning behavior is
optimal, in this case, the agent gain (learned) optimal
strategy for the current status, and won't explore learning
space, then prediction has accelerated the process of
learning, improved learning efficiency, specific expressed
as follows:
Pt s   pq 

V.
1
1    p 1  q  
A 1
1
1  pq     pq  
A 1
(1)
 pq A  1  pq  
A 1
where Pt s indicates probability of optimal behavior
strategy in the state st, A indicates action space of agent,
Pt0 
1
, Pt0 indicates optimal behavior strategy without
A
prediction, for any state, we can get as follows:
Pt s  Pt0 

 pq A  1  pq   1


A 1
A
A  A  pq    pq   1
The Application of Multi-Agent Q
Learning Based on Prediction in
RoboCup
RoboCup provides a fully distributed control, real-time
asynchronous multi-agent environment, RoboCup is
carried out in the standard computer environment, using
Client/Server, by the RoboCup association provides a
standard Server, the team writes each client (Client)
program, simulation of the actual football team.
RoboCup is a two - team competition, each team
consists of several agents, all agents share a common goal:
to win, therefore teammate considers mutual collaboration
between agents, opponent considers the mutual
antagonism between agents, the agent should have the
ability to learn in order to adapt to the complex
environment constantly. Through RoboCup that is a
distributed control, real-time asynchronous, noise
multi-agent platform, variety of collaboration,
coordination of theory, learning algorithm and
multi-agent system structure and other artificial
intelligence problem can be test.
(1) Front-court confrontation and cooperation strategy
learning
As shown in Fig. 3, the attack between offensive team
with three agent and defensive team with four agent, the
goal of offensive team is score a goal, keep control of the
ball, and do not let the ball out of bounds, No. 9 is an
offensive player that uses multi-agent Q learning
algorithm based on prediction to learn high-level strategy
under this scenarios, we define the offensive player from
the initial position to shoot success or outside of the ball as
a scenario, and also, define the reward value of successful
and unsuccessful behavior, if the action of player leads to
good results, then the action is successful behavior,
otherwise is not successful behavior, where score a goal,
surpass are good results, but lost the ball, outside of the
ball are not good results.
Environment parameter selection, the agent setting and
training process of training is similar to the previous
chapter, here no longer repeated discussion, Because the
training scenes is simple, so the number of training is less,
a total of about 6000 training.
In the design of learning model, the M-Dyna-Q
algorithm[4][6] proposed by Weiss is used to construct
and improve the planning part, 3 layer feedforward neural
network is used as the prediction part, the SOM network
(the network node is determined by the state parameter) is
adopted as the state schema mapping.
(2) The analysis of algorithm performance
Fig. 4 is the performance curve of the learning agent,
the number of unsuccessful action in 100 experiments is
adopted as the performance index (ordinate), the abscissa
is the number of iterative learning control, comparing to
the traditional Q algorithm in the same period, view from
Fig. 4, the action of strategy of agent with the adoption of
1
1   1  p  
A 1
  pq 

with a high probability, otherwise, agent will tend to
random exploring.
(2)
A  A  1
Eq. (2) shows the comparison of learning model and
traditional learning methods, if Eq. (2) is greater than 0,
then the learning model is effective, otherwise the
learning is invalid, for A  pq    pq part in Eq. (2), set
x = pq, then A  x    x , which is a function of two
variables, where two variables are between 0 and 1, when
1
1
ε=x=
, the function has a minimum value as , at
A
A
the same time, Eq. (2) is equal to 0, that is to say Pt s -
Pte  0, this means that the learning model can improve
the efficiency of learning, the learning algorithm based on
prediction is equivalent to the traditional learning
algorithm in the worst case, when forecasting and
planning with right degree, agent will use planning rules
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
967
Ya Xie, Zhonghua Huang
this learning algorithm after some learning steps is better
than the strategy before unlearning; the learning algorithm
can be convergent in the 4000 learning steps, while the Q
learning algorithm cannot be convergent after 6000
learning steps. (in fact, the Q learning algorithm cannot be
convergent after 10000 learning steps, this shows that the
traditional Q learning cannot guarantee the convergence
of learning in multi-agent environment), a funny thing is
that if all agents use this learning algorithm, then how is
their performance? This is another research direction.
delay of reward is translated into instantaneous reward,
learning efficiency is improved through theoretical
analysis and prediction. In order to make full use of the
prior knowledge, planning technology is used, planning
part in learning module is composed of abstract control
strategy, when the system is in a predetermined state,
agent can select the optimal behavior according to the
planning, In order to avoid the unfavorable influence of
errors in planning, the action selection of agent with
ε-greedy strategy. At the same time in order to the
generalization ability and learning efficiency of
enforcement learning in complex actual environment,
SOM network is adopted to map the state to model, which
the environment that is concerned by agent is transformed
from system state with large number to model with small
number.
The learning algorithm can be applied to multi-agent
environment, theoretical analysis shows that the algorithm
is convergent, at the same time this algorithm effectively
solves the problem of low efficiency of reinforcement
learning in multi-agent environment. Successful
application of this algorithm in RoboCup shows its good
learning performance.
There are two key problems in this learning model: the
first is the planning design, how to effectively structure
control rule set by the prior knowledge? How to improve
the planning part so that it always gives the optimal
planning? Second is the design of prediction function,
how to choose the prediction function? How to improve
prediction function? No discussion is given in detail, these
problems in the paper as a matter of fact, the solution we
can find similar to these individual problems in current
research. It should also be noted that the learning process
of this learning model includes three independent parallel
processes: prediction function learning, planning learning
and Q learning.
Fig. 3. The training scenarios of agent
Acknowledgments
This work was supported by program for new century
excellent talents in university (ncet-11-0968) and the key
project of department of education of hunan province
(11a206).
Fig. 4. The performance curve of the learning agent
VI.
Conclusion
References
The significantly differences (characteristics) between
reinforcement learning and other learning methods are:
delayed reward and trial-and-error, which has a temporal
credit assignment problem and the problem of infinite
state visit. In multi-agent environment, this characteristics
lead to the slow of learning speed and can't be convergent,
in view of the above problems, this paper proposes a
learning model, which contains a prediction module, the
system state of next cycle is predicted in every cycle, since
we can get the actual state information in every cycle, then
prediction module is improved through existing methods
according to the difference between prediction
information and actual information, in a certain sense, the
[1]
[2]
[3]
[4]
[5]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Littman M L, Friend-or-foe: Q-learning in general-sum games, In
18th International Conference on Machine Learning.
Williamstown, USA: Morgan Kaufmann Press, pp. 322–328, 2001
Yonghai Zhu, Shuyu Zhang, Pei Pei, Shugang Chen, Information
Processing Model of Team Learning and Memory and Technical
Support, (2012) International Review on Computers and Software
(IRECOS), 7 (4), pp. 1812-1818.
W. Zemzem, M. Tagina, A New Approach for Reinforcement
Learning in non Stationary Environment Navigation Tasks, (2012)
International Review on Computers and Software (IRECOS), 7 (5),
pp. 2078-2087.
Ong,S. C. W., Png, S. W., Hsu, D., and Lee, W. S, Planning under
uncertainty for robotic tasks with mixed observability, IJRR, Vol.
29 N. 8, pp.1053-1068, 2010.
LI Yi, JI Hong, Q-learning for dynamic channel assignment in
cognitive wireless local area network with fibre-connected
International Review on Computers and Software, Vol. 8, N. 4
968
Ya Xie, Zhonghua Huang
distributed antennas, The Journal of China Universities of Posts
and Telecommunications, Vol. 19 N. 4, pp.80-85, 2012.
[6] Xiangfen Ji, Zhu Qi, Zhao Su, Spectrum allocation based on
Q-Learning algorithm in Femtocell networks, Proceedings of 2012
IEEE International Conference on Computer Science and
Automation Engineering, China, pp.782-787, 2012.
[7] Hu yugang, The Research of Q Learning-Based Estimation of
Distribution Algorithm, Proceedings of the 2011 10th International
Symposium on Distributed Computing and Application to
Business, Engineering and Science, China, pp.235-241,2011.
[8] Xueqing SUN,TaoMao, Laura RAY, Dongqing SHI, Jerald
KRALik, Hierarchical state-abstracted and socially augmented
Q-Learning for reducing complexity in agent-based learning,
Journal of Control Theory and Applications, Vol. 9 N. 3, pp.
440-445, 2011.
[9] Sajid M. Sheikh, Shedden Masupe, M-Learning: User
Expectations and Acceptance Study at the University of Botswana,
(2012) International Review on Computers and Software
(IRECOS), 7 (5), pp. 2183-2189.
[10] Stone P. Layered learning in multiagent: A winning approach to
robotics soccer. MIT Press, pp.125-130 ,2000.
[11] Weiss G. Planning and learning together. In 4th International
Conference on Autonomous Agent. Barcelona, Spain: ACM Press,
pp.102-103,2000.
[12] Takahashi Y, Edazawa K, and Asada M. Multi-Module learning
system for behavior acquisition in multi-agent environment. In
IEEE/RSJ International Conference on Intelligent Robots and
Systems, pp. 927-931, 2002.
Authors’ information
School of Computer and Communication, Hunan Institute of
Engineering Xiangtan 411104, China.
Ya Xie was born in Changde, China, in 1982.
She earned the M.S. degrees in Application of
Computer from Central South University in 2006.
At the same time, she is a teacher in department
of computer and communication, Hunan Institute
of Engineering(Xiangtan, China) from 2010. As
the first author more than 10 papers were
published. She current research interests include
intelligent control and machine learning. Zhonghua Huang: Born in
Hunan Province of China in 1979, doctor graduate is achieved from
Central South University in 2006, now worked in Hunan Institute of
Engineering for an associate, main research fields: function control,
neural network etc.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
969
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Optimization of Processor Architecture for Sobel
Real-Time Edge Detection Using FPGA
Fawnizu Azmadi Hussin1, Zahraa E. M. Osman2, Likun Xia1,
Noohul Basheer Zain Ali 1
Abstract – This paper presents an optimized processor architecture for Sobel edge detection
operator on field programmable gate arrays (FPGA). The processor is optimized by the use of
several optimization techniques that aim to increase the processor throughput and reduce the
processor logic utilization. FPGA offers a high level of parallelism which is exploited by the
processor to implement the parallel process of edge detection in order to increase the processor
throughput and enable the processor to meet real-time performance constraints. To achieve realtime performance, the proposed processor consists of several Sobel instances that are able to
produce massive output pixels in parallel. This parallelism enables data reuse within the
processor block which reduces the number of calculations while increasing the processor
throughput. Moreover, the processor gains performance with a factor equal to the number of
instances contained in the processor block. By the application of the optimization techniques, the
proposed Sobel processor is able to meet real-time performance constraints due to its high
throughput even with a considerably low clock frequency. In addition, the logic utilization of the
proposed processor is low compared to other Sobel processors when implemented on ALTERA
Cyclone II DE2-70 board. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Real-Time and Embedded Systems, Processor Architecture, Optimization, Sobel Edge
Detection
I.
The low level operations include image capture, noise
reduction, image segmentation (including edge detection)
and followed by image analysis (including feature
extraction). The large amount of data encourages the use
of parallel architectures to implement low level
operations, e.g., the use of dedicated hardware rather than
general purpose processors.
The system back-end carries out high-level operations
such as image interpretation and image recognition to
recognize image contents. The high-level operations
require less data bandwidth and are characterized as
control-intensive operations which promote the
utilization of instruction-level parallelism (ILP), e.g., the
use of general purpose processors.
From the above we can conclude that, one general
purpose processor is insufficient to perform this variety
of operations on the large amount of data in real-time. A
more feasible system should contain a dedicated parallel
processor at the front-end for the low-level processing of
data, attached with a fast general purpose processor at its
back-end to perform high level processing operations [5].
Since most of the algorithms for the low-level
operations are iterative in nature, meaning the exact
computations are to be repeated for each pixel in the
image frame, increasing the image frame size will
increase the computational burden significantly.
For example, the NTSC video standard requires 30
frames per second, with approximately 0.25 mega pixels
Introduction
IMAGE processing operations are well known for
their large amount of data and calculations; they require
high computational capabilities, memory space, and
processing time.
Although today's general purpose processors are
powerful, real-time image and video processing
applications still need more computational power than
what a general purpose processor can deliver. Such
applications
include
real-time
face/fingerprint
recognition, real-time video surveillance, intelligent
systems, military aerial and satellite surveillance systems.
The architectures of the image processing systems
should grant massive parallelism to keep pace with the
large amount of data that are required to be processed in
a certain time frame [1]-[4]. The use of parallel
processing provides a solution for the problem of
processing the extremely large amount of data in image
processing applications. Image and video processing
systems are then implemented by taking advantage of the
high level of parallelism within their operations.
The computational operations in a complete
image/video processing system may be divided into two
levels of processing operations: low level operations and
high level operations. The operations in the lower level
are more data intensive while the operations in the higher
levels of processing are more control intensive.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
970
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
per frame, resulting in a total of 7.5 mega pixels per
second [6]. PAL video standard requires 25 frames per
second with a larger frame size.
Algorithms like image edge detection using Canny
[40] operator require approximately 130 operations per
pixel. High resolution image and video standard have 4
times more pixels per frame which will increase the
computational load even further [6].
An efficient way to deal with the enormous amount of
data is by using parallel processing. The key to efficient
implementations of image and video processing systems
are always achieved by exploiting data or instruction
parallelism within the image processing algorithms. The
data level parallelism (DLP) is exploited by applying the
same operation to multiple sets of data while the
instruction level parallelism is accomplished by
scheduling the execution of multiple independent
operations in a pipelined manner.
Low-level processing operations entail nested looping
with the innermost loop applying an operator
(neighborhood, point and global operators) to obtain the
output pixels forming the output image. Mixed with the
large amount of data that requires high memory
bandwidth, the nature of the low-level operations
increases the possibility of utilizing data level parallelism
when implementing their application [39]. High-level
operations are control-intensive and are more sequential
in nature than parallel. With irregular instructions
structure and low data and bandwidth requirements, highlevel operations are meant for instruction level
parallelism [2].
The design of image processing system, particularly
the one specialized for a low-level operation on a
dedicated hardware with limited resources, is not an easy
procedure. It requires sacrificing some advantages for
others, for instance memory space for processing speed
and logic utilization for performance. A designer should
achieve a feasible design by performing trade-offs
between design characteristics to deal with the hardware
limitations. This requires an optimization of the image
processing algorithm during the process of transforming
the algorithm from a research development phase to a
hardware working system [2].
When implementing real-time image/video processing
systems on resource constrained platform, the massive
amount of input data makes developing an algorithm that
is computational, memory, and power efficient a very
difficult task. Since the algorithms are usually developed
under "no resource limitations" environment, they have
to be optimized in order to meet the real-time
performance.
Edge detection is a low-level operation that requires
large amount of computations and data which necessitate
an architecture with high-level of parallelism to be able
to satisfy the system's time constraints. Although FPGAs
provide high parallelism and re-programmability, their
logical and memory resources are limited. Since design
parameters such as throughput, power and area are
dependent on each other, several trade-off decisions for
an optimum performance/area trade-off of the hardware
design are required. An optimized system should be able
to deliver a high throughput (parallelism) with the
minimum amount of logic (area) and consumes less
power (low frequency).
This research aims to present an optimization of an
edge detection processor based on Sobel edge detection
operator to be implemented on FPGA. The research
focuses on optimizing the design by the simplification of
the Sobel edge detection algorithm and the utilization of
several optimization techniques. The optimization aims
to minimize the logic and hence the power consumption.
The optimization intends to maximize the processor
throughput and frame rate while using a considerably low
frequency by increasing the processor parallelism.
This rest of this paper is organized as follows: section
2 describes the edge detection using Sobel operator.
Section 3 explains the how image processing operations
are optimized using several optimization techniques.
Section 4 shows how Sobel operator is implemented on
FPGA. The following sections present the proposed
system and the implementation on FPGA followed by a
comparative analysis of the system's performance
compared to other similar approaches.
II.
Sobel Image Edge Detection
Sobel operator is a widely used operator which
depends on obtaining the gradient as a method for image
edge detection [8]-[9].
It improves the edge detection response of Prewitt
operator [10]-[11] by assigning higher weights to the
pixels close to the candidate pixel.
Utilizing double weights will smooth the image noise
generated by the derivatives [12]. The Sobel gradients
equations are shown in Eq. (1) and (2):
Gx 
Gy 
f  x, y 
x
f  x, y 
y
  Z 7  2Z8  Z9    Z1  2Z 2  Z3  (1)
  Z3  2Z6  Z9    Z1  2Z 4  Z7  (2)
G  f  Gx 2  Gy1   Gx  Gy
Sobel operator is based on the differencing operation
[1 0 -1] and averaging operation [1 2 1] in order to
smooth the noise developed by the derivatives. By
convolving these two operations together, the two 3x3
Sobel masks can be obtained.
Fig. 1 shows the horizontal and the vertical masks of
Sobel operator. Like all gradient operators, Sobel
computes the first derivative of a grayscale input image
by convolving the 3×3 masks on the image (Fig. 2).
Since the borders cannot be calculated with the 3×3
mask, they have to be blacked out, partially calculated or
calculated with zero extensions as partial neighborhoods.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
971
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
1
-2
-1
0
0
0
1
2
1
-1
0
1
-2
0
2
 Using alternative simpler algorithm.
-1
0
1
Reduction of Computation
Since the low-level image and video processing
operations are able to perform a large number of
computations on a massive amount of data, every
operation counts. The reduction of the amount of
operation to perform in the algorithm implies reducing
the number of calculations to be performed on each pixel.
This will increase the performance of the system to
match the real-time constraints. Low-level operations
that involve symmetrical computations or successive
computational redundancies are perfect candidates for
this reduction strategy. This strategy is usually
implemented by revealing the mathematical identities
and properties using manual expansion of the calculation
steps.
Edge detection is a perfect example of low-level
window operations with high computational redundancy
and symmetry. The sliding window operations entailed in
the gradient edge detection operations involve
symmetrical coefficients which can be employed to
reduce the computations by rearranging and regrouping
operations in order to reduce the occurrence of timeconsuming calculations.
Fig. 1. Vertical and Horizontal masks of Sobel
Fig. 2. Obtaining image gradient [7]
The total gradient value G is then compared to a
predetermined threshold value T=t. If the gradient value
for the pixel exceeds the threshold value, then the pixel is
counted as a featured pixel (an edge), or not otherwise.
Sobel filter is more feasible to be implemented
dedicated hardware than other filters because it has
several advantages. First, Sobel mask has small number
of entries (3×3) which make it easier to implement.
Second, the Sobel masks contain 8 multiplications by
1 which reduces the number of multipliers (6 times).
Third, the mask contains 4 multiplications by 2 which
can be implemented using shift registers.
This allows Sobel to be implemented on a multiplier
free chip which will make the dedicated processor faster
and smaller. Prewitt Filter is less complex if implemented
on hardware because Prewitt kernel [1 1 1] consists only
of 1's which does not require multiplication circuit. Sobel
is a better choice than Prewitt because the low pass filter
produced by the [1 2 1] kernel will result in a smoother
frequency response compared to that of [1 1 1] kernel
[4].
Reduction of Data
Reduction of the amount of data to be processed is a
major source of performance gain. Since the
computations are performed on each pixel in the image
frame, reducing the number of pixels is essential for
achieving real-time performance and reducing the
memory usage. Since edge detection is a low level
operation that requires the calculations to be repeated for
each pixel in the frame, reduction of data is not an
applicable way of optimization for this kind of
operations.
Alternative Simple Algorithm
The key in designing real-time resource-friendly
systems is to base those systems on computationally
simple algorithms. The algorithms may not be the perfect
computational solution if they are considered from a
mathematical point of view. However, they are
convenient for embedded real-time systems. In the
embedded world, a system's storage requirements are
very important for the choice of a feasible solution which
can indirectly affect the power consumption of the
system. Therefore, an optimum real-time embedded
solution should be computationally simple and memory
and power efficient.
Most of the optimization techniques used to optimize
image processing systems for real-time attempt to find
time-wasting computations and try to avoid them in order
to reduce the overall execution time [13].
These techniques are utilized to optimize the designs
of modern compilers to achieve the best time-space
trade-off.
III. Optimization of Image Processing
System
While variety of hardware and software optimization
techniques are used to realize real-time versions of
image/video processing algorithms, simplifying the
algorithm can result in high performance gain. The
simplification rationalizes the algorithm back to the core
functionality, which reduces the computational
complexity, the memory usage and the power
consumption [2]. By applying simplification strategies to
the algorithm in the research development environment,
the optimized algorithm is able to meet real-time
constraints when it is implemented on limited resource
platform such as FPGA. Simplifying the algorithms of
image/video processing reveals three basic schemes:
 Reducing the number of operations.
 Reducing the amount of processed data.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
972
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
This implies if the optimization attempts to minimize
the execution time, the memory usage will increase
accordingly and vice versa. That is due to the increment
of the architecture parallelism which will accordingly
increase the logic and memory consumption. In order to
apply this concept on image processing applications, the
optimization techniques need to be applied on the image
processing algorithm to reduce the overall execution time
[13]. Here are some of those techniques that are used to
attain real-time performance in image processing
systems.
assign Z <= pi * x + omega * y;
assign Q <= omega * (pi + y)
The value (y*omega) represents a common sub
expression and it might be assigned to an intermediate
variable T as follows:
assign T <= y * omega;
assign Z <= pi * x + T;
assign Q <= pi + T
The value T will be saved in a register for further loop
calculations. The effect of the common sub expression
elimination is good enough to be used as a common
compiler optimization.
It is explained in section 5 how the Sobel processor is
analyzed to eliminate the repeated calculations that
occurs during the convolution. The calculations are
completed once and the sub expression is reused several
times inside the processor block.
III.1. Arithmetic Identities
Significant execution-time reduction can be achieved
by common sense application of arithmetic identities, for
example, the avoidance of multiplication by 1 and
addition by 0 [13]. Moreover, a division operation
executes slower than a multiplication operation in some
computers. So it will be more efficient to replace it by
multiplication with a negative exponent.
This will save a considerable number of cycles.
Section 5 demonstrates how this technique is used to
optimize the Sobel algorithm which involves a lot of
multiplications by 1 and 0.
III.4. Loop Invariant Removal
A common loop optimization technique is performed
by the exclusion of code that does not change inside an
iterative loop. The removal of the loop invariants can
save the time required to recalculate the invariants inside
the loop. The following Verilog® code is an example of
removal of a loop invariant:
III.2. Reduction in Strength
Replacing arithmetic operations with equivalent but
faster operations is referred to as reduction in strength
[13]. Replacing a multiplication and division by the
power of 2 with shifting operations is generally faster [2],
[13]. Substituting multiplication and division operations
with shifting will save not only several clock cycles but
also considerable amount of logic resources required to
implement a parallel multiplier or a divider by using a
simple shift register.
In this paper, the proposed architecture is optimized to
replace all multiplications by 2 required by the Sobel
masks with shift operations.
for (i= 1; i < 100; i = i+1) begin
X[i]= X[i] +2 *omega *t;
end
By eliminating the invariant (2 * omega * t), the code
can be rewritten as:
Z = 2 * omega * t
for ( i= 1; i < 100; i +1) begin
X [i] = X [i] + Z
End
III.3. Common Sub Expression Elimination
In our proposed architecture, the thresholding
operation is excluded out of the processor building block
as a loop invariant operation. This reduces the processor
size by avoiding the duplication of the comparator circuit
in every building block.
Common sub expression elimination is an
optimization technique that searches for instances of
identical expressions and replaces them with a single
variable that carries the computed value.
This necessitates examining whether or not the
replacement is worthy, i.e. by examining whether saving
the value of the variable is more expensive than
recalculating it in terms of memory, logical resources and
performance. Common sub expression elimination can be
divided into two kinds:
 Local Sub expression elimination: A simple
optimization that works within a simple basic block.
 Global Sub expression elimination: Implies analyzing
the entire procedure by the use of the data flow
analysis. For example, the following Verilog® code is
considered:
III.5. Loop Transformations
Loop transformations attempt to improve performance
by rewriting loops to make better use of the memory
system [14]-[17]. Optimization of memory usage relies
on the fact that the same data will be used repeatedly.
The reused data are kept in a local or embedded
memory which has low access latency. The reuse of the
data in the embedded memory improves the performance
by reducing accesses to main memory and hence reduces
the memory access latency. Two types of data reuse are
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
973
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
explained here [18]:
 Spatial reused: When several data items within the
same embedded memory line are reused in the loop,
the loop exhibits spatial reuse.
 Temporal reuse: If the same data is used in more than
one loop iteration then the loop demonstrates
temporal reuse.
The loop transformations are usually applied by
changing the order of the execution of those nested loops.
They aim to uncover the massive amount of fine-grain
parallelism and to endorse the data reuse by the
improvement of both the spatial and temporal data reuse.
The interaction between loop transformation methods
enables a wide variety of designs with different area and
time trade-offs [16]. The loop transformations include the
following types.
III.5.1.
// the loop after loop blocking
for (i=0; i< max; i+= block_size){
for (j=0; j< max; j+= block_size){
for(ii= i; ii<i+block_size; ii++){
for(jj=j;jj<j+block_size;jj++){
a[ii][jj] += a[ii][jj]+ b[jj][ii];
}
}
}
}
It will be shown in section 5 how loop blocking is
applied on the Sobel processor and combined with loop
unrolling to enable more chance for data reuse. This
decreases the number of calculations and hence the
processor size.
III.5.2.
Loop Blocking (Tiling)
Loop Fusion
Loop fusion combines instructions from several
adjacent loops that use the same memory locations into a
single loop [26]. This enhances the data reuse by
preventing the data from being reloaded and hence
reduces total processing time. The next Verilog® codes
show the effect of loop fusion on two loops:
Loop blocking (also called strip mining or loop tiling)
replaces a single loop with two loops [16]-[17], [25].
The inner loop works on a portion of the original loop
iteration space with the same increment as the original
loop. The outer loop navigates across the original
iteration space with an increment equal to the block size.
The inner loop will be fed by an outer loop with
blocks of the original iteration space to execute the
original loop block by block. When applying loop
blocking on a nested loop with a depth n, the new nested
loop depth will be anything between n+1 and 2n. Loop
blocking divides the large loop iteration space into
smaller blocks which allows the accessed data to fit in
the low-capacity embedded or local memory.
Moreover, loop blocking is used to minimize the
external memory accesses by enhancing the reuse of the
data in the embedded memory. It permits the processor to
perform as many operations as possible on the array
elements in the embedded memory and reduces the
references to external memory [18], [26].
For instance, consider the following VHDL® code:
// the original code
for (i=1; i< n; i++)
begin
b[i] = a[i]+2*c;
end
for (i=1; i< n; i++)
begin
d[i]= b[i]+2*c;
end
//after loop fusion
for (i=1; i< n; i++)
begin
b[i] = a[i]+2*c;
d[i] = b[i]+2*c;
end
//loop before Blocking
for (i=0; i< max; i++) {
for (j=0; j< max; j++){
a[i ] [ j] += a [i , j]+ b[j , i];
}
}
Our proposed architecture combines the calculations
of the vertical and horizontal gradients in one Sobel
instance where both are calculated in parallel to reduce
the processing time and enhance the data reuse.
The code consists of two nested loop i and j. To apply
loop blocking, each of the two loops is replaced with two
loops, an outer loop and an inner loop.
The outer loops i and j have the same size as the
original i and j loops (before tiling), respectively.
Although both the new loops i and j have a step size
equal to the required block size. The inner loops ii and jj
have sizes equal to the block size and a step size equal to
the original i and j loops before the loop blocking,
respectively:
III.6. Scalar Replacement
Scalar replacement or register promotion is an
optimization technique that aims to reduce accesses to
external memory by replacing repeated array references
with scalar temporaries [17]. The replacement is
achieved by storing the repeatedly referred array data in
registers.
In FPGA, scalar replacement can be implemented
using internal registers or embedded RAM blocks.
In nested loop computations (e.g., the image
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
974
Fawnizu Azmadi Hussin
Hussin,, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
processing operations) multiple references are made to
the same data in the same or consecutive loop iterations.
Scalar replacement for reconfigurable architectures
differs from cache based architectures in the data
replacement and localization strategies. The data
replacement aand
nd localization are made explicitly, i.e.,
every datum has to be stored in a specific location in
order to be reused by the designer, or discarded when it is
no longer in use [16],
[16 , [27]
27].. This paper presents a
specially designed line buffer that is built using
using the
embedded RAM blocks inside the FPGA core as
explained in section 6. The line buffer is used to store the
data required by the Sobel processor for the calculations
and is meant to reduce the external memory access
latency and bring the data ready at execution time.
described in section 3.
The optimization is meant to increase the processor
throughput, reduce the logic utilization and enable the
processor to attain real
real-time
time performance at the same time.
The optimization can reduce the memory read
redundancy of the input data to a minimum and avoid the
recalculations of the same data by using a processor that
calculates several window operations in parallel. This way,
the data are calculated once and reused several times inside
the processor block.
The Sobel processor is built out of several Sobel
instances, each of wh
which
ich is able to produce one output
pixel as shown in Fig. 3. The instance is built out of
simple mathematical operators: subtractor (SUB), adders
(ADD), shift operators (<<) and modulus operators
(ABS). Separating the shift operator (<<) from the
subtractor (SUB) enables reusing the subtractor result in
future calculations.
IV. Implementation ooff Sobel Operator
on
n FPGA
Generally, implementing a Sobel edge detection
system on FPGA is the same as a 22-Dimentional
Dimentional (2
(2-D)
D)
image filter where line buffers are usually utilized as a
delay line to feed the input pixels to the filter [28].
[28]. Each
line buffer is as wide as a whole frame line and feeds the
input pixels simultaneously with the other line buffers to
the filter nodes. The line buffers allow each input pixel to
be loaded once to the FPGA from the external memory.
This reduces the memory read latency and enables the
filter to achieve real-time
real time performance constraints [28].
[28]
Each pixel is multiplied by the filter coefficient (the
Sobel masks in our case) and the multiplication results
are added together in an adder tree. The output of the
adder tree is the output pixel of the filter [6
[6],, [28]
28].. Since
this design depends mainly on multiplications, the
number of multipliers determines the design complexity.
For filters with nonnon-symmetric
symmetric coefficients, the size of
the mask m*m generates a design with (m2) complexity.
For 22-D
D filters with symmetric masks, the complexity
can be significantly optimized to ([(m+1) + (m+3)]/8)
and the reduction can be increased up to (m+1) for
separable filters, i.e., 11-D
D filter in tthe
he horizontal direction
and another 11-D
D filter in the vertical direction (such as
Sobel filter). Separable designs enable parallel
processing for the horizontal and vertical oriented
gradients on FPGA [6].
[6]
A dedicated processor for Sobel edge detection
operator is designed to be implemented on FPGA
operator
platform using several design techniques. It can be
implemented using a parallel and pipelined architecture
as in [16],
30],, using distributed arithmetic
[16 , [[29]]-[30]
algorithm [17
[17],, [31]
31],, and it can also be implemented
implemente
using systolic arrays as in [7],, [32
33].
32]-[[33]
V.
Fig. 3. Basic Sobel Instance
The Sobel instance utilizes the loop fusion
optimization technique by calculating the vertical and the
horizontal gradient in parallel in the same instan
instance.
ce. The
instance is optimized using arithmetic identities
technique to avoid multiplication by 1 and the addition
by 0 during the calculation of the gradient. Avoiding
unnecessary calculations will reduce the number of
calculations and hence reduce the pro
processing
cessing time and
the logic utilization. While calculating the gradient, the
instances substitute the multiplication by 2 in the Sobel
masks with a shift operation, i.e., reduction of strength.
streng th.
The shift operation is faster in execution and can be
implement
implemented
ed with fewer logic elements than a multiplier
would require. That makes the proposed processor a
multiplier free processor. The comparison of the Sobel
gradients with the threshold value is processed outside
the Sobel instance as a loop invariant operatio
operation.
n. The
thresholding will increase the logic utilization if kept as
part of the Sobel instance calculations because it requires
placing a comparator in each Sobel instance.
Linear algorithm such as edge detection can be
altered to support parallel architect
architecture
ure format by the use
of partial loop unrolling.
Optimization ooff the
he Sobel Edge
Detection Processor
The architecture proposed in this paper is optimized
using a combination of the optimization techniques
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
975
Fawnizu Azmadi Hussin
Hussin,, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
This implies, duplicating the Sobel instance to form
one combinational block that can calculate several
outputs in parallel. Fig. 4 illustrates how the optimized
Sobel processor block is partially unrolled bby
y a factor of
4 to form a 11×4
×4 Sobel processor block.
two third of the subtractions performed while obtaining
horizontal gradient Gy are repeated in the cal
calculations
culations of
the next window operations within the same image line
due to the high data dependency in the Sobel edge
detection operator. Since the data of Gy in each window
calculations are reused in the next two window
operations in the same line, the 1x4 processor-row
processor row fully
reuse the data of the first two instances and partially
reuse the data of the thir
third
d one. Therefore, the number of
four Sobel instances is chosen as the default number of
the Sobel instances in the processor row. Increasing the
number ooff instances in the processor row allows more
opportunities for data reuse and increases the processor
throughput but increases the logic utilization
consequently.
Using a parallel architecture and partial loop
unrolling, the previous calculations can be reused
reused within
one image line. The vertical black lines in Fig 4 show
how the calculations of Gy are reused in the following
window operations within the same row. This way, 1x4
Sobel processor block eliminates recalculations within
the same image line; i.e. implementing common sub
expression elimination technique
technique.. The elimination of the
common sub expressions reduces the number of
subtractors in the design which reduces the total logical
utilization. The concept of loop blocking can also be
applied on the proposed
proposed Sobel processor architecture if
we consider the data reuse of Gx calculations since 2/3 of
the subtractions within Gx calculations are repeated in the
calculations of other Gx calculation in the next row due to
the data dependencies within the calcul
calculations
ations of Gx.
Combined with partial loop unrolling, loop blocking can
be exploited to enable the data reuse within the
calculations of multiple image lines at the same time. By
exploiting the data reuse within two image lines, the
processor instances are cconnected
onnected as shown in Fig. 5.
Every four vertical consecutive instances are
considered as a Sobel Processor row. The rows are
connected to each other to form a Sobel processor block
and exploit the data reuse.
Fig. 5, details the connection of the first an
and
d second
rows of the Sobel instances. The thick black vertical
connection lines indicate data reuse within the same row
(G
( y calculation). The thicker black horizontal connection
lines indicate computation data reuse from previous rows
(G
2×4 optimized Sobel processor
( x calculation). In a 2×4
block shown in Fig. 5 it can be noticed that, the number
of subtractors in the second processor row is less (10
subtractors) than that of the first row (18 subtractors)
which reduces the logic resources used.
The optimized Sobel
Sobel processor block may contain
more than two rows. The following rows of instances are
all similar to the second row and all are connected in the
same way. The number of Sobel rows can be increased as
needed and is limited by the available FPGA resources
resources.
Fig. 6 shows a 4x4 optimized Sobel processor which
is capable of producing sixteen 88--bit
bit output pixels in one
clock cycle. Optimizing the design with loop unrolling
and loop blocking requires the input data to be available
Fig. 4. One row of the optimized Sobel processor
The four Sobel instances are connected in a way that
exploits FPGA parallelism and data reuse within one line
of the input image. The thick vertical lines indicate the
data reuse within the same image line. Depending on the
number of instances in the Sobel processor block, the
processor will gain performance by a factor equal tto
o the
number of instances used. Notice that the number of the
Sobel instance
instancess in the optimized Sobel processor row can
be increased as needed and is limited by the amount of
logic available on the FPGAs. It should be noticed that
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
976
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
at the execution time on the FPGA board; this is solved
by the use of the scalar replacement technique that stores
the required image lines as sets of shift registers
connected as tap-delay-lines, i.e., line buffers.
designed and integrated with the Sobel processor to feed
the data back to the external memory in a raster order
(row by row) [34]. Therefore, the multiple-row optimized
Sobel processor will calculate the gradients for a certain
number of pixels from several image lines depending on
the number of rows in the processor block and the
number of instances in each row.
By reusing the calculation results of previous window
operations, our proposed architecture reduces the number
of subtraction operations of a similar architecture without
the data reuse by 50%. The data reuse method reduces
the processing time because each pixel needs to be read
from memory at most twice instead of up to six times.
VI.
The Line Buffer Module
In this paper, the one-row 1×4 Sobel processor that
exploits the data reuse within one image line is
implemented on FPGA as a complete edge detection
system. A line buffer is designed to feed the required
number of input pixels to the processor in every clock
cycle. This enables the process to achieve real-time
performance.
The line buffer module is utilized to feed the grayscale
8-bit pixels from the input image stored in an external
SRAM to the Sobel processor. As illustrated by Fig. 7,
the line buffer has the capacity to hold 3 lines of pixels.
Each line consists of 160 memory locations; each
location is 32-bit in length to store a total of 640
grayscale pixels (4 pixels in each location). The three
lines accommodate a total of 1920 pixels in 480
locations. The line buffer is fed by a FIFO that shifts a
32-bit long word (4 pixels) from the SRAM to the line
buffer in every clock cycle.
The line buffer has one write pointer (wp) and three
read pointers (rp0, rp1 and rp2) to read from each of the
three image lines stored in the line buffer. All the
pointers are set to point to the 0 location whenever the
asynchronous clear (aclr) signal is asserted to reset the
buffer. When the write pointer reaches the location
number 479, it will point back to location 0 to fill up the
first location again.
The read pointers rp0, rp1, and rp2 will point to the
start of each image line before the reading is started, i.e.
rp0 = 0, rp1 = 160 and rp2 = 320.
The read pointers are incremented to point to the next
memory location in every clock cycle. To read the image
pixels in the line buffer, the memory location which is
pointed by the read pointer will be stored in a 32-bit
register (pixout).
Since six pixels are needed from each image line to
calculate four output pixels, two (pixout) registers are
needed for each image line. At every rising edge of the
clock, the pixels in the first register, e.g. (pixout0) will be
replaced by the previous values of the second register
(pixout1). The registers are wired to the line buffer
output taps (taps00 to taps25). The taps are wired to the
Sobel processor to feed the pixels for calculating the
edges.
Fig. 5. Data reuse within two consecutive image lines
(2 Sobel processor rows)
Scalar replacement is implemented using the
embedded M4K RAM blocks that are available on the
FPGA core. The line buffer contents can be accessed
concurrently to feed the Sobel processor block with input
pixels enabling the calculation of multiple outputs in
parallel every clock cycle. It should be noted that,
increasing the size of the line buffers enables the exploit
of more data reuse but will increase the logic utilization
significantly. Additionally, a large line buffer has the
disadvantage of a long overhead of filling the tabs before
execution. The size of the processor is only limited by
the logic resources and it is possible to use a single row
processor or multiple processor rows as shown in Fig. 4
and Fig. 5, respectively. Implementing a single-row
optimized Sobel processor with a certain size requires a
special line buffer to be designed according to the
number of Sobel instances inside the optimized Sobel
block. The line buffer handles the data from an external
memory and feeds the required amount of pixels to the
processor determined by the processor size. In case of
using an optimized Sobel processor that contains
multiple rows of instances, another line buffer should be
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
977
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
Subtractor
Shift register
Modulus operator
Adder
Calculation reused from previous rows
Calculation reused within the same row
Fig. 6. 4×4 optimized Sobel processor
VII.
Implementation of the Optimization
Sobel Processor on FPGA
In order to implement the single row optimized Sobel
processor on FPGA to run in real-time, the processor has
to be integrated with a digital camera, an external
memory, and a PC monitor to work as a complete edge
detection system on the FPGAs board. As illustrated in
Fig. 8, the digital camera captures a video stream which
represents the system input.
The input frames are stored in the FPGA board SRAM
memory. The line buffer of the optimized Sobel
processor is connected to the SRAM in order to pass the
input pixels to the optimized Sobel processor. The Sobel
processor writes the output pixels back to the SRAM.
The VGA controller reads the processor output pixels
from the SRAM to be shown on the screen.
The SRAM connects to the Sobel processor by the use
of a multiport memory controller module. The multiport
memory controller module connects the SRAM to the
camera by a camera controller module. The camera
controller will transform the raw image pixels into RGB
and change the RGB to grayscale pixels and write them
to the SRAM. This way, 2/3 of the SRAM space is
Fig. 7. Line buffer for a 1x4 optimized Sobel processor.
Fig. 8. The proposed edge detection system on
Cyclone II FPGA board
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
978
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
saved. Four FIFO modules designed by [35] were used to
synchronize the SRAM with the other devices.
The FIFO1 is used to connect the camera controller
module with the SRAM multiport memory controller.
The FIFO2 synchronizes the SRAM controller with
the line buffer of the Sobel processor. The FIFO3 enables
the Sobel processor to write the output pixels back to the
SRAM by passing them to the multiport memory
controller module. The FIFO4 connects the multiport
memory controller module to the video graphic adapter
(VGA) controller module that connects the monitor to the
multiport SRAM controller. All the system modules are
designed using the Verilog® hardware description
language (HDL). The functionality of the system was
tested using Modelsim-Altera 6.1g software. Altera
Quartus® II web edition version 9.1 software was
utilized to run the timing simulation of the design and to
download the system design files on Altera Cyclone® II
DE2-70 EP2C70F896C6 FPGA.
The Altera DE2-70 board has a 2MB SRAM which is
used as the external memory and a frame buffer of the
edge detection system. The TRDB_D5M 5 Mega pixel
digital camera from Terasic was used for video stream
capture which can be simply installed on any Altera
DE2-70 board. The Quartus II Classic Timing analyzer is
used to analyze the performance of module that combines
the Optimized Sobel processor with the line buffer.
The fast timing model shows a maximum frequency of
the line buffer clock of 91.86MHz with a 10.886ns clock
period which is the maximum frequency of the processor.
The processor has a maximum throughput of 367.77
MP/s and a maximum frame rate of 1196.02fps when
operating at 91.86 MHz. The system generates an edgedetected real-time video stream successfully. A snapshot
of the output video stream on the VGA monitor is
illustrated in Fig. 9 and Fig. 10, respectively. Fig. 9
shows a grayscaled snapshot of Susan Lordi's sculpture
with black background which represents the input to the
processor. Fig. 10 shows the image after edge detection
is applied.
The system does not employ any form of noise
reduction and the result snapshots are somewhat noisy.
Therefore, the comparison between the gradient and
the threshold image is inverted to produce 0 (black) when
the gradient value is greater than the threshold value (an
edge) and 1 (white) otherwise (not an edge).
Fig. 10. Sobel edge detection snapshot from a monitor screen
TABLE I
LOGIC UTILIZATION COMPARISON
Sobel Processor
FPGA type
The optimized
Sobel processor
Processor
proposed by
[29]
Processor 1
proposed by
[16]
Processor 2
proposed by
[16]
Processor
proposed by
[36]
Cyclone II
DE2-70
Xilinx
Spartan 3
1×4
Number of 4LUTs
(equivalent)
548
1×1
202
Xilinx
Virtex 4
1×1
570
Xilinx
Virtex 4
1×1
701
Xilinx
XC3042
1×1
140
Architecture
configurations
The inversion of the thresholding result enables easier
observation of the black edges in a white background in
the presence of noise. It should be noticed that the
implementation of the system is based on a 1x4 Sobel
processor that employs the data reuse within one image
line. In order to implement a multiple-row Sobel
processor that employ the data reuse in multiple image
lines, an output buffer is required to handle output data
produced by the processor from multiple image lines and
feed it to FIFO3 in a raster order.The single row 1×4
Sobel processor was chose of r implementation because it
is able to satisfy real-time performance constraints with
less logic resources. The multi-row Sobel processor is
useful for applications that require extremely high
performance in the low level operations with no resource
limitation.
VIII. Comparative Analysis
of Sobel Processors
This section presents a comparative analysis between
the proposed image edge detection system based on the
optimized Sobel edge detection processor and other
Sobel edge detection systems performances.
The comparison is performed between the 1×4
optimized Sobel processor and four Sobel processors
proposed by [16], [29], [36]. The comparison is based on
two characteristics: clock frequency and processor
throughput. These two characteristics determine whether
Fig. 9. Grayscale snapshot of the input video from a monitor screen
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
979
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
or not the system can satisfy real-time systems
constraints. On the one hand, a system with a high clock
frequency is desirable for its high processing speed
which increases the system throughput accordingly. On
the other hand, a high clock frequency increases the
power consumption of the system which makes it less
efficient for mobile applications [23], [37]-[38].
The comparison shows that the optimized Sobel
processor is able to achieve a significantly higher
throughput than other methods with a considerably low
frequency. Since the optimized Sobel processor is
implemented using the Altera Cyclone II DE2-70, while
the other processors were implemented on Xilinx FPGA
(Spartan 3 for [29], XC3042 for [36] and Virtex 4 for
[16]), the architecture differences between the two
vendors must be considered before the evaluation.
TABLE II
PROCESSORS PERFORMANCE COMPARISON
Clock
Throughput
Processor
frequency
(MP/s)
(MHz)
The optimized
91.86
367.44
Sobel
processor
Processor
134.756
134.432
proposed by
[29]
Processor 1
253
60.4
proposed by
[16]
Processor 2
264
72.52
proposed by
[16]
Processor
40
4.44
proposed by
[36]
It is seen from Table I that the optimized Sobel
processor requires 548 4-LUTs since the LE of DE2-70
board consists of one 4-LUT. The processor proposed by
[29] occupies 202 4-LUTs of the Xilinx Spartan 3. The
architecture has less LUTs than the optimized Sobel
processor because it consists of a single Sobel module
that calculates one output pixel in every clock cycle.
Processor 1 proposed by [16] uses the data reuse by
exploiting scalar replacement technique within the
horizontal calculations by saving the reused data in
dedicated logic registers to be used in the next clock
cycle. Therefore the logic utilization is close to that of
our proposed architecture.
Processor 2 proposed by [16] utilizes the data reuse in
the horizontal and vertical direction and saves the reused
data in the block RAM of the Xilinx Virtex 4 FPGA. The
processor occupies about 28% more LUTs than the
optimized Sobel processor.
The Sobel processor presented by [36] is implemented
on Xilinx XC3042 device with 70 CLBs which are
equivalent to 140 LUTs. Considering the architecture
configurations of the processors in the table (column 3),
the optimized Sobel processor contains 4 Sobel instances
to calculate 4 output pixels at the same time while all the
other processor contain only one Sobel instance. This
makes the optimized processor use the least logic
utilization in comparison with the other processor in
Table I.
The comparison between the Sobel processors in
terms of frequency and throughput is summarized in
Table II. The maximum performance of the optimized
Sobel processor is compared with the other Sobel
processor mentioned in the literature. The throughputs
and frame rates of each processor are recalculated for a
640x480 frame size to match the frame size of the
optimized Sobel processor.
For instance, the Sobel processor proposed by [29]
operates at 134.756 MHz and is able to calculate the
edges for an image size of 512×512 (262,144) pixels in
1.95 ms. This results in a throughput of
(262,144*1000/1.95=134.432x106) 134.432 MP/s. For a
frame size of 640×480 (307200) pixels, the processor can
achieve a frame rate up to (134.432×106/307200 = 437.6)
437.6 fps. Similarly, the Sobel processor 1 proposed by
[16] is capable of processing 128×128 (16,384) pixels in
0.271 ms with a frequency of 253 MHz which results in a
throughput of (16,384*1000/0.271 = 60.4x106) 60.4
MP/s. The frame rate for a 640×480 frame size can be
calculated as 60.4×106 /307200= 196.8 fps. The same
calculations are performed to calculate the frame rate for
processor 2 proposed by [16] that can process 16,384
pixels in 0.226 ms (72.5 MP/s throughput) running with a
264 MHz clock.
Finally, the Sobel proposed by [36] reports a
throughput of 4.4 MP/s, which can produce (4.44x106
/30720) 14.45 fps for a 640×480 frame size.
As reported in Table II, the optimized Sobel processor
has a maximum clock frequency of 91.86 MHz which is
considerably low compared to the other Sobel processors
Frame rate
(fps)
1196.02
438.6
196.85
336.09
14.45
For instance, the Altera Cyclone II DE2-70 FPGA
consists of logic array blocks (LABs) that contain 16 LEs
in each. Each logic element contains a single 4-input look
up table (4-LUT) and other logic for multiplexing,
addition and some registers while the Xilinx FPGAs
from Virtex 4 family and earlier families (includes
Spartan 3 family) consist of slices, each of which
consists of two 4-LUTs and other logic for multiplexing
and adding and registers. The Xilinx XC3042 FPGA
contains Configurable Logic Blocks CLBs.
The CLB architecture is based on 32x1 LUT that can
be separated into two 4-LUTs to implement two logic
functions with 4 inputs each. Therefore, the comparison
between the two vendors should be based on the number
of LUTs occupied by the architectures in each FPGA
platform because the architecture of the LUT is nearly
the same.
The comparison between the five architectures is
shown by Table I.
It should be considered that the logic utilization
comparison between the different platforms is a best
estimate because the logic utilization does not take into
account the number of flip flops, multiplexers, and
routing logic which are essential parts of the LE, slice,
and (CLBs).
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
980
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
in the table except for the processor in [36]. The low
frequency can help decrease the power consumption of
the processor and enable the use of the processor in
mobile and embedded systems [23], [37]-[40].
The optimized Sobel processor has the highest
throughput and the highest frame rate with 367.44 MP/s
and 1196.02 fps, respectively.
The high throughput is caused by the partial loop
unrolling of the design to produce 4 Sobel edge detection
pixels in one clock cycle.
This increases the frame rate concurrently to 1196.02
fps. The high frame rate and high throughput exceeds the
real-time systems constrains and the low frequency
makes the optimized Sobel processor a better choice for
embedded systems.
References
[1]
[2]
[3]
[4]
[5]
[6]
IX.
Conclusion
This paper proposes a dedicated Sobel processor
architecture on FPGA. The processor is optimized by
applying several optimization techniques to reduce the
logic utilization and increase the throughput.
The proposed Sobel processor utilizes data reuse by
taking advantage of the parallelism in the edge detection
algorithm and the parallelism offered by the FPGA as the
implementation platform.
A single row of the Sobel processor utilizes the data
reuse within one image line in the calculations of the
horizontal gradients. The processor that consists of
multiple rows utilizes the data reuse within the same
image line and within multiple image lines to enable data
reuse in both the calculations of the horizontal and the
vertical gradients, respectively.
The effect of the optimization carried out on the
processor is significant in terms of logic utilization and
performance.
In terms of logic utilization, the optimization reduces
the processor size, allowing more instances to be placed
inside the processor block. Consequently, the processor
gains performance with a factor equals to the number of
the Sobel instances contained in the processor block. The
comparative analysis shows that the Sobel processor is
able to achieve a very high throughput even when
operating with a low clock frequency compared to other
Sobel processors discussed in the literature.
With the help of the specially designed line buffer, the
proposed processor is able to produce several output
pixels every clock cycle and hence satisfy real-time
systems constraints.
The low logic utilization of the Sobel processor along
with its significantly high throughput and low operating
frequency make it a good choice for mobile and
embedded systems.
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
Acknowledgements
This work was supported by Universiti Teknologi
PETRONAS Graduate Assistantship (GA) scheme.
[20]
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
B. A. Draper, et al., "Accelerated image processing on FPGAs,"
Image Processing, IEEE Transactions on, vol. 12, pp. 1543-1551,
2003.
N. Kehtarnavaz and M. Gamadia, Real-time image and video
processing: from research to reality: Morgan & Claypool
Publishers, 2006.
Z. E. M. Osman, et al., "Hardware implementation of an
optimized processor architecture for SOBEL image edge detection
operator," in Intelligent and Advanced Systems (ICIAS), 2010
International Conference on, 2010, pp. 1-4.
Z. E. M. Osman, et al., "Optimization of Processor Architecture
for Image Edge Detection Filter," in Computer Modelling and
Simulation (UKSim), 2010 12th International Conference on,
2010, pp. 648-652.
J. G. Ackenhusen, Real-time signal processing: design and
implementation of signal processing systems: Prentice Hall PTR,
1999.
H. S. Neoh and A. Hazanchuk, "Adaptive Edge Detection for
Real-Time Video Processing using FPGAs," presented at the The
International Conference for Embedded Signal Processing
Applications, GSPx 05, Santa Clara, CA, 2005.
C. Torres-Huitzil and M. Arias-Estrada, "FPGA-based
configurable systolic architecture for window-based image
processing," EURASIP J. Appl. Signal Process., vol. 2005, pp.
1024-1034, 2005.
N. Kanopoulos, et al., "Design of an image edge detection filter
using the Sobel operator," IEEE Journal of Solid-State Circuits,
vol. 23, pp. 358-367, 1988.
I. Sobel and G. Feldman, "A 3x3 Isotropic Gradient Operator for
Image Processing," presented at a talk at the Stanford Artificial
Project, unpublished but often cited, orig. in Pattern
Classification and Scene Analysis, Duda,R. and Hart,P., John
Wiley and Sons,'73, pp271-2, 1968.
J. M. S. Prewitt, "Object enhancement and extraction," Picture
Processing & Psychopictorics, Academic Press, New York, pp. 75149, 1970.
S. C. Wu and J. M. S. Prewitt, "An Application of Pattern
Recognition to Epithelial Tissues," in Proceedings of the Annual
Symposium on Computer Application in Medical Care, 1978, pp.
15-25.
B. Chanda and D. Majumder, Digital image processing and
analysis: Prentice-Hall of India, 2004.
E. Dougherty and P. Laplante, Introduction to real-time imaging:
SPIE Optical Engineering Press, 1995.
N. Baradaran, et al., "Compiler reuse analysis for the mapping of
data in FPGAs with RAM blocks," in Proceedings of IEEE
International Conference on Field-Programmable Technology,
2004, pp. 145-152.
J. M. P. Cardoso and P. C. Diniz, "Modeling Loop Unrolling:
Approaches and Open Issues," in Computer Systems:
Architectures, Modeling, and Simulation. vol. 3133, A. Pimentel
and S. Vassiliadis, Eds., ed: Springer Berlin / Heidelberg, 2004,
pp. 224-233.
J. Park and P. C. Diniz, "Partial data reuse for windowing
computations:
performance
modeling
for
FPGA
implementations," presented at the Proceedings of the 3rd
International Conference on Reconfigurable Computing:
Architectures, Tols and Applications, Mangaratiba, Brazil, 2007.
B. So and M. Hall, "Increasing the Applicability of Scalar
Replacement," in Compiler Construction. vol. 2985, E.
Duesterwald, Ed., ed: Springer Berlin / Heidelberg, 2004, pp.
2732-2732.
Y. N. Srikant and P. Shankar, The Compiler Design Handbook:
Optimization and Machine Code Generation: CRC PRESS, 2007.
B. Buyukkurt, et al., "Impact of Loop Unrolling on Area,
Throughput and Clock Frequency in ROCCC: C to VHDL
Compiler for FPGAs," in Reconfigurable Computing:
Architectures and Applications. vol. 3985, K. Bertels, et al., Eds.,
ed: Springer Berlin / Heidelberg, 2006, pp. 401-412.
O. S. Dragomir, et al., "Loop unrolling and shifting for
reconfigurable architectures," in International Conference on
Field Programmable Logic and Applications, FPL, 2008, pp. 167-
International Review on Computers and Software, Vol. 8, N. 4
981
Fawnizu Azmadi Hussin, Zahraa E. M. Osman, Likun Xia, Noohul Basheer Zain Ali
172.
[21] O. S. Dragomir, et al., "Optimal Loop Unrolling and Shifting for
Reconfigurable Architectures," ACM Trans. Reconfigurable
Technol. Syst., vol. 2, pp. 1-24, 2009.
[22] J. Mellor-Crummey and J. Garvin, "Optimizing Sparse Matrix–
Vector Product Computations Using Unroll and Jam,"
International Journal of High Performance Computing
Applications, vol. 18, pp. 225-236, 2004.
[23] S. Kilts, Advanced FPGA Design: Architecture, Implementation,
and Optimization: John Wiley & Sons, 2007.
[24] F. Hannig, et al., "Parallelization Approaches for Hardware
Accelerators – Loop Unrolling Versus Loop Partitioning," in
Architecture of Computing Systems – ARCS 2009. vol. 5455, M.
Berekovic, et al., Eds., ed: Springer Berlin / Heidelberg, 2009, pp.
16-27.
[25] K. Jung Sub, et al., "An Automated Framework for Accelerating
Numerical Algorithms on Reconfigurable Platforms Using
Algorithmic/Architectural Optimization," Computers, IEEE
Transactions on, vol. 58, pp. 1654-1667, 2009.
[26] U. Meyer, et al., Algorithms for memory hierarchies: advanced
lectures: Springer, 2003.
[27] N. Baradaran, et al., "Extending the Applicability of Scalar
Replacement to Multiple Induction Variables," in Languages and
Compilers for High Performance Computing. vol. 3602, R.
Eigenmann, et al., Eds., ed: Springer Berlin / Heidelberg, 2005,
pp. 455-469.
[28] K. Benkrid, et al., "High level programming for real time FPGA
based video processing," in Proceedings of IEEE International
Conference on Acoustics, Speech, and Signal Processing. ICASSP
'00, 2000, pp. 3227-3230.
[29] T. A. Abbasi and M. U. Abbasi, "A proposed FPGA based
architecture for Sobel edge detection operator," Journal of active
and passive electronic devices, vol. 2, pp. 271–277, 2007.
[30] S. Hezel, et al., "FPGA-based template matching using distance
transforms," in Proceedings of the10th Annual IEEE Symposium
on Field-Programmable Custom Computing Machines, 2002, pp.
89-97.
[31] S. Chivapreecha and K. Dejhan, "Hadware implementation of
Sobel-Edge detection Distributed Arithmatic Digital Filter "
presented at the 25th ACRS, Asian Conference on Remote
Sensing, Chiang Mai, Thailand, 2004.
[32] R. W. Means and H. J. Sklar, "Systolic array image processing
system," United States Patent, 1989.
[33] N. K. Ratha, et al., "Convolution on Splash 2," in FPGAs for
Custom Computing Machines, 1995. Proceedings. IEEE
Symposium on, 1995, pp. 204-213.
[34] P. M. Athanas and A. L. Abbott, "Real-time image processing on a
custom computing platform," Computer, vol. 28, pp. 16-25, 1995.
[35] C. E. Cummings, "Simulation and Synthesis Techniques for
Asynchronous FIFO Design," presented at the SNUG 2002,
Synopsys Users Group Conference, San Jose, CA, 2002.
[36] L. Xue, et al., "FPGA based Sobel algorithm as vehicle edge
detector in VCAS," in Proceedings of the 2003 International
Conference on Neural Networks and Signal Processing, 2003, pp.
1139-1142 Vol.2.
[37] H. Saar. (2006, Minimizing FPGA power consumption. Available:
http://www.eetimes.com/design/automotivedesign/4004640/Minimizing-FPGA-power-consumption
[38] R. Woods and J. McAllister, FPGA-based implementation of
signal processing systems: John Wiley & Sons, 2008.
[39] Mostafa Ayoubi Mobarhan, Asadollah Shahbahrami, Mojtaba
Ayoubi Mobarhan, Atefeh Ahmadnya Khajekini, Shiva Derogar,
"License Plate Identification Algorithms Using Color Analysis
and Edge Features, (2012) International Review on Computers
and Software (IRECOS), 7 (3), pp. 1012-1019.
[40] Mohammad Javad Ebrahim, Hossein Pourghassem, A Novel
Automatic Synthetic Segmentation Algorithm Based on Mean
Shift Clustering and Canny Edge Detector for Aerial and Satellite
Images, (2012) International Review on Computers and Software
(IRECOS), 7 (3), pp. 1122-1129.
Authors’ information
1
Department of Electrical and Electrical Engineering, Universiti
Teknologi PETRONAS, 31750 Tronoh, Perak, Malaysia.
E-mails:
fawnizu@petronas.com.my
likun_xia@petronas.com.my.
noohul.z@petronas.com.my
2
Department of Engineering, Simmid Corporation, 47301 Petaling Jaya,
Selangor, Malaysia.
E-mail:
zahraa@symmid.com
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
982
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Aspect-Oriented Modeling Approaches and Aspect Code Generation
Abid Mehmood, Dayang N. A. Jawawi
Abstract – The integration of aspect oriented modeling approaches with model-driven
engineering process achieved through their direct transformation into aspect-oriented code can
enhance the software development from many perspectives. However, since no aspect modeling
technique has been adopted as the standard so far, it becomes imperative to compare all existing
techniques on the basis of some appropriate criteria. This study aims to assess existing UMLbased aspect-oriented modeling techniques from the perspective of their suitability with regards to
integration into model-driven engineering process through aspect-oriented code generation. For
this purpose, an evaluation framework has been defined and employed to evaluate 14 wellpublished, UML-based aspect-oriented modeling approaches. Results of this comparison show
that a majority of these approaches works well to handle the basic modeling tasks. However, in the
context of their integration into model-driven engineering process, these approaches need to be
improved from various perspectives. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights
reserved.
Keywords: Aspect-Oriented Modeling, Model-Driven Engineering, Code Generation
I.
Therefore, in practice, aspect-oriented techniques are
applied during analysis using Early Aspects [1], during
design using Aspect-Oriented Modeling (AOM) [2], and
using
Aspect-Oriented
Programming
[3]
for
implementation. A few of the benefits of applying aspect
orientation to software development may be found linked
with maintainability, extensibility and reusability of the
system, see for example [4]-[6].
The current study is specifically related to aspectoriented design approaches (i.e., AOM approaches) and
their subsequent integration with Model-Driven
Engineering (MDE) [7]-[9] process. Essentially, MDE
process makes the models a primary development artifact
and uses them as basis for obtaining an executable
system. It emphasizes on subjecting models to a
refinement process, through automatic transformations,
until a running system is obtained. An integration of
AOM approaches with MDE process (i.e., obtaining a
final executable system from aspect-oriented models) can
be realized through two different ways [10], [11].
First approach works purely at the modeling level and
uses a model weaver to integrate the aspect and base
models in such a way that a non-aspect-oriented (i.e.,
object-oriented) model is obtained. Object-oriented code
generation approaches are subsequently used to generate
code into one of the object-oriented programming
languages. Examples of the use of this integration
approach are the Motorola WEAVR [12], Dynamic
Weaver [13].
On the other hand, second approach directly
transforms the aspect-oriented model into code of an
Aspect-Oriented Programming (AOP) language and
relies on weaver provided by the target language to deal
Introduction
Aspect-oriented software development (AOSD)
approaches [1]-[3] are applied to software systems
development for improved handling of crosscutting
concerns, which represent the functionality that cuts
across the primary modularization of a system.
Crosscutting concerns usually seem to originate from
non-functional requirements such as logging, security,
persistence etc. However, it is not uncommon to find
situations where even the functional requirements have
their behavior spread out over many modules. A good
example of a common crosscutting concern is the
behavior related to authentication/authorization of a
particular role in a software system.
A straightforward representation of this behavior at
modeling and implementation levels, usually supported
by object-oriented paradigm, would most likely cut
across all modules wherein update operations are
performed.
Such representation results in problems associated
with the phenomenon of scattering (a concern spread out
over several modules) and tangling (one module
representing more than one distinct concern) of behavior.
Aspect-oriented techniques provide mechanisms to
explicitly identify, separate, and encapsulate such
crosscutting behavior (usually referred to as aspect
behavior).
Once the aspect behavior is encapsulated separately,
composition mechanisms are also provided to control
where and when this behavior is to be integrated with
non-crosscutting behavior (usually referred to as the
base).
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
983
Abid Mehmood, Dayang N. A. Jawawi
with aspects, see for example, MATA [14] and RAM
mapping [15]. We focus on the second approach to
integrating aspect-orientation with MDE process in this
paper, i.e., on aspect-oriented code generation from
aspect-oriented models. The motivation behind this
selection is provided in the following section. In this
context, while we move towards aspect-oriented code
generation, the modeling notations used to support
aspect-orientation play a vital role, since the
completeness of generated code is directly dependent on
comprehensiveness supported by the modeling notation
used. Moreover, since no modeling language has been
adopted as a standard for aspect-oriented modeling, an
evaluation of the entire corpus of existing aspect-oriented
modeling approaches for their suitability to the purpose
of code generation is expected to provide a basis for
aspect-oriented code generation.
Therefore, this study is focused on evaluating 14
existing AOM approaches in the context of aspectoriented code generation. In general, this comparison
focuses on investigating the suitability of these
approaches to serve the goal of integration of MDE and
aspect orientation. In the following, Section 2 provides
the motivation for this study and briefly discusses the
related work. In Section 3, we define the strategy used
for evaluation of AOM approaches, specifically, by
describing the rationale behind selection of approaches
and the set of criteria used for comparison. Section 4
presents the results of comparison. We conclude the
paper in Section 5.
II.
Similarly, Hovsepyan et al. [6] have discovered that
approaches which target aspect-oriented programming
languages result in compact, smaller, less complex and
more modular implementations.
Hence, keeping in view the benefits of integration of
aspect-oriented techniques with MDE through aspectoriented code generation, we consider it worthwhile to
evaluate existing AOM approaches with respect to their
suitability to serve as input to an aspect-oriented code
generation process.
Previously, a systematic mapping study [19] has
identified and classified the existing research in the
context of aspect-oriented model-driven code generation.
The results of that study indicated the
underdevelopment of the area of aspect-oriented code
generation. Aspect-oriented modeling approaches have
been extensively compared in existing literature. For
example, Wimmer et al. [20] have performed an in-depth
comparison of AOM approaches focusing on a general
feature-based evaluation. Chitchyan et al. [21] have
provided a comprehensive review of all significant works
on both aspect-oriented as well as non-aspect-oriented
approaches to software development. Op de beeck et al.
[22] have compared AOM approaches within the context
of product line engineering. They have also proposed to
position AOM approaches within software development
life cycle for large-scale systems. With regards to
assessment of AOSD models, in [23] a framework for
effective assessment of AOSD models has been
presented. This framework essentially integrates the
design patterns and AOSD technologies to design
software systems. As far as aspect-oriented code
generation is concerned, a comparison of six approaches
has been conducted in [24], focusing only on the support
or otherwise of features required for full code generation.
As far as the integration of aspect-oriented modeling
techniques into an MDE environment is concerned, the
specific question of the suitability of various approaches
for this integration by means of aspect-oriented code
generation has not been explicitly investigated so far.
Motivation and Related Work
In previous section, we mentioned two different
approaches to obtaining an executable from aspect
models, i.e., weaving the aspect model to obtain a nonaspect model followed by generation of non-aspect code,
and transformation of aspect model into aspect-oriented
code. The core idea behind the first approach is to
provide a composition mechanism so that models can be
simulated, tested and debugged, prior to execution.
Several model weavers have been proposed to achieve
this. However, the main drawback in this approach is that
it does not support separation of concerns that have once
been composed during the weaving process.
This means that benefits of clear separation of
concerns become unavailable after the composition has
been performed. Further, by losing clear boundaries of
concerns at implementation level, the software system
faces problems related to evolvability, traceability,
reusability and understandability (cf. [16]). In contrast,
second approach that proposes transformation of an
aspect-oriented model directly into aspect-oriented code
is mainly inspired by the benefits resulting from the
existence of a direct mapping between constructs of
design model and the programming language. Moreover,
several empirical studies, for example [4], [5], [17], [18],
have reported the potential benefits of using aspectoriented techniques in software development.
III. Evaluation Methodology
In this section, we describe the methodology used for
evaluation of selected approaches in the context of this
study. First, the rationale behind the selection of
approaches and a brief description of the approaches is
presented.
Then we elaborate the comparison approach.
III.1. Selection of Approaches
Several proposals for AOM have appeared in
literature. These proposals differ in perspectives of their
distinguished goals, provided notations, level of concern
separation, level of abstraction and level of maturity.
However, a vast majority of AOM approaches possess
at least one common characteristic, which is their
extension from UML. Extending UML for aspect
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
984
Abid Mehmood, Dayang N. A. Jawawi
orientation seems quite natural and convincing since
aspect orientation can be seen as an extension to object
orientation for which UML is the standard and most
widely used modeling language. Therefore, for this
research study, focusing only on approaches that extend
UML, we have identified 14 well-published, UML-based
AOM approaches namely Stein [25], Ho [26], Aldawud
[27], Von [28], Clarke [29]-31], Jacobson [32], France
[33], Pawlak [34], [35], Cottenier [36], [37], Fuentes
[38], [39], Katara [40], Klein [41], J.Klein [42]-[44], and
Whittle [14], [45], [46]. In the following, we briefly
describe these approaches.
an AOSD package, which is used to encapsulate all
elements defined by the AOSD profile. Crosscutting
concerns are modeled using aspects, which are
extensions to UML core classes. A new stereotype
<<aspect>> is used to model aspects, which are further
classified into synchronous or asynchronous aspects. In
this profile, synchronous aspects are distinguished from
asynchronous ones in that they usually control the
behavior of the core classes. The <<crosscut>>
stereotype is used to model crosscutting relationships.
For behavior modeling, this profile does not dictate
any specific behavioral package; however, currently only
the use of Collaboration and State machine packages has
been outlined for this profile.
III.2. The Aspect-Oriented Design Model Notation
for AspectJ
III.5. aSideML Notation
Aspect-Oriented Design Model (AODM) notation of
Stein et al. [25] provides a design technique specific to
AspectJ. Therefore, it extends UML with the only
intention to support AspectJ's concepts at the design
level. To exploit the huge resemblance between the core
concepts of AspectJ and UML, it provides UML
representation for basic constructs of AspectJ, namely
join points, pointcuts, introductions, and aspects. Mainly
the class, statechart and sequence diagrams are used for
structure and behavior modeling.
They represent join points using UML links, and apply
the concept of adopted links to different diagrams in a
way specific to each diagram. Similarly, an advice in
AspectJ is viewed as analogous to an operation in UML.
Aspects are represented as classes of a special
stereotype named <<aspect>>. In principle, AODM has
been specified using the UML's standard extension
mechanism, but for certain specifications meta-model has
also been extended. For example, the UML extend
relationship, from which the <<crosscut>> stereotype has
been derived originally, can be specified between use
cases only.
The aSideML's Notation of Von [28] is a meta-model
extension of UML to support aspect-oriented concepts.
Aspects are defined by parameterizing different model
elements, and one or more crosscutting interface is
defined to organize join point description and the
crosscutting behavior of the aspect. Crosscutting features
are defined as an extension to the original features of the
class.
Specifically, to model structure, a new construct called
aspect diagram is introduced which extends features of a
UML class diagram. Collaboration and sequence
diagrams are extended for modeling behavior of the
aspect. The join points are defined by means of an
enhanced sequence diagram. Weaving of models is also
provided which supports the same set of diagrams and
generates woven class diagrams, woven collaboration
diagrams and woven sequence diagrams.
III.6. Theme/UML
Clarke et al. have proposed the Theme/UML [29]-[31]
approach. This approach has basically evolved from
work on composition patterns [31], [47], and is
considered one of the early approaches to aspect-oriented
modeling. In this approach, a new declaratively complete
unit named “Theme” is proposed at the design level to
represent system concerns, which are essentially
collections of structures and behaviors inferred from
requirements. A distinction has been made between the
“base” themes and the “aspect” themes, where aspect
themes refer to crosscutting behavior.
In Theme/UML approach, an aspect theme is
differentiated from a base theme in the sense that in
addition to other behavior, it may define some behavior
that is triggered by behavior in some other theme. As far
as modeling is process is concerned, first the triggered
behavior needs to be identified and captured in the form
of templates and then the crosscutting behavior related to
those templates is modeled. Later, the base themes which
are not affected by the crosscutting themes are modeled
using the standard UML design process.
III.3. The UMLAUT Framework
UML All pUrpose Transformer (UMLAUT) is an
open framework proposed by Ho et al. [26] for
developing application-specific weavers that can
generate detailed aspect-oriented design from a high
level design modeled using UML. The UML model
elements can be input using various formats such as XMI
and Java source. Extensions to UML are done through
the UML Profile mechanism. The weaving process is
implemented as a model transformation applied to the
UML model. Specifically, the weave operation is defined
as a transformation rule from an initial model to a final
one.
III.4. The UML Profile for AOSD
The UML Profile for Aspect-Oriented Software
development has been presented by Aldawud et al. [27].
It extends the standard UML package structure to define
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
985
Abid Mehmood, Dayang N. A. Jawawi
A different approach is used to modeling of aspect
themes by representing them using a new complete unit
of modularization similar to a package in standard UML,
with stereotype <<theme>>.
This theme may comprise of any of the standard UML
diagrams to model different views of the structure and
behavior required for a concern to execute. Essentially,
the aspect theme design is similar to a standard UML
package that contains structural and behavioral diagrams.
The only difference is the specification of templates
listed inside the theme package notation and a sequence
diagram for each of the templates grouping in the theme
package. Even though Theme/UML allows any kind of
UML diagrams to be used for aspect-theme design,
package and class diagrams are currently used for
structure modeling, whereas sequence diagrams are used
for behavior modeling.
Framework, which is a middleware to support concerns
such as persistence, security, fault tolerance etc. in J2EE
applications. Currently, the profile does not support
behavior modeling, whereas the support for structure
modeling is provided by means of class diagrams.
<<aspect>> stereotype is used to represent aspects, and
they are linked with a target class using <<pointcut>>
stereotypes.
The association between the operations of base and
aspect classes (i.e., the join point) is specified with the
help of a proprietary language. This approach is similar
to that of Jacobson et al. described previously in that it
does not support model weaving.
III.10.
The Motorola WEAVR Approach
The Motorola WEAVR approach [36], [37] has been
developed by Cottenier et al. in an industrial setting,
specifically in context of telecommunication industry.
It uses Specification and Description Language (SDL)
to specify models, which has partly been adopted in
UML 2.x. The WEAVR approach is thus based on UML
2.x. The approach uses class diagrams and composite
structure diagrams to represent structure.
State machines, action language of SDL and sequence
diagrams are used to model behavior. Individual aspects
are represented using <<aspect>> stereotype and a
pointcut-advice mechanism is used for composition of
aspects and target models. Model execution and code
generation are also supported.
III.7. Aspect-Oriented Software Development
with Use Cases
Jacobson et al.’s approach [32] is based on the idea of
using a development process where concerns are kept
separated from requirements specification to the
implementation phase. For this purpose, they define use
case slices to specify high-level design and then refine
this design to obtain detailed design.
At detailed design level, they represent structure by
means of class diagrams and behavior by means of
sequence diagrams. Model weaving is not supported.
One distinguishing characteristic of this approach is its
support for traceability of models pertaining to a specific
concern along different phases of software development.
III.11.
The Aspect-Oriented Executable Models
Notation
Aspect-Oriented Executable UML Models (AOEM) of
Fuentes et al. [38], [39] is a UML profile that extends the
UML and its action semantics to construct aspectoriented executable models.
In AOEM, an aspect is represented by a UML class
stereotyped as <<aspect>>, and comprises special
operations to model advices. Specifically, advices are
modeled using activity diagrams without input objects
and any number of output pins to modify values of
intercepted objects. In [13], a dynamic weaving
mechanism has also been provided by authors of the
AOEM to enhance its models.
III.8. Aspect-Oriented Architecture Models
The Aspect-Oriented Architecture Model approach of
France et al. [33] is based on composing model elements
that present a single concept using different views. The
model elements that are composed using this approach
are needed to be of the same type. Aspects may specify
concepts that are not present in a target model.
Templates are used in conjunction with package
diagrams, class diagrams, communication diagrams and
sequence diagram to represent aspects. In this respect,
this approach is similar to Theme/UML approach
described previously.
The compositor composition mechanism is used to
provide the concern composition. Just like Theme/UML,
primary models and aspect models are distinguished,
where the latter represent crosscutting behavior. Later, a
tool called Kompose [48] has also been developed which
uses the composition technique proposed by AspectOriented Architecture Models approach.
III.12.
The Concern Architecture View Approach
Katara et al. [40] have provided a conceptual model
for design of aspects by designing a concern architecture
model. The approach can handle the specification of
aspects both in symmetric as well as asymmetric manner.
The conceptual model has been implemented as a
UML Profile. Aspects are defined as augmentations to
target model, and the composed model is obtained by
mapping a non-aspect model to a new model containing
aspect descriptions.
The aspects are parametric in nature and thus can be
III.9. The UML Notation for AOSD
The notation of Pawlak et al. [34], [35] is a UML
profile based on UML 1.x to model a design using JAC
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
986
Abid Mehmood, Dayang N. A. Jawawi
bound or instantiated several times. To make them
generic in this way, they are explicitly split into two
parts: required (which defines the join point) and
provided (which defines the augmentation to original
model). To compose an aspect into a target model, a
special operation called superimposition is used, which
allows an aspect to augment another one.
III.13.
modeling diagrams, and even to other modeling
languages.
The only condition in this regard is that the modeling
language to be represented using MATA must have a
well-defined meta-model. UML meta-model can be
represented in the form of a graph by making each metaclass a node in the type graph, and making each metaassociation an edge in the type graph. In this way, any
UML model can be represented as an instance of this
type graph.
Aspects are defined using graph transformation rules,
where the left-hand-side (LHS) of a transformation rule
is a pattern that defines the pointcuts which are to be
matched, whereas the right-hand-side (RHS) defines new
elements to be added (or removed) at these pointcuts.
MATA provides a convenient way of writing the graph
rules by proposing that the rule be given on one diagram
only, rather than writing graph rules using both LHS and
RHS, since this needs repetition of unchanged elements
on both sides of the rule.
To this purpose, it defines three new stereotypes
namely: (1) <<create>> to specify that a new element
must be created by the graph rule, (2) <<delete>> to
identify deletion of an element by a graph rule, and (3)
<<context>> to avoid effect of (1) and (2) on elements.
The Behavioral Aspect Weaving Approach
The approach of Klein et al. [41] is based on the
concept of scenarios which are basically sequence
diagrams or Message Sequence Charts. A pair of
scenarios is used to define an aspect, one scenario
representing the pointcut, and the other representing the
advice. Just like AspectJ, the advice in this behavioral
aspect weaving approach can be inserted “around”,
“before”, or “after” a join point. In order to weave an
aspect model into a target model, first a generic detection
strategy is used which identifies all the join points in the
target model, then a generic composition mechanism is
applied to compose advice model with the target model
at the identified join points.
III.14.
Reusable Aspect Models
Reusable Aspect Models (RAM) [42]-[44] is a multiview modeling approach that combines existing aspectoriented approaches to model class, sequence and state
diagrams into a single approach. Multi-view modeling, in
its essence, provides means to describing a system from
multiple points of view, using different modeling
notations, and thus allowing the use of the most
appropriate modeling notation to describe facets different
views of a system.
RAM is different from all other AOM approaches in a
sense that it views aspects as concerns that are reused
many times in an application or across several
applications. Therefore, this approach models any
functionality that is reusable by means of an aspect.
Hence, different views (i.e., structure, message, and
state views) of a reusable concern are encapsulated in the
form of an aspect model which is essentially a special
UML package.
This aspect model comprises of three different
compartments representing the structural view, state view
and message view. These views are expressed using a
UML class diagram, state diagram and sequence
diagrams respectively.
III.15.
III.16.
Comparison Approach
A summary and categorization of our comparison
criteria is shown in Fig. 1. It has to be noted here that the
actual comparison criteria employed in this study is, in
essence, inspired by all existing surveys on AOM
approaches discussed previously in Section 2. However,
we have adapted it, in some cases semantically, to fulfill
needs of this study in the specific context of aspectoriented code generation. Moreover, we have extended
the comparison to all existing well-published AOM
approaches.
In general, the selected criteria refer to revealing
relevant information from two broader perspectives.
First, we try to analyze each studied approach in terms
of its overall suitability to be used for the purpose of
code generation, and in turn, for the long-term goal of
automatically obtaining useful code in practical
scenarios. The analysis from this perspective seems
particularly relevant since the modeling approach, in
general, is expected to be robust and mature enough to be
integrated into broader contexts of model-driven
engineering
and
automatic
software
systems
development. Second, the devised criteria are
representative of the analysis leading to defining the
likelihood of each approach to effectively work for a
practical code generation system.
We base our comparison given in the following
sections on the set of criteria described in the following:
MATA Notation
Modeling Aspects using a Transformation Approach
(MATA) of Whittle et al. [14], [45], [46] is a graph
transformation based approach to modeling and
composing aspects. Both the base and aspect models are
represented in the form of well-formed graphs. Since the
idea of using graph rules is broadly applicable, MATA is
seen as an approach which can be extended to any
III.16.1. Notation-Specific Criteria
Extension mechanism: This criterion is used to explore
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
987
Abid Mehmood, Dayang N. A. Jawawi
if the AOM approach extends UML by extending metamodel of UML (heavyweight extension mechanism), or
by defining a UML profile (lightweight extension
mechanism). In fact, both approaches to extending UML
have their pros and cons. In principle, however, it has
been shown previously (cf.[49], [50] that extending the
meta-model is preferable in case if aspect-oriented
concepts were well-defined, stable and their likelihood to
transfer to or composition with other domains was little.
On the other hand, since UML profiles are nothing but
a new dialect of UML to support specific domains [51],
they are considered ideal in situations where the aspect
domain is subject to change and evolution, and it is likely
that it will transfer to, or be composed with other
domains. Yet another important factor that relates to the
distinction between meta-model extension and profile
mechanisms is the tool support for UML extensions.
Since UML-based tools are built on the meta-model,
any changes in meta-model essentially require
corresponding adjustments to UML tools as well.
However, since UML profiles use standard extension
mechanisms and disallow changes in the meta-model, no
changes are needed for existing tool support. We have
defined this criterion with intention to highlighting
related information in the studied approach and to make
its correlation with code generation approaches.
Programming language influence: As noted by Reina
et al. [50], constructs and their respective handling in
AOM languages are often inspired by concepts expressed
in a specific aspect-oriented programming language. This
criterion identifies the specific AOP language that
influences the given AOM approach. An investigation of
the use of language-specific constructs is fundamental
while considering code generation to a specific target
language.
Mapping availability: In addition to the influence of a
programming language on the development of an AOM
approach, we also investigate if there is some work
related to mapping of the models in given AOM
approach to certain aspect-oriented language.
This criterion actually identifies the programming
language for which mapping has been proposed, only if a
mapping definition is provided as a proof, or some
appropriate examples are given.
This criterion is understandably relevant in context of
code generation.
Therefore, we will consider it in detail while
discussing the likelihood perspective.
UML version support: This criterion refers to the
UML version supported by the surveyed AOM approach.
Main purpose of this criterion is to identify the
approaches that do not support the current major
enhancements of UML. This criterion is essentially
related to looking into suitability of the approach (the
first perspective).
UML diagrams support: This criterion identifies and
lists all different types of UML structural and/or
behavioral diagrams extended by the given AOM
approach, in order to support aspect-orientation. This
criterion is related to both perspectives of our study. An
AOM approach cannot be called effective unless it
provides a mechanism for a comprehensive modeling of
the system, through supporting the effective diagrams.
Furthermore, this criterion is much more relevant for
code generation as the amount of code generation may
directly be influenced by the diagram(s) used as input to
code generation approach.
Design process support: A design process is relevant
in our research study as the completeness of design is an
essential requirement for generating complete and fully
executable code. This criterion evaluates the surveyed
approach in terms of its support for the design process.
Specifically, it investigates if this support has been
provided in an explicit way, by supporting the detailed
modeling, or only implicit support is available, for
example in terms of guidelines.
External traceability: The external traceability
criterion refers to the relationship between two models at
different phases in full software development life cycle,
where one model is refinement of another. In particular,
this criterion investigates if the surveyed AOM approach
provides traceability of models over phases such as
requirements specification, design, and implementation.
In case this traceability is supported, it lists the
combination of phases over which the support is
provided. For example, an external traceability support
from requirements specification to design and to the
implementation level will be specified as R  D  I.
Support for external traceability is important in the
context of our study as the main rationale behind the use
of aspect technology is to maintain traceability through
different phases of development life cycle.
Internal traceability: Unlike external traceability
which focuses on different phases of development life
cycle, internal traceability is concerned with traceability
between two models belonging to one phase.
Specifically, this criterion will explore whether
mechanisms or guidelines are provided for applications
of the approach in which abstract models are refined (i.e.,
traced) into detailed models, for example, refinement of
an abstract design model into a detailed design model.
The support for such traceability is very important while
studying prospects along the transformation of models
Fig. 1. Comparison criteria
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
988
Abid Mehmood, Dayang N. A. Jawawi
into other models and eventually into code.
Scalability: Scalability of an AOM approach can be
defined as its ability to handle both small as well as large
modeling scenarios. The scalability criterion here refers
to investigating if the scalability has been proven in realworld projects or at least by examples that go beyond
composition of two or three concerns. The rationale
behind investigating scalability is that an AOM approach
that lacks in scalability cannot obviously be used to
generate code which is of industrial standard.
aspect-oriented programming language). In case, a
composition plan is available, it is investigated whether it
is dynamic or static.
Dynamic composition refers to support for integration
of concerns at the model run-time, i.e., during the
execution of the model. Composition of models is
particularly important for the purpose of simulation and
validation of models. In this way, it seems relevant to
both perspectives of this study.
Composed model: This criterion evaluates the output
of concern composition in cases where static composition
plan is applied. In particular, it investigates if the output
composed model is represented using standard UML or
some extensions to UML. Just like composition plan, this
criterion will also provide insight into modeling notation
in terms of its suitability, even though it is not much
relevant from code generation perspective. This is
because our intention is to explore aspect-oriented code
generation, whereas a woven and standard UML model
will eventually be consisting of only object-oriented
constructs.
Concern interaction: This criterion is specific to
interactions between various concerns in a model. In
particular, it evaluates if interactions between concerns
can be modeled, and if provided, it identifies the
notations used to represent this interaction, for example,
a meta-class or stereotype. From code generation
perspective, the transformation approach and processes
thereof will have to provide details of translation of these
interactions at the code level.
III.16.2. Composition-Specific Criteria
Concern representation: This criterion refers to a
concern’s representation in the AOM approach in terms
of a UML meta-class or a stereotype, and identifies the
actual notational element used. For example, some AOM
approaches use a stereotype <<aspect>> to represent an
aspect distinguished from the meta-class Class.
The representation of concern is relevant from both
perspectives investigated in this study, i.e., the suitability
as well as the likelihood for extension to code generation.
This representation actually encompasses certain
characteristics on basis of which the element symmetry
16], composition symmetry 22] and relationship
symmetry 16] are determined. Specifically, the element
symmetry refers to defining whether there exists some
distinction between the concern modules of different
structures (i.e., those representing crosscutting concerns
versus others), or all concerns are treated equally with
modules of identical structure. The composition
symmetry is related to defining which concern modules
can be composed with each other. Therefore, asymmetric
concern composition implies that only “aspects” are
allowed to be woven into “base”. On the other hand,
symmetric composition does not make any distinction
between the base and aspects, and allows all types of
concerns to be composed with each other. Similarly,
relationship symmetry (sometimes referred to as rule
symmetry (cf. [20]), determines the placement of
composition rules for concerns.
The approaches in which composition rules are given
within one of the modules that are to be composed are
asymmetric in this perspective. A common example of
this is the AspectJ language which encapsulates
composition rules within an aspect in the form of
pointcut-advice combinations. The approaches which are
symmetric in this regard define the composition rules in
neither of the modules. Therefore, from modeling
perspective, the concern representation is actually what
will influence its composition, whereas from code
generation perspective, it is the abstraction that will
somehow need to be transformed into some abstraction at
the code level.
Composition plan: This criterion evaluates if the
support for integration of concerns at the modeling level
is provided or not. Lack of this support at the modeling
level would mean that composition is deferred to later
phases such as implementation (with the help of an
III.16.3. Maturity-Specific Criteria
The criteria in this section are intended to evaluate the
maturity of the studied approaches. In this section,
maturity is specifically measured in terms of existing
information proving the applicability and pragmatism of
an approach.
Modeling examples breadth: This criterion is intended
to evaluate maturity of given AOM approach by
investigating the number of examples modeled using the
approach.
Modeling examples depth: Apart from investigating
the breadth of modeling examples, we measure the depth
of examples as well; by looking at how many different
concerns have been integrated within the modeling
examples. Therefore, this criterion investigates the
maximum number of concerns integrated in one example.
Real-world application: This criterion evaluates the
successful application of surveyed AOM approach in the
design of a real-world project. This measure is expected
to show the applicability of approach, which as a result,
indicates the level of maturity.
Information availability: This criterion refers to the
available amount of papers, manuals, books and other
relevant material associated with the given AOM
approach. Specifically, this criterion provides the number
of different resources of information on the modeling
approach.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
989
Abid Mehmood, Dayang N. A. Jawawi
III.16.4. Tool-Support-Specific Criteria
Notation category.
Balance in extension mechanisms and UML versions:
Currently, to a certain extent there is a balance between
meta-model extensions and UML profiles. As described
previously, UML profiles have some benefits with regard
to tool-support since profiles are supported by almost all
UML tools. Therefore, in order to provide tool-support
for their profile, all a profile developer has to do is to
provide a reference implementation within existing
framework of the chosen UML tool. So far as the UML
version support is concerned, though at first glance one
can see the balance between UML 1.x and UML 2.x,
most recent approaches have already provided support
for UML 2.x.
Inclination to AspectJ: Among approaches that are
influenced from the feature set of an existing aspectoriented programming language, AspectJ appears to be
the most popular programming language. In the specific
context of transforming aspect-oriented constructs from
design to code, this inclination may reduce the modelsystem gap.
However, where not applicable, determining the
precise effects on this model-system relationship would
require further investigation, which may be conducted
through defining a mapping between constructs at
different levels.
Missing model- to- code mapping details: Mapping of
model constructs to those of programming language is an
important concern that is greatly related to code
generation from visual models.
Modeling support: This criterion is related to
evaluation of different means to use the surveyed AOM
approach to design. Moreover, it also refers to
investigation of support for syntactic and semantic
validation of the design.
Composition support: It refers to the tool support for
composition of concerns at the modeling level. This
support, if provided, may specifically allow simulation,
validation and debugging of models.
Code generation support: In line with the concepts of
model-driven engineering, AOM notations occasionally
address mapping of design models to implementation
code, and subsequently support the code generation from
models. This criterion evaluates if code generation has
been addressed, at least in principle, by the surveyed
AOM approach.
IV.
Evaluation Results and Discussion
From Tables I to IV, we summarize the results of
comparison of various AOM approaches from notation,
composition, maturity, and tool-support perspectives,
respectively. While certain observations are evident,
some interesting findings are summarized and their
results are illustrated in the following.
IV.1. Notation
Table I summarizes the evaluation with regard to the
AJ

1.x
CD, CoD,SD, UC

D->I
n/a

Ho [26]
UP
n/a

1.x
CD

D->I


Aldawud[27]
Von [28]
Clarke [29]
Jacobson [32]
UP
MM
MM
MM
UP,
MM
UP,
MM
UP
UP
UP
n/a
MM
UP
n/a
AJ
SOP, AJ, HJ
AJ, HJ




1.x
1.x
1.x
2.x
CD, StD
CD, SD, CoD
PD, CD, SD
CD, PD, UC, SD, AD, StD




R->D
R->D
R->D->I
R->D->I
n/a







n/a

2.x
CD, PD, CmD

A->D


AJ

1.x
CD

D->I


n/a
AJ
n/a
n/a
n/a
n/a






2.x
2.x
1.x
2.x
2.x
2.x
CD, DD, SD, StD
CD, AD, StD
PD
SD
CD, SD, StD
CD, AD, StD
























France [33]
Pawlak[34, 35]
Cottenier[36]
Fuentes [38]
Katara[40]
Klein [41]
J.Klein[42-44]
Whittle [45]
Legend:


n/a
AJ
UP
R
D
Supported
Not supported
Not applicable
AspectJ
UML profile
Requirements
Design
I
DD
CD
CoD
SD
SOP
HJ
Implementation
Deployment diagram
Class diagram
Collaboration diagram
Sequence diagram
SOP [52]
Hyper/J
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
UC
MM
StD
AD
CmD
GP
PD
Scalability
UML version
support
MM,
UP
Internal
traceability
Mapping
availability
Stein [25]
External
traceability
Extension
mechanism
Design process
support
UML diagrams
support
Approach
Programming
lang. influence
TABLE I
COMPARISON OF AOM APPROACHES ON BASIS OF NOTATION-SPECIFIC CRITERIA
Use case diagram
Meta-model extension
State diagram
Activity diagram
Communication diagram
General purpose
Package diagram
International Review on Computers and Software, Vol. 8, N. 4
990
Abid Mehmood, Dayang N. A. Jawawi
Analysis and design models may cover a lot of feature
details on their own, yet their transformation to code may
yield abundant deal of effort. It is evident from the
results that there are only two approaches that have
provided mapping of design models to code, among them
there is only one approach (i.e., [42]) that supports UML
2.
Dearth of support for behavioral diagrams: Almost all
variations of structure diagrams have been used by AOM
approaches except Klein [41], which provides support for
a behavior diagram only. An inadequate support for
behavioral modeling of crosscutting concerns is one of
the key restraints on the practical use of AOM
approaches in the model-driven engineering process.
Lacking in traceability support: Except for two
approaches, i.e., Jacobson [32] and Clarke [29], none of
the approaches provides support for traceability with
respect to all phases of software development. It is also a
key issue to affect the suitability of an AOM approach to
be integrated into MDE process.
Insufficient scalability: Scalability of approaches is
another aspect in which AOM approaches need to
improve. So far as the abstraction is concerned, almost
all approaches support ways to hide the details of
crosscutting behavior from modeler. However, the
modeling examples which are presented in these studies,
typically, do not exploit all features related to proving the
scalability. While we have considered an approach as
scalable if it can handle composition of simply three or
more concerns, only six approaches could meet this
criteria. However, among these six approaches Clarke
[29], Jacobson [32], Cottenier [36], and J.Klein [42]-[44]
have provided adequate proof of scalability of their
approaches. Again, this is an area which is of high
relevance in terms of applicability of AOM approaches to
large-scale development and aspect-oriented code
generation.
them half of the approaches provide both static and
dynamic composition mechanisms. The composed model
can be used for validation and simulation purposes, and it
can also be used to generate code. However, the support
for composition must be complemented with appropriate
tool-support (which we will see later), or else the
modelers will have to model each concern and then
manually compose it.
Popularity of UML as complete model: UML seems to
be the language of choice for approaches that provide
composition of models, to represent the composed
model. This inclination to UML seems quite natural and
convincing since aspect-orientation can be seen as an
extension to object-orientation, for which UML is the
standard and most widely used modeling language. In
this context, however, relying on UML has some obvious
advantages.
For example, for model transformation and/or code
generation, one will be working on a source model which
is defined using a standardized and well-defined metamodel. Typically, this ensures that the relationship
between model and code will be based on standard metamodels, that is, the meta-model of UML and the metamodel of some target programming language like
AspectJ.
IV.3. Maturity
Summary of the comparison results from the
perspective of Maturity of approaches are given in Table
III.
Lack of real-world applications: So far, very few
AOM approaches have been tested in a real-world
project, i.e., the approaches of Pawlak et al. and Cottenier
et al. In order to prove the suitability of AOM approaches
for large-scale development, their application in realworld projects is a mandatory requirement.
Moderate application of complicated example
scenarios: The use of complex modeling examples is
moderately considered by existing approaches. Some of
the studied approaches use trivial examples which are not
sufficient to demonstrate and validate the strength of a
modeling notation.
However, Theme/UML (see Clarke [29]) and
Reusable Aspect Models (see J. Klein [42]-[44]) have
been demonstrated using nontrivial modeling scenarios
comprising of over 15 concerns each. Similarly Cottenier
et al. set a good example in this regard by validating their
approach with the help of a complex real-world
application for telecommunication industry.
IV.2. Composition
Table II summarizes the evaluation with respect to the
Composition category.
Prevalence of Element Asymmetry for representation
of concerns: In general, concerns are represented using
element asymmetry (<<aspect>>), and the studied
approaches possess an additional interesting pattern in
this regard. In particular, when elements are asymmetric,
all approaches apply the asymmetric composition
mechanism (i.e., composition asymmetry), and they often
use pointcut-advice mechanism for that. Further, rule
asymmetry is followed to control pointcut-advice
combinations.
However, it should be noted here that this is not an
essential characteristic, and that in principle, asymmetric
composition may be employed to handle symmetry at
element level.
Moderate support for composition at modeling level:
The studied approaches often provide support for
composition of concerns at modeling level, and among
IV.4. Tool-Support
Table IV summarizes the evaluation with respect to
the Tool-support category.
Lack of tool-support for composition: A majority of
approaches has provided tool-support for modeling only
which is largely due to their use of UML profile
mechanism.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
991
Abid Mehmood, Dayang N. A. Jawawi
Approach
Stein [25]
Ho [26]
Aldawud[27]
Von [28]
Clarke [29]
Jacobson [32]
France [33]
Pawlak[34], [35]
Cottenier[36]
Fuentes [38]
Katara[40]
Klein [41]
J.Klein[42]-[44]
Whittle [45]


Legend:
Supported
Not supported
TABLE II
COMPARISON OF AOM APPROACHES ON BASIS OF COMPOSITION-SPECIFIC CRITERIA
Composition
Composed
Concern representation
plan
model
<<aspect>> Class
S
n/a
Stereotyped class
S
n/a
<<aspect>> Class in AOSD_Package,
n/a
n/a
State machine regions
Enhanced class
S
Extended UML
<<theme>> Package
S
Themes
<<use case slice>> Package, <<aspect>> Classifier
n/a
n/a
Package diagram parameterized with templates
S
UML
<<aspect>> Class
n/a
n/a
<<aspect>> Class
s, d
UML
<<aspect>> Class
s, d
UML
<<aspect>> Package
n/a
n/a
Sequence diagrams representing Pointcut and Advice
s, d
UML
Aspect package comprising of three parts: Class diagram,
s, d
UML
aspectual sequence diagram, aspectual statechart diagram
Scenarios – modeled using sequence diagrams with <<create>>
s, d
UML
and <<context>> stereotypes
s
d
Static
Dynamic
Asym
Sym
Asymmetric
Symmetric
On one hand, the support for composition of models is
an essential requirement for approaches which handle
details of composition at modeling level only and
generate object-oriented code, since without this support
it would not be possible to obtain a composed view of the
system. On the other hand, it is desirable for other
approaches as well that defer composition to
implementation level, since in this case the same can be
used for activities such as simulation and validation of
model. As shown in Table IV, half of the approaches have
not discussed any mechanism for composition of models.
Nonexistence of support for aspect-oriented code
generation: The investigation of tool-support for code
generation reveals more interesting results. In this regard,
the support provided by Cottenier et al. and Pawlak et al.
has limitations from different perspectives. Specifically,
Cottenier el al. generate object-oriented code only, even
though they cover several aspects of code generation for
the specific domain they considered (telecommunication
applications). Pawlak et al. have addressed generation of
aspect-oriented code but to a very limited extent, while
they define only the mapping of their constructs to code
in AspectJ language.
n/a
Concern
interaction














Not applicable
perspectives if examined for the purpose of aspect code
generation. In the following we sum up the important
conclusions that can be drawn from results of comparison
presented in previous subsections.
Adoption of approaches requires elaboration of
model-code relationship: All modeling approaches
provide fair support for abstracting the complex details
related to handling of crosscutting functionality.
However, in order to use them for the purpose of
aspect-oriented code generation, the complexities
involved in their transition to code need to be studied
further. It is not often straightforward to map the
concepts in a modeling notation to constructs of a
programming language.
That is why software developers often find it difficult
to transform even excellently developed models into
code. Therefore, unless the model-code gap is eliminated,
expecting a practical integration of aspect orientation and
model-driven engineering, which generates industrystandard code, would be unrealistic. Thus, more work is
needed that defines details of transformation of
constructs at design level to code level.
Guidance on the use of asymmetric vs. symmetric
approaches missing: As briefly noted in Section 4.2,
currently one can find a pattern with regard to applying
symmetry or asymmetry at composition level. However,
in principle, any type of composition, i.e., symmetric or
asymmetric, may handle any type of representation of
element. But the current approaches do not answer the
question when to use asymmetric or a symmetric
approach sufficiently. This may have implications for
code generation approaches. For instance, approaches
that use element asymmetry will best suit the
enhancement to support code generation targeted at
programming languages that define aspects in an
asymmetric way, e.g., AspectJ.
However, what will be the effect of a particular
selection on the quality of design and/or produced code
IV.5. Principal Findings in the Context
of Aspect Code Generation
So far we have focused on comparing existing aspectoriented modeling approaches for prospects along their
use as a source notation in a model-driven environment.
However, as previously given, we are particularly
interested in investigating their potential to support
enhancements for aspect-oriented code generation.
This is because we believe that the automatic
generation of aspect-oriented code can positively
enhance the benefits of these modeling approaches.
However, as we have mentioned in Section 4.1- 4.4,
current modeling approaches lack from many
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
992
Abid Mehmood, Dayang N. A. Jawawi
has not been explored by existing approaches yet.
code level.
Hence, further work is required to provide tool
support for composition and code generation, and in this
way to help increase the adoption of these approaches in
practice.
Strength of UML not fully exploited: As evident from
results in Table I, majority of approaches support both
structural as well as behavioral diagrams, thus allowing a
modeler to consider both structure and behavior of a
system. However, the selection of diagrams by different
approaches is vastly different. UML diagrams possess
varying levels of suitability for effectively modeling the
dynamics of a particular system. Hence, it would be
interesting to see how to support diagrams which are not
supported currently. Moreover, only a few approaches
provide composition of diagrams that they support for
designing aspects. Therefore, it is imperative to go
further in this context to benefit from full spectrum of
UML diagrams.
Missing guidelines on effectiveness of various
modeling diagrams: In principle, to model a system, a
specific set of UML diagrams is chosen so that it can
model a system in the most comprehensive and complete
manner, from both structural as well as behavioral
perspectives. This means that the final UML model must
be representing the system in its entirety, with respect to
its structure and behavior. This is particularly relevant
when code is to be obtained from the model, since the
completeness of output code would be directly linked
with comprehensiveness of the input model. Current
approaches provide no discussion on when to use one
diagram or another, and what will be the impact of
choosing a certain combination of diagrams. Hence, it
would be valuable to investigate the relationship between
various diagrams, the completeness of a model obtained
by combining them and code obtained by transforming
that design model into code.
TABLE III
COMPARISON OF AOM APPROACHES ON BASIS OF MATURITYSPECIFIC CRITERIA
Modeling Modeling
RealInformation
Approach
example
example
world
availability
breadth
depth
application

Stein [25]
2
2
4

Ho [26]
1
2
2

Aldawud [27]
1
>2
5

Von [28]
2
6
3

Clarke [29]
>5
>15
>15

Jacobson [32]
1
>3
3

France [33]
3
1
>10
Pawlak
[34],

1
1
3
[35]

Cottenier [36]
2
>4
9

Fuentes [38]
>3
>5
6

Katara [40]
1
>5
2

Klein [41]
1
1
9
J.Klein[42]2
>15
~
7
[44]

Whittle [45]
2
>5
4
Legend:


Supported
Not
n
No. of
supported
examples/
~
Partly
n/a
Not
modeled
supported
applicable
concerns/
publications
TABLE IV
COMPARISON OF AOM APPROACHES ON BASIS
OF TOOL-SUPPORT-CRITERIA
Approach
Modeling support
Composition
support

























~


Stein [25]
Ho [26]
Aldawud [27]
Von [28]
Clarke [29]
Jacobson [32]
France [33]
Pawlak [34], [35]
Cottenier [36]
Fuentes [38]
Katara [40]
Klein [41]
J.Klein[42]-[44]
Whittle [45]
Legend:

Supported
~
Partly supported

Code
generation
support







~






V.
Conclusion
In this paper we provide a comparison of different
AOM approaches with respect to their potential to
integrate into an MDE environment by means of aspectoriented code generation. For this task, we conducted the
current study by using a well-defined comparison
approach that has allowed us to identify and compare a
set of 14 well-published AOM approaches.
The results of our study show that in order to achieve
a true integration of aspect orientation and MDE, AOM
approaches need to be improved from many perspectives.
In particular, we have found that mostly AOM
approaches suffer from problems including: (1)
inadequate support for behavioral diagrams, (2) lack of
scalability, (3) moderate consideration of complex
application scenarios, (4) lack of application in the realworld, (5) lack of tool-support for composition, (6)
absence of details of mapping from design to code, and
(7) unavailability of tool-support for aspect code
generation.
Not supported
Tool-support needs integration with standard
development environments: Aspect-oriented techniques
(and their integration with model-driven engineering to
develop systems) are unlikely to be adopted in practice if
not complemented with reliable tool support.
The primary reason for this is the fact that manual
weaving of aspect-oriented models is a fairly
cumbersome and error-prone task. For interested readers,
a detailed discussion of difficulties associated with
behavior of a system in presence of aspects may be found
in studies such as [53], [54]. This problem is further
enlarged in the context of code generation, because of the
raised complexity involved in handling of concerns at
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
993
Abid Mehmood, Dayang N. A. Jawawi
[19] A. Mehmood, D.N.A. Jawawi, Aspect-oriented model-driven
code generation: A systematic mapping study, Information and
Software Technology, 55 (2013) 395-411.
[20] M. Wimmer, A. Schauerhuber, G. Kappel, W. Retschitzegger, W.
Schwinger, E. Kapsammer, A survey on UML-based aspectoriented design modeling, ACM Comput. Surv., 43 (2011) 1-33.
[21] R. Chitchyan, A. Rashid, P. Sawyer, A. Garcia, M.P. Alarcon, J.
Bakker, B. Tekinerdogan, S. Clarke, A. Jackson, Survey of
Aspect-Oriented Analysis and Design Approaches. Technical
Report AOSD. Europe Deliverable D11, AOSD-Europe-ULANC9, in, Lancaster University, May 2005.
[22] S.O.d. beeck, E. Truyen, N. Bouck'e, F. Sanen, M. Bynens, W.
Joosen, A Study of Aspect-Oriented Design Approaches, in,
Department of Computer Science K.U. Leuven, 2006.
[23] A.H. Hannousse, O. Kazar, D. Meslati, Z. Liu, A cohabitation
framework for AOSD Models, (2007) International Review on
Computer and Software (IRECOS), 2 (4), pp. 285-291.
[24] A. Mehmood, D.N.A. Jawawi, A comparative survey of aspectoriented code generation approaches, in:
5th Malaysian
Conference in Software Engineering (MySEC), 2011 2011, pp.
147-152.
[25] D. Stein, S. Hanenberg, R. Unland, An UML-based aspectoriented design notation for AspectJ, in: Proceedings of the 1st
international
conference
on
Aspect-oriented
software
development, ACM, Enschede, The Netherlands, 2002, pp. 106112.
[26] W.-M. Ho, J.-M. Jezequel, F. Pennaneac'h, N. Plouzeau, A toolkit
for weaving aspect oriented UML designs, in: Proceedings of the
1st international conference on Aspect-oriented software
development, ACM, Enschede, The Netherlands, 2002, pp. 99105.
[27] T. Aldawud, Bader, A.,Tzilla Elrad, UML profile for aspectoriented software development, in: The Third International
Workshop on Aspect Oriented Modeling., 2003.
[28] V.F.G. Chavez, A model-driven approach for aspect-oriented
design, in, Pontif´ıcia Universidade Cat´olica do Rio de Janeiro,
2004.
[29] S. Clarke, E. Baniassad, Aspect-Oriented Analysis and Design:
The Theme Approach, Addison Wesley Object Technology, 2005.
[30] E. Baniassad, S. Clarke, Theme: an approach for aspect-oriented
analysis and design, in: Software Engineering, 2004. ICSE 2004.
Proceedings. 26th International Conference on, 2004, pp. 158167.
[31] S. Clarke, R.J. Walker, Towards a standard design language for
AOSD, in: Proceedings of the 1st international conference on
Aspect-oriented software development, ACM, Enschede, The
Netherlands, 2002, pp. 113-119.
[32] I. Jacobson, P.-W. Ng, Aspect-Oriented Software Development
with Use Cases, Addison-Wesley Professional, 2004.
[33] R. France, I. Ray, G. Georg, S. Ghosh, Aspect-oriented approach
to early design modelling, Software, IEE Proceedings -, 151
(2004) 173-185.
[34] R. Pawlak, L. Seinturier, L. Duchien, L. Martelli, F. LegondAubry, G. Florin, Aspect-Oriented Software Development with
Java Aspect Components, in: R. Filman, T. Elrad, S. Clarke, M.
Aksit (Eds.) Aspect-oriented software development, AddisonWesley, 2005, pp. 343-369.
[35] R. Pawlak, L. Duchien, G. Florin, F. Legond-Aubry, L. Seinturier,
L. Martelli, A UML Notation for Aspect-Oriented Software
Design, in: AO modeling with UML workshop at the AOSD'02.,
2002.
[36] T. Cottenier, A.v.d. Berg, T. Elrad, Joinpoint Inference from
Behavioral Specification to Implementation, in: E. Ernst (Ed.)
ECOOP 2007 – Object-Oriented Programming, Springer Berlin /
Heidelberg, 2007, pp. 476-500.
[37] T. Cottenier, A.v.d. Berg, T. Elrad, The Motorola WEAVR:
Model Weaving in a Large Industrial Context, in: Proceedings of
the 6th International Conference on Aspect-oriented Software
Development (AOSD '07), 2007.
[38] L. Fuentes, P. Sanchez, Designing and Weaving Aspect-Oriented
Executable UML models, Journal of Object Technology, 6 (2007)
109-136.
[39] L. Fuentes, P. Sanchez, Towards executable aspect-oriented UML
models, in: Proceedings of the 10th international workshop on
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
A. Rashid, A. Moreira, J. Araujo, P. Clements, E. Baniassad, B.
Tekinerdogan, Early aspects: Aspect-oriented requirements
engineering and architecture design, in, Electronic Document.
http://www.early-aspects.net/, 2006.
T. Elrad, O. Aldawud, A. Bader, Aspect-Oriented Modeling:
Bridging the Gap between Implementation and Design Generative
Programming and Component Engineering, in: D. Batory, C.
Consel, W. Taha (Eds.), Springer Berlin / Heidelberg, 2002, pp.
189-201.
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J.M. Loingtier, J. Irwin, Aspect-oriented programming, in: M.
Aksit, S. Matsuoka (Eds.) ECOOP'97 — Object-Oriented
Programming, Springer Berlin / Heidelberg, 1997, pp. 220-242.
J. Hannemann, G. Kiczales, Design pattern implementation in
Java and aspectJ, SIGPLAN Not., 37 (2002) 161-173.
A. Garcia, C. Sant'Anna, E. Figueiredo, U. Kulesza, C. Lucena,
A.v. Staa, Modularizing design patterns with aspects: a
quantitative study, in: Proceedings of the 4th international
conference on Aspect-oriented software development, ACM,
Chicago, Illinois, 2005, pp. 3-14.
A. Hovsepyan, R. Scandariato, S.V. Baelen, Y. Berbers, W.
Joosen, From aspect-oriented models to aspect-oriented code?: the
maintenance perspective, in: Proceedings of the 9th International
Conference on Aspect-Oriented Software Development, ACM,
Rennes and Saint-Malo, France, 2010, pp. 85-96.
S. Kent, Model Driven Engineering, in: M. Butler, L. Petre, K.
Sere (Eds.) Integrated Formal Methods, Springer Berlin
Heidelberg, 2002, pp. 286-298.
J. Bézivin, Model Driven Engineering: An Emerging Technical
Space, in: R. Lämmel, J. Saraiva, J. Visser (Eds.) Generative and
Transformational Techniques in Software Engineering, Springer
Berlin / Heidelberg, 2006, pp. 36-64.
J. Hutchinson, M. Rouncefield, J. Whittle, Model-driven
engineering practices in industry, in: Proceedings of the 33rd
International Conference on Software Engineering, ACM,
Waikiki, Honolulu, HI, USA, 2011, pp. 633-642.
D.M. Simmonds, Aspect-oriented Approaches to Model Driven
Engineering, in:
International Conference on Software
Engineering Research and Practice, Las Vegas, Nevada, USA,
2008.
D.M. Simmonds, Y.R. Reddy, A Comparison of Aspect-Oriented
Approaches to Model Driven Engineering, in: Conference on
Software Engineering Research and Practice, 2009, pp. 327–333
T. Cottenier, A.v.d. Berg, T. Elrad, Motorola WEAVR: Aspect
Orientation and Model-Driven Engineering, Journal of Object
Technology, 6 (2007) 51–88.
L. Fuentes, P. Sánchez, Dynamic Weaving of Aspect-Oriented
Executable UML Models, in: S. Katz, H. Ossher, R. France, J.-M.
Jézéquel (Eds.) Transactions on Aspect-Oriented Software
Development VI, Springer Berlin / Heidelberg, 2009, pp. 1-38.
J. Whittle, P. Jayaraman, A. Elkhodary, A. Moreira, J. Araújo,
MATA: A Unified Approach for Composing UML Aspect
Models Based on Graph Transformation, in: S. Katz, H. Ossher,
R. France, J.-M. Jézéquel (Eds.) Transactions on Aspect-Oriented
Software Development VI, Springer Berlin / Heidelberg, 2009,
pp. 191-237.
M. Kramer, J. Kienzle, Mapping Aspect-Oriented Models to
Aspect-Oriented Code, in: J. Dingel, A. Solberg (Eds.) Models in
Software Engineering, Springer Berlin / Heidelberg, 2011, pp.
125-139.
W. Harrison, H. Ossher, P. Tarr, Asymmetrically vs.
symmetrically organized paradigms for software composition, in,
2002.
L. Fuentes, P. Sánchez, Execution of Aspect Oriented UML
Models, in: D. Akehurst, R. Vogel, R. Paige (Eds.) Model Driven
Architecture- Foundations and Applications, Springer Berlin /
Heidelberg, 2007, pp. 83-98.
N. Cacho, C. Sant'Anna, E. Figueiredo, A. Garcia, T. Batista, C.
Lucena, Composing design patterns: a scalability study of aspectoriented programming, in: Proceedings of the 5th international
conference on Aspect-oriented software development, ACM,
Bonn, Germany, 2006, pp. 109-121.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
994
Abid Mehmood, Dayang N. A. Jawawi
[40]
[41]
[42]
[43]
[44]
[45]
[46]
[47]
[48]
[49]
[50]
[51]
[52]
[53]
[54]
Aspect-oriented modeling, ACM, Vancouver, Canada, 2007, pp.
28-34.
M. Katara, S. Katz, A concern architecture view for aspectoriented software design, Software and Systems Modeling, 6
(2007) 247-265.
J. Klein, F. Fleurey, J.-M. Jézéquel, Weaving Multiple Aspects in
Sequence Diagrams, in: A. Rashid, M. Aksit (Eds.) Transactions
on Aspect-Oriented Software Development III, Springer Berlin /
Heidelberg, 2007, pp. 167-199.
J. Klein, J. Kienzle, Reusable Aspect Models, in: 11th Workshop
on Aspect-Oriented Modeling, Nashville, TN, USA, 2007.
J. Kienzle, W.A. Abed, J. Klein, Aspect-oriented multi-view
modeling, in: Proceedings of the 8th ACM international
conference on Aspect-oriented software development, ACM,
Charlottesville, Virginia, USA, 2009, pp. 87-98.
J. Kienzle, W. Al Abed, F. Fleurey, J.-M. Jézéquel, J. Klein,
Aspect-Oriented Design with Reusable Aspect Models, in: S.
Katz, M. Mezini, J. Kienzle (Eds.) Transactions on AspectOriented Software Development VII, Springer Berlin /
Heidelberg, 2010, pp. 272-320.
J. Whittle, A. Moreira, J. Arajo, P. Jayaraman, A. Elkhodary, R.
Rabbi, An Expressive Aspect Composition Language for UML
State Diagrams, in: G. Engels, B. Opdyke, D. Schmidt, F. Weil
(Eds.) MoDELS, Springer, 2007, pp. 514-528.
J. Whittle, P. Jayaraman, MATA: A Tool for Aspect-Oriented
Modeling based on Graph Transformation, in: 11th AOM
Workshop, 2008.
S. Clarke, R.J. Walker, Composition patterns: an approach to
designing reusable aspects, in:
Proceedings of the 23rd
International Conference on Software Engineering, IEEE
Computer Society, Toronto, Ontario, Canada, 2001, pp. 5-14.
F. Fleurey, B. Baudry, R. France, S. Ghosh, A Generic Approach
For Automatic Model Composition, in: 11th AOM Workshop,
2008.
P. Desfray, UML Profiles Versus Metamodeling Extensions: An
Ongoing Debate, in: Workshop on UML in the.COM Enterprise:
Modeling Corba Components, XML/XMI and Metadata, Palm
Springs, CA, USA, 2000.
A.M. Reina, J. Torres, M. Toro, Separating concerns by means of
UML-profiles and metamodels in PIMs, in: O. Aldawud, G.
Booch, J. Gray, J.o. Kienzle, D. Stein, Mohamed, F. Akkawi, T.
Elrad (Eds.) The 5th Aspect-Oriented Modeling Workshop In
Conjunction with UML 2004, 2004.
OMG, Unified Modelling Language Specification: Superstructure
v2.2 in, http://www.omg.org/spec/UML/2.2/, 2009.
S. Clarke, W. Harrison, H. Ossher, P. Tarr, Subject-oriented
design: towards improved alignment of requirements, design, and
code, SIGPLAN Not., 34 (1999) 325-339.
C. Clifton, G. Leavens, A Design Discipline and Language
Features for Formal Modular Reasoning in Aspect-Oriented
Programs, in: Technical Report 05-23, 2005.
G. Kiczales, M. Mezini, Aspect-oriented programming and
modular reasoning, in: Proceedings of the 27th international
conference on Software engineering, ACM, St. Louis, MO, USA,
2005, pp. 49-58.
Authors’ information
Department of Software Engineering, Faculty of Computing, Universiti
Teknologi Malaysia (UTM), 81310 Skudai, Johor, Malaysia.
Abid Mehmood received the MSc degree in
computer
science
from
Quaid-i-Azam
University, Pakistan, in 2001 and is currently a
PhD candidate at the Faculty of Computing,
Universiti Teknologi Malaysia (UTM). Before
joining the PhD program at UTM, he was
working with the software industry. His research
interests include aspect-oriented software
engineering, model-driven engineering, and design patterns. Mr.
Mehmood is a member of the ACM and IEEE Computer Society.
Dayang N. A. Jawawi is an Associate Professor
at the Department of Software Engineering,
Faculty of Computing, Universiti Teknologi
Malaysia (UTM). She received her B.Sc. Degree
in Software Engineering from Sheffield Hallam
University, UK; M.Sc. and Ph.D. research in
Software Engineering from UTM. Currently she
is Head of Software Engineering Department,
Faculty of Computing, UTM; and member of Software Engineering
Research Group (SERG), K-Economy, UTM. Her research interests are
software reuse, component-based reuse, software quality, software
metrics and testing. Most of her research projects focus on
rehabilitation and mobile robotics, real-time systems, embedded
systems, and precision farming applications.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
995
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Achieving Energy Efficient MAC Protocol for MANETs
by Channel Utilization and Queue Size
P. Sivanesan, S. Thangavel
Abstract – In mobile ad hoc networks (MANET), the existing Media Access Control (MAC)
protocol does not maximize the overall network throughput. Also it causes the network links to
utilize higher power for data transmission. In order to overcome these issues, in this paper, we
propose an energy efficient MAC protocol in MANET based on channel utilization and queue size.
In this protocol, the source node that desires to transmit the data packet to its destination node,
appends its queue state and channel utilization with request to send (RTS) frame and transmits it
to the destination utilizing the utility function. After the destination verifies the RTS frame for
error, its sends the clear to send (CTS) frame along with queue state and channel utilization
information to source node using utility function. Upon receiving CTS frame, the source transmits
the data packet to the destination node. By simulation results, we show that the proposed protocol
improves the overall network throughput and minimizes the energy consumption. Copyright ©
2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Mobile Ad Hoc Networks (MANET), MAC Protocol, Request to Send (RTS), Clear to
Send (CTS)
connected by wireless links without any pre-established
infrastructure in an ad-hoc fashion, by which it makes
network unique from other networks. MANETs can be
deployed wherever there is no or little communication
infrastructure is available. These MANETs are collection
of many mobile nodes which are battery operated where
these nodes need to be energy conserved to maximize the
battery life.
Every node has to participate in an ad-hoc routing
protocol and these nodes operate not only as a host but
also as a router forwarding packets for other mobile
nodes in the network. Hence these mobile ad-hoc
networks are also called infrastructure less networking,
since the mobile nodes in the network dynamically
establish routes. A mobile node has a finite, decreasing
energy and this management is done by MAC layer using
local information.
The improvement in battery technology is slower as
compared to advances in semiconductor technology.
Since, the inadequate battery lifetime imposes a
limitation on the network performance. So Energy saving
mechanism is required for the efficient operation of the
battery powered ad-hoc network [1][2][3][4][10][11].
Nomenclature

Pt

htx
hrx


DSIFS
DDIFS
DRTS
DCTS
Dd
DACK
Tchb
z

CU (t)
Qk
UFi
CFi

Atx
Arx
FCS
Transmitter gain
Transmitted power
Receiver gain
Transmitter height
Receiver height
Wavelength
System loss
Short inter-frame spacing delay
Distributed inter-frame spacing delay
Ready-to-send delay
Clear-to-send delay
Data delay
Acknowledgement delay
channel busy time
size of data frame
Data rate
Channel Utilization time t
Queue state information
Utility function of link i
Cost factor of link i
Sensitivity of the node
Address of RTS frame transmitter
Address of RTS frame receiver
Frame check sequence
I.
I.1.
Advantages
Since the MANETs are without any pre-established
infrastructure and self-organizing, it is very easy to
deploy them in any kind of environment. Research about
MANETs are rapidly increasing since, they play a main
role in many fields like in the emergency services,
military and health etc.
Introduction
A Mobile ad hoc network [MANET] is decentralized
and self-organizing network where mobile nodes are
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
996
P. Sivanesan, S. Thangavel
I.2.
Challenges Faced by the Mobile
Ad-Hoc Networks
more transmissions to take place simultaneously.
Fan Wang et al., [6] have proposed a distributed,
single-channel MAC protocol (GMAC) that is inspired
by game theory. In GMAC, each transmitter computes a
utility function that maximizes the link’s achievable
throughput. The utility function includes a pricing factor
that accounts for energy consumption. GMAC allows
multiple potential transmitters to contend through an
admission phase that enables them to determine the
transmission powers that achieve the Nash equilibrium
(NE). These gains are achieved at no extra energy cost
and GMAC performs best under high node densities and
large data packet sizes.
Sunho Lim et al., [7] have proposed communication
mechanism, called RandomCast, via which a sender can
specify the desired level of overhearing, making a
prudent balance between energy and routing
performance. And also it reduces redundant rebroadcasts
for a broadcast packet and thus saves more energy. The
advantage of this approach is that this paper identifies
four factors that must be considered for the
overhearing/rebroadcast decision, sender ID, number of
neighbors, mobility, and remaining battery energy.
Floriano De Rango et al., [8] have proposed
modification in the MPR selection mechanism of OLSR
protocol, based on the Willingness concept, in order to
prolong the network lifetime without losses of
performance.
The mechanisms for the OLSR routing protocol, aims
to improve the energy performance in Mobile ah-hoc
Networks. OLSR presents the advantage of finding a
route between two nodes in the network in a very short
time, and it can expend a lot of resources selecting the
MultiPoint Relays (MPRs) and exchanging Topology
Control information.
P. S. Hiremath et al., [12] have proposed protocol that
conserves energy of mobile nodes and enhances the
lifetime of the MANET. It is an on-demand routing
protocol based on Adaptive Fuzzy Threshold Energy
(AFTE). The experimental results of this approach are
compared with the Load-Aware Energy Efficient
Protocol (LAEE) protocol proposed by the same authors.
The results show that AFTE performs better as
compared to LAEE. The average network life time is
enhanced by 13% considering first node failure, 15%
considering 50% node failure and 23% considering 100%
node failure as compared to LAEE and this add to the
advantage of this proposed approach.
Dheeraj Anand et al., [13] have proposed an energy
efficient Destination Sequenced Distance Vector
(EEDSDV) routing protocol is proposed for MANETs.
The EEDSDV overcomes the problem of more energy
consumption in existing DSDV protocol. EEDSDV
controls the transmission energy by variant transmission
power mechanism and gives a power control approach
for an energy efficient routing. The advantage of this
approach is that, by using the proposed protocol reduces
the end to end delay and the number of control packets
which is the sum of Route Request, Route Reply and
 In MANETs the resources used are limited i.e. the
protocol used should not consume a large amount of
energy or should not incur a large amount of
computational or communication overheads [9] [20].
 The topology of the MANETs varies dynamically.
So, it is difficult to design a protocol that is able to
provide hard guarantees about the QoS desired by an
application [9].
 Energy efficiency is an important consideration in
MANETs, since nodes are relies on limited battery
power for their energy. Energy-saving techniques
aimed at minimizing the total power consumption of
all nodes in the multicast group and at maximizing
the multicast life span should be considered [10] [21].
I.3.
Problem Identification
In the paper [5] the authors have proposed a protocol
called the Slow Start Power Controlled (abbreviated
SSPC) protocol. This protocol reduces power
consumption in the MANETs by using power control for
the RTS/CTS (request to send/clear to send) and DATA
frame transmissions. Here, in this protocol the node
transmission is adjusted to the minimum required value
for reception at the receiving node in order to achieve the
reduced power consumption through which the
maximum throughput also achieved in the MANETs.
Here the transmission power is found out, when a
transmitter node (Nt) sends a RTS frame to a receiver
node (Nr) assigning a time interval and power to it. If the
RTS frame doesn’t reaches the Nr, then the Nr is out of
reach. Again the Nt send the RTS frame with increased
time interval and the power. And after the Nr send the
CTS frame back to the Nt, it actually calculates the
transmission power required for the transmission that it
can use without causing excessive interference to its
neighbors.
The drawback of this protocol is that it doesn’t
maximize the overall network throughput while
preventing terminals from unnecessarily using high
power.
II.
Literature Review
Emmanouel A. Varvarigos et al., [5] have proposed a
new MAC-layer protocol for mobile ad hoc networks,
called the Slow Start Power Controlled (abbreviated
SSPC) protocol. SSPC improves on IEEE 802.11 by
using power control for the RTS/CTS and DATA frame
transmissions, so as to reduce energy consumption and
increase network throughput and lifetime.
The advantage of the proposed approach is the
reduced energy consumption is achieved by adjusting the
node transmission power to the minimum required value
for reliable reception at the receiving node, while
increase in network throughput is achieved by allowing
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
997
P. Sivanesan, S. Thangavel
Route Error packets.
K. Srinivasa Rao et al., [14] have proposed an energy
efficient and reliable congestion control (EERCC)
protocol for multicasting in MANETs. The proposed
EERCC is implemented in three phases, in the first phase
of EERCC protocol, a multicast tree routed at the source
is build by including the nodes with higher residual
energy towards the receivers.
In the second phase an admission control scheme is
proposed in which a multicast flow is admitted or
rejected depending upon on the output queue size. In the
third phase a scheme which adjusts the multicast traffic
rate at each bottleneck of a multicast tree is proposed.
The advantage of this approach is that it overcomes
the disadvantages of existing multicast congestion
control protocols (AODV) which depend on individual
receivers to detect congestion and adjust their receiving
rates.
R. Bhuvaneswari et al., [15] have proposed a Demand
Based Energy Efficient (DBEE) algorithm to reduce the
effect of overhearing.
The mobility of the nodes results in stale routes, due to
the lack of route cache updation. So, a cross layer
framework is implemented along with the DBEE to
improve route cache performance in DSR. By using the
cache timeout policy we can easily prevent stale routes
from being used. The cache timeout of individual links
are found by Receiving Signal Strength Indicator (RSSI)
information.
The advantage of the approach is that it achieves good
packet delivery ratio while attaining low delay, overhead,
minimum energy consumption.
Yong Zhou et al., [16] have proposed novel linkutility-based cooperative MAC (LC-MAC) protocol for
wireless multi-hop networks. By fully utilizing the
broadcast nature of wireless multi-hop networks, the
node that has overheard data packets in the previous hop
may become a partner of the transmitter in the current
hop. In LCMAC, based on the instantaneous channel
measurements, each node tries to maximize its own linkutility (indicator of a node’s ability to cooperate) by
jointly adjusting transmission rate and power. The
advantage of this approach is that the optimal
transmission type, rate and power are uniquely
determined by the best node.
utilization value for rescheduling the transmissions for
that time period.
Similarly, all the intermediate nodes existing in the
carrier sensing zone (CS) of source node that detects the
RTS frame and incapable decoding the frame assigns
their channel utilization value as EIFS (Extended
Interframe Space). The destination node upon receiving
the RTS frame verifies for any error. If no error exists, its
sends the clear to send (CTS) frame along with queue
state and channel utilization information to source node
using utility function. Upon receiving CTS frame, the
source transmits the data packet to the destination node.
By simulation results, we show that the proposed
technique improves the overall network throughput and
minimizes the energy consumption.
III.2. Estimation of Metrics
III.2.1. Estimation of Channel Utilization
Let dist (t) be the distributed inter-frame spacing
(DIFS).
Let s (t) be the short inter-frame spacing SIFS.
Let r (t) represents the Request to send (RTS) control
packet.
Let c (t) represents the Clear to send (CTS) control
packet.
Let d (t) be the data packet.
Let a (t) be the acknowledgement frame (ACK).
Let DDIFS, DSIFS, DRTS, DCTS, Dd, DACK be the delay
components of DIFS, SIFS, RTS, CTS, data and ACK
packets.
The channel utilization of a network per second is
computed using the following components [17]:
a) The time taken for transmission and management of
the data packets and control frames.
b) The total number of delay components such as
Distributed inter-frame spacing (DIFS) and short
inter-frame spacing (SIFS).
The estimation of above components and estimation of
channel utilization based on these components are
illustrated below.
The channel busy time (Tchb) for a data frame (d) is
given using Eq. (1):
Tchb (d) = DDIFS + Dd (z,  )
III. Proposed Solution
(1)
where z = size of data frame (in bytes).
 = rate at which the data is transmitted.
DDIFS = delay component.
Tchb of the RTS frames is given using Eq. (2):
III.1. Overview
In this technique, the source node that desires to
transmit the data packet to its destination node, appends
its queue state and channel utilization with request to
send (RTS) frame and transmits it to the destination
utilizing the utility function.
All the intermediate nodes in the transmission range of
source node that detects the RTS frame and which has
ability to decode the RTS frame, set their channel
Tchb (RTS) = DRTS
(2)
Tchb of the CTS frames is given using Eq. (3):
Tchb (CTS) = DSIFS + DCTS
(3)
Tchb of the ACK frames is given using Eq. (4):
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
998
P. Sivanesan, S. Thangavel
Tchb (ACK) = DSIFS + DACK
(4)
The utility function helps in maximizing the overall
network throughput while preventing the link from using
higher power [6].
According to Shannon’s capacity, the utility function
for an active link i is defined as:
If RTS, CTS, ACK and data packets are encountered
during the interval t, the total Tchb is given using the
following equation:
Tchb (t) = (r (t) * Tchb (RTS)) + (c (t) * Tchb (CTS)) +
+ (a (t) * Tchb (ACK)) + (d (t) * Tchb (d))
UFi (Ptxi, Ptx-i) = ln 1  SNRi  - CFi Ptxi,
(5)
(10)
i = 1, 2,…,n
Thus, the Channel utilization at time t, is given using
Eq. (6):
T t 
(6)
CU  t   chb 6  100
10
where:
Ptxi = transmission power of the node;
Ptx-i = transmission power of all links other than i;

III.2.2.
 [Ptx1,…, Ptxi-1, Ptxi+1, …. Ptxn)
Estimation of Channel State Information
The channel state information refers to the physical
layer information that includes channel fading, multipath
propagation, reflection, scattering and other climatic
effects on the channel. It is estimated based on the signal
strength and signal to noise ratio (SNR) at the receiver.
The estimation of signal strength using Friis equation
is given by Eq. (7) [18]:
Prx 
P tx     htx  hrx   2
 4    d 2 
SNRi = Signal to noise ratio (SNR) received at the
receiver node.
CFi = cost factor representing the specific amount of
power consumption.
III.3. Algorithm Utilized for Achieving Energy
Efficient MAC Protocol
(7)
Let S and D represent be the source and destination
node
Let Ni represents the intermediate node
Let DP be the data packet
Let  be the sensitivity of the node.
1) When S desires to transmit the DP to D through Ni, it
initially estimates UFi (Estimated in section III.2.3).
2) With the estimated UFi, Ntxi transmits the RTS frame
along with the estimated queue state and channel
utilization at UFi:
where Pt = transmitted power;
 = transmitter gain;
 = receiver gain;
htx = transmitter height;
hrx = receiver height;
 = wavelength;
d = distance among the transmitter and receiver;
 = system loss;
Based on the estimation of signal strength, SNR is
computed using Eq. (8):
SNR = log10(Ptx) – log10(Prx) dB
RTS
RTS
S 
 Ni 
D
The format of RTS frame is shown in Table I.
(8)
III.2.3. Estimation of Queue State Information
Frame control
The queue state information (Qk) in the network is
obtained by observing the number of packets in the
user’s buffer from MAC layer [19]:
Qk = [qj]
TABLE I
FORMAT OF RTS FRAME
Tchb(RTS)
Atx
Arx
Qk
CU
FCS
The parameters in the above table include the frame
control (protocol version, type, sub-type etc). Atx and Arx
represents the address of RTS frame transmitter and
receiver. Qk represents the queue state, CU is the channel
utilization. FCS represents the frame check sequence
used for error control.
3) All Ni in the transmission range (Rtx) of S that detects
the RTS frame and which has ability to decode the
RTS frame, set their utilization ratio with CU (t)
(Estimated in section III.2.1). It then re-schedules the
transmissions for that time period.
4) Nis existing in the carrier sensing zone (CS) of S that
detects the RTS frame and incapable of decoding the
frame assigns their channel utilization value as EIFS
(Extended Interframe Space). This assignment is due
to the fact that CS is not aware of the frame
(9)
where qj = K  1 vector with ith component.
Eq. (9) denotes the number of packet remaining in
node i’s buffer.
III.2.4. Estimation of Utility Function
Based on channel state information (estimated in
section III.2.2) and cost factor, the transmitter node
estimates the utility function. During this estimation,
node chooses the transmission power in such a way that
the utility function is greater than the threshold (Thmax).
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
999
P. Sivanesan, S. Thangavel
transmission time:
can receive the signal but cannot decode the signal.
EIFS = DSIFS + [(8*z) + L + Preamble length+
PLCPheader length] + DIFS
where z = length of an acknowledgement (ACK) frame
[(8*z) + L + Preamble length+ PLCPheader length] =
transmission time of an ACK frame at the physical
layer’s lowest mandatory rate.
5) D upon receiving RTS frame verifies Arx, Atx and
FCS.
If (Arx = AD) & (RTS frame = error-free) & (   Th )
Then
D decodes the RTS frame.
End if .
When D is intended destination, RTS frame is errorfree and sensitivity of the node is below threshold, it
decodes the RTS frame. The sensitivity of a node is
referred to as the minimum signal level essential for
reception at the receiver. In case, the RTS frame is prone
to error or signal level is weak, the packet is discarded.
6) After decoding the RTS frame, D estimates the utility
function and sends the CTS frame to S along with the
CU (t) and Qk:
CTS frame informs the nodes in its coverage area that
data transmission will be held in D.
The format of CTS frame is shown in Table II.
Frame Control
Fig. 1. Interframe space duration and CU for RTS
and CTS frame transmissions
Advantage of this approach
1) This approach achieves more energy conservation,
since the utility function in uses transmission power
and SNR.
2) Since the transmission power is considered based on
channel utilization and queue state, it avoids
interference and achieves better utilization.
IV.
CTS
CTS
S 
 Ni 
D
TABLE II
FORMAT OF CTS FRAME
Tchb (CTS)
Atx
Arx
CW - Contention window
Ntx – Nodes in the transmission range
Nrx – Nodes in the carrier sensing zone
Qk
CU
FCS
7) Similar to step 3 and 4, all Nis in the transmission and
carrier sensing zone of D, sets its CUi.
8) If S receives CTS frame within t;
Then:
DP
S 

D
Else
Data transmission has failed.
S initiates re-transmission of RTS frame.
End if .
When S receives CTS frame with the pre-defined time
interval (t), it transmits DP after the SIFS duration with
the power utilized in computing utility function.
Otherwise decides that the data transmission has failed
i.e. the node is not within the reachable distance.
9) Similar to step 8, if D has not received the data packet
before the pre-defined time, it decides that CTS frame
transmission has failed.
Fig. 1 illustrates the interframe space duration and
channel utilization (CU) for RTS and CTS frame
transmission. It descries that the nodes within the
transmission range are able to sense and decode the
signal exactly. But the nodes in the carrier sensing zone
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Simulation Results
IV.1. Simulation Parameters
We evaluate our Achieving Energy Efficient MAC
protocol through NS-2 [20]. We use a bounded region of
1000 × 1000 sqm, in which we place nodes using a
uniform distribution. The number of nodes is 100.We
assign the power levels of the nodes such that the
transmission range of the nodes varies from 250 meters
to 450meters. In our simulation, the channel capacity of
mobile hosts is set to the same value: 2 Mbps. We use the
distributed coordination function (DCF) of IEEE 802.11
for wireless LANs as the MAC layer protocol. The
simulated traffic is Constant Bit Rate (CBR). The
following table summarizes the simulation parameters
used:
No. of Nodes
Area Size
Mac
Simulation Time
Traffic Source
Packet Size
Transmit Power
Receiving Power
Idle Power
Initial Energy
Transmission Range
Routing Protocol
Flows
100.
1000 × 1000
AEEMAC
50 s
CBR
500
0.660 w
0.395 w
0.035 w
10.3 J
250,300,350 and 400 and 450m
AODV
2, 4, 6 and 8.
IV.2. Performance Metrics
We compare the performance of our proposed
Achieving Energy Efficient MAC (AEEMAC) protocol
with SSPC [5]. We evaluate mainly the performance
International Review on Computers and Software, Vol. 8, N. 4
1000
P. Sivanesan, S. Thangavel
Flow s Vs Delay
Delay(Sec)
15
10
AEEMAC
SSPC
5
0
2
4
6
8
Flow s
Flow s Vs Throughput
Throughput
according to the following metrics:
Average Packet Delivery Ratio: It is the ratio of the
number of packets received successfully and the total
number of packets transmitted.
Average Energy Consumption: The average energy
consumed by the nodes in receiving and sending the
packets.
Packet Drop: It is the number of packets dropped
during the data transmission.
End-to-End-Delay: It is the amount of time taken by
the packet to reach the destination.
A. Based on Flows
In our experiment we vary the number of flows as 2,
4, 6 and 8 with 100 nodes.
3000
2000
AEEMAC
1000
SSPC
0
2
4
6
8
Flow s
Fig. 6. Flows Vs Throughput
From Fig. 2, we can see that the delay of our proposed
AEEMAC is less than the existing SSPC method.
From Fig. 3, we can see that the delivery ratio of our
proposed AEEMAC is higher than the existing SSPC
method. From Fig. 4, we can see that the packet drop of
our proposed AEEMAC is less than the existing SSPC
method. From Fig. 5, we can see that the energy
consumption of our proposed AEEMAC is less than the
existing SSPC method. From Fig. 6, we can see that the
throughput of our proposed AEEMAC is higher than the
existing SSPC method.
B. Based on Range
In our second experiment we vary the range as 250,
300, 350, 400 and 450 m.
Fig. 2. Flows Vs Delay
Flow s Vs DeliveryRatio
1
AEEMAC
Delay(Sec)
DeliveryRatio
Range Vs Delay
1.5
SSPC
0.5
0
2
4
6
8
50
40
30
20
10
0
AEEMAC
SSPC
250
Flow s
300
350
400
450
Range
Fig. 3. Flows Vs Delivery Ratio
Fig. 7. Range Vs Delay
Flow s Vs Drop
DeliveryRatio
Pkts
Range Vs DeliveryRatio
100000
80000
60000
40000
20000
0
AEEMAC
SSPC
2
4
6
8
1.5
1
AEEMAC
SSPC
0.5
0
250
Flow s
300
350
400
450
Range
Fig. 4. Flows Vs Drop
Fig. 8. Range Vs Delivery Ratio
Flow s Vs Energy
Range Vs Drop
6000
10
AEEMAC
Pkts
Energy(J)
15
SSPC
5
0
4000
AEEMAC
2000
SSPC
0
2
4
6
8
250
Flow s
300
350
400
450
Range
Fig. 5. Flows Vs Energy
Fig. 9. Range Vs Drop
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1001
P. Sivanesan, S. Thangavel
Range Vs Energy
[2]
Energy(J)
20
15
AEEMAC
10
[3]
SSPC
5
0
250
300
350
400
450
[4]
Range
Fig. 10. Range Vs Energy
[5]
Throughput
Range Vs Throughput
4000
[6]
3000
AEEMAC
2000
SSPC
1000
[7]
0
250 300
350
400 450
Range
[8]
Fig. 11. Range Vs Throughput
From Fig. 7, we can see that the delay of our proposed
AEEMAC is less than the existing SSPC method.
From Fig. 8, we can see that the delivery ratio of our
proposed AEEMAC is higher than the existing SSPC
method. From Fig. 9, we can see that the packet drop of
our proposed AEEMAC is less than the existing SSPC
method. From Fig. 10, we can see that the energy
consumption of our proposed AEEMAC is less than the
existing SSPC method.
From Fig. 11, we can see that the throughput of our
proposed AEEMAC is higher than the existing SSPC
method.
V.
Conclusion
[10]
[11]
[12]
[13]
In this paper, we have proposed an energy efficient
MAC protocol in MANET based on channel utilization
and queue size. In this protocol, the source node that
desires to transmit the data packet to its destination node,
appends its queue state and channel utilization with
request to send (RTS) frame and transmits it to the
destination utilizing the utility function.
After the destination verifies the RTS frame for error,
its sends the clear to send (CTS) frame along with queue
state and channel utilization information to source node
using utility function. Upon receiving CTS frame, the
source transmits the data packet to the destination node.
By simulation results, we have shown that the
proposed protocol improves the overall network
throughput and minimizes the energy consumption for
various transmission ranges and number of flows.
[14]
[15]
[16]
[17]
[18]
References
[1]
[9]
Niranjan Kumar Ray and Ashok Kumar Turuk, “Energy Efficient
Techniques for Wireless Ad Hoc Network”, proceedings of first
international joint conference on information and communication
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
[19]
technology, pages 105-111, Jan 2010.
S.Rajeswari and Dr.Y.Venkataramani, “An Adaptive Energy
Efficient and Reliable Gossip Routing Protocol For Mobile Adhoc
Networks”, International Journal of Computer Theory and
Engineering, Vol. 2, No. 5, October, 2010.
N.Sumathi and Dr. Antony Selvadoss Thanamani, “Evaluation of
Energy Efficient Reactive Routing Protocols in QoS Enabled
Routing for MANETS”, International Journal of Computer
Applications (0975 – 8887) Volume 14– No.2, January 2011.
A.Rajaram and Dr. S. Palaniswami, “The Trust-Based MACLayer Security Protocol for Mobile Ad hoc Networks”,
International Journal on Computer Science and Engineering Vol.
02, No. 02, 2010.
Emmanouel A. Varvarigos, Gkamas Vasileios and Karagiorgas
Nikolaos, “The slow start power controlled MAC protocol for
mobile ad hoc networks and its performance analysis”, IEEE,
Volume 7, Issue 6, Pages 1136–1149, August 2009.
Fan Wang, Ossama Younis and Marwan Krunz, “Throughputoriented MAC for mobile ad hoc networks: A game-theoretic
approach”, IEEE, Volume 7, Issue 1, Pages 98–117, January
2009.
Sunho Lim, Chansu Yu and Chita R. Das, “RandomCast: An
Energy Efficient Communication Scheme for Mobile Ad Hoc
Networks”, Mobile Computing, IEEE Transactions on Aug. 2009.
Floriano De Rango, Marco Fotino and Salvatore Marano, “EEOLSR: Energy Efficient OLSR Routing Protocol for Mobile AdHoc Networks”, Military Communications Conference, 2008.
MILCOM 2008. IEEE, conference on 16-19 Nov. 2008.
Ash Mohammad Abbas and Øivind Kure, “Quality of Service in
mobile ad hoc networks:a survey”, International Journal of Ad
Hoc and Ubiquitous Computing, Volume6,Page 75-98, 2008.
Ranjeet Jaiswal, Manish Chand Sahu, Ankur Mishra and Sanjay
Sharma, “SURVEY OF ENERGY EFFICIENT MULTICAST
ROUTING PROTOCOLS IN MANET”, International Journal of
Advanced Research in Computer Science and Electronics
Engineering Volume 1, Issue 5, July 2012.
Busola S. Olagbegi and Natarajan Meghanathan, “A REVIEW OF
THE ENERGY EFFICIENT AND SECURE MULTICAST
ROUTING PROTOCOLS FOR MOBILE AD HOC
NETWORKS”, International journal on applications of graph
theory in wireless ad hoc networks and sensor networks (GRAPHHOC) Vol.2, No.2, June 2010.
P.S.Hiremath and Shrihari M.Joshi, “Energy Efficient Routing
Protocol with Adaptive Fuzzy Threshold Energy for MANETs”,
IRACST – International Journal of Computer Networks and
Wireless Communications (IJCNWC), Vol.2, No.3, June 2012.
Dheeraj Anand and Shiva Prakash, “Energy Efficient DSDV
(EEDSDV) Routing Protocol for Mobile Ad hoc Wireless
Network”, International Journal of Advanced Research in
Computer Science and Electronics Engineering Volume 1, Issue
3, May 2012.
K.Srinivasa Rao, R.Sudhistna Kumar, P. Venkatesh, R.V.Sivaram
Naidu,and A.Ramesh, “Development of Energy Efficient and
Reliable Congestion Control Protocol for Multicasting in Mobile
Adhoc Networks compare with AODV Based on Receivers”,
International Journal of Engineering Research and Applications
(IJERA) Vol. 2, Issue 2, pp.631-634, Mar-Apr 2012.
R.Bhuvaneswari and Dr.M.Viswanathan, “Demand Based
Effective Energy Utilization in Mobile Ad Hoc Networks”, IJCSI
International Journal of Computer Science Issues, Vol. 9, Issue 2,
No 2, March 2012.
Yong Zhou, Ju Liu, Lina Zheng, Chao Zhai, and He Chen, “LinkUtility-Based Cooperative MAC Protocol for Wireless Multi-Hop
Networks”, IEEE Transactions on wireless communication, vol.
10, no. 3, March 2011.
Amit P. Jardosh Krishna N. Ramachandran Kevin C. Almeroth
Elizabeth M. Belding-Royer, “Understanding Congestion in IEEE
802.11b Wireless Networks”, Proceeding of the 5th ACM
SIGCOMM conference on Internet Measurement, 2005.
Jagadeesh Kumar, S.J.K. and T. Purusothaman, “A Cross Layer
Frame Work for Enhanced Quality of Service Provisioning in
Worldwide Interoperability for Microwave Access Networks”,
Journal of Computer Science, pp 420-424, 2012.
Indumathi Ganesan and Murugesan Karuppasamy, “An Efficient
International Review on Computers and Software, Vol. 8, N. 4
1002
P. Sivanesan, S. Thangavel
Cross-Layer Scheduling with Partial Channel State Information”,
Informatica, pp 245-250, 2011.
[20] K S Shivaprakasha, Muralidhar Kulkarni, Energy Efficient
Routing Protocols for Wireless Sensor Networks: a Survey,
(2011)
International Review on Computers and Software
(IRECOS), 6 (6), pp. 929-943.
[21] Ali Hassoune M., Mekkakia Z., LAT-MAC: A Latency Energy
Aware MAC Protocol for Wireless Sensor Networks, (2010)
International Review on Computers and Software (IRECOS), 5
(3), pp. 276-280.
[22] Network Simulator: http:///www.isi.edu/nsnam/ns.
Authors’ information
P. Sivanesan is doing his research in the area of
mobile ad hoc networks. He is currently working
as a Associate Professor in the department of
Information Technology, M.A.M College of
Engineering, Tiruchirappalli. He is pursuing his
research in Anna University of Technology
Coimbatore, Tamilnadu, India. His area of
interest includes mobile ad hoc networks, sensor
networks and mobile computing. He is the member of ISTE.
S. Thangavel was born in Namakkal, in 1971.
He received the B.E. degree in Electrical and
Electronics Engineering from Government
College Technology, Coimbatore (Bharathiyar
University) in 1993. He received his M.E. in
control and instrumentation from College of
Engineering Guindy (Anna University Chennai)
in 2002. He received his Ph.D. from Anna
University, Chennai in 2008. He is currently working as a Professor in
the department of EEE at K.S.Rangasamy College of Technology,
Tiruchengode from 1996 onwards. He has published 8 papers in
National/International Journals. He is a reviewer for 6 international
journals. He is an ISTE and IEEE member.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1003
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Image Compression Based on Crucial Region
for Radiographic Weldment Images
V. Vaithiyanathan1, B. Karthikeyan1, B. Venkatraman2
Abstract – Radiographic images are generally of high volume. These images when stored
occupy a lot of storage space and the transmission of them is also difficult due their large size. So
reduction of size plays an important role in storage and transmission of images. To achieve this
reduction, compression techniques are being widely used. This paper focuses on the process of
welding, Tungsten Inert Gas (TIG) welding in specific, the generation and development of
photographic film of weldments and also a novel method is presented, which is intended to reduce
the size of the radiographic image developed, by applying lossless compression technique on the
crucial regions of the image. The crucial regions of the image are automatically detected by using
segmentation technique in the proposed method. After the detection of crucial regions, lossless
compression technique is applied on them. The compressed data obtained along with some
information of the image is transmitted to the other validated user for reconstruction of the
original image. Apparently, the original image data can’t be understood by the third party during
transmission, which makes this method to be used for secure transmission of data. The image
reconstructed by this method will not have any loss of data in the crucial regions of the image but
certain loss is present in the non-crucial regions. This method is tested on some images and their
results are shown in the paper along with the compression rates. The results are also compared
with other methods. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: TIG Welding, Radiographic Images, Huffman, Lossless Compression, Entropy
Nomenclature
TIG
PNG
EMAT
DICOM
NDT
NDE
J2plossless
J2plossy
Tungsten Inert Gas
Portable Network Graphics
Electromagnetic Acoustic Transducers
Digital Imaging and Communications in
Medicine
Non- Destructive Testing
Non- Destructive Examination
JPEG 2000 Lossless compression
JPEG 2000 Lossy compression
I.
Introduction
Compression techniques are generally of two types,
lossless compressions techniques and lossy compression
techniques.
Lossy compression techniques have higher
compression rates when compared to the lossless
compression techniques.
There will be a certain loss in data when lossy
compression is applied, so after reconstructing the image
from the data obtained from lossy compression, the
original image differs from the constructed image.
This makes lossy compression techniques unsuitable
in many cases even though it reduces the size to a large
extent.
Manuscript received and revised March 2013, accepted April 2013
This technique is used in various applications like
internet telephony, streaming media etc. In contrast to
this lossless compression techniques do not miss any
information and so apparently have less compression rate
when compared to the lossy compression techniques.
The lossless compression techniques are used in
various applications like Compressed Archive File (ZIP
file) format, Portable Network Graphics (PNG) image
file format, gzip tool of UNIX etc.
The coding schemes used in lossless compression are
Huffman coding, Arithmetic coding and run length
encoding. In this paper Huffman coding algorithm is
used to implement lossless compression on the crucial
regions of the image. In the proposed method, the crucial
regions of an image are detected automatically by using
thresholding segmentation technique. In particular
improved
Tsallis
entropy
based
thresholding
segmentation technique is used [1].
Once the important regions are detected Huffman
coding, the lossless compression technique is used on
these regions for data compression.
II.
Need for Compression
Images are often needed to be transmitted over
network having constraints of limited bandwidth and
limited storage space. The compression techniques both
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1004
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
lossless and lossy techniques reduces the bits required to
transmit the images over the network.
This enables minimum requirement of bandwidth
while transmitting the image and the image is also
received fast at the other end as compression reduces the
time taken to transmit the image over the network.
As compression techniques besides reducing the
storage space also reduces the transmitting time and
bandwidth requirement, compression of images became
very essential in every field. In addition to this,
compression also helps in the secure transmission of data
which is essential requirement in many transmissions
these days. By using gene expression binary images can
be compressed in a better manner [2].
III. Experimental Procedure
III.1. TIG Welding
The metal rod (weld material) is welded by using a
special arc welding methodology called the TIG welding.
This method typically welds by means of generating
an electric arc in between weld material and the tungsten
(Tn) electrode. The inert gases from the torch provides a
protective cover for the Tn electrode, heat affected zone,
and the molten material. These inert gases normally
Argon, Helium do not take part in any chemical reaction
due to their inert nature. Their lack of odour and their
transparency provides an enhanced visibility to the
welder.
This process of welding typically produces a
temperature of around 35,000 Fahrenheit/19,426 Celsius.
Heat is applied to only the weld material. Filler
materials can be manually added as per the need [17].
The number of alloys and the corresponding metals
that can be welded by using this method is high. They
can also be used to weld metals which are dissimilar.
The riveted arc allows the heat to be centered in a
minute metal region. An added advantage is that the
concentration of the heat is only to the weld material.
It makes the joint feeble where the heat gets more
impacted. Since we don’t have the slag, we can have a
clear view.
Also slags are not needed to be dispatched after each
pass. As with other welding processes, this TIG welding
does not have any transfer of the weld metals over the
electric arc.
Generally this method seldom produces spatter or
sparks. So, no smoke or toxic gases are produced. Fumes
produced are all dependent on the metal that is welded.
Coming to its disadvantages, the lower filler deposition
rate is the major drawback. The welder has to have good
knowledge of the process beforehand. Welding may be
brighter because of lack of fumes.
Proper protection has to be made sure, both for the
environment and the welder.
Importantly, before welding any material, its physical
and chemical properties are to be thoroughly looked
upon. Ensuring good and safe surrounding is of prime
importance [17].
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
III.2. Generation of Photographic
Film of Weldments
The welded material is then tested by using a method
of radiography in which a radioactive isotope generates
gamma rays or x-ray tube generates rays. Non-contact
Electromagnetic Acoustic Transducers (EMATs) pair is
also used for imaging of metallic plates [3]. Here, the
radiation is passed on to the photographic film via the
weld material. This causes the deposition of the material
in the photographic film. Based on the density of the
material, its energy absorbance differs.
Film will be exposed if energy not drew in by the
material become eventually dark while minimum energy
disclosed areas are lighter. Thus, clefts, minute holes,
slag, inclusions become darker in the film, while the Tn
metal remains lighter in the film. Since x-rays are
invisible to humans we need to be very careful as they
may produce skin infections.
Full training and sound knowledge in addition with
practice is needed for the workers. Multichannel and
multi-imaging x-ray streak camera system which is one
dimensional can be used to produce two dimensional xray images, and two dimensional map of electron
temperature [4].
III.3. Developing Photographic Film of Weldments
By above method we get a photographic film in which
we have the welded material`s image. This film is either
developed by following a normal film developing
technique and the resulting photograph is given to the
professionals for the analysis and improvement or is
given to a special Laser Film Digitizer which typically
has the following technical specifications.
This Laser Film Digitizer with Helium – Neon Laser
light source has a photomultiplier sensor of optical
density range of around 0.0 to 4.7. It has an optical
resolution of 50 micrometres and has a memory of
around 24 MB. It uses a network of Digital Imaging and
Communications in Medicine (DICOM) Storage Service
class, Digital Imaging and Communication in Nondestructive Evaluation (DICONDE), 2905 HD with the
dimensions being 13 × 21 × 30 / 33 × 52.6 × 76.4, while
the power is around 120 Vac2. The DICOM is the
universal format used in Picture archiving and
communication system which is widely used for
compression and storing of images [5].
This 2905 Laser Film Digitizer produces greatest
image quality for the diagnostic purposes like
DICOM/DICONDE secondary capture. User selectable
scan options include: Pixel Spacing, between 50-500
micrometres or Optical Density of 4.7 or Variable bit
depth – 8, 10 or 12 bits or can itself be Self-Calibrating.
Its Utilities are Teaching Files, Primary Diagnosis,
Digital Duplication, Industrial Non-destructive testing/
Non-destructive examination (NDT/NDE), relevant
priors.
The 2905 is a swift scanner which can scan the 2K
film at less than 7 seconds. Self-calibration correctly
International Review on Computers and Software, Vol. 8, N. 4
1005
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
occurs whenever the system is switched on. Feed system
typically ascertains the optimal scan quality by reducing
the dirt or other dust. 2905 has a construction with allsteel frame. The 2905 has a heavy metal closed
protective housing from laser and optics. This 2905
Digitizer has a special algorithm that is used to analyse
the photographic film. Digital image processing
techniques are applied to the film and the desired
information is extracted from the film and is used upon.
Thus scanner scans the photographic film and
produces the results based on its findings. These results
are compared with the conclusions given by the
professionals who had seen the developed photograph, so
that both produce the same desired results. Nano
mechanical Testing systems using In Situ Methodologies
are also used in electron scanning [6].
IV.
New Approach for Compression
IV.1. Detecting Crucial Regions of Image Produced
After the photograph is developed, a novel method to
compress the image is proposed. The image that is to be
compressed is taken and improved Tsallis entropy based
thresholding segmentation technique is used on it [1].
This segmentation method when applied on the
original image splits the entire image into two regions,
one region having intensity value 0 which is black in
colour and other having intensity value 1 which is white
in colour. The regions of the image which are in white
colour are considered to be crucial regions of image.
The intensity values present in the original image at
these crucial regions and an approximate intensity value
for the non-crucial regions are stored. This stored data is
very important and helps in reconstructing the image
without any loss in the crucial areas, which are detected
automatically by thresholding segmentation technique.
IV.2. Compression Using Huffman Coding
Traditional Huffman coding algorithm, which is a
lossless compression technique, is applied on the stored
data to reduce the size of the data without missing any
part of the information. Huffman coding used is the
lossless compression coding scheme. This is not
dependent on the specific medium characteristics. This
compression algorithm is variable length coding
algorithm. In this for each unique symbol a unique code
is associated. The probability of the elements is
considered in this algorithm and the elements with higher
probability will have a smaller length code word when
compared to the elements with lesser probability. Code
words are associated to symbols by constructing the
binary tree where the nodes represents symbols initially
and the assigning process of code words for each of the
distinct symbol is done in the traditional method.
A dictionary which stores all the unique code words
against their corresponding symbols is stored and this
helps in reconstructing the original data once compressed
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
data is given. So, the dictionary is to be transmitted to the
sender along with the compressed data for the recovery
of original information.
After applying the lossless compression technique by
using Huffman coding algorithm on the data stored, the
resultant compressed data, dictionary and some other
information is to be transmitted. This method enables the
secure transfer of information as the information sent
cannot be used by any third party to get clear knowledge
of the original image. The other information that is sent
besides the compressed data and dictionary for the
reconstruction of the original image includes the size of
the image and other parameters.
IV.3. Decompression
In decompression, Huffman decoding method is used
on the data obtained as a result of Huffman coding. In
this method decoding is done by the looking into the
dictionary for each code word and knowing the
corresponding original data associated with it. Huffman
decoding, results in the stored data that has the intensity
values corresponding to all the regions of the image.
Reconstruction of the image is done by using this
decoded data and plotting the intensities values at the
corresponding coordinate positions. This reconstructed
image has same size as that of the original image and is
exactly similar to the original image in the crucial
regions. It only differs in the non-crucial regions of the
image.
V.
Research
Chen, C.W. et al [7], published a work which used the
concept of preserving clinical useful information by
using 3d separable wavelet transforms while
implementing the lossy techniques. Chen, C.W. et al [8],
published a work which used the preserving the crucial
regions of the image concept for the Image compression.
n this paper, the image compression is based on an
adaptive quantization scheme which can preserve the
clinically useful structures of a given image while
implementing lossy techniques.
Storm et al [9], published a work which implements
lossless region-of-interest compression.
Two coding methods are used, One using S-transform,
and second using lossy wavelet zero tree coding. Here,
the regions of interests are to be manually selected and
Xin Li et al [10], published a work on lossless
compression of the image based on edge-directed
property of least-square adaptive prediction schemes. In
this, the least square optimization is done for only a
fraction of pixels in the image.
Zukoski M. J. et al [11], published a work which is
relevant to this paper.
In this, an image to be compressed is first aligned with
a suitable image prestored in the atlas.
In the images stored in the atlas, clinically relevant
and non-clinically relevant regions are predefined by
International Review on Computers and Software, Vol. 8, N. 4
1006
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
radiologists. After aligning there are two approaches
discussed, one is to read the relevant regions and apply
lossless compression and in other parts lossy
compression. Other approach is to generate the residual
image and compressing it.
The work published needs to store a database of atlas,
requires aligning of the image to be compressed and
needs the radiologist to predefine the clinically relevant
and non-clinically relevant regions in the atlas images.
For lossless compression, lossless jpg and for lossy
compression, lossy jpg is used in this paper as shown in
the examples.
Vito Dai et al. [12], published a work in which they
proposed a new compression algorithm named context
copy combinatorial code (c4). This algorithm is lossless.
In this method, the image is automatically segmented
into two regions; one is called copy regions and the other
is called as prediction regions. In this error bits are
generated and are compressed and are sent to decoder
along with segmentation map to generate layout image.
This targets mainly layout images which have a mix
of data’s, dense repetitive data and less dense structured
data. Wen Sun et al. [13], a novel method to compress
the images with extended bit depth.
It is based on the value of interest parameters. This
method requires the value of interest parameters to be
specified during the capture process. Gray-Golomb
coding, bit-plane coding are used in this proposed
method.
Q. T. Nhu et al. [14] have proposed a scheme called
wavelet based ideal cross point regions for compression
of the images.
This scheme is based on ideal cross point regions and
integer wavelet transform. This is lossless technique. M.
Kreizer et al. [15] used the method of transferring binary
data related to image instead of directly transferring the
image to the host pc which results in reduced data rates
in particle tracking.
K-Y. Chan et al. [16] used the method of data
compression by transferring only the locations and
intensity values of white spots in image produced during
the particle tracking.
Fig. 1 shows the encoding phenomenon as described
in the proposed method.
Fig. 2 shows the decoding phenomenon which results
in the reconstructed image.
VI.
Results and Discussion
The above discussed compression method is tested
with sample radiographic images shown in Fig. 3, Fig. 4,
Fig. 5 and Fig. 6. When Fig. 3 is taken, the segmented
image after applying improved Tsallis entropy based
thresholding segmentation technique, is shown in Fig. 7.
This specifies the crucial regions of Fig. 3. Huffman
coding compression technique is applied and obtained
compressed data, dictionary and some related
information is sent to the other validated user for
reconstruction. The reconstructed image is shown in Fig.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
11. The original size of Fig. 3; the size of the data that is
to be sent to the other validated user for reconstruction
along with the compression rate is shown below Fig. 11.
Similar procedure is followed for the remaining
radiographic images and their results are displayed.
INPUT
IMAGE
IMPROVED
TSALLIS
ENTROPY
THRESHOLDING
STORING
INFORMATION OF
CRUCIAL REGIONS
HUFFMAN CODING
COMPRESSED DATA
AND
DICTIONARY
Fig. 1. Encoding process
COMPRESSED DATA,
DICTIONARY,
OTHER INFORMATION
HUFFMAN
DECODING
PLOTTING
INTENSITY
VALUES USING
DECODED DATA
RECONSTRUCTED
IMAGE
Fig. 2. Decoding process
From Table I, it is clear that entropy of the output
image is less when compared to entropy of the input the
image. This is due to some redundancy in the non-crucial
regions of the image, which is the result of assuming
some approximate intensity value for all non-crucial
regions.
TABLE I
ENTROPY VALUES OF IMAGES (BITS)
a
a
Image
Origina
J2plossles
J2ploss
Proposed
s
l
s
y
Method
Fig. 3
5.1941
5.1941
5.9156
3.6208
Fig. 4
4.6842
4.6842
4.6842
3.3414
Fig. 5
3.0518
3.0518
3.0518
0.5502
Fig. 6
4.4968
4.4968
4.4972
3.0955
a
J2plossless is the entropy value of the image obtained after
implementing lossless JPEG 2000 compression on original image
b
J2plossy is the entropy value of the image obtained after implementing
lossy JPEG 2000 compression on original image
International Review on Computers and Software, Vol. 8, N. 4
1007
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
Fig. 6. Test Image4
Fig. 3. Test Image1
Fig. 7. Segmented image of Fig. 3
Fig. 4. Test Image2
Fig. 8. Segmented image of Fig. 4
Fig. 5. Test Image3
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1008
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
Fig. 12. Reconstructed image of Fig.4
Fig. 9. Segmented image of Fig. 5
Fig. 10. Segmented image of Fig. 6
Fig. 13. Reconstructed image of Fig.5
Fig. 11. Reconstructed image of Fig. 3
Fig. 14. Reconstructed image of Fig.6
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1009
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
TABLE II
PERFORMANCE COMPARISON OF DIFFERENT METHODS (BYTES)
Images
Original
a
J2plossless
a
J2plossy
Huffman Coding
Proposed Method
Compression Ratio
Space
Saving (%)
77.58
80.885
87.993
81.86
Fig. 3
689808
512662
546524
251787
154628
0.22416
Fig. 4
182268
89315
97663
50008
34839
0.19114
Fig. 5
16000718
3317676
4378213
2041363
1921192
0.12006
Fig. 6
224400
109939
122806
60873
40702
0.1813
a
J2plossless is the size of the image obtained after implementing lossless JPEG 2000 compression on original image.
b
J2plossy is the size of the image obtained after implementing lossy JPEG 2000 compression on original image
c
Proposed method is the size of the data that is to be transmitted by using the proposed method, so that the other validated user can
reconstruct the original image.
From Table II, it is apparent that proposed method
achieves good results when compared to standard
compression techniques, jpeg2000 lossless and jpeg2000
lossy compression methods. This can be inferred from
compression ratio and space saving columns of the Table
II.
VII.
[4]
[5]
[6]
Conclusion
This paper gives a detailed account on the process of
welding, TIG welding in specific and the method of
obtaining and developing photographic film of
weldments. This in addition proposes a novel method to
compress the developed radiographic images, by using
the crucial regions of the image and Huffman coding
algorithm. Improved Tsallis entropy based thresholding
segmentation technique is used to detect the crucial
regions of the image. After the detection, the intensity
values corresponding to the crucial regions of the image
and an approximate intensity value for non-crucial
regions of image is stored and Huffman coding is applied
on it. Huffman coding being lossless compression
technique doesn’t lose any data regarding the crucial
regions present in the image. The resultant data of
Huffman coding and some other information help the
other validated user to reconstruct the image without any
loss in the crucial parts of image by using the decoding
process. Besides this, the method is also used for secure
transmission of data. This method provides better results
than, jpeg2000 lossless and jpeg2000 lossy compression
techniques.
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
Acknowledgements
This work is supported by Indira Gandhi Centre for
Atomic Research (IGCAR), Kalpakkam, India. The
Weldment radiographic images are given by IGCAR.
[16]
[17]
References
[1]
[2]
[3]
Lin, Q., Ou, C, Tsallis entropy and the long-range correlation in
image thresholding, Signal Processing, Vol. 92 n. 12, 2012, pp.
2931 – 2939.
Ma, S., A digital image compression algorithm based on gene
expressions, , International Review on Computers and Software,
Vol. 7 n 5, 2012, pp. 2555-2559.
Ho, K.S., Gan, T.H., Billson, D.R., Hutchins, D.A., Application
of pulse compression signal processing techniques to
electromagnetic acoustic transducers for noncontact thickness
measurements and imaging, Review of Scientific Instruments, Vol.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
76 n. 5,2005.
Zhong, J., Shiraga, H., Azechi, H., One-dimensional and
multichannels multi-imaging x-ray streak camera for imploded
core plasma of shell-cone target, Review of Scientific Instruments
Vol. 79 n. 10, 2008.
Kang, B.J., Kim, H.S., Park, C.S., Choi, J.J., Lee, J.H., Choi,
B.G., Acceptable compression ratio of full-field digital
mammography using JPEG 2000, Clinical Radiology Vol. 66 n. 7,
2011, pp. 609-613.
Gianola, D.S., Sedlmayr, A., Mnig, R., Volkert, C.A., Major,
R.C., Cyrankowski, E., Asif, S.A.S., (...), Kraft, O., In situ
nanomechanical testing in focused ion beam and scanning
electron microscopes, Review of Scientific Instruments Vol. 82 n.
6, 2011.
Chen, Chang Wen, Zhang, Ya-Qin, Parker, Kevin J., Subband
analysis and synthesis of volumetric medical images using
wavelet, Proceedings of SPIE - The International Society for
Optical Engineering, 1994, Chicago,USA.
Chen, Chang Wen, Zhang, Ya-Qin, Luo, Jiebo, Parker, Kevin J.,
Medical image compression with structure-preserving adaptive
quantization, Proceedings of SPIE - The International Society for
Optical Engineering, 1995, Chicago,USA.
Strom, J., Cosman, P.C., Medical image compression with
lossless regions of interest, Signal Processing Vol. 59 n. 2 , 1997,
pp. 155-17.
Li, X., Orchard, M.T., New edge-directed interpolation, IEEE
Transactions on Image Processing Vol. 10 n. 10, 2001, pp. 15211527.
Zukoski, M.J., Boult, T., Iyriboz, T., A novel approach to medical
image compression, International Journal of Bioinformatics
Research and Applications Vol. 2 n. 1 , 2006, pp. 89-103.
Dai, V., Zakhor, A., Lossless Compression of VLSI Layout
Image Data, IEEE Trans. on Image Processing, Vol. 15n. 9, 2006
, pp. 2522-2530.
Sun, W., Lu, Y., Wu, F., Li, S., Level embedded medical image
compression based on value of interest, Proceedings International Conference on Image Processing,2009, Cairo, Eypt.
Nhu, Q.T., Huynh, C.X., Dang, T.T., Lossless image compression
using ideal cross point regions with wavelet transform, 4th
International Conference on Biomedical Engineering, 2013,
Vietnam.
Kreizer, M., Liberzon, A., Three-dimensional particle tracking
method using FPGA-based real-time image processing and fourview image splitter, Experiments in Fluids Vol. 50 n.3 , 2011,pp.
613-620.
Chan, K.-Y., Stich, D., Voth, G.A., Real-time image compression
for high-speed particle tracking, Review of Scientific Instruments
Vol. 78 n. 2 , 2007.
E.R. Bohnart, TIG Handbook for GTAW Gas Tungsten Arc
Welding (Miller Electric. 2005).
Authors’ information
1
School of Computing, SASTRA University, Thanjavur-613401, India
RSEG, Indira Gandhi Centre for Atomic Research, Kalpakkam603102, India
2
Dr. V. Vaithiyanathan is currently working as Associate Dean
(Research) in School of Computing, SASTRA University, Thanjavur,
India. He obtained his Ph.D degree from Alagappa University,
International Review on Computers and Software, Vol. 8, N. 4
1010
V. Vaithiyanathan, B. Karthikeyan, B. Venkatraman
Karaikudi. He has published more than 40 papers in reputed journals.
His area of interest includes Image Processing, Cryptography,
Steganography and Soft computing.
B. Karthikeyan is currently working as Assistant Professor in School
of Computing, SASTRA University, Thanjavur, India. He received his
M.Tech degree from Manonmaniam Sundaranar University. Presently
he is pursuing Ph.D in the area of Image Processing. His research area
includes Image Processing and Steganography.
Dr. B. Venkatraman, an American Society for NDT certified Level –
III in four NDT methods (RT, PT, NRT and VT) has over 27 years of
experience. He has specialized in conventional and advanced NDE
especially radiography, thermal imaging and image processing. He is
presently the Head, Radiological Safety Division and Associate
Director, Radiological Safety and Environment Group at the Indira
Gandhi Centre for Atomic Research (IGCAR), Kalpakkam. He has
over 130 publications in Journals and Conferences including two
articles in Encyclopedia of Material Science, 3 monographs, 3 books
and is the series editor along with Dr Baldev Raj for the NDT
handbooks. He is, Fellow of the Indian Society for Non-Destructive
Testing, President, Indian Society for Radiation Physics and Associate
Member of Health Physics Society of USA and Professor Homi
Bhabha National Institute.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1011
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Energy Based Efficiency Evaluation of Cluster
and Tree Based Routing Protocols for Wireless Sensor Networks
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
Abstract – The wireless arena has been experiencing exponential growth in the last couple of
years. In twenty- first century, due to recent advances in sensor and wireless communication
technologies have enabled a new generation of massive-scale Wireless sensor network (WSN) and
is not-too-distant future when miniature, low-cost sensors may be literally sprayed onto walls,
roads, or machines, creating a digital skin that can observe a variety of interested physical
phenomena. Due to the severe energy constraint of a sensor node, network architectures and
protocol are important aspects in the design of Wireless sensor network due to their big impact on
the energy consumption. Since last couple of years to prolong the network lifetime of a tiny sensor
node various researchers have proposed a number of energy efficient routing protocols. Up till
now, their performance superior or worse cannot be inspected without any suspicion by
conventional techniques because of their transformed behavior in different environments. The
aspire of this research is to evaluate the performance among energy efficient routing protocols in
Wireless sensor networks (WSNs) based on metrics Overhead, Delay, Packet Delivery Ratio
(PDR) and Congestion over Energy consumption and Network lifetime. The current research work
can be utilized to guide protocol designing, application-specific protocol selection and
modification of the existing routing protocols in Wireless sensor networks. Simulations between
Energy Efficient Cluster based Data Gathering Protocol ECDGP and Energy Efficient Data
Collection Protocol-Tree Based EEDCP-TB confirms their results in term of Overhead, Delay,
Packet Delivery Ratio (PDR) and Congestion on Energy consumption and Network lifetime.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Wireless Sensor Network, Energy Efficient, Routing, Protocol, Cluster, Tree
I.
Introduction
A Wireless sensor network consists of hundreds to
thousands of sensor nodes or motes normally battery
operated to observe events in the real world.
These nodes are miniature in volume with the limited
memory, sensing facilities as well as communication and
processing capabilities. Modern growth in low power
wireless integrated micro-sensor technologies have made
these sensor nodes accessible in a large numbers at low
cost, can be deployed in a wide range of applications
such as disaster relief, emergency rescue operation,
environmental monitoring, home security, localization,
surveillance, temperature, pressure, sound, motion,
pollutants, earthquake cautions and many other fields, to
function for a long time [1]. The most important
difference between Wireless sensor networks and
traditional networks can be represented in term of their
restricted power, processing, storage and reliable selforganization capabilities.
Among the various scopes, one of the key applications
of WSN is, all sensor nodes work simultaneously in
collaboration and send several types of periodically
observed information to sink over a large geographical
area with great accuracy for further analysis.
Manuscript received and revised March 2013, accepted April 2013
After computing and aggregation sink conveyed this
data to external network by way of internet or satellite
network [2]. Among researchers, a researcher claim that
communication energy cost is several orders higher than
the computational cost [3].
Due to their constrained energy resources energy
efficiency has become one of the most critical issues in
WSNs. Inefficient use of energy can significantly reduce
the network lifetime [4]. In order to make a longer
network lifetime, it is essential to reduce the energy
expenditure of individual nodes. In addition, imprecise
use of bandwidth may lead to more collision during
message transmission. This phenomenon causes the sink
node to fail to learn significant data about urgent events
and also causes more wastage of energy in term of data
retransmission [5].
In particular minimizing energy consumption is a key
requirement in the design of sensor network protocols
and algorithms. Since sensor nodes are equipped with
small often irreplaceable battery with limited power
capacity [6]. It is essential that the network should be
energy efficient in order to prolong the lifetime of the
network. Energy expenditure in WSN is because of data
messages
transmitting/receiving,
processing
and
forwarded quires to the neighbouring nodes.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1012
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
While wasteful energy consumption is due to ideal
listening and back off time, overhearing, packet collision
and time latency due to control messages [7], [8].
The key aim of this manuscript is not to put forward a
new protocol design for cluster or tree based networks or
to improve an existing routing protocol to prolong the
network lifetime. Instead, it aims to experimentally
explore internal/external factors that impact the lifetime
of the cluster and tree based sensor networks in a real
time environment due to their miscellaneous behavior in
different scenarios for the developers and researchers. So
that, innovative energy efficient routing protocols can be
embedded in WSNs to prolong node life time and further
to motivate researchers for supplementary research to
prolong sensor life.
The rest of this paper is prepared as follows: Section II
presents an overview of the tree and cluster based routing
protocols in the literature. Section III describes the
protocols description for analysis. Section IV presents
the performance using network model. Section V gives
an explanation of performance analysis using radio
model. Section VI illustrates evolution analysis. Final
section VII represents a summary of conclusions.
II.
II.1.
Related Work
Tree Based Routing Protocols in WSN
In this section we briefly discuss the subsequent tree
based routing protocols.
The basic purpose of the tree based routing protocols
are building optimum routes from the source node to
sink. Usually, sink node is considered as much more
powerful than sensor nodes and works as an interface
with the administrator [9]. On a tree based routing
Parents-Childs (PC) relation is formed among the nodes
and parents are selected based on different parameters
such as their number of hops, residual energy, link
quality and length of routing path from the source node
to sink [10].
Some most important weaknesses of tree based
routing techniques has been given by Nirupama Bulusu
and S. Jha in [11], are (i) tree root is a single point of
failure, (ii) as a network grow up path becomes longer
and longer causes to amplify end to end packet failure,
congestion and decreased network lifetime and (iii) it has
an extremely poor load balancing as nodes nearer to the
root carry more traffic.
T. Mingdong, et al. proposed a Tree Cover based
Geographic Routing protocol (TCGR). To minimize
energy consumption it utilizes the key idea of greedy
routing to deliver the data packets to its neighbor's closet
to the destination. It takes into account the two
mechanisms are (i) labelling scheme and (ii) routing
scheme. In the tree cover network node position can be
represented by a each label set based on KPR scheme
and data messages are conveyed by link and shortcut
based. Many advantages and disadvantages of
geographic routing also has been discussed in [12].
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
L. Chiu-Kuo et al. in [13] to handle the energy
consumption problem proposed a Steiner Trees Grid
Routing protocol (STGR). After node deployment virtual
grid structure is constructed by the sink based on the
square Steiner tree where the cross point of the grid is
shown by Dissemination points (DPs) while Steiner
points as (SPs) depending on the length of the square.
To Steiner tree problem more intermediate vertices
and edges are added to the graph in order to minimize the
length of spanning tree. In data forwarding phase, if DPs
are parallel or vertical to the location of the sink then
Dissemination nodes (DNs) abundant to forward the data
along with an upstream path in the grid cell. Otherwise,
data is forwarded by DNs by taking into account
hexagonal structure. By experimental results author
assert that proposed protocol out performs Geographical
Grid Routing protocol (GGR) in term of energy
efficiency. A cross layer approach mechanism to achieve
reliable data collection networks is proposed in [14].
‘HAT-Mobile’ a Tree-based routing protocol for
mobile Wireless sensor networks proposed by Borsani et
al. in [15], addresses the problem of node energy
consumption and node mobility management. It takes
into account proactive techniques to speed up the
handover procedures of mobile sensor nodes among
different access points. HAT-Mobile restrictions the
impact of the signalling overhead and maintains the
handover procedure of node mobility which
consequently cause to reduce energy consumption of the
overall process.
Furthermore, the authors state that it is also
appropriate to save energy in term of handover latency
and reduced packet error rate.
A Tree based Routing Protocol named (TBRP) to keep
in control node mobility is proposed by Mrityunjay
Singh et al. in [16]. It handles the node energy
constraints by considering node energy level values, one
when a node has an energy level higher than half of the
original battery capacity, second when a node have an
energy level lower than half of the original battery
capacity but higher than the average energy level.
The proposed protocol shows better in targeting,
quality of communication among nodes and network life
time of sensor nodes. Furthermore, it has a high packet
delivery ratio because of Time Division Multiple Access
(TDMA) and Carrier Sense Multiple Access Collision
Avoidance (CSMA/CA) techniques. A number of
approaches to handle node energy consumption, mobility
and to support uplink and downlink connectivity are
studied in [15], [17].
II.2.
Cluster Based Routing Protocols in WSN
This section briefly discusses the succeeding cluster
based routing protocols.
In the recent era, a number of researchers demonstrate
their enormous attention in cluster based energy efficient
routing in Wireless sensor networks. A clustering scheme
has been applied to sensor networks with hierarchical
International Review on Computers and Software, Vol. 8, N. 4
1013
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
structures to get better performance of the network along
with reducing the need for power consumption.
Clustering is a cross - cut technique, which is used
almost in all segments of the protocol stack.
The vital initiative behind clustering scheme is to
organize senor nodes in a group of nodes around a
Cluster head (CH) with the responsibility of up keeping
state and inter cluster connectivity involved in data
processing.
Further this processed data sent to the Base Station
(BS) via sink by deciding the minimum amount of route
nodes over long distance to save node energy [18]. To
handle the overload energy consumption problem in
Wireless sensor network an adaptive cluster based sensor
network routing protocol named as (MIN-RC) is
proposed by A. Ghneimat et al. in [19], is the
enhancement of LEACH-C.
The network life duration of the proposed protocol can
be divided into a number of rounds and each round
begins with the setup phase. In order to solve problem of
overloading energy consumption and minimize the
diversity of the energy consumption between sensor
nodes it employs an adaptive method to control the round
time by considering the current state of the network.
Where round time ‘Tcurrent’ is defined at the
beginning of the round and ‘R current’ rely on the
minimum cluster size and the optimal cluster size rather
than using a constant round time ‘t’ for every round in
the network span.
The proposed protocol overcomes the overload
problem of LEACH-C and improves the network
efficiency however, the proposed scheme has drawback
of an extra setup overhead. In [32] author sets the time
length of each round to prolong the network lifetime and
throughput in LEACH.
TEEN is a reactive protocol proposed in [20] by D.
Baghyalakshmi et al. for time-critical applications. The
main drawback of this protocol is that the transmission
from nodes in cluster head will not be there when the
sensed value is not greater than the hard threshold.
Sarma et al. in [21] to maintain node as well as the
sink mobility a hierarchical cluster based routing
protocol. In the setup phase different tasks such as
logical clustering, role assignment is performed and
Gateway-node (GN) is selected based on higher energy
and relatively inferior mobility. Inside the same cluster,
two cluster head nodes utilize different coding schemes
and frequency bands to limit inter-cluster interference.
Re-clustering may get initiated when the cluster head
loses its connectivity or assigned time period has expired.
The protocol takes into account major advantages such
as (i) different CHs for each cluster reduced the
bottleneck situation, (ii) maintain connectivity, (iii)
minimizing the control message overhead, (iv) delivering
data to sink with a higher throughput level, (v) take care
of the link failure and (vi) find alternate routes in order to
deliver data at the destination.
However, it has to suffer a problem that during data
forwarding there can be a node or link failure due to the
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
death of mobile nodes. Therefore, it has an extra
assignment to strongly monitor the network status
continuously.
III. Protocols Description for Analysis
As shown by our current literature either it is not
feasible to design a routing protocol which has
stupendous performance over entire scenarios for all
applications. The diverse atmospheric circumstances and
non linear battery consumption are the most significant
reasons which have not been discussed in Bo and Z.
Xinrong proposed and J. Yong-xian et al. protocol
routing protocols. In addition, inspected results cannot
converse about the time varying nature of real life
scenario. Hence both chosen strategies are strongly
required to be tested in the real atmosphere.
In our present study, these listed strategies have been
tested in the real life scenario to find the effect of
Congestion, Delay, Overhead and Packet Delivery Ratio
on Energy consumption and Network life time. So that,
supplementary energy efficient routing protocol can be
set in, in Wireless sensor networks to make longer
network life span.
III.1. ECDGP
In [22] C. Bo and Z. Xinrong proposed an Energy
Efficient Cluster based Data Gathering Protocol
(ECDGP) to prolong the network lifetime. It belongs to
the family of event-driven routing protocols works in two
segments are (i) cluster formation and (ii) data
transmission phase. In cluster formation phase, node by
cooperative effort form a clustering network located
inside an event area. While in data transmission phase,
watched data collected by CH from active nodes are
forwarded to sink by multi-hop routing.
In C. Bo and Z. Xinrong protocol cluster head election
takes place based on node belief degree. Which takes
into account two parameters (i) residual energy and (ii)
intra cluster distance between nodes coming from
neighbors can be calculated by a belief degree function.
In the current round the node which has more residual
energy and minimum intra cluster distance appointed as
CH.
Furthermore, it selects active nodes according to the
demand of network coverage by following an active
selection algorithm as presented in [23].
Finally to forward observe the data from CH to the
sink multi-path routing is used in order to achieve the
load balance in the network. The C. Bo and Z. Xinrong
proposed protocol works into rounds and cluster head
rotation repeats when the energy of CH goes down to
average energy
.
III.2. EEDCP-TB
J. Yong-xian et al. in [24] proposed a scheme to
improve data aggregation and network performance by
International Review on Computers and Software, Vol. 8, N. 4
1014
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
applying data distribution and load balancing technique
which fulfils the latency requirement of data collection.
Tree construction in J. Yong-xian et al. protocol occurs
through the method of flooding avoidance also to save
node energy it utilizes Cascading Time Scheme (CTS).
To achieve energy balance in the network it considers
the main idea of node energy state parameters during
forwarding node selection and the entire network is
divided into different energy level's threshold.
If sink desires to disseminate information to a group
of nodes of the interested areas in the network then, first
it calls the next-hop forwarding nodes by running Findforwarding algorithm with certain conditions of threshold
energy. The forwarded nodes run again this algorithm to
find next hops until conditions satisfy. In data forwarding
phase, sensor nodes send their sense data to their parent
nodes by following CTS.
To avoid conflict between messages it considers the
delay scheme. One of the major drawbacks of this
routing protocol is the network time synchronization and
delay to find the next hop forwarded nodes with the
required level of energy.
IV.
Performance Analysis Using
Network Model
A range of models have been proposed for WSNs. In
the current study we mainly consider a WSN consisting
of a set of sensor nodes and a BS are scattered in the
network field devoid of isolation.
The network is modelled is represented as fully
connected graph G (U, E, R), where U is the set of all the
nodes denoted by U= { , , …….. } E represents
the set of all connected edges among nodes.
TABLE I
NODE SPECIFIC OFFLINE PARAMETERS
Simulation tool: NCTUns 6.0
Models
Simulation model
Values
Variable
Radio Energy
10pj/bit/
Model
0.0015pj/bit/
5nJ/bit/signal
20-60m
Threshold distance ( )
‘Rx’ power dissipation
15nJ/bit
during receiving data
packet. (
)
‘Tx’ power dissipation
35nJ/bit
during transfer data
packet. (
)
Application
100 bytes
25 bytes
25 bytes
100bits
.
Bit rate
9600bps
2m[bps]
0.035w
Wireless Node
IEEE 802.11b
Number of Nodes
100~200
Sink Position
20~80m
Network
100J
Model
Simulation trial
50 times
Simulation time
127 s
Total no of rounds
200 ~2000
The distance among nodes k and l can be denoted by k
∈ , ( , )≤
where
represents specific distance
threshold and R is the omnidirectional communication
radius of the node. The following assumptions are taken
into account:
- All nodes and BS after deployment are motionless
and located at a specific position near to sensor field.
- Symmetric model is assumed here that means sensor
node A is located within the transmission range of
sensor B and then B is also located within a
transmission range of A.
- All nodes have the same capabilities, transmission
ranges and restricted power resources.
- The sensor nodes periodically monitor their vicinity
and generate observed data after aggregating watched
information in each round send it to the Base Station
via sink for further analysis.
V.
Performance Analysis
Using Radio Model
The energy model used is the same as used by W.
Wang et al. in [25] where to transmit a l-bit data at a
distance d the radio energy expands is given as:
(, )=
+
( )=
·
·
( )+
(, )
+ ·
,+ ∗
·
·
(1)
,
,
<
≥
(2)
,
and
are the parameters of the
transmission/reception circuitry depending on the
distance between the transmitter and receiver.
Free space
and multi-path fading
Channel
model is considered here.
While receiving, the radio expands energy:
()=
= ·
()=
(3)
In addition, we also assumed that the energy
dissipation for data aggregation is represented as
.
and threshold distance is defined as
=
/
.
VI.
Evaluation Analysis
Delay can be defined as the average latency from the
instant that a packet is sent out from a source to that
instant it is received by the sink.
Fig. 2 illustrates that the network depth is inversely
proportional to the delay and delay increases from lower
level to upper level (from end node to sink) due to rise in
number of node tasks such as sensing, data aggregation
efficiency, facing redundant data, maintaining routing
table and unequal distance among nodes also to sink.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1015
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
l bit packet
Transmit
Electronic
s
* l
T X Amplifier
d
l
l
l bit packet
Receive
Electronic
s
Fig. 1. Radio Energy Dissipation Model
Fig. 2. Delay between ECDGP & EECDP-TB
Initially, in the routing phase cluster head in the
protocol proposed by C. Bo and Z. Xinrong transmit the
observed data to their next hop CH, with the lowest
distance and fewest number of cluster members.
However, after a specific time interval cluster head
starts to convey watched information to their next hop
relaying node by considering maximum energy without
taking into account sincere congestion problem.
Thus, sometimes it may cause to increase the distance
among CHs or relaying nodes and node over assignment
in case of entire network data flow.
Our simulation results demonstrate that the protocol
proposed by C. Bo and Z. Xinrong as compared to the
routing protocol proposed by J. Yong-xian et al. has a
smaller amount of delay.
The main reason is that the C. Bo and Z. Xinrong’s
proposed protocol takes into account two algorithms, one
which selects the active nodes among the sleeping nodes
and reduce the network traffic load for a particular event
while on the other hand watched information is conveyed
by taking into account the both multi-hop and multipath
routing from source to destination by taking into account
the idea of relay nodes with high energy. Furthermore,
during cluster formation it considers the minimum
distance between clusters to sink while in J. Yong-xian et
al. protocol, one of the most vital issues caused more
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
delay is the deliberated algorithm.
It runs to find next hop forwarding node runs until
nodes of specific threshold energy are found. On the
other hand in tree construction phase, Parent-child
relation does not consider the exact equal size and
distance among nodes and increases towards BS.
Normalized Routing Overhead- Is contains further
three variants are (i) packet overhead is the number of
routing packets “transmitted” per data packet “delivered”
at the destination, (ii) byte overhead is the number of
bytes of routing packets “transmitted” per data byte
“delivered” at the destination and in the end (iii) network
setup overhead which tells how many control messages
are needed to put a network to be functional.
Each hop-wise transmission of a routing packet is
counted as one transmission.
Although J. Yong-Xian et al. protocol has to face
normalized overhead problems because during tree
construction and data forwarding process more control
messages are needed to satisfy Parent-child's relation for
the network to be put into functional mode and also due
to joint request message are needed to send to avoid
further packet loss with the minimum hop count is less as
compared to C. Bo and Z. Xinrong protocol.
Fig. 3 shows that protocol proposed by C. Bo and Z.
Xinrong apply more message overhead than J. Yong-xian
et al. protocol for setup and routing data packets from an
event area to sink. Basically in C. Bo and Z. Xinrong
protocol two types of cluster formation occur which may
be divided into the first and second level clustering,
respectively.
In the second level clustering for active node selection
of a particular event area needed more messages to
satisfy the coverage area of the network.
During observed information forwarding from an
event area to sink, messages are forwarded through
multi-path and multiple-hop routing which needed more
control message overhead then single-hop. In addition,
due to data redundancy it may cause data packet collision
due to limited buffer size. Thus, the protocol proposed by
C. Bo and Z. Xinrong contains more messages overhead
to set up a network to be functional.
Fig. 3. Normalize routing overhead between EEDCP-TB
& ECDGP
International Review on Computers and Software, Vol. 8, N. 4
1016
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
Normalized routing overhead in both routing protocol
increases as the nodes start to die in the network also due
to increase in network depth.
Packet Delivery Ratio (PDR) or throughput can be
defined as the ratio of the total number of data packets
received successfully to the total number of data packets
generated by source nodes. We can define PDR as:
̇
=
/
(4)
where
shows the number of data packets
received while
illustrates the numbers of
messages send by source.
As shown by in the Fig. 4 packet delivery ratio
decreases as the depth of the network increases.
Although, the packet delivery ratio of the routing
protocol proposes by J. Yong-xian is well though, C. Bo
and Z. The Xinrong’s protocol is more superior in term
of the packet delivery ratio.
For the reason that, during conveying watched
information from source to destination it has to face a
number of problems such as (i) during parent child
relations there is a possibility that a node can be
appointed as a route node containing minimum energy
than the required energy.
In such a case due to a single node failure entire
specific uplink/ downlink data can be lost which can
cause to increase message retransmission in the network
(ii) watched information also may be lost due to limited
buffering capacity of the nodes which are more nearer to
the sink as a result it has to face data packet collision
thus, it reduced the packet delivery ratio. In addition, if a
forwarding node does not have any specific destination
address then entire specific data can also be lost or
delayed while in C. Bo and Z. Xinrong’s protocol during
message forwarding it considers the both multi-hop and
multi-path routing and selects the next hop with the
maximum energy which is more fault tolerant and turn it
increase packet delivery ration however, it has to face the
problem of data redundancy because of sending multiple
copies of a single data.
Congestion occurs when a node receives a packet
more than its capacity also due to inherent shared
wireless link. Fig. 5 shows the congestion management
in C. Bo and Z.
The Xinrong’s protocol is less than J. Yong-xian et al
protocol in term of entire network data flow, while in a
case of specific event data flow it performs superior. In
proposed J. Yong-xian et al protocol entire network is
divided into various node assignments in term of sensing
and carrying information. Observed information about an
event has to be forwarded to the next hop node by
considering node over the assignment with minimum
distance by multi-hop routing.
Although congestion management in C. Bo and Z. The
Xinrong’s protocol is well because messages are
forwarded along with the best path by considering node
depth to sink, however it does not take into account
exactly equal cluster size, which means that some CHs
have maximum number of children while others have
less number of children. Due to limited buffering size,
nodes nearer sink or CH containing more member nodes
has to face more congestion problem. In addition, it also
has to face the problem of data redundancy due to
sending more than one copy of data through multi-path to
sink. A single copy of data can be flowed through
multiple paths without considering the node over
assignment among the nodes which caused to increase
more congestion in the network due to node limited
buffering capacity.
Energy consumption can be defined as the total energy
consumption by sensor nodes over communications. The
congestion, delay, packet delivery ratio and normalize
overhead are the vital issues which directly affect on
node energy. The degradation in the network lifetime is
due to the increase in the number of transmissions and
receptions which increases as the network distance
downwards increases from source to sink. In terms of
energy consumption Fig. 6 makes it clear that C. Bo and
Z. Xinrong’s protocol performs finer than J. Yong-xian
et al protocol. This is due to the reason that C. Bo and Z.
Xinrong’s protocol devours a lesser amount of energy by
eliminating the route discoveries of all the nodes in the
entire network. C. Bo and Z. The Xinrong’s protocol can
save energy by maximizing the number of sleeping nodes
according to the demand of network coverage in a cluster
under the constraint that the remaining nodes can satisfy
the coverage expectation with lesser amount of messages
requirements.
Fig. 5. Congestion management between EEDCCP-TB & ECDGP
Fig. 4. PDR between EEDCP-TB & ECDGP
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1017
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
Fig. 6. Energy consumption between EEDCP-TB & ECDGP
Fig. 7. Network lifetime by using EEDCP-TB & ECDGP.
Furthermore, battery life is divided among the entire
network nodes to balance energy consumption than J.
Yong-xian et al protocol.
While J. Yong-Xian et al. protocol utilizes a proficient
load balancing technique by using node energy state
parameters and further save node energy by utilizes CTS
to avoid message collision, thus reduced the message
retransmission. During forwarding and receiving
message/data nodes are divided into different level of
threshold and nodes with a higher energy level are
selected to convey the watcher information thus, it helps
in network stability as well as appropriate load balancing
in the network.
Table II shows the energy consumption between
ECDGP and EEDCP-TB protocols by considering round
numbers.
In the meanwhile number of 50% nodes died in C. Bo
and Z. Xinrong’s protocol at round number 1340 as
compared to J. Yong-xian et al. protocol as in 1250.
Finally last node died in C. Bo and Z. Xinrong’s
protocol in round 1890 while in J. Yong-xian et al.
protocol round number 1823. This is because of the
reason that algorithm used in C. Bo and Z. The
Xinrong’s protocol is eligible to maintain stability in the
entire network also C. Bo and Z. Xinrong’s protocol
remains by some means stable due to its well load
balancing technique such as taking into account energy
state parameters and data aggregation competence.
TABLE II
ENERGY CONSUMPTION ACCORDING TO ROUND NUMBERS
Energy
Protocol
Numbers of
Number of rounds
(J/node)
rounds
50
ECDGP
680
1030
EEDCP-TB
564
841
ECDGP
1020
1373
70
EEDCP-TB
867
1173
ECDGP
1485
1880
100
EEDCP-TB
1207
1730
Network life time of Wireless sensor network can be
described by using three kinds of metrics are (i) the time
form deployment of the network to the death of the first
node (FND), (ii) the time when a certain percentage of
node alive (PNA) and (iii) the time when all node died.
By the experimental results it has been shown that
Delay, Congestion, PDR, Normalize overhead and
Energy consumption are the key factors which directly
have an effect on Network lifetime.
Fig. 7 has made is clear that in term of network life
time C. Bo and Z. Xinrong’s protocol outperforms the J.
Yong-Xian et al. protocol routing protocol due to a stable
link between nodes, will load balancing of the entire
network and least amount of message retransmission also
it shows that the number of nodes alive in various
rounds. The round number of the first node died in C. Bo
and Z. The Xinrong’s protocol is near about 800 which is
700 in J. Yong-xian et al. protocol.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Nodes
%
-
50
100
TABLE III
NUMBER OF NODE DIED IN VARIOUS ROUND
Protocol
Number of
FND
rounds
ECDGP
700
Y
EEDCP-TB
600
Y
ECDGP
1240
Y
EEDCP-TB
1150
Y
ECDGP
1880
Y
EEDCP-TB
1730
Y
VII.
LND
-
Y
Y
Conclusion
In current research work we evaluate the performance
of cluster and tree based routing protocols under realistic
scenario. Here it has been mainly focused on the energy
constraints of the sensor node. The comparison
simulation result demonstrates that the Normalized
Message overhead, Delay, Congestion and Packet
delivery ratio effect on the sensor lifetime and causes to
degrade the network performance and node energy.
In conclusion, as referring to the Energy Efficient
routing protocol ECDGP has a slower rate in decreasing
energy which is much greater in EEDCP-TB in term of
delay, packet delivery ratio, energy consumption and
network lifetime. As simulation results show that it has
some shortcomings like (i) unequal size cluster formation
and (ii) approximately not all sensor nodes near to an
event area are selected to satisfy close sensing.
Therefore, the future research work will be the
modification of the protocol or designing of a novel
energy efficient routing protocol for the large area
network.
International Review on Computers and Software, Vol. 8, N. 4
1018
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
Update table ()
Appendix
If
Some strength and weaknesses of cluster and tree
based routing protocols according to our philosophy
during literature review are given below in Table A1 and
A2, respectively.
Node → Node
{
Do SND ()
}
ENTIRE ‘ECDGP’ WORKING MECHANISM
Else
ALGORITHM I
PSEUDO-CODE FOR NETWORK INITIALIZATION
Initialize ()
{
Sleep ()
{
}
Sink broadcast (Hello)
}
Node REC (Msg)
}
CONST table ()
Update table ()
}
{
While (Node broadcast & Node
received)
ENTIRE ‘EEDCP-TB’ ROTOCOLWORKING MECHANISM
{
ALGORITHM III
PSEUDO-CODE FOR TREE CONSTRUCTION
& DATA COLLECTION
CONST table ()
Update table ()
Sink flow ()
{
While (energy>=30%)
}
}
}
{
}
Find forwarded node ()
Call tree CONST (Parent-child)
Forwarded request ()
Update table ()
ALGORITHM II
PSEUDO-CODE FOR CLUSTER FORMATION & ACTIVE NODE SELECTION
Initialize ()
}
{
Forwarded node flow ()
{
While (energy>=30%)
{
Find leaf node ()
Call tree CONST (Child-parent)
Forwarded REQ ()
Update table ()
}
Leaf node flow ()
{
Check table ()
Preceding node ()
Fetch info ()
Collect info ()
If
{
t>=i; // i is a specific time interval
Data collect forwarded RES ()
}
Else
{
Forwarded RES ()
}
}
Forwarded RES ()
}
If
{
Event (occur)
Node
(Sense)
Node
Broadcast (Msg)
Update table ()
Else
{
Sleep (node)
}
If
RSSI
> RSSI
{
RSSI
broadcast (Hello)
RSSI
REC (Msg)
If
{
RSSI > RSSI
}
Node
RSSI
SND REQ (JOIN)
REC (ID)
}
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1019
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
TABLE A1
CLUSTER BASED ROUTING PROTOCOLS IN WIRELESS SENSOR NETWORK
Sr No.
1
Protocol Name
MCB
2
ERP
3
MIN-RC
4
Imp-AODV
5
CEDCAP
6
MCEE
7
CTPEDCA
8
PPEECS
9
HRP
10
EACD
11
ECDGP
12
SFRP
13
Chi-Chou
et al Protocol
S. Alizadeh et al.
Protocol
H. K. D.Sarma et
al. Protocol
14
15
16
B. A .Sabrish et al.
Protocol
Strength
 High packet delivery ratio.
 Average energy consumption.
 Handle node mobility.
 Prolong the network lifetime.
 Inter and intra cluster problem
 Prolong the network lifetime
 High packet delivery ratio
 Overload problem in LEACH
 Improve network efficiency
 Minimum delay
 Minimum packet loss
 Balance energy consumption
 High speed data movement
 Distribute energy consumption among
nodes
 Good congestion management
 Less energy consumption
 Minimum delay
 Very fast route finding with
 Improve energy efficiency
 Uniform energy utilization
 Less delay
 Energy efficient
 Less delay
 Less congestion
 Less overhead
 Energy efficient
 Excellent in energy balancing
 High packet delivery ratio
 Less delay
 Congestion management
 Well energy utilization
 Less message overhead
 Congestion management
 High packet delivery ratio
 Less overhead
 Save node energy
 Balance energy consumption






Bottleneck situation
Maintain connectivity
Message overhead
Higher throughput
Congestion
Save network lifetime

Weaknesses
Message Overhead.
Reference
[17]

Expense of stability awareness
[25]




Extra setup overhead
Energy consumption
Overhead
Updating routing table cost
[19]

Overhead
[27]

Congestion management pb.
[28]

Network depth
[29]



Message overhead
Energy consumption
Node depth increases
[30]
[26]
[31]

Poor Congestion management
[32]


Message overhead
Active node distance
[33]


Delay
CH management
[34]

Congestion
[35]




Delay
Congestion
Congestion
Synchronization
[36]

Delay
[37]
[21]
TABLE A2
TREE BASED ROUTING PROTOCOLS IN WIRELESS SENSOR NETWORK
1
Sr No
Protocol Name
TCGR
2
HAT-Mobile
3
STGR
4
FFDA
5
TBRP
6
EEDCP-TB
7
Trickle Tree
8
Iman ALMomani
et al. protocol























Strength
Less congestion Management
Fast data movement
Control node mobility.
Handover latency
Good Congestion management
Save node energy
Balance network energy
High packet delivery ratio
Data aggregation prophecy
A good load balance
Latency
Control node mobility
Maintain connectivity
High packet delivery ratio
Congestion management
Good packet delivery ratio
Data aggregation efficiency
Minimum control overhead
Quick setup management
The packet delivery ratio is good
Congestion management
Good data delivery ratio
Minimum delay
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved




Weaknesses
Overhead
Tree depth
Packet error rate
Updating data table cost
Reference
[12]

Energy consumption
[13]

Delay
[38]

Energy consumption
[9]


Tree depth
Delay
[24]




Can’t check tree depth value
Synchronization problem
Tree depth
Energy consumption
[39]
[15]
[40]
International Review on Computers and Software, Vol. 8, N. 4
1020
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
Acknowledgements
The work is financed by Comsats Institute of
Information & Technology, Pakistan. The authors would
also thank the anonymous reviewers for their valuable
and insightful comments.
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
G. Anastasi, M. Conti, M. Di Francesco, and A. Passarella,
"Energy conservation in wireless sensor networks: A survey," Ad
Hoc Networks, vol. 7, pp. 537-568, 2009.
T. Ma, M. Hempel, D. Peng, and H. Sharif, "A Survey of EnergyEfficient Compression and Communication Techniques for
Multimedia in Resource Constrained Systems," Communications
Surveys & Tutorials, IEEE, vol. PP, pp. 1-10, 2012.
C. Alippi, R. Camplani, C. Galperti, and M. Roveri, "A Robust,
Adaptive, Solar-Powered WSN Framework for Aquatic
Environmental Monitoring," Sensors Journal, IEEE, vol. 11, pp.
45-55, 2011.
K. Lin, C.-F. Lai, X. Liu, and X. Guan, "Energy Efficiency
Routing with Node Compromised Resistance in Wireless Sensor
Networks," Mobile Networks and Applications, pp. 1-15, 2010.
A. Abedi, "Power-efficient-coded architecture for distributed
wireless sensing," Wireless Sensor Systems, IET, vol. 1, pp. 129136, 2011.
P. Suriyachai, U. Roedig, and A. Scott, "A Survey of MAC
Protocols for Mission-Critical Applications in Wireless Sensor
Networks," Communications Surveys & Tutorials, IEEE, vol. 14,
pp. 240-264, 2012.
Q. Tang and B. Qiao, "An energy-efficient protocol architecture
with multiple clustering for Wireless Sensor Networks," in
Intelligent Computing and Integrated Systems (ICISS), 2010
International Conference on, 2010, pp. 898-901.
L. Hai Van and T. Xueyan, "An Efficient Scheduling Algorithm
for Data Collection through Multi-path Routing Structures in
Wireless Sensor Networks," in Mobile Ad-hoc and Sensor
Networks (MSN), 2010 Sixth International Conference on, 2010,
pp. 68-73.
S. Yan, L. Haiqin, and K. Min Sik, "Energy-Efficient Routing
Protocol in Event-Driven Wireless Sensor Networks," in
Communications Workshops (ICC), 2010 IEEE International
Conference on, 2010, pp. 1-5.
Z. Zusheng and Y. Fengqi, "Performance Analysis of ClusterBased and Tree-Based Routing Protocols for Wireless Sensor
Networks," in Communications and Mobile Computing (CMC),
2010 International Conference on, 2010, pp. 418-422.
Nirupama Bulusu and S. Jha, "Wireless Sensor Networks, A
System Perspective.," © 2005.
T. Mingdong, C. Hongyang, Z. Guoqing, and Y. Jing, "Tree
Cover Based Geographic Routing with Guaranteed Delivery," in
Communications (ICC), 2010 IEEE International Conference on,
2010, pp. 1-5.
L. Chiu-Kuo, L. Chih-Hsuan, and L. Jian-Da, "Steiner trees grid
routing protocol in wireless sensor networks," in Wireless
Communications, Networking and Information Security (WCNIS),
2010 IEEE International Conference on, 2010, pp. 473-477.
A. Niinomi, K. Naito, K. Mori, H. Kobayashi, and M. Ehara,
"Simple Tree Based Routing for Data Collection Networks," in
P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC),
2010 International Conference on, 2010, pp. 535-541.
L. Borsani, S. Guglielmi, A. Redondi, and M. Cesana, "Treebased routing protocol for mobile Wireless Sensor Networks," in
Wireless On-Demand Network Systems and Services (WONS),
2011 Eighth International Conference on, 2011, pp. 164-170.
Mrityunjay Singh, Monika sethi, Niranjan Lal, and S. Poonia, "A
Tree Based Routing Protocol for Mobile Sensor Networks
(MSNs)," Mrityunjay Singh et al / (IJCSE) International Journal
on Computer Science and Engineering,, vol. Vol. 02,, pp. 55-60,
2010.
S. Deng, J. Li, and L. Shen, "Mobility-based clustering protocol
for wireless sensor networks with mobile nodes," Wireless Sensor
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Systems, IET, vol. 1, pp. 39-47, 2011.
[18] S. Ghiasi, A. Srivastava, X. Yang, and M. Sarrafzadeh, "Optimal
energy aware clustering in sensor networks," Sensors, vol. 2, pp.
258-269, 2002.
[19] A. Ghneimat, J. Mellor, and J. Ping, "Adaptive, Cluster Based,
Sensor Network Routing Protocol," in Computer Modelling and
Simulation (UKSim), 2011 UkSim 13th International Conference
on, 2011, pp. 472-476.
[20] D. Baghyalakshmi, J. Ebenezer, and S. A. V. Satyamurty, "Low
latency and energy efficient routing protocols for wireless sensor
networks," in Wireless Communication and Sensor Computing,
2010. ICWCSC 2010. International Conference on, 2010, pp. 1-6.
[21] H. K. D. Sarma, A. Kar, and R. Mall, "Energy efficient routing
protocol for Wireless Sensor Networks with Node and Sink
mobility," in Sensors Applications Symposium (SAS), 2011 IEEE,
2011, pp. 239-243.
[22] C. Bo and Z. Xinrong, "An Energy-Efficient Cluster-Based Data
Gathering Protocol for Wireless Sensor Networks," in Wireless
Communications Networking and Mobile Computing (WiCOM),
2010 6th International Conference on, 2010, pp. 1-5.
[23] M. Liu, H. G. Gong, Y. C. Mao, L. J. Chen, and L. Xie,
"Distributed energy-efficient data gathering and aggregation
protocol for wireless sensor networks," Ruan Jian Xue
Bao/Journal of Software, vol. 16, pp. 2106-2116, 2005.
[24] J. Yong-xian, C. Feng-zhen, C. Gao-feng, and H. Wei, "EnergyEfficient Data Collection Protocol for Wireless Sensor Network
Based on Tree," in Wearable Computing Systems (APWCS), 2010
Asia-Pacific Conference on, 2010, pp. 82-85.
[25] W. Wang, B. Wang, Z. Liu, L. Guo, and W. Xiong, "A Clusterbased and Tree-based Power Efficient Data Collection and
Aggregation Protocol for Wireless Sensor Networks," Information
Technology Journal, vol. 10, pp. 557-564, 2011.
[26] B. S. Krishnan, M. Ramaswamy, and A. Nachiappan, "A New
Cluster Based Protocol for Wireless Sensor Networks," in
Information Science and Applications (ICISA), 2011 International
Conference on, 2011, pp. 1-8.
[27] W. Wang, Z. Liu, B. W. X. Hu, L. Guo, and W. Xiong and C.
Gao, . , "CEDCAP: Cluster-based energy-efficient data collecting
and aggregation protocol for WSNs.. Res. J. Inform. Technol., 3:
93-103.," 2011.
[28] T. Qi and Q. Bing, "An energy-efficient protocol architecture with
multiple clustering for Wireless Sensor Networks," in
Proceedings - 2010 International Conference on Intelligent
Computing and Integrated Systems, ICISS2010, 2010, pp. 898901.
[29] A. Rajeswari, P. T. Kalaivaani, A. Abraham, J. L. Mauri, J. F.
Buford, J. Suzuki, et al., "Energy Efficient Routing Protocols for
Wireless Sensor Networks Using Spatial Correlation Based
Collaborative Medium Access Control Advances in Computing
and Communications." vol. 192, ed: Springer Berlin Heidelberg,
2011, pp. 143-156.
[30] M. Khulbe, P. Srivastava, and R. C. Jain, "Parametric protocol for
energy efficient cluster head selection (PPEECS) in WSNs," in
2010 16th Asia-Pacific Conference on Communications, APCC
2010, 2010, pp. 200-203.
[31] M. Zeynali, A. Mollanejad, and L. M. Khanli, "Novel hierarchical
routing protocol in wireless sensor network," Procedia Computer
Science, vol. 3, pp. 292-300, 2011.
[32] J. Yu, Y. Qi, G. Wang, and X. Gu, "A cluster-based routing
protocol for wireless sensor networks with nonuniform node
distribution," AEU - International Journal of Electronics and
Communications, vol. In Press, Corrected Proof, 2011.
[33] B. C. a. X. Zhang, "An Energy-Efficient Cluster-Based Data
Gathering Protocol for Wireless Sensor Networks," in Wireless
Communications Networking and Mobile Computing (WiCOM),
2010 6th International Conference on, 2010, pp. 1-5.
[34] K. Subbu and L. Xinrong, "SFRP: A selective flooding-based
routing protocol for clustered wireless sensor networks," in Radio
and Wireless Symposium (RWS), 2010 IEEE, 2010, pp. 380-383.
[35] K. Chi-Chou, W. Jun, and C. Shih-Chieh, "Energy efficient
clustering communication protocol for wireless sensor network,"
in Advanced Communication Technology (ICACT), 2010 The 12th
International Conference on, 2010, pp. 830-833.
International Review on Computers and Software, Vol. 8, N. 4
1021
M. Faheem, Zia Ud Din, M. A. Shahid, S. Ali, B. Raza, L. Sakar
[36] S. Alizadeh and A. Ghaffari, "An Energy-efficient hirerchical
Clustering protocole in wireless sensor networks," in Computer
Science and Information Technology (ICCSIT), 2010 3rd IEEE
International Conference on, 2010, pp. 413-418.
[37] B. A. Sabarish and K. SashiRekha, "Clustering based energy
efficient congestion aware protocol for Wireless Sensor
Networks," in Emerging Trends in Electrical and Computer
Technology (ICETECT), 2011 International Conference on, 2011,
pp. 1129-1135.
[38] H. Inanlou, K. S. Shourmasti, H. Marjani, and N. A. Rezaei,
"FFDA: A tree based energy aware data aggregation protocol in
wireless sensor networks," in Wireless Information Networks and
Systems (WINSYS), Proceedings of the 2010 International
Conference on, 2010, pp. 1-5.
[39] W. Bober, L. Xiaoyun, and C. Bleakley, "TrickleTree: A
Gossiping Approach to Fast Staggered Scheduling for Data
Gathering Wireless Sensor Networks," in Sensor Technologies
and Applications (SENSORCOMM), 2010 Fourth International
Conference on, 2010, pp. 214-219.
[40] Iman ALMomani, Maha Saadeh, Mousa AL-Akhras, and H. A.
Jawawdeh, "A Tree-Based Power Saving Routing Protocol for
Wireless Sensor Networks," International Journal Of Computers
And Communications, vol. 5, 2011, 2011.
Authors’ information
Muhammad Faheem received the B.Sc.
Computer Engineering degree in 2010 from the
Department of Computer Engineering at the
University College of Engineering &
Technology, Bahauddin Zakariya University
Multan, Pakistan. In 2012, he received an MS
degree in Computer Science from the Faculty of
Computer Science and Information System at
Universiti Teknologi Malaysia. He is currently serving as a lecturer in
Computer Science Department, Comsat Institute of Information and
Technology Vehari Campus, Pakistan. His research interests include
the areas of Energy Efficient Routing in Wireless ad-hoc and Sensor
Network.
E-mail: smfaheem@ymail.com
Ziauddin is working as an Associate Professor
in Computer Science Department at Comsats
Institute of Information & Technology, Vehari
Campus (COMSATS), Pakistan. His area of
research includes Software Engineering,
Software Process Improvement, Software
Reliability Engineering, Software Development
Improvement, Software Quality Assurance,
Requirement Engineering and Routing Algorithms in Sensor Networks.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Muhammad Anwar Shahid received his M.Sc.
Degree in Computer Science from University of
the Punjab, Lahore, Pakistan in 2004. He is
working as a lecturer at Department of
Computer
Science
and
Management
Information Systems, Oman College of
Management and Technology, Oman. His
research interests include the areas of Energy
Efficient routing in wireless ad-hoc networks.
Saqib Ali received his B.Sc. Engineering in
2000, M.Sc. Computer Science in 2003, and M.
Phil in Communication & Networks in 2005
from University of Agriculture Faisalabad
(UAF), Pakistan. In 2004, he appointed as an
Assistant Network Engineer at UAF-Pakistan.
Since 2005, he is working as a lecturer in the
Department of Computer Science, UAFPakistan. Currently, he is a PhD candidate in the faculty of Computer
Science and Information Systems, Universiti Teknologi Malaysia,
Malaysia. His research interest includes cross layer optimization, multi
channel multi radio wireless mesh networks and resource management
in wireless communication systems.
Basit Raza received the Master in Computer
Science degree in 2008 from the Department of
Computer Science at the University of Central
Punjab, Lahore, Pakistan. He is pursuing PhD in
Computer Science degree from International
Islamic University, Islamabad, Pakistan. He
conducted PhD research in Soft Computing
Research Group (SCRG), Computer Science
and Information System at Universiti Teknologi Malaysia. Currently he
is working as Lecturer in COMSATS Institute of Information
Technology, Islamabad, Pakistan. His research interests include the
areas of Energy Efficient routing in wireless ad-hoc and sensor
network.
Leyla Sakar received her B.Sc. Software
Engineering degree in 2012 from the Faculty of
Computer Science and Information systems at
Universiti Teknologi Malaysia. Currently she is
pursuing her Master’s degree in Software
Engineering from University Teknologi
Malaysia (UTM). Her research interests include
the areas of Artificial Intelligence, Optimization
techniques and sensor network algorithm designing.
International Review on Computers and Software, Vol. 8, N. 4
1022
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
A Wavelet Based Scheme for Video Watermarking
M. Sundararajan, G. Yamuna
Abstract – In rapid growth of network distributions of images and video, there is an urgent need
for copyright protection against pirating. Different digital image and video watermarking schemes
have been proposed to address this issue of ownership identification. This paper proposes a novel
scheme for video watermarking scheme using discrete wavelet transform to protect the copyright
of digital images. The efficiency of the proposed video watermarking technique is attained by two
major steps: 1) Watermark embedding process and 2) Watermark extraction process. Before
embedding the watermark into the digital video, the input video sequence is segmented into shots
using well known shot segmentation technique. The segmented video shots are partitioned into
number of frames for the embedding process. The proposed method renders the utilization of the
grayscale image as a watermark to embed into the digital video sequence. The grayscale image is
sliced into bit planes for analyzing the each bit of the image. Subsequently, the sliced bit plane
images are permuted and each permuted watermark images are embedded into each frame of the
segmented shots with the aid of the watermark embedding process. Then the recovery of the
watermark is achieved with the help of the watermark extraction process. The experimentation
results shows that the proposed video watermarking scheme provide better results with higher
accuracy. The proposed scheme is robust against the various attacks such as frame dropping,
frame averaging attack. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Digital Video Watermarking, Discrete Wavelet Transform, Embedding, Extraction,
Copyright Protection
Nomenclature
DCT
FFT
DWT
SVD
HVS
PSNR
NC
Discrete Cosine Transform
Fast Fourier Transform
Discrete Wavelet Transform
Singular Value Decomposition
Human Visual System
Peak Signal to Noise Ratio
Normalized Correlation
I.
Introduction
Copyright dilemma has taken place throughout the
multimedia industry and especially in the audio-video
industry as a result of the increasing problem of
unauthorized copying and distribution of digital video
with the development of digital video-based application
technologies, like Internet video, wireless video,
videophones, and video conferencing.
Several methods to tackle the problem of illegal
duplication and tampering of digital video have been
offered by large number of proposed researches and
technologies [1]-[4]. Digital watermarking that has seen
rapidly advancing in recent times can provide a solution
to this problem [5]. Watermarking has been widely used
in ownership protection, authentication, and content
integrity confirmation of intellectual property in digital
form [6].
Manuscript received and revised March 2013, accepted April 2013
Watermarking can be described as the process of
embedding data into multimedia items like images,
audios and videos [7] and [8]. Later this embedded data
can be obtained from, or identified in, the multimedia
element for diverse objectives like copyright protection,
access control, and broadcast monitoring [9].
Particularly, small copyright information known as
watermark is embedded by the video watermarking
techniques in the digital video in such a manner that the
watermark is indistinguishable and robust against
attempts of degrading and detaching it from the digital
object [10]. Watermarking and watermarking techniques
can be classified according to the different methods they
employ [11]. The two different types of digital
watermarks predominantly utilized in the literature are
visible and invisible watermarks [12]. Watermarking can
be categorized into non-blind, semi-blind and blind
methods [13].
Modern digital watermarking methods concentrate on
image and video copyright protection [14] [43-46]. The
illicit duplicating and evidence of ownership problems as
well as manipulations detection have been addressed by
several proposed robust and fragile video watermarking
methods [15]. Normally, compressed domain method is
more practical because majority of video sequences are
stored in compressed format, Image watermarking rather
than videos are employed by significantly more number
of existing watermarking research literature.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1023
M. Sundararajan, G. Yamuna
However, video information should be protected with
higher priority because they are even more valuable [16].
The complexity and adjustability of the solution space
for the watermarking of video is remarkably greater than
that of images because of the existence of time
dimension even though video streams in the raw form are
ordered sets of image frames, [17]. An extremely
challenging and interesting task towards protecting real
time video data is the video data embedding approach
[18]. Several features are considered necessary not only
in the watermarking process but also the watermark for
digital watermarking of videos. These necessities are
imperceptibility, robustness, reliability, interoperability,
and unchanging bit rate [19]-[21].
According to the technique employed to hide the
watermark information bits in the host video, video
watermarking methods can be classified into two major
types; they are spatial domain watermarking and
transform-domain watermarking [22]. Spatial-domain
watermarking methods embed and detect watermark by
modifying the spatial pixels values (luminance,
chrominance, color space) of the entire video frame. On
the other hand spatial pixel values of the host video are
modified according to a pre-determined transform by the
transform-domain techniques. Transforms such as
Discrete Cosine Transform (DCT), the Fast Fourier
Transform (FFT), the Discrete Wavelet Transform
(DWT), and the Singular Value Decomposition (SVD)
are predominantly used.
Transform-domain watermarking techniques spread
the watermark in the spatial domain of the video frame
making it extremely difficult to detach the embedded
watermark and are verified to be more robust and
imperceptible than the spatial domain techniques [23],
[24]. Certain issues not present in image watermarking
exist in video watermarking.
Video signals are extremely vulnerable to pirate
attacks, such as frame averaging, frame dropping, frame
swapping, statistical analysis etc., because of the huge
quantities of data and inbuilt repetition between frames
[25].
II.
Literature Survey
Origin of the present investigation in the area of video
watermarking is from the following references:
Reyes R. et al. [26] have presented a public video
watermarking algorithm, a visibly identifiable binary
pattern, such as owner's logotype has been embedded by
their method. After separating the video sequences into
distinct scenes, the scene blocks have been selected at
random and the binary watermark pattern has been
embedded into their Discrete Wavelet Transform (DWT)
domain. The binary watermark pattern has been mapped
to a noise like binary pattern by employing a chaotic
mixing method to improve he security of their proposed
method. The watermark has been proved to be invisible
and robust to several attacks by means of simulation
results.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Gandhe et al. [27] proposed a system based on
Discrete Wavelet Transform to perform invisible
watermarking. Invisible watermarking has been
performed by replacing the alternate pixel values of the
host video with the pixel values of watermark
video/image. A method of forensic analysis has been
offered by this kind of watermarking to cope with media
piracy. Robustness to geometric attacks like rotation,
cropping, contract altercation, time editing has been
offered by their video watermarking method without
affecting the security of the watermark.
K. Ait Saadi et al. [28] have proposed a grey-scale
pre-processing and robust video watermarking algorithm
in the emerging video coding standard H.264/AVC for
copyright protection. A Hadamard transform has been
employed to transform the watermark and then it has
been adjusted to fulfill the H.264/AVC computational
constraints before embedding it into video data in the
compressed domain. Good visual quality maintained for
the watermarked sequences by the approach has resulted
in good robustness and high capacity of embedding. The
ability of the algorithm to embed watermark in short
video sequences and its robustness towards attacks like
re-compression by the H.264 codec, transcoding, and few
general processing have been proved by means of
experimental results.
Xinghao Jiang et al. [29] have presented an efficient
video watermarking method by adjusting the third
decoded luminance differential DC component in all
chosen macro blocks. Binary dither modulation with
adjustable quantization step has been used to implement
the modification. They have based their proposed method
on the finding that luminance differential DC
components inside a block are normally space correlated
and utilized properties of human visual system (HVS).by
modifying the quantization step according to neighboring
differential components. They have proved that it can be
implemented with improved visual quality by means of
experimental results.
Kareem Ahmed et al. [30] have proposed a 2-level
Discrete Wavelet Transform decomposition of each RGB
video frame component dependant video watermarking
method. Independent watermarks have been embedded
into separate shots by their method. The shots have been
matched to watermarks by means of a genetic algorithm.
Based on a key, any one of the HL1 of red, green or blue
components of each frame has been selected by their
proposed method and the error correcting code has been
embedded into it.
Yan Liua and Jiying Zhao [31] have proposed a 1D
DFT (one-dimensional discrete Fourier transform) and
Radon transform based video watermarking algorithm.
An ideal domain which obtains the temporal
information without losing the spatial information has
been generated by the 1D DFT for a video sequence. A
fence-shaped watermark pattern has been embedded in
the Radon transform domain of the frames with highest
temporal frequencies which they have selected with
comprehensive analysis and calculation.
International Review on Computers and Software, Vol. 8, N. 4
1024
M. Sundararajan, G. Yamuna
The adaptive embedding strength for diverse locations
has preserved the reliability of the watermarked video.
Jing Zhang et al. [32] have proposed a video
watermarking method of the modern video coding
standard H.264/AVC. For copyright protection, 2-D 8-bit
watermarks like precise company trademarks or logos
can be utilized as inconvertible watermark.
A grayscale watermark pattern has been embedded
into the video data in the compressed domain after it was
altered to satisfy the H.264/AVC computational
constraints. The robustness of the algorithm to withstand
Transco ding process and strong common signal
processing attacks, like bit-rate reduction, Gaussian
filtering and contrast enhancement has been proved by
experimental results.
Patrizio Campisi et al. [33] have proposed a video
watermarking method working in the three-dimensional
discrete wavelet transform (3D DWT) based on the use
of an innovative video perceptual mask, employed in the
3D DWT domain. Especially, their method has involved
splitting of video sequence into spatial-temporal
elements of fixed length. Then a one level 3D DWT has
been employed on the video shots. They have achieved
tradeoff between the mark robustness and its
imperceptibility by using a multiplicative method that
uses a perceptual masking on the 3D DWT coefficients
to embed the mark. The spatial-temporal contrast
sensitivity function, the luminance, and the variance of
the 3D sub bands which host the mark have been used by
the proposed mask to allow for the spatial-temporal
frequency content.
In this paper, we have presented an efficient video
watermarking technique using discrete wavelet transform
to protect the copyright protection of digital images. We
have introduced a watermarking procedure to embed a
grayscale image into the digital video. Initially, the input
video sequence is segmented into the non-overlapping
units called shots using well known shot segmentation
technique. The segmented video shots are partitioned
into limited number of frames for the embedding process.
We have utilized the grayscale image as a watermark to
embed into the digital video sequence. Initially, the
grayscale image is sliced into bit planes for analyzing the
relative importance played by each bit of the image.
Subsequently, the sliced bit plane images are permuted to
enhance the security of the watermark image.
Then, each permuted images are embedded into each
frames of the segmented shots with the aid of the
watermark embedding process. Subsequently, the
recovery of the watermark is achieved with the help of
the watermark extraction process. The results obtained
from the experimentation shows that our proposed video
watermarking techniques provide better results with
higher accuracy.
The organization of the paper is as follows: The
proposed efficient video watermarking technique using
discrete wavelet transform is detailed in Section 3. The
experimental results and discussion is provided in
Section 4. Finally, the conclusions are summed up in
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Section 5.
III. Proposed Methodology
for Video Watermarking
The proposed video watermarking scheme consists of
two stages:
1) Watermark Embedding process
2) Watermark Extraction process
III.1. Watermark Embedding Process
Before embedding watermark pixels into the input
video sequences, the following process should carried
out to enhance the security of the hiding information as
well as to improve the efficiency of our proposed
approach. The process includes:
 Shot segmentation of video sequences.
 Bit plane slicing of grayscale image.
 Pixel permutation.
 Decomposition of image using DWT.
i) Shot segmentation of video sequence
The fundamental task for performing the video
processing application like video indexing, video
summarization, video watermarking and video retrieval
is video shot segmentation. The original input video
sequence is first segmented into non-overlapping units,
called shots that depict different actions. Each shot is
characterized by no significant changes in its content
which is determined by the background and the objects
present in the scene. Numerous researches are available
in the literature for video shot segmentation using several
techniques. Here, proposed method uses Discrete Cosine
Transform and correlation measure to identify the
number of frames involved in each shot. The first and
second frame is divided into a set of blocks and DCT is
applied to every block of the frame.
The two-dimensional DCT for an input image X and
output image Y can be defined as:
  2m  1 p 

2M

Ypq   p q   

  2n  1 q
m 0 n 0 
 cos

2N


0  p  M 1 0  q  N 1

M 1 N 1  X mn
cos
(1)
where:
1 / M ,
p  
 2 / M ,
1 / N ,
q  
 2 / N ,
p0
1  p  M 1
(2)
q0
1  q  N 1
Then, the correlation coefficient is computed in
between the frame 1 and 2 using the following formula:
International Review on Computers and Software, Vol. 8, N. 4
1025
M. Sundararajan, G. Yamuna
  X mn  X Ymn  Y 
m
r



n
(3)
2




  X mn  X   Ymn  Y 
m
n
m
n
2



where:
X  mean  X  , and Y  mean Y 
After finding the correlation for the first and second
frame, the same procedure is repeated for the consecutive
frames presented in the video. Then, the frames within a
shot can be identified by maximizing the cross
correlation term which gives a measure of the degree of
similarity between two frames of video.
iv) Decomposition of image using DWT
Wavelets are functions defined over a finite interval
and having an average value of zero. The basic idea of
the wavelet transform is to represent any arbitrary
function as a superposition of a set of such wavelets or
basis functions [37]. The basic idea of the wavelet
transform is to represent a function as a superposition of
a set of such wavelets. These wavelets are obtained from
a single mother wavelet, multiplicative scaling and
translational shifts [38]. The sequences of n real
numbers x1 , ,xn are transformed into j sequences of
k real numbers by the DWT according to the formula:

 x  t  jk  t  dt
W jk 
(4)

ii) Bit plane slicing of grayscale image
Bit-Plane Slicing is a technique in which the image is
sliced at different planes. Instead of highlighting gray
level images, highlighting the contribution made to total
image appearance by specific bits might be desired. For
example the image is composed of 8 bits, 1-bit planes
ranging from bit 0 to7. In terms of 8-bits, plane 0
contains all lowest order bits comprising the pixels in the
image and plane 7 contains all high order bits [34].
Often by isolating particular bits of the pixel values in
an image we can highlight interesting aspects of that
image. The higher-order bits usually contain most of the
significant visual information and the lower-order bits
contain subtle details [35]. The advantage of following
this method is to utilize the relative importance played by
each bit of the image. Fig 1 shows the Bit plane slicing
concept.
where:
 jk  t  
 t  b jk

a jk  a jk
1




(5)
where  is the mother wavelet and a and b are the
scaling and shifting parameters.
Watermark Embedding steps
Input: Original video sequence Ov i, j  , Grayscale
watermark image WI i, j 
Output: watermarked video sequence Wv i, j 
1) Segment the original input video sequence Ov i, j 
into number of non-overlapping shots S s i, j  using
shot segmentation technique. Then, identify the
number of frames Fp i, j  involved in each
segmented shots S s i, j  for embedding purpose.
2) Slice the grayscale watermark image WI i, j  into 8
bit planes S I i, j  using bit plane slicing.
3) Permute the sliced images S I i, j  using pixel
permutation technique to obtain the permuted
grayscale image PI i, j  .
Fig. 1. Bit plane slicing
4) Extract the blue components BFp i, j  of all the
iii) Pixel permutation
After the bit plane slicing process, the sliced images
are allowed to permute each pixel value to enhance the
security of the hiding information. In this scheme, each
group of pixels is taken from the image.
The pixels in the group are permuted using the key
selected from the set of keys. The size of the pixel group
is same as the length of the keys, and all the keys are of
same length. If the length of the keys is more than the
size of pixel group, the perceptual information reduces.
In this, the group of pixels is taken along the row
without the loss of generality. The column wise
procedure would yield same kind of results [36].
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
partitioned frames for embedding the each sliced
image S I i, j  into the blue components of each
frame.
5) Decompose the blue components BFp i, j  of each
partitioned frame Fp i, j  into four sub-bands such
as HH, HL, LH and LL with the aid of the DWT to
attain the transformed T f i, j  frames.
6) Choose the low frequency sub-bands (HL, LH) from
the transformed frames to embed the permuted
grayscale image PI i, j  .
International Review on Computers and Software, Vol. 8, N. 4
1026
M. Sundararajan, G. Yamuna
7) Find the similarity matrix of the permuted image
PI i, j  to embed into the chosen sub-bands. The
 
maximum value max E p and embed the modified
value:
upper part U p of the similarity matrix is embedded
if E p  i   0 then
(10)
into the HL sub-band and the lower part L p of the
similarity matrix into the LH sub-band.
8) The HL and LH sub-bands used to embed the
permuted watermark image are divided into four parts
as per the similarity matrix. The lower part
E p  x, y  of the similarity matrix of the HL and LH
bands is chosen for embedding the two similar parts
of the watermark image.
9) In the HL sub-band, the upper part U p of the
similarity matrix is embedded with the following
 
steps: Calculate the mean value mean E p and the
 
maximum value max E p
of the chosen embedding
part E p :
n
   E p i 
mean E p 
(6)
E p  x, y   Abs  E p  i  


(11)
else:
 
E p  x, y   E p  i   max E p
(12)
end if.
11) Similarly, the lower part L p of the similarity matrix
is embedded into the LH sub-band. Also, each
permuted image is embedded into all the frames of
every shot.
12) Divide all the embedded frames with the embedding
strength to enhance the quality of the image.
13) Map the modified sub-bands into its original position
and apply the inverse discrete wavelet transform to
attain the watermarked video sequence Wv i, j  .
The block diagram of the watermark embedding
process is shown in Fig. 2.
i 1
10) Embed the watermark pixels 0 or 1 in a zig-zag
manner in the chosen embedding part, since the
watermark is the grayscale image. The two cases for
embedding the watermark image pixels are as
follows:
Case 1: for embedding the watermark pixel ‘1’.
The values in the embedding part E p  x, y  are
 
compared against the maximum value max E p and
modified as follows: If the value in the chosen
embedding part is greater than 1, take the absolute value
and embed the same. Otherwise, if the value in the
embedding part is lesser than the 1, add the
corresponding pixel with the maximum value and embed
the modified value:
if E p  i   1 then
(7)
Fig. 2. Watermark Embedding process
E p  x, y   Abs  E p  i  


(8)
else
 
E p  x, y   E p  i   max E p
(9)
end if.
III.2. Watermark Extraction Process
After embedding the grayscale watermark image
pixels into the original video sequence, we have
extracted the embedded watermark image without
affecting the original video.
Watermark Extraction steps
Input: watermarked video sequence Wv i, j  , size of
Case 2: for embedding the watermark pixel ‘0’.
If the value in the embedding part E p  x, y  is lesser
the watermark image.
Output: recovered watermark image WI i', j' 
than the 0, take the absolute value and embed the same.
Otherwise, if the value in the embedding part is greater
than the 1, subtract the corresponding pixel with the
1) Segment the watermarked video sequence Wv [i, j ]
into a number of non-overlapping shot S s [i ' , j ' ]
using the shot segmentation technique. Then, identify
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1027
M. Sundararajan, G. Yamuna
the number of frames F p [i ' , j ' ] involved in each
segmented shots S s [i ' , j ' ] for the extraction process.
2) Extract the blue components B F p [i ' , j ' ] of all the
partitioned frames for extracting the embedded
watermark pixels.
3) Decompose the blue components of the frames with
the aid of the discrete wavelet transform into four
sub-bands HH, HL, LH and LL.
4) Select the low frequency sub-bands (HL, LH) from
the transformed frames to extract the watermark
grayscale image.
5) Extract the watermark pixels from the embedding
part in a zig-zag manner from the HL and the LH
sub-bands with the aid of the following steps. If the
embedded pixel value is greater than the mean pixel
value, then the extracted pixel value is one. If it is
lesser, then the extracted pixel is zero:
1 ,

WI i', j'   
0 ,

 
E p  i   mean E p ,
where 0  i  n
(13)
The experimental results are carried out with diverse
video sequences and the grayscale image as the
watermark. The scheme discussed in this paper
effectively embedded the watermark image pixels into
the original video sequence and extracted back from the
watermarked video sequence. The watermarked video
sequences possess superior Peak Signal to Noise Ratio
(PSNR) and visual quality for grayscale watermark
images. The output acquired from the proposed video
watermarking scheme has been evaluated by PSNR and
NC (Normalized Correlation). The visual quality is
evaluated by the PSNR criterion for watermarked video.
The extracting fidelity is computed by the NC value
between the original watermark image and the extracted
watermark image. The results demonstrated that the
competence of proposed approach. The performance of
the proposed video watermarking scheme is evaluated
through two video sample sequences such as Akiyo,
Hall. Figs. 4 depict the results of Akiyo video sequence
of watermark image, watermarked video sequence and
the extracted watermark image. Figs. 5 show the results
of the Hall video sequence.
otherwise
6) Form the matrix with the size of the watermark image
and the extracted pixels are placed in it to attain the
watermark image.
7) Obtain the watermark image WI i', j'  by applying
the reverse process of permutation and bit plane
slicing.
The block diagram of the watermark extraction
process is shown in Fig. 3.
Figs. 4. (a) Input Akiyo video sequence, (b) Watermark image,
(c) Frame Akiyo Watermarked video, (d) Extracted watermark image
Figs. 5. (a) Input Hall video sequence, (b) Watermark image,
(c) Frame Hall Watermarked video, (d) Extracted watermark image
IV.1. Evaluation Results
The formulas used to compute the evaluation metrics
PSNR and NC values are given as follows: The formula
for PSNR value computation is:
PSNR  10 log10
where, I w and I h
Fig. 3. Watermark Extraction process
IV.
2
Emax
 Iw  Ih
  I xy  I *xy 
(14)
 Width and height of the
watermarked image, I xy Original image pixel value at
coordinate  x, y  , I *xy Watermarked image pixel value
Experimental Results
The experimental results of the proposed digital video
watermarking scheme using discrete wavelet transform
are presented in this section.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
2
at coordinate  x, y  , Emax
Largest energy of the image
pixels.
Figs. 6 and 7 depict the PSNR graph of the Akiyo and
International Review on Computers and Software, Vol. 8, N. 4
1028
M. Sundararajan, G. Yamuna
TABLE III
PERFORMANCE EVALUATION OF PSNR IN DB
Video
Proposed
Existing
Sequence
Akiyo
40.12
30.96
Hall
28.86
N.A
Hall video samples respectively. The experimental result
shows that the proposed scheme has higher visual quality
when embedding strength is low.
IV.3. Normalized Correlation
In For image-processing applications, the brightness
of the image and template can vary due to lighting and
exposure conditions. This is typically done at every step
by subtracting the mean and dividing by the standard
deviation.
That is, the cross-correlation of a template,
t  x, y  with a sub-image f  x, y  is:
Fig. 6. PSNR graph of the Akiyo video sequence
  u,v  
Fig. 7. PSNR graph of the Hall video sequence
IV.2. Performance Evaluation
To prove the effectiveness of the proposed scheme the
results are compared with the existing method [40] Table
I shows the PSNR values with different frame number
for the Akiyo video sequence. Table II shows the PSNR
values with different frame number for the Hall video
sequence. The results of the comparative data clearly
demonstrate the efficacy of the present methodology as
evidenced from the PSNR value.
Table III shows the performance evaluation in terms
of PSNR for Akiyo video sequence.
 x,y  f  x, y   f u ,v  t  x  u, y  v   t 
0.5
(15)
2

 f x, y   fu ,v   
 x,y  



2
 t  x  u, y  v   t  
x,y


where:
f is the image, t is the mean of the template, fu ,v is
the mean of f  x, y  in the region under the template.
The NC plot of the Akiyo and the Hall video sample is
shown in Fig. 8.
TABLE I
PSNR VALUES WITH DIFFERENT FRAME NUMBER
(PSNR IN DB)
Video
Frames Embedding
Embedding Embedding
sequence
Strength=1
Strength=5
Strength=10
PSNR
PSNR
PSNR
Akiyo
50
100
150
200
250
300
36.58
39.63
36.63
35.79
35.47
36.74
37.74
39.86
38.57
37.85
36.61
36.34
36.11
37.63
35.92
35.93
34.86
34.33
Fig. 8. NC plot for Akyio, Hall video sequence
IV.4. Robustness Evaluation
To prove the robustness of the proposed scheme the
experimental results are conducted with various attacks
for the Akiyo video sequence.
Frame dropping attack: There is a little change
between frames in shot, so the frame dropping which are
some frames (even index frame) are removed from the
video shot and replaced by corresponding original frames
is used as an effective video watermark attack [40]. NC
values of the proposed method are compared with the
existing technique [40] and [41] for frame dropping
attack. The results are shown in Fig. 9. The current
method displays the better result for frame dropping
attack compared to existing methods. The percentage of
frame dropped is compared with the other two techniques
TABLE II
PSNR VALUES WITH DIFFERENT FRAME NUMBER
(PSNR IN DB)
Video
Frames Embedding Embedding Embedding
sequence
Strength=1
Strength=5
Strength=10
PSNR
PSNR
PSNR
50
26.45
25.19
24.27
100
27.17
25.82
24.89
Hall
150
26.22
25.66
24.73
200
26.563
25.472
24.552
250
25.68
25.34
24.42
300
27.45
25.82
24.9
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1029
M. Sundararajan, G. Yamuna
Normalized correlation
[39] and [42]. The results are presented in Fig. 10.
Frame averaging attack: Frame averaging is also a
significant video watermarking attack that will remove
dynamic composition of the watermarked video [40].
The proposed scheme uses the average of current
frame and its two nearest neighbors to replace the current
frame.
For frame averaging attack, the proposed scheme is
compared with the existing technique [40] and [41] and
the results are documented in Fig. 11. Fig. 12 shows NC
values for number of frame averaging. In frame
averaging attack, the NC values getting better value
when compared with the existing techniques [39].
1
0.8
Fig. 12. Performance Comparison (NC)
0.6
0.4
V.
0.2
This paper proposes a novel scheme for video
watermarking. In the present investigation an efficient
video watermarking scheme using DWT to protect the
copyright of digital video sequence is demonstrated. This
is attaining by watermark embedding and watermark
extraction process.
Experimental results proved that the proposed scheme
is efficient by means of imperceptibility and robustness
against attacks such as frame dropping and frame
averaging.
0
1
2
3
4
5
6
7
8
Number of Frame Dropping
Proposed
Existing(40)
Conclusion
Existing(41)
Fig. 9. NC values for Frame Dropping
References
[1]
Langelaar, G., I. Setyawan, and R. Lagendijk, “Watermarking
Digital Image and Video Data: A State-of-Art Overview”, IEEE
Signal Processing Magazine, Vol.17, pp. 20-46, 2000.
[2] V. Potdar, S. Han, and E. Chang, "A Survey of Digital Image
Watermarking Techniques",In Proceedings of the IEEE
International Conference on Industrial Informatics, pp. 709-716,
2005.
[3] M. Ramkumar and A. Akansu, “A Robust Protocol for Proving
Ownership of Multimedia Content”, IEEE Transactions
Multimedia, Vol. 6, pp. 496-478, 2004.
[4] Lama Rajab, Tahani Al-Khatib and Ali Al-Haj, "Video
Watermarking Algorithms Using
the SVD Transform ",
European Journal of Scientific Research, Vol. 30, No. 3 , pp.
389-401, 2009.
[5] Jun Tian, "Wavelet-based reversible watermarking for
authentication", In proceedings of SPIE, Vol. 4675, pp. 679-690,
2002.
[6] Santi P. Maity and Malay K. Kundu, "An Image Watermarking
Scheme using HVS Characteristics and Spread Transform”, In
proceedings of 17th International Conference on Pattern
Recognition (ICPR'04), Vol. 4, pp.869-872, 2004.
[7] Soroosh Rezazadeh and Mehran Yazdi, "A Non-oblivious Image
Watermarking System Based on Singular Value Decomposition
and Texture Segmentation", In Proceedings of World Academy of
Science, Engineering And Technology, Vol. 13, May 2006.
[8] V. Padmanabha Reddy and S. Varadarajan, "An Effective
Wavelet-Based Watermarking Scheme Using Human Visual
System for Protecting Copyrights of Digital Images",
International Journal of Computer and Electrical Engineering,
Vol. 2, No.1, pp.32-40, 2010.
[9] Cox I. J., Miller, M. L. and Bloom J. A., “Digital Watermarking”,
Morgan Kaufmann Publishers, USA, 2002.
[10] Doerr G. and J. Dugelay, “A Guided Tour to Video
Normalized correlation
Fig. 10. Performance Evaluation (NC)
1
0.8
0.6
0.4
0.2
proposed
0
1
2
3
4
5
6
7
8
Num ber of Fram e Averaging
Proposed
Existing(40)
Existing(41)
Fig. 11. NC for Frame Averaging
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1030
M. Sundararajan, G. Yamuna
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[21]
[22]
[23]
[24]
[25]
[26]
[27]
[28]
[29]
Watermarking”, Signal Processing: Image Communication,
vol.18, pp. 263-282, 2003.
Saraju P. Mohanty, Elias Kougianos and N. Ranganathan, "VLSI
architecture and chip for combined invisible robust and fragile
watermarking", Computers & Digital Techniques (IET), Vol.1,
No. 5, pp. 600-611, September 2007.
Zhe-Ming Lu, Wei-Min Zheng, Jeng-Shyang Pan and Zhen Sun,
“Multipurpose Image Watermarking Method Based on Meanremoved Vector Quantization" Journal of Information Assurance
and Security, Vol.1, No.1, pp. 33-42, March 2006.
Yong C. Kim and Byeong C. Choi, "Two-Step Detection
Algorithm in a HVS-Based Blind Watermarking of Still Images",
In proceedings of Lecturer Notes in Computer Science, SpringerVerlag Heidelberg, Vol. 2613, pp. 235-248, 2003.
Xiang-Yang Wang and Hong Zhao, "A Novel Synchronization
Invariant Audio Watermarking Scheme Based on DWT and
DCT", IEEE Transactions on Signal Processing, Vol. 54, No.
12, pp. 4835-4840, 2006.
Hartung H. and B. Girod, “Watermarking of Compressed and UnCompressed Video”, Signal Processing, Vol. 66, pp. 283-30,
1988.
Fuhao Zou, Zhengding Lu and Hefei Ling, Yanwei Yu,” Realtime video watermarking based on extended m-sequences”, In
Proceedings of IEEE International Conference on Multimedia
and Expo, pp.1561-1564, 2006.
Karen Su, Deepa Kundur, Dimitrios Hatzinakos, "Statistical
Invisibility for Collusion-Resistant Digital Video Watermarking",
IEEE Transactions on Multimedia, Vol. 7, No: 1, pp: 43 - 51,
2005.
Prakash Devale, R. S. Prasad, Amol Dhumane, and Pritesh Patil ,
" Novel Security Strategy for Real Time Digital Videos”, World
Academy of Science, Engineering and Technology, Vol. 46,
pp.81-87, 2008.
Neeta Deshpande, Archana Rajurkar, R Manthalkar, "Review of
Robust Video Watermarking Algorithms", IJCSIS, Vol. 7 No. 3,
pp: 237-246, 2010.
Ji-Young Moon and Yo-Sung Ho, "A Video Watermarking
Algorithm Based on the Human Visual System Properties",
Computer and Information Sciences, Lecture Notes in Computer
Science, Springer, Vol. 2869, pp: 699-706, 2003.
Bhattacharya, S. Chattopadhyay, T. Arpan Pal, "A Survey on
Different Video Watermarking Techniques and Comparative
Analysis with Reference to H.264/AVC", In Proceedings of the
IEEE Tenth International Symposium on Consumer Electronics,
pp.1-6, 2006.
D. Mukherjee, S. Maitra, and S. Acton, "Spatial Domain Digital
Watermarking of Multimedia Objects for Buyer Authentication",
IEEE Trans. Multimedia, vol.6, pp. 1-15, 2004.
M. Herandez, M. Miyatake, and H. Meana, "Analysis of a DFTbased watermarking Algorithm", Proceedings of the IEEE 2nd
International Conference on Electrical and Electronics Eng., pp.
44-47, 2005.
Reddy A. and B. Chatterji, “A New Wavelet Based Logowatermarking Scheme”, Pattern Recognition Letters, Vol. 26, pp.
1019-1027, 2005.
Joo Lee and Sung-Hwan Jung, "A survey of watermarking
techniques applied to Multimedia”, In Proceedings of 2001 IEEE
International Symposium on Industrial Electronics (ISIE2001),
Vol. 1, pp: 272 -277, 2001.
Reyes R., Cruz C., Nakano-Miyatake M. and Perez-Meana
H.,"Digital Video Watermarking in DWT Domain Using Chaotic
Mixtures”, IEEE Latin America Transactions, Vol. 8, No.3, pp.
304 - 310, 2010.
Gandhe S.T., Potdar U. and Talele K.T., "Dual Watermarking in
Video Using Discrete Wavelet Transform", In Proceedings of
Second International Conference on Machine Vision, pp. 216 219, 2009.
K. Ait Saadi, A. Guessoum, A. Bouridane, "Efficient preprocessing watermark for robust video watermarking of
H.264/ AVC", International Journal of Advanced Media
and Communication, Vol. 4, No: 3, pp: 219-234, 2010.
Xinghao Jiang, Tanfeng Sun, Jianhua Li and Ye Yun, "A Novel
Real-Time MPEG-2 Video Watermarking Scheme in Copyright
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
[30]
[31]
[32]
[33]
[34]
[35]
[36]
[37]
[38]
[39]
[40]
[41]
[42]
[43]
[44]
[45]
[46]
Protection", Digital Watermarking, Lecture Notes in Computer
Science, Vol: 5450, pp: 45-51, 2009.
Kareem Ahmed, Ibrahim El-Henawy and Ahmed Atwan, "Novel
DWT video watermarking schema ", Machine Graphics & Vision
International Journal archive, Vol. 18, No. 3, pp. 363-380, 2009.
Yan Liua and Jiying Zhao ," A new video watermarking
algorithm based on 1D DFT and Radon transform ",Signal
Processing, Vol. 90, No. 2, pp. 626-639, 2010.
Jing Zhang, Anthony T. S. Ho, Gang Qiu, Pina Marziliano,
"Robust Video Watermarking of H.264/AVC", IEEE
Transactions on Circuits and Systems II: Express Briefs, Vol. 54,
No: 2, pp: 205 - 209, 2007.
Patrizio Campisi and Alessandro Neri, "Perceptual Video
Watermarking in the 3D-DWT Domain Using a Multiplicative
Approach ", Lecture Notes in Computer Science, Vol. 3710, pp.
432-443, 2005.
Gonzalez R.C., Woods R.E., “Digital Image Processing”, Addison
Wesley, 2002
M. Mohammed Sathik, N.Ravia Shabnam Parveen, "Feature
extraction on colored x-ray images by bit-plane slicing
technique", International Journal of Engineering Science and
Technology, Vol. 2, No: 7, pp: 2820-2824, 2010.
A. Mitra, Y. V. Subba Rao and S. R. M. Prasanna, "A New Image
Encryption Approach
using Combinational Permutation
Techniques", International Journal of Electrical and Computer
Engineering, Vol. 1, No: 2, pp: 127-131, 2006.
M. Ezhilarasan, P. Thambidurai, "A Hybrid Transformation
Technique for Advanced Video Coding", Ubiquitous Computing
and Communication Journal, Vol. 3, No: 3, 2008.
Vetterli, M. and J. Kovacevic, Wavelets and Subband Coding.
Prentice Hall, USA, 1995.
Mahesh R. Sanghavi , Dr. Mrs. Archana M. Rajurkar, Prof. Dr.
Rajeev Mathur, Kainjan S. Kotecha ,“A Robust Scheme for
Digital Video Watermarking based on Scrambling of
Watermark,” International Journal of Computer Applications
(0975 – 8887), Vol.35, No.2, December 2011.
A.Essaouabi and F.Regragui, E.Ibnelhaj, “A blind Wavelet-Based
Digital Watermarking for Video” IJVIPNS Vol. 9 No: 9, pp: 471476, 2009.
A.Essaouabi and F.Regragui, E.Ibnelhaj, “A Wavelet-Based
Digital Watermarking for Video” IJCSIS Vol. 6, No.1, pp: 29-33,
2009.
T.Jayamalar and Dr. V. Radha, “Enhanced Nested Video
Watermarking using Wavelets and geometric warping” IJMA,
Vol.3, No.4, pp: 143-157, November 2011.
S. A. M. Gilani, A. N. Skodras, Adaptive Image Watermarking
Using Multiple Transforms, (2007) International Review on
Computers and Software (IRECOS), 2 (6), pp. 653 - 660.
A. Ouled Zaid, A. Makhloufi, A. Bouallegue, C. Olivier, A. NaitAli, Blind Watermarking Integrated to Wavelet Image Coding
Scheme, (2008) International Review on Computers and Software
(IRECOS), 3 (1), pp. 53-61.
J. N. Ellinas, Stereo Image Reversible Watermarking, (2008)
International Review on Computers and Software (IRECOS), 3
(5), pp. 457-464.
A. Sabri, M. Karoud, H. Tairi, A. Aarab, A Robust Image
Watermarking Based on the Empirical Mode Decomposition,
(2009) International Review on Computers and Software
(IRECOS), 4 (3), pp. 360-365.
Authors’ information
Sundararajan Madhavan received the B.E
degree in Electrical and Electronics Engineering
and the M.E degree in Power Systems from
Annamalai University, India in the year 2002
and 2008 respectively. He is currently with the
Department of Electrical Engineering as an
Assistant Professor. His research interests
include
image
processing,
multimedia
applications.
International Review on Computers and Software, Vol. 8, N. 4
1031
M. Sundararajan, G. Yamuna
Yamuna Govindarajan received her B.E.
(Electronics and Communication) Degree from
the Regional Engineering College, Trichy, Tamil
Nadu, and India in 1987. She received her M.E.
(Power Systems) Degree from Annamalai
University in the year 1991. She received hier
Ph.D Degree in Electrical Engg from the
Annamalai University in the year 2010. She has
published many technical papers in national and international
conferences and journals. Currently, she is working as Professor in the
Department of Electrical and Electronics Engineering, Annamalai
University, Tamil Nadu, India. Her areas of interest are digital signal
processing, digital image processing and information security.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1032
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Signature Analyzer Block for Secure Node Entry
C. Navaneethan1, K. Helen Prabha2
Abstract – We address the problem of secure transmission between two or more systems
involved in communication and to overcome those using Hardware and Software co-design. With
the spreading of the Internet and online forums the trusted request for a channel is diminishing
and at the same time safeguarding the data and the channel from intrusion has become an
inevitable requirement. Apart from the concept, the use of the existing secured transmission nodes
tends to travel either toward the theorems of advancements, syllogisms, techniques and algorithms
of the software issues. Hence, data could be protected, via the software & hardware co-design,
from the intruders. The focus is to identify the untrusted nodes in the initial stage itself into the
transmission from the physical and data link layer without using firewalls. Signature-based IDSs
aim to distinguish those events that deviate from the system’s network terms and conditions.
Signature-based schemes (also denoted as misuse-based) identifies the defined patterns, or
signatures, within the examined data and also defends the Distributed denial of service attacks.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Inevitable, Firewalls, Syllogisms, Signature Based IDS, Distributed Denial of Service
I.
Introduction
The Internet and computer networks are exposed to an
increasing number of security threats [1]-[11]. With new
types of attacks appearing drastically, developing
adaptive, flexible and user friendly approaches in
security oriented approaches is a severe challenge.
Intrusions detection systems [3] are systems detect
attacks as they take place. IDSs collect network traffic
and congestion information and make use of this
information to provide security to the network.
Signature-based
network
intrusion
detection
techniques [2] are valuable technology to protect our
systems and networks against intrusions and from the
harmful activities that prevails. It is as shown in Fig. 1.
Signature-based intrusion detection is the most
extensively used threat detection technique. When an
IDS cannot cope up with the congestion and traffic flood
[2], all it can do is to drop packets, therefore, may miss
potential attacks. The focus is to identify the untrusted
nodes in the initial stage itself into the transmission from
the physical and data link layer. Here we use a Software
and Hardware Co-Design which can detect imminent
threats with extremely high success rate by dynamically
and automatically creating and using relevant databases
and maintaining them efficiently, to detect vulnerable
threats. It also provides mechanism to update these small
signatures into the databases at appropriate intervals.
Secured transmission insists the various technical
aspect of self-healing transmission process.
Sony's PlayStation Network, as shown in Fig. 2.
security breach, which includes the theft of user data,
including credit accessing details, is a murky underworld
organized crime in online.
Manuscript received and revised March 2013, accepted April 2013
The attack occurred between April 17, 2011, forcing
Sony to shut down the PlayStation Network.
A group called "The Three Musketeers" released a
secret set of LV0 codes that modified the original set of
codes that is mainly used by the boot loader. This means
that hackers have the rights to peep into the Playstation
user’s accounts at various and multiple times.
The attackers gained "illegal/unauthorized" access to
personal information stored in the Playstation network.
The information that was stolen includes names, credit
card details, log-in and passwords. Then the account
users are compromised by the Playstation authorities.
When Playstation decided to shut down for the repair
work for the existing hacked accounts, the reason found
out was, the account information were mainly stolen
using DDOS attacks [5].
Another incident Iran's nuclear work on 17 January
2011, as shown in Fig. 3 also forces the organizations, to
focus on security related issues and solve the bottleneck
in various aspects.
Israel tested a computer worm aimed at collapsing
Iran’s nuclear centrifuges, and it also happened as per the
predicted plan of Israel. The nuclear plant drifted from
the actual behavior and performed its function
abnormally.
Experts said the Stuxnet worm caused the Iranian
centrifuges to show abnormal behavior added, providing
poor performance. The worm also caused huge loss to
the power plant production and destroyed most of the
efficient working parts.
The increasing number of cyber attacks shows the
importance of providing security at both the fair and the
rare part of the production unit.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1033
C. Navaneethan, K. Helen Prabha
•
•
Stealing/modifying of data by intruders.
Trusted neighbor node detection in the topology.
III. Existing Work
There are many models proposed to avoid the
problems of intrusion but there exists lot deficiencies that
need to be addressed. Signature-based IDS are less prone
to intrusions since the problems due to traffic are very
less. It is highly efficient in identifying the trusted
systems in the network topology.
An Anomaly-Based Intrusion Detection System [6], is
a system for identifying intrusions and misuse of the
channel thus collapsing the system activity. It can be
classified into normal and anomalous. The classification
is based on heuristics, rather than signatures. The
bottleneck prevails in some places and they include the
following:
• For detection to occur correctly, the detailed
knowledge about the accepted communication
behavior need to be developed.
• Often require extensive “training sets” to record the
normal behavior patterns. If the threshold is high than
estimated, it generates false negative alarms.
If the attacks are unfamiliar to the training sets [6]
then the alarms fail to recognize the threats and grant
access to the illegal user. In some cases the real threat as
per the training set too causes false alarms.
Fig. 1. Illustration of Signature Based Intrusion Detection Technique
Fig. 2. PlayStation Network Logo
IV.
Fig. 3. file photo shows the reactor building
of the Bushehr nuclear power plan
II.
Problem Statement
The various factors that count to destroy the security
in the computer networks are increasing steadily. Attacks
made are mostly by unauthorized users. The error cannot
be immediately detected or located. Due to increased
traffic, flooding and congestion occurs [3]. Identifying
the trusted nodes in the Network topology is difficult in
large environment.
There are a number of procedures to make a
environment of transmission to promote security, that is
bit hectic to build upon, it comprises,
• Valid IP address and Hostname Detection.
• Part of unique address to be stored in a database.
• Maintenance of large complementary certificates
generated.
• Use of Better Encryption standards.
• Traffic flooding on the network.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Proposed Model
Using the Hardware and software co-design the
possible errors during the data transmission can be
detected and corrected in the physical layer and data
layer itself. And hence with the modeled co-design the
flexibility is increased and thereby the execution speed
can also be enhanced.
The systems involved in transmission of data process
should be both secure. In a topology of network many
intruders interrupt or modify the actual transmission. So,
first the identification of trusted system should be put
into act. This is done via the Hardware design.
The system which participates in transmission should
be enrolled in the chip beforehand. This is done through
the hostname registration into the chip. If the name
already exists in the chip, the system is considered
trusted, else, un trusted, hence cannot involve in
transmission. as shown in Fig. 4.
The system considered to be authenticated, once the
signature (Hostname) matches with the stored hostnames
in the chip. The indication is provided by glowing Green
light. The untrusted system is indicated by glowing Red
light.
The data requested by the other system is transferred
after it is approved to be trusted and can be authenticated
as shown in Fig. 5. The data is encrypted using DES
algorithm and a key. The data is decrypted by the same
algorithm and key.
International Review on Computers and Software, Vol. 8, N. 4
1034
C. Navaneethan, K. Helen Prabha
Tx
H/W
Anomalous behavior
S/W
E-Mote
Master node
Fault Detection
Encryption
Re- Distribute
T
E
x
n
c
E-Mote
Slave node
K
E
y
Candidate fixes
Fig. 6. Self Healing mechanism
Thus the original and pre-existing format of the data is
regained. It ensures:
 Proactive techniques.
 Debugging and self estimating techniques.
 Runtime protection & containment techniques.
Decryption
H/W
S/W
VI.
Rx
Algorithm Used
VI.1. DES Algorithm
Fig. 4. Proposed Architecture
T
C
The main aim of this algorithm is to created the keys
and then share its key among the users of the algorithm
as shown in Fig. 7.
HOST
1
Slave
N/W
RX
H/
HOST
2
H/W
Slave
TX
IP
Fig. 5. Transmission of Data
V.
V.1.
Related Work
Self Healing Mechanism
Fig. 7. DES Algorithm Mechanism
The concept of self healing mechanism [1] is to
provide security to the data while storing them and also
while sharing them with the external world. The entire
concept is dependable to the computation. And the
recovering mechanisms vary from the inputs given by the
users and the system’s specifications.
Self-healing mechanisms as shown in Fig. 6 stop the
modification of codes by unauthorized persons. It also
ensures the replication of original text in case of
alteration.
These approaches include writing the system’s code in
a “safe” language, and attaching them with legal libraries
that are required. The technique also prevents the
inculcating of false code into the original code
sequences.
The system initially looks for the anomalous behavior
[1] and then if got detected the system is forced to
perform the candidate fixes.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
A separate method known as key Generator [4] is used
and once the key is generated, the corresponding keys are
assigned to the users as per the predefined conditions
Table I shows the features of DES.
TABLE I
FEATURES OF DES
Features
Speed
Deposit of keys
Data block length
Key length
Use of data space
Ciphering & deciphering key
DES
high
needed
64 bits
56 bits
full, 64 bits (264), 8 bytes
same
The Data Encryption Standard (DES) is a symmetrickey block cipher. Since the Hardware implementation
itself performs the security checks, DES is enough to
produce security at all levels. Hence implementation
International Review on Computers and Software, Vol. 8, N. 4
1035
C. Navaneethan, K. Helen Prabha
complexity can be reduced.
VII.
Detector. Finally, the data is displayed in the computer
screen through a software program.
System Requirements
VII.1.
References
Hardware Specification
Chip level programming is done. Registers are also
provided for RHW for getting inputs and for storage of
outputs. The arm board consists of two units.
They are:
• ARM based master node (Server).
• ARM based slave node (Client).
The arm board consisting of the transmitter, receiver
and controller peripheral devices are usually attached to
the processor by mapping their physical registers into
arm memory space or into the coprocessor space or
connecting to another device (a bus) which in turn
attaches to the processor.
Coprocessor accesses have lower latency and some
peripherals are designed to be accessible in both ways
(through memory and through coprocessors). Sometime
the arm board can be act as an interrupt. The arm board
includes the hardware debugging facilities without them.
So it utilizes to find the trust worthy nodes among the
sensor network in the transmission.
VII.2.
Software Specification
The data is transmitted to the client using NETWINZ
software. The data’s encryption and decryption is done
using the same. The software part is wired using LAN
communication. The software part provides the data
security since encrypted data is send via the LAN cable
securely. Thus the Hardware and software provides
Network security and data security respectively.
VIII. Discussion and Conclusion
The hardware and software co-design promotes
flexibility. The hardware is responsible for Signature
checks hence implementation complexity is reduced.
The reconfigurable architecture enables the addition of
new features, allows rapid implementation of new
standards and protocols on an as-needed basis and
protects the investment in computing hardware.
Authentication is performed, so it provides Network
security and also it provides Data security since
encryption is done.
IX.
[1]
Context Switching Semaphore with Data Security Issues using
Self-healing Approach, International Journal of Advanced
Computer Science and Applications, Volume.2, No. 6, 2011.
[2] Dynamic Multi-Layer Signature Based Intrusion Detection
System Using Mobile agents, Department of Information System,
Faculty of Computer Science, Isra University
Pakistan,
International Journal of Network Security & Its Applications
(IJNSA), Vol.2, No.4, October 2010.
[3] Intrusion Detection Systems - Analysis and Containment of False
Positives Alerts, International Journal of Computer App. Volume
5 No.8, August 2010.
[4] A study of DES algorithm with cellular automata, International
Journal of Innovative Management, Information & Production
ISME International ⓒ2011 ISSN 2185-5439 Volume 3, Number
1, March 2012 PP. 10-16 .
[5] A Link Signature Based DDoS Attacker Tracing Algorithm under
IPv6,Future Genertion Communication and Networking(FGCN
2007),Author(s):Xinyu, Xian Jiaotong Univ., Xian Ting ma, VOL
1,6-8 Dec. 2007.
[6] Y.Cliff-S.Tin and C.Boyd,password based server aides key
exchange, In applied cryptography and network security. Fourth
International Conference-ACNS 2006.Springer-Verlag, Volume
3986 of Lecture Notes in Computer Science.
[7] A Fuzzy approach to detect and detect and control congestion in
wireless sensor networks Rekha chakravarthi et al.Indian journal
of computer science and engineering (IJCSE).
[8] Peer to peer Networking and applications based on
B.Zheng,W.C.Lee and D.Lun Lee by Xuemin Shen,H.Yu.Journal
No. 12083.
[9] Design and Implementation of a short message service based on
peer to peer application.Adamu Murtala Zungeru,Ufarna Victoria
Edu,Ambafi James Garba,Computer Engineering and Intelligent
systems.ISSN 2222-1719.Vol 3,No.4,2012.
[10] A cost effective symmetric key Cryptographic Algorithm for
small amount of data.9th International multihop.Vol.2 Conference
Publications, IEEE INMIC 2005, Sarker, Mohammad Zakir
Hossain.
[11] ”Towards self healing in wireless sensor networks.Wearable and
Implantable body sensor networks”, 2009, Sixth International
conference on Sensor Networks.Imperial,London,UK.
Authors’ information
1
B. E., M. E.; Assistant Professor/CSE, (Research Scholar- AUT
Chennai).
E-mail: navaneethan_c@yahoo.com
2
M. E., Ph.D.; Professor, RMD Engineering College, Tamil Nadu.
E-mail: helenprabha@yahoo.com
Future Enhancement
The enhancement can be made for an alternative for
Wired LAN communication establishment. Here the
transmitter sends the data as bit streams along with a
unique code which in turn obtained by the receiver.
The entire transmission is via Infrared Systems. The
send and obtained sequence, both are compared. If the
two sequence resembles the same, the data is obtained to
the receiver. This is done with the help of Sequence
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1036
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Swarm Based Topology Control for Fault Tolerance in MANET
D. Manohari, G. S. Anandha Mala
Abstract – To perform fault-tolerant topology control in mobile ad hoc networks (MANET),
selection of an appropriate transmission power for each node and maintenance of network
connectivity are daunting tasks. Most of the related works have considered either transmission
power or network connectivity and not both simultaneously. In this paper, we propose a swarm
based topology control algorithm for fault tolerance in MANET.
Initially, each node constructs its neighbor set by sending neighbor discovery message to its
neighbors. The forward and backward ants are used to gather and update nodes minimum
transmission power. Meanwhile, each node calculates its interference number and they are
updated in neighbor set table. Before transmitting data to the destination, the source node finds
multiple paths and calculates aggregate transmission power and interference value along each
path. Finally, source chooses the optimal path that satisfies both minimum interference and
minimum transmission power. By simulation, we prove that our work efficiently provide fault
tolerant topology control in mobile ad hoc networks. Copyright © 2013 Praise Worthy Prize S.r.l.
- All rights reserved.
Keywords: Mobile Ad Hoc Networks (MANET), Topology Control, Fault Tolerance, Ant Colony
Optimization (ACO)
Nomenclature
β
γ
d
UDI
UDN
dis (ni nj)
IL
INL
IP
NEI_DIS
twait
CH Trans Power
NS ad
Path loss factor
Constant
Distance between nodes
Unidirectional interference set
Unidirectional interference number
Euclidean distance between ni and nj
Interference set of a link
Interference number of a link
Interference number of a path
Neighbor Discovery
Acknowledgement timer
Chosen transmission power
Neighbor set of node a to the
destination d
E and
PRnr
BT 
BT aa 1
Pheromone entry value
Probability of next hop
Aggregation of local estimates
Time to reach next hop a  1
Time to be sent for the number of
packets in queue at the MAC layer
Time taken by Backward ant to
transmit a packet
Time taken by one hop in unloaded
conditions
Interference number
Transmission power
BT amac
T amac
hop
IN_NUM
TP
I.
I.1.
Introduction
Mobile Ad Hoc Networks (MANET)
A self-governing architecture with group of wireless
mobile nodes is defined as the mobile ad hoc network
(MANET) [1]-[19]. MANET has no fixed infrastructure,
centralized administration and it forms transient network
[1]. Each mobile node can act as a host and a router.
These nodes are free to move randomly in the wireless
links.
Transmission is performed through multiple nodes,
which is known as multihop routing. Since, mobile nodes
are free to move randomly, MANET endure dynamic and
unpredictable topology changes. Due to multihop
behavior and less bandwidth availability, wireless link is
answerable to noise fading and interference. Further,
MANET mobile nodes have less CPU processing
capability and low power storage [2] [17] [18].
MANET has a miscellaneous set of applications. The
set includes military battlefield, cooperative information
sharing, commercial sector and disaster management
such as efforts in fire, disaster relief, flood and
earthquake. Apart from global level, it is well used in
local level namely small aircraft, conference hall and
sports stadium [3].
I.2.
Topology Control
The set of transmission links among pair of nodes
utilized either implicitly or explicitly by routing
mechanism is termed as topology of a network.
Manuscript received and revised March 2013, accepted April 2013
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1037
D. Manohari, G. S. Anandha Mala
Due to dynamic nature of MANET, topology is
subjected to more influences. The influences may be
weather, interference, node mobility, and transmission
power [4]. The process of selecting a suitable
transmission power for each node is called topology
control. While sustaining the network connectivity,
topology
control
mechanism
reduces
energy
consumption and signal interference [5]. Topology
control has many advantages.
First, it determines the energy efficient paths by
conditioning the path with energy efficient properties [6].
Second, topology control lessens the usage of network
resources such as battery power and downgrades the
routing redundancy [4].
I.3.
Topology Control Algorithms in MANET
The transmission power of each node is adjusted by
topology control algorithm. In MANET, topology control
algorithms are broadly categorized into two types,
namely centralized and distributed topology control
algorithms [4]. In centralized topology control algorithm,
an optimum network topology is estimated by
considering location information of nodes in the other
network. The estimation is done by any specific node.
The distributed topology control algorithm maintains
the network connectivity using partial link information
(eg- neighbor count). Connectivity aware and capacity
aware are the two types of distributed topology control
algorithms. The network connectivity is optimized by
connectivity aware algorithm and Capacity aware
algorithm accomplished better capacity by driving down
the network contention.
random movement of nodes requires more energy in
order to obtain energy efficient routes [2]. Further,
multihop nature of ad hoc networks requires
supplementary energy [6].
 Due to dynamic nature of MANET, network topology
is influenced by more factors such as multi channel
communication, directional antennas, transmission
power, weather, and node mobility [4].
I.6.
Ant Colony Optimization (ACO)
The Ant colony optimization (ACO) is constructed by
inspiring foraging behavior of ants. In general, ants
search for food by wandering randomly in the path. Once
ant found its food, it returns to its colony by laying a
chemical substance, which is called pheromone. Group
of ants wander through different possible paths for the
same food. The ants that find food in the shortest path,
strengthens the path with more chemical substance
(pheromone). This helps the other ants to follow the
shortest path [14].
In ACO, two types of ants are used namely forward
ants and backward ant. Forward ant is launched from any
source node to randomly chosen destination node. The
intermediate nodes help and coordinates forward ant to
reach its destination node. The forward node keeps track
of the paths that it has traversed.
On reaching the destination, the forward ant changed
into backward ant. It starts its travel to the source node
by traversing in the reverse path. The backward ant
determines the quality of the path, which is traversed by
forward ant [15].
I.7.
I.4.
Fault Tolerant Topology Control
In MANET, Topology control algorithms lessen the
level of routing redundancy by reducing the number of
links. This makes the networsk more vulnerable to
failure/crashes. Even though failure of nodes is common
in wireless networks, it can be precluded by
incorporating appropriate level of fault tolerance in
topology control algorithms. In the event of breakdown
and over loading, fault tolerance increases the robustness
of the network [7].
I.5.
Issues of Fault Tolerant Topology Control
in MANET
Minimizing energy consumption (Topology Control)
and ensuring fault tolerance are two important issues in
ad-hoc wireless networks. Issues that complicates fault
tolerant topology control are described below:
 Emerging critical applications and increasing number
of failures make a way for more fault tolerant
requirements. Therefore achieving both topology
control and fault tolerant at hand is a fazing task [8].
 Self-governing architecture of MANET allows
mobile nodes to move randomly in the network. This
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Problem Identification
There has been considerable work for fault tolerant
topology control in the literature. In that, most of the
works such as [6] has considered topology control as an
energy-minimizing problem. Less works has considered
topology control and fault tolerant problems
simultaneously.
In [11], Md. Ehtesamul Haque et al. have proposed
fault tolerant interference-aware topology control
protocol. In that, they did not mention any specific
method to choose minimum interference path. Also, the
authors did not enumerate any distinct protocol to
generate topology.
II.
Related Work
Andy An-Kai Jeng et al. [6] have generalized the rneighborhood graph into a more realistic power
consumption model with independent parameter ru to
each node u. For mobile nodes, they have also proposed
an energy efficient maintenance protocol, which is to
reduce the beacon power. Lastly, they have given an
adaptive configuration rule is to configure the parameter
for each node based on the node’s mobility and energy
levels. Their protocol allows each node to decide whether
International Review on Computers and Software, Vol. 8, N. 4
1038
D. Manohari, G. S. Anandha Mala
to support energy efficient routing or conserve its own
energy. Moreover, it can drastically shrink the
broadcasting power of beacon messages for mobile
nodes. Quansheng Guan et al. [9] have presented a novel
Capacity-Optimized Cooperative (COCO) topology
control scheme for MANETs with cooperative
communications. They have formulated the topology
control problem with only channel estimate available in
COCO and they have designed as a discrete stochastic
optimization problem. This discrete stochastic
optimization problem can be solved using a stochastic
approximation approach.
Their approach has considered both upper layer
network capacity and physical layer relay selection. With
their scheme, relay selection is extended to a networkwide behavior considering network capacity. Liang Zhao
et al. [10] have studied the topology control in mobile
wireless ad hoc networks (MANETs). They have defined
a mobility model, namely the constant rate mobile
network model (CRMN), in which they have assumed
that the speed and direction of each moving node are
known.
The goal of their topology control model is to
minimize the maximum power used by any network node
in maintaining a specified monotone graph property.
Network connectivity is one of the most fundamental
monotone properties. Under the CRMN model, they have
developed polynomial time frameworks for solving both
decision and optimization versions of topology control
problems for monotone properties.
Md. Ehtesamul Haque et al. [11] have formulated the
problem of constructing minimum interference path
preserving and fault tolerant wireless Adhoc networks.
They have provided algorithms for both centralized
and distributed with local information, to solve the
problem. Moreover, they have conceived the concept of
fault tolerant interference spanner and provided a local
algorithm, which is used to construct spanner of a
communication graph.
Finally, they have introduced two algorithms namely
centrally constructed minimum interference path
preserving bi-connected topology (CMIBCN), which can
be used for benchmarking purposes. The latter LMIBCN
can be locally constructed which has similar
characteristics of CMIBCN. Structures like LBIS are also
interesting and important since topologies with spanner
properties have useful applications.
Stephen Gundry et al. [12] have analyzed the
convergence of our GA-based topology control
mechanism towards a uniform node distribution.
According to their framework, mobile nodes adapt
their speed and direction using limited information
collected from local neighbors operating in unknown
terrain. Based on their Dynamic System Model (DSM),
they built a homogeneous and ergodic Markov chain to
analyze the convergence of Force based Genetic
Algorithm (FGA) using Dobrushin’s contraction
coefficients. In their algorithm, nodes using shorter
communication ranges require less movement and
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
converge faster. Larger communication ranges
unnecessarily increase neighboring node communication,
making convergence decisions harder and consumes
more energy.
Orhan Dengiz et al. [13] have proposed a new model
to conceptualize an autonomous topology optimization
for mobile ad hoc networks using multiple mobile agents.
Agents have predefined wireless communication
capabilities similar to the other nodes in the MANET;
however, their movements, and thus their locations, are
dynamically
determined
to
optimize
network
connectivity. Further, they have introduced a new
approach to measure connectivity using a maximum flow
formulation. Their approach is both responsive and
tractable. Furthermore, users’ locations are predicted for
several time steps ahead and this is shown to improve
network connectivity over the network operation period.
A particle swarm optimization (PSO) algorithm uses
the maximum flow objective to choose optimal locations
of the agents during each time step of network operation.
III. Fault Tolerant Topology Control
in MANET using Ant Colony
Optimization
III.1. Overview
In this paper, we propose swarm based fault tolerant
topology control mechanism for MANET.
Our mechanism provides topology control in terms of
minimum transmission power and minimum interference.
Initially, after nodes are deployed in the network, each
node constructs neighbor set (NS) table by sending
neighbor discovery message to all its neighbors.
Minimum transmission power used by nodes is
gathered by employing forward and backward ants. This
minimum transmission power is updated in NS by ant
agent. To provide fault tolerant path, each node
calculates its interference number. The estimated
interference number is collected by sending interference
number packet and stored in NS table. Before
transmitting the data packet, the source node selects the
optimal path, which satisfies both minimum interference
and minimum transmission power criteria.
III.2. Estimation of Transmission Power
Transmission power required to transmit a data packet
from node i to node j is [7]:
Trans Power (i, j) = γ × d β (i, j)
(1)
where, γ is a constant, d is the distance between node i
and j, β is the path loss factor, (β ≥2).
III.3. Interference Number Calculation
Number of nodes that hinders the data transmission
between two nodes over a bidirectional path is known as
International Review on Computers and Software, Vol. 8, N. 4
1039
D. Manohari, G. S. Anandha Mala
interference of a link. The interference of a path can be
calculated as follows [11].
Consider network is designed as a communication
graph G (V, E). Where, V represents nodes and E denotes
the link. Let ni, nj, nk … nn-1 be the set of mobile nodes.
During transmission of data from ni to nj, node ni may
interfere the nodes that are nearer to ni and nj.
Unidirectional interference set (UDI) contains the set
of nodes that are interfered by ni’s transmission to nj.
UDI (ni, nj) can be estimated by:
UDI (ni, nj) = {nk ε V | dis (ni, nk) ≤ dis(ni, nj)}
(2)
where, nk is a neighbor node and dis (ni, nj) be the
euclidean distance between ni, nj. Generally, UDI (ni, nj)
and UDI (nj, ni) are not equal due to directional
dependency. UDI (nj, ni ) comprises the set of nodes
interfered by nj while communicating with ni and it can
be symbolized as:
UDI (nj, ni) = {nk ε V | dis (nj, nk) ≤ dis(nj, ni)}
(3)
Unidirectional interference number (UDN) is the
number of nodes that are interfered by the transmission
of ni to nj. The interference set of a link IL (ni, nj) can be
formulated as:
IL (ni, nj) = UDI (ni, nj) U UDI (nj, ni)
(4)
Interference number of a link (ni, nj) is represented as
INL (ni, nj) and it is the cardinality of the set of
interference link (IL). Consequently, INL (ni, nj) ≤ UDN
(ni, nj) + UDN (nj, ni).
The sum of interference numbers of all links along a
path is termed as Interference number of a path (IP). The
interference number of a path P1 is measured as:
n 1
IP  P1 
III.4. Selecting Minimum Transmission Power
and Interference Path
Our proposed technique provides fault tolerant
topology control in MANET in two stages. In first stage,
we use Ant Colony Optimization approach to select
minimum transmission power path between any source
and destination. The second stage chooses fault tolerant
path by finding minimum interference path.
ACK


nj
Each node waits for a time twait to receive ACK
message from all possible neighbors. After the expiration
of twait, it constructs the neighbor set (NS) by retrieving
the information from ACK messages. The NS table
format is given below in Table I.
Node
ID
Sequence
Number
TABLE I
NS TABLE FORMAT
Hop
Chosen
Count
Transmission
Power
(CH Trans Power)
Interference
Number
In the above table, CH Trans Power will be updated
by ant agent and interference number by IN_NUM
packets, which will be discussed in the later sections.
III.4.2. Minimum Transmission Power Path Selection
Using ACO
Nodes in the network, periodically propagates forward
ant (FA) to all neighbors in their NS table. An ant is
originated in the transmission power, which is calculated
using the formula depicted in section 3.2.
This transmission power is termed as chosen
transmission power (CH Trans Power). Each ant consist
of a pheromone table, it enclose three fields as < node id,
sequence number, CH Trans Power >. The design of
pheromone table is shown below in Table II.
Node ID
i 1
NEI _ DIS
nj

ni
(5)
here, Li represents link and IP denotes Interference
number of a path.
III.4.1.
ni
n 1
 INL  Li,Li  1  | IL  Li,Li  1 |
i 1
Nodes that receive NEI_DIS message, sends back the
ACK message. The ACK message holds node id,
sequence number and hop count:
TABLE II
PHEROMONE TABLE
Sequence Number
CH Trans Power
Here, node id represents receiving node id
(Destination), Sequence number is used for monitoring
the replicas of ant packet information, CH Trans Power is
chosen transmission power to reach the destination.
While traversing in the path, the FA checks for the
information, if the pheromone information is available,
the FA, F ds  k  chooses its next hop with the probability,
PRnr [16]:
1
PRnd
 E and 
1
  E bda 
(6)
bNS ad
where, NS ad denotes neighbor set of node a to the
Neighbor Set (NS) Construction
Initially after all nodes are deployed in the network,
each node broadcast NEI_DIS (Neighbor Discovery)
message to discover its neighbors.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
destination node d , E and is the pheromone entry value
which indicates the estimated value. μ1 parameter can
lower the probing behavior of the ant.
International Review on Computers and Software, Vol. 8, N. 4
1040
D. Manohari, G. S. Anandha Mala
The FA on reaching every node in NS, it compares
CH Trans Power with maximum transmission power
(MAX_TRANS_POWER) and finally reaches its
destination. If CH Trans Power is lesser than
MAX_TRANS_POWER, it is converted into backward
ant (BA). Otherwise the ant agent is discarded.
The FA stores a δ list of nodes that it has traversed.
The BA retraces a δ list of nodes to reach the source.
The BA computes the time it would take to transmit a
data packet through δ paths and reach its destination.
This is used to update the NS table. The time estimation
of BA is symbolized below [16]:
Finally, the pheromone entry value is updated as:
E and   E and  1    R ad ,    0 ,1
(11)
whereas,  ,  were commonly set to 0.7 during
experiments.
By reaching the sender node, the BA updates its
pheromone values in NS table. The NS table contains CH
Trans Power for all its neighbor nodes.
An Ant agent based technique for selecting minimum
transmission path is picturized in Fig. 1. Node 2, 3, 4 and
11 denotes the NS of the source node.
n 1
BT  
 BTaa1
(7)
a 1
In the above equation, BT  is the aggregation of local
estimates BT aa 1 of the time to reach next hop
a  1 ,which is calculated in each node a   .
BT aa 1 is the product of the average time estimations
to send a packet BT amac , time to be sent the number of
packets in queue at the MAC layer.
The formulae to estimate BT aa 1 is depicted below:
Fig. 1. Minimum transmission path selection
BT aa 1   P amac  1 BT amac
(8)
III.4.3. Minimum Interference Path Selection
In the fore mentioned equation, BT amac is measured as
a running average of the time difference between the
arrival of a packet at the MAC layer and successful
transmission. Then, BT amac is estimated as:
BT amac   BT amac  1    T amac
To find the minimum interference path, each node
calculates interference number in correspondence with all
nodes in its NS table. The interference number is
calculated using the method mentioned in section 3.3.
Every node sends IN_NUM (Interference number)
packet to its neighbors in the NS:
(9)
ni
This value is estimated at the MAC layer so it
considers local congestion of a shared medium. T amac , is
the time taken by the BA to transmit a packet from node
a    0 ,1 .
When the BA traverses in the reverse path, it updates
the pheromone table entry. The pheromone entry value
E and denotes the running average of the inverse of cost.
Cost is considered in terms of estimated time and
number of hops it required to reach its destination. The
value used to update running average is estimated as:
R ad
 BT ad  h hop 




2


1
(10)
where, hop is the time taken by one hop in unloaded
conditions and it is constant. R ad monitors the time
estimates gathered by the BA and avoids larger
oscillations. It also considers delay and hop count.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
IN _ NUM

Nodes in NS
IN_NUM packet contains two fields < neighbor id,
interference number>. The first field neighbor id contains
the node ids of its neighbors and the second field denotes
interference number of nodes. An example of an
IN_NUM packet is shown in Table III.
TABLE III
AN EXAMPLE OF IN_NUM PACKET
IN_NUM Packet of Node i
Neighbor ID’s
j
k
l
o
r
s
Interference
0
2
3
4
3
5
Number
t
u
6
5
On receiving the IN_NUM packet, the intermediate
node checks for its node id and update its interference
number of that path.
The intermediate node passes the IN_NUM packet to
the next node in the list. If the received node is the last
node of the list, then it updates the packet with its
interference number and pass back to the sender in the
reverse path.
International Review on Computers and Software, Vol. 8, N. 4
1041
D. Manohari, G. S. Anandha Mala
In Table III, when node i transmits data, node k
interferes two nodes, node r interferes three nodes and
node t, u interferes six, five nodes respectively.
Once the sender gets back the IN_NUM packet, it
retrieves the interference value of each node and stores
them in NS table.
III.4.4. Optimal Path Selection
Optimal path from the source s to destination d can be
obtained by relating both interference and transmission
power values of nodes. Optimal path selection process is
portrayed in the following algorithm (algorithm1).
Algorithm 1
Step-1
Each node calculates its transmission power
(described in section 3.2)
Step-2
Each node computes its Interference number
(mentioned in section 3.3)
Step-3
Forward and backward ants are employed to collect
CH Trans Power of nodes
Step-4
Transmission power (TP) of each path is determined
by aggregating the CH Trans Power values of all nodes
in that path:
TP (Pn) = CH Trans Poweri
where, i= 1, 2, 3…n=1, 2, 3…
Step-5
Node’s interference numbers are accumulated by
sending IN_NUM message packets.
Step-6
Interference number (IPn) of each path is calculated
(as per Eq (5))
Step-7
Select the path that satisfies:
Popt= min {TP (Pn)} and min {IPn}
Step-8
The path (Popt) is selected for data transmission form
the source to the destination.
In Fig. 2, nodes 2, 3, 4… 14 are deployed randomly.
P1, P2, P3 and P4 are paths that connect source and
destination. S- 6- 8- D is the optimal path and it satisfies
both minimum transmission power and minimum
interference.
Fig. 2. Optimal path selection
The number of nodes is varied as 20,30,40,50 and 60.
In our simulation, the channel capacity of mobile hosts is
set to the same value: 2 Mbps. We use the distributed
coordination function (DCF) of IEEE 802.11 for wireless
LANs as the MAC layer protocol. The simulated traffic
is Constant Bit Rate (CBR). The following table
summarizes the simulation parameters used:
No. of Nodes
Area Size
Mac
Simulation Time
Traffic Source
Transmit Power
Receiving Power
Idle Power
Initial Energy
Number of Flows
20,30,40,50 and 60.
1000 × 1000
802.11
100 s
CBR
0.660 W
0.395 W
0.035 W
10.3 J
2,4,6,8 and 10
IV.2. Performance Metrics
We compare the performance of our proposed
SwarmFTC with the LMIBCN method [11]. We evaluate
mainly the performance according to the following
metrics:
Packet Delivery Ratio: It is the total number of
packets received by the receiver during the transmission.
Average end-to-end delay: The end-to-end-delay is
averaged over all surviving data packets from the sources
to the destinations.
Average Energy Consumption: The average energy
consumed by the nodes in receiving and sending the
packets.
IV.3. Results
IV. Simulation Results
IV.1. Simulation Parameters
We evaluate our Swarm Based Fault-tolerant
Topology Control (SwarmFTC) technique through NS-2
[17] simulation. We use a bounded region of 1000 ×
1000 sqm, in which we place nodes using a uniform
distribution.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
A. Based on Nodes
In our initial experiment we vary the number of nodes
as 20, 30, 40, 50 and 60. From Fig. 3, we can see that the
average end to end delay of our proposed SwarmFTC is
less than the existing LMIBCN protocol. From Fig. 4, we
can see that the packet delivery ratio of our proposed
SwarmFTC is higher than the existing LMIBCN
protocol.
International Review on Computers and Software, Vol. 8, N. 4
1042
D. Manohari, G. S. Anandha Mala
Flow s Vs DeliveryRatio
Nodes Vs Delay
10
DeliveryRatio
Delay(Sec)
15
Sw armFTC
LMIBCN
5
0
20
30
40
50
1.5
1
Sw armFTC
LMIBCN
0.5
0
60
2
4
8
10
Fig. 3. Nodes Vs Delay
Fig. 7. Flows Vs Delivery Ratio
Nodes Vs DeliveryRatio
Flow s Vs Energy
0.6
15
0.4
Sw armFTC
0.2
LMIBCN
0
10
Sw armFTC
LMIBCN
5
0
20
30
40
50
60
2
4
Nodes
10
Sw armFTC
LMIBCN
5
0
40
10
From Fig. 6, we can see that the average end to end
delay of our proposed SwarmFTC is less than the
existing LMIBCN protocol.
From Fig. 7, we can see that the packet delivery ratio
of our proposed SwarmFTC is higher than the existing
LMIBCN protocol. From Fig. 8, we can see that the
energy consumption of our proposed SwarmFTC is less
than the existing LMIBCN protocol.
15
30
8
Fig. 8. Flows Vs Energy
Nodes Vs Energy
20
6
Flow s
Fig. 4. Nodes Vs Delivery Ratio
Energy(J)
6
Flow s
Energy(J)
DeliveryRatio
Nodes
50
60
Nodes
V.
Fig. 5. Nodes Vs Energy
From Fig. 5, we can see that the energy consumption
of our proposed SwarmFTC is less than the existing
LMIBCN protocol.
B. Based on Flows
In our second experiment we vary the number of flows
as 2, 4, 6, 8 and 10.
Delay(Sec)
Flow s Vs Delay
10
8
6
4
2
0
Sw armFTC
LMIBCN
2
4
6
8
10
Flow s
Fig. 6. Flows Vs Delay
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Conclusion
In this paper, we have proposed swarm based fault
tolerant topology control in MANET. Our proposed
algorithm provides fault tolerant topology control in
MANET. First, Ant Colony Optimization approach is
used to select minimum transmission power path
between any source and destination. Further, fault
tolerant path is identified by estimating minimum
interference path.
Initially, each node constructs its neighbor set by
sending neighbor discovery message to its neighbors. We
use forward and backward ants to gather and update
nodes minimum transmission power.
Meanwhile, each node calculates its interference
number and they are updated in neighbor set table using
interference number message. Before transmitting data to
the destination, the source node finds multiple paths and
calculates aggregate transmission power and interference
value along each path.
Finally, chooses the optimal path that satisfies both
minimum interference and minimum transmission power.
By simulation, we have shown that, our mechanism
reduces the energy consumption and delay while
International Review on Computers and Software, Vol. 8, N. 4
1043
D. Manohari, G. S. Anandha Mala
maximizing the packet delivery ratio when the network
size and number of flows are increased.
[19] Network Simulator: http:///www.isi.edu/nsnam/ns
Authors’ information
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
Fujian Qin, “QoS Topology Control with Energy Efficiency for
MANET”, Journal of Convergence Information Technology, 2011
Abdullah, Sohail Jabbar, Shaf Alam and Abid Ali Minhas,
“Location Prediction for Improvement of Communication
Protocols in Wireless Communications: Considerations and
Future Directions”, Proceedings of the World Congress on
Engineering and Computer Science, (WCECS ‘11), Vol-2, 2011
Calin Curescu and Simin Nadjm-Tehrani, “A bidding algorithm
for optimized utility-based resource allocation in ad hoc
networks”, IEEE Transactions on Mobile Computing, pp- 1397 –
1414, Volume- 7, Issue- 12, 2008.
Gaurav Srivastava, Paul Boustead and Joe F.Chicharo, “A
Comparison of Topology Control Algorithms for Ad-hoc
Networks”,
Proceedings
of
the
2003
Australian
Telecommunications, Networks and Applications Conference,
2003.
Fei Dai and Jie Wu, “View Consistency for Reliable Topology
Control in Mobile Ad Hoc Networks”, IEEE Global
Telecommunications Conference, (GLOBECOM '05), 2005
Andy An-Kai Jeng, and Rong-Hong Jan, “Adaptive Topology
Control for Mobile Ad Hoc Networks”, IEEE Transactions on
Parallel and Distributed Systems, 2011
Harichandan Roy, Shuvo Kumar De, Md.Maniruzzaman, and
Ashikur Rahman, “Fault-tolerant Power-aware Topology Control
for Ad-hoc Wireless Networks”, Proceedings of Lecture Notes in
Computer Science , Springer, 2011
Renato E. N. Moraes, Celso C. Ribeiro and Christophe Duhamel,
“Optimal Solutions for Fault-Tolerant Topology Control in
Wireless Ad Hoc Networks”, IEEE Transactions on Wireless
Communications, 2009
Quansheng Guan, F. Richard Yu and Shengming Jiang,
“Capacity-Optimized Topology Control for MANETs with
Cooperative Communications”, IEEE Transactions on Wireless
Communications, 2011
Liang Zhao, Errol L. Lloyd and S. S. Ravi, “Topology Control in
Constant Rate Mobile Ad Hoc Networks”, ACM Journal of
Wireless Networks, Volume 16, Issue 2, February 2010
Md. Ehtesamul Haque and Ashikur Rahman, “Fault Tolerant
Interference-Aware Topology Control for Ad Hoc Wireless
Networks”, ADHOC-NOW 2011, SPRINGER, pp. 100–116, 2011.
Stephen Gundry, Elkin Urrea, Cem S¸Afak S¸ ahin, Jianmin Zou,
M. and U¨ Mit Uyar, “Formal Convergence Analysis for Bioinspired Topology Control in MANETs”, 34th IEEE Sarnoff
Symposium, pp-1 – 5, 2011
Orhan Dengiz A, Abdullah Konak B and Alice E. Smith,
“Connectivity management in mobile ad hoc networks using
particle swarm optimization”, ELSEVIER AdHoc networks, pp1312–1326, 2011
Vasundhara Uchhula and Brijesh Bhatt, “Comparison of different
Ant Colony Based Routing Algorithms”, International Journal of
Computer Applications, pp-97–101, 2010
M. Heissenbüttel and T. Braun, “Ants-Based Routing in Large
Scale
Mobile
Ad-Hoc
Networks”,
http://www.iam.unibe.ch/~heissen/Papers/KIVS03_Final.pdf,
2003
Frederick Ducatelle, Gianni Di Caro and Luca Maria
Gambardella, “Ant Agents for Hybrid Multipath Routing in
Mobile Ad Hoc Networks”, Proceedings of the ACM Second
Annual Conference on Wireless On demand Network Systems and
Services (WONS), Switzerland, 2005.
Med Amnai, Y. Fakhri, J. Abouchabaka, Adaptive Fuzzy Mobility
for Delay and Throughput Sensitive Traffic in Ad Hoc Networks,
(2012) International Review on Computers and Software
(IRECOS), 7 (3), pp. 965-971.
Hualong Jiang, Shuai Zhang, Guangtao Shao, Group Mobility
Judge Based on Node’s Neighbors Matrix in Clustering MANET,
(2012) International Review on Computers and Software
(IRECOS), 7 (6), pp. 2886-2890.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
D. Manohari received MCA degree from
Bharathidhasan University in 1996, and M.E
degree in Anna University of Chennai in 2007.
Currently She is working as an Assistant
Professor in the department of MCA in
St.Joseph’s College of Engineering, Chennai,
India. She has 12 years of teaching experience
on both graduate and post-graduate level. Her
area of interest includes Wireless networks, Algorithms, Data structures
and Genetic Algorithms.
Dr. G. S. Anandha Mala received B.E degree
from Bharathidhasan University in Computer
Science and Engineering in 1992, M.E degree in
University of Madras in 2001 and Ph.D degree
from Anna University in 2007. Currently she is
working as Professor in St.Joseph’s College of
Engineering, Chennai, India, and heading the
department of Computer Science and
Engineering. She has published 24 technical papers in various
international journal/conferences. She has 18 years of teaching
experience on both graduate and post-graduate level. Her area of
interest includes Natural Language Processing, Software Engineering,
Data Mining, Image Processing and Grid Computing.
International Review on Computers and Software, Vol. 8, N. 4
1044
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
A Bayesian Classification Approach for Handling Uncertainty
in Adaptive E-Assessment
V. Geetha1, D. Chandrakala2, R. Nadarajan3, C. K. Dass1
Abstract – New technologies have provided the educational field with innovations that allow
significant improvement in the teaching learning process. The development of information
technology has increased the popularity of Web based education, ; particularly E-assessment This
paper provides an overview of Bayesian Network and its application to handle uncertainty in
adaptive E-assessment. An adaptive assessment system was realized in PHP and MYSQL. The
empirical data was collected and the relationship between the response time and the assessment
grading was established. The classifier accuracy obtained using Bayesian classifier was compared
with C4.5 Decision tree algorithm and Naïve Bayes classifier. The superiority of Bayesian
algorithm over the well known algorithms in handling uncertainty of adaptive assessment data is
established in this paper. Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved.
Keywords: Adaptive Assessment, Degree of Toughness (DT), Bayesian Network, Naive Bayes
Classifier, Classifier Accuracy, F-Measure, Area Under Curve (AUC)
Nomenclature
P(Ci/Y)
fi
yi
TP
TN
FP
FN
Posterior Probability
Predicted value
Actual value
True positive
True negative
False positive
False Negative
I.
Introduction
The rapid growth of Internet technologies has brought
in significant improvements in the teaching learning
process. Assessment is an integral part of learning and
plays a significant role in education. Automated testing
systems generate a great deal of valuable information
which can be used to analyze the performance of the
students. Adaptive testing is a form assessment in which
the tests are tailored to the individual’s ability. One of the
critical challenges of E-Assessment lies in its intelligence
factor, on how well it can make decisions just like a
human instructor.
The main objective of adaptive assessment is to
conduct an optimal test for all the students. In
conventional tests, the same sets of questions are
administered to all the students. Students get frustrated
when the difficulty of the questions is higher than their
ability level and bored if it is lower than their ability [1].
But in the procedure of adaptive testing, the questions
will be generated based on the individual ability of the
student. This will result in generating different sets of
questions for different students, keeping their enthusiasm
to face the test steadily.
Manuscript received and revised March 2013, accepted April 2013
If the student gets correct answer for a question, the
computer will then select the next question from a higher
difficulty level; otherwise the next question will be from
a lower difficulty level. Students do not waste their time
attempting questions which are either very trivial or very
difficult to their ability. The student’s proficiency in a
subject will be assessed with a fewer questions than in
conventional tests. A finer discrimination in all ranges of
performance is possible in adaptive strategy. Adaptive
assessment is an optimal way of testing for every
individual student, in specific, when the instructor has to
monitor the learning path that tailors to distinct users
with different interests.
This will improve the effectiveness of the assessment.
Some of the work done in adaptive assessment is as
follows: Wen Chin Chang et al. [2] have applied Item
Response Theory (IRT) for student ability estimation in
E-learning and they have used K-means clustering
algorithm to cluster the learner’s abilities. Catherine C.
Marinagi et al. [1] have proposed architecture for an
adaptive assessment tool using client server platform.
The emphasis for selecting has been suggested using
the technique of Bayesian model. They have also
demonstrated a framework [3] for adaptive multiuser
web based assessment using Bayesian decision theory
and then to classify the students into two categories
namely “masters” and “non-masters”. Mansor Ali [4]
has justified that adaptive testing will shorten the test
duration, will offer flexible testing, and better balancing
of test content for all ability levels.
They have used least square method to estimate the
difficulty level of each question. Mariana Lilley [5] in
her PhD thesis has explored the issues on the use of
computer aided assessment in higher education of U.K.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1045
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
She has used three parameter logistic model of IRT to
estimate the test takers ability which is used to generate
subsequent test items. Also an automatic feedback
prototype is integrated with this approach to know the
students’ attitude about the approach.
In adaptive assessment with multiple choice questions,
there is a possibility of students making wild guesses to
provide the answer for the questions. Guessing is one of
the areas which lead to confusion.
So assessing the performance of students’ based only
on the total marks/grade will not be appropriate.
Therefore multiple measures have to be taken into
consideration
while
evaluating
the
students’
performance. A classification of performance is needed
not only based on the mark scored but also on the time
taken to answer the questions at each DT level. But there
is an inconsistency between the response time to answer
the questions and the grade scored. There might be few
students who would have taken the same time to answer
the questions at each DT level, but scored different
grades, thus leading to uncertainty.
Thus it becomes very difficult to classify the
performance of the students based on the response time
and the grade scored using conventional data mining
techniques. Today’s technology has paved way for
exploring new tasks in E-assessment and incorporating
powerful scoring and reporting mechanisms. Bayesian
Networks is a popular Artificial Intelligence technique
for representing and reasoning with uncertain knowledge
and hence was chosen for data analysis in adaptive EAssessment. Bayesian Networks has been extensively
used in education, medical diagnosis, software reliability,
data compression, fraud detection etc. Nguyen et al. [6]
in their paper have applied Bayesian approach in the field
of education. They have compared the accuracy of the
Decision Tree and Bayesian Network algorithms for
predicting the academic performance of undergraduate
and postgraduate students and have shown that decision
tree algorithms was more accurate for predicting the
student performance.
An approach has been proposed by Bidgoli et al.[7] to
classify students to predict their final grade based on the
data collected from education web based system. They
have made a comparative study of few non parametric
pattern classifiers. Conati et al. [8] have implemented
Bayesian network to deal with high level of uncertainty
in homework related activities.
Bekele and Menzel [9] in their paper have
demonstrated an application of the Bayesian approach in
the field of education and have shown that the Bayesian
network classifier has a potential to be used as a tool for
prediction of student performance. Aloraini [10] has
made a comparative study of different algorithms to
predict a benign from malignant cancer and has shown
that Bayesian network is significantly better than other
algorithms.
Good deals of research work in the application of
Bayesian Networks in other areas are discussed in [11] [15].
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
The main contribution of the paper is to provide an
insight into the process of applying data mining
techniques to handle uncertainty in the data collected as a
part of conducting adaptive E-Assessment.
The organization of the paper is as follows: Section 2
discusses about the theoretical aspects of Bayesian
Network classification which are relevant to the proposed
work. Section 3 describes the adaptive strategy
developed for E-assessment. Experimental results and
analysis and comparison with C4.5 algorithm are
discussed in Section 4. Section 5 concludes the work and
discusses the scope for future work.
II.
Bayesian Networks
Classification is basic task in data analysis used to
extract models that are used to predict future data trends.
Bayesian classifiers are statistical classifiers predicting
class membership probabilities. They describe the
probability distribution governing a set of variables.
They specify a set of conditional independence
assumptions along with a set of conditional probabilities.
It refers to a type of model that uses Directed Acyclic
Graphs (DAGs) where nodes represent features and arcs
represent the causal relationships between them. There is
one conditional probability table (CPT) for each node
given its parents. If the node has no parents, then the
probability distribution is unconditional; otherwise it is
conditional, where the probability of each feature value
depends on the values of its parents. The graph
represents the qualitative component of the network
whereas the tables represent the quantitative component
of the network.
Bayesian classification is a two steps process:
i. Constructing the network structure.
ii. Estimating the probability distribution (CPTs).
The class that maximizes the posterior probability
distribution P (Ci / Y) which is given by (1):


P  Ci / Y   P C j / Y for i ≤ j ≤ m, j≠ i
(1)
where the posterior probability is given by (2):
P  Ci / Y   P Y / Ci  P  Ci  / P Y 
(2)
Since it would be computationally expensive to
compute P (Y /Ci) for a data set with many attributes, the
concept of class conditional independence is considered.
It assumes that the values of attributes are
conditionally independent of each other, given the class
label of the tuple. P(Ci/Y) is given by (3):
n
P  Ci / Y  
 P Yk / Ci 
(3)
i 1
The probabilities P (y1/Ci), P(y2/Ci)…P (yn/Ci) can be
estimated from the training set tuples.
International Review on Computers and Software, Vol. 8, N. 4
1046
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
Since it is not possible to enumerate all the possible
DAGs in Bayesian network structure learning, heuristic
methods have to be applied to implement a procedure for
searching among possible structures. The K2 algorithm is
a greedy search algorithm that learns the network
structure of the Bayesian Network from the data
presented to it. The procedure starts by assuming that a
node has no parents. Then it adds incrementally the
parent and if the addition increases the probability of the
resulting structure the structure is maintained. The
algorithm stops adding parents to the nodes when the
addition of a single parent cannot increase the probability
of the network given the data. K2 assumes that all values
are distinct. It requires a fixed ordering of the nodes,
such that each node will only be considered as a possible
parent of the nodes that appear later in the ordering.
Naïve Bayes Classifier is a variant of Bayesian
network with the simple structure that has the class node
as the parent node of all other attributes.
The naive bayes algorithm builds a probabilistic
model by learning the conditional probabilities of each
input attribute given a possible value taken by the output
attribute. This model is then used to predict an output
value when we are given a set of inputs. This is done by
applying Bayes' rule on the conditional probability of
seeing a possible output value when the attribute values
in the given instance are seen together.
The next sections describe the adaptive strategy
followed for E-Assessment and the creation of a
knowledge base.
III. Proposed Method
This section describes the adaptive strategy followed
for E-Assessment and the creation of a knowledge base.
Application has been developed using PHP software
as the front end and MySQL at the back end database
server to implement the procedure.
III.1. Adaptive E-Assessment Procedure
Case 3: This case relates to the situation where the
student answers either one or two questions correctly out
of the first three questions from the kth DT. The system
exhibits one more question from the same DT. Thus the
student encounters a total of four questions. A total of
three correct answers shifts to (k+1)th DT, provided k ≠ 5;
otherwise to (k-1)th DT provided k ≠ 1.
Case 4: In case student answers two questions
correctly out of the first four questions from the kth DT,
one more question from the same DT is given. A total of
three correct answers out of five given questions, shifts
to (k+1)th DT; otherwise to (k-1)th DT. However shifting
to a higher or lower DT does not take place when k=5 or
k=1 respectively.
Note: It is to be noted that once the student answers
any question, he will be placed in the next question.
There is no possibility of retracting the question
already answered.
III.1.1. Evaluation Procedure
The marks for a question in each DT are given in
Table I. It provides the DT and the proposed marks as
per the technique adopted in the model.
DT level
Mark
TABLE I
MARKS FOR EACH DT
1
2
3
0.2
0.4
0.6
4
0.8
5
1.0
The maximum marks and the duration of the
examination can be set according to the needs of the
subject.
The test will get terminated either on the expiry of the
time frame or the student has attempted all the questions
prescribed for the maximum marks, whichever occurs
earlier.
The score and the number of DT – wise questions
asked and answered get displayed at the end of the test.
III.2. Knowledge Base Creation
The model for conducting online tests using adaptive
strategy is given below. The interesting aspect of this
model is that it allows the student to initially opt for the
DT of the questions soon after he logs into the system of
examination.
If he opts for the kth DT (k=1, 2, 3, 4, 5) the system
will start displaying the questions randomly from the kth
DT for which the student answers.
Case 1: If the student answers the first three questions
of the kth DT correctly, the system will automatically
shift to (k+1)th DT provided k ≠ 5. When k = 5, the
system continues to ask questions from the same level.
Case 2: In case the student answers all the three
questions of the kth DT incorrectly, the system will
automatically shift to ((k-1))th DT provided k ≠ 1.
It follows from the earlier logic the system continues
to display from the 1st DT irrespective of the number of
wrong answers provided.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
A question bank for C-Programming language was
created by collecting questions from course experts A
conventional test (where each of the questions in the
question bank have to be answered by all the students)
was given to a group of students. Calibration was done
with the proportion of the examinees who answered each
question correctly to the total population, based on which
the questions were initially classified into various levels
of DT ranging from 1 to 5 (1–very easy and 5 – very
difficult).
The test was conducted for nearly 500 undergraduate
and postgraduate students from different branches of an
Engineering college and the response time (in seconds)
for answering each question was captured. The average
time taken to give response to questions in each DT for
correctly answering as well as wrongly answering was
calculated. The sample data is shown in Table II.
International Review on Computers and Software, Vol. 8, N. 4
1047
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
TABLE II
ADAPTIVE ASSESSMENT SAMPLE DATA SET
Roll No.
(Student_id)
DT1_CA
DT2_CA
DT3_CA
DT4_CA
DT1_WA
DT2_WA
DT3_WA
08ece101
42.000
50.167
79.000
110.500
165.000
0.000
52.667
08ece102
0.000
44.923
59.333
0.000
0.000
51.000
89.889
08ece47
28.333
27.000
58.833
72.667
27.500
0.000
57.333
08ece135
26.667
34.167
49.500
44.000
34.000
18.333
62.800
08ece26
48.000
48.333
68.250
38.000
129.556
56.667
84.400
08ece79
16.000
26.500
73.600
10.000
31.800
30.000
66.600
08ece04
55.000
76.455
123.000
0.000
105.200
36.167
71.333
08ece119
19.286
70.714
54.200
69.000
60.000
101.833
81.000
08ece14
26.333
23.000
63.556
24.000
0.000
0.000
52.000
08ece17
36.333
107.000
128.667
75.200
29.000
0.000
45.000
DTi_CA - Average time ( in seconds) taken to answer the questions correctly at DT level i ( i = 1,2,…5)
DTi_WA - Average time ( in seconds) taken to answer the questions wrongly at DT level i ( i = 1,2,…5)
Tot_time - The total time ( in seconds) taken to complete the test
IV.
DT4_WA
Tot_Time
40.000
0.000
34.600
73.000
105.000
155.000
0.000
30.500
74.375
117.000
1802
1851
1190
1292
2780
1440
2834
2146
1391
2181
IV.1.1. Discretization of E-Assessment Data Using
Equal Frequency Binning Algorithm
Experimental Setup and Results
The data collected from the above E-Assessment
model was analyzed using Bayesian Network and Naïve
Bayes Classifier using WEKA open source data mining
tool. The results obtained by these algorithms were
compared with C4.5 Decision Tree algorithm. C4.5
algorithm constructs decision trees by using features to
try and split the training set into positive and negative
examples until it achieves high accuracy on the training
set. Bayesian network was chosen because it gives equal
importance to all the attributes. Naïve Bayes Classifier
represents each class with a probabilistic summary, and
finds the most likely class for each example it is asked to
classify.
Some classification algorithms can handle only
nominal attributes. They cannot handle the attributes
measured on a numeric scale. So these attributes have to
be discretized into a small number of distinct ranges. One
way of discretising a numeric attribute is by using equal
frequency binning technique, which is a simple,
unsupervised technique that considers all attributes at the
same time and produce discretization intervals in such a
way that there are equal numbers of objects in each
interval. In the proposed work, E-Assessment data is
discretized using equal frequency binning algorithm.
Table III shows the discretized data generated by
using equal frequency binning algorithm.
IV.1. Data Preprocessing
IV.2. Classification Methods
A considerable amount of preprocessing needs to be
done before modeling the data. Data preprocessing is an
important step in data mining which transforms data into
a format more effective for processing. Data preprocessing includes data cleaning, normalization,
transformation, reduction, feature extraction and
selection etc.
When data is preprocessed, it is necessary to reduce
the large number of attributes into a smaller set.
The next section discusses about how data
preprocessing is carried out for the E- Assessment data.
Classification is a data mining algorithm which is used
to extract models that describe important data classes.
They have been used in a wide variety of applications
in different fields. It is not possible for a single
classification algorithm to give good results in all the
cases. The choice of an optimal classification algorithm
highly depends on the problem domain.
In adaptive testing, the students were initially
classified into 4 categories namely Excellent (O), Very
Good (A), Good (B) and Average (C) based on the total
mark scored in the test.
TABLE III
DATA AFTER DISCRETIZATION USING EQUAL FREQUENCY BINNING ALGORITHM
RollNo
DT1_CA
DT2_CA
DT3_CA
DT4_CA
DT1_WA
DT2_WA
DT3_WA
DT4_WA
Tot_time
08ece101
08ece102
08ece47
08ece135
08ece26
08ece79
08ece04
08ece119
08ece14
08ece17
[39.16, *)
[*, 22.80)
[22.80, 39.16)
[22.80, 39.16)
[39.16, *)
[*, 22.80)
[39.16, *)
[*, 22.80)
[22.80, 39.16)
[22.80, 39.16)
[30.58, 60.44)
[30.58, 60.44)
[*, 30.58)
[30.58, 60.44)
[30.58, 60.44)
[*, 30.58)
[60.44, *)
[60.44, *)
[*, 30.58)
[60.44, *)
[76.30, *)
[59.08, 76.30)
[*, 59.08)
[*, 59.08)
[59.08, 76.30)
[59.08, 76.30)
[76.30, *)
[*, 59.08)
[59.08, 76.30)
[76.30, *)
[70.83, *)
[*, 17.00)
[70.83, *)
[17.00 70.83)
[17.00, 70.83)
[*, 17.00)
[*, 17.00)
[17.00, 70.83)
[17.00, 70.83)
[70.83, *)
[82.60, *)
[*, 28.25)
[*, 28.25)
[28.25, 82.60)
[82.60, *)
[28.25, 82.60)
[82.60, *)
[28.25, 82.60)
[*, 28.25)
[28.25, 82.60)
[9.16, 43.58)
[43.58, *)
[*, 9.16)
[9.16, 43.58)
[43.58, *)
[9.16, 43.58)
[9.16, 43.58)
[43.58, *)
[*, 9.16)
[*, 9.16)
[*, 55.00)
[76.16, *)
[55.00, 76.16)
[55.00, 76.16)
[76.16, *)
[55.00, 76.16)
[55.00, 76.16)
[76.16, *)
[*, 55.00)
[*, 55.00)
[32.55, 89.68)
[*, 32.55)
[32.55, 89.68)
[32.55, 89.68)
[89.68, *)
[89.68, *)
[*, 32.55)
[*, 32.55)
[32.55, 89.68)
[89.68, *)
[1416, 2164)
[1416, 2164)
[*, 1416)
[*, 1416)
[2164, *)
[1416, 2164)
[2164, *)
[1416, 2164)
[*, 1416)
[2164, *)
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1048
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
But there exists an inconsistency between the time
taken to answer the questions and the grade scored.
There might be few students who would have taken
the same time to answer the questions at each DT level,
but scored different grades, thus leading to uncertainty.
Thus it becomes very difficult to classify the
performance of the students based on the answering time
and the grade scored using conventional data mining
techniques. Therefore multiple measures have to be taken
into consideration while evaluating the students’
performance.
Fig. 2. Conditional Probability Table for the Bayesian Network
IV.2.1. Bayesian Network Classifier
Bayesian network is a powerful classification tool
which can represent exponentially-sized probability
distributions compactly and the inference on these
probabilities can be performed without explicitly
constructing them. Fig. 1 shows the Bayesian Network
graph with dependencies among the independent
attributes for the adaptive E-Assessment data generated
by Weka. The nodes in the network correspond to the
attributes while the edges between the nodes represent
probabilistic dependencies among the corresponding
attributes. The graphical structure of the Bayesian
Network has got an associated joint probability for each
variable in the diagraph and is specified by a set of
conditional probability distribution (CPD) as shown in
Fig. 2.
The CPD is represented as CPT, which lists the
probability that each child node takes on each of its
different values for each combination of values of its
parents. The joint probability distribution captures the
probabilities associated with every possible combination
of atomic events that could occur in that domain and can
be used to answer any probabilistic query.
IV.2.2. Naive Bayes Classifier
The Naïve Bayes algorithm is a special case of
Bayesian network which assumes that the attributes in
the training are independent of each other. It uses a set of
training examples to classify a new instance given to it
using the Bayesian approach.
The Bayes rule is applied to find the probability of
observing each output class given the input attributes and
the class that has the highest probability is assigned to
the instance. The Naive Bayes graph for the adaptive
assessment as generated by Weka is shown in Fig. 3.
Fig. 3. Graphical Structure of Naïve Bayes Network
The probability values used are obtained from the
counts of attribute values seen in the training set. Fig.4.
illustrates the probability distribution table for the Naïve
Bayes classifier.
Fig. 4. Conditional Probability Table for Naïve Bayes Classifier
The results obtained using Bayesian Network and
Naïve Bayes were compared with the well know C4.5
algorithm.
IV.2.3. C4.5 Decision Trees
Fig. 1. Graphical Structure of a Bayesian Network
Prob(DT2_CA= [52.88100, *] | Grade=’C’,
DT1_CA= [*, 23.11110] ) = 0.5
Decision trees are powerful tools for classification and
prediction. C4.5 is an inductive learning algorithm
designed by Quinlan. The goal is to create a model that
predicts the value of a target variables by learning simple
decision rules inferred from the attributes. It constructs
the tree starting from a training set. It uses divide and
conquer strategy to create a tree structure which
represents the rules. It calculates the information gain for
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
In Fig. 2, the conditional probability is represented as:
Prob(DT2_CA= [27.14290 , 52.88100] | Grade=’O’,
DT1_CA= [*, 23.11110] ) = 0.571
1049
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
each attribute and then selects the attribute with the
highest information gain.
Precision is the proportion of predicted positives
which are actually positive and is given by (5):
Precision = TP / (TP + FP)
IV.3. Evaluation of the Proposed Model
Assessment of prediction accuracy is an important
aspect of classification. The classifier’s performance can
be analyzed and compared by the measures generated by
the confusion matrix [16]. Using the generated rule set,
the test data is to be checked for the accuracy of the
rules.
A confusion matrix displays the number of correct and
incorrect predictions made by the rules on the test data. A
classifier has got 4 outcomes. If the instance is positive
and it is classified as positive, it is taken as a true positive
(TP); if it is classified as negative, it is taken as a false
negative (FN). If the instance is negative and it is
negative, it is counted as a true negative (TN); if it is
classified as positive, it is counted as a false positive
(FP).
Accuracy is the proportion of instances whose class
the classifier can correctly predict and is calculated by
(4):
(4)
The accuracy percentage of the three algorithms is
given in Table IV. It can be seen that Bayesian Network
achieved the highest accuracy among the three
algorithms.
However C4.5 decision tree algorithm has lowest
accuracy. Fig. 5 gives the graphical representation of
performance of classifiers evaluated.
But measuring accuracy alone is not sufficient to
assess the real performance of a classifier, because it will
yield misleading results if the data set is unbalanced.
Other commonly used measures for evaluation of
classifiers are Precision, Recall, F-measure, Kappa
Statistic and Receiver Operating Characteristic (ROC)
curve area.
34.68
100
80
60
40
20
0
% incorrectly
classified
Bayesian
Network
F-Measure combines precision and recall into a single
measure of performance and is given by (8):
F-Measure = 2 × ((precision × recall)/
(precision + recall))
(8)
Kappa Statistic is a measure of the agreement between
the predicted and the actual classifications in a dataset.
Conventionally, a Kappa of <0.2 is considered poor
agreement, 0.21-0.4 fair, 0.41-0.6 moderate, 0.61-0.8
strong, and more than 0.8 near complete agreement. [17][18]. Receiver operating characteristic (ROC) curves are
useful for assessing the accuracy of predictions.
It is a graphical representation for comparing
predicted and actual target values in a classification
model. ROC curves investigate the relationship between
sensitivity and specificity. Sensitivity (True positive rate)
and specificity (true rate) classifies the proportion of
negatives correctly classified.
The ROC curve is constructed by plotting sensitivity
vs. 1-specificity. Once the values of sensitivity and
specificity are plotted, the ROC area metric is calculated.
It is used to measure the performance of a test. The
ROC area of a classifier is equivalent to the probability
that the classifier will rank a randomly chosen positive
instance higher than a negatively chosen instance. AUC
values range from 0.5 to 1 and the larger the AUC the
better will be the overall performance of the adaptive test
to correctly classify the students.
The various measures associated with classification
are summarized in Table V.
TABLE V
PRECISION, RECALL, F –MEASURE AND ROC AREA VALUES
% correctly
classified
C4.5
(7)
Naïve
Bayes
Fig. 5. Classifier Accuracy
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
C4.5
Bayesian
Network
Naïve Bayes
0.111
0.333
0.167
0.1
0.5
0.891
0.887
0.888
0.846
0.977
0.654
0.68
0.653
0.529
0.889
ROC Area
65.33
Specificity = TN / (TN + FN)
Kappa
Statistic
11.33
Specificity tells how good a test is avoiding false
alarms and is given by (7):
F_Measure
88.67
(6)
Recall
Value
C4.5
Bayesian
Network
Naïve Bayes
Recall = TP / (TP + FN)
Precision
Algorithm
TABLE IV
OUTPUT FOR ACCURACY PERCENTAGE
% correctly
% incorrectly
classified
classified
33.33
66.67
Recall (Sensitivity) is the proportion of real positive
cases that are correctly predicted positive. Sensitivity
predicts how good a test is at detecting positives and is
given by (6):
Algorithm
Accuracy = (TP + TN) / (TP + TN + FP + FN)
(5)
International Review on Computers and Software, Vol. 8, N. 4
1050
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
Value
1.2
1
0.8
TABLE VI
ERROR MEASURES OF CLASSIFICATION
Algorithm
MAE
RMSE
C4. 5
0.3672
0.4285
Bayesian Network
0.1518
0.2342
Naïve Bayes
0.2365
0.3361
Value
The graph for the various measures for each of the
algorithm is given in Fig. 6. F-measure is used to
determine the best classification among all the
algorithms. The classification with the highest F-measure
score is regarded as the best classification. It can be seen
from Table V that Bayesian algorithm has got the highest
F-measure as well as the ROC area and therefore it is
concluded that Bayesian Classification is a promising
methodology for handling uncertain data in adaptive Eassessment.
C4.5
0.6
C4.5
Bayesian
Netwo rk
Naïve Bayes
Mean Absolute
Errorr
Bayesian
Network
Naïve Bayes
0.4
0.2
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
Root Mean
Squared Error
0
P
n
io
cis
e
r
ll
ca
Re
Fig. 7. Graphical Representation of Error Measures
re
ti c
ea
su
tis
Ar
a
a
e
t
C
M
aS
RO
F_
pp
a
K
V.
Fig. 6. Various classification measures
In addition to the classification error, the evaluation
modules also predict the various error measures which
are used to find out how far the predicted value is from
the actual value.
Mean Absolute Error (MAE) is the average of
difference between predicted and actual value in all test
cases. The formula for calculating MAE is given in (9):
MAE 
1
n
n

fi  yi 
i 1
1
n
n
 ei
(9)
i 1
where fi is the prediction and yi the true value.
Root Mean Squared Error (RMSE) is used to measure
differences between values predicted by a model and the
values actually observed. It is calculated by taking the
square root of the mean square error as shown in (10):
n
RMSE 
 i 1  X obs,i  X mo del ,i 
2
n
(10)
where Xobs is observed values and Xmodel is modeled
values at time/place i.
Both the MAE and RMSE can range from 0 to ∞ and
lower values are better. Table VI provides comparative
results of various error measures for different algorithms.
The graphical representation of the error measures are
shown in Fig. 7.
It can be seen that Bayesian Network has both low
MAE of 0.1518 and RMSE of 0.2342 when compared to
the other two algorithms. However C4.5 has the highest
error rate among the three algorithms.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Conclusion
This study empirically evaluates the performance of
Bayes Network Classification technique in handling
uncertainty in adaptive E-Assessment data. A strategy for
conducting adaptive E-Assessment was formulated and
tests were conducted for undergraduate and postgraduate
students of an Engineering College. The empirical results
were analyzed using C4.5, Naïve Bayes and Bayesian
Networks. Comparing the performance, the analysis
shows that Bayesian Network algorithm has the highest
classifier accuracy percentage of 88.67%, followed by
Naive Bayes Classifier with 65.33%.
The experimental results also reveal that even in terms
of other classifier measures, Bayesian Networks perform
exceptionally well than the other algorithms. Bayesian
Networks outperform Naïve Bayes on E-Assessment data
and the increase in accuracy in Bayesian Networks
clearly shows that there is a dependency between the
response time and grade. Classification performance of
C4.5 is exceptionally low in terms of F-Measure, ROC
area and Kappa Statistic.
In terms of error measures, the most notable is the low
error rates obtained by the Bayesian Networks. The
superiority of Bayesian Networks in handling uncertainty
in adaptive E-Assessment is established through this
empirical study.
References
[1]
[2]
[3]
Catherine C Marinagi & Vassilis G.Kaburlasos, Work in
Progress: Practical Computerized Adaptive Assessment based on
Bayesian Decision Theory,, 36th ASEE/IEEE Frontiers in
Education Conference, pp 23- 24, 2006.
Wen-Chih Chang, & Hsuan-Che Yang , Applying IRT to
Estimate Learning Ability and K-means Clustering in Web based
Learning , Journal of Software , VOL. 4, No. 2, pp 167- 174,
2009.
Catherine C Marinagi, Vassilis G.Kaburlasos Vassilis & Th.
Soukalas, An Architecture for an Adaptive Assessment Tool, 37th
International Review on Computers and Software, Vol. 8, N. 4
1051
V. Geetha, D. Chandrakala, R. Nadarajan, C. K. Dass
ASEE/IEEE Frontiers in Education Conference , pp T3D-11 T3D-16, 2007.
[4] Mansoor Al-A’ali) , Implementation of an Improved Adaptive
Testing Theory, Educational Technology and Society, pp 80-94,
2007.
[5] Mariana Lilley (2007), The Development and Application of
Computer Adaptive Testing in a Higher Education Environment,
PhD Thesis, University of Hertfordshire, UK . 2007.
[6] Nguyen Thai Nghe, Paul Janecek & Peter Haddawy, A
Comparative Analysis of Techniques for Predicting Academic
Performance, 37th ASEE/IEEE Frontiers in Education
Conference, Oct10 – 13 , T2G7 – T2G12, 2007.
[7] Minaei-Bidgoli, B., Kashy, D. A., Kortemeyer, G., and Punch.W.
F, Predicting Student Performance: An Application of Data
Mining Methods with an Educational Web-based System,
Proceedings of 33rd Annual Conference on Frontiers in
Education( FIE 2003), Volume 1, pp 13–18, 2003.
[8] Cristina Conati, Abigail Gertner & Kurt Vanlehn, Using Bayesian
Networks to Manage Uncertainty in Student Modeling , User
Modeling & User Adaptive Interaction, Vol .12 , Issue 4,pp. 371417, 2002.
[9] Bekele, R.& Menzel, W., A Bayesian Approach to Predict
Performance of a Student (BAPPS): A Case with Ethiopian
Students, Proceedings of the International Conference on
Artificial Intelligence and Applications (AIA-2005), Austria,
2005.
[10] Adel Alorai,ni, Different Machine Learning Algorithms for
Breast Cancer Diagnosis, International Journal of Artificial
Intelligence and Applications(IJAIA) , Vol 3,No.6 , pp 21-30,
2012.
[11] Gouda I. Salama1, M.B.Abdelhalim2 & Magdy Abd-elghany
Zeid, Breast Cancer Diagnosis on Three Different Datasets using
Multi-Classifiers , International Journal of Computer and
Information Technology,Vol.1, No.1, pp 36-43, 2012.
[12] Baskar Pant, Kumud Pant & K.R.Pardasani, Naïve bayes
Classifier for Classification of Plant and Animal miRNA,
International journal of Computer Theory & Engineering ,
Vol.2.No.3.pp.420-424, 2010.
[13] Khlifia Jayech & Mohamed Ali Mahjoub, Clustering and
Bayesian network for Image of Faces Classification, International
Journal of Advanced Computer Science & Applications, Special
Issue on Image processing and Analysis, 2011
[14] Neri Merhav & Yariv Ephraim, A Bayesian Classification
Approach with Application to Speech Recognition, IEEE
Transactions on Signal processing, Vol 39.No.10, pp.2157212166, 1991
[15] M. Mehdi, S. Zair, A. Anou and M. Bensebti, A Bayesian
Networks in Intrusion Detection Systems, Journal of Computer
Science Vol.3 No.5 pp. 259-265, 2007
[16] H. Witten, E. Frank, and M. A. Hall, Data Mining: Practical
Machine Learning Tools and Techniques,( Morgan Kaufmann,
2011).
[17] Cohen J, A Coefficient of Agreement for Nominal Scale,
Educational and Psychological Measurement, pp 37-46, 1960.
Breast Cancer Diagnosis on Three Different Datasets Using MultiClassifiers
[18] Cohen J. Weighted Kappa: Nominal Scale Agreement with
Provision for Scale and Disagreement or Partial Credit.
Psychological Bulletin , Vol. 70, pp 213-220, 1968.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Authors’ information
1
Dept. of Computer Applications.
2
Dept. of Computer Science & Engineering, Kumaraguru College of
Technology, Coimbatore, India.
3
Dept of Applied Mathematics & Computational Sciences, PSG
College of Technology, Coimbatore, India.
V. Geetha is currently working as Associate
Professor in Department of Computer
Applications,
Kumaraguru
College
of
Technology, Coimbatore, India and has a
teaching experience of
21 years. She is
currently pursuing PhD under Anna University,
Chennai. Her research interests include
Knowledge Management and Data Mining She
is a life member of Indian Society for Technical Education.
E-mails: geethasuresh@rediffmail.com
geetha.v.mca@kct.ac.in
Dr. D. Chandrakala is an Associate Professor
in Department of Computer Science and
Engineering , Kumaraguru College of
Technology, Coimbatore, India. She received
her PhD degree in the area of Data Mining from
AnnaUniversity in 2013. She has published
several papers in National / International
Journals and Conferences. Her current research
interest includes Soft Computing, Artificial Intelligence, Evolutionary
Algorithms, Database management systems, Data Mining and Image
Processing She is a life member of Indian Society for Technical
Education.
Dr. R. Nadarajan is Professor and Head of the
Department of Applied Mathematics and
Computational Sciences, PSG College of
Technology, India. He obtained his PhD degree
from Annamalai University, India. He is the
author of over 30 journal papers, as well as
numerous proceeding papers and technical
reports. He has been a reviewer for many
Journals. His research interests include Object Computing, Data
Mining and Database Technologies. He is the Chairman, Computer
Society of India Coimbatore chapter. Member of Operational
Research Society of India and Indian Society for Technical Education.
C. K. Dass is pursuing his Master in Computer
Applications,
Kumaraguru
College
of
Technology. He is a member of Computer
Society of India.
International Review on Computers and Software, Vol. 8, N. 4
1052
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
A Technique to Mine the Multi-Relational Patterns
Using Relational Tree and a Tree Pattern Mining Algorithm
M. Ravi Sankar, P. Prem Chand
Abstract – The reason of the powerful application and large availability of the databases, the
data mining become chalengable and trustful research field. The pattern mining is one of the fields
in the data mining. The multi-relational data mining allows pattern mining from multiple table, in
recent years multi-relational pattern mining is developing rapid manner. Even though the existing
multi-relational mining algorithms are not ideal for the large amount of data. In this paper, we
have developed a technique to mine the multi-realtional pattern using a relational tree. The
relational tree constructed by reading the records from multi-relational database one by one and
make the combination (relations) according the presence of fields in the database. From this we
get the relational tree data structure without violating the relations of the records. Subsequently ,
the tree pattern mining algorithm is formulated and applied to the developed tree structure for
mining the important relational patterns from the relational tree. The experimentation is carried
out on the patient medical database and comparative results are extracted and the performance of
the proposed approach is evaluated based on the existing work. Copyright © 2013 Praise Worthy
Prize S.r.l. - All rights reserved.
Keywords: Relational Tree, Pattern Mining, Multi-Relational Database, Single Relation, MultiRelation, Multi-Relation Data Mining
I.
Introduction
In common, data mining algorithms deal with patterns
in data [1]-[24]. The majority of the available data
mining approaches search for patterns in a single data
table, multi-relational data mining (MRDM) [2] approach
involves patterns with multiple tables (relations) from a
relational database [3], [4], [21], [22]. The word multirelational data mining was first employed by Knobbe et
al. [5] to describe a new methodology for relational
learning. Multi-Relational Data Mining (MRDM) is the
multi-regulational domain dealing with knowledge
identification from relational databases including
multiple tables. Mining data include complex/structured
objects, which falls within the scope of this domain,
since multiple tables are required by the normalized
representation of such objects in a relational database.
The domain is looked forward at integrating results
from available related fields such as inductive logic
programming, KDD, machine learning and relational
databases; producing new methodologies for mining
multi-relational data; and practical applications of such
methods. Multi-relational data mining has been marked
as a continuation to the simple transactional data model.
However, addressing the problem in full sense has
proved to be an intimidating task.
Relational data mining (RDM) refers to [6], many of
which that are are based on inductive logic programming
(ILP, [7]), search for patterns that involve multiple tables
(relations) from a relational database.
Manuscript received and revised March 2013, accepted April 2013
To highlight this fact, RDM is often termed to as
multi-relational data mining (MRDM, [8]). MultiRelational Data Mining has been motivated by the
relational model [9]-[11]. The relational model
introduces a number of methods which are used to store,
manipulate and retrieve complex and structured data in a
database consisting of a pool of tables.
It was the governing standard for industrial database
applications throughout the last decades, and it is
generally called as relational database management
systems (RDBMS), which is at the foundation of all
major commercial database systems. Also it imparts
information about associations between tables:
stipulations of how records in one table communicate
with records in another table. Associations can be viewed
as minor generalizations of the foreign key notion. They
highlight the relation between two tables and find out the
number of details regarding the relationship.
The collection of named tables in a relational
database, usually referred as relations that individually
act as a single table. Practically, an association in a
relational database will always emerge as a primary keyforeign key pair alongside with the necessary referential
integrity constraint [12].
Multi-relational data mining methods are classically
based on two complementary approaches: a propositional
approach and a structural approach [13].
In propositionalisation, an alteration of relational
learning
problems
in
classical
attribute-value
representations agreeable for conventional data mining
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
1053
M. Ravi Sankar, P. Prem Chand
methods is performed. According to structural approach,
the mining method directly explores the entire hypothesis
space [14]. The available MRDM approaches take into
account of all the main data mining tasks, including
association analysis, classification, clustering, learning
probabilistic models and regression.
The pattern languages used by single-table data
mining approaches for these data mining tasks have been
unmitigated to the multiple-table case. Relational pattern
languages now consist of relational association rules,
relational classification rules, relational decision trees,
and probabilistic relational models [15], among others.
MRDM algorithms have been generated to mine for
patterns articulated in relational pattern languages [16].
Various researchers have offered algorithms for
mining potential information from multi-relational
databases. Some of them are listed here. In 1999, Knobbe
et al. [5] have summarized a general structure for multirelational data mining which utilizes structured query
language (SQL) from multi-relational data to collect the
information required for creating classifiers (e.g.,
Decision trees).
According to this framework, several algorithms for
multi-relational data mining have been generated. The
experiments reported by Leiva [17] have proved that
MRDTL – a multi-relational decision tree learning
algorithm is spirited with other approaches to learn from
relational data. One universal feature of all algorithms
based on the multi-relational data mining framework,
proposed by [5], is about their usage of selection graphs
for inquiring the relevant databases to acquire the
information (e.g., statistics) required for constructing a
model [18].
We presented a technique in this paper, to mine
relational patterns using a relational tree. The multirelational database contains multi-valued data, we create
the preprocessing step to make all the data in a single
format, since it is complicated to convert into a tree data
structure directly. We create two types of pattern
combinations in the proposed approach like single
relation patterns and multi-relation patterns.
The single relations are prepared by the combination
of attributes from any single table and multiple relations
are prepared by the combination of tuples from a further
single table. For constructing the relational tree, initially
the system has to detect the target table among the multi
table with the help of a number of foreign keys. When
compared to others the target table has an additional
number of foreign keys. The parent node of the relational
tree with a unique value is preferred from the target table.
The system examines the records one by one with the
help of a root node and make the combination (relation)
of the attributes existed in the record. Similarly all of the
records are stated formally from the database and if the
same combination is acquired then the count of the
combination (subnode) will be improved one by one. The
mining procedure tracked to mine the recurrence relation
of single and multi-relation patterns, after the
construction of the relational tree.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
If the count of the subnode is greater than the user
defined threshold then the corresponding relation is
defined as the significant relation.
The rest of the paper is structured as follows: In
Section 2, a brief review of some of the literature works
in the realtional data mining is presented. In section 3,
the proposed methodology for construction of relational
tree and mining procedure is provided. In Section 4, the
experimental results and perform analysis discussion is
provided. Finally, the conclusions are summarized up in
Section 5.
II.
Review of Recent Related Works
The literature imparts few works for multi-relational
pattern mining. We are presenting some of the works
here. Jun-Ichi Motoyama et al. [1] have proved a mining
algorithm using property items mined from sampled
examples. Based on a bottom-up property extraction
from paradigms, they proposed a mining algorithm for
relational frequent patterns. The extracted properties,
termed as property items, were used to build patterns by
a level-wise way like Apriori. The property items were
supposed to have a special form, that was specified in
terms of mode declaration of predicates. The algorithm
shaped regular item sets as patterns without duplication
in the sense of a logical equivalence. It was assessed with
four different data sets with comparison to Warmr and
implemented as a system called Mapix.
With relational database systems, Nobuhiro Inuzuka et
al. [2] have presented the implementation of multirelational mining. Based on the ILP approach, pattern
miners create communicative patterns and were wideapplicative but computationally high-priced because the
miners explore among large pattern space. They had been
suggesting a mining algorithm called MAPIX. By
restricted patterns into combinations of the atomic
properties, it obtained efficiency compared with
conventional algorithms containing WARMR, in order to
range MAPIX to consider large data sets on standard
relational database systems and they studied
implementation issues.
Based-on combination of properties with conserving
their structure in the examples, Yusuke Nakano et al.
[12] have presented multi-relational pattern mining. They
proposed an algorithm through the problem recognized in
WARMR for multi-relational pattern mining. To sweep
away the combinatorial problem of large pattern space,
another algorithm MAPIX confines patterns into
combination of basic patterns, called properties. A
property was described as a set of literals emerged in
examples and was of an extended attribute-value form.
o create patterns from pattern fragments appeared in
the examples was an advantage of MAPIX. Many
patterns that were not occurring in examples were not
tested.
Although the range of patterns was understandable
and MAPIX itemizes them efficiently, a large part of
patterns were out of the range. The algorithm combined
International Review on Computers and Software, Vol. 8, N. 4
1054
M. Ravi Sankar, P. Prem Chand
properties, they specified it as a structure preserving
combination.
Constraint-based pattern mining in multi-relational
databases were presented by Siegfried Nijssen et al. [13].
They suggested a structure for constraint-based pattern
mining in multi-relational databases. Distinctive features
of the structure were that (1) it allowed searching
patterns not only under anti-monotonic constraints, but
also under monotonic constraints and closeness
constraints, among others, articulated over complex
aggregates over multiple relations; (2) it constructs on a
declarative graphical representation of constraints that
bonds closely to data models of multi-relational
databases and constraint networks in constraint
programming; (3) it relates multi-relational pattern
mining tasks into constraint programs.
Their structure fabricates on a unifying outlook of
multi-relational pattern mining, relational database
technology and constraint networks in constraint
programming. They established our structure on IMDB
and Finance multi-relational databases.
Aída Jiménez et al. [15] have presented a method to
extract multi-relational databases using trees.. Their
methodology was based on the demonstration of multirelational databases as sets of trees, for which they
projected two complementary representation schemes.
Tree mining techniques can be applied on the basis for
multi-relational data mining techniques, such as multirelational categorization or multi-relational clustering.
They evaluated the variations between identifying
induced and embedded tree patterns in the proposed treebased representation methods and they deliberated the
relationships among the sets of tree patterns that can be
identified in each case.
Also explained how these frequent tree patterns can be
applied, for instance, to mine association rules in multirelational databases.
An approach for discovering motivating patterns in
multidatabases have presented by Chengqi Zhang et al.
[16]. They built up a technique for mining
multidatabases. The mining algorithm was built up by
comparing to traditional multidatabase mining strategies
that had been spotlighted on discovering mono-databasemining-like patterns, was capable to discover both the
commonality and individuality among the local patterns
in branches within a company. Since the commonality
was significant in terms of global decision-making,
exceptional patterns frequently present as more
enchanting than commonality patterns in such fields as
marketing, science discovery, and information safety.
They assessed the preceding proposed technique, and
experimental results established that the approach was
efficient and promising.
Multi-relational pattern mining system for general
database systems have employed by Nobuhiro Inuzuka et
al. [18]. A methodology based on ILP (inductive logic
programming) was suggested where they considered
patterns on many tables. The approach created
communicative patterns and was wide-applicative but
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
computationally pricey.
MAPIX had a benefit that pattern was developed by
combining atomic properties mined from sampled
examples and it limited patterns into combinations of the
atomic properties where it acquired efficiency judged
against with other algorithms.
III. The Proposed Technique To Mine the
Multi-Relational Patterns Using
Relational Tree and a Tree Pattern
Mining Algorithm
The extraction of important patterns from the multirelational database is a challenging in the data mining
fields. Many of the data mining approaches are working
only for the single relation table [23], [24], at the same
time most of the applications are using the multirelational database to store their details, for example the
hospital management stores their patient details, bank
management stores their client details. However the
multi-relational databases are faithful and honest and
they are very user friendly.
The structural way is one of the convenient way to
mining the important patterns from the multi-relational
database. In the proposed approach, in order to achieve
the structural representation we convert the relational
database into the relational tree structure.
With the help of our proposed approach, we mine the
two types of patterns from the structural relational tree,
the first one is Single relational patterns and the second
one is Multirelational patterns the patterns. We use the
two important steps to mine the relational patterns that
are given below:
1. Construction of relational tree from multi-relational
database;
2. Mining of important relational patterns of the
relational tree.
III.1. An Overview of Multi-Relational Database
A relational database is created by numerous
interaction with the type of two-dimensional tables. The
records are assumed as rows (tuples) and the column
(field) are specified as attributes.
The MRDM (multi-relational database) consists of a
set of tables MRDB  T1 , T2 ,  , Tn  that are
connected together through the foreign keys and each
table Ta consists of a set of attributes Ta   A1 , A2 , An 
that are related to fields and tuples. The foreign key helps
to make the relation between the attributes in the
different table.
Generally the relational databases are connected
through the foreign keys. If one or more columns in a
single table (referencing table) that connect to a column
or more column in another table (referenced table) with
the help of the foreign key. In order to avoid the
confusion of the location of the table, the name of the
International Review on Computers and Software, Vol. 8, N. 4
1055
M. Ravi Sankar, P. Prem Chand
table should be a primary key.
In this paper, we handles the hospital multi-relational
database to mine the important relations.
The database consists of three tables, the first one is
basic information about the patient, second one is
laboratory examinations and the final one is a hospital
information system.
Example
In the multi-relational database, the data regarding to a
particular area or field is circulated over the tables. From
the multi-table, a single table that connects to all other
tables through the foreign key relation, consider that
table as a target table. The following Fig. 1 represented
using the three different tables such as patient
information Ta and laboratory information Tb hospital
information Tc . Here, the table patient information Ta is
a target table which consists of seven attributes such as
patient ID, gender, date of birth, admission, Lab ID,
Hospital ID, diagnosis where, Hospital ID id and Lab ID
are the foreign key relations. The following Fig. 1 shows
the relational database.
becomes difficult since we convert such format into three
types of patient senior, major, miner. This will easy to
group the patient according to the date of birth of the
patient. Table I explains how the attributes are changed
one format into another format.
III.3. Construction of Relational Tree
from Multi-Relational Database
In the proposed approach, we use a relational tree for
representing the multi-relational database.
The attributes and their relations contained in the
multi-tables are signified by the set of nodes in the
relational tree. Initially, the multi-relational database is
converted into the relational tree, like relational algebra
tree [19]. Here, based on the idea of the relational algebra
tree, the relational tree will be constructed by including
the relations (attribute information) in every node.
The relational tree contains the relationship of one
attribute to each other attribute present in the same table
(single relation) and one attribute with all other attributes
(multi relation) in an appropriate way so that mining of
information from the multi relational database will be
efficient since, the medical database (hospital database)
will be used to mine the relational patterns the relations
are considered in the relational tree. Once the relational
tree is constructed, the tree pattern mining algorithm will
be developed to mine the relational patterns from the
multi-relational database. Fig. 2 shows that the format of
the relational tree structure of the hospital database.
TABLE I
THE ORIGINAL FORMAT AND THE PREPROCESSED FORMAT OF THE
ATTRIBUTES OF TABLES
Fig. 1. The multi relational database
The attributes of the tables consist of multivalued
inputs but our objective is to mining the important
patterns through relational tree in view of the fact that
imports of the multivalued input into the relational tree
become difficult.
Before the construction of relational tree, we need to
convert the multivalued input data into the single value
data through preprocessing phase.
Table
Attribute
A
DOB
C
GOT
GPT
LDH
III.2. Pre-Processing of Multi-Relational Database
In this paper, we are using the hospital multi-relational
database to mine the important relation among the
attributes through a relational tree.
The difficulty behind is, some of the attributes having
lots of numerical values and multivalued data, importing
the count of all data is direct to more running time and
memory usage of the tree. When we take the count of
some of the attributes in the direct format, the count is
very less since the mining process is not completed
properly.
Consider the attribute from the table Ta “DOB” is in
the format of DD-MM-YYYY, counting of each data
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
ALP
Total
protein
Urea
Nitrogen
Original
format
DD-MMYYYY
Numeric
values
between
10 to 470
Numeric
values
between 6
to 498
Numeric
values
between
122 to
1330
Numeric
values
between
33 to 1330
Numeric
values
between
0.9 to 11.2
Numeric
values
between 6
to 115
Age >60
Age <60
Age <18
Value < 60
Value > 60
Conversion
format
Senior
Major
Minor
Normal
Abnormal
Value < 60
Value > 60
Normal
Abnormal
Value < 500
Value > 500
Normal
Abnormal
Value < 300
Value > 300
Normal
Abnormal
Value < 6.0
Value > 6.0
Value > 8.5
Less protein
Normal level
High protein
Value < 30
Value > 30
Normal
Abnormal
Condition
International Review on Computers and Software, Vol. 8, N. 4
1056
M. Ravi Sankar, P. Prem Chand
Fig. 2. The relational tree structure of the multi-relational database
III.4. Generation of Single Relation Patterns
For construction of single relation patterns, the system
reads the records only from the single table. All the
combinations from any single table named as single
relation patterns. The multi-relational database consists
of P number of tables Tc where 1  i  p  . In order to
find out the single relation patterns initially, we need to
find out the target table between them. In order to find
out the target table, find out the number of foreign keys
present in each table. Select the table as target table
which consist of a number of foreign keys.
The target table is easily connected with the other
tables. The target table is also used to find out the root
node of the relational tree. The root node of the relational
tree selects from the target table which is a unique value.
After finding the root node, the system selects the
table to make the single relational patten. The system
reads the record one by one of selected table among the
multiple table and make the combinations according to
the values present in the records.
Example: Among the three tables A, B, C in the multi
relation table, the table A become target table because
the table A has the 2 foreign keys like Lab ID and
Hospital ID. The unique attribute of the table A (patient
ID) become the root node of the relational tree.
The system selects the table A from multi-relational
database to make the single relation patterns.
The table A has a number of attributes since the
system can make  m   n  f   1  levels of length of the
root node. The two attributes are combined for making
length 1, the combination of the attributes is based on the
values of the attributes present in the record of the
selected table. Consider table A having the attribute
Gender, Admission, DOB, Lab ID, Hospital ID,
Diagnosis. The combinations are generated based on the
records present in the selected table. If the records have
the value male under gender and senior under DOB, then
the upcoming combination is (male:senior:1).
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
When the same combination is repeated then the count
of that combination gets increase one by one. Likewise
each record of the table has read out from the table and
make the combinations according to the values present in
the record.
Input: multi-relational database
Output: single relational tree
Assumptions
P  Total number of tables Ti  where 1  i  P 
n f

 Number of foreign keys
m  Number of attributes in table Ti
cnt _ val  Count value of combinations
Pseudo code
1.
The multi - relational database consists of P
No.of tables
2.
Calculate n  f  in each table
3.
Select table Ti as target table which having the
highest value of n  f
4.

Select an attribute Ai as root node from the
target table Ti which is unique
5.
Each table has m No.of attributes
6.
Read first record from the table Ti
7.
Make combinations of attributes upto
 m   n  f   1  length based on the presence of
attributes in the table Ti
8.
Add cnt _ val for each combination
9.
Add cnt _ val of combination again if the same
is repeated
10. Make 1 length combination as subnode of root
node
11. Likewise make m  1 length combination as
subnode of m  2 length combination
12. Read next record
13. Go to step 7
International Review on Computers and Software, Vol. 8, N. 4
1057
M. Ravi Sankar, P. Prem Chand
III.5. Generation of Multi-Relation Patterns
For construction of multi-relation patterns, the system
reads the records from all tables from the multi-relation
database. All the combinations from more than one table
named as multi-relation patterns. The selection of target
table and the selection of root node of the relational tree
procedure also same as the previous section. The number
of lengths of combination (subnodes) has been higher
than the single relation since here the all the tables are
taken to make the multi-relation combinations. Consider
the total number of attributes is M then the total number
of lengths is  M   n  f   1  , the n  f  denotes the
number of foreign key present in the target table. The
system reads the first record of the each table and make
the combinations according to the values present in the
records.
Input: Multi-relational database
Output: Single relation patterns
Assumptions
P  Total number of tables Ti  where 1  i  P 
n f

 Number of foreign keys
M  Number of attributes in all tables
cnt _ val  Count value of combinations
Pseudo code
1. The multi - relational database consists of P No. of
tables Ti  where 1  i  P 
2. Calculate n  f

in each table
important combination rather than the cnt_val of node
not support to the threshold then such node not
considered as important node.
Input: Single relational tree or multi-relational tree
Output: Important single relation or multi-relation
patterns
Assumptions
cnt _ val  Final count value
Th  Threshold value given by the user
Pseudo code
Begin
For each length pattern
If
 cnt _ val  subnode  i    Th 
Add that subnode into set of important
relations {imp relations ()}
Go to next subnode i+1
Else
Terminate the (subnode (i))
End if
End for
End
IV.
Experimental Results and Discussion
The experimental results of the proposed approach for
mining relational patterns are presented in this section.
The proposed approach has been implemented in java
(jdk 1.6) and the efficiency of the proposed approach is
evaluated evaluation metrics.
3. Select table Ti as target table which having highest
the highest value of n  f

IV.1. Experimental Environment and Dataset
4. Select a attribute Ai as root node from the target
table Ti which is unique
5. Calculate the value of M
6. Read first record from the all table presence in the
multi-relational database
7. Make
combinations
of
attributes
up
to
 M   n  f   1  length based on the presence of
attributes
8. Add cnt _ val for combination
9. Add cnt _ val of combination again if the same is
repeated
10. Read next record
11. Go to step 7
III.6. Mining of Important Relation Patterns
from Relational Tree
The single relational tree consists m-1 length and
multi-relational tree consist of M-(1+n(f)) number of
lengths and each length has T number of nodes each of
them has a count of their own. The system visit every
node of the each length patterns of the tree. If the node
has the count value greater than user defined threshold
then, that relation (combination) is said to be an
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
We have used the real dataset for mining relational
patterns and experimentation is performed on a 3.0 GHz
dual core PC machine with 2 GB main memory.
We have used the real dataset, where the data source
[20] containing 8000 records. The database was collected
at Chiba University hospital. Each patient came to the
outpatient clinic of the hospital on collagen diseases, as
recommended by a home doctor or a general physician in
the local hospital. Collagen diseases are auto-immune
diseases. Patients generate antibodies attacking their own
bodies. For example, if a patient generates antibodies in
lungs, he/she will chronically lose the respiratory
function and finally lose life. The disease mechanisms
are only partially known and their classification is still
fuzzy. Some patients may generate many kinds of
antibodies and their manifestations may include all the
characteristics of collagen diseases.
In collagen diseases, thrombosis is one of the most
important and severe complications, one of the major
causes of death. Thrombosis is an increased coagulation
of blood, that cloggs blood vessels. Usually it will last
several hours and can repeat over time. Thrombosis can
arise from different collagen diseases. It has been found
that this complication is closely related to antiCardiolipin antibodies.
International Review on Computers and Software, Vol. 8, N. 4
1058
M. Ravi Sankar, P. Prem Chand
This was discovered by physicians, one of whom
donated the data sets for discovery challenge.
Thrombosis must be treated as an emergency. It is
important to detect and predict the possibilities of its
occurrence. However, such database analysis has not
been made by any experts on immunology. Domain
experts are very much interested in discovering
regularities behind patients' observations.
The database consists of three tables. (TSUM_A.CSV,
TSUM_B.CSV, TSUM_C.CSV). The patients in these
three tables are connected by ID number.
Fig. 5. The number of patterns of table C based
on the threshold values
IV.2. Performance Evaluation
Our ultimate aim is to mine important relational
patterns from the multi-relational database. Based on the
proposed approach, we construct the relational tree for
the input multi-relational database and the constructed
tree contains a set of nodes for each length of pattens.
Then, the relational patterns are mined from the
relational database using the proposed approach for tree
pattern mining. The performance of the proposed
approach is evaluated by means of following measures 1.
How much number of patterns are mined for each
length by varying the values of the threshold value and
number of records from the database. The patterns are
mined for single relation and multi-relation. The we
evaluate the running time and memory usage of the
proposed system by varying values of the threshold and
number of records from the database.
Fig. 6. The number of multi-relation patterns based
on the threshold values
Fig. 7. The number of patterns of table A based
on the size of the database
Fig. 3. The number of patterns of table A based
on the threshold values
Fig. 8. The number of patterns of table B based
on the size of the database
Fig. 4. The number of patterns of table B based
on the threshold values
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1059
M. Ravi Sankar, P. Prem Chand
Fig. 13. The running time of the proposed approach
based on the threshold values
Fig. 9. The number of patterns of table C based
on the size of the database
Fig. 14. The memory usage of the proposed approach
based on the threshold values
Fig. 10. The number of multi-patterns based
on the size of the database
Sample result
Male : 201
Female : 997
Senior : 426
Major : 477
Minor: 296
InPatient = 477 OutPatient: 685
A[G-C-Ad] (single relation – 2 length pattern)
F : Senior : InPatient : 232
M : Senior : InPatient : 38
A.[g:got:gpt:ldh:alp:un] (multiple relation – 5 length
pattern)
F : [GOT]Normal : [GPT]Normal : [LDH]Normal :
[ALP]Normal : [UN]Normal=620
M : [GOT]Normal : [GPT]Normal : [LDH]Normal :
[ALP]Normal : [UN]Normal=112
A.[c:got:gpt:ldh:alp:tp] (multiple relation – 5 length
pattern)
Major : [GOT]Normal : [GPT]Normal :
[LDH]Normal : [ALP]Normal : [TP]Normal=224
Minor : [GOT]Normal : [GPT]Normal :
[LDH]Normal : [ALP]Normal : [TP]Normal=129
Senior : [GOT]Normal : [GPT]Normal :
[LDH]Normal : [ALP]Normal : [TP]Normal=164
[A. G - B. Th] (multiple relation-1 length)
F : 1.0(MostSever)=38
M : 1.0(MostSever)=13
From the sample result we conclude most of the
patients are “female” while consdering the age of the
patient most of them are “major” and most of the pateints
are get the treatment by “outpatient”. Most of the patients
are senior females they are admitted at inpatient in
hospital. At the same time the senior male Inpatient are
very less when compared with the female. From the
Fig. 11. Running time of the proposed approach
by varying the size of the databse
Fig. 12. The memory usage of the proposed approach
based on the size of the database
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1060
M. Ravi Sankar, P. Prem Chand
hospital database major having the normal condition upto
46% and 43% of minor patients are normal conditions
and 38% of senior patients are normal conditions. 6% of
males are affected by the thrombosis disease but the
female are affected 3% of thrombosis disease
V.
Conclusion
We have developed the a technique to mine the multirelational patterns using relational tree and a tree pattern
mining algorithm. At first, multi format attributes from
the multi-relational database are converted into single
format through preprocessing phase. Subsequently the
target table is find out from the multiple tables which
consists of more number of foriegn keys, the target table
also used for finding the root node of the relational tree.
In the relational tree, we make the tree structure for
single relation and multiple relations.
We formulate the efficient relational tree mining
algorithm to mine the important relations from the
relational tree. The experimentation process is carried out
for the real world dataset of patient medical dataset and
the performance analysis of the proposed approach is
estimated by the evaluation metrics like number of
relation patterns in each length by varying the threshold
values and size of the database, running time and
memory usage.
References
[1]
Jun-Ichi Motoyama, Shinpei Urazawa, Tomofumi Nakano and
Nobuhiro Inuzuka, "A Mining Algorithm Using Property Items
Extracted from Sampled Examples, Inductive Logic
Programming, pp. 335-350, 2007.
[2] Nobuhiro Inuzuka and Toshiyuki Makino, "Implementing Multirelational Mining with Relational Database Systems", 13th
International Conference on Knowledge-Based and Intelligent
Information and Engineering Systems, pp. 672 - 680, 2009.
[3] Oded Z. Maimon, Lior Rokach, “Data mining and knowledge
discovery handbook.” Springer 2005.
[4] Saso Dzeroski, "Multi-relational data mining: an introduction",
ACM SIGKDD Explorations Newsletter, COLUMN: Multi
Relational Data Mining (MRDM), Vol. 5 , no. 1, pp. 1 - 16, July
2003.
[5] J. Knobbe, H. Blockeel, A. Siebes, and Van der Wallen D. Multirelational data mining. In Proceedings of Benelearn 99, 1999.
[6] S. Dzeroski and N. Lavrac, editors. Relational Data Mining.
Springer, Berlin, 2001.
[7] S. Muggleton, editor. Inductive Logic Programming. Academic
Press, London, 1992.
[8] S. Dzeroski, L. De Raedt, and S. Wrobel, editors. Proceedings of
the First International Workshop on Multi-Relational Data
Mining. KDD-2002: Eighth ACM SIGKDD International
Conference on Knowledge Discovery and Data Mining,
Edmonton, Canada, 2002.
[9] Ullman, I.D. Principles of Databases and Knowledge-Based
Systems, Volume I, Computer Science Press, 1988
[10] Ullman, J., Widom, J., A First Course in Database Systems,
Prentice Hall, 2001.
[11] Date, C. An Introduction to Database Systems, Volume I, The
Systems Programming Series, Addison-Wesley, 1986.
[12] Yusuke Nakano and Nobuhiro Inuzuka, "Multi-Relational Pattern
Mining Based-on Combination of Properties with Preserving
Their Structure in Examples, In Proceedings of the 20th
international conference on Inductive logic programming, pp.
181-189, 2010.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
[13] Siegfried Nijssen, A´ıda Jim´enez and Tias Guns, "Constraintbased Pattern Mining in Multi-Relational Databases", In
Proceedings of the 11th IEEE International Conference on Data
Mining, pp. 1120-1127, 2011.
[14] Michelangelo Ceci and Annalisa Appice, “Spatial Associative
Classification: Propositional vs Structural approach”, Journal of
Intelligent Information Systems, vol. 27, no. 3, pp: 191- 213,
November 2006.
[15] Aída Jiménez, Fernando Berzal and Juan-Carlos Cubero, "Using
trees to mine multirelational databases", Kluwer Academic
Publishers Hingham, vol. 24, no. 1, pp. 1-39, 2012.
[16] Chengqi Zhang, Jeffrey Xu Yu and Shichao Zhang, "Identifying
Interesting Patterns in Multidatabases", Classification and
Clustering for Knowledge Discovery, vol. 4, pp. 91-112, 2005.
[17] Hector Ariel Leiva. A multi-relational decision tree learning
algorithm. M.S. thesis. Deparment of Computer Science. Iowa
State University, 2002.
[18] Nobuhiro Inuzuka and Toshiyuki Makino, "Multi-Relational
Pattern Mining System for General Database Systems", In
Proceedings of the 14th international conference on Knowledgebased and intelligent information and engineering systems, pp.
72-80, 2010.
[19] Jameson Mbale, Jackson Phiri and Tie Jun Zhao, "Relational
Algebra Tree – Algorithm Data Mining (RAT-Adm): A System
That Computes Query Optimization", International Journal of
Data Engineering (IJDE), Vol. 1, no. 4, 2001.
[20] A Collaborative Effort in Knowledge Discovery from Databases
from http://lisp.vse.cz/pkdd99/Challenge/chall.htm
[21] Seyyed Mohammad Saeed Tabatabaee, Ehsan Rafiee, Mohammad
Jafar Abdi, Mohammad Reza Kangavari, Applying a Fuzzy
Association Rule Mining Approach in the Robocup Soccer
Simulation Domain, (2009) International Review on Computers
and Software (IRECOS), 4 (1), pp. 133 - 141.
[22] G. Yılmaz, B. Y. Badur, S. Mardikyan, Development of a
Constraint based Sequential Pattern Mining Tool, (2011)
International Review on Computers and Software (IRECOS), 6
(2), pp. 191-198.
[23] Aloysius George, D. Binu, “DRL-PREFIXSPAN: A Novel
Pattern Growth Algorithm for Discovering Downturn, Revision
and Launch (DRL) Sequential Patterns”, Central European
Journal of Computer Science, springer publication, vol. 2, no. 4,
pp. 426-439, 2012.
[24] Aloysius George, D. Binu, "An approach to products placement in
supermarkets using PrefixSpan algorithm", Journal of King Saud
University – Computer and Information Sciences, Elsevier
publication, vol. 25, no. 1, pp. 77-87, 2012.
Authors’ information
Ravi Sankar M. received the M.Tech degree in
Computer Science & Engineering in 2006. He is
pursuing Ph.D in Computer Science &
Engineering at Acharya Nagarjuna University,
Guntur District. He has 13 plus years of
experience in three reputed Engineering
colleges affiliated to JNTU. Since July 2010, he
has been with Vignan's Lara Institute of
Technology & Sciece, where he is currently an Associate professor in
the department of Information Technology. He is an Editorial board
member for a reputed international journal and also life member of
ISTE.
Prof. P. Prem Chand received the Ph.D
(Computer Science & Systems Engineering)
from Andhra University, Visakhapatnam and
M.E (Computer Engineering) from Andhra
University. Since 1991, he has been with
Osmania University and Guided 4 candidates
towards the Award of Ph.D degree from JNTU,
Hyderabad. He is The Chairman for BOS in
Faculty of Engineering from 2007-to date and also he was the director
AICTE, New Delhi 1998 – 1999 and performed various roles in OU
and AU.
International Review on Computers and Software, Vol. 8, N. 4
1061
International Review on Computers and Software (I.RE.CO.S.), Vol. 8, N. 4
ISSN 1828-6003
April 2013
Errata corrige
In the paper “Automatic Jet Area During Mitral Regurgitation” by Kalpana Saini, M. L. Dewal and Manojkumar
Rohit published on the November 2012 issue of the Journal IRECOS, Vol. 7 N. 6, pp. 2891-2898, the title of Chapter
III was mistyped.
The correct title of Chapter III is:
III. Algorithm for Detection of Jet Area Value
Many apologies to the authors and to our readers for this mistake.
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
International Review on Computers and Software, Vol. 8, N. 4
1062
1828-6011(201304)8:4;1-Q
Copyright © 2013 Praise Worthy Prize S.r.l. - All rights reserved
Download