# Fuzzy Inference Systems Tuning with Optimization Algorithms for Solar Flares Classification/Sintonizacion de Sistemas de Inferencia Difusa Mediante Algoritmos de Optimizacion para Clasificacion de Fulguraciones Solares.

1. IntroductionThe Sun is the main responsible for the varying conditions of the interplanetary medium, particularly, in the space surrounding our planet, in what is commonly known as space weather. Multiple solar phenomena show up at many spatial and temporal scales, and are studied through observations, theoretical models and simulations. Among the most energetic phenomena in the solar system are the solar flares. These are transient events associated to the activity of the star in which certain regions of the solar atmosphere can emit a vast amount of energy up to [10.sup.25] Joules.

These zones in the solar atmosphere are associated with the presence of dark spots in the solar surface (photosphere) called sunspots. Sunspots are the manifestation of intense magnetic fields emerging from the solar interior and crossing the photosphere, inhibiting the normal convection of solar plasma and thus reducing the radiation emission.

For this reason the temperature values in sunspots drop approximately 2000 K compared to the temperature in the non-active photosphere, known as quiet sun. Sunspots are proxies of solar activity and their number on the solar disk was used to discover the solar cycle in 1843 [1] and are the main constituents of the so-called solar active regions.

Solar activity has become a very important research topic due to its connection with space weather and the possible impact of energetic phenomena on the normal development of the current technological society, based on satellites, which could be affected by intense solar emissions [2].

Depending on the amount of energy released (flux in W [m.sup.-2]) during the intensity peak of flaring events, solar flares are classified in A, B, C, M or X, as listed in Table 1. The effect of the different types of flares is also different depending on the flare type [3].

The main goal of this work is to choose the best Fuzzy Inference System (FIS), from among several FIS tuning methods used, through a validation index Starting from the solar flares characteristics and quantity of them in the solar disk (as inputs of the FIS), each FIS allows to obtain a classification of the solar flares (as output of the FIS).

The parameters of each system were tuned using five methods: Manual Tuning, Adaptive Neuro-Fuzzy Inference System (ANFIS) with random initialization [4], Compact Genetic Algorithm (CGA) [5], Differential Evolution (DE) [6] and Stochastic Hill Climbing (SHC) with random initialization [7].

The flow chart that describes the problem is shown in Figure 1, in which the "Problem in Nature" is the unknown way that makes the input values to be related with the output values, observed from Sun behavior. This behavior should be emulated by the FIS. The validation index is a function of the expected output, generated by the Problem in Nature, and from the output obtained by the FIS.

The sunspot features and their associated flares were obtained by generating a database according to [2], through a cross search in the sunspots and solar flares catalogs from the National Geophysical Data Center (NGDC). The parameters for the cross search allowed to obtain a total of 1391 individual values, using a time span of 6 hours, in the records from 1999 to 2002, to cover the activity peak of the Solar Cycle 23.

The quantities for each class with these parameters are recorded in Table 2.

Note that the generated data presents an imbalance: the number of type C (common) flares are big compared to the M (moderate) flares, data class. Similarly, the M class has more data than X (extreme) flares, as expected from displaying activity of the Sun during its cycle of approximately 11 years.

Aiming to abbreviate, the inputs of the database were numerated as follows:

1. Modified Zurich Class

2. Penumbra: Largest Spot

3. Sunspot Distribution

4. Normalized number of Sunspots

Creating scatter plots from pairs of inputs like in Figure 2, shows that it is not possible to plot a linear function that separates the classes.

Also, it is quite clear from the Figure 2 that class M seems to be "absorbed" by class C. Furthermore, class X, having the lower amount of data, is almost not recognizable from class M. Thereby, the attention is focused on classify the class X solar flares.

2. Methodological Considerations

2.1 Fuzzy Inference System

A FIS consists of five components: a base of fuzzy rules, a data base that defines the membership functions of the fuzzy sets used in fuzzy rules, the fuzzy inference engine, the fuzzifier and defuzzifier [4].

The FIS can be represented with a fuzzy basis function expansion in which an input vector x is related with a punctual y output, such that y=f(x). Thus, it is possible to represent in a compact manner the inference process of a FIS and the resulting function is a universal estimator [5]

[mathematical expression not reproducible] (1)

The FIS represented by (1) has the following characteristics:

* Fuzzification: Singleton

* Membership Functions: Gaussian.

* Implication: Product

* Defuzzification: Average of centers.

The l index refers to the l-th rule, being M the total number of rules. By its part, the i index refers to the i-th input and N are the total of them. The [mathematical expression not reproducible] membership function (MF) is then unique for each input in every rule. Similarly, the center of the consequent set [y.sub.l] is unique in every rule [5].

The MFs [mathematical expression not reproducible] are of Gaussian type, and can be written as (2).

[mathematical expression not reproducible] (2)

Every MF in (2) has their c mean value and a [sigma] standard deviation.

The total quantity of parameters that defines a FIS in the form (1) are given by (3), having in mind that, for each input and every rule there are two parameters due to the antecedent set (c and a), and an additional parameter being the center of the consequent.

[C.sub.Tp] = (2 * M * N) + M (3)

2.2 Manual Tuning Method

Starting from the authors' perceptions about the data and the possible relations that may be present in it, it is possible to create an initial FIS with their fuzzy sets for each of the inputs, their punctual output values, and the rule base allowing to link the fuzzy sets of the inputs to the punctual outputs.

The purpose of this method is to deepen into the problem recognizing possible relationships among features as well as revealing preliminary classification rules.

Although a valid solution can be found, the most important result of this method is the knowledge derived from approaching the problem.

Initially the software used was GNU's Octave, loading the packages "io" and "fuzzy-logic-toolkit". The first allows that Octave reads the generated CSV dataset, and the second to design, test and verify the manual tuned FIS.

Despite the fact that in the following algorithms the software used was MATLAB, the final FIS created with Octave was migrated to MATLAB through the Fuzzy Logic Designer, a graphical tool part of the Fuzzy Logic Toolbox; with the mere purpose to use the same software tool at the final validation stage.

2.3. Adaptive Neuro-Fuzzy Inference System (ANFIS) with random initialization

ANFIS, a FIS based on adaptive networks, is a method based on a supervised learning model that, given a set of input/output pairs (x,y), related by an unknown function f, there is an apprentice and a supervisor of the learning process from f, with the use of a validation metric to evaluate the results of the apprentice and able to correct it. The algorithm uses a hybrid model that combines least squares method and the decreasing gradient or back-propagation method.

In this case the apprentice is a fuzzy system that can be written as the expansion of fuzzy based functions for a Sugeno type system shown in (1). The parameters to be determined correspond to [y.sub.l], [x.sup.i.sub.l] and [[sigma].sup.i.sub.l] [4]. The validation metrics represents the root mean square error (RMSE) between the output value for the fuzzy apprentice system and the output value y of the data pairs [5]. The process aims at minimizing the error for the input values in a set comprising part of the complete available data, which is generally about 70% of them. Searching for an apprentice generalization, it is validated with the remaining 30% of the database.

Additional to the individual (apprentice system with its parameters and rules) to be adjusted, ANFIS requires initial conditions such as the number of rules, number of inputs and the rate of initial learning. For the case mentioned above, the inputs stay constant and the other two parameters are tuned up. Because ANFIS fits the parameters of an existing individual, thus implying a local search, it executes several times and, prior to this, it generates the individual with initialized parameters in random values, aiming at (depending on randomization) perform a global search in a whole universe of possible solutions.

Algorithm 1 Pseudo code for the MATLAB implementation using the ANFIS function. 1: Training = 70% of Base 2: Validation = 30% of Base 3: Vector of rules to be tested [R.sub.T] 4: Vector of Initial Learning Rates to be tested T[A.sub.T] 5: n = number of tests 6: Ep = number of epochs 7: for i [member of] T[A.sub.T] do 8: for j [member of] [R.sub.T] do 9: for l = 1:n do 10: Generate random FIS with 4 inputs and R = j 11: Evaluate ANFIS function with TA = i, Ep, Training, Validation and random generated FIS 12: Save the FIS with lowest validation error, the training error and the output vector validation k. 13: end for 14: end for 15: end for 16: Lowest validation error = MinV, associated FIS = CheckFis

2.4 Compact Genetic Algorithm (CGA)

This belongs to a series of algorithms known as Probabilistic Model Building Genetic Algorithm (PMBGA) [8], which are characterized by discriminating the significant contribution attributes in the construction of an optimal individual. The validation indexes for determining the performance of an individual is the "Fitness" function, which in turn depends on the problem to be solved. The implementation considers an individual with the best performance when the value of this function is minimized.

Because in this work we are dealing with a classification problem, besides using the RMSE, we decided to also consider the use of classification error and correlation. With that in mind, we can assemble an initial brief of a fitness function (4).

F = ([E.sub.CC] + [E.sub.CM] + [E.sub.CX]).sup.2] X [E.sub.Rmse] x [(1 - [rho]).sup.2] (4)

And

[E.sub.Cx] = [h.sub.x]/[c.sub.x] [w.sub.x] (5)

Where:

[E.sub.Cx] : Classification error for the class x

[h.sub.x] : Number of bad classified data for class x

[C.sub.x] : Total number of data for class x

[w.sub.x] : Weight assigned to the classification error of class x

[E.sub.Rmse] : Root Mean Square Error

[rho] : Correlation

Every [E.sub.Cx] classification error has its respective [w.sub.x] weight. As the database is inherently imbalanced, every weight [w.sub.x] was assigned to be greater than the proportion of data belonging to class C, to the quantity of data from the other classes:

[W.sub.M] > 1194/179 ~ 6.7 [right arrow] [W.sub.M] = 10 1194

[W.sub.X] > 1194/18 ~ 66 [right arrow] [w.sub.x] = 100

Therefore, the weight associated to the class X of solar flares, for which the number of data is lower, has the highest value. By doing this, a badly classified data that belongs to this class produces a more significant increase in the first factor of (4) that one not incorrectly classified in class C, in the final fitness function factors (6)

[E.sub.CC] = [h.sub.c]/[c.sub.c], [E.sub.CM] = [h.sub.M]/[C.sub.M] x 10, [E.sub.CX] = [h.sub.x]/[c.sub.x] x 100 (6)

To explain the [E.sub.Rmse] Root Mean Square Error in (4), suppose that the problem is not a classification problem, but a prediction problem instead. For a conceptual brief, the [E.sub.Rmse] gives an idea on how the individual are not "following" the expected sequence from the training data [5].

Then, a bad predictor will have a greater [E.sub.Rmse] value, than other that gets closer to the output values of the database, and considering that the data also depends on some time unit. The root mean square error is mathematically described as:

RMSE = [square root of 1/n [[summation].sup.n.sub.i=1] [e.sup.2.sub.i]] (7)

e = ([v.sub.0] - [v.sub.e]) (8)

Where

* [v.sub.0] is the value obtained

* [v.sub.e] is the expected value

The number of rules was taken from the obtained result with the ANFIS algorithm, R=8 rules. For developing the algorithm, the parameter for adjusting the converging speed of the probability vector n is tuned. Since the optimal value is unknown, it is randomly designated based on [5], and implemented in MATLAB. The process of randomly varying n and developing the algorithm, is repeated several times (w = number of experiments). Finally, among the best solutions the value generating the lowest number in (4) with (6) is found.

Algorithm 2 Pseudo code for CGA. Based on [5]. 1: Training = 70% of Base 2: Validation = 30% of Base 3: w = number of tests 4: [N.sub.p] = number of parameters 5: [b.sub.p] = number of bits per parameter 6: a = [N.sub.p] * [b.sub.p] 7: n = probability adjustment parameter 8: p = probability vector 9: [N.sub.i] = number of individuals 10: [I.sub.alea] = vector of [N.sub.i] individuals 11: for i = 1 to w do 12: n = Random value 13: for l = 1: [N.sub.i] do 14: [I.sub.alea](l) = Random FIS 15: Evaluate and order individuals so that the best is in position [I.sub.alea] (1) 16: end for 17: for j= 2: [N.sub.i] do 18: Winner, Loser = competition ([I.sub.alea](1), [I.sub.alea](j)) 19: for g = 1: a do 20: if Winner(g) ~ Loser(g) then 21: if Winner(g) = 1 then p(g) = p(g) + 1/n 22: else p(g) = p(g) - 1/n 23: end if 24: end if 25: end for 26: end for 27: for g = 1: a do 28: if p(g) > 0 and p(i) < 1 then 29: go to step 13 30: end if 31: end for 32: end for

The parameters describing every FIS (individual) are then converted from real to binary data, due to the method adjusting every bit.

2.5 Differential Evolution

This is an algorithm based on the evolution of a population of vectors (individuals) with real parameters, which represent solutions in the searching space.

The algorithm of differential evolution is basically composed by 4 steps, as follows:

* Initialization: Every vector (individual) of the population is randomly initialized.

* Mutation: A mutation is applied in order to create a testing population of individual.

* Crossing: Every vector is used as a mutant vector.

* Selection: The testing vector previously obtained is used to do the crossing procedure, which compete with the target vector by the evaluation of the Fitness function [6].

Algorithm 3 Pseudo code for DE. Source: Based on [6]. 1:Training = 70% of Base 2: Validation = 30% of Base 3: [f.sub.m] = mutation constant 4: [c.sub.r] = crossover constant 5: [N.sub.i] = number of individuals 6: [N.sub.g] = number of generations 7: w = number of tests 8: [V.sub.i] = individuals vector 9: [N.sub.p] = number of parameters 10: [V.sub.o] = target vector 11: [V.sub.m] = mutation vector 12: [V.sub.c] = crossover vector 13: [b.sub.i] = vector of the best individual 14: for i = Ito w do 15: for 1 = 1: [N.sub.i] do 16: [V.sub.i](1) = Random FIS 17: Evaluate individuals with the fitness function (4) 18: end for 19: for j = 1: [N.sub.g] do 20: for g = 1: [N.sub.i] do 21: [V.sub.o] = [V.sub.i](g) 22: Sort the individuals from best to worst according to (4) 23: [b.sub.i] = Vi(1) 24: [V.sub.m] = mutation([b.sub.i], [f.sub.m]) 25: for k = 1: [N.sub.p] do 26: [V.sub.c] = cross([V.sub.o], [V.sub.m], [c.sub.r]) 27: end for 28: if [V.sub.c] is better than [V.sub.o] then 29: replace [V.sub.o] with [V.sub.c] 30: else keep [V.sub.o] 31: end if 32: end for 33: end for 34: end for

2.6 Stochastic Hill Climbing (SHC) with random initialization.

The Stochastic Hill Climbing, consist on taking a FIS (1) and keep evaluating the solutions in the vicinity of it [7] [9] in a maximum number of iterations. The parameters of the input FIS are randomly initialized.

Algorithm 4 Pseudo code for Stochastic Hill Climbing [10]. 1: Require: [I.sub.max], Dimensions 2: Ensure: Current 3: Current [left arrow] RandomSolution(Dimensions) 4: for [iter.sub.i] [member of] [I.sub.max] do 5: Candidate [left arrow] RandomNeighbor(Current) 6: if Cost(Candidate) [less than or equal to] Cost(Current) then 7: Current [left arrow] Candidate 14: end if 15: end for

Here:

[l.sub.max] : Maximum number of iterations

Sol : Some particular solution (like Current or Candidate)

Cost(Sol) : Fitness function, obeys (2)

RandomNeighbor(Current) in Algorithm 3 also requires the center and deviation variations, that refers to the allowed absolute value variations of the related parameters when searching for a neighbor. As example, if some of the parameters has the value 0.6, and the specified variation of this parameter is 0.1, then the neighbor will have some uniformly distributed random value between 0.5 and 0.7.

Every separate experiment consist on a single run of a program that implements the Algorithm 4, to obtain a final single individual, but n individuals can be obtained by running n experiments. Afterwards, the individuals can be evaluated with (4) and the validation base, in order to choose the best individual of the n individuals.

2.7 Confusion Matrixes

The classifier output consists on C values, corresponding to the [[omega].sub.1], [[omega].sub.2], ..., [[omega].sub.c] classes. Due to the erroneous classifications occasionally occurring, the multiclass sorter is evaluated through a (C x C)--dimensional confusion rate matrix showing the respective classification errors between classes (off diagonal) and correct classifications (diagonal elements) [11].

Table 3 shows an example of a confusion matrix for a total of C = 3 classes. The [C.sub.[omega]i,j] elements correspond to the data quantity from the [[omega].sub.i] class that was classified as elements of the [[omega].sub.j] class.

3. Parameters for the Algorithms

Excluding the manual tuned FIS, and in order to allow the replicability of similar results, we expose briefly the parameters used for the algorithms. For the CGA, DE and SHC algorithms, the number of rules was taken from the best ANFIS result, as shown in Table 3.

3.1 Manual Tuning

As the parameters for this method obey to human perceptions of the problem, only the main features are shown in Table 4, for this reason this method was applied only as an exercise of comparison between the human performance and machine performance, in building a FIS that solves the classification problem. These values are not normative by the same fact that the parameters were based from human perceptions of the authors, are then allowed to test other values, but the manual tuning method takes too much time to get a single FIS.

Tables 5-8 show the initialization parameters for each implementation.

4. Results

In this section we show first the best results for every method and their analysis. This analysis includes a comparison of their performance.

4.1 Confusion Matrices

The best FIS obtained by each algorithm was evaluated using the whole database. With the evaluated output values and the expected output values a confusion matrix can be filled as shown in Table 3 to obtain the matrices shown in Tables 9, 11, 12, 13 and 14.

In the case of ANFIS, the individual with the lowest validation error was selected for each of the different combinations of number of rules and initial learning rate (LR) as shown in Table 10.

From Table 10 the best individual are chosen to make the confusion matrix shown in Table 11. In order to compare the results with the same metric, this individual was evaluated with (4) and its results are part of Table 15. The chosen individual was obtained with the following parameters:

* Rules = 8

* Learning Rate (LR) = 1

The best FIS obtained by the CGA occurred on experiment w = 175 and for a value n = 41 of the probability adjustment parameter.

4.2. Final Result by the validation Metric

Table 15 lists the more relevant metrics for the individuals in every scheme. The final individual was the one with the lowest value of the Fitness function (4), using the validation database.

4.3 Statistical Analysis

To perform a statistical analysis of the algorithms implemented, the Welch's t-test was used for two-samples, assuming unequal variances to confirm or reject the null hypothesis whether both methods provide similar analytical results or not [12].

Comparing the results of the test between DE with the CGA and ANFIS algorithms as shown in Tables 16 and 17 respectively, it is possible to reject the null hypothesis and conclude that the methods provide different analytical results with a 99% confidence level.

On the other hand, from Table 18 it can be evidenced that, although the best solution was achieved with the DE algorithm, the average and the variance of the fitness of the individuals obtained with SHC are better than those obtained with DE. This result makes sense in the light of the non-free lunch theorems [13], which state that optimization methods perform similarly in average over the entire set of possible optimization problems.

The result of the Welch's t-test shows that the null hypothesis should not be rejected because in the case of two tails the confidence level to reject is less than 20% and in the case of one tail it is less than 60%. Therefore, both methods provide the same average results and the observed differences are purely due to random errors.

5. Conclusions

In this section we summarize the obtained results and discuss on the different aspects of their performance.

Due to the imbalance in the database, systems and algorithms used in the present work have limited options to learn from class M, and much lower ones from class X.

Additionally for ANFIS, because of the fact mentioned before, the validation metrics for RMSE is not adequate for solving the problem since it ignores the classification error, from which it is evidenced that the best individual obtained in this method is an optimal class C classifier, but not so for the rest of classes.

Despite the Compact Genetic Algorithm has a simple description with little memory, it sufficiently restricts the space of solutions since it works with parameters represented in fixed point, having a more reduced universe as compared to the representation in floating points.

From the items listed above, and from Table 4, it cannot be discarded different problems in which either class C are distinguished from being or not solar flares (modifying the generation parameters of the database), or type M or X solar flares are distinguished. As a future work, the problem can be addressed by using neural network algorithms, e.g. Cascade-Correlation Neural Networks (CCNNs), Support Vector Machines (SVMs) and Radial Basis Function Networks (RBFNs) [2] instead of FISs, in order to determine if it is feasible to obtain a best classifier and therefore extend the problem of estimating the occurrence of solar flares.

DOI: http://dx.doi.org/10.18180/tecciencia.2017.23.5

References

[1] Heinrich Schwabe and Hofrath Schwabe. "Sonnenbeobachtungen im Jahre 1843. (German) [Observation of the Sun in the year 1843]". In: Astronomische Nachrichten 21 (1843), pp. 233-236. DOI: 10.1002/asna.18440211505.

[2] R. Qahwaji and Colak. "Automatic Short-Term Solar Flare Prediction Using Machine Learning and Sunspot Associations. [On the electrodynamics of moving bodies]". In: T. Sol Phys 241 (2005), pp. 195-211. DOI: 10.1007/s11207-006-0272-5.

[3] T. Bai and P. A. Sturrock. "Classification of solar flares". In: Annual review of astronomy and astrophysics 27 (1989), pp. 421-467. DOI: 10.1146/annurev.aa.27.090189.002225.

[4] Jyh-Shing Roger Jang. "ANFIS: adaptive-network-based fuzzy inference system". In: IEEE Transactions on Systems, Man, and Cybernetics 23 (1993), pp. 665-685. DOI: 10.1109/21.256541.

[5] Miguel Melgarejo, Alvaro Prieto, and Carlos Ruiz. "Modelado de sistemas difusos basado en el algoritmo genetico compacto". (Spanish) [Modeling of fuzzy systems based on the compact genetic algorithm]. In: Proceedings of ASAI 2011, Argentine Symposium on Artificial Intelligence. Universidad de Palermo, Buenos Aires, Argentina (2011), pp. 180-191.

[6] Andrea Villate, David Rincon, and Miguel Melgarejo. "Evolucion diferencial aplicada a la sintonizacion de clasificadores difusos para el reconocimiento del lenguaje de senas". (Spanish) [Applying Differential Evolution to Tune Fuzzy Classifiers Intended for Sign-Language recognition] In: Ingenieria y Universidad: Engineering for Development 16 (2012), pp. 397-413.

[7] Stephan Rudlof and Mario Koppen. "Stochastic Hill Climbing with Learning by Vectors of Normal Distributions". In: Proceedings for Nagoya 1996, Online Workshop on Soft Computing (WSC) no. 1 (1996), pp. 60-70.

[8] Kumara Sastry and David E. Goldberg. "Probabilistic Model Building and Competent Genetic Programming". In: Genetic Programming Series vol 6. (2003), pp. 205-220. DOI: 10.1007/9781-4419-8983-3_13.

[9] Stuart J. Russell and Peter Norvig. "Artificial Intelligence: A modern approach". Pearson Education, 2003. ISBN: 01379039523.

[10] Jason Brownlee. "Clever Algorithms: Nature-Inspired Programming Recipes". Jason Brownlee, 2011. ISBN: 9781446785065.

[11] Thomas C.W. Landgrebe, and Robert P.W. Duin. "Efficient Multiclass ROC Approximation by Decomposition via Confusion Matrix Perturbation Analysis" In: IEEE Transactions on Pattern Analysis and Machine Intelligence 30 (2008), pp. 810-822. DOI: 10.1109/TPAMI.2007.70740.

[12] Fagerland M.W. and Sandvik L. "Performance of five two-sample location tests for skewed distributions with unequal variances". In: Contemp Clin Trials, vol. 30, no. 5 (2009), pp. 490-496. DOI: 10.1016/j.cct.2009.06.007.

[13] D. H. Wolpert and W. G. Macready, "No free lunch theorems for optimization". In IEEE Transactions on Evolutionary Computation, vol. 1, no. 1 (Apr 1997), pp. 67-82. DOI: 10.1109/4235.585893

Liz Angelica Ramos (1) *, Alex Francisco Bustos Pinzon (1), Miguel A. Melgarejo R. (1), Santiago Vargas Dominguez (2)

(1) Universidad Distrital Francisco Jose de Caldas, Bogota, Colombia

(2) Universidad Nacional de Colombia, Bogota, Colombia

Received: 7 May 2017

Accepted: 6 Jun 2017

Available Online: 20 Jun 2017

* Corresponding Author.

E-mail: laramosm@correo.udistrital.edu.co

Caption: Figure 1 Flow chart of the Global description for the Artificial Intelligence problem.

Caption: Figure 2 Scatter plots of possible combinations from pairs of the inputs.

Table 1 Classification of Solar Flares. Source: Based on [3]. Flare class Peak Flux Range / W [m.sup.-2] A < [10.sup.-7] B [10.sup.-7] to [10.sup.-6] C [10.sup.-6] to [10.sup.-5] M [10.sup.-5] to [10.sup.-4] X > [10.sup.-4] Table 2 Data used by class. Flare Class Quantity C 1194 M 179 X 18 Table 3 Confusion Matrix for a three class sorting problem. Source: Based on [11]. Predicted Class [[omega].sub.1] [[omega].sub.2] Actual [[omega].sub.1] [[omega].sub.1,1] [[omega].sub.1,2] Class [[omega].sub.2] [[omega].sub.2,1] [[omega].sub.2,2] [[omega].sub.3] [[omega].sub.3,1] [[omega].sub.3,2] [[omega].sub.3] Actual [[omega].sub.1] [[omega].sub.1,3] Class [[omega].sub.2] [[omega].sub.2,3] [[omega].sub.3] [[omega].sub.3,3] Table 4 Classification of Solar Flares. Parameter Value MFs for Input 1 7 MFs for Input 2 6 MFs for Input 3 4 MFs for Input 4 3 MFs for the Output 3 Rules 8 Table 5 Initialization Parameters for the implementation of ANFIS with random initialization. Parameter Value Epochs 500 Number of experiments 200 Tested learning rates 0.01, 0.1, 1 (TA) Tested number of rules 8, 14, 16, 32 Performance Function Root Mean Square Error (7) Table 6 Initialization Parameters for the Compact Genetic Algorithm (CGA) implementation. Parameter Value Number of rules 8 Number of parameters to 72 optimize Number of bits per parameter 8 Binary coding method Sign-magnitude Population size 30 Number of experiments 500 Maximum number of generations 10000 Convergence of probability Stop criterion vector and error repetition Performance Function Fitness function (4) Table 7 Initialization Parameters for the Differential Evolution (DE) Algorithm implementation. Parameter Value Number of rules 8 Number of parameters to 72 optimize Population size 30 Number of generations 50 Mutation constant 0.5 Crossover constant 0.9 Number of experiments 500 Variant DE/best/1/bin Number of generations Stop criterion and number of experiments Performance Function Fitness function (4) Table 8 Parameters for the implementation of the Stochastic Hill Climbing (SHC) with random initialization algorithm. Parameter Value Number of rules 8 Number of parameters to 72 optimize Number of experiments 10 Number of iterations by soon 8000 experiment Center variation 0.1 Deviation variation 0.5 Stop criterion Number of iterations Performance Function Fitness function (4) Table 9 Confusion Matrix for the manual tuned FIS. Predicted Class C M X Actual C 0 815 198 Class M 0 100 44 X 0 12 6 Table 10 List of the lowest validation error (RMSE) for every n test. Number of Rules LR 8 14 16 32 0,01 0.3681 0.3688 0.3708 0.3747 0,1 0.3667 0.3682 0.3705 0.3735 1 0.3658 0.3661 0.3667 0.3687 Table 11 Confusion Matrix for the best ANFIS individual chosen. Predicted Class C M X Actual C 1133 0 0 Class M 155 0 0 X 15 0 0 Table 12 Confusion Matrix for the best individual obtained by CGA. Predicted Class C M X Actual C 1194 0 0 Class M 179 0 0 X 18 0 0 Table 13 Confusion Matrix for the best individual obtained by the DE Algorithm. Predicted Class C M X Actual C 0 552 552 Class M 0 57 113 X 0 0 18 Table 14. Confusion Matrix for the best individual obtained by the SHC Algorithm. Predicted Class C M X Actual C 0 0 1194 class M 0 0 179 X 0 0 18 Table 15. Validation Errors for the best functions obtained. Method Fitness [E.sub.CC] [E.sub.CM] [E.sub.CX] Manual 13282 1 3,7736 61,111 ANFIS 4487.2 0.0446 10 100 CGA 3895.1 0 10 100 DE 33.2454 1 4.9057 0 SHC 96.712 1 10 0 Table 16 Results for the Welch's t-test between DE and CGA. DE CGA Mean 2074.216694 15808.9081 Variance 30477597.49 45636475.15 Observations 500 500 Hypothetical difference of means 0 Degrees of freedom 960 Statistic t -35.20233147 P (T [less than or equal to] t) one tail 2.7328E-175 Critical value of t (one tail) 1.646442429 P (T [less than or equal to] t) two tails 5.4656E-175 Critical value of t (two tails) 1.962438166 Table 17 Results for the Welch's t-test between DE and ANFIS with Random Initialization. DE Mean 2074.216694 Variance 30477597.49 Observations 500 Hypothetical difference 0 of means Degrees of freedom 500 Statistic t -14.82880602 P (T [less than or equal to] t) one tail 8.5552E-42 Critical value of t (one 1.647906854 tail) P (T [less than or equal to] t) two tails 1.71104E-41 Critical value of t (two 1.964719837 tails) ANFIS with Random Initialization Mean 5737.628906 Variance 184874.1979 Observations 2400 Hypothetical difference of means Degrees of freedom Statistic t P (T [less than or equal to] t) one tail Critical value of t (one tail) P (T [less than or equal to] t) two tails Critical value of t (two tails) Table 18. Results for the Welch's t-test between DE and SHC. DE SHC Mean 2074.216694 2001.247664 Variance 30477597.49 19996528.91 Observations 500 500 Hypothetical difference 0 of means Degrees of freedom 957 Statistic t 0.229662015 P (T [less than or equal to] t) one tail 0.409201745 Critical value of t (one 1.646447414 tail) P (T [less than or equal to] t) two tails 0.818403489 Critical value of t (two 1.962445932 tails)

Printer friendly Cite/link Email Feedback | |

Title Annotation: | texto en ingles |
---|---|

Author: | Ramos, Liz Angelica; Pinzon, Alex Francisco Bustos; Melgarejo R., Miguel A.; Dominguez, Santiago Var |

Publication: | Tecciencia |

Date: | Dec 1, 2017 |

Words: | 5475 |

Previous Article: | Comparative Analysis between a Discrete Spiral Chamber and a Continuous Spiral Chamber via ANSYS/Analisis Comparativo entre Una Camara en Espiral... |

Next Article: | Acquisition of the Minor Planet Center code for the Astronomical Observatory of the Technological University of Pereira (W63)/Acquisition of the... |

Topics: |