From different online communities of opportunistic social networks, message application users carrying high-tech devices must present some different actions, such as executing conversations, subscribing to information, interactions and mutual following, posting and reposting, publishing advertisements or following applications. As a consequence, these message application users attempt to gather more effective information associated with social attributes from their neighbor nodes so that an accurate message routing-forwarding decision will be achieved. The detailed fuzzy pattern recognition process for node classification is implemented based on three steps, including data quantification, structure construction, and pattern recognition.

#### 3.2.1. Information Quantification and Determining Membership Degrees for Fuzzy Input

In OSNs, nodes with multiple different social attributes in unknown online communities try to communicate with each other, so their social attribute characteristics form a strong basis for position locating and data transmission. In general, node profile contains several important social attributes of message application users. To implement a high-performance data transmission process, the FPRDM model reasonably adopts the node profile of message application users to evaluate the special connection relationship between neighbor nodes and destinations.

Specifically, as shown in

Figure 1, message application users usually embody multiple different social attributes, such as interests, specialities, physical characteristics, workplaces or residence places. For each attribute of the

$nod{e}_{x}$, we define a feature vector as a container that is used to load the related and valuable information, and the feature vector is shown as

where

${X}_{1},{X}_{2},{X}_{3},{X}_{4}\cdots {X}_{n}$ represent

n different social attributes of the message application user

$nod{e}_{x}$, and

n is the number of social attributes of mobile nodes in the networks. By extension, each of these social attributes can be refined into a smaller eigenvector

$e{i}_{nod{e}_{x}}\left(X\right)$.

Moreover, when the user

$nod{e}_{x}$ contains the same feature value as a destination, the corresponding value of the eigenvector is set to 1, otherwise to 0. For example, if the feature vector of interest is defined as

$e{i}_{nod{e}_{x}}\left(interest\right)=\{movie,basketball,music,game,book\}$, and the user

$nod{e}_{x}$ likes movie, music and book as well as the destinations, then this feature vector could be rigorously initialized to

$e{i}_{nod{e}_{x}}\left(interest\right)=\{1,0,1,0,1\}$. For the sake of the identifiability of the FPRDM system, we set the module length of each feature vector as the fuzzy input of this system, which is obtained by

in which

$F{I}_{nod{e}_{x}}\left(i\right)$, namely the quantization vector, denotes different fuzzy inputs of the FPRDM system. Acquired from message application users in the OSNs, the data information associated with social attributes of mobile users is translated from text into a digital format that can be read, recognized, utilized and processed by this system.

Originating from the theory of fuzzy control engineering, the fuzzy inference system is able to transform the piecewise function into some curves, thereby making a vague judgement on the transmission priority of each node in the OSNs. After the process of ambiguity resolution, the specific digital value could be regarded as an accurate assessment foundation for message routing and forwarding decision-making. Refer to the traditional and classical Mamdani fuzzy control system, which is a highly extensible and applicable fuzzy inference model. The FPRDM system model [

29] could be established using three continuous components, including Fuzzifier, Fuzzy Inference, and Defuzzifier. Next, a detailed description of the three fuzzy components will be presented in the following sections.

As shown in

Figure 1,

$F{I}_{nod{e}_{x}\left(i\right)}$, a specified queue defined by Equation (

2) is regarded as the fuzzy input of fuzzy pattern recognition and decision-making system, and it is also the discourse domain of variable fuzzy subsets in this system model, further we adopt tripartite method to define three different levels of membership subsets (

$low$,

$medium$ and

$high$). Moreover, these related initialization definitions could be formalized as

where

$M{D}_{low}\left(F{I}_{nod{e}_{x}}\left(i\right)\right),M{D}_{medium}\left(F{I}_{nod{e}_{x}}\left(i\right)\right),M{D}_{high}\left(F{I}_{nod{e}_{x}}\left(i\right)\right)$, which respectively correspond to

$low$,

$medium$ and

$high$ fuzzy subsets, are three different grades of membership degrees for the quantization vector

$F{I}_{nod{e}_{x}}\left(i\right)$. As shown in

Figure 1, for each message application user

$nod{e}_{x}$, this system will generate a corresponding quantization vector. In addition, for each level of membership function, the quantization vector

$F{I}_{nod{e}_{x}}\left(i\right)$ simultaneously generates

n different corresponding membership degrees. The fuzzy subsets

${\tilde{A}}_{low}$,

${\tilde{A}}_{medium}$ and

${\tilde{A}}_{high}$ are regarded as an evaluation set and the fuzzy inputs are considered as a factor set in the proposed routing strategy, so the mathematical mapping from fuzzy input

$F{I}_{nod{e}_{x}}\left(i\right)$ to fuzzy subsets could be defined as

On the basis of the theory of tripartite method, when

$\forall e{i}_{x}\in R$, Equation (

4) could be expanded as

where

$\mu $ represents a demarcation point between

$low$ and

$medium$ membership degrees, and

$\eta $ is another demarcation point between

$medium$ and

$high$ membership degrees. Furthermore,

${\tilde{A}}_{low}$,

${\tilde{A}}_{medium}$ and

${\tilde{A}}_{high}$ denote the determined

$low$,

$medium$ and

$high$ membership function, respectively.

Accordingly, it is essential for us to define three different levels of membership functions ${\tilde{A}}_{low}$, ${\tilde{A}}_{medium}$ and ${\tilde{A}}_{high}$ for the quantization vector $F{I}_{nod{e}_{x}}\left(i\right)$ based on the application of the tripartite method, which shows a general mathematical symmetry. In theory, there exist many membership function references in fuzzy control mathematics, such as trapezoidal distribution and semi-trapezoidal distribution, K-order parabolic distribution, Cauchy distribution, normal distribution, and Ridge distribution.

Naturally, in opportunistic social networks, high-tech mobile device users come to generate a large amount of data when accessing the application platform, including social, mobile, behavioral, physical characteristics and a large amount of text information. Generally, when message application users are in urban areas, relatively developed communication infrastructures contribute to a high-speed and stable network environment. Therefore, the frequent communication among mobile nodes in an online community is likely to generate a great amount of social information. On the contrary, poor and dated communication infrastructures in suburbs or remote areas may result in congested, slow and intermittent communications between mobile users [

1], hence there will be less social information about mobile users in this type of network environment. Furthermore, hot issues, novel topics, popular entertainment, and public preferences are the areas that the public is deeply concerned about, even though the distinction in age, occupation, and gender may lead to a slight difference in attention. Through strict data analysis and theoretical proof, the data related to social attributes that come from message application users should be subject to a relatively standard normal distribution [

2].

Consequently, through referring to the normal distribution membership functions in a traditional fuzzy control system and the existing data distribution model in opportunistic mobile social networks,

${\tilde{A}}_{low}$,

${\tilde{A}}_{medium}$ and

${\tilde{A}}_{high}$ could be strictly calculated by

in which

${a}_{1}$,

${a}_{2}$ and

${a}_{3}$ represent three different levels of location parameters, and

${\sigma}_{1}$,

${\sigma}_{2}$ and

${\sigma}_{3}$ denote the scale parameter for the

$low$,

$medium$ and

$high$ membership functions

${F}_{{\tilde{A}}_{low}}$,

${F}_{{\tilde{A}}_{medium}}$ and

${F}_{{\tilde{A}}_{high}}$, respectively. As exhibited in

Figure 2a–c, when the quantization vector changes over time,

$low$,

$medium$ and

$high$ membership functions present different curves and the codomain is always between 0 and 1. Eventually, the trend of these three membership functions depends on the location parameter and scale parameter, which could be determined by the distribution of the data obtained from message application users.

#### 3.2.2. Fuzzy Pattern Recognition for Node Classification in Opportunistic Mobile Social Networks

In opportunistic mobile social networks, two message application users, which possess a relatively high social similarity between them, are more likely to be in the same online community, and information communication between them is expected to be more frequent. Therefore, a user with a high social similarity to the destination should be a reliable relay node in the data transmission process. Then, the process of pattern recognition for node classification employs fuzzy inference logic to evaluate the social similarity between mobile users, so as to select some suitable relay nodes for message routing and forwarding, and eventually achieves an efficient and sustainable data transmission link.

For effectively assessing the pattern recognition results of node classification, we define the membership degree of each quantization vector as

${\underline{A}}_{mn}$, in which

m represents different levels of membership subsets and

n denotes different fuzzy input values. Thereupon, each fuzzy subset could be represented by

n different fuzzy inputs, which is mathematically quantified as

where

${\underline{A}}_{mn}\left(F{I}_{nod{e}_{x}}\left(i\right)\right)$ indicates the membership degree of

$F{I}_{nod{e}_{x}}\left(i\right)$ from the membership subset

$M{D}_{m}$. In a traditional fuzzy inference system, the goal of the defuzzifier component is to convert fuzzy membership subsets and membership degrees into an accurate judgment value. As a commonly-used approach to calculate the membership degree in a traditional fuzzy inference system [

6], maximum membership principle means the membership degree of each level (low, medium, and high) is equal to the maximum membership of

n quantization vectors from the corresponding level. Consequently, the membership degree

${\underline{A}}_{m}\left(F{I}_{nod{e}_{x}}\left(i\right)\right)$ of fuzzy input

$F{I}_{nod{e}_{x}}\left(i\right)$ for membership subset

$M{D}_{m}\left(F{I}_{nod{e}_{x}}\left(i\right)\right)$ could be calculated by

Generally, there are several paradigms of defuzzification strategies in a fuzzy inference system, such as center of area (CoA) or mean of maximum (MoM) [

29]. The maximum membership principle will be regarded as the defuzzification method in the proposed algorithm due to its expansibility. Based on that, the membership degree of fuzzy control result

${D}_{nod{e}_{x}}$ for pattern recognition of

$nod{e}_{x}$ classification could be expressed as the union of three different membership degrees that correspond to three different levels of membership subsets, which is shown as

After determining the threshold K accurately, we can compare ${D}_{nod{e}_{x}}$ with K to evaluate whether the $nod{e}_{x}$ is a suitable relay node. To be specific, when the value of ${D}_{nod{e}_{x}}$ is greater than or equal to K, the $nod{e}_{x}$ may be an appropriate next hop; otherwise, the node may not be suitable to participate in the process of message routing and forwarding.