Comparison of ANFIS with MLP ANN in Measuring the Reliability based on Aspect Oriented Software

Автор: Mohammad Zavvar, Farhad Ramezani

Журнал: International Journal of Modern Education and Computer Science (IJMECS) @ijmecs

Статья в выпуске: 9 vol.7, 2015 года.

Бесплатный доступ

In fact, Reliability as the qualities metric is the probability success or The probability that a system or set of tasks without failure for a specified constraints of time and space, as specified in the design and operating conditions specified temperature, humidity, vibration and action. A relatively new methodologies for developing complex software systems engineering is an aspect-oriented software systems, that provides the new methods for the separation of concerns multiple module configuration or intervention and automatic integration them with a system. In this paper, using MLP artificial neural networks and adaptive fuzzy neural network assess the reliability of the aspect oriented software and at the end, two methods were compared with each other. After examination, the root means square error method based on artificial neural networks, fuzzy neural network-based method of 0.024262 and 0.021874 to be adaptive. The results show that the method is based on adaptive fuzzy neural networks with low error in the estimation of reliability, performance is better than the MLP artificial neural network approach.

Еще

Adaptive Fuzzy Neural Network, Artificial Neural Network, Reliability, Aspect Oriented Software

Короткий адрес: https://sciup.org/15014792

IDR: 15014792

Текст научной статьи Comparison of ANFIS with MLP ANN in Measuring the Reliability based on Aspect Oriented Software

Aspect oriented software engineering provides the new ways to measure the system software of the concerns of multiple separation or intervention and integration with the system automatically That leads to the production and delivery of software product quality and reliable. [1]

Aspect-oriented approach makes the classification of simple programs, so that relieve concerns won’t be more complex design and improve understanding of the system. [2]

Aspect-oriented produce more quality products and more efficient, and to add more capabilities to the existing system. Aspect oriented programming, all the data, methods, and classes related to a concern within one one aspect of the module and the system is optimal.[3]

Aspect oriented programming, such as programming, object oriented programming to overcome the limitations of other methods, in the face of concerns developed an intervention. [4, 5] The new structures to deal with concerns about the intervention. Oriented aspects, aspects of object oriented classes are essentially the same.

They can also object oriented aspects of the interface are other structures. Recommendations aspects to cover, the cut and Intertype Declarations are used in a single module, as well as classes in object oriented interfaces had to do. [6]

Aspects and classes can be introduced as a module with a base unit of measure of aspect oriented display. Recommendations are essentially the same methods in object oriented. [7] Recommendations with their counterparts in object oriented methods are the same as operations are discussed. The work suggests that one aspect of an event should be for specific, it is clear. Intertype also to add new methods to a class field or used. On the other hand, in the same orientation as the object is stationary. [8]

Software quality is a vital force in the development of the software industry. By this time, events that have occurred because of the quality of software, are common events. Especially heavy losses that have occurred in the areas of application, such as the fields of military, economic and national security, human shock has arrived. [9]

The software quality is still a concern. Entering the 21st century, the development of human society to the network and the data has been entered. The scale is bigger and bigger investments. The complexity and the difficulty grows day by day. The risks are higher.

Decades of experience show that the quality control software in a short period due to the unique characteristics of software products, the general can not be resolved. It is essential that new methods and techniques and quality control software continuously developed in terms of long-term research and operational software engineering and software quality has gradually improved.[10] Now, a series of factors affecting software quality, reliability, yet complex subject for study and discussion in the field of software engineering is hot.

Software reliability as the probability of operations for the period specified in an environment free from defects is defined. [11] Today, providing products with better features and higher reliability for producers is essential. Consumers expect the software required to work longer. The guarantee of reliability is one of the main characteristics of products as a result, a more accurate assessment of the reliability of the product, is a fundamental pillar. [12]

The software reliability is an important factor for determining the quality of the software .And according to the application software in a variety of industries, assessing the reliability can be reduced the risks of life and property. [13] Reliability Assessment Software, enables developers of the software to identify the factors that could improve the design and coding. [14] This is a dire need for software engineers to know how much software is designed to be reliable and the fact highlighted the importance of the reliability factor.

Now that we have a better platform to improve the reliability of an aspect oriented software emerge and we have a good-looking measure of confidence in our system. Therefore, in this paper, with the use of MLP artificial neural networks and adaptive fuzzy neural network to provide methods to assess the reliability of aspect oriented softwares. The final output of the system, the amount is estimated for the reliability of the aspect oriented software.

  • II.    Related Works

Of work and research in the field of software reliability assessment based on aspects of performance is very limited. This section examines some aspects of the work and research that has been oriented and aspect oriented software quality criteria evaluation carried out are discussed.

Figueiredo et al proposed set of metrics and a set of rules for the assessment of products based on the aspects. [15] This aspect oriented framework that allows developers to evaluated their products in design and implementation phases. The metric used for educational concerns include: Three metric CDC, CDO and CDLOC for separation of concerns, as well as the CBC and DIT metric for adhesion or attachment or coupling and cohesion LCOO for. Finally, a tool for the proposed method was produced.

Some researchers [16] a method for evaluating the capability of storing and re-using aspect oriented software is provided. This framework includes a set of metrics of software features and a qualitative model. In this study, the method includes metrics cohesion metrics, metrics and metrics depend on the system size.

Dadhich and Mathur also suggest that aspect oriented programming is a programming technique that secondary operations and support business logic distinguishes the main program. A part of this program is added to the maintenance of the facility to be constructed. Apart from the operating conditions, in the development of software, we should careful about operating conditions in addition to other factors such as reliability, compatibility and performance. They determine the quantitative aspect oriented software reliability model ISO / IEC 9126 used. Due to the unpredictable nature of software quality features, for improving the application used fuzzy method with multi-criteria.[17]

  • III.    Statement Of Concepts

In this section we review basic concepts of MLP artificial neural network and adaptive fuzzy neural network.

  • A. ANN

Artificial Neural Network, are novel computational methods and systems for machine learning, knowledge representation, and finally apply the knowledge gained in response to higher projected output of complicated systems. The main idea of these networks inspired by the way biological nervous system function, to process data and information to the learning and knowledge creation. [18] The key element of this idea, the creation of new structures for information processing systems. The system of processing formed extremely large number of interconnected neurons to solve a problem with the name in unison, and data are transferred. In many complex mathematical problems to solve complex nonlinear equations leads, A Multilayer perspetron network can easily be used as weights and proper functions. [19] In this type of network to apply an input layer, a layer is hidden inputs and an output layer that finally answers the question of return, is used. An example of a network Multilayer perspetron in Fig1 is shown.

Fig.1. Multilayer Perceptron Structure with Hidden Neurons and Output Neurons with Linear Function.

In this network, the actual output compared with the desired output and the weights by propagation algorithm, is placed under the supervision of the appropriate pattern is formed. for input pattern p, square output error for all cells output layer as follows:

s

E p = 1( d p - y p )2 = 1 ( d jp - y jp )2        (1)

In the first layer, all the nodes are adaptive and output layer is the degree of input fuzzy membership that relationship (4) is:

In which d p the desired output for the j-th cell in the output layer, s output vector dimension, y p the real output vector and d p the vector output are desired. The total square error E to P model in equation (2):

O i 1 = µ A ( x )    i=1, 2

O i 1 = µ B ( x ) i=3, 4             (4)

P      Ps

E = E p = 1 ∑∑ ( d j p - y j p )2       (2)

p = 1          2 p = 1 j = 1

Weights to be adjusted the aim of reducing the cost function E, the minimum gradient downward. The equations updating the weights are as follows:

wij ( t + 1) = wij ( t ) +ηΔ w ( t ) + α w ( t - 1)   (3)

Where

µ ( x ) µ ( x ) can be a fuzzy membership function. For example, if the Gaussian membership function used in equation (5) is calculated.

- ( x - ci ) 2 µ A ( x ) = e 2 σ i 2

wij ( t ) =- (

E p

wij ( t )

)

η

the learning factor, α factor the moment, w ( t + 1) the new weight and w ( t ) is the previous weight. In this method, weights are repeatedly updated for all learning patterns.

The process of learning stops when the total error for pattern p less than the specified threshold, or the number of training courses to an end. It should be noted that the teaching methods, teaching methods and the potential propagation term is a moment of convergence in the local minimum to reduce propagation method.

B. ANFIS

σ and ci are the parameters of membership function accordingly shaped Gaussian function.

In the second layer, nodes which are fixed and expressed as a simple multiplier operate. This layer can be output (6) stated:

Oi 2 i = µ A ( x ) µ B ( y ) i=1, 2 (6)

This can be interpreted as the power to fire regulations. The third layer is fixed and with N nodes shown and the normal role of the fire power of the previous layer acts. This layer has an output connection (7) is:

O 2 =ϖ =   ϖ i     i=1, 2        (7)

ϖ +ϖ

A neuro fuzzy inference system, a neural network that is based on Takagi-Sugeno fuzzy system. This method was created in the early 1990s. Because of this system unify neural network and fuzzy logic of the concepts with each other, Both features can be used in a frame. [20] View of ANFIS structure shown in Fig2.

This layer can be interpreted normalized firepower. The fourth layer, nodes, and output nodes comparative product of the normal fire power and first-degree polynomial model is primarily Sugeno. The output of this layer can be in the form of equation (8) stated:

Oi i ƒ i =          i=1, 2        (8)

ϖ i ( pix + qiy + ri )

Fig.2. ANFIS Structure

The fifth layer is a fixed node labeled S is the sum of the output signal input is expressed as Equation (9).

2 O i 5 = ϖ i ƒ i i = 1

2 ϖ i ƒ i = 1

ϖ +ϖ

The task of learning algorithms for the ANFIS, the parameters can be modified {ci and σ } and {r i and p i and qi} output ANFIS to coordinate with the training data. When the above parameters{ci and σ }are fixed output ANFIS model can be expressed as Equation (10):

„       toto

/ =   — /1 +   — / 2

to +to     to +to

By putting the equation (6) in equation (10) to (11) we see:

У = ^ /1 + to2 /2

And put the fuzzy rules in the equation (11) to (12) will be:

/ = (to r ^ ) p i + (to i y ) q i + (to i ) г +(to 2 x ) P 2 +(to 2 У )q 2 +(to 2 ) r 2

Delayed a linear order of the parameters are {ri and pi and q i } to identify the optimal values of the parameters of the least squares method is used. Least square method to optimize parameters delayed with fixed parameters used before. Once the optimal parameters were found posterior immediately reverse course begins. Descending error reduction method for setting optimal parameters related priority fuzzy sets used in the input range.

ANFIS output using the parameters found in the path forward will be calculated later. Output error to set the parameters preceded by standard error propagation algorithm is used.

  • IV.    The Proposed Method

We present the proposed method for evaluating the reliability of aspect oriented software. In this paper, the collection of data on project based software is used. The data set includes 4 inputs and one output. The output value equal to the amount calculated for the reliability of its aspect oriented software. The input data set are as follows:

  • •    Concern Diffusion over Operations

  • •    Degree of Scattering across Classes

  • •    Degree of Scattering across Methods

  • •    Lines of Concern Code

The method is based on MLP artificial neural network, 70% of data for education, 15% of data for the evaluation and 15% of data is used for the final test of the network. The method based on ANFIS is used from 70 to 30. In other words, 70% of data used for training and 30% of data for the test of the network. In addition, both methods based on MLP artificial neural network and adaptive fuzzy neural network have been trained with the same data in 20 stages. In adaptive fuzzy neural network was considered 3 linguistic variables and type of membership functions is gaussmf.

One of the criteria used in the evaluation model, root mean square error between the predicted and measured values. RMSE is a useful tool for comparing the forecasting errors. This value is calculated using the following equation:

RMSE =

n

E ( y . - y )2

= 1

n

Fig.3. Regression Graph Based on Artificial Neural Network Method.

This index first calculates the individual differences observed with predicted values by the model and the power of the heart. The square root of the mean difference and the number of offers is the same RMSE.[21] This index is a measure of accuracy. If the model is generally consistent with the data better, the amount is less. So, the results of both methods have shown with the criteria RMSE. Artificial neural network regression graph in Fig3 is shown. In this way, the distribution of data compared to the situation in each of the stages of learning, Validate and testing are visible. As the figure suggests, revolves around the appropriate amounts in each well have been.

Fig.3. Regression Graph Based on Artificial Neural Network Method.

In Fig4, the estimation of the reliability charts, graphs and diagrams, histograms of error MLP artificial neural network approach is shown. The values of RMSE, the mean error and standard deviation are shown. STD is one of the indicators that show the distribution of data on average how much the average value away.[22] If the standard deviation of the data set is close to zero, it means that the data are close to the average and dispersion are small, while large standard deviation indicates a significant distribution data. Standard deviation equal to the square root of the variance.[23]

Fig.4. Plots the Error Calculation Method Based on Artificial Neural Network

As you can see, after testing the MLP neural network method, the root mean square errors and the standard deviation equal to 0.024262 0.024198 respectively.

In Fig5, the estimation of the reliability charts, graphs and diagrams error histograms of adaptive fuzzy neural network approach is shown.

Fig.5. Plots the Error Calculation Method Is Based on Adaptive Fuzzy Neural Network.

As you can see, after testing the adaptive fuzzy neural network, the root mean square errors and the standard deviation equal to 0.021874 0.021876 respectively.

According to Fig4 and Fig5, it is clear that adaptive fuzzy neural network, performance is better than the MLP neural network. These diagrams show that the output of adaptive fuzzy neural network based approach, more consistent with the actual output of each of the samples.

V. Conclusion

In this paper, we presented the methods based on MLP artificial neural network and adaptive fuzzy neural network for assessing the reliability of aspect oriented software. Then both methods were tested using the same data. in both methods, part of data where used for training and the other part of the data for testing the network. Finally, the RMSE of MLP neural network and adaptive fuzzy neural network approach is 0.024262 and 0.021874 respectively. According to the results, the method based on adaptive fuzzy neural network has better performance and more accurate.

Acknowledgment

This work received support from the Department of Computer Engineering, Islamic Azad University, sari Branch.

Список литературы Comparison of ANFIS with MLP ANN in Measuring the Reliability based on Aspect Oriented Software

  • Seyster, J., et al. Aspect-oriented instrumentation with GCC. in Runtime Verification. 2010. Springer.
  • Singh, P.K. and O.P. Sangwan, A Framework for Assessing the Software Reusability using Fuzzy Logic Approach for Aspect Oriented Software. 2015.
  • Singh, P.K., et al., An Assessment of Software Testability using Fuzzy Logic Technique for Aspect-Oriented Software. International Journal of Information Technology and Computer Science (IJITCS), 2015. 7(3): p. 18.
  • Cleveland, J., J. Loyall, and J. Hanna. An Aspect-Oriented Approach to Assessing Fault Tolerance. in Military Communications Conference (MILCOM), 2014 IEEE. 2014. IEEE.
  • Qian, Z., H. Yu, and G. Fan, Modeling of Adaptive Cyber Physical Systems using Aspect-oriented Approach. Appl. Math, 2015. 9(4): p. 1981-1992.
  • Cardoso, J.M., et al. LARA: an aspect-oriented programming language for embedded systems. in Proceedings of the 11th annual international conference on Aspect-oriented Software Development. 2012. ACM.
  • Mehner-Heindl, K., M. Monga, and G. Taentzer, Analysis of aspect-oriented models using graph transformation systems, in Aspect-Oriented Requirements Engineering. 2013, Springer. p. 243-270.
  • Molderez, T. and D. Janssens, Modular Reasoning in Aspect-Oriented Languages from a Substitution Perspective, in Transactions on Aspect-Oriented Software Development XII. 2015, Springer. p. 3-59.
  • Mordal, K., et al., Software quality metrics aggregation in industry. Journal of Software: Evolution and Process, 2013. 25(10): p. 1117-1135.
  • Ampatzoglou, A., G. Frantzeskou, and I. Stamelos, A methodology to assess the impact of design patterns on software quality. Information and Software Technology, 2012. 54(4): p. 331-346.
  • Chiu, K.-C., Y.-S. Huang, and T.-Z. Lee, A study of software reliability growth from the perspective of learning effects. Reliability Engineering & System Safety, 2008. 93(10): p. 1410-1421.
  • Pham, T.-T., X. Défago, and Q.-T. Huynh, Reliability prediction for component-based software systems: Dealing with concurrent and propagating errors. Science of Computer Programming, 2015. 97: p. 426-457.
  • Kiran, N.R. and V. Ravi, Software reliability prediction by soft computing techniques. Journal of Systems and Software, 2008. 81(4): p. 576-583.
  • Zheng, Z. and M.R. Lyu. Collaborative reliability prediction of service-oriented systems. in Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering-Volume 1. 2010. ACM.
  • Figueiredo, E., et al, Assessing aspect-oriented artifacts: Towards a tool-supported quantitative method. 2005.
  • Sant'Anna, C., et al. On the reuse and maintenance of aspect-oriented software: An assessment framework. in Proceedings of Brazilian symposium on software engineering. 2003.
  • Reena Dadhich, B.M., Measuring Reliability of an Aspect Oriented Software Using Fuzzy Logic Approach. International Journal of Engineering and Advanced Technology (IJEAT), June 2012.
  • Gupta, N., Artificial neural network. Network and Complex Systems, 2013. 3(1): p. 24-28.
  • Yetilmezsoy, K. and S. Demirel, Artificial neural network (ANN) approach for modeling of Pb (II) adsorption from aqueous solution by Antep pistachio (Pistacia Vera L.) shells. Journal of Hazardous Materials, 2008. 153(3): p. 1288-1300.
  • Melin, P., et al., A new approach for time series prediction using ensembles of ANFIS models. Expert Systems with Applications, 2012. 39(3): p. 3494-3506.
  • Chai, T. and R. Draxler, Root mean square error (RMSE) or mean absolute error (MAE)? Geoscientific Model Development Discussions, 2014. 7: p. 1525-1534.
  • Oseni, O.F., et al., Comparative Analysis of Received Signal Strength Prediction Models for Radio Network Planning of GSM 900 MHz in Ilorin, Nigeria. 2014.
  • Ronquist, F., et al., MrBayes 3.2: efficient Bayesian phylogenetic inference and model choice across a large model space. Systematic biology, 2012. 61(3): p. 539-542.
Еще
Статья научная