Computers and Software

3 downloads 3322 Views 17MB Size Report
Image Noise Removal Using Rao-Blackwellized Particle Filter with Maximum ...... [25] http://wordpress-jodoin.dmi.usherb.ca/dataset2012/. [26] Selvaraj, D. ...... CDN Usage of Popular Web Sites", Springer-Verlag Berlin. Heidelberg, pp.
International Review on

Computers and Software (IRECOS) Contents Using Interval Constrained Petri Nets and Timed Automata for Diagnosis of Dynamic Systems by Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

735

An Efficient Real Time Moving Object Detection Scheme Using Diamond Search Algorithm and Mathematical Morphology by Djoudi Kerfa, M. F. Belbachir

744

Multi Biometric Fuzzy Vault Generation Using Chaff Points and Cuckoo Search Optimization by Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

750

Bayesian Network Model for Oath Statement Retrieval: a Case Study in Quranic Text Using Machine Learning Techniques by Ahmad Alqurneh, Aida Mustapha

757

A Conceptual Foundation for Aspect-Oriented Modeling by Sabah Al-Fedaghi

764

An Improved and Efficient Strong Remote User Authentication Using Hash Function and Smart Card by S. Ramesh, V. Murali Bhaskaran

775

Image Noise Removal Using Rao-Blackwellized Particle Filter with Maximum Likelihood Estimation by Bobby Lukose, Anna Saro Vijendran

784

An Efficient Salient Feature Based Histology Image Retrieval by V. Vellingiri, M. Thirumarimurugan, T. Kannadasan

793

Securing Data at Rest by Format Preserving Encryption Using Pass Phrase by S. Vidhya, K. Chitra

803

An Efficient and Dynamic Data Placement, Data Mining and Knowledge Discovery Using Surrogate Object in Mobile Cloud Paradigm by S. Ravimaran, A. N. Gnana Jeevan, M. A. Maluk Mohamed

809

An Efficient User Revocation and Encryption Methods for Secure Multi-Owner Data Sharing to Dynamic Groups in the Cloud by Gokul Geetha Narayanan, S. Raja Ranganathan, S. Karthik

825

A Review on Structural Software-Based Self-Testing of Embedded Processors by Ateeq-Ur-Rehman Shaheen, Fawnizu Azmadi Hussin, Nor Hisham Hamid, Noohul Basher Zain Ali

832

Swarm and Fuzzy Based Co-Operative Cache Management Framework for MANET by Sureshkumar A., R. Samson Ravindran

847

Detection and Localization of Attackers in Wireless Networks by D. Sivakumar, B. Sivakumar

859

Enhancement of Indoor Localization by Path-Loss Reduction Using Modified RSSI Technique by K. Vadivukkarasi, R. Kumar

865

AAEM: Accessibility Assistance Evaluation Metric by B. Gohin, Viji Vinod

872

. (continued)

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

Built-In Stigmergy-Based Load Balancing Model for HPC Clusters by A. Adnane, H. Medromi

883

XML Document Classification by Frequent Itemset Mining on Menonym Tree by Sasikala D., Premalatha K.

892

Errata corrige

900

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software (I.RE.CO.S.), Vol. 9, N. 5 ISSN 1828-6003 May 2014

Using Interval Constrained Petri Nets and Timed Automata for Diagnosis of Dynamic Systems Dhouibi H.1, Belgacem L.1, Mhamdi L.1, Simeu-Abazi Z.2 Abstract – The purpose of the following article is a new approach to modeling, diagnosing and controlling of discrete-event systems. This approach is using a model which combines Interval Constrained Petri Nets (ICPN) and Timed Automata to describe the diagnosed system. The Petri net is used for modelling the system which needs controlling and the timed automata is being used for the controller. This article is a description of a case study, which is a cigarette production system where the tobacco density must be held in an interval. Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved.

Keywords: Fault Diagnosis, Timed Automata, Petri Net, Discrete Event Systems

ICPN is a sub-class of High Level Petri Nets with Abstract Marking (AM-HLPN) [5]-[7]. ICPN model allows to model and guarantee a constraint on any parameter of dynamic systems. In our case it has been used to model the continuous part (liquid flow rate) of level regulation system. The aim is to guarantee the level in the tank between minimum and maximum values. What is more, timed automata is a tool for modelling and verification of real time systems [8], [9]. A timed automata is essentially a finite automata (FSM) extended with real-valued variables. Such automata may be considered as an abstract model of timed systems. This expressive modelling tool offers possibilities of model analysis like verification, controller synthesis and also faults detection and isolation to model dynamic systems whose activity times are included between minimum and maximum values. We use it for modelling the discrete parts of system command. Both tools are applied to a robustness control for regulation systems and for description of dynamical system. First of all, this article presents the process. The following section describes ICPN and gives some basic notions on the timed automata used in the modeling step. The ICPN presents a complement to the P-temporal Petri nets [10]. Therefore, the robust control laws of this model are proven to use production data information of manufacturing production systems. We use the timed automata model to describe the control law. When the global model [11] of the process is completely defined, we present an application to level regulation system in order to illustrate our approach. At the end, a conclusion is presented with some perspectives.

Nomenclature d C Hr Hc n1, n2 n3, n4 C1, C2 CL UCL, LCL

R Q N ai, bi, qi, Va V V

Val0

k IS m  p

Density of tobacco Compactness of tobacco Level in tobacco reservoir Level of the supplying conveyor Levels Hrmin , Hrmax Levels Hcmin , Hcmax Level controls Centreline (average) of all the samples plotted) Upper and lower statistical control limits Set of real numbers Set of radial variables Set of positive integer Rational values Non-empty set of formulas A multiset Initial formulas associated to tokens A token The intervals associated to places A place marking

I.

Introduction

Fault diagnosis in dynamic systems is an issue that has received a lot of attention in the past few decades. Typically in such systems, behavioral deep models are state machine [1] or Petri nets [2]-[4]. This article focuses on fault diagnosis approach based on a model combining two tools: the Petri Net and timed automata. The article considers fault diagnosis of discrete-event systems and tries to combine Interval Constrained Petri Nets (ICPN) with timed automata in order to describe and diagnose the system.

II.

Manufacturing Process

The principle problem in the cigarette transformation and production systems is disregard for the weight of

Manuscript received and revised April 2014, accepted May 2014

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

735

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

C  [Cmin, Cmax]; in g/mm3 Hr  [n1, n2]; in mm Hc  [n3, n4]

manufactured units (see Fig. 1). From a quality point of view, a too heavy cigarette has a difficult drawing while a light one gives consumers an impression of bad quality, because its ends are not well filled and can easily fray. From a cost point of view the excess tobacco in a cigarette is considered as a loss and can cause stopping due to stuffing in the circuit of the tube formation. For a given cigarette, the weight depends on the density of tobacco which again depends on three parameters: the compactness (C) of the tobacco, the levels (Hr) and (Hc), respectively, in tobacco reservoir and of the supplying conveyor. The evolution of these parameters is proper to the typology of the considered cigarette fabric. The compactness (C) of the tobacco is a parameter of the system entry which has to be considered. Its value depends essentially on the raw material. Its variation is random and its distribution can be modeled by a normal law (according to the production statistical data). The level of tobacco varies depending on the compactness and has to be in a given interval to guarantee the good functioning of the system. This level is a variable that depends on the tobacco flow; a parameter which must be supervised in order to maintain an optimal density. This flow is controlled in two steps: at the moment when the distributor is being filled by control C1 and at the moment when tobacco is being carried on the conveyor by control C2.

III. The Modeling Approach The aim is to build a diagnostic system for a process of Fig. 2. We can build it by establishing faulty transitions and must include necessary information about the fault behavior dynamics (time aspect). The diagnoser is based on a global model which combines two tools: the ICPN and timed automata (TA) in order to evaluate the variations of the tobacco quality and Timed Automata to manage the flow type disturbance. For this reason, when the model is built, it is possible to describe the constraints on the quality parameters which are required for manufacturing of products in accordance with the specifications. This model allows setting the system functioning around a target state. Another policy is to control the workshop while following the evolution of the parameters in the course of time in order to compensate for the fluctuations.

Fig. 2. Dynamic global model

III.1. Petri Nets for Regulation Control Petri nets, a mathematical modeling tool, makes graphical modeling, simulation and real time control modeling, more functional [12]. Several classes Petri networks have been developed, each trying to describe a "view" of production systems, their design and conduct [38]-[42]. Among those classes, we include models that integrate the dimension of time [13]-[17]. The extension covers modeling systems whose behavior depends on an explicit values time. The resulting model can treat problems related to the analysis and evaluation of performance through analytical methods. Consequently, Petri nets have been used to model various kinds of dynamic event-driven systems like computer networks [17] communication systems [18]; [19], manufacturing plants; [20] command and control systems [20], real-time computing systems

Fig. 1. Manufacturing system

The control C1 maintains the level of tobacco in the girdle (tobacco reservoir). The level Hr must be comprised between a minimum Hrmin under which the machine stops, locking tobacco, and a maximum level Hrmax over which there is a need for supply. The control C2 regulates the level of tobacco (Hc) on the conveyor. It must be comprised between a minimum level Hcmin under which the tobacco driving cylinder stops, locking tobacco, and a maximum level Hcmax over which the tobacco driving cylinder stops. Therefore our goal is to obtain a homogeneous density of the tobacco. This density depends on the compactness of the tobacco (C), the level (Hr) and the level (Hc), such as:

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

736

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

[22], [23] logistic networks [24] and workflows [25]-[27] to mention only a few important examples. In this work we choose the Petri nets (Intervals Constrained Petri Nets) and the timed automata as modeling tools. In fact, these tools are known as being powerful tools in modeling of Dynamic Systems. Interval constrained Petri Nets (ICPN) are introduced to extend the application field of P-Time PN by proceeding to a functional abstraction of the parameter associated places. Furthermore, introducing a new formalism is an opportunity to review the initial definition. In this way, we present in an unequivocal manner the marking as a multi-set. equally, the transmission of a quantity conveyed by a token is represented explicitly.



A token in the place pi is taken into account in transition validations when it has reached a value comprised between ai and bi. When the value is greater than bi the mark is said to be “dead”. Logically, in the firing of an upstream transition, tokens are generated in output places and their associated variables are equal to:

Val  k   qi  k 

q,

where:  R is a marked PN;  m is an application associating token to places: Let Va be a set of rational variables.

Let V be a multiset defined on V . m : P  V note M the application: M : P  N (set of positive

m , D , Val and X are the above defined applications D and m assign a variable qi  k  to each

p  Card  m  p  



token k in a place pi . A token k of the place pi can take part in the validation of output transitions if:



defines the intervals associated to places. R is the set of real numbers:

qi  k    ai ,bi 

pi  ISi   ai ,bi  with 0  ai  bi 

where [ai, bi] is the static interval associated with the place pi . This token k “dies” when:

D is an application that associates to each pair (place, token) a rational variable q  q  bi  . This

qi  k   bi

variable corresponds to a modification of the associated value of a token in a place.

X is an application which provides a value for each variable of V . Actually, X defines the real value of each q . When X is not defined, there is a possibility to make the model evolve. Furthermore, some mathematical properties may be outlined. It is called mathematical abstraction.

D : m  p   P  Va i, 1  i  n, n  card  P  . Let k  m  pi  .

k

k  qi | ai  qi  bi , where

be a token,

ai , bi

are

rational values fixed by IS :  X is an application that assigns to each variable a value. X : Va  Q ; va  u  Q ; X sets the qi . X 0 defines the initial values of variables.  

 Computing the next step There are two different ways of reaching a state from a given one. The first solution is to use the evolution of associated variables. The other one is the transition firings. The following two definitions correspond to these two evolution possibilities.

Val associates to each token a formula of values in Q . Val is an application of set of the tokens m  p  in V : m  p   V

 k  m  p    v  V , where

(2)

 State definition State E is defined by a t-uple m,D,Val, X where:

p  P  m  p  , where m  p  is a place marking. We

IS : P  R   ,   R  Q    , 

dq 1 dt

where t represents time. In ICPN the application X is not mathematically imposed. However there will be applications where, for example, q parameters represent weight variations of cigarettes. In this case, parameter values associated with pairs (place, token) are independent.

Let V be a non-empty set of formulas to use a variables of Va .



(1)

The signification of q and Val(k) are intentionally not defined in order to provide a general model. The following relation serves as an example with P-time PN:

Definition An ICPN is a t-uple R,m,IS ,D,Val,Val0 , X , X 0

integer) ,

Val0 defines to initial formulas associated to tokens.

k is

a given token. Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

737

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

TABLE I COMPARISON OF PARAMETERS P-TIME PN/ICPN MODEL P-time PN Parameter ICPN model signification C Time cycle Node identifier Q Variation of weight per cycle Variation of time for a piece (compared to cycle reference) ∆Q Variation of Variation of the added weight effective time in place compared to a reference ai Lower bound Lower bound indicates the indicates the minimum weight added minimum time otherwise the quality of needed to execute product is deteriorated the operation bi The upper bound Upper bound indicates the fixes the maximum maximum weight added time to not exceed otherwise the quality of product is deteriorated m Product, resource, Product, resource, constraint constraint

Definition 1: State E'  m',D',Val', X '  is accessible from another state

E  m,D,Val, X 

according to

associated variable evolution if and only if: 1. m'=m 2.  j a token in pi: q’i(j)= qi(j) +qi(j) ai q’i(j)  bi where [ai, bi] is the static interval of the place pi. The possibility of reaching q’i(j) depends generally on the coupling with other q evolutions. This particular aspect is not presented here. Definition 2: State E'  m',D',Val', X '  is accessible state from another state E  m,D,Val, X  by the firing transition ti if and only if: 1- ti is validated from E, 2- p  P, m'  p   m  p   Pr e  p,ti   Post  p,ti  .

An invariant is associated to each state. It corresponds to the conditions needed to remain in the state. The number of clocks depends on the parallelism in the system. The automata can stay in one state as long as the invariant condition is checked. Each transition of an automata is conditioned by an event or temporization called “guard” and its execution determines the discrete evolution of the variables according to its associated assignment. Let us consider the timed automata given in Fig. 3. This automata has two clocks x and y. The continuous evolution of time in this model is represented by x  1 and the labelled arcs in the graph represent the model of discrete evolution. The guard in each arc is a transition labelling function that assigns firing conditions with the transitions of the automata. The affectation is a function that associates with each transition of the automata one relation that allows actualizing the value of continuous state space variables after the firing of a transition. The invariant in the state S0 and S1 are respectively y ≤ 5 and x ≤ 8. The initial state of this system is represented by an input arc in the origin state (S0). In the dynamic model, active clocks are found in each state. A graphical interpretation of the timed automata is the automata graph (see Fig. 3).

Pr e  p,ti  corresponds to the weight of the output arcs from p to ti, P ost  p,ti  corresponds to the weight of the input arcs from ti to p. 3- Tokens that remain in the same place keep the same associated value between E and E'. The newly created tokens take zero values for the q counter associated to their new places. The value allocated to the token k’ by Val is:

Val  k '   Val  k   q  k 

(3)

where k is a token that is in an input place pj of ti and consumed to transition ti. The previous firing rule allows computing states and accessibility-relationships. The set of the firing sequences from an initial state specifies the PN behavior as well as sets of accessible markings or validated firing sequences in the case of Autonomous PN. Mathematically, P-time PN and ICPN have the same properties. However, the physical interpretation that must be given to the model is completely different. Table I summarizes signification of different parameters that take part in both P-time PN and the ICPN. III.2. The Timed Automata for Diagnosis The timed automata tool [27], [28] is defined as a finite state machine with a set of continuous variables that are named clock. These variables evolve continuously in each location of the automata, according to an associated evolution function. As long as the system is in one state Li, the clock xi is continuously incremented. Its evolution is described by X  1 . The clocks are synchronized and change with the same step.

Fig. 3. Example of Timed Automata

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

738

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

In our case verification (analysis) means searching accessible trace of timed automata (reverse path) [29]. This reverse path projects the evolution of the system, from a final faulty state to the initial state. The reverse path is also called diagnostic path. We suppose the initial state is known. Our task can be seen as retrace the automaton graph from the faulty states to the known origin state. The aim is to find from the set of reverse path the coherent ones. The principle of the analysis is shown in automaton graph with fault model (Fig. 4). From fault model one can see that fault F1 can occur from state 2, and the fault F2 from the state 3. The diagnostic model must be defined that if fault occurs in the system, fault must be located according to the time instant. If the fault occurs in the time 4tu, it is fault located as F1. In another case, the fault occurs in the time 7tu, thus the fault F2 is located.

above relation may be approximated by the following one doing a first order linearization [31]. This development gives the relations (4) which describes the behaviour of the process around a reference state:

d  1C   2 H r   3 H c

(4)

with i (i: 1...3) are constant values where: 1=HrHc, 2=C Hc, 3=Hr, and C, Hr, Hc, d are target values. Fig. 5 describes model ICPN of the process presented by Fig. 1. In order to construct this global model with validity intervals, simulation of some real production data was performed. The target values are: d = 0.22, C = 5, Hr = 200 and Hc = 70.

Fig. 5. Validity intervals of the ICPN model Fig. 4. Principle of the backward time analysis

IV.

In this model places Pc, PHr, and PHc denote respectively the compactness, the tobacco level in reservoir, the tobacco level on conveyor belt and trimmer tobacco. Places P1, P2 and P3 represent, respectively, the constraints associated to Pc, PHr, and PHc. These places are considered as “test places” to maintain the specification of the above parameters, which obviously describe the ICPN tobacco flow.

Modelling Process

IV.1. Modelling with ICPN It is possible to construct a RdP model of a shop in order to study the different laws of order while simulating the statistical distribution of the orders on the density [29]. However, it is necessary to assume that the synthesis of the model is subject to mistakes and approximations. Best case scenario, we can recover on the model the outputs of the shop for various values of the parameters. However, the data corresponding to the real outputs of the shops is available. Then it is possible to calculate the tolerances of the parameters directly on statistics of the shop. These last results will be logically more correct than those that integrate the imperfections ensuing the modelling phase. Note that these parameters (d, C, Hr and Hc) are related. Obviously, the variation of one of these parameters provides a variation of the density. When it is outside the validity range, the production has to be rejected or the machine blocks. Our objective is to make sure that the permitted tolerance concerning tobacco density will be respected by controlling Hr, Hc and E parameters. It must belong to a predefined interval. The aim of the controller is to maintain the density specification by changing the setting levels Hr and Hc, whereas they have to remain in a validity interval. We consider the variations of a parameter are always very small comparing to its setting value. Consequently, the

1. Verification of the robustness of the ICPN model Definition: the robustness of a system is defined by its capacity to maintain the specified characteristics facing variations (expected or unexpected). The robustness of a system can be divided in two classes:  A passive robustness when the objectives are kept without modification of the control.  An active robustness when the objectives are kept through a computation (in real-time) of a new control. This study deals with the passive robustness of the process with regard to the perturbations at its entry because of compactness variations of the tobacco. The operating objective is to maintain the specifications on the parameters: C and levels. For this, the Petri-Net model has been simulated using the intervals of Fig. 1, in same. Under these conditions we can conclude that our model is robust shown in Fig. 5 which represents the variation of tobacco density. 2. Control maintaining constant density The effective value of parameters can be calculated with polynomial algorithms [32].

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

739

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

This can be done because the above algorithm is only based on the structural properties of P-time Petri Net. In this case, it has been shown that, under some particular assumptions, the property may be extended to ICPN.

conveyor belt. After the duration t2 the level n4 is reached and the machine goes to the nominal speed. As the level in the reservoir and on the conveyor are respectively greater than n1 and n3 the system is functioning normally. The control sequence is then the following: S0: is the initial position when the machine is initialized. S1: the shaft-off flap open the tobacco flows into reservoir. S2: After the time t1  t1min ,t1max  the cylinder begins

3. Computing the robust control When the ICPN model of the process is completely defined, it is possible to analyse the structural properties. It has been proven that most of the structural properties of P-time PN can be extended to ICPN. Finally, using the production data information, a computing methodology has been applied in order to build the validity intervals of the ICPN model. This approach uses only a sub-part of the information, because we only want to find critical tests which are needed for designing experiments applied in the production data. An observation of the tobacco processing by different units during one month has resulted in picking out the variations of the output measures: compactness, trimmer and the tobacco density. Fig. 6 represents the variation of density. It has plotted control limits that present regulation boundaries, which are managing boundaries, and a centreline gained by calculating average arithmetic value of the measurement samples. In our case the measured values are within control limits and thus the process is under control. A centreline (CL) represents the mathematical average of all the samples plotted. UCL and LCL present respectively the upper and lower statistical control limits that define the constraints of common cause variations.

to rotate and the tobacco flows on the conveyor belt. S3: After an additional time t2  t2 min ,t2 max  the machine reaches its first speed. S4: After an additional time t3  t3 min ,t3 max  the machine reaches its nominal speed. Such as the values of times t1, t2 and t3 depend of compactness value. Fig. 7 represents the nominal model

Fig. 7. Nominal model

We suppose the variations of compactness are very small around a reference value. In this case, our control is cyclic. Then the diagnosis task will be solved in one cycle only. The next step in our work is the model checker. Its purpose to verify if all faulty states in the dynamic model are reachable or if it is necessary to add some other sensors to isolate the faults. The proposed approach deals with time analysis of timed automata. The principle of modeling task is to follow the control sequence. Then let us start building the state space model of the system. We use the levels in reservoir and on the conveyor (three states for each: LOW, MEDIUM and HIGH). This leads to nine states for the timed automation, which correspond to all the possibilities for the levels of tobacco:  State L1L2 (n1n3) denotes LOW level in both parts.  State M1L2 (n10, n3) denotes MEDIUM level in reservoir and LOW level on the conveyor.  State H1L2 (n2, n3) denotes HIGH level in reservoir and LOW level on the conveyor.  State L1M2 (n1, n20) denotes LOW level in reservoir and MEDIUM level on the conveyor.  State M1M2 (n10, n20) denotes MEDIUM level in both parts.  State H1M2 (n2, n20) denotes HIGH level in reservoir and MEDIUM level on the conveyor.  State L1H2 (n1, n4) denotes LOW level in reservoir and HIGH level on the conveyor.  State M1H2 (n10, n3) denotes MEDIUM level in

Density

LSD 23

LID 20 0

100

200

300

400 Time in sec

Fig. 6. Variation of density

We have modelled using the ICPN tool which presents a functional abstraction of the P-temporal Petri Nets, constraints subjected on flow and quality parameters while integrating the margins of robustness. The goal is to satisfy qualitative and quantitative needs of the market. IV.2. Modelling with Timed Automata In this work we model the control part of the system (Fig. 1) using timed automata. Then we use the approach developed by [33] and the approach of [34]. These approaches are based on principle of state and events by integrating the time. We consider the production sequence as following: the system starts from a known initial state. Firstly, the shaft-off flap opens; the tobacco flows into reservoir. After the duration t1 the level n2 is reached, then the drive motor rotates at low speed and the cylinder begins to rotate and the tobacco flows on the

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

740

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

reservoir and HIGH level on the conveyor.  State H1H2 (n2n4) denotes HIGH level in both parts. In this work we are interested only in detecting the overflow of the reservoir (given by HR) and we consider two faults related to the reservoir:  FS (Schaft-off flap stuck open),  FC (Cylinder stuck stopped). When an overflow is detected, according to the time at which it happens we can determine which fault FS or FC occurred. Note that in this faulty model the place representing optimal states is M1M2.  This behavior is represented by the faulty model (Fig. 8) will be combined with ICPN model which guaranties a constraint on any parameter of dynamic systems and represents the continuous part (liquid flow rate).

way of locating a fault, and to determining the time of its occurrence. Fig. 10 describes the variations of the tobacco on the conveyor and in reservoir. Fault detection: The results of real-time faultdetection (Fig. 10) show two fault scenarios: in the first one a fault occurred at t = 30 which corresponds to state H1L2. In the second one a fault occurred at t= 55 which corresponds to state L1H2. Fault Isolation: For the step of fault isolation, the time is considered when a fault occurred. The backward time analysis searches the possible reverse path to locate the fault according to the time of fault occurrence. In our case it is clear that the first default corresponds to Fc “Cylinder stuck stopped “ (Fig. 7) and the second defaults corresponds to FS “Schaft-off flap stuck open” .

Fig. 10. Variation of levels with fault

VI.

This article deals with the diagnostic approach based on modelling of control laws and its flow. This model combines the timed automata and The Petri Nets. It should contain all considered evolution of the system. The proposed modelling with Petri Nets methodology is therefore validated by a large set of data, and it provides an interesting industrial efficiency for the considered case study. Diagnosis method is based on time analysis which uses the timed automata. Our approach is validated through an industrial application and for this validation we have chosen the simplest case. However, our approach can be applied to more complicated cases as well. For example, we interest in the event of fault diagnosis in the presence of common causes.

Fig. 8. Model of the faulty system

V.

Conclusion

Result Application

The designs of experiments are used to exploit the manual controlled data production in order to compute the valid behavior ranges [35]. Also the variation of levels Hr an Hc without faulty are shown in Fig. 9.

Acknowledgements The authors would like to thank the comments provided by the anonymous reviewers and editor, which help the authors improve this paper significantly. We would also acknowledge the help from Zineb SimeuAbazi, Institut National Polytechnique de Grenoble, INPG France.

Fig. 9. Variation of levels without fault

The results of the control are calculated by using a model based on studying real production data. In the next lines, the characteristics of this constructed model are used to calculate a control by using the faulty model. Our objective is to detect and identify the faults occurring in the process. That leads to determining the

References [1]

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

Reger J. and Schmidt, K. A finite field framework for modelling, analysis and control of finite state Automata. Mathematical and

International Review on Computers and Software, Vol. 9, N. 5

741

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

[2]

[3]

[4]

[5]

[6] [7]

[8] [9]

[10]

[11]

[12]

[13]

[14] [15]

[16]

[17] [18]

[19]

[20]

[21]

[22]

[23]

[24]

Computer Modelling of Dynamical Systems 10(3-4):253-285. M. Combacau, M. Courvoisier. A hierarchical and modular structure for FMS control and monitoring. First international Conference on AI, Simulation and Planning in high autonomy systems, Tucson, Arizona, March 1990. S. Elkhattabi, D. Corbeel, J.C. Gentina “Integration of dependability in FMS, 7th IFAC Symposium on Information Control Problems in Manufacturing Technologiy, Toronto, May 1992, pp. 249-255 Sahraoui, M. Couvoisier, R. Valette. Some considerations on monitoring in distributed real time control of flexible manufacturing systems. International Conference on Industrial Electronics Control and instrumentation. IECON 86, Milwaukee, sept. 29 - oct. 3, 1986, p. 805-810 Dhouibi H., Collart Dutilleul S., Nabli L., Craye E., “Using interval constrained Petri Nets for regulation of quality” LSS conference 2010 ,France. P. Yim, A. Lefort, and Hebrard "System Modelling with Hypernets" ETFA’96 IEEE Conferences, pp 37-47, Paris, 1996. Collart Dutilleul S., H. Dhouibi and E.Craye. , "Internal Robustness of Discret Event System with interval constraints in repetitive functioning mode", ACS'2003 conference, Miedzyzdroje Poland, pp. 353-361. Alur R. Dill D. “A theory of timed automata”, Theoretical Computer Science (TCS), 126 (2), 1994, pp. 183-235 Bengtsson J. and Wang Yi, “Timed automata: semantics, algorithms and tools” In lecture Notes on Concurrency and Petri Nets, W. Reisig and G. Rozenberg (eds), LNCS. W. Khansa, J.P. Denat, S. Collart-Dutilleul, "P-Time Petri Nets for Manufacturing Systems". Wodes.96, Edinburgh UK, August 19-21, pp. 94-102, International Workshop on Discret Event Systems, 1996. Mhamdi L., Dhouibi H., Simeu-Abasi Z., Liouane N. Using constrained Petri nets and timed automata for modelling of discrete event systems. IJE, vol.27, pp 113-122, January 2014 Asthana, R., Ahuja, N.J., Darbari, M., Model proving of urban traffic control using Neuro Petri Nets and Fuzzy Logic, (2011) International Review on Computers and Software (IRECOS), 6 (6), pp. 983-987. J. Sifakis. « Use of Petri Nets for Performance Evaluation, Measuring Modeling and evaluating Computer Systems”, E Bleiner and E. Gelenbe editors, Hollande, 1977, pp. 75-93. P. Merlin, A Study of the Recoverability of Computer system». Thèse de Doctorat, Université de Californie, 1974. Khansa W. ; Aygalinc P.; Denat J.-P., Structural analysis of ptime Petri nets, CESA'96 IMACS Multiconference : computational engineering in systems applications, Lille , France. Zhao, Y., Bi, G., Modeling for complex adaptive agent system based on time colored Petri nets, (2012) International Review on Computers and Software (IRECOS), 7 (5), pp. 2495-2501. M. Diaz, Vérification et mise en oeuvre des réseaux de Petri ». Paris, Hermès Sciences Publication, 2003. Ajmone Marsan, M., M. G. Balbo and G. Conte. 1986. Performance Models of Multiprocessor Systems, Massachusetts: The MIT Press. Merlin, P., and D. Farber. 1976. Recoverability of communication protocols - implication of a theoretical study. IEEE Transactions on Communications 1036-1043. Wang, J. 2006. Charging information collection modeling and analysis of GPRS networks. IEEE Transactions on Systems, Man and Cybernetics, Part C 36(6). Venkatesh K., M. C. Zhou, and R. Caudill. Comparing ladder logic diagrams and Petri nets for sequence controller design through a discrete manufacturing system. IEEE Trans. on Industrial Electronics 41(6): 611-619. 1994 Andreadakis, S.K., and A.H. Levis. 1988. Synthesis of distributed command and control for the outer air battle. Proceedings of the 1988 Symposium on C² Research. SAIC, McLean, VA. Mandrioli, D., A. Morzenti, M. Pezze, P. Pietro S. and S. Silva. 1996. A Petri net and logic approach to the specification and verification of real time systems. In: Formal Methods for Real Time Computing (C. Heitmeyer and D. Mandrioli eds), John Wiley & Sons Ltd. Tsai, J., S. Yang, and Y. Chang. 1995. Timing constraint Petri

[25]

[26]

[27]

[28] [29]

[30]

[31]

[32] [33]

[34]

[35] [36]

[37]

[38]

[39]

[40]

[41]

[42]

nets and their application to schedulability analysis of real-time system specifications. IEEE Transactions on Software Engineering 21(1): 32-49. Landeghem, Rik and Carmen-Veronica Bobeanu. 2002. Formal modeling of supply chain: an incremental approach using Petri nets. 14th European Simulations Symposium and Exhibition Dresden, Germany. Mtibaa, S., Tagina, M., A combined Petri nets and model-driven engineering for requirements specification approach for ServiceBased Applications analysis, (2012) International Review on Computers and Software (IRECOS), 7 (5), pp. 2131-2138. Lin, Chuang, Liqin Tian and Yaya Wei. 2002. Performance equivalent analysis of workflow systems, Journal of Software 13(8): 1472-1480. H. Motameni, A.Movagar, M.Fadavi Amiri, IJE Transactions B: Applications, Vol. 20, No.1, April 2007. Trpakis S. Fault diagnosis for timed automata. In: Proc. 7th Int. Symp. Formal Technics in Real-time and Fault tolerant Systems (FTRTFT) 02), Oldenburg, Germany 2002. Wong K. C. and Wonham, W. M. On the Computation of observers in discrete-Event Systems. Discrete Event Systems 14 (1), January 2004, pp. 55-107. H. Dhouibi, M. Bochran, Z. Simeu Abasi, M. Hassani. Diagnosis approach using bond graph and timed automata. IJAREEIE, vol. 2, Issue 9, September 2013. Henri Klajnmic "Intervalles de confiances et intervalles de tolérance". EDF recherche et développement., 2002 Dhouibi H., S. Collart Dutilleul, E. Craye and L. Nabli , "Computing Intervals Constrainted Petri Nets: a tobacco manufacturing application", IMACS conference, Paris, 2005, pp. 440-446. Nabli L., Dhouibi H., Using Interval Constrained Petri Nets for Regulation of Quality: The Case of Weight in Tobacco Factory, International Journal of Intelligent Control and Systems, IJICS, VOL. 13, NO. 3, pp. 178-188, September 2008. Lunze J. and Schroder J. “Sensor and actuator fault diagnosis of systems with discrete input and output” Automatica, 2000. Zineb Simeu- Abazi et al. Fault diagnosis for discrete event systems: modeling and verification. Reliability Engineering et System Safety. Volume 95, Issue 4, April 2010, PP 369-378 Dhouibi H., Collart Dutilleul S., Nabli L., Craye E. Using Interval Constrained Petri Nets for reactive control design: a tobacco manufacturing application; The international journal for manufacturing science et production, Volume 9, NOs, 3-4, pp. 217-229, 2008. Zhao, Y., Bi, G., Modeling of complex rolling multi-agent system, (2012) International Review on Computers and Software (IRECOS), 7 (7), pp. 3532-3537. Fliss, I., Tagina, M., Combining coverability and invariants to diagnose multiple faults in discrete-event systems, (2012) International Review on Modelling and Simulations (IREMOS), 5 (4), pp. 1569-1579. Mazouzi, M., Kallel, O., Hasnaoui, S., Abid, M., Modelling and evaluating a crossbar Switched Fabric CAN Network using stochastic and colored Petri nets, (2012) International Review on Computers and Software (IRECOS), 7 (2), pp. 568-578. Jalilvand, A., Noroozian, R., Ashouri, A., Modeling and evaluating of protection schemes based on petri nets, (2011) International Review on Modelling and Simulations (IREMOS), 4 (1), pp. 180-187. Kuo, J.-L., Chao, K.-L., Grid-connected multilevel inverter with intelligent Petri nets controller for ocean current power generation system, (2010) International Review of Electrical Engineering (IREE), 5 (3), pp. 858-869.

Authors’ information

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

1

LARATSI- ENIM –University Monastir, Tunisia.

2

G-SCOP -University Joseph Fourier , France.

International Review on Computers and Software, Vol. 9, N. 5

742

Dhouibi H., Belgacem L., Mhamdi L., Simeu-Abazi Z.

Hedi Dhouibi received his Engineer degree of maintenance and DEA at National School of Engineering - University of Center, Tunisia in 1997 and 1999 respectively. In 2005, he obtained his doctorate degree in Industrial automation: automatic and Industrial computing from University of the sciences and the technologies of Lille France. He is currently Assistant professor of Electrical Engineering at University of Kairawan Tunisia. His research interests include Modeling, Intelligente Control and Monitoring and command Manufactory systems. Lobna Belgacem was born in Teboulba, Tunisia, in 1987. She graduated from the National School of Engineering of Monastir, University of Center. She obtained her Engineer degree of electrical and Master in 2012 and 2013, respectively. Actually, she is preparing her doctorate degree in automation. She is former member in LARATSI - (Labortoire d’Automatique, Traitement de Signal et Imagerie), University Monastir, Tunisia. Dr. Zineb Simeu-Abazi is Assistant Professor at the Polytech’Grenoble in the University Joseph Fourier where she teaches control processing, Automation and Industrial Engineering, dependability and Industrial Maintenance. She holds a Ph.D. in Computer Science and Automation at the Institut National Polytechnique de Grenoble, INPG France on 1987 and an « Habilitation à Diriger des Recherches” » HDR in 1998, from Grenoble University, France. She is particularly interested in the on line maintenance, diagnostic, recycling and performance evaluation fields. In relation to these topics she took scientific responsibility of French and International projects/groups on e-maintenance such as the CNRS MACOD working group (Modelling and Optimisation of Distributed vs. Collaborative Maintenance). She is a president of the scientific council of diag21 association.

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

743

International Review on Computers and Software (I.RE.CO.S.), Vol. 9, N. 5 ISSN 1828-6003 May 2014

An Efficient Real Time Moving Object Detection Scheme Using Diamond Search Algorithm and Mathematical Morphology Djoudi Kerfa, M. F. Belbachir Abstract – In this paper, we propose an efficient real time moving object detection algorithm on video sequences obtained from a stationary camera. It is based on motion estimation and compensation using block-matching algorithm to detect a moving objet. It consists of the following steps: the first consists to estimate the motion vectors between successive frames using Diamond search algorithm. In the second step, the blocks that had motion vector in the frames are compensated with the white pixels value and those with zero motion that is the stationary are compensated by black pixels value. In the third step, the morphological opening and closing filters are used for refining the object detected. Real video sequences were used for object detection with utilization our algorithm. A set of experimental results is presented in the paper. Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved.

Keywords: Motion Estimation and Compensation, Mathematical Morphology, Moving Object Detection

In the last decade, many methods for moving object detection from video sequences have been proposed. We classify these methods into three types; distributionbased method, contour-based method and orientation based method. The distribution-based approach or the background subtraction, it consists to estimate a background frame of the scene based on pixel distribution, thus, the object(s) in the current frame can be detected by subtracting the current frame with the background frame. [2] proposes a parametric method that consists to build a model as a Mixture of Gaussians (MOG) updated on-line, it employs statistics by using a Gaussian model for each pixel, every Gaussian model maintain the mean and the variance of each pixel, the assumption then is that the pixel value follows a Gaussian distribution. Along this approach, other similar approaches have been proposed in [3]-[5]. However, there is one problem in background modelling methods that it needs high computational cost for estimating the background image model. Furthermore, since MOG assumes all pixels are independent and spatial pixel correlation is not considered, the background model based on individual pixels is sensitive to illumination and noise. When the density function is complex, these parametric approaches may fail. [6] introduces non-parametric model of the background, the advantage is that it can achieve better accuracy in similar computational cost, another advantage of this approach is the incorporation of spatial constrains into the construction of foreground classification The model is robust and can handle the situations where the background of the scene is cluttered. Several other nonparametric background model algorithm are

Nomenclature MOG H.264/MPEG4 SAD SADmin T×T dx dy f k k-1 i,j DS FS LDSP SDSP CP F S ◦ • ⊕

Mixture of Gaussians Video coding standards Sum absolute difference Minimum Sum Absolute Difference Size of block Displacement in x axis Displacement in y axis Frame Courant frame Precedent frame Indices of the pixel Diamond search algorithm Full search algorithm Large diamond search pattern Small diamond search pattern Central point Image Structural element Opening morphogical filter Closing morphogical filter Erosion operator Dilation operator

I.

Introduction

Detection the motion objects from a video sequence is a key in many vision applications such as surveillance, traffic monitoring, augmented reality, vehicle navigation [1]. The efficiency and accuracy of these applications depend on the results of moving objects detecting methods implemented in there. Manuscript received and revised April 2014, accepted May 2014

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

744

Djoudi Kerfa, M. F. Belbachir

presented in [7]-[9]. However, the parametric methods are more efficient then the nonparametric methods and it is computationally relatively. The contour-based approach; can efficiently detect moving objects with different sizes and shapes, and seem to be insensitive to illumination variations [10]. However, these methods are computationally expensive. Allows these methods we quote level sets [11], active contours [12] and geodesic active contours [13]. The orientation-based approach uses optical flow as approximation of the object motion it consists to estimate motion vectors for each pixels in image sequences, so it changes the image into another space of motion object field. [14], [15] propose motion detection methods based on optical flow, these methods can accurately detect motion in the direction of intensity gradient, but the motion which is tangential to the intensity gradient cannot be well represented by the fields. Moreover, optical flow based methods also suffer from the illumination problem, high sensitivity to noise and high computational cost; it is not ready for applications requiring real time. In order to overcome the limitations on existing orientation-based approaches to achieve object motion detection in real time. We propose in this paper an efficient algorithm to moving object detection based on the motion estimation and compensation using blockmatching algorithm, that are usually used by most video coding standards (H.264 and MPEG4 [16]) and the mathematical morphology ([26]-[28]) to detect a moving object. It consists of the following steps: the first consists to estimate the motion vectors between successive frames using Diamond Search algorithm (DS). In the second step the blocks that had motion vector in the frames are compensated with white pixels value and those with zero motion that is the stationary are compensated by black pixels value. The third the morphological opening and closing filters are used to connect components to remove noise for refining the object detected. Hence, we can say that the moving objects have been detected from the stationary background. The proposed algorithm is tested on several image sequences. This paper is organized as follows. Section 2 presents different phases and the explanations of the proposed algorithm. Section 3 describes the implementation of the new proposed scheme of moving object detection. Before concluding (section 5) a key results and discussion are given in section 4.

II.

and compensated the blocks had motion vector in the frames by white (1) pixels value and those with zero motion that is the stationary by black (0) pixels value. Finally, the morphological opening and closing filters are used to connect components to remove noise for refining the object detected. The following sentences put more information about the proposed algorithm. II.1.

Motion Estimation Using Block Matching Algorithms

The motion objects between two frames are detected by subdividing a frame in blocks of identical size and supposing that all the pixels of the same block have same displacement. For each block, the vector of displacement is searched in a window (see Figure 1) in such a way that it minimizes the selected criterion. The most used criterion of matching is the SAD (Sum Absolute Difference) defined as follows: T

T

  fk  i, j   fk 1  i  d x , j  d y 



SAD d x ,d y 

(1)

i 1 j 1

with T size of block and the search window for size ± 7 pixels. In other words, the selected vector corresponds to



the smallest error SAD d x ,d y



in search window with

7  d x  7 and 7  d y  7 . We define by f

k

 i, j 

the intensity of the pixel  i, j 





of the frame k of the sequence and f k 1 i  d x , j  d y is





the intensity of the pixel i  d x , j  d y of the preceding frame k-1. Search Window Motion vector Block TxT Position of the block (T×T) in the frame k-1 Frame k-1 Frame k

Position of the block (T×T) in the frame k

Fig. 1. Illustrative scheme of block matching with size of T×T in a search window

For a given block, the method Full Search (FS)[17] calculates all the SAD, The smallest SAD (SADmin) corresponds to the searched motion vector (see Figs. 2). This method carries out an exhaustive search; it thus ensures optimality, however it has a high computational cost. In order to reduce the complexity of method FS several methods were proposed [18]-[23], most known is

Proposed Scheme

This paper proposes an efficient algorithm to motion object detection based on motion estimation and compensation using block-matching algorithm with thresholding and mathematical morphology to detect a moving object. It consists to estimate the motion vectors

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

745

Djoudi Kerfa, M. F. Belbachir

the method Diamond Search DS [21]. It searches in two search patterns (see Figs. 2). The first, called LDSP (Large Diamond Search Pattern) calculates nine points. The second SDSP (Small Diamond Search Pattern) carries out five points.

(a)

(a)

(b)

Figs. 2. The Diamond Search Algorithm is consisted LDSP (Large Diamond Search Pattern) in (a) followed by a search SDSP (Small Diamond Search Pattern) in (b)

(c) Figs. 3. Motion vectors in (c) estimated between two frames (a) and (b) of sequence ‘sofa’ using Diamond search algorithm with block of size 8×8 pixels and search window for size ± 7 pixels

The algorithm DS is summarized as follow: Stage I: LDSP carries out the calculation of nine points (central point CP corresponds to the zero motion). If SADmin corresponds to CP go to III Else continue Stage II: The point corresponding to SADmin becomes the center of a new LDSP. If new SADmin is in the center, we continuous with the third stage. If not, the second phase is repeated. Stage III: The model LDSP is changed with model SDSP and the points is tested. SADmin obtained in this stage represents the final solution of the motion vector block. The algorithm DS, compared to the other algorithms, is the most powerful lookout complexity/quality. From the Figs. 3 of the results of the motion vectors we note that the stationary block has a vector of movement with the indices dx = 0 and dy = 0. However, the blocks in movement have indices different from zero. II.2.

(b)

II.3.

Mathematical Morphology

Morphological filter is applied which consists of probing each pixel of the image using structuring element. The structural element is the central part in mathematical morphology. It is defined as shape of pixels. When the structuring shape aligns with given pixel and all pixels intersecting the structuring element are included in the set. Structuring element is of simple shapes like square, circle etc. Erosion and Dilation are two fundamental morphological operators. Erosion replaces current pixel with the minimum pixel value found in defined pixel set whereas Dilation replaces the current pixel value with the maximum pixel value found in defined pixel set. Since the binary image contains only black (0) and white (1) pixels, each pixel is replaced by either white or black pixel. Erosion and dilation filters are used in cascade to produce other operators namely Open and Close filters etc. [24]. In this study, opening and closing filters are used for refining detecting objects in a frame. I.e. separating foreground objects and background objects.

Motion Compensation

The motion vectors are used to predict a frame by motion compensation, there are two approaches for motion compensation: forward and backward. The forward predict the next frame in a video sequence from the current frame by computing the motion vectors for the current frame and construct the prediction with current frame and these motion vectors. This may cause the predicted frame to have some discontinuities in spaces between blocks. The backward approach is to estimate motion vectors for the next frame from the first frame and construct the predicted frame from the first frame. In the proposed scheme we compensated backward the blocks had motion vector in the frames by white (1) pixels value and those with zero motion that is the stationary by black (0) pixels value. Hence, the compensated frame has been constructed with black and white value (as seen in Fig. 3(a)).

III.

The Implementation of the Proposed Scheme for Moving Object Detection

In the first step the motion vectors are estimated by diamond search algorithm using thresholding to eliminate the less plagued motion by noise effects. The SAD of blocks that have known zero motion vectors must be exclusively a result of any noise in image sequence. The mean and standard deviation of the resulting collection of SAD is computed, and some number of average deviations above the mean represents a threshold value. In all following motion vector calculations, only the SAD that fall below this threshold can be considered

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

746

Djoudi Kerfa, M. F. Belbachir

true non-zero motion vectors. This method relies on the assumption that a large number of zero-motion regions can be found before considering noise. In the compensated step, the blocks that had motion vector in the frames are compensated with black pixels values and those with zero motion that is the stationary are compensated by zero values. Hence, we can say that the moving objects have been detected from the stationary background. The choice of the block size will have a great impact on results. A smaller block size will tend to produce more false motion vectors despite any noise estimation, but will result in finer edge definition in the resulting detected image. Larger block sizes have coarser edges. At the third step of the proposed scheme, the mathematical morphology is used to clear the noise and to connect moving blocks as following: Open filter: the erosion of a frame, which followed by dilation, obtains it. It is useful for removing small objects in the given frame as following: F ◦ S = (F (−) S) ⊕ S

(a)

(b)

(2)

where F is image, S structuring element 7×7. Close filter: to rebuild the area of surviving components that was lost in opening is the following: F • S = (F⊕ S) (−) S

(3)

where S structuring element of size 9×9 pixels. Then search of all contours is carried out. Then it tosses the contours that are too small and approximate the rest with polygons. Close filter: It is obtained by the dilation of an image which is then followed by erosion. It is used to remove small dark regions in frame. The closing filter connects together objects wrongly fragmented into smaller portions, while the opening filter removes the small blocks introduced by image noise. The principal phases of detection scheme can be summarized as follows:  Extraction of two successive images from the input video.  Finding the moving objects for consecutive frames using Diamond search algorithm of motion estimation using thresholding operation of noise.  Enhancing step of the detected result using morphological operations.  Highlighting the multiple objects finding using edge or green boxes around over centroid. Figs. 4 present an example of proposed motion detection scheme in different phases.

IV.

(c)

(d) Figs. 4. Motion vectors estimated between two successive frame using diamond search algorithm with thresholding , block of size 8x8 pixels and the search window for size ± 7 pixels in (a),the reconstructed frame after motion compensated in (b), the filtering result using morphological operations in (c), moving object detection result in Sofa video sequences in (d)

Test video sequences contain a moving people, moving transport , and also a number of video sequences without any motion[25]. Detection results for some of the test sequences are presented in the following Figures 5. Processing time of a current frame depends on the blocks sizes and changes occurring in a background.

Results and Discussion

The proposed algorithm has been evaluated using data set publicly available at the web address http://wordpress-jodoin.dmi.usherb.ca/dataset2012/.

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

747

Djoudi Kerfa, M. F. Belbachir

If the background is stable and few blocks are detected, then processing time decreases. The object has been found successfully out on all test video. We can see that our proposed method can effectively detect moving objects with different sizes and shapes. If at first a strongly rarefied object moves slowly, then it is gradually included into the background. Therefore, in this case, we cannot directly find out an object. The performed experiments have shown that the algorithm quickly finds out objects on a complex dynamic scene. Moving object detection is achieved practically in real time. (a) Tram stop video sequences

V.

Conclusions and Future Works

We have presented in this paper an algorithm designed to detect a moving object based on motion estimation and compensation by Diamond search algorithm of blockmatching methods and mathematical morphology. Our algorithm consists of the following steps: the first consists to estimate the motion vectors between successive frames using Diamond Search Algorithm, in the second step the blocks that had motion vector in the frames are compensated with ones values and those with zero motion that is the stationary are compensated by zero values. In the third step, the morphological opening and closing filters are used for refining the object detected. Hence, we can say that the moving objects have been detected from the stationary background. The advantages of the proposed scheme are its simplicity to implement and its accuracy. However, the choice of the block size will have a great impact on results and in the case that the object moves slowly it is gradually included into the background. The efficiency of our approach is illustrated and confirmed by our experimental videos. In this paper, the new real time detection scheme is more suitable for coding surveillance video sequences in real time. Our future work will focus on how to extend the proposed algorithm to sequences that have more complex background and true physical motion.

(b) Street light video sequences

(c) Abandoned Box video sequences

References [1]

[2]

[3]

[4] (d) Sofa video sequences [5] Figs. 5. Moving object detection result in different real videos sequences

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

Alshaqaqi, B., Boumehed, M., Ouamri, A., Keche, M., Implementation of distance and speed measurement algorithms for the development of an automatic traffic regulation system, (2012) International Review on Computers and Software (IRECOS), 7 (6), pp. 2804-2809. Stauffer, C., Grimson, W.: Adaptive background mixture models for real-time tracking. In: Computer Vision and Pattern Recognition, vol.2, pp.246-252 (1999). L. Li, W. Huang, I.Y. Gu, Q. Tian, Foreground object detection in changing background based on color co-occurrence statistics, in: IEEE Workshop on Applications of Computer Vision, Orlando, Florida, 2002, pp. 269–274. P. KaewTraKulPong, R. Bowden, An improved adaptive background mixture model for real-time tracking with shadow detection, in: European Workshop on Advanced Video Based Surveillance Systems, Kluwer Academic, 2001 Rongbo Zhu, “Efficient fault-tolerant event query algorithm in distributed wireless sensor networks,” International Journal of Distributed Sensor Networks, vol. 2010, Article ID 593849, pp. 1-

International Review on Computers and Software, Vol. 9, N. 5

748

Djoudi Kerfa, M. F. Belbachir

[6]

[7]

[8]

[9]

[10]

[11]

[12]

[13]

[14]

[15]

[16] [17]

[18]

[19]

[20]

[21]

[22]

[23]

[24]

[25] [26]

[27]

7, 2010 Elgammal, A., Harwood, D., Davis, L.: Non-parametric model for background subtraction. In: European Conference of Computer Vision, pp. 751–767 (2000). H. Askar, X. Li, Z. Li, Background clutter suppression and dim moving point targets detection using nonparametric method, in: International Conference on Communications, Circuits and Systems and West Sino Expositions, vol. 2,2002, pp. 982–986 D. Thirde, G. Jones, Hierarchical probabilistic models for video object segmentation and tracking, in: International Conference on Pattern Recognition, vol. 1, 2004, pp. 636– 639 Rongbo Zhu, “Intelligent Collaborative Event Query Algorithm in Wireless Sensor Networks,” International Journal of Distributed Sensor Networks, vol. 2012, Article ID 728521, pp.111, 2012. V. Ferrari, T. Tuytelaars, L.V. Gool, Object detection by contour segment networks, in: European Conference on Computer Vision, 2006, pp. 14–28. T.Brox,A.Bruhn,J.Weickert, Variational motion segmentation with level sets, in: European Conference on Computer Vision,2006,pp.471–483. M. Yokoyama, T. Poggio, A contour-based moving object detection and tracking, in: IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance, 2005, pp. 271–276. W. Fang, K.L. Chan, Using statistical shape priors in geodesic active contours for robust object detection, in: International Conference on Pattern Recognition, 2006, pp. 304–307. A.A. Stocker, An improved 2d optical flow sensor for motion segmentation, Proceedings of IEEE International Symposium on Circuits and Systems 2 (2002) 332–335. S.P.N. Singh, P.J. Csonka, K.J. Waldron, Optical flow aided motion estimation for legged locomotion, in: IEEE International Conference on Intelligent Robots and Systems, 2006, pp. 1738– 1743. I.E.G. Richardson,’’ H.264 and MPEG-4 Video Compression” John Wiley &Sons, 2003. L. DE Vos and M. Stegherr, ‘’Parametirizable VLSI Architectures for the Full-Search Block-Matching Algorithm’' IEEE Trans. Circ. and Syst., vol. 36, No. 10, pp. 1309-1316, Oct. 1989. R. Li, 8. Zeng and M. L. Liou, "A new three-step search algorithm for block motion estimation," IEEE Trans. Circuits Syst. Video Technol., vol. 4, no. 4, , pp. 438-442, Aug. 1994. Hasanul A. Basher’’Two Minimum Three Step Search Algorithm for Motion Estimation of Images from Moving IR Camera’’Proceedings of IEEE Southeastcon,pp. 384-389,March 2011 L. M. Po and W. C. Ma, "A novel four-step search algorithm for fast block motion estimation ," IEEE Trans. Circuits Syst. Video Technol. , vol. 6, no. 3, pp. 313-317, June 1996. S. Zhu and K. K. Ma, “A new diamond search algorithm for fast block-matching motion estimation,” IEEE Trans. Image Processing, vol. 9, no. 2, pp. 287-290, Feb. 2000. Xuzhi Wang, Wanggen Wan, Jinyuan Zhang, Yanru Ma’’Research on the Motion Estimation with a Novel Octagon Cross Diamond Search Algorithm’’Asia Pacific Conference on Postgraduate Research in Microelectronics and Electronics (PrimeAsia), pp.89-92,Sept. 2010 R. A. Manap S. S. S. Ranjit A. A. Basari and B. H. Ahmad’’Performance Analysis of Hexagon-Diamond Search Algorithm for Motion Estimation ’’ 2nd International Conference on Computer Engineering and Technology,vol.3,pp.155159.2010. Zhu,Weigang, Hou,Guojiang & Jia,Xing. (2002). A study of locating vehicle license plate based on color feature and mathematical morphology. Signal Processing. vol.1,pp.748-751. http://wordpress-jodoin.dmi.usherb.ca/dataset2012/. Selvaraj, D., Dhanasekaran, R., Segmentation of cerebrospinal fluid and internal brain nuclei in brain magnetic resonance images, (2013) International Review on Computers and Software (IRECOS), 8 (5), pp. 1063-1071. Z. Nougrara, A. Benyettou, A. Abdellaoui, N. I. Bachari, K. Lahmar, Comparative Study between two Proposed Methods of

an Extracted Road Network and its Nodes from Satellite Images of Algeria Sites for Contribution to the Elaboration of a Geographical Information System GIS, (2012) International Journal on Communications Antenna and Propagation (IRECAP), 2 (2), pp. 123-126. [28] Fourati, W.A., Bouhlel, M.S., Watershed segmentation of microscopic histological bone biopsy image using morphological filter and HSI color space, (2010) International Review on Computers and Software (IRECOS), 5 (6), pp. 609-613.

Authors’ information Djoudi Kerfa received the Master degree from the University of Sciences and Technology of Oran Mohamed Boudiaf (USTOMB), Algeria in 2009. Since 2009, he is PhD student at the Department of Electronics of USTOMB and member of the laboratory “Signals, Systems and Data” (LSSD). His research interests include Image/Video compression, Image/Video post processing and Chip Architectures Mohamed Faouzi Belbachir received the engineer degree, the Magister degree, and the Doctorat d’etat degree from the University of Sciences and Technology of Oran Mohamed Boudiaf (USTO MB), Algeria respectively in 1976, 1984 and 1991. Since 1981, he is professor at the Department of Electronics of USTOMB. He is currently the director of the LSSD laboratory “Signals, Systems and Data”. His research interests include filter design and image processing.

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

749

International Review on Computers and Software (I.RE.CO.S.), Vol. 9, N. 5 ISSN 1828-6003 May 2014

Multi Biometric Fuzzy Vault Generation Using Chaff Points and Cuckoo Search Optimization Annapurani K., Deepika Ravikumar, M. A. K. Sadiq Abstract – Usage of human physical and behavioural traits for individual identification dates back to the beginning of human civilization. The demand for automation of biometric system was raised as a result of increase in population. Nowadays, in many applications biometric authentication is gaining popularity. However, its performance is still a constraint for its wide scale implementation. In our proposed work, fingerprint and ear are considered as it provides higher performance than unimodal biometric. Our objective is to store the biometric in the database as fuzzy vault, as storing the biometric template directly in to the database weakens the system security. Initially, the input images of fingerprint and ear are pre-processed to filter the noise and to improve the image contrast. From the pre-processed fingerprint, minutiae points are extracted. Upon the pre-processed ear image, the dimension reducing technique, Principal Component Analysis (PCA), is applied to extract global features. Texture feature is also extracted from both the modalities using Local Gabor XOR Patterns (LGXP). To these extracted features cuckoo optimization is applied to generate optimized points. Chaff points are generated, from randomly generated secret keys. These chaff points are fused with optimized points to generate fuzzy vault. The sensitivity, specificity and accuracy are calculated for the cuckoo optimized fuzzy vault authentication system and compared with the non- optimized fuzzy vault system. Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved.

Keywords: Chaff Points, Cuckoo Search Optimization, Fuzzy Vault, Local Gabor XOR Patterns, Minutiae Points, Principal Component Analysis, Texture Feature

Nomenclature c x H(c) t p k A, B F A ,  z 

Codeword Witness Hash function Threshold Polynomial Secret key Set Fuzzy commitment scheme Magnitude of the pixel

 ,  z  Im  , (z) Re  , (z)

Phase of the pixel

xi

New solution from old one ( xit ) for, say cuckoo i The step size The entry-wise multiplications Levy’s flight; 1    3

t 1

α>0 ⊕ Levy(  ) fv1 mp ev a1 and a2 a11, a12, a13, a14

I.

Introduction

In the field of biometrics, a lot of research works are being carried out to generate biometric recognition systems with improved accuracy and security. This problem motivated us to do this research. A. K. Jain et al. said that one of the most common odds for wide scale adoption of biometrics based personal identification systems is their unsatisfactory performance [1]. One way to solve this issue is by adopting multi biometric system. Anil Jain et al. proved that it is possible to improve performance by integrating multiple biometrics [2]. They used fingerprint and face biometric to prove their result. In our proposed work, we have used finger and ear as the two biometric modalities. Finger print is one of the earliest biometric features used for identification. Emerging trend in the field of biometric is recognition using ear biometric. Researchers have developed profound interest in this particular biometric modality due to its following benefits: Initiatives to find these evidences were taken by Mark Burge et al. in 1999 [3]. Based on the experiment conducted by Ping Yan et al. it appears that ear recognition based on 3D shape is more powerful than based on 2D appearance [4]. However, the presently used 3D imaging technologies in the literature occupy 3D digitizer which can be bulky and in addition fairly costly.

Imaginary part of the pixel Real part of the pixel

Fuzzy vault Optimized minutiae points Optimized features of ear Input secret key Chaff points

Manuscript received and revised April 2014, accepted May 2014

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

750

Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

Finger and ear features cannot be stored directly as it is vulnerable to attack. In order to protect the template, chaff points are generated from the extracted features of both finger and ear biometric using cuckoo search. Cuckoo search is a swarm intelligence method for optimization [5]. Swarm intelligence [6] is an intelligent behavior from a large number of simple individuals collectively doing something seemingly “intelligent”. Cuckoo Search will reduce the number of these extracted features to get the best available features from finger and ear. They are referred as optimized points. These optimized points are fused with a randomly generated secret key to generate fuzzy vault. Fuzzy vault, investigated by Juels et al. is a cryptographic construct used to bind key with biometric features [7]. The main principle of fuzzy vault is that it can tolerate intra class variability in the biometric data. It has inspired many researches to pursue the biometric based fuzzy vaults. Our proposed system aims at utilizing fuzzy vault scheme in key binding mode by presenting a new scheme which exploits features from biometric traits using cuckoo search.

II.

scheme to generate fuzzy vault scheme that offers properties in terms of security, changeable key, and flexibility [8], [11]. Assume that Alice wish to lock a secret key k under set A. A polynomial p in a single variable x is chosen by her such that p encodes k. To secure the polynomial p, a few random points, which do not lie on p, is created and added to the polynomial. Now, assume that Bob wishes to unlock k by using a set B. Bob can recover the polynomial p if B considerably overlaps A. The noise generated here can be removed using any error correction scheme and thus the original polynomial p can be reconstructed which finally reveals k. In case, the set B doesn’t considerably overlaps A, then Bob cannot reveal k. This happens due to the presence of chaff points. The hardness of this scheme is based on the polynomial reconstruction problem, a special case of the Reed-Solomon list decoding problem [12]. Erkan Besdok et al. have analyzed various meta heuristic optimization algorithms that are widely used in scientific application [13]. They use pattern matrix, which include random solutions of the related problem. Cuckoo-search (CK) [14], [20]-[24], Particle Swarm Optimization (PSO), Differential Evolution (DE) and Artificial Bee Colony (ABC) are the algorithms analyzed. Experimental results proved the following: 1) Problem solving success of the CK and DE algorithm are very close to each other, 2) While comparing to other algorithms the run-time complexity and the required function-evaluation number for acquiring global minimizer by the DE algorithm is smaller, 3) Compared to ABC algorithm, the performances of the CK and PSO algorithms are statistically closer to the performance of the DE algorithm 4) More robust and precise results is supplied by CK and DE algorithm than the PSO and ABC [16] algorithms. The rest of our paper is organized as follows: Section III describes the cuckoo optimized fuzzy vault authentication system with each process elaborated in separate subsections. Section IV discusses the algorithm of fuzzy vault generation using cuckoo optimization. Section V discusses the evaluation metrics and the result obtained. Section VI presents conclusion and future work.

Related Work

Even though several researches are being carried out to enhance the biometric system performance and security, it has not fulfilled the requirements needed for wide scale adaption of biometric system [18]-[19]. Following are a few research works that inspired us to develop our proposed system. Bhanu B. et al. were the first to develop and experiment with a 3D ear biometric system [8]. They used the shape model-based technique for locating human ears in side face range images, and a Local Surface Patch (LSP) representation and the Iterative Closest Point (ICP) algorithm for ear recognition. The ICP based approach to 3D ear recognition by Ping Yan et al. statistically outperforms the 2D ear recognition result obtained with a state-of-the-art PCA-based ear recognition algorithm [2], [9]. In 1999, Juels et al. presented a fuzzy commitment scheme which could achieve three security goals [10]: 1) static (offline) authentication 2) challenge-response authentication 3) encryption/decryption. In this paper, fuzzy commitment scheme F is constructed so as to commit a codeword word c using a witness x as given in Eq. (1): x  c  offset (1)

III. Multimodal Feature Level Fusion of Chaff Points with Optimized Feature Using Cuckoo Search In this ear and fingerprint modalities are considered for implementing the biometric system. Thianeswaran et al. performed recognition system using Iris as trait, only one modality have been used [15], but Aravinth et al. have used three traits finger print, face and iris for the authentication system [16]. In our work we have considered only two traits of finger print and ear for authentication system instead of three so that computation time will be less and better than uni-modal trait alone.

The idea of the fuzzy commitment scheme F is to conceal the codeword c using hash function H(c) and to leave the offset in the clear. Consider, a witness x is used to commit to a code word c. In terms of biometric system it means, a user presents a secret x, say fingerprint, during enrollment phase. To retrieve the codeword c, the user has to present x’ that differ from user by at most correction threshold t. Juels et al. improved their own on fuzzy commitment Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

751

Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

The ear and fingerprints are given as inputs which are pre-processed, then both global and texture features are extracted. Cuckoo Optimization technique is applied to extract the optimized feature. Random secret key is used to generate the chaff points. Optimized feature and the chaff points are fused together to form the fuzzy vault which is the transformed form of the modalities and not the actual features. This is stored as template in the database.

Fig. 2. Input Fingerprint

Fig. 3. Gray level image

Fig. 1. Block diagram of fuzzy vault generation using cuckoo optimization

The cuckoo optimized fuzzy vault system consists of the following phases.

Fig. 4. Median Filtering

a. Pre-processing and Feature Extraction of Fingerprint Image During the training process, ear and finger print biometric modalities, shown in Fig. 2, are given as input to the pre-processing technique so as to eliminate noise and enhance the image contrast. The pre processing techniques applied for fingerprints are RGB to gray level conversion, median filtering, binarization and thinning. The given RGB images are converted into gray level using RGB to gray level conversion, as shown in Fig. 3. Median Filtering is a non-linear digital filtering methodology which is carried out with the aid of a window comprising of an odd number of samples. It is used to remove noise from the images while preserving its edges, as shown in Fig. 4. Binarization converts the finger print image into a clear grayscale but of uneven thickness, as shown in Fig. 5. Therefore, thinning which reduces every line on the pattern into one pixel width is done to facilitate easier extraction of minutiae points. Fig. 6 shows the resultant thinned image. Fig. 7 shows the minutiae points in the fingerprint image which are represented by ride endings and bifurcation which have 1 and 3 as their ridge pixel neighbor value respectively. In addition to minutiae feature, texture feature is also extracted from the finger print image using Local Gabor XOR patterns (LGXP) [17] which uses Local XOR pattern (LXP) operator to encode the Gabor phase as shown in Fig. 8.

Fig. 5. Binarization

Fig. 6. Thinning

Fig. 7. Extracted minutiae points

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

752

Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

Fig. 8. Extracted texture feature of fingerprint image

The process consists of following steps: The image is passed through the Gabor filter, where image and Gabor kernels convolution carried out. The Gabor filtering results in a real and imaginary part at every image pixel. These parts are used in Eq. (2) and Eq. (3) to calculate magnitude and phase:

A ,  z   Im2 ,  z   Re2 ,  z 

 ,  z   arctan

Im ,  z  Re ,  z 

Fig. 11. Median filtering

The global features are extracted from the preprocessed image using Principal Component Analysis (PCA), also known as Eigen faces. PCA reduces the dimension of the image while preserving the main variations in feature vectors with simple and less computation. Fig. 12 shows the block diagram of PCA.

(2)

(3)

where A ,  z  refers to magnitude,  ,  z  refers to phase, Re ,  z  refers to real part and Im ,  z  refers

Fig. 12. Block diagram of PCA

to imaginary part. The phase is quantized into different range. Then Local XOR Pattern (LXP) operator is applied to the quantized phases of the central pixel and each of its neighbors. The resulting binary labels are concatenated together as the local pattern of the central pixel.

Texture feature is also extracted from the ear modality using the method described in section III.1. The resultant ear texture is shown in Fig. 13.

b. Pre-processing and Feature Extraction of Ear The input ear image shown in Fig. 9 is converted from RGB to gray image as shown in Fig. 10 and median filtering is applied to it as shown in Fig. 11. Median filtering is applied as it reduces the “salt and pepper” noise while preserving the edges. The principle behind median filtering is that it modifies the pixels based on median function of a local neighborhood of the pixels i.e., running medians are computed.

Fig. 13. Texture feature of ear image

c. Cuckoo Search Optimization of Ear and Fingerprint Features Cuckoo search is one among the many algorithms developed under the paradigm of swan intelligence, which was developed by nature’s inspiration. In this system cuckoo search is implemented so as to minimize the number of extracted features and to avail the best features from fingerprint and ear images. The steps of the algorithm are as follows: 1) Create an initial population of host nests. 2) Calculate the fitness of host nests. 3) Sort the host nest based on its fitness value. 4) Update Cuckoo solution using levy flight [14] given by Eq. (4):

Fig. 9. Input ear images

xi

t 1

t  xi     Levy   

(4)

where:

xi  is new solution from old one( xit ) for, say cuckoo i; α > 0 is the step size; ⊕ is the entry-wise multiplications. t 1

Fig. 10. Gray level image

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

753

Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

1    3 5) Calculate the fitness of new solution. 6) Based on fitness value choose the best solution as the optimized feature value. This process will fetch the optimized features from each feature set. d. Fusion of Optimized Features with Chaff Points to Generate Fuzzy Vault The optimized features generated have to be combined with a chaff points to generate fuzzy vault. In this work, secret keys are generated to act as chaff points. To generate the secret keys, 3 random arrays a, a1 and a2 are given as input. Using these input values the secret key is generated as given in Eq. (5):

a1i   a1 i   a 2  i    a 2  i   ; 1  i  4

Fig. 14. Block diagram of cuckoo optimized fuzzy vault system authentication

V.

(5)

We have implemented cuckoo optimized fuzzy vault system in MATLAB 2013b platform. The database consists of 60 images each including training and testing set.

The chaff points thus generated are combined with the optimized points, generated using cuckoo optimization, to produce the fuzzy vault as given in Eq. (6):

fv1  vercat  mp,ev,a,a11,a12,a13,a14 

(6)

V.1.

Performance Evaluation Metrics

In order to evaluate the results evaluation metrics sensitivity, specificity and accuracy are used. The conventional system refers to the system in which the features extracted without optimization technique are stored as it is into the database. It extracts minutiae points and texture features from finger print and global feature and texture feature from ear images. In order to avoid the storage of features explicitly, chaff points are also generated. The extracted features of finger print and ear are fused with the chaff points. In conventional system, the fused data is stored into the database. To evaluate the performance of the fuzzy vault generated using cuckoo optimization, its result is compared with the conventional system. Sensitivity and specificity are statistical measures of the performance of a binary classification test, also known in statistics as classification function. The measure of sensitivity, specificity and accuracy are derived from the following parameters: True positive refers to the number of authenticated persons who are correctly accepted. False positive refers to number of unauthenticated persons who are incorrectly accepted. True negative refers to the number of unauthenticated person who are correctly rejected. False negative refers to the number of authenticated person who are incorrectly rejected. Using these parameters the metrics are measured as follows: Sensitivity measures the proportion of actual positives which are correctly identified as given in Eq. (7):

where mp refers to the optimized minutiae points, ev refers to optimized features of ear, a1 and a2 refers to input value given to generate chaff points, a11, a12, a13 and a14. The fuzzy vault is generated by concatenating the chaff points, the input secret key and the optimized features of ear and finger, (a11, a12, a13, a14), a, (ev, mp) respectively.

IV.

Results and Evaluation

Algorithm for Multimodal Feature Level Fusion of Chaff Points with Optimized Feature Using Cuckoo Search Algorithm

1) Input the finger print and ear images. 2) Preprocess the finger print image. Then extract texture feature and minutiae points from it as described in section III.a. 3) Preprocess the ear image. Then extract the texture feature and global features from it using LGXOR and PCA resp., as described in section III.b. 4) Optimize both the biometrics features separately and choose the best features from each using cuckoo search optimization as described in section III.c. 5) Generate chaff points from random input values as described in section III.d. 6) Fuse the best optimized features with the chaff points as in section III.d. 7) The fuzzy vault thus obtained is stored in the database. 8) During the testing phase, the person is authenticated by matching the extracted features of the person’s ear and fingerprint images with the fuzzy vault stored in database as shown in Fig. 14.

Sensitivity=Number of true positives/ (7) (Number of true positives+Number of false positives)

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

754

Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

Specificity measures the proportion of negatives which are correctly identified as given in Eq. (8): Specificity=Number of false negatives/ (Number of false negatives+ +Number of true positives)

The confusion matrix shows that the False Acceptance Rate (FAR) is better compared to the False Rejection Rate (FRR). Based on the parameters calculated above the metrics are evaluated. For the optimized fuzzy vault system sensitivity=0.94.23. This result indicates the optimized fuzzy vault system has identified 94% authorized person correctly. For the optimized system specificity=0.875. This indicates that the optimized fuzzy vault system has recognized 87% of the unauthenticated person correctly. For optimized system accuracy=0.9333. This indicates that the optimized fuzzy vault system is 93% accurate.

(8)

Accuracy is a measure of system performance and is calculated by the formula given in Eq. (9): Accuracy=Number of true positives + +Number of true negatives/ (Number of positive instance+ +Number of negative instance)

(9)

V.3.

In the field of machine learning, a confusion matrix, also known as a contingency table or an error matrix is used. This specific Table I layout allows visualization of the performance of an algorithm.

The performance metrics of non-optimized conventional system is as follows: True positive=46; True negative=5; False Positive=4; False Negative=5; Sensitivity=0.5556; Specificity=0.5556; Accuracy =0.8500. These results show that 46 people were correctly identified, 5 people were correctly rejected, 5 people were falsely rejected and 4 people were falsely accepted by the conventional non-optimized system. The sensitivity and specificity values indicate 76% of the authorized persons were correctly identified and 57% of the unauthenticated persons were correctly rejected. The comparison graph of all the metrics used here is shown in Fig. 15.

TABLE I CONFUSION MATRIX FORMAT Prediction 0 1 Actual 0 TN FP 1 FN TP

where: TP= True positive, TN= True negative, FP= False Positive, FN= False Negative. V.2.

Discussion

Evaluation of System

The database of fuzzy vault generation consists of 60 images. In the training set fingerprint image and ear images of 10 persons are taken. In the testing set 20 person’s biometrics are considered out of which 10 are trained persons and 10 are untrained persons. In addition, for every trained person, their 4 untrained biometric images are also tested. For the optimized fuzzy vault system True positive=49, True negative=7, False Positive=1 and False Negative=3. These results show that 49 different images that belong to the people whose biometric images are trained were correctly identified, 7 people were correctly rejected, 3 people were falsely rejected and 1 person was falsely accepted by the optimized system. Table II shows the confusion matrix of the proposed system. A confusion matrix, also known as a contingency table or an error matrix, is a specific table layout that allows visualization of the performance of an algorithm.

Fig. 15. Comparison between conventional system and optimized fuzzy vault system

VI.

Conclusion and Future Work

The cuckoo optimized fuzzy vault system provides better performance and secure fusion. It provides template security as the biometric features are not directly stored. Sensitivity of 0.9423, specificity of 0.8750 and accuracy of 0.9333 in this system shows that this method gives higher performance rate than the conventional system for which sensitivity is 0.9020, specificity is 0.5556 and accuracy is 0.8500. In future, the template can be protected using cryptographic system in addition to the transformation; the system can also be tested with large number of datasets.

TABLE II CONFUSION MATRIX OF PROPOSED SYSTEM Prediction Unauthenticated Authenticated Actual Person Person Unauthenticated 7 3 Person Authenticated 1 49 Person

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

755

Annapurani K., Deepika Ravikumar, M. A. K. Sadiq

Other biometrics features such as face and ear with occlusions can be taken as multimodal traits.

[18]

Acknowledgements [19]

Our sincere thanks to Mr. Ajaykumar for supporting us with IIT Delhi Ear Database (Version1.0). We also extend our sincere gratitude towards FVC2004 (the Second International Fingerprint Verification Competition) databases from which we have gathered our fingerprint database.

[20]

[21]

References [1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

[9]

[10]

[11]

[12]

[13]

[14]

[15]

[16]

[17]

[22]

R. Bolle, A.K. Jain and S. Pankanti, Biometrics: Personal Identification in Networked Society (Kluwer Academic Publishers, 1999). Anil Jain, Lin Hong and Sharath Pankati, “Can multi biometrics improve the performance?,” Proc. AutoID`99, Summit, NJ, pp. 59-64, Oct 1999. Mark Burge and Wilhelm Burger, Ear Biometrics, BIOMETRICS: Personal Identification in a Networked Society, pp.273-286, 1999. Kevin W. Bowyer and Ping Yan, “Ear Biometrics Using 2D and 3D Images,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 29 Issue 8, pp. 1297-1308, August 2007. S. Deb and X.S. Yang, “Engineering Optimisation by Cuckoo Search,” International Journal Mathematical Modelling and Numerical Optimisation, Vol. 1, No.4, pp: 330-343, 2010. Beni, G. and Wang, J., “Swarm Intelligence in Cellular Robotic Systems,” Proceed. NATO Advanced Workshop on Robots and Biological Systems, Tuscany, Italy, June 26-30, 1989. Juels and M. Sudan, “A Fuzzy Vault Scheme,” Proc. IEEE Int’l. Symp. Inf. Theory, A.Lapidoth and E. Teletar, Eds., pp. 408, 2002. Bhanu B. and Hui Chen, “Shape model-based 3D ear detection from side face range images,” Proc. of the IEEE Conference on Computer Vision and Pattern Recognition CVPR. WashingtonDC, USA, 122–127, 2005. V. Barnabas , K. Bowyer and K. Chang, “Comparison and combination of ear and face images in appearance-based biometrics,” IEEE Transaction on Pattern Analysis and Machine Intelligence., Vol. 25, pp. 1160–1165, 2003. Price K and Storn R, “Differential evolution—a simple and efficient heuristic for global optimization over continuous spaces,” Journal of Global Optimization 11(4):341–359, 1997. Juels and M. Wattenberg, “A Fuzzy Commitment Scheme,” G. Tsudik, Ed., Sixth ACM Conf. Computer and Comm. Security, pp. 28-36, 1999. D. Bleichenbacher and P. Nguyen, “Noisy polynomial interpolation and noisy Chinese remaindering,” B. Preneel, editor, Eurocrypt '00, pp. 53- 69. LNCS no. 1807, 2002. Erkan Besdok and Pinar Civicioglu, “A conceptual comparison of the Cuckoo-search, particle swarm optimization, differential evolution and artificial bee colony algorithms,” Springer Science+Business Media B.V., Published online 6 July 2011. S. Deb and X.S. Yang, “Cuckoo search via Lévy flights,” Proc. of World Congress on Nature & Biologically Inspired Computing (NaBIC), India. IEEE Publications, USA, pp: 210-214, December 2009. Thiyaneswaran, B., Padma, S., Human authorization using wavelet and tensor object analysis of the iris biometrics, (2012) International Review on Computers and Software (IRECOS), 7 (6), pp. 3047-3055. Aravinth, J., Valarmathy, S., Score-level fusion technique for multi-modal biometric recognition using ABC-based neural network, (2013) International Review on Computers and Software (IRECOS), 8 (8), pp. 1889-1900. J. Chen, S. Shan and S. Xie ,, “Fusing Local Patterns of Gabor

[23]

[24]

Magnitude and Phase for Face Recognition,” IEEE Transactions On Image Processing, Vol. 19, no. 5, May 2010. Aydi, W., Masmoudi, N., Kamoun, L., A fast and accurate circular segmentation method for iris recognition systems, (2014) International Review on Computers and Software (IRECOS), 9 (3), pp. 468-477. Poinsot, A., Yang, F., Palmprint and face score level fusion for contactless small sample biometric recognition and verification, (2010) International Review on Computers and Software (IRECOS), 5 (2), pp. 156-167. Mercy Geraldine, J., Kirubakaran, E., An efficient technique for frequent item set mining in time series data with aid of AFCM, (2013) International Review on Computers and Software (IRECOS), 8 (12), pp. 2765-2772. George, G., Parthiban, L., FCM-FCS: Hybridization of fractional cuckoo search with FCM for high dimensional data clustering process, (2013) International Review on Computers and Software (IRECOS), 8 (11), pp. 2576-2585. Nancharaiah, B., Chandra Mohan, B., On the performance of MANET using QoS protocol, (2013) International Review on Computers and Software (IRECOS), 8 (10), pp. 2356-2362. Thomas, J., Kulanthaivel, G., Preterm birth prediction using cuckoo search-based fuzzy min-max neural network, (2013) International Review on Computers and Software (IRECOS), 8 (8), pp. 1854-1862. Moravej, Z., Akhlaghi, A., A new approach for DG allocation in distribution network with time variable loads using cuckoo search, (2012) International Review of Electrical Engineering (IREE), 7 (2), pp. 4027-4034.

Authors’ information Annapurani K. is Asst.Professor, Department of Computer Science and Engineering, S.R.M University, Chennai, India. She is doing her Research in Biometrics. She has over twenty three years of experience in teaching. Her areas of interest are Image processing, Data Mining and Network Security. She has published research papers in many international conferences and refereed journals. E-mail: [email protected] Deepika Ravikumar is a student doing post graduation in computer science and Engineering, S.R.M University, Chennai, India. She had done her under graduation in InformationTechnology, Noorul Islam College Of Engineering, Kumaracoil. Her area of interest are Image processing, Database Management System and Cloud Computing. E-mail: [email protected] Dr. Mohammed Abdul Karim Sadiq is Asst. Professor, Department of Information Technology, College of Applied Sciences, Sohar. He earned Ph.D. in Computer Science & Engineering from Indian Institute of Technology, Madras. He has over fourteen years of experience in software development, research, management and teaching. His areas of interest are text processing, information retrieval and machine learning. Having published research papers in many international conferences and refereed journals of repute, he has a patent in the United States Patent and Trademark Office. He was an associate editor of Soft Computing Applications in Business, Springer. Moreover, he organized certain international conferences and is on the program committees. He has been awarded a star performer in the software industry. E-mail: [email protected]

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

756

International Review on Computers and Software (I.RE.CO.S.), Vol. 9, N. 5 ISSN 1828-6003 May 2014

Bayesian Network Model for Oath Statement Retrieval: a Case Study in Quranic Text Using Machine Learning Techniques Ahmad Alqurneh1, Aida Mustapha2 Abstract – Automated text classification by means of machine learning algorithms has been measured recently as a necessary process to handle and process Quranic studies. In general, machine learning algorithms participate an important task in feature extraction and topic retrieval. This paper presents an oath detection approach based on a Bayesian model to extract oath style markers that fulfill automated oath topic retrieval in the Quranic text. The experiments were performed on large and small datasets that contain oath using several machine language algorithms. The results obtained that machine learning algorithms are well performed in smallsize dataset contains higher percentage of oath statement, and IBK and Multilayer Perceptron classifiers performed better results compare to J48 and BN classifiers. Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved.

Keywords: Learning Algorithms, Text Representation, Oath

If it is not appear then it is called hidden oath. The second type is when oath comes through descriptive or narrative human stories. Fig. 1 shows the classification of Quranic oath expressions. Back to Fig. 1, the secondary classification to oath expressions is the narrative oaths, which are oaths taken by God in the form of narration from old people stories [2]. Hassan Describes two cases of narrative oaths [2]. The first case is similar to general oath syntax; whereby oath verb, character b '‫'ب‬, and object exist, as in surah Livestock (Al-Anam) verse 6:109 that translates to ‘They swear by God with their most solemn oaths that if a miraculous sign came to them they would believe in it. Say [Prophet], ‘Signs are in the power of God alone.’ What will make you [believers] realize that even if a sign came to them they still would not believe?’. The second case is the particular use of t '‫ 'ت‬character, as in surah The Prophets (Al-Anbiya) verse 21:57 [2] that translates to ‘By God (Allah) I shall certainly plot against your idols as soon as you have turned your backs!’, which is used only when the oath object is ‘Allah’ and no others [4]. The Quranic oath has been widely studied from theoretical base in Islamic Studies [2], [3], [4] and [5]. However, to the best of our knowledge, it has not being studied from computational perspective.

Nomenclature w t b la uqsim aqsam'ū b'i allah t-Allah

I.

Oath character Oath character Oath character Negative swearing verb General oath statement t character base oath

Introduction

An oath (Qasam) is defined as a solemn appeal to a deity stand to attest the truth of a statement. This is the verb (swear) Aqsam or Uqsim in Arabic [1] to distinguish between right and wrong [2]. It is a common practice across many cultures and has been part of law-related procedures for many centuries. The syntactical structure of the Quranic oath in general consists of two statements, for example an oath ‘I swear by God, so and so will occur’. The first statement is called the oath statement, which contains a verb or a noun that directly indicates the ‘swearing’ action, a character b'‫ 'ب‬to mean ‘by’ and an object of ‘God’. The second statement is called the oath answer statement or the effect of such oath [3]. In general, the Quranic oaths are one of two types. The first type is the one when God swears by His essence or by His creations [2]. When the oath statement exists in this oath expression, it is called apparent oath, and oath expression might start with character w '‫ 'و‬or keyword 'lā uqsim ' [33]. For instance the verse 4:65 in surah Women (Al-Nisa') that translates to ‘By your Lord, they will not be true believers until they let you decide between them in all matters of dispute, and find no resistance in their souls to your decisions, accepting them totally'.

Fig. 1. Oath classification in the Quran

Manuscript received and revised April 2014, accepted May 2014

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

757

A. Alqurneh, A. Mustapha

This research proposes a new Bayesian model for detection of apparent oaths and narrative oaths. In achieving this, we will investigate two types of domainspecific features that are related to domain-specific and application-specific features, which are structural and content-specific [6]. Then, to investigate the relationship of the extracted features, this research built a Bayesian network model based on the following: a. For the head of the surahs text, analysis based on the structural feature (head of surah with special starting character or special starting keyword), which is highly required. This refers to the head of surahs, such as verse 1 or verse 2 if the surah starts with a special character or keyword. The feature of special ending bigrams has been used for authorship attribution between the Quran and Hadith [7]. b. For the middle or end of the surahs text, analysis based on the content-specific (keywords) features only, which is highly required, if exists. The analysis based on character in the middle of the surahs requires complex morphological analysis, therefore it was exempted from this research.

II.

Arabic text is widely studied from the perspective of linguistic analysis [14] such as analysis of modern standard Arabic and its dialects [14], [15], and [16], verb classification [17], letter shape generator [18], text classification [19], [20], [21] and [22], clitics on Arabic texts [23] as well as Arabic Handwritten Word Recognition [24]. Style features used in these works include token-based [16], [17], character-based [18], and character-based ngram [19]. The analysis performed on the style features are based on statistical approach such as the n-gram frequency in [19] as well as machine learning approach such as Bayes Classifier in [22]. With regards to the Quranic text, the Holy Qur’an is written in classical Arabic language. The Quran is an eloquent religious text written by God (Allah) in an adorable literary style, structurally looks as poetic language [25] and it has its unique genre recognized through two elements, rhetorical and cohesive [26]. The text consists of 114 surahs of varying lengths and different verses length [27]. Machine learning algorithms used in computational work with regards to Quranic text includes the study to categorize Quranic chapters revealed in Mecca and chapters revealed in Medina [28], [29], as well as to classify the chronology of the Quran [30]. Work by [31] and [32] are all related to text classification on Hadith. With regards to style features in computational studies of the Quranic text, [28], [29] and [30] use token-based features such as word frequency and sentence frequency with a machine language classification technique such as the naïve Bayes to classify the Quranic chapters. Similarly, [7] uses machine learning algorithms in his authorship discriminative study between Quranic text and Hadith text.

Related Work

Machine learning algorithms [35] has been used widely in the fields that concern of text such as data mining and text mining, mainly to study the linguistic style in a written text. Style can be defined as a set of patterns which can be measured and might be unique to an author [8], hence the term style markers used to measure writing style [6]. The computational system modules in text style analysis involve two main steps. First, extraction of style markers and, second is classification of the text according to these features [9]. Style markers are classified into five categories, which are lexical, character, syntactic, semantic, and application specific features [6]. Works in computational stylistics [10] focus on two main areas, which are authorship attribution and text genre detection [9]. Authorship attribution is defined as the problem of determining the writer of an anonymous text [11], which surfaced from old literary works on unknown authors [12]. In the essence, authorship attribution concerns on proving authorship of unknown or disputed text [9] by means of extracting and identifying stylistic features in the writing that is able to reveal specific traits in an author, hence distinguishing the person's genuine writing styles [8]. Genre is defined as the totality of characteristics we observe in a text that gives a unique print [13]. Text genre detection concerns on identification of the kind of the text [9] based on similar feature characteristics among texts.

III. Oath Application Model From the literature, oath expressions (i.e. apparent) may begin with the oath character w '‫ 'و‬or the phrase lā uqsim (indeed I swear) [33]. Meanwhile, [2] and [3] discuss in depth the object in oath statements and conclude that such noun normally refers to God's essence or a creation or a universal phenomenon [4]. For example, from the translation of verse 103:1, the noun is Al Asr and it is referring to a phenomenon, which is ‘the declining day’. Additional characteristic of oath expressions is that it might also appear with its continuous oath conjunction as appears in Juz' 'Amma which is the last chapter of the Quran (Chapter 30), it contains 37 surahs (texts), start with the surah number 78 named as The Announcement (Al-Naba') and last with surah number 114 named as People (Al-Nas) and its surahs are primarily concerned with oneness of Allah, day of judgment and afterlife [3].

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

758

A. Alqurneh, A. Mustapha

The literature [2], [4] and [5] classifies the Quranic oath based on the oath taker and oath objects. In apparent oath, oath-taking is by God and the verse directly refers to an object, which is either the God’s essence (dhāt'u' Allah) or His creations. This research propose a special starting character/keyword at the head of surah to differentiate the apparent oaths start with w '‫ 'و‬as well as a number of content-specific keywords that are related to negative clause like lā uqsim. For the narrative oath, we propose to use contentspecific keywords only to detect narrative oath keywords like (aqsam-u b- Allah'i) and (t-Allah'i). Following [6], the proposed style features consists of application-specific, structural features together with content-specific keywords to detect the oaths. Application-specific features are important because they are applicable to any language even for oriental languages. As shown in Fig. 2, which is a mapping of structural and content-specific features to the linguistic model of oaths, structural features will be based on the head of the surah contains a special starting character or keywords at the head of the surah, while content-specific keywords will be based on certain keywords that appear in the middle or the end of the surah. In the case of apparent oath, at the head of the surah, we relate the character to w '‫' و‬, and phrases contained keyword (lā uqsim), whereby the oath verb swear (uqsim) is preceded by the negative particle lā. For the middle ot end parts of the surah, we relate only to the keyword (lā uqsim). In the case of narrative oath, we relate the keywords to the phrases (aqsamu b Allah'i) and (t Allah'i) [2].

No. 1

2

3

4

TABLE I OATHS AND THEIR DEPENDENCIES Syntax Dependency Keyword Verse

Oath Types Apparent negative lā, Oath verb uqsim, character 'b' position oath, character 'w'

Narrative verb aqsam'ū, character 'b', object Allah character 't', object Allah

Negative lā

position, character 'w', starting character

verb, character 'b', object

character 't', object Allah

‫ ﻻ أُﻗْﺴِ ُﻢ ِﺑـ‬56:75, 69:38, 81:15, 84:16, 75:1, 90:1 ‫واﻟـ‬ 36:2, 37:1, 38:1, 43:2, 44:2, 50:1, 51:1, 52:1, 53:1, 68:1, 77:1, 79:1, 85:1, 86:1, 89:1, 91:1, 92:1, 93:1, 95:1, 100:1, 103:1 ‫ وَأَﻗْﺴَﻤُﻮا‬5:53, 6:109, ِ‫ِﺑﺎﻟﻠﱠﮫ‬ 16:38, 24:53, 35:42

‫ﺗﺎﷲ‬

12:73, 12:85, 12:91, 12:95, 16:56, 16:63, 21:57, 26:98, 37:56

TABLE II OATHS SAMPLE FEATURES EXTRACTED FROM FIRST VERSES ONLY IN JUZ' 'AMMA Structural Contentfeatures specific features Surah No. Surah Name First Verse First Remainin Phrase ‘lā (Ayat) letter is g letters is uqsim’ ‘w’ object 78 An Naba’ َ‫ﻋَﻢﱠ ﯾَﺘَﺴَﺎءَﻟُﻮن‬ N N N 79 Al-Nazi'at ِ‫وَاﻟﻨﱠﺎزِﻋَﺎت‬ Y Y N ً‫ﻏَﺮْﻗﺎ‬ 80 'Abasa ‫ﻋَﺒَﺲَ وَﺗَﻮَﻟﱠﻰ‬ N N N 81 Al-Takwir ُ‫إِذَا اﻟﺸﱠﻤْﺲ‬ N N N ْ‫ﻛُﻮﱢرَت‬ 82 Al-Infitar ُ‫إِذَا اﻟﺴﱠﻤَﺎء‬ N N N ْ‫اﻧﻔَﻄَﺮَت‬ 83 Y N N Al-Mutaffifin َ‫وَﯾْﻞٌ ﻟِﻠْﻤُﻄَﻔﱢﻔِﯿﻦ‬ 84 Al-Inshiqaq ُ‫إِذَا اﻟﺴﱠﻤَﺎء‬ N N N ْ‫اﻧﺸَﻘﱠﺖ‬ 85 Al-Buruj ِ‫وَاﻟﺴﱠﻤَﺎءِ ذَات‬ Y Y N ِ‫اﻟْﺒُﺮُوج‬

IV.

Bayesian Network Model for Oaths

This section represents the proposed Bayesian model for oaths. A Bayesian network is a graphical model for probabilistic relationships among a set of features. In particular, each node in the graph represents a variable, while the edges between the nodes represent probabilistic dependencies among the corresponding variables. The network structure is in the form of directed acyclic graph (DAG) and enables effective representation and computation of the joint probability distribution (JPD) over a set of variables. In oath detection, we would like to identify if a verse is a structural-based oath or content-specific-based oath, such that P (oath type | verse) is the highest. To model

Fig. 2. Application-specific features

Table I describes the details of apparent and narrative oaths investigated in this study together with their dependencies. Table II shows sample features that were extracted from the first verses of each surah in Juz' 'Amma.

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

759

A. Alqurneh, A. Mustapha

the Bayesian network, we selected all verses from 114 surahs. The Quran contains 6,236 verses (ayat) altogether from surah The Opening (Al-Fatiha) (Surah 1) to surah People (Al-Nas) (Surah 114) with varying length. For structural-based oath model, this provided us a total of 114 instances from the entire Quran. For content-specific oath model, this provided us a total of 6,236 instances from the entire Quran. The structure of a directed-acyclic graph (DAG) in a Bayesian network is defined by the set of nodes and a set of directed edges. The nodes represent the oath features extracted from the Quranic verses and are drawn as circles labeled with the variable names. The edges represent direct dependence among the variables and are drawn by arrows between nodes. Table III shows choice of nodes to represent the oath features for the Bayesian model.

Fig. 3(a). Structural-based Oath

TABLE III NODES AND VALUES FOR OATH CLASSIFICATION No Node name Type Values Desciptions 1 Oath (SOT) Binary {oath, not Structural oath – oath} special starting character/keyword 2

Oath (COT) Binary

{oath, oath}

not Content-specific oath – keywords list

3

Position of Boolean {first verse is First verses Ayat (PA) an oath, first verse is not an oath} Structural- Scalar {w, keyword, The appearance of based (SB) other} special starting bigram (‫ )واﻟـ‬in the verse or oath keyword

Fig. 3(b). Content-specific oath

4

5

ContentScalar specific (CS)

{keyword, other}

TABLE IV JOINT PROBABILITIES OF STRUCTURAL-BASED (SB) FEATURES No 1

The appearance of oath keyword.

3 4

5

6 n

 P  X i | Pa  X i   a

special starting character (SSC)

2

Figs. 3 illustrate a sample of network topology for oath and oath-like expressions based on applicationspecific features, which are structural-based and contentspecific. In addition to the DAG structure, we need to specify the parameter of the model, which is the conditional probability distribution (CPD) at each node. In this avenue, the Maximum Likelihood Estimation (MLE) is used to assess the following conditional independencies:

P  X 1 ,..., X n  

Head of Surahs

(1)

Starting keyword (KEY)

P(SB)

P(PA)

P(SOT)

wa as part of first ayat is not an Not SB (SSC) word oath oath = 2/114 = 0.017 = 93/114 = 0.81 = 93/114 = 0.81 'w' as a separate first ayat is an SB (SSC) character oath oath followed by a = 21/114 = 0.18 = 21/114 = noun 0.18 = 21/114 = 0.18 not 'w' = 93/114 = 0.81 Keyword is not a First ayat is not Not SB head oath (KEY) oath 112/114=0.98 = 0.98 = 112/114=0.98 Keyword is head First ayat is oath SB (KEY) = 2/114 = 0.017 = 0.017 oath = 2/114 = 0.017 Oath not Other oath keyword = = 21/114 = 0.18 21/114=0.18

i 1

TABLE V JOINT PROBABILITIES OF CONTENT-SPECIFIC BASED FEATURES

A Bayesian network model encodes the joint probability distributions (JPD) for all nodes by multiplying all conditional probability distribution (CPD) at each node in the network. Table IV and Table V show the joint probabilities for the proposed structural-based and content-specific features, respectively.

No 1 2 3

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

P(CS)

P(COT)

Apparent keywords = 11/6236 = 0.0017 Narrative keywords = 13/6236 = 0.0020 All keywords = 24/6236=0.0038

Apparent keywords = 0.0017 Narrative keywords in the two cases = 0.0020

International Review on Computers and Software, Vol. 9, N. 5

760

A. Alqurneh, A. Mustapha

From the Bayesian network model, we observed that the inference for structural-based oaths gives the probability of P  SOT | PA2   0.18 for special starting

algorithms. To control the bias in error rates, we applied 10-fold cross validation [34] to split the Quran text into ten approximately equal partitions training and testing set, each being used in turn for testing while the remainder combined for training.

bigram, the probability of keyword as head is P  SOT | PA5   0.017 . Also, the keyword features for apparent and narrative oath give the probability of P  COT | CS1  0.0017 and P  COT | CS 2   0.0020 ,

V.2.

In the following experiments, two large datasets are used. First is the apparent oath dataset, second is the apparent and narrative dataset. Both structural-based and content-specific were applied. For structural features the first 114 verses from the 114 surahs is chosen, and for content-based features the 6,236 verses from the 114 surahs of Quran for the style feature analysis is chosen.

respectively.

V.

Experiments of Oath Expression Detection

Detection of oath statement for human might be applicable when the oath statement contains a swearing verb as a main keyword. However, oath types in Quran as described above may occur without swearing verb, in particular when it is one word (noun) such as the oath started with character 'w'. Therefore, for this purpose, in this section, in the first stage of this research we present a machine learning approach to oath detection based on the proposed application-specific feature model. It covers three classification experiments using the structural and content-specific oath features with several classifiers, which are Bayesian network, decision tree, instancebased learning, and neural network. The experiments performed on three different dataset, apparent dataset, apparent and narrative dataset, and Juz' 'Amma dataset. V.1.

Experiments on Large Dataset

V.2.1. First Experiment: Apparent Oaths In this experiment, all the application-specific features are used, which include the structural-based and contentspecific features. The classification results are shown in Table VI. All the measurements of precision, recall, and F-measure showed that IBK, and Multilayer Perceptron give better results than BN and J48. TABLE VI CLASSIFICATION RESULTS FOR COMBINED-BASED OATHS Classifier Precision Recall F-Measure True False True False True False BN 1 0.994 0.053 1 0.1 0.997 J48 0.719 0.998 0.605 0.999 0.657 0.998 IBK 0.767 0.999 0.868 0.998 0.815 0.999 Multilayer 0.767 0.999 0.868 0.998 0.815 0.999 Perceptron

Dataset Preparation

In the first experiment, the dataset includes only the apparent oath, which means oaths that use creation as oath object (e.g. start with 'w', start with 'lā uqsim'). Classification is performed on verses using the structural features and the content-specific (keyword).  The second experiment is similar to the first experiment with additional two cases of narrative oaths to the dataset ("aqsam'ū b'iAllah", "t-Allah ").  The third experiment is a repetition of previous experiments specifically for Juz' 'Amma dataset, as opposed to global text in the Quran.  Structural feature is used to detect the oath statement occur at the head of the surah. Therefore, if oath is detected at the head of the surah then it is a structural oath, while content-specific feature is used to detect oath statement keyword occur at the remaining part of the surah. In this case, oath is a keyword oath base. The main objective of the classification experiments is to evaluate the proposed application-specific oath features extracted from the Quranic verses in large and small datasets contains oath statements. To do this, we used three evaluation measures, which are precision, recall, and F-measure as the basis of our comparison between Bayesian networks and other machine learning 

V.2.2. Second Experiment: Apparent and Narrative Oaths In this experiment the narrative oaths were added to the apparent dataset, all the application-specific features are used, which include the structural-based and contentspecific features. The classification results are shown in Table VII. All the measurements of precision, recall, and F-measure showed that IBK, Multilayer Perceptron, and J48 give better results than BN. TABLE VII CLASSIFICATION RESULTS FOR COMBINED-BASED OATH Classifier Precision Recall F-Measure True False True False True False BN 1 0.994 0.25 1 0.4 0.997 J48 0.818 0.999 0.865 0.998 0.841 0.999 IBK 0.818 0.999 0.865 0.998 0.841 0.999 Multilayer 0.818 0.999 0.865 0.998 0.841 0.999 Perceptron

The results in Table VI and Table VII are mainly attributed to the fact that our proposed applicationspecific oath feature model has produced approximately 45 instances out of 6,236 instances from the entire Quran

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

761

A. Alqurneh, A. Mustapha

dataset. Therefore, the application-specific features are worth to be investigated in a smaller dataset. For this purpose, we have chosen Juz' 'Amma (Chapter 30) from the Quran for the third experiment. This is justified by the finding that oaths exist in more than 40% of the surahs in this Juz [3], hence it is fertile environment to perform the classification experiments.

The results of all experiments have led us to two main conclusions. First, machine learning algorithms perform better classification results in small dataset compare to large dataset. Second, IBK and Multilayer Perceptron classifiers performed better results compare to J48 and BN classifiers.

Acknowledgements V.3.

Experiment on Small Dataset

This work was supported by Fundamental Research Grants Scheme from the Ministry of Higher Education Malaysia in collaboration with the Centre of Quranic Research at Universiti Malaya, Malaysia.

In the following experiment, for structural-based features we consider the first 37 verses from the 37 surahs and for content-based features we consider the 564 verses from the 37 surahs of Quran for the style feature analysis.

References V.3.1.

[1] [2]

Juz’ ‘Amma Experiment

In this experiment, all the application-specific features are used, which include the structural-based and contentspecific features. The classification results are represented in Table VIII. The measurements of precision and F-measure showed that IBK and Multilayer Perceptron give better results than J48 and BN.

[3] [4] [5]

TABLE VIII CLASSIFICATION RESULTS FOR COMBINED-BASED OATH JUZ AMMA Classifier Precision Recall F-Measure True False True False True False BN 0.794 0.97 0.628 0.987 0.701 0.978 J48 0.809 0.99 0.884 0.983 0.844 0.987 IBK 0.844 0.99 0.884 0.987 0.864 0.988 Multilayer 0.844 0.99 0.884 0.987 0.864 0.988 Perceptron

[6]

[7]

[8] [9]

[10]

VI.

Conclusion [11]

This paper proposed a computational model for oath and oath-like expressions using application-specific features from the Quranic text, which include apparent oaths and two cases of narrative oaths with the basis of Bayesian network model. The justification for analyzing oath and oath-like expressions from style viewpoint is because only through style markers that the essence of writing style for oaths in the Quranic text can be captured and quantified. We then employed Bayesian network to model the structural-based and content-specific oath features. In evaluating the style markers model, we designed and conducted three experiments. The first experiment is performed on large dataset (entire Quran text) to detect apparent oaths using the application features; structural, and content-specific. The second experiment repeated the same experiment with inclusion of narrative oath in addition to apparent oath on the same dataset. The third experiment performed similar experiment but scoped to smaller dataset (Juz' 'Amma).

[12]

[13]

[14]

[15]

[16]

[17]

[18]

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

J. Muhammad. Lisan Al-Arab. Darul Sadir, Beirut, 1997. S. A. Hassan. Style of Apparent Oath in the Holy Quran: Eloquence and Purposes. Journal of Sharia and Islamic Studies, 18(53): 2003. ISSN 1029-8908. A. R. Issa. Oath in Juz Amma (Morphological Study). Ph.D. thesis, Darululum College, Cairo University, 2009. M. Z. Ibrahim. Oaths in the Qur'an: Bint al-Shati's Literary Contribution. Islamic Studies, 48(4):475-III, 2009. T. M. Hashmi. A Study of the Quraanic Oaths: An English Translation of Im'an Fi Aqsam Al-Qur'an by Hamid Al-Din Farahi. Almawrid, Lahore, 2008. E. Stamatatos. A Survey of Modern Authorship Attribution Methods. Journal of the American Society for Information Science and Technology, 60(3): 538-556, Wile, 2009. H. Sayoud. Author Discrimination between the Holy Quran and Prophet’s Statements. Literary and Linguistic Computing, 27(4): 427-444, 2012. D. I. Holmes. Authorship Attribution. Computers and the Humanities, 28, 87–106, 1994. E. Stamatatos, N. Fakotakis, and G. Kokkinakis. Automatic Text Categorization in Terms of Genre and Author. Computational Linguistics, 26(4): 461-485, MIT Press, 2000. M. Oaks. Ant Colony Optimisation for Stylometry: The Federalist Papers. Proceedings of the 5th International Conference on Recent Advances in Soft Computing, pp. 86-91, 2004. S. Argamon. Stylistic Text Classification using Functional Lexical Features. Journal of the American Society for Information Science and Technology, 58(6): 802–822, 2007. E. Stamatatos. Author Identification: Using Text Sampling to Handle the Class Imbalance Problem. Information Processing and Management, 44(2): 790-799, Elsevier, 2008. V. Simaki, S. Stamou. and N. Kirtsis. Empirical Text Mining for Genre Detection. Proceedings of the 8th International Conference on Web Information Systems and Technologies, 2012. N. Habash, and O. Rambow. Arabic Tokenization, Part-ofSpeech Tagging and Morphological Disambiguation in One Fell Swoop. Proceedings of the 43rd Annual Meeting on Association for Computational Linguistics, Ann Arbor, Michigan, Association for Computational Linguistics, 2005a. N. Habash, O. Rambow. and G. Kiraz. Morphological Analysis and Generation for Arabic Dialects. Proceedings of the ACL Workshop on Computational Approaches to Semitic Languages, pp. 17-24, 2005b. M. Altantawy, N. Habash, O. Rambow. I. and Saleh. Morphological Analysis and Generation of Arabic Nouns: A Morphemic Functional Approach. Proceedings of the Language Resources and Evaluation Conference (LREC), Malta, 2010. N. Snider, and M. Diab. Unsupervised Induction of Modern Standard Arabic Verb Classes using Syntactic Frames and LSA. Proceedings of COLING-ACL'06, pp. 795-802, 2006. H. Al-Muhtaseb, S. A. Mahmoud, and R. S. Qahwahi. A Novel Minimal Arabic Script for Preparing Databases and Benchmarks

International Review on Computers and Software, Vol. 9, N. 5

762

A. Alqurneh, A. Mustapha

[19] [20]

[21]

[22]

[23]

[24]

[25]

[26] [27]

[28]

[29]

[30]

[31]

[32]

[33]

[34]

[35]

for Arabic Text Recognition Research. Proceedings of Wavelets Theory and Applications in Applied Mathematics, Signal Processing and Modern Science, pp. 37-4, 2009. L. Khreisat. Arabic Text Classification Using N-Gram Frequency Statistics A Comparative Study. DMIN 2006, pp. 78-82, 2006. M. Sanan, M. Rammal and K. Zreik. Arabic Supervised Learning Method using N-Gram. Proceedings of Interactive Technology Smart Education, pp. 157-169, 2008. F. Ahmed, and A. Nürnberger. A Web Statistics-based Conflation Approach to Improve Arabic Text Retrieval. Proceedings of the FedCSIS’2011, pp. 3-9, 2011. A. Hattab. Arabic Content Classification System using Statistical Bayes classifier with Words Detection and Correction. World of Computer Science and Information Technology Journal, 2(6): 193-196, 2012. F. Alotaiby, S. Foda, I. Alkharashi. Clitics in Arabic Language: A Statistical Study. Proceedings of the 24th Pacific Asia Conference on Language, Information and Computation, pp. 595601, Institute of Digital Enhancement of Cognitive Processing, Waseda University, 2011. Nabiha, A., Mokhtar, S., Classifiers Selection and features extraction / selection for Arabic handwritten word recognition, (2009) International Review on Computers and Software (IRECOS), 4 (2), pp. 212-21. W. Zaghouani, A. Hawwari and M. Diab. A Pilot PropBank Annotation for Quranic Arabic. Proceedings of the First Workshop on Computational Linguistics for Literature (NAACLHLT’2012), Montreal, Canada, 2012. H. Abdul-Raof. Exploring the Qur’an. Al-Maktoum Institute Academic Press, pp. 60 110, 2003. A. Al-Taani and A. Al-Gharaibeh. Searching Concepts and Keywords in the Holy Quran. Department of Computer Science, Yarmouk University, Jordan, 2010. M. Nassouro. Using Machine Learning Algorithms for Categorizing Quranic Chapters by Major Phases of Prophet Mohammad’s Messengership. Department of Computer Philology & Modern German Literature University of Würzburg Am Hubland D - 97074 Würzburg, 2011. A. Sharaf and A. Eric. Automatic Categorization of the Qur’anic Chapters. Proceedings of the 7th International Computing Conference in Arabic (ICCA11). Imam Mohammed Ibn Saud University, Riyadh, KSA, 2011. M. Nassouro. A Knowledge-based Hybrid Statistical Classifier for Reconstructing the Chronology of the Quran. Department of Computer Philology & Modern German Literature University of Würzburg Am Hubland D - 97074 Würzburg, 2011. K. A. Aldhaln and A. M. Zeki. Knowledge Extraction in Hadith using Data Mining Technique. Proceedings of the 2nd International Conference on E-Learning & Knowledge Management Technologies (ICEKMT 2012), Malaysia, 2012. M. Alkhatib. Classification of Al-Hadith Al-Shareef using Data Mining Algorithm. Proceedings of the European Mediterranean and Middle Eastern Conference on Information Systems (EMCIS 2010), UAE. S. Saad, N. Salim, Z. Ismail and H. Zainal. Towards ContextSensitive Domain of Islamic Knowledge Ontology Extraction. International Journal for Infonomics (IJI), Volume 3, Issue 1, 2010. R. Kohavi. A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection. IJCAI: 1137-1145, 1995. Rezazadeh, A., Askarzadeh, A., Sedighizadeh, M., ANN-based PEMFC modeling by a new learning algorithm, (2010) International Review on Modelling and Simulations (IREMOS), 3 (2), pp. 187-193.

Authors’ information 1

Faculty of Computer Science and Infromation Technology, Universiti Putra Malaysia. 2

Faculty of Computer Science and Information Technology, Batu Pahat, Universiti Tun Hussein Onn Malaysia. Ahmad Alqurneh has received his B.Sc. and M.Sc. degrees with a major of Computer Science and Application, from Aligarh Muslim University - India (1998), and University of Jordan – Jordan (2007) respectively. He is currently a Ph.D. candidate in the faculty of Computer Science and Information technology, at Universiti Putra Malaysia (UPM). His research interests includes: Computational Linguistics, Computational Stylometry and Text Mining. E-mail: [email protected] Aida Mustapha received the B.Sc. degree in Computer Science from Michigan Technological University and the M.IT degree in Computer Science from UKM, Malaysia in 1998 and 2004, respectively. She has received her Ph.D. in Artificial Intelligence focusing on dialogue systems, from Universiti Putra Malaysia (UPM) in 2008. She is currently an active researcher in the area of Computational Linguistics, Text Mining, and Agent Systems in Social Networks. E-mail: [email protected]

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

763

International Review on Computers and Software (I.RE.CO.S.), Vol. 9, N. 5 ISSN 1828-6003 May 2014

A Conceptual Foundation for Aspect-Oriented Modeling Sabah Al-Fedaghi Abstract – The aspect-oriented approach has emerged as a modeling paradigm for different phases of the software development life cycle. Production of separate, explicit representations of crosscutting concerns is the main feature of the approach, to enable modular and flexible implementation of aspects while maintaining model simplicity. Nevertheless, the problem is that current UML-based representation uses a multiplicity of diagrammatic specifications to incorporate aspects and concerns; thus, several series of models are produced that offer various “views” of the system instead of a uniform integrated description that is more appropriate for addressing crosscutting concerns. This paper proposes a conceptual foundation for aspectoriented modeling utilizing a flow-based diagrammatic specification to build two systems: an application system and a global controlling system. This development is facilitated by schemata that uniformly integrate functional and nonfunctional requirements. A case study is utilized to illustrate the proposed method. The resultant contribution promises a viable approach to the notion of integrating crosscutting concerns into system modeling. Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved.

Keywords: Aspect-Oriented Modeling, Software Development Life Cycle, Conceptual Modeling, UML

I.

Two types of concerns can be identified in the software development process: - Primary concern: components or objects. - Crosscutting concerns: features required by multiple components. The separation of concerns principle is considered one of the key design principles in the area of software engineering [5]; the term refers to the process of breaking a system into distinct aspects with established boundaries. This principle is lacking in the objectoriented approach [6]. The need for explicit and separate representations of crosscutting concerns (concerns that are tangled with other concerns) is the main feature of the aspect-oriented approach, enabling modular and flexible representations of aspects while maintaining model simplicity. “An aspect is a module that can localize the implementation of a crosscutting concern. The key to this modularization technique lies in its module composition mechanism” [7]. Modularization technique refers to decomposing a system into modules, each hiding an aspect that evolved independently of other modules. Thus, in programming, an aspect of a program is a global feature, but it does not represent a primary functionality. Some concerns can be encapsulated within modules; however, crosscutting concerns are difficult to incorporate into a modular unit (aspect) designed to implement a specific concern. Many aspect-oriented modeling techniques have been developed for various modeling notations, and the approach has been applied in different phases of the software development life cycle [8]. Current approaches

Introduction

“The evolution of a new software engineering paradigm often progresses from programming towards design and analysis, to provide a complete path across the software development lifecycle” [1]. Accordingly, since Aspect-Oriented Programming (AOP) is reaching maturity, Aspect-Oriented Modeling (AOM) has naturally emerged as a modeling paradigm for the software development life cycle, used from requirements elicitation to code implementation. Such an approach is motivated by the focus on system functionality in objectoriented analysis and design, resulting in difficulties in maintenance and contradictions of the main principles of object orientation. According to Castillo et al. [2]: “Object-oriented analysis and design have been more concerned with system functionality, neglecting nonfunctional aspects; the result is code which is tangled and difficult to maintain, contradicting main principles of object orientation. Aspect Oriented Software Development proposes the early specification of nonfunctional requirements”. AOM refers to a development technology that aims at modularization of systems in order to focus on the main logic. Multiple concerns are expressed separately, and they are automatically integrated into systems. The basic principle is to represent diverse concerns associated with design of a system. Concern here refers to a focus, goal, concept, property, or interest point of a system that is specified when the system is designed, e.g., functionality and performance [3], [4]. Manuscript received and revised April 2014, accepted May 2014

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

764

Sabah Al-Fedaghi

use various sets of abstractions and composition mechanisms to modularize and compose concerns [1]; however, according to [8]; Despite the many sources of information on AOM, it is not easy for people who want to use AOM to choose an appropriate AOM technique. Finally, it is not clear nowadays how several AOM approaches that apply to different phases of software development can be combined to produce a coherent aspect-oriented software development process. UML [9] has been proposed as a vehicle to incorporate aspect-oriented concepts and provide abstractions and diagrammatic notations [10]-[13]; for example, Krechetov et al. [14] recommend “generalpurpose and UML-based” visual modeling language for aspect-oriented architecture modeling. The field of aspect-oriented modeling and programming has become a very active and prosperous area of research. Here, space limitation permits only a glimpse into such activities. Comprehensive surveys of the field are presented in [15]-[17]. Krechetov et al. [14] analyzed four aspect-oriented visual notations at the architecture design stage of the software life cycle (e.g., PCS Framework [10]) as a UML extension. Zakaria et al. [18] propose an approach that provides a UML extension for modeling of aspect-oriented systems, using aspects as classes with stereotyping. They represent the relationship between aspects and classes by the UML association relationship. They also propose different types of tags for the relationship between classes and aspect, and they model the pointcuts as a stereotype of a class.

II.

According to Laddad [3], one objection to aspectoriented programming is that “implementing crosscutting modules involves understanding the details of the core module’s implementation and vice versa” [italics added]. Likewise, core representation in modeling facilitates understanding, hence, realization of crosscutting concerns. Aspect-oriented modeling is typically viewed as adding crosscutting concerns; i.e., addressing those features that cut across modules, commonly, e.g., logging and security concerns [21]. Laddad [22] depicts these requirements as a light beam passing through a concernidentifier prism that separates each concern. But the main problem in the aspect-oriented approach is the fragmented distribution of concern “locations” (i.e., modules) of the system (see Fig. 1).

Fig. 1. Extended prism analogy

This paper proposes to utilize FM at two levels: 1. to model diagrammatically the system being developed (called the application system, Asystem). 2. to model diagrammatically the system under which the Asystem operates (called the global system, Gsystem). The proposed solution is illustrated in Fig. 2, where the Gsystem implements each concern by using its knowledge of the structure and observation of activities of the modules of the Asystem. Furthermore, this solution is designed in the requirements phase of development by using the high-level diagrammatic specification capability of FM for the Asystem and the Gsystem.

Problem and Solution

The basic premise of this paper is that UML fails to furnish a nucleus around which different phases of the development process can evolve. In contrast to a UML-based approach of multifaceted textual and graphical descriptions, the contention of this paper is that the very nature of AOM demands a “master representation” around which global features can be identified and designed, analogous to the role of a graphical description (blueprint) in the construction of a high-rise building, where the drawing is the core around which functional features such as the structure itself, an electrical system, a water system, and interior furnishings are built by their various specialists, in addition to representation of global features such as aesthetics and themes, cost, and security. Accordingly, this paper develops an alternative representation by using a tool called the Flowthing Model (FM) [19], [20]. “Globalization” (building a global view from multi-faceted concerns) is a major element in an analysis of the aspect-oriented paradigm since the approach includes features that cannot be easily encapsulated using typical system-composition techniques. The term refers not only to the system to be built, but also to the surrounding agents and outside environment.

Fig. 2. Extended prism analogy

The relationship between the Gsystem and Asystem can be illustrated by a program (Asystem) that runs under the supervision of its operating system (Gsystem). Assuming the Gsystem “knows” the structural components of the Asystem, it can observe the global activities of these components; hence, it can include aspects that represent global concerns, e.g., logging, security, constraints, etc. In preparation for applying FM to concerns and aspects, and to provide background for this proposal, FM is briefly described in the next section.

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

765

Sabah Al-Fedaghi

FM uses the following basic concepts: Flowthing: A thing that has the capability of being created, released, transferred, arrived, accepted, and processed while flowing within and between “domains” called spheres. Flowthings can be material objects, concepts, actions, or information. Information communication involves creating, releasing, transferring, receiving, and processing of information. Spheres and subspheres: These are the environments of the flowthing. A sphere is a container of other spheres. Thus, if the sphere of a person (say, in the supersphere of an information system) recognizes only two properties, then the world represented in the person sphere is a world in which there are only two properties (closed system assumption). A sphere can have multiple flowsystems in its construction, if needed. A sphere can be an entity (e.g., a hospital and the departments within it; a person or class of persons, e.g., nurses; a computer with one or more components; and so forth), a location (laboratory, waiting room), communication media (channel, wire). A flowsystem is a subsphere that embodies the flow; it itself has no subsphere. Triggering: This is an instrument of activation (denoted by a dashed arrow). This mechanism may control the movement of flowthings that are in the system; e.g., in Process, if a flowthing satisfies some condition, it flows to Release. A flow is said to be triggered if it is created or activated by another flow (e.g., a flow of electricity triggers a flow of heat) or is activated when a condition in the flow is satisfied (e.g., processing of records x and y triggers the creation of record z in the flowsystem of records). Triggering can also be used to start events, e.g., turning on a flowsystem by remote signal. Spheres of FM can be viewed as aspects, close to the sense of Dooyeweerd’s definition [24], in which aspects represent: - spheres of meaning - ways in which things can be meaningful, - modes of being - modes in which we can Be: to Be is to Mean.

III. The Flowthing Model (FM) The foundation of the Flowthing Model (FM) can be related to the notion of fluidity propounded by Heraclitus, a pre-Socratic Greek philosopher who declared that “everything flows.” Plato explained this as, “Everything changes and nothing remains still,” where instead of “flow” he used the word “change” [23]. In FM, things that “flow” (called flowthings, denoted by solid arrows in the FM diagram) are things that make their appearance in a system within their spheres. If a system (global sphere) includes a human sphere, then this human sphere has subspheres such as action, money, information, emotions, etc. as flowthings. These flowthings flow in specific “flow channels,” changing in form and interacting with outside spheres. The lowerlevel spheres where the flows occur are called flowsystems; these include, at most, six stages (states of a flowthing), as follows: - Arrive: a flowthing reaches a new flowsystem - Accepted: a flowthing is permitted to enter the system. Note that, in FM, if arriving flowthings are also always accepted, Arrive and Accept can be combined as a single Received stage. - Processed (changed in form): the flowthing passes through some kind of transformation that changes its form but not its identity (e.g., compressed, colored) - Released: a flowthing is marked as ready to be transferred (e.g., airline passengers waiting to board) - Created: a new flowthing originates (is created) in the system (e.g., a data-mining program generates the conclusion that an application is rejected as input data) - Transferred: the flowthing is transported somewhere outside the flowsystem (e.g., packets reaching ports in a router, but still not in the arrival buffer). These stages are mutually exclusive; i.e., a flowthing in the Process stage cannot be in the Created stage or the Released stage at the same time. An additional stage of stored can also be added to any FM model to represent the storage of flowthings; however, storage is not a generic stage, because there can be stored processed flowthings, stored created flowthings, and so on. Fig. 3 shows the structure of a flowsystem and its internal flows with the six stages and transactions among them, assuming irreversibility of flow, e.g., released flowthings flow only to transfer. A flowsystem may not need to include all the stages; for example, an archiving system might use only the stages Arrive, Accept, and Release. Multiple systems captured by FM can interact with each other by triggering events related to one another in their spheres and stages.

IV.

Example of FM Representation

Bahill and Daniels [25] discuss an example use case involving control of a heater and air conditioner to maintain room temperature between [x and y] degrees. Its main success scenario is as follows [25]: 1 The home owner turns ON the controller and sets x and y. 2a. The room temperature is greater than y. 3. The system turns on the air conditioner. 4. The room temperature drops below x. 5. The system turns off the air conditioner [repeat at step 2]. 6. Home owner turns off the controller. Anchored alternative flow 2b. The room temperature drops below x. 2b1. The system turns on the heater.

Fig. 3. Flowsystem

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

766

Sabah Al-Fedaghi

2b2. The room temperature exceeds y. 2b3. The system turns off the heater [repeat step 2]. FM can represent this use case as shown in Fig. 4. It starts at circle 1 in the figure when the home owner generates a signal to turn on the controller. It flows to the controller (circle 2) and is processed (3) to trigger the ON state (4), which in turn triggers setting the thermostat to ON (5). Note that the controller regulates the thermostat, so the thermostat stops working (automatically turning the air conditioner and heater ON and OFF) when the home owner stops the controller (6). The home owner can also generate (7) thresholds that flow (8) to the controller. Upon receiving, the controller sends them to the thermostat (9). Now, in the room (10), a temperature is produced (11) that flows to the thermostat (12) where it is processed (13) by comparing with the stored thresholds (14). Assuming that the thresholds are 70 and 73 °F, then: - If the temperature is greater than 73 (15), the air conditioner is triggered to the state of ON (16). - If the temperature drops to 70 (17), the air conditioner is triggered to OFF (18). This temperature also triggers the heater to OFF (19) in case it is in the ON state. - If the temperature is less than 70 degrees (20), the heater is triggered to ON (21). In all cases, if the owner turns OFF the controller, then the controller turns OFF the air conditioner (if it is ON 22), the heater (if it is ON - 23), and the thermostat (24). Note how modularization of the FM depiction (i.e., organization into spheres) resembles the structure of reality, e.g., Room is included in the depiction even though it is not mentioned in the description of the

problem. Also, note how each sphere encompasses various flowsystems, e.g., Home owner has two flowsystems: Switch signal and Thresholds. The paths of flow streams are separated; e.g., a Switch signal does not directly “meet” Thresholds. It is interesting that States are created (and processed) but never flow from one sphere to another. The exclusiveness of FM stages (i.e., a flowthing cannot be in two stages simultaneously) indicates synchronized change of the flowthing. A flowthing cannot be changed in form and sphere simultaneously. This is a basic systematic representation of flowthings. No change in form occurs during movement from one sphere to another; similarly, no flowthing can be created and change form (be processed) simultaneously. Creation means coming into existence; hence, this transformation is in conflict with changing in form (being processed) since the latter requires pre-existence. Also, a flowthing cannot be transferred and arrive at the same point of time, and it cannot be received and processed instantaneously. Note that in FM, creation is conceptualized as a type of flow.

V.

Concerns and Aspects

Concern, as mentioned in the introduction, refers to a focus, goal, concept, property, or interest point of a system. Accordingly, in classical semiotics notation, a concern is a concept corresponding to an aspect of reality that is represented by a “sign”, e.g., a software module (see Fig. 5).

Fig. 4. FM representation of the use case in the example

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

767

Sabah Al-Fedaghi

1 2 3 4 Fig. 5. Semiotics depiction of concern and aspect

The interesting thing about aspect in this representation is that it is not a single “object” as depicted in the usual semiotics triangle; rather, it is an all-inclusive, or partially all-inclusive property, quality, or trait that may be scattered across a system. Consequently, the aspect-oriented approach aims at breaking a system into distinct aspects with established boundaries (separation of concerns principle) and tries to pinpoint each in a single sign. The FM schemata of a system can be viewed as a specification that can replace natural language-based description. All types of notions can be superimposed over the basic FM schemata, including synchronization, logic, constraints, and even legal notes. It is a diagrammatic contract that is understood and shared by clients and developers. Any of these notions can reflect concerns related to different areas of the diagram. Applying this line of thinking to the temperaturemaintenance system shown in Fig. 4, it is possible to identify “crosscutting” flowsystems, shown in Table I. Note how the type of flowthing ties different flowsystems together. For example, the Switch signal crosses from Home Owner sphere to Controller sphere. The Switch signal is a crosscutting concern involving two identifiable parts of the system: Home owner and Controller, analogous to the Danube River as a concern of Germany, Austria, Slovakia, Hungary, Croatia, Serbia, Bulgaria, and Romania. The home owner is a signal creator, and the controller is a signal processor. Handling of signals is thus distributed between these objects. If checking the quality of signals and handling of errors are required, then checking and error handling are either performed separately in the two modules, or they are centralized and, say, encapsulated independently from different modules. In this last case the checking and handling are “woven into” the modules by instantiating them. We can see that concerns here are motivated not only by operational requirements, e.g., efficiency, but also by global concerns, e.g., pollution in the Danube. In Table I, each row can be viewed as a crosscutting flowsystem or flow that emerges as a result of functional analysis of a core concern (see Fig. 6). Emergence of a core concern is analogous to emergence of crosscutting properties of the Danube as they relate to physical and political aspects of the area of the world that includes Germany, Austria, Slovakia, Hungary, Croatia, Serbia, Bulgaria, and Romania. Note that signals, thresholds, states, and temperature are flowthings. Accordingly, a concern is a flowthing process (flowsystem).

TABLE I CROSSCUTTING FLOWSYSTEMS Flowsystems spheres Switch signal Home Control owner Thresholds Home Control Thermostat owner Temperature Thermostat Room State Control Thermostat Air Heater cond.

Fig. 6. Crosscutting flowsystems

For example, Concern 1 in Fig. 6 is a feature in the system that handles signals originated by the home owner and processed by the controller. Nonfunctional concerns are superimposed over the functional FM representation. In the case of the Danube countries, the quality of water in the river is a concern that cuts across boundaries by the nature of the flow of the river. Note that quality is a flowthing, as shown in Fig. 7. It is a concern that can be “implemented” locally or even globally by, say, a regional authority established by the countries. Country sphere River Physical Water Transfer

Transfer: pure

Receive

Receive

Process

Release

Transfer

Create: polluted

Release

Transfer

Quality of water

Fig. 7. Change in water quality as a river flows through a country

Similarly, in the example of maintaining the temperature in a room, suppose that the following two concerns must be incorporated: - Signal security that is applied to the switch signals (e.g., authority of the home owner, signal authentication received by the controller). Signal security is generated as a concern triggered by the generation of a switch signal. - Physical security of the air conditioner and heater facilities; this is accomplished by sending a guard from security headquarters at certain time intervals.

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

768

Sabah Al-Fedaghi

Fig. 8 shows the FM representations of these constraints laid over the diagram of Fig. 4. In the first case, generation of a switch signal in the sphere of the home owner creates a signal security instance (flowthing) that is processed; i.e., authorization is checked. Receiving a signal in the controller sphere also triggers a security procedure. For the physical security concern, a guard physically goes to the air conditioner and heater facilities. Timing of dispatch of guards is not shown in the figure.

VI.

functionality, while cutting across usual language modularity constructs like processes or packages. Superimpositions include specifications, both of the assumptions made about basic systems to which the superimposition can be applied, and the added properties true of the resultant augmented program [27]”. In a similar line of thinking, superimposition (Gsystem) is utilized to juxtapose activities related to components of the Asystem. Additionally, the approach in this section utilizes the concept of an encapsulating layer (Gsystem), such that flowthings sent to or from the component must pass through the layer [28]. The Gsystem is suitable for observing the overall picture of concerns, including crosscutting concerns such as auditing and security, by virtue of being the one supervisor of the Asystem that facilitates its diverse tasks:  Input and output.  Storing and retrieval from memory.  Execution of different modules.  Control of execution. Here, use of the Gsystem is analogous to analyzing the crosscutting concerns of the Danube River such as effects of water quality along its length; regional (global) knowledge is needed of all activities along the banks of the entire river. A master plan to satisfy concerns related to the river needs to know about only global activities such as the fact that harmful materials are produced by a certain industrial complex sited on the river, regardless of the specific industrial activities of that complex; e.g., the complex produces cosmetics.

Operating System as an Illustration of a Globally Knowledgeable Capsulizing System

As mentioned previously, the basic contention of this paper is that aspect-oriented modeling needs a “master representation” around which global features can be identified and designed. “Globalization” (building a global view from multiple concerns) is a major element in analysis of an aspectoriented paradigm, since there are concerns that cannot be easily encapsulated by typical system composition techniques. This section separates the global environment (global system denoted as Gsystem) from a description of the application system. The basic idea in this approach is to incorporate the notion of superimposition introduced by Katz and Gil [26]. According to Sihman and Katz [27]: “A ‘classic’ superimposition is a program module that can augment an underlying program with added

Create

Process

Create

Signal security Create

Release

Process Signal security

Transfer

Transfer

Switch signal

Switch signal

Home owner

Release

Receive

Transfer

Air conditioner

Physical security

Process

Receive

Create

Release

Transfer

State

ON

OFF

Process If OFF If ON

Physical security Process

Controller

Receive

ON

ON

Create

OFF

State

Create

OFF

Heater

Transfer

Security dept.

Fig. 8. FM representation of the use case in the example

Copyright © 2014 Praise Worthy Prize S.r.l. - All rights reserved

International Review on Computers and Software, Vol. 9, N. 5

769

Sabah Al-Fedaghi

The relationship between the Gsystem and Asystem can be illustrated by use of an FM description of a C program and the operating system (OS) under which it is running. An OS instruction set is written just for the purpose of controlling the C program; accordingly, it knows its global requirements without needing to know its internal specifics; additionally, this happens at the requirements level. The example is built on ideas developed by Citrin and Doherty [29], who provide the following C program (with minor differences): int x; void main() {cin>>x; if (x == 1) printf("x is 1"); else printf("x is not 1");} We assume that the statements represent the components of the Asystem. A software system with several functions would be more appropriate for our purposes, but space limitations prevent that. The FM representation of this program is drawn in Fig. 9 [30], where the input and if statement are shown as subspheres of the program. In cin>>x, the input is received by the keyboard (circle 1 in the figure) to flow to cin (2) then to the memory (3). In the if statement, x is retrieved from memory (4) to ALU to be compared to 1 (5). If x is equal to 1, this triggers (6) retrieval of the string “x is 1” (7) and sending it to cout (8); otherwise “x is not 1” (9) is sent (10). Note that keyboard, screen, memory, cin, cout, and CPU are all modeled as flowsystems (subspheres). Thus, a program is diagrammed as an Asystem in the same way an application system is modeled. Now, we can model the Gsystem, in this case the OS segment, as a meta-model that manages the C program. This means developing an FM description of

Statement: cin