Abstract
Zadeh’s extension principle is one of the elementary tools in fuzzy set theory, and among other things, it provides a natural extension of a real-valued continuous self-map to a self-map having fuzzy sets as its arguments. The purpose of this paper is to introduce a new algorithm that can be used for simulations of fuzzy dynamical systems induced by interval maps. The core of the proposed algorithm is based on calculations including piecewise linear maps, and consequently, an implementation of an optimization algorithm (in our case, particle swarm optimization) was prepared to obtain necessary piecewise linear approximations. For all parts of this algorithm, we provide detailed testing and numerous examples.
1. Introduction
Zadeh’s extension principle (known as Zadeh’s extension or an extension principle) is one of the most elementary tools in fuzzy theory. Roughly speaking, this principle says that a map induces another map , where (resp. ) is the family of fuzzy sets defined on X (resp. Y). This principle is naturally used in many areas of fuzzy mathematics such as fuzzy arithmetics, approximation reasoning, simulations, and even recently with the notion of interactivity incorporated [1,2]. To point out one particular application, we need to introduce the so-called discrete dynamical system. It is defined as a pair , where X is a (usually topological) space and is a continuous self-map. Then, Zadeh’s extension considered over a given discrete dynamical system induces a fuzzy (discrete) dynamical system (for details, we refer to the definitions in Section 1.3), which naturally incorporates and deals with the uncertainty of input states of x. There are theoretical results (e.g., [3] or recently [4] and the references therein) studying the mutual properties of the discrete dynamical system given by Zadeh’s extension principle.
1.1. Motivation of This Study
However, in practice and in full generality, the computation and approximation of Zadeh’s extension principle leads to a rather difficult task. The main reason is the difficult computation of the inverse of the map f under consideration. Only in a few specific cases (we refer to the text below), one can find an easier solution. Our approach provides a solution that is more general in several aspects.
1.2. State-of-the-Art
The problem of the approximation of Zadeh’s extension of is well known, and many other authors have contributed to this issue, mostly under very specific assumptions and with no relation to dynamical system simulations. For example, several methods were elaborated for one-dimensional (interval) maps and fuzzy numbers only—e.g., in [5,6], a new method approximating , , based on the decomposition and multilinearization of a function f, was introduced. However, for one-dimensional systems and the extension to higher dimensions, this is computationally demanding [7]. Further, in [8], the authors proposed another method using an optimization over the -cuts of the fuzzy set, which should also ensure the convexity of the solution. Again, the computation was restricted to fuzzy numbers only. Moreover, in the latter papers, the trajectories of fuzzy dynamical systems were not considered and the approximation properties were not studied. Further, the usage of the parametric (LU-)representation of particular fuzzy numbers was proposed in [9] and even before in [10]. The LU-fuzzy representation is based on monotonic splines, which have flexible shapes, and it was claimed by the authors that it allows an easy and fast simulation of fuzzy dynamical systems, however, again, for fuzzy numbers only.
In [7], the authors proposed the so-called fuzzy calculator, which can approximate the membership output function (approximating Zadeh’s extension) of a continuous function, for which noninteractive input variables described by fuzzy intervals were considered, Therefore, the problem was transformed into several optimization problems (including particle swarm optimization) based on the -cut approach. These optimization algorithms were used to calculate the points of approximated -cuts, and then, under some assumptions, they could receive the first iteration of a fuzzy dynamical system. This is, to our best knowledge, the only approach that can be used so far for discrete dynamical systems of higher dimensions. However, the trajectory of a fuzzy dynamical system was not calculated here, and the optimization algorithms were used differently than in our approach. Moreover, this approach is different from the one presented in this manuscript: in our case, we do not use finite -cut representations, and therefore, we are able to distinguish nonconvex fuzzy sets in higher dimensions.
Thus, the practical approaches (mentioned above) are restricted to fuzzy numbers mostly and to the first application of Zadeh’s extension to the one-dimensional (interval) map in consideration. There is only one paper [9] in which several iterations of a given one-dimensional discrete dynamical system were experimentally computed, and this was performed for fuzzy numbers only. Our motivation was to prepare an algorithm avoiding these restrictions, i.e., to prepare a universal algorithm that will be flexible enough to simulate fuzzy dynamical system in which the input values will be represented not only by fuzzy numbers, which allows long-term simulations and, eventually, considering discrete dynamical systems in spaces of dimension greater than one.
There are also a few more theoretical works contributing to this topic. For instance, in [11], not only an interpolation technique (e.g., with the help of the F-transform) was published, but also the choice of the metric on the space of fuzzy sets and its effect on the expectation on the approximation were studied. For example, it has been shown that there are more suitable metrics than the standard, levelwise one. However, there has been no implementation of that proposal. Another paper [3] contributed to the theoretical background of the model of fuzzy dynamical systems induced by Zadeh’s extension principle, e.g., some topological properties of spaces of fuzzy sets or some continuity and convergence properties of generalized fuzzifications were surveyed and studied; additionally, the properties preserved by (semi-)conjugacies were specified. In another paper [12], the author elaborated on a very specific implementation of fuzzy arithmetics based on -cuts, which could prevent the possible widening of outcomes, but it cannot be implemented on any general map.
There are many related papers that should be mentioned, but we cannot comment on them properly due to the length of this manuscript. To provide a brief overview, one can find many papers on the approximations of fuzzy numbers [6,12,13], on practical implementations of the extension principle in real-world problems [14,15,16] (among others), or on the theoretical properties of fuzzy dynamical systems induced by the extension principle [17,18,19] (among others).
1.3. Novelties of This Study
The approach proposed in this manuscript is, in fact, a natural continuation and extension of two recent papers by the same authors. Recently, in [20], we introduced a preliminary version of the presented algorithm, dealing only with piecewise linear functions. Then, in [21], the next natural step, a generalization of the algorithm from [20] to an arbitrary continuous function, was briefly introduced with preliminary testing. We would like to emphasize that this manuscript fully extends and provides the readers with a fully extended testing.
In contrast to previous approaches (our approach can deal with more general classes of fuzzy sets (i.e., fuzzy sets, which are not fuzzy numbers)), we do not require any special fuzzy set representation, e.g., fuzzy sets to be necessarily fuzzy convex. It should be noted here that the convexity need not be preserved in higher dimensions. If needed, we are able to deal with the discontinuities of fuzzy sets, which naturally appear in trajectories of initial fuzzy states. Additionally, we also provide an implementation providing iterations of initial fuzzy states.
1.4. Additional Remarks
We would like to mention once more our previous algorithm [20] prepared for a distinct class of piecewise linear fuzzy sets, for which assuming the continuity is not necessary. This is an interesting feature because discontinuities naturally appear in simulations of fuzzy dynamical systems. The algorithm from [20] was able to deal with a much larger (i.e., topologically dense) class of interval maps. The approach presented in this manuscript significantly extends the computations to a whole class of all continuous one-dimensional (interval) maps (i.e., to the system of all continuous fuzzy sets). Another difference from previous approaches is that we already performed a preliminary testing of the quality approximation of some trajectories. We plan to develop this direction further, but before doing that, we need to test our algorithm on simpler cases, which is performed in this paper. Because of the famous butterfly effect, there will be a natural need to continuously adapt an approximation given by an evolutionary algorithm (that is why we used the PSO algorithm within this paper) and to allow further corrections of the studied trajectories.
The structure of this manuscript is the following. In the first section, basic terms from the fuzzy set theory related to metric spaces, dynamical systems, and fuzzy dynamical systems are introduced. In Section 2, the implementation of the particle swarm algorithm that is used for the linearization of interval (one-dimensional) functions is shown. The following section, i.e., Section 3, provides a discussion on the parameter selection of PSO-based linearizations. Finally, in Section 4, approximations of fuzzy dynamical systems are followed with a brief discussion on the precision and efficiency of the proposed algorithm (Section 5). Concluding remarks are given in Section 6.
1.5. Preliminaries
In this subsection, we introduce some basic notions used in our paper. For more information, we refer, for example, to [3,11].
Let be a nonempty metric space (sometimes called a universe). A fuzzy set A on a given metric space is a map , and for any point , the number represents a membership degree of the point x in the fuzzy set A. A system of upper semicontinuous fuzzy sets in the universe X is denoted by . The upper semicontinuity of fuzzy sets under consideration is not crucial for approximations, but it is formally required in the theoretical model of a discrete fuzzy dynamical system. Further, for , the set is an α-cut of A. Note that a fuzzy set A is upper semicontinuous if and only if every -cut is a closed subset of X. A fuzzy set A is normal if for some . Throughout this paper, we can expect that , because the problem considered on many one-dimensional spaces can be easily reduced to this situation.
1.6. Metrics
Before we start with the definition of a discrete fuzzy dynamical system, we should define the notion of a metric on the space of fuzzy sets . Such metrics are often computed with the help of a Hausdorff metric. Note that in the following text, is a real number, as usual. The Hausdorff metric between , where is a space of nonempty closed subsets of X, is defined by:
where:
Among the most often used metrics is the supremum metric , defined as:
for Other metrics, for example an endograph metric or sendograph metric, can be found in the literature [3]. These metrics are usually considered in connection with the topological structure on .
However, in our algorithm introduced in Section 2, we need additional distance notions because we calculate the distance between an initial function and its piecewise linear approximation, and the metrics mentioned above are not suitable for this.
The distance between two finite vectors , which gives the sum of the lengths of the projections of the line segment between the points in coordinate axes, is a function in q-dimensional space called . More precisely,
where are vectors , .
The distance between two vectors , that is assigned to arbitrary two vectors in q-dimensional space, is a function called Euclidean metric. More precisely,
where are vectors , .
A maximum metric (or Chebyshev distance) is a metric, often induced either by the supremum norm or uniform norm, defined in the following way:
where are vectors , .
1.7. Dynamical Systems
Let us briefly recall some elementary notions from topological dynamics (for details, we refer, e.g., to [22] and the references therein).
Assume now that X is a compact metric space and is continuous. Then, a pair defines a (discrete) dynamical system. For any given initial state , we can consider a (forward) trajectory of x under the map f as an inductively defined sequence : and for every . The initial state x we call a fixed point of the function f if . Similarly, the point is called periodic if there exists such that . These notions are briefly demonstrated in the following example.
Example 1.
Let us consider a tent map T, where is defined by
In Figure 1, one can easily see that (i.e., 0 is a fixed point), is eventually periodic (the middle picture below), which means that the trajectory of becomes periodic in a finitely many iterations. Finally, (and hence, ) is a periodic point with period 2.
Figure 1.
Trajectories of three initial states around the value of the dynamical system given by the tent map.
1.8. Fuzzy Dynamical Systems
We are ready to define a fuzzy dynamical system given by Zadeh’s extension principle, first defined by Zadeh in 1975 [23].
Consider now a discrete dynamical system . The map defines another map defined on the space of fuzzy sets by the following formula:
Naturally, whenever . Then, the map is a fuzzification (or Zadeh’s extension) of the map . There are many facts known for ; see, e.g., [3,24] and the references therein. For instance, an intuition of how works can be provided by: for any and .
It is also known that the continuity of implies the continuity of the fuzzification with respect to the metric topology given by the levelwise metric (and also other metrics). Consequently, is correctly defined as a discrete fuzzy dynamical system. For more information, we refer to [3].
Example 2.
To present some dynamical systems, we refer to some examples below. Namely, a few first iterations of Zadeh’s extensions of functions (, and ) (Section 4.2) are depicted in Figures 6–11.
2. Particle Swarm Optimization
In this subsection, we recall Particle Swarm Optimization (PSO), which is one of the evolutionary algorithms based on repetitive stochastic input adaptation, which is inspired by the social behavior of the species (R. Eberhart and J. Kennedy in 1995 [25,26]).
Let us briefly demonstrate the use of the PSO algorithm for searching a global optimum of an interval map . At the very beginning, we establish a population of a finite set, say of points called particles. In the subsequent steps, the population is firstly evaluated, and then, each particle moves in the domain, where movements are influenced by its historical behavior and, very often, also by neighboring particles. The process is combined together with the help of the choice of stochastic parameters (acceleration coefficients, constriction factor), adapted towards the required solution.
Our implementation of the PSO algorithm above is the following: we search for a linearization (see the definition of a piecewise linear function below) of a fixed interval map . To find a suitable solution, a function to be minimized is a distance function between f and its possible linearization . Therefore, because every possible linearization can be represented by a finite number, say , of points, every population consists of n particles represented by ℓ-dimensional vectors, and all, stochastic, parameters are adapted accordingly. The details of this construction are mentioned in the following pseudocode (Section 2.1).
Throughout this paper, we work with piecewise linear functions; thus, the definition of a piecewise linear function should be mentioned. A continuous interval map is called piecewise linear provided there are finitely many points , , such that is linear for every . Obviously, a piecewise linear function f can be uniquely defined by finitely many pairs , for , if the turning points preserve the ordering above.
2.1. Pseudocode of PSO-Based Linearization
A pseudocode of the proposed algorithm consists of seven steps:
- Initialization:
- A continuous function ;
- indicates a dimension of the problem and a number of linear segments of the approximating function;
- A particle is a vector , where and all s are pairwise different;
- denotes a number of particles;
- Thus, are finite sets of vectors . At the beginning, are randomly chosen particles;
- For every particle , a general formula for (piecewise linear) function given by ℓ pairs is the following:
- , such that , is a set of equidistant points on the interval ;
- A chosen metric is denoted by M;
- is a set of vectors , where is the velocity of each particle. Let the initial velocities be zero vectors, i.e., for every i;
- , are sets of vectors with uniform distributions from intervals , , where , are called acceleration coefficients;
- is called a constriction factor;
- A number of iterations ;
- Distances:
- For all , where , calculate (i.e., we calculate a distance M between two functions f and at finitely many points D for every particle ), and denoted ;
- For all , where , calculate , where M is a given metric, and from that, ;
- Comparison:
- Compare elements from Dist and Pbest such that for all , if , then , otherwise ;
- Best neighbors:
- There exists such that , where , and such that , where , and assign them vectors , from Part;
- Create a set , (called the set of best neighbors), where at the position is a vector and everywhere else is vector ;
- Calculation:
- For all , calculate the velocity and update the set Part of particles :
- –
- , where and are random vectors (defined above) embedding a piece of randomness in every step of the algorithm (There is no relationship between and at the very beginning. However, mutual choices of and can influence the quality of the output, and this feature is studied later in this manuscript.);
- –
- ;
- If the number I is not achieved, then continue with Step 2, otherwise go to Step 6.
- The best particle:
- For the finite set , calculate . Thus, ;
- There exists an element such that , where , and assign it a vector from Part to obtain the best distribution of points for a given function;
- Calculate ;
- Output:
- Set of pairs giving the best possible linearization of a function f.
3. Testing of the Linearization Procedure
In this section, we discuss some of the parameters which can affect the linearization procedure. After that, we introduce functions used for testing, and at the end of this section, we provide a summary of the results of the algorithm accuracy given by means and standard deviations.
3.1. Parameter Selection
Naturally, the PSO parameters choice can have a significant impact on optimization performance. In our optimization algorithm, we search for an appropriate setting of the constriction factor and the acceleration coefficients . The parameter is the personal best value and, is the best neighbors value. In the case that values of both parameters are high, the velocity can grow up faster, and, consequently, the algorithm can be unstable, but there is a need to get to know the behavior of the proposed parameter in particular tasks. It is known that the equation , where , should be satisfied and the authors recommended set to 2.05. Parameter is not changed during the algorithm run, it has a restrictive effect on the result. In the original version [26], PSO works with .
For our purpose, we were testing which combination of parameters can be the most appropriate, so we chose and . For each of five testing function (see (1)–(5) below) and parameter selection, the result was calculated 50 times. Additionally, we set , , and . These parameters are chosen only for our testing purposes, thus before using the proposed algorithm one should always consider, which parameters to choose according to functions and spaces in consideration. For example in the case of interval maps, the number of linear parts should be bigger than the number of monotone parts of the function. The distances between the initial (linearized) function and the approximating (linearizing) piecewise linear function are given with the help of metrics introduced in Section 1.6.
3.2. Functions Used for Testing
To be able to test this algorithm, we chose the following functions (see Figure 2), trying to consider them from simpler ones to a very complex one:
Figure 2.
The graphs of the functions , , , , and .
It follows from Section 3.1 that for each of these functions, we considered 125 combinations of parameters , , ; for each of these combinations, we repeated 25 runs, and the outcomes were evaluated with the help of three metrics. The conclusion of our statistical testing is provided in the next subsection.
3.3. The Choice of Parameters: Our Conclusion
In this subsection, we do not show all the obtained results due to the fact that this manuscript would be too long. However, we would like to present our general observations obtained for interval maps.
For demonstration purposes, we show the results of the mean and standard deviation for functions (see Table 1, Table 2 and Table 3) and (see Table 4, Table 5 and Table 6), which are the most suitable functions to use for our chosen parameter setting. In these tables, three types of metrics, twenty-five combinations of , and five different values of are used. Naturally, the choice of parameter can affect the final result. In general, we recommend using values . It turned out from our testing that if was smaller than , the results were not convincing, and on the other hand, the same happened if was bigger than 0.69. We can find more effective combinations of , but the best combinations were mostly given when was greater than .
Table 1.
The values of the arithmetic mean and standard deviation of obtained using PSO with , for 50 calculations with the metric .
Table 2.
The values of mean and standard deviation of obtained using PSO with for 50 calculations with the metric .
Table 3.
The values of mean and standard deviation of obtained using PSO with for 50 calculations with the metric .
Table 4.
The values of mean and standard deviation of obtained using PSO with for 50 calculations with the metric .
Table 5.
The values of mean and standard deviation of obtained using PSO with for 50 calculations with the metric .
Table 6.
The values of mean and standard deviation of obtained using PSO with for 50 calculations with the metric .
According to the results evaluated by the metric , we would recommend using the combination of parameters and . Other successful combinations can be , and , (see Table 1 and Table 4). The metric also provides promising combinations of parameters—for example, for , ; , , or , (see Table 2 and Table 5). The best results of the metric are based on , ; , and , (see Table 3 and Table 6). Moreover, our results showed that the metric and the metric measure the distances consistently across all examples, while the metric delivers the least optimal results.
3.4. Examples of the Linearization Process
In this subsection, the use of the proposed algorithm is demonstrated on the testing functions introduced in Section 3.2. The following examples are based on calculations with random parameters selected in Section 3.3.
Example 3.
Let a function , whose graph can be seen in Figure 2, be given. The chosen parameters are , and the metric is used. In this example, , , and . This function has two monotone parts, so the choice of the linear parts depends on the accuracy of what we want to obtain. In Figure 3, we can see the difference between , and 12 points.
Figure 3.
The graphs of the original function (the black line) and its piecewise linearizations (the red line), where .
Example 4.
Let a function , whose graph is depicted in Figure 2, be given. The initial parameters are ; the metric is chosen; , . As we can see, the first monotone parts are narrower, so if we choose , the algorithm cannot approximate the first part correctly. For illustration, we take and (see Figure 4).
Figure 4.
The graphs of the original function (the black lines) and its piecewise linearizations (the red lines), where .
Example 5.
Let a function be given, and its graph can be seen in Figure 2. The initial parameters with the metric were chosen. In the first part of Figure 5, , , and . In the second part of the figure, , , and .
Figure 5.
The graphs of the original function (the black lines) and its piecewise linearizations (the red lines), where , , (the first row) and , , (the second row).
We intentionally chose a function of this shape, namely with infinitely many pieces of monotonicity, and a simple observation confirmed that the problem can occur and the proposed solutions are unstable. The algorithm is not able to approximate all monotone parts correctly, and as we can see in Figure 5, the result need not always be as required. In this particular case, parameters D and ℓ should be much higher, and the calculation would take a bit more time.
The latter example brings us to the discussion on the complexity of the proposed algorithm.
3.5. Complexity of the Proposed Algorithm
In this subsection, we provide the computational complexity with the Big O notation, and we also show the computation time of the linearization process of the functions introduced in Section 3.2.
3.5.1. Computational Complexity
Let n be the input data size. The input data preprocessing of this algorithm has a computational complexity equal to ; the main loop has a computational complexity equal to ; the complexity of the last algorithm part, mainly consisting of drawing graphs, is equal to ; thus, the final complexity is given by the sum of all parts . The Big O notation of this algorithm is .
3.5.2. Computation Time
Computation time is significantly influenced by more factors, especially the number of linear parts ℓ, iterations I, discretization points D, and also, the machine used for compiling. In Table 7, we can see the time dependent on ℓ and D, which are the most important values for the algorithm’s accuracy. The test was executed on the functions introduced in Section 3.2 with random parameters , , the metric , , and .
Table 7.
Computing time in seconds.
4. Approximation of Fuzzy Dynamical Systems
In this section, we present a generalization of the algorithm originally introduced in [20]. In the first part, we briefly comment on the algorithm in order to make the second technical part more legible. To simplify the notation below, we considered . However, our algorithm can be easily adapted to an arbitrarily closed nondegenerated subinterval of the real line .
The main idea of the following algorithm is to compute a trajectory of a given discrete fuzzy dynamical subsystem , which is a natural and unique extension of a discrete dynamical system . The main idea behind the previous algorithm [20] was to calculate Zadeh’s extension with the help of calculations on smaller intervals, i.e., pieces of linearity of both the map f and the fuzzy set A. This allowed computing Zadeh’s extension on a limited number of points. To be able to generalize the previous algorithm, we need to find appropriate linearizations. For this reason, the PSO-based linearization introduced in Section 2 was used.
In Step 1, the PSO-based linearization proposed in the previous section is used to find an appropriate linearization of the function f (resp. of the fuzzy set A, but the latter case is usually not needed).
In Step 2, it is shown how to decompose into finitely many subintervals and what points should be chosen for the calculation of Zadeh’s extension. Instinctively, it is important (and mostly, also sufficient) to consider the turning points of the function f and the turning points of a given fuzzy set A. The union of all such turning points defines a set J from which the starting and ending points of each interval of the decomposition of are generated.
In Step 3, Zadeh’s extension on intervals given by properly chosen pairs of points is computed in order to define linear elements from which the image is reconstructed. This is a partial outcome from which we obtain a finite set of linear functions, and by using pointwise maxima of such linear parts, we obtain a graph of the image of the fuzzy set A.
The process that is described in Steps 2 and 3 is repeated until we obtain the chosen number M of iterations. Below, we demonstrate several trajectories of fuzzy initial states A in a given dynamical system , which represent the final results of the proposed algorithm, i.e., a 3D plot of all evaluated iterations , , …, .
4.1. Pseudocode
Now, a bit more formal description of the algorithm consisting of six steps follows:
- Initialization—let the following items be given:
- A continuous function ;
- A piecewise linear fuzzy set , defined by points , where ,
- A number of iterations . Let ;
- Step 1:
- Use the PSO algorithm (see Section 2) to find a linearization of a function f, i.e., to find a sequence of pairs giving an appropriate linearization of a function f. For our notion, let , where ;
- Step 2:
- Create a set J of s linear segments of obtained from linear segments of A by the following inductive procedure. Whenever for some and m is the number of elements in J, then J obtains two new linear segments instead of , where and . This step is used repeatedly (if needed) in an analogous way. This way, we obtain a finite set of s linear segments from J;
- Step 3:
- For and for every linear segment from J, we compute its image under Zadeh’s extension of the map restricted to . More precisely, for every , we obtain a linear segment ;
- Take pointwise maxima of the obtained linear segments of , , in order to obtain the graph of ;
- Step 4:
- If , then the algorithm is finished;
- If , then put , and repeat the whole procedure, i.e., continue from Step 2;
- Output:
- Depict images of in a 3D plot.
4.2. Examples
In this subsection, the algorithm for the approximation of fuzzy dynamical systems is demonstrated with the help of three examples. Below, we take three interval maps , , and and an appropriate fuzzy set , as the initial stages, and then, we compute the first tens of iterations to demonstrate the time evolution of the given initial state.
Example 6.
Let a piecewise linear function be given by five points , and let a piecewise linear fuzzy set be given by the following points (see Figure 6).
Figure 6.
The graphs of the function given by 4 points (left) and the fuzzy set given by 6 points (right).
Now, we can use the algorithm introduced in Section 4. Below (see Figure 7), we can see a final plot that contains images of the fuzzy set for the first 30 iterations. This example gives a precise trajectory; the linearization of the function was not needed.
Figure 7.
The graphs of .
Example 7.
Let a piecewise linear function be given by a formula:
and let a piecewise linear fuzzy set be given by points First, the PSO algorithm, which searches for a suitable linearization of a function , is applied. Therefore, we have a linearized function , with , which can be seen in Figure 8. Then, the algorithm for the approximation of fuzzy dynamical system can continue.
Figure 8.
The graphs of the linearized function given by 18 points (left) and the fuzzy set given by 3 points (right).
Finally, a plot containing the trajectory of the fuzzy set for the first 25 iterations can be seen (see Figure 9).
Figure 9.
The graphs of .
Example 8.
Let a piecewise linear function be given by three points , and let be given by 30 points, as depicted in Figure 10. Now, we can use the algorithm for the approximation of the trajectory within an induced fuzzy dynamical system.
Figure 10.
The graphs of the function given by 3 points (left) and the fuzzy set given by 30 points (right).
Again, a plot containing the first 30 elements of the trajectory of the fuzzy set under the map can be seen (see Figure 11). As we can see, the trajectory tends to have a periodic behavior.
Figure 11.
The graphs of .
Example 9.
Let a function be given by the formula , and let a fuzzy set be given by 23 points (see Figure 12).
Figure 12.
The graphs of the linearized function given by 18 points (left) and the fuzzy set given by 23 points (right).
To be able to calculate the approximation of Zadeh’s extension of we need to linearize the function first. Thus, we use the PSO algorithm to find the an appropriate linearization of the function .
Below (Figure 13), we can see a final plot containing the first 30 iterations of the trajectory of the fuzzy set under the map .
Figure 13.
The graphs of .
4.3. Algorithmic Complexity of Approximations of Fuzzy Dynamical Systems
In this subsection, the computational complexity with the Big O notation and the computation time of a few examples are provided.
4.3.1. Computational Complexity
Let n be the input data size. The Big O notation of this algorithm is . The input data preprocessing has a computational complexity equal to n; the main loop has a computational complexity equal to ; the last algorithm part has a complexity equal to . Thus, the final complexity is , which is given by the sum of all parts .
4.3.2. Computation Time
In Table 8, we provide the computation time of the examples introduced in Section 4.2 for a rough orientation.
Table 8.
Computing time in seconds.
5. Accuracy of Approximations of Fuzzy Dynamical Systems
It is indisputable that the accuracy of approximations of fuzzy dynamical systems largely depends on the given input values and also the parameter selection. Generally, known as a butterfly effect [27] in dynamical systems, a small change of the side of inputs can cause a large change in the output, especially in long-term observations. In the previous version of our algorithm [20], we dealt with calculations of piecewise linear functions and fuzzy sets, so there was no need to open any discussion on accuracy. However, because the functions (and fuzzy sets) need not always be piecewise linear, there is a natural demand for the algorithm proposed in this paper. Since PSO is a stochastic algorithm based on computing with random parameters, various linearizations provided by the PSO algorithm can give us similar, close to each other, but different outputs. Consequently, there will definitely be different trajectories that will differ from each other especially in higher iterations. However, it is natural to ask how significant the influence of these small changes for the algorithm used for the computations of trajectories of an induced fuzzy dynamical system is.
To provide a discussion on this topic, we considered tens of iterations only. Concerning the butterfly effect mentioned above, it is natural that, in general, no approximation prepared at the very beginning can be sufficient in long-term behavior, and in particular applications, some form of recalculations and adjustments will be needed, which is supposed to be a part of our future work. Consequently, to show some observations on the stability of the proposed algorithm, we prepared a comparison of the beginning of the trajectories. For this comparison, we prepared yet another algorithm called a testing algorithm below, which is based on direct calculations of a huge number of points of the phase space and their subsequent reduction. Therefore, we considered it as a perspective for long-term estimates; however, we considered it suitable for our purposes because it provides exact values of Zadeh’s extension when used with a big number of points. The calculation of the distances in the tables below was performed with the help of the Euclidean and Manhattan metrics.
Comparison
To demonstrate the stability, we chose Example 7 from Section 4.2. Let the function be given by the following formula (see Figure 14):
Figure 14.
The graph of the function (left) and a fuzzy set A represented by 2020 equidistantly distributed points (right).
In Figure 15, one can see the results calculated with the help of the testing algorithm on the right side, and the second example (on the left side) is given by the algorithm based on the PSO linearization (proposed in Section 4).
Figure 15.
The graphs of .
Upon the first sight, we can see that the trajectories are similar. To be more specific about how stable the proposed algorithm is, we calculated the distances between each iteration with the Euclidean and Manhattan distances introduced in Section 1.6 (see Table 9 and Table 10).
Table 9.
The distances (Euclidean, Manhattan) between the testing algorithm and the proposed algorithm for .
Table 10.
The distances (Euclidean, Manhattan) between the testing algorithm and the proposed algorithm for .
In Table 11, we provide five runs of the proposed algorithm, and for each of them, we calculated the distances to the elements of the trajectory of A provided by the testing algorithm and the PSO-based one; we demonstrate that they tend to provide a stable solution. The distances were calculated on a moving set of points given by images of 2020 points approximating A with their careful pruning lowering the number of approximating points. This tends to show a more practical behavior of the trajectory. In Table 12, we provide another comparison in which the pruned points are refilled by equidistantly distributed points. That calculation provided outcomes closer to the endograph distance, which showed a behavior closer to theoretical studies, e.g., in [3,28], and that is also why the butterfly effect is more observable in the latter case.
Table 11.
The distances (Euclidean, Manhattan) between the testing and the proposed algorithm for .
Table 12.
The distances (Euclidean, Manhattan) between the testing and the proposed algorithm in 2020 points for .
First of all, the next tables show the dependence of the choice on the number of linear parts, i.e., when , and 40, respectively.
In Figure 16, we also depict the first, tenth, and twenty-fifth iteration. The green trajectory is the result of our proposed algorithm, the red trajectory is the result given by the testing algorithm, while the last image illustrates the difference between the selected iterations.
Figure 16.
Accuracy of the algorithm—the 1st, 10th, and 25th iteration.
6. Conclusions
In this contribution, we introduced an algorithm that can be used for simulations of fuzzy dynamical systems induced by one-dimensional maps. The proposed algorithm is partially based on the calculation of Zadeh’s extension on smaller linear pieces implemented in a previous paper ([20]). The latter approach covered topologically large, yet not the full class of continuous interval maps. To be able to compute it for any arbitrary continuous interval map, we focused on the linearization process and adapted the PSO algorithm to search for a suitable linearization of a given map. This approach provides us an approximated trajectory of the initial state A in a general one-dimensional fuzzy dynamical system. To highlight some advantages in contrast to previous approaches, we are not restricted to fuzzy numbers only (the family of fuzzy sets is far richer), we are not restricted to convex fuzzy sets (convexity is not preserved by higher iterations), and, if needed, we are able to deal with discontinuous fuzzy sets (which naturally appear in higher iterations). We are also convinced that our approach will be generalized to higher dimensions, which would be a case not provided by previous approaches.
The proposed algorithm has been tested from several points of view. In the first part of the algorithm, the parameter selection in the PSO algorithm has been elaborated and, also, the algorithm complexity was discussed. The algorithm complexity was discussed also for the main part of the proposed algorithm and, subsequently, some trajectories of fuzzy dynamical systems derived by Zadeh’s extension were presented and briefly compared in precision. The next natural steps are to extend this algorithm into higher dimensions, to implement advanced features like automatic detection of pieces of linearity of the approximating map, to show implementations in particular applications and so on.
Author Contributions
The authors contributed equally to this paper. All authors have read and agreed to the published version of the manuscript.
Funding
N. Škorupová acknowledges funding from the project “Support of talented PhD students at the University of Ostrava” from the program RRC/10/2018 “Support for Science and Research in the Moravian-Silesian Region 2018”.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Esmi, E.; Sussner, P.; Ignácio, G.B.D.; de Barros, L.C. A parametrized sum of fuzzy numbers with applications to fuzzy initial value problems. Fuzzy Sets Syst. 2018, 331, 85–104. [Google Scholar] [CrossRef]
- Pedro, F.S.; de Barros, L.C.; Esmi, E. Population growth model via interactive fuzzy differential equation. Inf. Sci. 2019, 481, 160–173. [Google Scholar] [CrossRef]
- Kupka, J. On fuzzifications of discrete dynamical systems. Inf. Sci. 2011, 181, 2858–2872. [Google Scholar] [CrossRef]
- Zhao, Y.; Cheng, W.-C.; Ho, C.-C. On sequential entropy of fuzzy systems. J. Intell. Fuzzy Syst. 2011, 34, 2021–2029. [Google Scholar] [CrossRef]
- Chalco-Cano, Y.; Misukoshi, M.T.; Román-Flores, H.; Flores-Franulic, A. Spline approximation for Zadeh’s extensions. Int. J. Uncertain. Fuzziness Knowl.-Based Syst. 2009, 7, 269–280. [Google Scholar] [CrossRef]
- Chalco-Cano, Y.; Román-Flores, H.; Rojas-Medar, M.; Saavedra, O.; Jiménez-Gamero, M.-D. The extension principle and a decomposition of fuzzy sets. Inf. Sci. 2007, 177, 5394–5403. [Google Scholar] [CrossRef]
- Scheerlinck, K.; Vernieuwe, H.; Baets, B.D. Zadeh’s extension principle for continuous functions of non-interactive variables: A parallel optimization approach. IEEE Trans. Fuzzy Syst. 2011, 20, 96–108. [Google Scholar] [CrossRef]
- Ahmad, M.Z.; Hasan, M.K. A new approach for computing Zadeh’s extension principle. Matematika 2010, 26, 71–81. [Google Scholar]
- Stefanini, L.; Sorini, L.; Guerra, M.L. Simulation of fuzzy dynamical systems using the LU-representation of fuzzy numbers. Chaos Solitons Fractals 2006, 29, 638–652. [Google Scholar] [CrossRef]
- Guerra, M.L.; Stefanini, L. Approximate fuzzy arithmetic operations using monotonic interpolations. Fuzzy Sets Syst. 2005, 150, 5–33. [Google Scholar] [CrossRef]
- Kupka, J. On approximations of Zadeh’s extension principle. Fuzzy Sets Syst. 2016, 283, 26–39. [Google Scholar] [CrossRef]
- Hanss, M. The transformation method for the simulation and analysis of systems with uncertain parameters. Fuzzy Sets Syst. 2002, 130, 277–289. [Google Scholar] [CrossRef]
- Otto, K.N.; Lewis, A.D.; Antonsson, E.K. Approximating α-cuts with the vertex method. Fuzzy Sets Syst. 1993, 55, 43–50. [Google Scholar] [CrossRef]
- Sánchez, D.E.; Wasques, V.F.; Arenas, J.P.; Esmi, E.; de Barros, L.C. On interactive fuzzy solutions for mechanical vibration problems. Appl. Math. Model. 2021, 96, 304–314. [Google Scholar] [CrossRef]
- Wasques, V.F.; Esmi, E.; Barros, L.C. Solution to the advection equation with fuzzy initial condition via sup-j extension principle. In Proceedings of the 19th World Congress of the International Fuzzy Systems Association (IFSA), 12th Conference of the European Society for Fuzzy Logic and Technology (EUSFLAT), and 11th International Summer School on Aggregation Operators (AGOP), Bratislava, Slovakia, 19–24 September 2021; Atlantis Press: Paris, France, 2021; pp. 134–141. [Google Scholar]
- Wasques, V.F.; Esmi, E.; Barros, L.C.; Sussner, P. The generalized fuzzy derivative is interactive. Inf. Sci. 2020, 519, 93–109. [Google Scholar] [CrossRef]
- Jardón, D.; Sánchez, I.; Sanchis, M. Transitivity in fuzzy hyperspaces. Mathematics 2020, 8, 1862. [Google Scholar] [CrossRef]
- Khatua, D.; Maity, K. Stability of fuzzy dynamical systems based on quasi-level-wise system. J. Intell. Fuzzy Syst. 2017, 33, 3515–3528. [Google Scholar] [CrossRef]
- Ma, C.; Zhu, P.; Lu, T. Some chaotic properties of fuzzified dynamical systems. SpringerPlus 2016, 5, 1–7. [Google Scholar] [CrossRef] [Green Version]
- Kupka, J.; Škorupová, N. Calculations of Zadeh’s extension of piecewise linear functions. In International Fuzzy Systems Association World Congress; Springer: Berlin/Heidelberg, Germany, 2019; pp. 613–624. [Google Scholar] [CrossRef]
- Kupka, J.; Škorupová, N. On PSO-based approximation of Zadeh’s extension principle. In International Conference on Information Processing and Management of Uncertainty in Knowledge-Based Systems; Springer: Berlin/Heidelberg, Germany, 2020; pp. 267–280. [Google Scholar] [CrossRef]
- Block, L.S.; Coppel, W.A. Dynamics in One Dimension; Springer: Berlin/Heidelberg, Germany, 2006. [Google Scholar] [CrossRef]
- Zadeh, L.A. Fuzzy sets. Inf. Control. 1965, 8, 338–353. [Google Scholar] [CrossRef] [Green Version]
- Kloeden, P. Fuzzy dynamical systems. Fuzzy Sets Syst. 1982, 7, 275–296. [Google Scholar] [CrossRef]
- Kennedy, J. Particle Swarm Optimization. In Encyclopedia of Machine Learning; Sammut, C., Webb, G.I., Eds.; Springer: Boston, MA, USA, 2011; pp. 760–766. [Google Scholar]
- Eberhart, R.; Kennedy, J. Particle swarm optimization. In Proceedings of the ICNN’95—International Conference on Neural Networks, Perth, Australia, 27 November–1 December 1995; Volume 4, pp. 1942–1948. [Google Scholar]
- D’Aniello, E.; Steele, T.H. Asymptotically stable sets and the stability of omega-limit sets. J. Math. Anal. Appl. 2006, 321, 867–879. [Google Scholar] [CrossRef] [Green Version]
- Canovás, J.; Kupka, J. On the topological entropy on the space of fuzzy numbers. Fuzzy Sets Syst. 2014, 257, 132–145. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).















