1 Introduction

With the publication of Zadeh’s 1997 seminal paper (Zadeh 1997) that introduces the term “granular computing,” we have witnessed a rise of granular computing as a new field of study (Yao 2008a). Although granular computing is a new term, its basic ideas, as human-inspired and nature-inspired ways to abstracting and information processing, have long appeared in many fields (Bargiela and Pedrycz 2006, 2009; Hobbs 1985; Ślęzak and Skowron 2015; Yao 2007a, 2010, 2011; Zadeh 1979; Zhang and Zhang 1992). Yao (2010) examined various views on human-inspired granular computing.  Ślęzak and Skowron (2015) pointed out that “Information Granulation is crucial for understanding compound, interactive and adaptive computations in nature” and plays an important role “in designing intelligent systems inspired by nature.” In the light of extensive results from many fields that use ideas of granular thinking and granular processing either explicitly or implicitly, it is important to construct a conceptual model in order to support granular computing as a field of study in its own right.

Studies over the past two decades have produced valuable insights into the theory and practice of granular computing (Bargiela and Pedrycz 2002; Keet 2008; Pawlak 1998; Pedrycz and Chen 2011; Pedrycz et al. 2008; Yao 2010; Yao et al. 2013; Yao 2008b). There exist many definitions and views of granular computing. For example,  Zadeh (1997) defined granular computing as “[a] subset of granular mathematics and a superset of computing with words.”  Pedrycz (2001) focused on the information processing aspect and stated that “granular computing is geared toward representing and processing basic chunks of information - information granules.” Instead of giving a precise definition,  Yao (2004) considered granular computing to be an umbrella term, namely, “a label of theories, methodologies, techniques, and tools that make use of granules in the process of problem solving” (Yao 2000). While many theories look at different aspects of granular computing or introduce various concrete models, a thesis advanced in this paper is that we must take a holistic view of granular computing, embracing these many aspects and models into a unified framework.

This paper presents an overview of a triarchic theory of granular computing, building on ideas developed in a series of earlier publications (Yao 2005, 2006, 2007a, 2008b, c, 2009, 2010). We suggest using a hierarchical granular structure to accommodate a multilevel understanding at multiple levels of varying granularity and to use many granular structures to achieve a multiview from different angles. We introduce a granular computing triangle that links together three important perspectives on granular computing. We discuss the philosophy of granular computing in relation to reductionism, systems thinking, and levelism. We look at the methodology of granular computing in terms of different ways to working with a granular structure, namely, top-down, bottom-up, and middle-out approaches. Finally, we examine a Pandemonium architecture (Selfridge 1959) for granular computing and a mechanism of granular computing by the practices of level-wise information processing. We consider particular modes of granular computing known as top-down progressive computing (Yao and Luo 2011), sequential three-way decisions (Yao 2013), and interactive granular computing (Nguyen and Skowron 2013; Skowron et al. 2016). At the end of the paper, we introduce the notion of granular data analytics to demonstrate the use of multilevel and multiview granular structures.

We focus on a high-level conceptual understanding of granular computing by drawing results across multiple disciplines. Instead of providing very detailed discussions and results, we give references where such information can be found. Few of the concrete ideas in the triarchic theory are new; they are adopted from other fields. The triarchic theory just weaves these powerful ideas into a cohesive picture. Although specifics of the triarchic theory may be changed and fine-tuned, the importance of such a conceptual and an integrative study will remain and, most likely, increase.

This paper is a plea for a study of granular computing in a wider context and from a more holistic point of view. While it is important to create new ideas for granular computing, it is equally important to revisit existing ideas and to recast them and to integrate them for granular computing. This paper is, in fact, mainly intended for the latter. As a first step, this paper identifies and discusses potential resources from which a study of granular computing can draw inspiration. By so doing, we can ensure that granular computing embraces ideas and wisdom from other fields related to thinking and problem solving.

According the principle of granular computing, we need to have an understanding and an explanation of any theory or field of study at multiple levels. Blind spots of this paper are a lack of explanations at more concrete levels. We hope that the general discussions are of some value for guiding further exploration at additional levels.

2 Granular structures: multilevel and multiview understanding and representation

Granular computing exploits useful structures in problem solving and information processing. The structure used for representing and interpreting a problem or a system is called a granular structure. The construction, interpretation and utilization of granular structures are governed by a principle of multilevel and a principle of multiview  (Yao 2007a, 2009). The principle of multilevel emphasizes on understanding and representation at multiple levels of granularity and abstraction. The principle of multiview stresses understanding and representation from multiple angles. Through the prism of granular structures, one arrives at a more complete understanding and description of a problem.

Principle of multilevel An advantage offered by a granular structure is the multilevel understanding and representation. As shown in Fig. 1, a granular structure is a hierarchical structure consisting of multiple levels, with each level populated by entities called granules. Levels are ordered from the top to the bottom in a decreasing order of granularity, where granularity is understood as the degree of abstraction or detail, or intuitively, the size of granules as formally investigated by, for example,  Yao and Zhao (2012). We have more abstract, larger granules at a higher level and more concrete, smaller granules at a lower level. Granules at a particular level are of a similar nature or size, that is, they are of the same granularity. Each large granule is explained and supported by a family of smaller granules in its next lower level. Conversely, a family of smaller granules is synthesized into a larger granule in its next higher level.

Fig. 1
figure 1

A multilevel granular structure

In developing a theory of granular computing, we treat granules and levels as primitive notions. Although granules and levels are relatively abstract notions, their physical meanings become clearer when a particular context is considered. A granule may be considered as a part of a whole, for example, a subproblem of a problem or a subsystem of a system. A level provides a description of the whole through a family of granules at a particular level of granularity or detail. Granules can be intuitively viewed as the focal points of our current interest and the elements, concepts or notions we used to give a description or a representation. At different levels, we may use different languages or information/knowledge representation schemes, as well as different processing methods. Switching between different levels and transforming from a level into one of its adjacent levels play an essential role in granular computing.

Principle of multiview We can explain the notions of levels and granular structures from two standpoints (see Yao 2009 for references on this topic). The objective standpoint treats a granular structure as objective existence. A granular structure is simply discovered from and made explicit of what exists in nature. The subjective standpoint treats a granular structure as our imposition on the nature, required by a need for a simple and easy-to-understand description and representation. Independent of the two standpoints, it is important to realize that a granular structure may only capture limited aspects of a problem or a system from a particular angle. In order to reflect various angles, we need to use a family of granular structures.

A granular structure is one particular representation of a problem. According to  (Marr 1982), “any particular representation makes certain information explicit at the expense of information that is pushed into the background and may be quite hard to recover.” By using many granular structures, with each for a specific purpose, we may be able to obtain a more complete picture.

An advantage offered by multiple granular structures is a multiview understanding and representation. For different aspects, we have different granular structures. We can switch from one structure to another in relatively easy ways. Furthermore, we can compare or combine different views to gain additional insights that are not available from a single view.

Construction and interpretation of granular structures A granular structure is interpreted and constructed through a pair of inverse operations called decomposing and synthesizing, representing two senses of granulation. A decomposing operation breaks one entity into a family of smaller constituent smaller entities. Inversely, a synthesizing operation combines a family of components into a larger unit. With reference to multiple levels of granularity, one expects that more details will be added when moving from a higher level to a lower level. Conversely, details will be removed when moving from a lower level to a higher level. The pair of operations may be interpreted as dividing and combining, refining and coarsening, zooming-in and zooming-out, segregating and integrating, or concretizing and abstracting.

In the literature of granular computing (Bargiela and Pedrycz 2002; Pedrycz 2013; Pedrycz and Chen 2011; Zadeh 1997), one typically focuses on an information processing aspect of granular computing and, hence, the associated concepts of information granulation and information granules. The theory of rough sets, proposed by  (Pawlak 1982, 1991, 1998), is an excellent example of information and knowledge granulation. Assume that a set of objects is described by using a set of attributes. According to their attribute values, objects are classified into equivalence classes so that an equivalence class consists of all objects having the same values. An equivalence class is a granule and the attribute values provide a description of the granule. By extending the basic ideas of rough sets, it is possible to study other types of granulation spaces and information granules. We briefly mention a few examples of such studies.  Polkowski and Skowron (2001) introduced a notion of rough inclusion to build a rough mereological calculi of granules. A measure of rough inclusion quantifies the degree to which a granule (i.e., a part) is a part of another granule (i.e., a whole).  Skowron and Stepaniuk (1998, 2005, 2014) introduced the notion of information granule systems based on the concept of rough inclusion, in which more complex information granules can be considered. They also suggested hybrid approaches to constructing complex information granules and a general methodology for inducing granules based on aggregation of data tables (Skowron and Stepaniuk 2005).  Bazan (2008) examined the problem of constructing information granules for hierarchical learning of spatio-temporal concepts. Nguyen et al. (1998) examined the problem of decomposing an information table in order to obtain a suitable level of granularity for data pattern discovery.

To some extent, a granule may be viewed as an abstraction or an aggregation, at a higher level, of a set of data from a lower level. That is, a granule at a higher level summarizes the commonalities of data from a lower level. From a data-driven point of view,  Pedrycz (2011) introduced a principle of justifiable granularity to guide the construction of a granular structure. A granule must be justified based on lower level data that supports the granule. The principle of minimum description length, proposed by  Rissanen (1978), offers another way to evaluating the quality of information granules.Footnote 1 According to the principle, a justifiable granule describes its support data with a minimum description length. It is also possible to construct abstract information granules in a framework of interactive granular computing (Nguyen and Skowron 2013; Skowron et al. 2016), based on an interaction with the physical word within the recently proposed framework of Wisdom Web of Things (W2T) Zhong et al. (2013) and Cyber-Physical Systems (Lee 2008).

Simplification offered by granular structures Granular structures lead to simplification; it is not surprising that basic ideas of granular computing are deeply rooted in human problem solving.  Hobbs (1985) nicely summarized this point as follows: “Our ability to conceptualize the world at different granularities and to switch among these granularities is fundamental to our intelligence and flexibility. It enables us to map the complexities of the world around us into simple theories that are computationally tractable to reason in.” For modeling complex systems, Simon (1962) argued, “Hierarchy ... is one of the central structural schemes that the architect of complexity uses.” Thus, our adoption of multilevel granular structures is motivated by a drive for simplification of complexity.

When building a granular structure, we use two types of operation. These operations are indeed based on well used heuristics. According to  Pólya (1945), “decomposing and recombining are important operations of the mind.” An application of the two heuristics to problem solving leads to the divide-and-conquer strategy. To motivate the introduction of granular computing,  Zadeh (1997) stated, “There are three basic concepts that underlie human cognition: granulation, organization and causation. Informally, granulation involves decomposition of whole into parts; organization involves integration of parts into whole; and causation involves association of causes with effects.” Our adoption of multilevel granular structures is consistent with human cognition.

The benefits and advantages of granular computing are results of simplification offered by a multilevel granular structure. The simplification normally results in a possibility of constructing solutions with acceptable quality in a much shorter time.

An example of granular structures We use a simple example to illustrate the notions of granules, levels, and two important concepts related to granular structures, namely, multilevel and multiview. Consider a scientific paper. We can immediately observe a granular structure (Flower and Hayes 1977; Yao 2007b). The title of the paper explains the thesis of the paper at the highest level of granularity. At the next level, section headings provide brief descriptions of several topics in support of the thesis. Proceeding to the next level, a section covering a particular topic is further supported by several subsection headings, serving as subtopics of the particular topic. Finally, the full text provides a detailed explanation at the lowest level of granularity. Title, section headings, subsection headings, and paragraphs describe granules at different levels. In this way, we obtain a multilevel understanding of a paper. We can easily switch from one level to another level.

A paper is structured in a particular way to describe a topic or a thesis. It offers only a single view to interpret the thesis of the paper. There typically exist many papers that describe the same thesis in many different ways and from difference angles. Each of them gives a different granular structure and reflects a particular view. If we pool a set of papers on the same thesis, we immediately see the notion of multiview. That is, a family of granular structures leads to a multiview understanding.

The preceding multilevel analysis of a paper serves well a function of understanding the thesis and the technical contents of the paper. If we are interested in pattern and language aspects, we may further decompose the paper based on a multilevel structure of language (Crystal 2006). That is, we may continually divide the paper into the sentence level, the phrase and word level, and finally the letter level. Sentences, phrases and words, and letters are granules at different levels. Two directions of granularity transformation can be observed. In a top-down manner, we decompose sentences into phrases, phrases into words, and words into letters. In a bottom-up manner, we combine a group of letters into a word, a group of words into a phrase, and a group of words and phrases into a sentence.

Further readings A more detailed description of a granular structure of integrative levels of granularity can be found in an earlier paper (Yao 2009). Our notion of a granular structure is adopted from the notion of a hierarchy used in systems theory (Ahl and Allen 1996; Pattee 1973; Salthe 1985; Whyte et al. 1969). The concept of levels and its central role across different disciplines and fields have been extensively discussed by many authors (Conger 1925; Feibleman 1954; Floridi 2008; Foster 1992; Novikoff 1945; Poli 1998). We briefly mention several studies that influence our understanding of levels.  Simon (1962) argued that a hierarchical structure is an effective architecture to deal with the complexity of large and complex systems.  Marr (1982) presented a three-level understanding of an information processing system, consisting of the computational theory level, the representation and algorithm level, and the hardware implementation level.  Newell (1982) introduced the concept of knowledge level as the medium of a system level that lies above the symbol or program level.  Wirth (1971) advanced a level-wise refinement methodology for computer programming.  Foster (1992) reviewed and compared various definitions and interpretations of the notion of levels in the context of algorithm design.  Craik and Lockhart (1972) proposed a level-based information processing framework for human memory.  Zhang et al. (2014) suggested a new paradigm of decision-making that involves decision entities at multiple levels.  Chen and Yao (2008) studied several multilevel granular structures derivable from the same data given in a tabular form, which offers a framework of multiview data analysis.

3 Granular computing: three pillars and goals

If we want to view granular computing as an emerging field of study or a new scientific discipline, we need to search for a flexible and general framework that allows us to investigate all aspects of granular computing. By following the principles of multilevel understanding and representation introduced in the last section, we can describe granular computing at multiple levels. On the other hand, the majority of existing research is at more concrete levels by focusing on specific models of granular computing. There is still a lack of investigations at a level that is suitable for treating granular computing as a new field of study. The triarchic theory of granular computing (Yao 2005, 2006, 2007a, 2008b, c, 2009, 2010) is proposed for such a purpose.

Granular computing triangle The triarchic theory is based on three pillars, namely, the philosophy, methodology and mechanism of granular computing. As shown by Fig. 2, the three components of granular computing form the granular computing triangle. The triangle emphasizes on the fact that each component supports, and at the same time is supported by, other two components. There does not exist a clear boundary that divides the three components. The triarchic theory interweaves philosophy, methodology and mechanism together into a unified framework (Yao 2008c). It aims at a comprehensive understanding of granular computing as a field of study in its own right. This is a major difference from other studies that focus on either a particular perspective on or a concrete mathematical model of granular computing.

Fig. 2
figure 2

The granular computing triangle

Instead of “mechanism,” previous papers Yao (2006, 2008b, c) used “computation” to label one of the three components. The double uses of “computing” in “granular computing” and “computation” as one component of granular computing seem a bit confusing. The former takes a wide sense of computing, embracing various forms and types of computing and including, for example, thinking, problem-solving, processing, operating, reasoning (e.g., deduction, induction, abduction, commonsense reasoning, and judgment) and so on. The latter takes a narrow sense of computing, concerning the mechanism that implements a particular computing task. In this paper, we make a distinction between the wide and narrow senses of computing and label the latter as the “mechanism” component of granular computing.

Purposes and goals of granular computing Granular computing studies nature-inspired and human-inspired structured ways and approaches to thinking, problem solving, and information processing (Yao 2010). Basic ideas and principles of granular computing have been used, either explicitly or implicitly, across many disciplines and fields. As an emerging field of study, granular computing reconsiders the wisdom of age in an attempt

  • to make implicit principles explicit,

  • to make invisible principles visible,

  • to make domain-specific principles domain-independent, and

  • to make subconscious effects conscious  (Yao 2007a).

At a methodological level, some of these efforts of granular computing are motivated by the similar reasons for the introduction of a general system theory. According to Bertalanffy (1950), general system theory is “an important means of controlling and instigating the transfer of principles from one field to another, and it will no longer be necessary to duplicate or triplicate the discovery of the same principles in different fields isolated from each other.” It is important to realize the we borrow the methodology in developing a general system theory, but not necessarily the contents. By applying the same methodology and argument, we want to extract principles of granular computing from different fields and apply them across many fields.

Granular computing can have two related purposes (Yao 2010). One purpose is to empower humans with granular computing strategies, principles, methods, and tools so that we become a better problem solver. Another purpose is to design and implement intelligent systems that adopt granular computing principles and toolkit. It may be pointed out that granular ways to information processing, while very natural to humans, have not been fully explored by machines (Yao 2010).

In the following sections, we examine in more details the three components of granular computing, namely, the philosophy of structured thinking, the methodology of structured problem solving, and the mechanism of structured information processing.

4 Philosophy of granular computing: structured granular thinking

To fully appreciate the value of granular computing and to promote further rigorous development, one must study the philosophical foundations of granular computing. It is difficult to pin down a precise definition of the philosophy of granular computing. We may say that granular computing is based on a worldview characterized by granular structures. In other words, granular computing focuses on structured understanding and representation with multiple levels of granularity. This standpoint draws extensively from other philosophical views, including, for example, reductionism (Chibbaro et al. 2014; Descartes 2007), systems thinking (Bertalanffy 1968; Capra 1997; Laszlo 1972; Mella 2007; Wuketits 1987), and levelism (Brown 1916; Floridi 2008; Foster 1992; Heil 203).

Reductionist thinking Reductionist thinking focuses on breaking a complex problem into relatively simpler parts and inferring properties of the whole by a summary of properties of its parts (Chibbaro et al. 2014; Descartes 2007). Important ideas involved in reductionist thinking are given by  Descartes (2007) as follows: (a) “to divide each of the difficulties ... into as many parts as possible and as might be required in order to resolve them better.” (b) “to direct ... thoughts in an orderly manner, by starting with the simplest and most easily known objects in order to move up gradually to knowledge of the most complex, and by stipulating some order even among objects that have no natural order of precedence.” (c) “to make all ... enumerations so complete, and ... reviews so comprehensive, that [we] ... hadn’t overlooked anything.” Reductionist thinking is an effective way of analytic thinking. In a top-down manner, a complex system or problem can be decomposed into many parts and these parts can be further divided if needed. When the top-down decomposition is applied to granular computing, a multilevel hierarchical granular structure may be derived. In a bottom-up manner, one may explain entities (i.e., granules) in an upper level based on entities in a lower level.

Systems thinking Systems thinking stresses on systemic properties of a whole system that are emerged from the composition, organization and interaction of its parts and cannot be reduced to the properties of its parts (Bertalanffy 1968; Capra 1997; Laszlo 1972; Mella 2007; Wuketits 1987). It offers a way of synthetic thinking for obtaining a holistic view of a system. According to Capra (1997), characteristics of systems thinking include (a) “the shift from the parts to the whole,” or “a shift from objects to relationships,” (b) “the ability to shift one’s attention back and forth between system levels,” and (c) “explaining things in terms of their context.” The ideas of different system levels are closely related to the notion of multiple levels of granularity. Thus, systems thinking can guide granular computing in a study of emergent properties at different levels of granularity.

Levelist thinking Levelism makes use of levels of abstraction and takes a hierarchical view that a complex problem may be divided and stratified into levels (Brown 1916; Floridi 2008; Foster 1992; Heil 203). The notion of levels may be interpreted in many different ways, including, for example, objective levels of reality, epistemological levels of understanding and explanation, methodological levels of study. If we interpret different levels in terms of their granularity, the ideas of levelism are immediately applicable to granular computing. The principle of multilevel of granular computing captures the ideas of levelism. Granular structures are stratified levels and levelist thinking leads to level-wise granular processing.

Granular thinking Each of the mentioned philosophical views has its advantages and suffers from its limitations. Instead of treating them as competing views, we emphasize on their commonality and complementary features. It seems that through the use of multilevel granular structures, we perhaps can identify basic ingredients common to reductionist thinking, systems thinking and levelist thinking. That is, all those philosophical views make effective use of multilevel description and understanding. Supported by granular structures, structured granular thinking takes advantage of those existing philosophical views, in order to develop a philosophical standpoint of granular computing.

5 Methodology of granular computing: structured granular problem solving

Programming is a very complicated problem solving task. Successes of many very large software systems have amply demonstrated the value of useful structures (Dijkstra n.d.) and the power of methodology of programming (Dahl et al. 1972; Ledgard et al. 1979; Wirth 1971). Analogously speaking, for the success of granular computing, we must pay attention to its methodology. The methodology of granular computing is centered in effective uses of granular structures. That is, granular computing is structured granular problem solving at multiple levels. An ordering of levels according to their granularity suggests several approaches, such as top-down, bottom-up and middle-out methods.

Top-down approaches A top-down approach works from higher levels of granularity downwards to lower levels of granularity. As we move towards lower levels, we can gradually add more details, in order to make an abstract description more concrete. We divide a larger granule at a higher level into a family of smaller granules at its adjacent lower level. Top-down approaches are analytic thinking. The correctness of a higher level is crucial to ensure the correctness of subsequent lower levels. Thus, as a prerequisite, we must have a global view or a conceptual understanding of the whole problem for correctly and appropriately describing the problem at higher levels of granularity. Top-down approaches are therefore interpreted as conceptually driven approaches (Lindsay and Norman 1977).

An advantage of top-down approaches is the possibility of postponement of details to lower levels. This enables us to focus on most important issues at high levels without the interference or the distraction of less relevant details. On the other hand, the prerequisite of a global understanding poses a challenge for applying a top-down approach. In many situations, we cannot easily have a global view of a whole problem unless we know some details of its components.

Bottom-up approaches A bottom-up approach works in a reverse direction, that is, from lower levels of granularity upwards to higher levels of granularity. It reflects synthetic thinking. We combine a family of smaller granules at a lower level into a single larger granule in its adjacent higher level. By extracting the most common and useful features, we can build a higher-level abstraction. Thus, bottom-up approaches are interpreted as data-driven approaches (Lindsay and Norman 1977).

An advantage of bottom-up approaches is that one can work on a set of simpler subproblems before assembling them into a larger problem. When working on a subprogram, we only need to have a local view, rather than a global view. This advantage is, at the same time, a disadvantage. Without the guidance of a higher level, working on a lower level may not necessarily be in the right direction.

Middle-out approaches Middle-out approaches have been suggested and used in many fields (Allen and Fulton 2010; Kinchla and Wolfe 1979; Shiu and Sin 2006). An middle-out approach starts with a particular level that best describes available knowledge, information, and understanding of a problem. It works upwards to higher levels and downwards to lower levels. In this way, middle-out approaches combine the advantages of both top-down and bottom-up approaches.

Hermeneutic circle and iterative approaches Hermeneutic circle is an important concept that describes a difficulty in understanding and interpreting a problem that involves parts and a whole. The basic ideas is that “our understanding of the parts hinges on our understanding of a larger whole, which, again, can only be understood on the basis of the parts” (Ramberg and Gjesdal 2005). Thus, we need to move back and forth between parts and the whole.

Granules at two adjacent levels exhibit a part–whole relationship. The principle of hermeneutic circle immediately applies. An understanding of a lower level depends on an understanding of its adjacent higher level, which in turn depends on an understanding of its lower level. This suggests that one cannot simply apply a top-down, a bottom-up or middle-out approach. Instead, one needs to iteratively apply the three approaches in many circles, with each circle providing a better understanding than its previous circle.

Granular problem solving In the context of computer programming,  Knuth (1984) gave an excellent characterization of top-down and bottom-up approaches: “Top-down programming gives you a strong idea of where you are going, but it forces you to keep a lot of plans in your head; suspense builds up because nothing is really nailed down until the end. Bottom-up programming has the advantage that you continually wield a more and more powerful pencil, as more and more subroutines have been constructed; but it forces you to postpone the overall program organization until the last minute, so you might flounder aimlessly.” Regarding the choice of a particular method, he advised, “... there is no need to choose once and for all between top-down and bottom-up, because a program is best thought of as a web instead of a tree. A hierarchical structure is present, but the most important thing about a program is its structural relationships. A complex piece of software consists of simple parts and simple relations between those parts; the programmer’s task is to state those parts and those relationships, in whatever order is best for human comprehension – not in some rigidly determined order like top-down or bottom-up.”

The remarks and advice of Knuth are equally, if not more, applicable to a study of the methodology of granular computing. The methodology of granular computing is structured granular problem solving by fully and naturally exploring the relationships between granules described by a granular structure. Instead of choosing a particular method, we may use different methods and combine several methods in various stages of problem solving.

6 Mechanism of granular computing: structured granular information processing

Granular computing is a paradigm of structured granular information processing.  Bargiela and Pedrycz (2002) introduced the name of “an information processing pyramid” to describe intuitively this type of information processing. Ultimately, the utility of granular computing can only be demonstrated by its mechanism of structured granular information processing.

Representation and process  Marr (1982) convincingly argued that representation and process are two fundamental notions in any information processing systems. A representation is a formal system that explicitly describes entities. Representations in granular computing must describe formally granules, levels, and multilevel granular structures. A process can be interpreted as actions that carry out information processing tasks. As suggested by the methodology of granular computing in the last section, we have at least three modes of processing: top-down, bottom-up and middle-out. Granular processing may be described by introducing more specific operations, such as downward refinement, upward coarsening, zoom-in, and zoom-out.

The actions of top-down refinement and bottom-up coarsening are not simple enlargement and contraction. A refinement operation adds details at the next lower level of granularity and may decompose a large granule into a family of smaller granules. Conversely, a coarsening operation removes details at the next higher level of granularity and may combine a family of granules into a single granule. With the change of granularity at different levels, one may use different languages for representation and processing.

There are close ties between different types of representations and different types of processes. A particular representation may be suitable for some operations but unsuitable for others. It is important to coordinate representations and processes by using granular structures.

Pandemonium architecture of granular computing  Selfridge (1959) proposed a Pandemonium architecture as a paradigm for pattern recognition and learning. Important features of the architecture are its simplicity and its parallelism. The Pandemonium architecture has been influential in several fields, including neural networks and cognitive psychology. For example,  Lindsay and Norman (1977) adopted Pandemonium architecture to explain human information processing.

To a large degree, the granular structure as depicted in Fig. 1 is inspired by the Pandemonium architecture. If we change granules in the figure into information processing demons, we will obtain a Pandemonium architecture. However, we will not perform such a change. Instead, we associate with each granule in a granular structure with an information processing demon. In this way, the Pandemonium architecture is used as an architecture of structured granular information processing in granular computing. With respect to granules of differing granularity, we have demons with differing processing power.

Structured granular information processing The mechanism of granular computing makes use of granular structures to implement structured granular information processing. With the Pandemonium architecture, we can formally represent granules, levels, and granular structures. The interactions between demons representing granules can be used to describe relationships between granules. It should be pointed out that we should also study other architectures for structured granular information processing.

Top-down progressive computing Top-down progressive computing is a mode of information processing based on a sequence of granulations and levels (Yao and Luo 2011). Suppose \(G_{1}\), \(G_{2}\), \(\cdots \), \(G_{n-1}\), \(G_{n}\) is a sequence of granulations, where \(G_{i}\) is a refinement of \(G_{i-1}\), \(i = 2, 3, \ldots , n\). In top-down progressive computing, one solves a problem in a sequence of multiple granulations one by one, from the coarsest granulation \(G_{1}\) to the finest granulation \(G_{n}\). More specifically, an approximate solution at a coarser granulation is fine-tuned at its next finer granulation. To describe a basic progressive computing algorithm, we consider the following basic ingredients:

  • Multiple representations of a problem.

  • Refinement operation on granulations.

  • Refinement operation on solutions.

  • Evaluation function.

A basic progressive computing (BPC) algorithm is given in Algorithm 1, where \(granulation\_refinement\) and \(solution\_refinement\) are granulation refinement and solution refinement operations, respectively. Initially, \(G_{0}\) and \(P_{0}\) are set as the values for granulation (G) and solution (P). Subsequently, BPC algorithm refines granulation and fine-tunes a solution. BPC algorithm uses a function fitness to evaluate a solution, and the process terminates once a satisfactory solution is found.

figure a

Granular computing through three-way decisions A theory of three-way decisions provides an effective way for decision-making (Yao 2012). Three-way decisions may be viewed as a natural product of granular computing (Yao 2013). The basic idea is that one can make either a positive or a negative decision for some objects at a particular level of granularity. For other objects, one may not be able to make such a definite decision and has to defer the decision to the next level of finer granularity.

Consider the decision of purchasing a book. The title, the table of contents, and the Introduction chapter of the book provide a description of the book at multiple levels of granularity. Figure  3 illustrates a sequential three-way decision based on multiple levels of granularity. We can make a decision of buying or not buying a book by looking at its title and cover. If we cannot make such a definite decision, we can further read the table of contents, which again leads to three-way decisions. We can continue the process by reading the Introduction chapter and so on.

Fig. 3
figure 3

Sequential three-way decisions

Interactive granular computing  Nguyen and Skowron (2013) and Skowron et al. (2016) introduced a framework of interactive granular computing as a general mechanism for problem solving. Their framework starts with an understanding of “computational building blocks” in terms of “complex granules” in the following statement by Valiant:Footnote 2 “A fundamental question for artificial intelligence is to characterize the computational building blocks that are necessary for cognition.” A group of agents and their teams can carry out interactive computations in complex systems in an open world. One can easily draw a correspondence between agents in the interactive granular computing framework and demons in the Pandemonium architecture. Thus, we may combine the two mechanisms of granular in terms of interactive agents/demons on behalf of granules or working on granules.

Two related studies are worthy of mentioning, one is the modular architecture of the mind in evolutionary psychology and the other is a simple conceptual model of a brain. In evolutionary psychology, the Massive Modularity Hypothesis suggests a modular architecture of the mind (Downes 2014). Modules are computational devices and our “successful navigation of the world results from the action of one or more of our many modules” (Downes 2014).  Minsky (2007) introduced a simple conceptual model of a brain that consists of many parts and each of them does certain specialized jobs. That is, we can “envision a mind (or a brain) as composed of a great many different ‘resources’.” Each of our mental states “results from turning certain resources on while turning certain others off” (Minsky 2007). If we draw a correspondence between computational modules, mental resources, and granules, we may see a possibility to study new mechanisms of granular computing.

7 Granular data analytics

So far, we have described the triarchic theory of granular computing at a high level, aiming for a conceptual understanding. The philosophy, methodology and mechanism are instrumental to problem solving and information processing and play an important guiding role in constructing concrete models. A specific model usually materializes and substantializes only certain aspects of the philosophy and methodology of granular computing. On the other hand, main stream of research on granular computing focuses on concrete models, particular methods, and special tools, without an explicit reference to its philosophical and methodological foundations. It will be a grand challenge to narrow this gap.

As an example of illustration, we introduce and discuss a notion of granular data analytics (GDA) based on ideas of multilevel and multiview of granular structures. Broadly speaking, granular data analytics focuses on a particular class of approaches to analyzing big data through the prism of granular structures, with an emphasis on multilevel and multiview understanding and processing of data. It makes use of multiple representations and interpretations of the same data at many levels of abstraction or granularity and from multiple viewpoints. With the aid of multilevel, granular data analytics explores structures of data, enabling a quick selection of valuable data sections and an easy switching between local, detailed and global, abstract representations of data. With the support of multiview, granular data analytics can meet a spectrum of diversified needs from a wide range of users. Through combinations and interactions of multiple views and multiple levels, granular data analytics may provide efficient and effective algorithms for bringing out values from big data.

On the one hand, granular data analytics embraces ideas from existing data analysis models such as, for example, hierarchical classification, hierarchical clustering, and multilevel analysis. On the other hand, a goal of granular data analytics is to integrate these methods within a unified framework of granular computing, as well as developing its own approaches to multilevel and multiview data analysis. In the light of granular data analytics, we review and comment on a few methods of data analysis.

Hierarchical classification and clustering One of the effective ways to analyze and understand data is to organize data hierarchically (Anderberg 1973; Pedrycz 2005). Using the terminology of granular computing, this involves dividing or clustering data items into granules with differing granularity and ordering granules according to their granularity hierarchically. Depending on the available knowledge and information, there are many types of hierarchical data analysis approaches. We consider hierarchical classification and clustering methods (Anderberg 1973) in the context of scientific document organization and retrieval.

Hierarchical classification is a supervised approach for situations where there is an established set of categories and essential attributes of each category are known. Many library hierarchical classification schemes have long been used in categorizing and organizing knowledge (Kumbhar 2012). Many disciplines have their own hierarchical classification schemes of subject matters. For example, the 2012 ACM Computing Classification SystemFootnote 3 is a “poly-hierarchical ontology.” Typically, such a hierarchical classification relies largely on the topics or contents of a document. Although very useful with respect to content management, its value for studying the evolution of scientific ideas or the interaction among scientists is limited. On the other hand, the introduction of citation analysis (Garfield 1979) organizes the same data hierarchically based on citation graphs, which serves well these purposes. A combination of a content-based analysis and a citation-based analysis offers a multiview understanding that cannot be achieved by any one of them.

Hierarchical clustering is an unsupervised method for situations where little information or nothing is known about a category structure. The main task is to inference a category structure based on the similarity or dissimilarity of data items. Items in the same cluster are similar to each other and are not similar to items in other clusters. Clusters in different levels reflect different degrees of similarity. Different similarity measures may be defined based on different sets of features and may reflect different semantics interpretations of the same data. In summary, different degrees of similarity lead to an understanding of the same data at multiple levels, and different similarity measures lead to an understanding from multiple views.

In granular data analytics, one combines hierarchical classification and hierarchical clustering. A crucial issue in hierarchical cluster analysis is to interpret, characterize, and describe a hierarchical organized clusters or granules. If successful, such a hierarchical structure may be used as a hierarchical ontology for hierarchical classification. At least, hierarchical clustering can make suggestions to the construction and revision of the ontology used by hierarchical classification. In the other direction, a hierarchical ontology may serve as the a priori knowledge for knowledge-based hierarchical clustering (Pedrycz 2005).

Multilevel and multiview granular data analytics plays an essential role in designing intelligent information processing systems. The notion of granular structures, used in both hierarchical classification and hierarchical clustering, has been explored in designing the next generation information retrieval systems and web search engines under the name of information retrieval support systems (Yao 2002).

Multilevel analysis Theories and techniques of multilevel analysis have been widely studied and applied in statistical analysis and many branches of social science (Hox 2010; Klein and Kozlowski 2000). It explores hierarchical, nested data or multilevel social systems. As discussed earlier, granular structures offer level-wise processing. It will be worthwhile to look at ideas from multilevel analysis and to adopt them to enrich granular data analytics.

According to  Hox (2010), multilevel analysis focuses on social research problems that involve the “relationship between individual and society.” In these problems, “individual persons are influenced by the social groups or contexts to which they belong, and ... the properties of those groups are in turn influenced by the individuals who make up that group.” One can easily see a high-level similarity between the individual–society relationship and the part–whole relationship of granules at two adjacent levels discussed earlier, as well as the relevance of Hermeneutic circle. It follows that the basic ideas of multilevel analysis can be immediately adopted as a general method for granular data analytics.

In multilevel analysis, one defines variables at any level of a hierarchy and studies the interaction, transformation and relationships of variables at different levels (Hox 2010). To borrow its basic ideas, we interpret the values of variables used in multilevel analysis as descriptions of granules and their relationships. In this way, we can have a general description of multilevel analysis for granular data analytics: global variables describe granules at a particular level; relational variables describe relationships between granules at the same level; analytical and structural variables are measured by referring to the sub-granules at a lower level (specifically, analytical variables are constructed from variables at a lower level, structural variables capture some distribution information about relational variable at a lower level); contextual variables provide the higher-level context of the granules under investigation. Transformation of variables between levels are done through aggregation and disaggregation. Aggregation moves variables at a lower level to a higher level, and disaggregation moves variables to a lower level. We can directly apply multilevel analysis to carry out tasks of granular statistical data analytics. By extending the vocabulary of multilevel analysis, it is possible to produce a more general theory of multilevel granular data analytics.

The notion of granular data analytics is an important application of granular computing. In this narrow context, we can have a more concrete understanding of various notions of the triarchic theory. However, this level of explanation is still insufficient to define precisely and formally these notions. It should be realized that how to implement high-level ideas of granular data analytics in specific models still remains a challenging task. We need to explain at several more levels of details.

In general, it is only possible to develop a concrete model with respect to a specific and narrow context. For example, for a detailed explanation of two multilevel analysis models, namely, a multilevel regression model and a multilevel structural equation model, a reader can consult the book by  Hox (2010). By following the formulation of the two models, one may build other models of multilevel analysis for granular data analytics.

8 Concluding remarks

To nurture a new field of study, it is necessary to ask some fundamental questions in a wider context. We must investigate similarities and differences between the new field and other existing fields. The enquiry of this paper attempts to serve such a purpose. Instead of looking at concrete models of granular computing at lower levels of granularity, we propose a conceptual framework to examine the philosophy, methodology and mechanism of granular computing at a much higher level. This line of study is different from and complementary to main stream research in granular computing. It may be an effective way to justify the existence of granular computing as a field of study in its own right.

A sustainable granular computing needs input from other related fields. A conceptual understanding of granular computing is too important to ignore. The high-level description in this paper is intended to provoke more discussions on fundamental issues of granular computing. It raises research questions, rather than providing answers. To compensate for a lack of details, we provide references to many related fields. A careful examination of granular computing across multiple fields and disciplines is worthy of further efforts.