This article presents a method of fuzzy induction developed by the author, combining elements of fuzzy mathematics and fractal theory. It introduces the concept of the degree of recursion of a fuzzy set and describes the incomplete recursion of a set as its fractional dimension for modeling the subject area. The proposed method and the knowledge models created based on it, as fuzzy sets, are applied to the management of the life cycle of information systems, including the development of use cases and software testing.
Relevance
During the design, development, implementation, and operation of information systems, it is essential to accumulate and systematize data and information collected externally or arising at each stage of the software lifecycle. This serves as necessary informational and methodological support for project work and decision-making, especially in situations of high uncertainty and in loosely structured environments. The knowledge base formed from the accumulation and systematization of such resources should not only be a source of valuable experience gained by the project team during the creation of the information system but also a straightforward tool for modeling new visions, approaches, and algorithms for project task implementation. In other words, this knowledge base serves as a repository of intellectual capital and, at the same time, a knowledge management tool [3, 10].
The effectiveness, utility, and quality of the knowledge base as a tool correlate with the resource intensity of its maintenance and the efficiency of knowledge extraction. The simpler and faster the collection and documentation of knowledge in the base, and the more pertinent the results of queries to it, the better and more reliable the tool itself [1, 2]. However, discrete methods and means of structuring applicable to systems... Database Management System, including normalization of relational database relationships, do not allow for the description or modeling of semantic components, interpretations, interval and continuous semantic sets [4, 7, 10]. A methodological approach is needed that generalizes specific cases of finite ontologies and brings the knowledge model closer to the continuity of describing the subject area of the information system.
Such an approach may involve the integration of principles from fuzzy mathematics and the concept of fractal dimension [3, 6]. By optimizing the description of knowledge based on the degree of continuity (the discretization step of the description) under the limitations of Gödel's incompleteness principle (in the information system – the fundamental incompleteness of reasoning, knowledge derived from this system under the condition of its consistency), and performing sequential fuzzification (conversion to fuzziness), we obtain a formalized description that maximally fully and coherently represents a certain body of knowledge with which any information process operations can be performed – collection, storage, processing, and transmission [5, 8, 9].
Definition of the recursion of a fuzzy set
Let X be the set of values of a certain characteristic of the modeled system:
(1)
where n = [N ≥ 3] – the number of values of such a characteristic (more than the elementary set (0; 1) – (false; true)).
Let X = B, where B = {a,b,c,…,z} – the set of equivalents that corresponds element-wise to the set of values of the characteristic X.
Then a fuzzy set
, which corresponds to the fuzzy (in general) notion describing the characteristic X, can be represented in the form:
(2)
where m is the discretization step of the description, i belongs to N – the multiplicity of the step.
Accordingly, to optimize the knowledge model of the information system based on the criterion of continuity (softness) of description, while remaining within the bounds of the incompleteness of reasoning, we introduce the degree of recursion of the fuzzy set
and obtain the following variant of its representation:
(3)
where
– the set corresponding to the fuzzy notion, in general, describing the characteristic X more fully than the set
, based on the criterion of softness; Re – the degree of recursion of the description.
It should be noted that
(reduced to a clear set) in the special case if needed.
Introduction of fractional dimensionality
For Re = 1, the set
represents a classic fuzzy set of the second degree, which includes as elements fuzzy sets (or their clear representations) describing all values of the characteristic X [1, 2]:
(4)
However, this is a degenerate case, and in the most complete representation, some elements
can be sets, while others are trivial (extremely simple) objects. Therefore, to define such a set, it is necessary to introduce fractional recursion – analogous to fractional dimensionality of space (in this context – the ontology space of a certain subject area) [3, 9].
For fractional Re we obtain the following notation
:
(5)
where
– fuzzy set for the value X1,
– fuzzy set for the value X2, and so on.
In this case, the recursion essentially becomes fractal, and the sets of descriptions are self-similar.
Definition of the functional capabilities set of the module
The architecture of an open information system assumes a modularity principle, which provides the possibility of scaling, replication, adaptability, and emergence of the system. Modular construction allows for the technological implementation of information processes to be as close as possible to their natural objective embodiment in the real world, developing the most convenient tools based on their functional properties, aimed not at replacing people, but effectively assisting them in knowledge management.
A module is a distinct entity within the information system that may be mandatory or optional for the existence of the system, but in any case provides a unique set of functions within the system.
The entire variety of functional capabilities of modules can be described by three types of operations: creation (recording new data), editing (modifying previously recorded data), deletion (erasing previously recorded data).
Let X be some characteristic of such functional capabilities, then the corresponding set X can be represented as:
(6)
where X1 is creation, X2 is editing, X3 is deletion,
(7)
The functionality of any module is such that data creation is not self-referential (implemented without recursion – the creation function does not repeat itself), while editing and deleting, in general, may involve both element-wise implementation (performing operations on selected elements of data sets) and can also include similar operations as part of the process.
It should be noted that if an operation for functionality X in this module is not performed (not implemented in the system), then the corresponding set for such an operation is considered empty.
Thus, to describe the fuzzy concept (statement) 'the module allows for performing an operation with the corresponding data set for the information system', a fuzzy set
can be represented in its simplest case as:
(8)
Such a set, in general, has a recursion degree of 1.6(6) and is both fractal and fuzzy at the same time.
Preparation of use and testing scenarios for the module
At the stages of development and operation of the information system, specific scenarios are needed that describe the order and content of operations for using modules according to their functional purpose (use-case scenarios), as well as for verifying the correspondence between expected and actual results of module operations (test-case scenarios).
Considering the concepts presented above, the process of working on such scenarios can be described as follows.
A fuzzy set is formed for the module
:
(9)
where
– a fuzzy set for the data creation operation based on functionality X;
– a fuzzy set for the data editing operation based on functionality X, where the recursion degree a (function nesting) is a natural number and in the trivial case equals 1;
– a fuzzy set for the data deletion operation based on functionality X, where the recursion degree b (function nesting) is a natural number and in the trivial case equals 1.
Such a set describes what exactly (which data objects) are created, edited, and/or deleted in any scenario of using the module.
Then a set of Ux usage scenarios is created for functionality X for the module under consideration, in each of which it is described, why (for which business task) data objects are created, edited, and/or deleted, described by many
, and in what order:
(10)
where n is the number of usage scenarios for X.
Next, a set of Tx testing scenarios is created for functionality X for each usage scenario of the module under consideration. The testing scenario describes what data values and in what order are used when executing the usage scenario, as well as what result should be obtained:
(11)
where [D] is an array of test data, and n is the number of testing scenarios for X.
In the described approach, the number of testing scenarios is equal to the number of corresponding usage scenarios, which simplifies the work on their description and updating as the system evolves. Furthermore, such an algorithm can be used to automate the testing of software modules within the information system.
Conclusion
The presented method of fuzzy induction can be implemented at different stages of the lifecycle of any modular information system, both for the purpose of accumulating the descriptive part of the knowledge base and for working on usage and testing scenarios of the modules.
Moreover, fuzzy induction helps synthesize knowledge based on the obtained fuzzy descriptions akin to a 'cognitive kaleidoscope', where some elements remain clear and unambiguous, while others, by the principle of self-similarity, are applied the specified number of times at the level of recursion for each set of known data. Collectively, the resulting fuzzy sets form a model that can be used both for the purposes of the information system and in the pursuit of new knowledge in general.
This type of methodology can be regarded as a peculiar form of 'artificial intelligence', considering that the synthesized sets should not contradict the principle of the incompleteness of reasoning and are intended to assist human intelligence rather than replace it.
List of References
- Borisov V.V., Fedulov A.S., Zernov M.M., “Fundamentals of Fuzzy Set Theory”. Moscow: Hot Line – Telecom, 2014. – 88 pages.
- Borisov V.V., Fedulov A.S., Zernov M.M., “Fundamentals of Fuzzy Logical Inference”. Moscow: Hot Line – Telecom, 2014. – 122 pages.
- Demenok S.L., “Fractal: Between Myth and Craft”. St. Petersburg: Academy of Culture Research, 2011. – 296 pages.
- Zade L., “Foundations of a New Approach to the Analysis of Complex Systems and Decision-Making Processes” / “Mathematics Today”. Moscow: “Knowledge”, 1974. – pp. 5 – 49.
- Kranz S., “The Changing Nature of Mathematical Proof”. Moscow: Knowledge Laboratory, 2016. – 320 pages.
- Mavrikidi F.I., “Fractal Mathematics and the Nature of Change” / “Delphis”, No. 54 (2/2008), .
- Mandelbrot B., “Fractal Geometry of Nature”. Moscow: Institute of Computer Research, 2002. – 656 pages.
- “Fundamentals of Fuzzy Set Theory: Methodological Guidelines”, compiled by Korobova I.L., Dyakov I.A. Tambov: Tambov State Technical University Press, 2003. – 24 pages.
- Uspensky V.A., “Apology of Mathematics”. Moscow: Alpina Non-Fiction, 2017. – 622 pages.
- Zimmerman H. J. “Fuzzy Set Theory – and its Applications”, 4th edition. Springer Science + Business Media, New York, 2001. – 514 pages.
Source: habr.com
