DNFS-VNE: Deep Neuro Fuzzy System Driven Virtual Network Embedding

Ailing Xiao ID , , Ning Chen ID , , Sheng Wu ID , ,
Peiying Zhang ID , , Linling Kuang ID , , Chunxiao Jiang ID
This work is partially supported by the National Natural Science Foundation of China under Grant 62341104, 62325108, and 62341131; partially supported by BUPT Excellent Ph.D. Students Foundation under Grant CX20241074; partially supported by the R&D Program of Bei**g Municipal Education Commission under Grant KM202110009004; partially supported by Start-up Fund for Newly Introduced Teacher under Grant BUPT2024RC01; partially supported by the Natural Science Foundation of Shandong Province under Grant ZR2023LZH017 and ZR2022LZH015. (Corresponding author:Sheng Wu.) Ailing Xiao, Ning Chen, and Sheng Wu are with School of Information and Communication Engineering, Bei**g University of Posts and Telecommunications, Bei**g 100876, China (e-mails: [email protected], [email protected], [email protected]).Peiying Zhang is with Qingdao Institute of Software, College of Computer Science and Technology, China University of Petroleum (East China), Qingdao 266580, China (e-mail: [email protected]). Linling Kuang and Chunxiao Jiang are with Tsinghua Space Center, Tsinghua University, and also with the Bei**g National Research Center for Information Science and Technology, Tsinghua University, Bei**g 100084, China (e-mails: [email protected], [email protected]).
Abstract

By decoupling substrate resources, network virtualization (NV) is a promising solution for meeting diverse demands and ensuring differentiated quality of service (QoS). In particular, virtual network embedding (VNE) is a critical enabling technology that enhances the flexibility and scalability of network deployment by addressing the coupling of Internet processes and services. However, in the existing deep neural networks (DNNs)-based works, the black-box nature DNNs limits the analysis, development, and improvement of systems. For example, in the industrial Internet of Things (IIoT), there is a conflict between decision interpretability and the opacity of DNN-based methods. In recent times, interpretable deep learning (DL) represented by deep neuro fuzzy systems (DNFS) combined with fuzzy inference has shown promising interpretability to further exploit the hidden value in the data. Motivated by this, we propose a DNFS-based VNE algorithm that aims to provide an interpretable NV scheme. Specifically, data-driven convolutional neural networks (CNNs) are used as fuzzy implication operators to compute the embedding probabilities of candidate substrate nodes through entailment operations. And, the identified fuzzy rule patterns are cached into the weights by forward computation and gradient back-propagation (BP). Moreover, the fuzzy rule base is constructed based on Mamdani-type linguistic rules using linguistic labels. In addition, the DNFS-driven five-block structure-based policy network serves as the agent for deep reinforcement learning (DRL), which optimizes VNE decision-making through interaction with the environment. Finally, the effectiveness of evaluation indicators and fuzzy rules is verified by simulation experiments.

Index Terms:
Network Virtualization, Virtual Network Embedding, Industrial Internet of Things, Deep Neuro Fuzzy Systems, Interpretable AI, Deep Reinforcement Learning

I Introduction

I-A Background and Motivation

Network virtualization (NV) is the primary solution to Internet rigidity through the slicing and decoupling of network functions, applications, and services [1, 2, 3]. Through virtual network embedding (VNE) technology, infrastructure providers (InPs) can supply multiple sets of network services (which are defined as virtual network requests, VNRs) for multiple sets of Internet service providers (ISPs) to satisfy the needs of the network in terms of plurality, diversification, personalization, and high quality of service (QoS) [4].

Deep learning (DL) techniques, represented by deep neural networks (DNNs), have been maturely applied to various fields and successfully solved various industrial problems [5, 6]. Up to now, the existing VNE algorithms are all based on artificial intelligence (AI) community methods, and all of them have also achieved good results [7]. However, due to their black-box nature, DNNs lack an interpretable exploration of data association, which limits the analysis and development of systems [8]. For example, in the Industrial Internet of Things (IIoT), although there are some advanced resource allocation methods [2], the need for interpretability of decisions is becoming increasingly prominent, which not only helps to improve the transparency and interpretability of the system but also enhances researchers’ trust in decisions, thereby optimizing resource utilization efficiency and reducing potential risks. The fuzzy system is a system that defines input, output, and state variables on fuzzy sets. It can mimic human comprehensive inference to deal with fuzzy information processing problems that are difficult to solve by conventional mathematical methods [9]. A comparison of the two is shown in Table I, and it can be found that each has advantages and disadvantages in the expression, storage, application, and acquisition of knowledge. Therefore, fuzzy neural networks (FNNs) combine fuzzy systems with DNNs, fully taking into account the complementary nature of the two, and show excellent results in dealing with large-scale fuzzy application problems [10]. This class of systems based on the hybrid approach of FNNs is called deep neuro fuzzy systems (DNFS), which combines logical reasoning, linguistic computation, and nonlinear dynamics, and has the capabilities of learning, association, recognition, adaptive and fuzzy information processing [11], etc. To elaborate the potential associations to further explore the hidden value in the data, DNFS is widely used in various scientific researches such as communications, transportation, healthcare, etc., and exhibits higher interpretability and better decision-making [12].

TABLE I: Comparison of deep neural networks and fuzzy system.
Comparison Neural Networks Fuzzy System
Basic Composition Multiple neurons Fuzzy rule
Knowledge Acquisition Samples, algorithm examples Expert knowledge, logical reasoning
Knowledge Representation Distributed representation Membership function
Reasoning Mechanism Learning function self-control, parallel computing, fast speed Combination of fuzzy rules, heuristic search, slow speed
Reasoning Operation Superposition of neurons Operation of membership function
Adaptability Learning by adjusting weights, high fault tolerance Inductive learning, low fault tolerance
Advantage Self-organization, high fault tolerance and generalization ability Can use expert experience, easy to understand, less calculation
Disadvantages Black-box model, difficult to understand, heavy calculation Difficult to learn, increased fuzziness in the reasoning process

Based on the above motivations, a DNFS-based VNE algorithm (DNFS-VNE) is proposed in this work to enhance the interpretability of the technique, clarify hidden patterns and associations, and facilitate system development. To our knowledge, this is one of the first explorations of the interpretability of the VNE algorithm using DNFS.

I-B Overview of Related Work

The VNE algorithms in the current researches mainly consist of two categories, namely heuristic strategies and AI-based strategies [13]. Among them, heuristic strategies employ numerical optimization algorithms such as mixed integer programming (MIP), dynamic programming, and so on [2]. AI-based strategies employ reinforcement learning (RL), deep reinforcement learning (DRL), and other AI algorithms with powerful nonlinear fitting capabilities to better model the mathematical problem, dynamic characterization, and decision optimization of complex physical environments [14].

I-B1 Heuristic Strategies

The most classical algorithm to rank the substrate nodes based on their network topology and resource attributes applying the Markov Random Walk model was proposed by Cheng et al. [15]. And, they presented such node topology-aware VNE algorithm: NodeRank-VNE. In addition, they used the shortest path algorithm and breadth-first search (BFS) for virtual network embedding, respectively. Another classic algorithm is the MIP-based VNE algorithm proposed by Chowdhury et al. [16]. In this algorithm, the VNE problem is formulated as MIP, and two VNE algorithms, D-ViNE and R-ViNE, are designed by using deterministic and randomized rounding by relaxing the integer constraints. It is worth noting that these studies aim to maximize acceptance rate and revenue of the VNE algorithm. Moreover, it is proved that VNE is a typical NP-hard optimization problem. Since previous works lacked consideration of storage resource constraints, and efficient utilization of storage resources can alleviate bandwidth consumption, one of our previous works [17] firstly proposed a VNE strategy based on 3D resource constraints of network, computing, and storage. Specifically, two heuristic VNE algorithms are designed based on the node map** strategy: NRM-VNE and RCR-VNE.

Although heuristic strategies provided an effective solution for the early VNEs, such strategies have been difficult to apply to today’s complex and variable substrate networks. Moreover, these static VNE algorithms assume that the VNR is known, which is impractical for time-varying service requests in networks. Moreover, the artificially customized embedding rules used limit the effectiveness of the strategy.

I-B2 AI-based Strategies

For the problem that traditional VNE algorithms following static mechanisms are difficult to adapt to dynamic substrate network environments and some RL-assisted VNE algorithms ignore the continuity of node embedding, Yao et al. [18] proposed an RL-based continuous decision-making VNE algorithm (CDRL). Specifically, this work converts the continuous node embedding process into a recurrent neural network (RNN)-based complex time-series problem and updates the parameters using a policy gradient algorithm. The final results demonstrate the superiority of CDRL in terms of evaluation metrics.

In previous works, RL and DL provide better decision-making and perception for VNE algorithms, respectively. In addition, the emerging DRL combines the advantages of both by extracting environmental features through the nonlinear fitting ability of DNNs and guiding algorithm optimization through the interaction of the agent with the environment and incorporating feedback from reward mechanisms [19]. Therefore, the DRL paradigm has been the mainstream means of VNE algorithms in recent years [20]. Aiming at the problem that the algorithm needs to detect complex dynamic environments and provide automatic embedding solutions time-varyingly during runtime, Yan et al. [4] proposed an automatic VNE algorithm combining GCN and DRL. The algorithm designs a multi-objective function and a parallel DRL architecture, and the results show that it has superior performance and robustness. To improve the resource utilization of vehicular fog computing networks, one of our previous works proposed a DRL-based VNE algorithm incorporating spectral graph theory [21]. Specifically, a four-layer policy network based on spectral graph convolution was designed to compute the embedding probability of the substrate nodes, and optimization was guided by formulated reward signals. In addition, to address the real-time, dynamic, and privacy issues of the substrate network, a VNE algorithm based on horizontal federated learning was proposed for the first time in our previous work [22]. Specifically, the server and the DRL model are respectively deployed in the global domain and the local domain. Among them, the global is responsible for aggregating and sharing parameters, and the local is responsible for focusing on local resource optimization, which significantly improves the algorithm efficiency while ensuring privacy.

Although AI-based VNE algorithms are a big step forward from heuristic algorithms in terms of algorithmic dynamics and performance, the black-box nature of these AI-strategy restricts the exploration of the interpretability of potential data associations of the VNE algorithms, which limits the improvement and development of the related systems. As a result, the VNE community awaits an attempt at interpretable algorithms.

I-C Contribution

To summarise, the innovations and contributions of this work are as follows:

1. Targeting research on multi-domain substrate networks, based on the DNFS paradigm, we propose the DNFS-VNE structure with five blocks. Specifically, we employ a DL model based on convolutional neural networks (CNNs) as a data-driven fuzzy implication operator for entailment operations. Further, based on the policy gradient algorithm, the DNFS-driven five-block structure acts as the agent for DRL to optimize decision-making by interacting with the environment.

2. DNFS-VNE outputs inferred membership values, which are then aggregated and defuzzified to derive the embedding probabilities of substrate nodes. Furthermore, the identified fuzzy rule patterns are cached into weights by forward computation and gradient back-propagation. And, the fuzzy rule base is constructed by Mamdani-type linguistic rules between the antecedent layer and the consequent layer of the CNN-based fuzzy rule implication branch, using a set of linguistic labels to elucidate fuzzy implication principles.

3. Experiment verification demonstrates that DNFS-VNE outperforms other algorithms in terms of long-term average revenue, long-term average revenue-cost ratio, and VNR acceptance success rate, all of which are widely employed in VNE. More importantly, DNFS-VNE provides an interpretable solution to the previous black-box model of the VNE.

The content of this work is organized as follows: in Section II, the problem definition, problem modeling, DNFS paradigm, and related indicators have been presented; in Section III, the model details have been introduced, including model composition and learning process; in Section IV, we have performed simulation experimental verification and analysis; Finally, in Section V, we have summarised and looked forward this work.

II Problem Definition and Modelling

As mentioned earlier, the main goal of VNE is to efficiently decouple substrate network resources for allocation to different VNRs. In terms of quantitative indicators, the main purpose of VNE is to improve the algorithm acceptance rate and revenue and reduce cost.

II-A Problem Definition

Refer to caption
Figure 1: Schematic diagram of the VNE process that the VNRs of two users are embedded into the substrate network, where the numbers indicate the relevant network metrics.

A schematic diagram of the VNE process in which two users’ VNRs are embedded into the substrate network is shown in Fig. 1. From the figure, it can be found that for the ISP, when a user makes a service request, it creates VNRs that satisfy the corresponding demand (e.g., the numbers in the figure). For the InP, under the premise of the limited substrate network resources, it should respond to as many requests as possible and as reasonably as possible when a stable network flow sends service requests. Therefore, the VNE problem is defined as a problem of how to allocate the limited substrate network resources to VNRs more efficiently and reasonably. In addition, the VNE problem is obviously an NP-hard problem [23, 21]. Therefore, many researchers are constantly trying novel solutions, exploring and figuring out.

II-B Problem Modelling

TABLE II: Related notations definition.
Network Notation Definition
Substrate Network 𝖲𝖲\mathsf{S}sansserif_S 𝒏𝒏\boldsymbol{n}bold_italic_n Substrate nodes
𝒍𝗂𝗇𝗍𝗋𝖺subscript𝒍𝗂𝗇𝗍𝗋𝖺\boldsymbol{l}_{\mathsf{intra}}bold_italic_l start_POSTSUBSCRIPT sansserif_intra end_POSTSUBSCRIPT Intra-domain substrate links
𝒍𝗂𝗇𝗍𝖾𝗋subscript𝒍𝗂𝗇𝗍𝖾𝗋\boldsymbol{l}_{\mathsf{inter}}bold_italic_l start_POSTSUBSCRIPT sansserif_inter end_POSTSUBSCRIPT Inter-domain substrate links
𝒓𝗇subscript𝒓𝗇\boldsymbol{r}_{\mathsf{n}}bold_italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT Resource of substrate nodes
𝒓𝗅subscript𝒓𝗅\boldsymbol{r}_{\mathsf{l}}bold_italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT Resource of substrate links
Virtual Network Request 𝖵𝖵\mathsf{V}sansserif_V 𝒏𝗏subscript𝒏𝗏\boldsymbol{n}_{\mathsf{v}}bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT Virtual nodes
𝒍𝗏subscript𝒍𝗏\boldsymbol{l}_{\mathsf{v}}bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT Virtual links
𝒓𝗇,𝗏subscript𝒓𝗇𝗏\boldsymbol{r}_{\mathsf{n,v}}bold_italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT Resource of virtual nodes
𝒓𝗅,𝗏subscript𝒓𝗅𝗏\boldsymbol{r}_{\mathsf{l,v}}bold_italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT Resource of virtual links

Targeting research on widely used multi-domain substrate networks, to study the VNE problem, it is necessary to model the network to clarify the process of the problem. Specifically, the related notations definition used in this work is displayed in Table II. Among them, both the substrate network and the i𝑖iitalic_i-th VNR are modeled as weighted undirected graphs, as follows,

𝒮𝒮\displaystyle\mathcal{S}caligraphic_S ={𝒏,𝒍𝗂𝗇𝗍𝗋𝖺,𝒍𝗂𝗇𝗍𝖾𝗋,𝒓𝗇,𝒓𝗅},absent𝒏subscript𝒍𝗂𝗇𝗍𝗋𝖺subscript𝒍𝗂𝗇𝗍𝖾𝗋subscript𝒓𝗇subscript𝒓𝗅\displaystyle=\{\boldsymbol{n},\boldsymbol{l}_{\mathsf{intra}},\boldsymbol{l}_% {\mathsf{inter}},\boldsymbol{r}_{\mathsf{n}},\boldsymbol{r}_{\mathsf{l}}\},= { bold_italic_n , bold_italic_l start_POSTSUBSCRIPT sansserif_intra end_POSTSUBSCRIPT , bold_italic_l start_POSTSUBSCRIPT sansserif_inter end_POSTSUBSCRIPT , bold_italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT , bold_italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT } , (1)
𝒱(i)𝒱𝑖\displaystyle\mathcal{V}(i)caligraphic_V ( italic_i ) ={𝒏𝗏(i),𝒍𝗏(i),𝒓𝗇,𝗏(i),𝒓𝗅,𝗏(i)}.absentsubscript𝒏𝗏𝑖subscript𝒍𝗏𝑖subscript𝒓𝗇𝗏𝑖subscript𝒓𝗅𝗏𝑖\displaystyle=\{\boldsymbol{n}_{\mathsf{v}}(i),\boldsymbol{l}_{\mathsf{v}}(i),% \boldsymbol{r}_{\mathsf{n,v}}(i),\boldsymbol{r}_{\mathsf{l,v}}(i)\}.= { bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) , bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) , bold_italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i ) , bold_italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i ) } . (2)

Furthermore, similar to previous works, we use computing (denoted as c𝑐citalic_c) resources as an example to represent node resource attributes and bandwidth (denoted as w𝑤witalic_w) resources as an example to represent link resource attributes.

Therefore, as analyzed above, the VNE problem can be modeled abstractly as follows,

fori=1,2,,|𝖵|:𝒮𝒱(i)(fromti𝗌toti𝖾),:for𝑖12𝖵superscript𝒮𝒱𝑖fromsuperscriptsubscript𝑡𝑖𝗌tosuperscriptsubscript𝑡𝑖𝖾\displaystyle\text{for}\ i=1,2,\cdots,|\mathsf{V}|:\mathcal{S}^{\prime}% \rightarrow\mathcal{V}(i)(\text{from}\ t_{i}^{\mathsf{s}}\ \text{to}\ t_{i}^{% \mathsf{e}}),for italic_i = 1 , 2 , ⋯ , | sansserif_V | : caligraphic_S start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT → caligraphic_V ( italic_i ) ( from italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_s end_POSTSUPERSCRIPT to italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_e end_POSTSUPERSCRIPT ) , (3)

where |𝖵|𝖵|\mathsf{V}|| sansserif_V | indicates the number of VNRs, 𝒮superscript𝒮\mathcal{S}^{\prime}caligraphic_S start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT indicates the subset of the substrate network, 𝒱(i)𝒱𝑖\mathcal{V}(i)caligraphic_V ( italic_i ) indicates the i𝑖iitalic_i-th VNR, and ti𝗌superscriptsubscript𝑡𝑖𝗌t_{i}^{\mathsf{s}}italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_s end_POSTSUPERSCRIPT and ti𝖾superscriptsubscript𝑡𝑖𝖾t_{i}^{\mathsf{e}}italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_e end_POSTSUPERSCRIPT indicate the start time and end time of the 𝒱(i)𝒱𝑖\mathcal{V}(i)caligraphic_V ( italic_i ) life cycle, respectively. To sum up, in other words, the VNE process is to effectively allocate part of the substrate network equipment and resources to each VNR within its life cycle to meet the corresponding network service requirements.

Refer to caption
Figure 2: Schematic diagram of the corresponding relationship between substrate resources and virtual resources.

It should be noted that in multi-layer nested virtualization scenarios since the lowest-level network resources are physical, the substrate network resources may also be virtual. However, its resource allocation can be easily derived from the general scenario, so these cases are not considered in this work. In addition, the substrate network resource can be hosted in multiple virtual networks as long as sufficient resources can be allocated and related constraints are met. It can be found that the correspondence between substrate nodes and virtual nodes is 1:n:1𝑛1:n1 : italic_n, as shown in Case 1111 in Fig. 2. Moreover, a virtual link map** may span multiple substrate links, so the correspondence between substrate links and virtual links is n:m:𝑛𝑚n:mitalic_n : italic_m, as shown in Case 2222 in Fig. 2.

II-C DNFS Paradigm

Refer to caption
Figure 3: The five-layer feed-forward network structure of DNFS.

The most studied and most applied solution in the existing work is to customize DNFS as a five-layer feed-forward network structure. The specific structure is shown in Fig. 3, where each layer is,

  • Layer 1111: Input layer. The number of nodes is the number of input variables;

  • Layer 2222: Fuzzification layer. It is the membership function layer of the input variables to realize the fuzzy of the input variables. For example, the size of fuzzy sets for x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and x2subscript𝑥2x_{2}italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are m𝑚mitalic_m and n𝑛nitalic_n, respectively;

  • Layer 3333: Fuzzy rule layer. Each node in this layer is only connected to a unique node in each fuzzy set. The number of nodes in this layer is the number of fuzzy rules. For example, there are m×n𝑚𝑛m\times nitalic_m × italic_n nodes;

  • Layer 4444: Defuzzification layer. This layer is fully connected and the number of nodes is the number q𝑞qitalic_q of fuzzy divisions of the output variable;

  • Layer 5555: Output layer, also known as the clarity layer. This layer is a fully connected layer whose number of nodes is the number of output variables.

Therefore, DNFS essentially uses the learning method of DNNs to automatically design and adjust the design parameters of the fuzzy system according to the input and output learning samples, to realize the self-learning and self-adaptive functions of the fuzzy system.

II-D General Evaluation Indicators

As mentioned earlier, improving the algorithm acceptance rate and revenue and reducing cost are the optimization goals of the VNE algorithm [23, 24]. That is, more resource allocation revenue is obtained with less substrate network resource cost. Therefore, the following equations are used to intuitively measure cost and revenue for 𝒱(i)𝒱𝑖\mathcal{V}(i)caligraphic_V ( italic_i ),

ζi(ti𝗌,ti𝖾)=j=1j=|𝒏𝗏(i)|r𝗇,𝗏(i,j)+k=1k=|𝒍𝗏(i)|h×r𝗅,𝗏(i,k),=j=1j=|𝒏𝗏(i)|c𝗇,𝗏(i,j)+k=1k=|𝒍𝗏(i)|h×w𝗅,𝗏(i,k),subscript𝜁𝑖superscriptsubscript𝑡𝑖𝗌superscriptsubscript𝑡𝑖𝖾absentsuperscriptsubscript𝑗1𝑗subscript𝒏𝗏𝑖subscript𝑟𝗇𝗏𝑖𝑗superscriptsubscript𝑘1𝑘subscript𝒍𝗏𝑖subscript𝑟𝗅𝗏𝑖𝑘missing-subexpressionabsentsuperscriptsubscript𝑗1𝑗subscript𝒏𝗏𝑖subscript𝑐𝗇𝗏𝑖𝑗superscriptsubscript𝑘1𝑘subscript𝒍𝗏𝑖subscript𝑤𝗅𝗏𝑖𝑘\displaystyle\ \begin{aligned} \zeta_{i}(t_{i}^{\mathsf{s}},t_{i}^{\mathsf{e}}% )&=\sum_{j=1}^{j=|\boldsymbol{n}_{\mathsf{v}}(i)|}{r}_{\mathsf{n},\mathsf{v}}(% i,j)+\sum_{k=1}^{k=|\boldsymbol{l}_{\mathsf{v}}(i)|}h\times{r}_{\mathsf{l},% \mathsf{v}}(i,k),\\ &=\sum_{j=1}^{j=|\boldsymbol{n}_{\mathsf{v}}(i)|}{c}_{\mathsf{n},\mathsf{v}}(i% ,j)+\sum_{k=1}^{k=|\boldsymbol{l}_{\mathsf{v}}(i)|}h\times{w}_{\mathsf{l},% \mathsf{v}}(i,k),\end{aligned}start_ROW start_CELL italic_ζ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_s end_POSTSUPERSCRIPT , italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_e end_POSTSUPERSCRIPT ) end_CELL start_CELL = ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) + ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_h × italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_c start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) + ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_h × italic_w start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) , end_CELL end_ROW (4)
ξi(ti𝗌,ti𝖾)=j=1j=|𝒏𝗏(i)|r𝗇,𝗏(i,j)+k=1k=|𝒍𝗏(i)|r𝗅,𝗏(i,k),=j=1j=|𝒏𝗏(i)|c𝗇,𝗏(i,j)+k=1k=|𝒍𝗏(i)|w𝗅,𝗏(i,k),subscript𝜉𝑖superscriptsubscript𝑡𝑖𝗌superscriptsubscript𝑡𝑖𝖾absentsuperscriptsubscript𝑗1𝑗subscript𝒏𝗏𝑖subscript𝑟𝗇𝗏𝑖𝑗superscriptsubscript𝑘1𝑘subscript𝒍𝗏𝑖subscript𝑟𝗅𝗏𝑖𝑘missing-subexpressionabsentsuperscriptsubscript𝑗1𝑗subscript𝒏𝗏𝑖subscript𝑐𝗇𝗏𝑖𝑗superscriptsubscript𝑘1𝑘subscript𝒍𝗏𝑖subscript𝑤𝗅𝗏𝑖𝑘\displaystyle\ \begin{aligned} \xi_{i}(t_{i}^{\mathsf{s}},t_{i}^{\mathsf{e}})&% =\sum_{j=1}^{j=|\boldsymbol{n}_{\mathsf{v}}(i)|}{r}_{\mathsf{n},\mathsf{v}}(i,% j)+\sum_{k=1}^{k=|\boldsymbol{l}_{\mathsf{v}}(i)|}{r}_{\mathsf{l},\mathsf{v}}(% i,k),\\ &=\sum_{j=1}^{j=|\boldsymbol{n}_{\mathsf{v}}(i)|}{c}_{\mathsf{n},\mathsf{v}}(i% ,j)+\sum_{k=1}^{k=|\boldsymbol{l}_{\mathsf{v}}(i)|}{w}_{\mathsf{l},\mathsf{v}}% (i,k),\end{aligned}start_ROW start_CELL italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_s end_POSTSUPERSCRIPT , italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_e end_POSTSUPERSCRIPT ) end_CELL start_CELL = ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) + ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_c start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) + ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) , end_CELL end_ROW (5)

where Eq. 4 and Eq. 5 denote the resource cost and revenue required for i𝑖iitalic_i-th VNR embedding, respectively. 𝒓𝗇,𝗏(i)={r𝗇,𝗏(i,1),r𝗇,𝗏(i,2),,r𝗇,𝗏(i,|𝒏𝗏(i)|)}subscript𝒓𝗇𝗏𝑖subscript𝑟𝗇𝗏𝑖1subscript𝑟𝗇𝗏𝑖2subscript𝑟𝗇𝗏𝑖subscript𝒏𝗏𝑖\boldsymbol{r}_{\mathsf{n},\mathsf{v}}(i)=\{{r}_{\mathsf{n},\mathsf{v}}(i,1),{% r}_{\mathsf{n},\mathsf{v}}(i,2),\cdots,{r}_{\mathsf{n},\mathsf{v}}(i,{|% \boldsymbol{n}_{\mathsf{v}}(i)|})\}bold_italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i ) = { italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , 1 ) , italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , 2 ) , ⋯ , italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_i , | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | ) }, where |𝒏𝗏(i)|subscript𝒏𝗏𝑖|\boldsymbol{n}_{\mathsf{v}}(i)|| bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | indicates the number of virtual nodes in i𝑖iitalic_i-th VNR. 𝒓𝗅,𝗏(i)={r𝗅,𝗏(i,1),r𝗅,𝗏(i,2),,r𝗅,𝗏(i,|𝒍𝗏(i)|)}subscript𝒓𝗅𝗏𝑖subscript𝑟𝗅𝗏𝑖1subscript𝑟𝗅𝗏𝑖2subscript𝑟𝗅𝗏𝑖subscript𝒍𝗏𝑖\boldsymbol{r}_{\mathsf{l},\mathsf{v}}(i)=\{{r}_{\mathsf{l},\mathsf{v}}(i,1),{% r}_{\mathsf{l},\mathsf{v}}(i,2),\cdots,{r}_{\mathsf{l},\mathsf{v}}(i,{|% \boldsymbol{l}_{\mathsf{v}}(i)|})\}bold_italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i ) = { italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , 1 ) , italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , 2 ) , ⋯ , italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT ( italic_i , | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | ) }, where |𝒍𝗏(i)|subscript𝒍𝗏𝑖|\boldsymbol{l}_{\mathsf{v}}(i)|| bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | indicates the number of virtual links in i𝑖iitalic_i-th VNR. It should be noted that hhitalic_h denotes the path hops of this virtual link in the substrate network. This is mainly due to the fact that the virtual link may span multiple substrate links, and thus its required link resource is equal to the sum of all substrate link resources on the path. In addition, it is important to note that only the successful response of the current VNR produces costs and revenues.

Moreover, this work adopts evaluation indicators widely used by VNE: long-term average revenue, long-term average revenue-cost ratio, and VNR acceptance success rate, as shown in Eq. 6, Eq. 7, and Eq. 8, respectively. Among them, the long-term average revenue is expressed as the integral ratio of the revenue to time of all VNRs. The long-run average revenue-cost ratio is expressed as the integral ratio of revenue to cost of all VNRs. The VNR acceptance success rate is expressed as the integral ratio of successfully accepted VNRs to all VNRs. In addition, according to the expression of the equations, it is known that the performance of the algorithm can be reflected by the change of the evaluation indicator, and the larger its value, the better the performance.

ξ~=i=1i=|𝖵|(limTt=0t=Tξi(t)𝑑tT)=i=1i=|𝖵|(limΔt0n=1ξi(nΔt)Δtn=1nΔt),~𝜉absentsubscriptsuperscript𝑖𝖵𝑖1subscript𝑇subscriptsuperscript𝑡𝑇𝑡0subscript𝜉𝑖𝑡differential-d𝑡𝑇missing-subexpressionabsentsubscriptsuperscript𝑖𝖵𝑖1subscriptΔ𝑡0subscriptsuperscript𝑛1subscript𝜉𝑖𝑛Δ𝑡Δ𝑡subscriptsuperscript𝑛1𝑛Δ𝑡\displaystyle\ \ \ \ \ \begin{aligned} \tilde{\xi}&=\sum^{i=|{\mathsf{V}}|}_{i% =1}\left(\lim_{T\rightarrow\infty}\frac{\int^{t=T}_{t=0}\xi_{i}(t)\ {d}t}{T}% \right)\\ &=\sum^{i=|{\mathsf{V}}|}_{i=1}\left(\lim_{\Delta t\rightarrow 0}\frac{\sum^{% \infty}_{n=1}\xi_{i}(n\Delta t)\ \Delta t}{\sum^{\infty}_{n=1}n\Delta t}\right% ),\end{aligned}start_ROW start_CELL over~ start_ARG italic_ξ end_ARG end_CELL start_CELL = ∑ start_POSTSUPERSCRIPT italic_i = | sansserif_V | end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT ( roman_lim start_POSTSUBSCRIPT italic_T → ∞ end_POSTSUBSCRIPT divide start_ARG ∫ start_POSTSUPERSCRIPT italic_t = italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) italic_d italic_t end_ARG start_ARG italic_T end_ARG ) end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∑ start_POSTSUPERSCRIPT italic_i = | sansserif_V | end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT ( roman_lim start_POSTSUBSCRIPT roman_Δ italic_t → 0 end_POSTSUBSCRIPT divide start_ARG ∑ start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_n roman_Δ italic_t ) roman_Δ italic_t end_ARG start_ARG ∑ start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT italic_n roman_Δ italic_t end_ARG ) , end_CELL end_ROW (6)
η=i=1i=|𝖵|(limTt=0t=Tξi(t)𝑑tt=0t=Tζi(t)𝑑t)=i=1i=|𝖵|(limΔt0n=1ξi(nΔt)Δtn=1ζi(nΔt)Δt),𝜂absentsubscriptsuperscript𝑖𝖵𝑖1subscript𝑇subscriptsuperscript𝑡𝑇𝑡0subscript𝜉𝑖𝑡differential-d𝑡subscriptsuperscript𝑡𝑇𝑡0subscript𝜁𝑖𝑡differential-d𝑡missing-subexpressionabsentsubscriptsuperscript𝑖𝖵𝑖1subscriptΔ𝑡0subscriptsuperscript𝑛1subscript𝜉𝑖𝑛Δ𝑡Δ𝑡subscriptsuperscript𝑛1subscript𝜁𝑖𝑛Δ𝑡Δ𝑡\displaystyle\ \ \ \ \ \begin{aligned} \eta&=\sum^{i=|{\mathsf{V}}|}_{i=1}% \left(\lim_{T\rightarrow\infty}\frac{\int^{t=T}_{t=0}\xi_{i}(t)\ {d}t}{\int^{t% =T}_{t=0}\zeta_{i}(t)\ {d}t}\right)\\ &=\sum^{i=|{\mathsf{V}}|}_{i=1}\left(\lim_{\Delta t\rightarrow 0}\frac{\sum^{% \infty}_{n=1}\xi_{i}(n\Delta t)\ \Delta t}{\sum^{\infty}_{n=1}\zeta_{i}(n% \Delta t)\ \Delta t}\right),\end{aligned}start_ROW start_CELL italic_η end_CELL start_CELL = ∑ start_POSTSUPERSCRIPT italic_i = | sansserif_V | end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT ( roman_lim start_POSTSUBSCRIPT italic_T → ∞ end_POSTSUBSCRIPT divide start_ARG ∫ start_POSTSUPERSCRIPT italic_t = italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) italic_d italic_t end_ARG start_ARG ∫ start_POSTSUPERSCRIPT italic_t = italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT italic_ζ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) italic_d italic_t end_ARG ) end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = ∑ start_POSTSUPERSCRIPT italic_i = | sansserif_V | end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT ( roman_lim start_POSTSUBSCRIPT roman_Δ italic_t → 0 end_POSTSUBSCRIPT divide start_ARG ∑ start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_n roman_Δ italic_t ) roman_Δ italic_t end_ARG start_ARG ∑ start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT italic_ζ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_n roman_Δ italic_t ) roman_Δ italic_t end_ARG ) , end_CELL end_ROW (7)
γ=limTt=0t=Tϑ(t)𝑑tt=0t=TΘ(t)𝑑t=limΔt0n=1ϑ(nΔt)Δtn=1Θ(nΔt)Δt,𝛾absentsubscript𝑇subscriptsuperscript𝑡𝑇𝑡0italic-ϑ𝑡differential-d𝑡subscriptsuperscript𝑡𝑇𝑡0Θ𝑡differential-d𝑡missing-subexpressionabsentsubscriptΔ𝑡0superscriptsubscript𝑛1italic-ϑ𝑛Δ𝑡Δ𝑡superscriptsubscript𝑛1Θ𝑛Δ𝑡Δ𝑡\displaystyle\ \ \ \ \ \begin{aligned} \gamma&=\lim_{T\rightarrow\infty}\frac{% \int^{t=T}_{t=0}\vartheta(t)\ {d}t}{\int^{t=T}_{t=0}\Theta(t)\ {d}t}\\ &=\lim_{\Delta t\rightarrow 0}\frac{\sum_{n=1}^{\infty}\vartheta(n\Delta t)\ % \Delta t}{\sum_{n=1}^{\infty}\Theta(n\Delta t)\ \Delta t},\end{aligned}start_ROW start_CELL italic_γ end_CELL start_CELL = roman_lim start_POSTSUBSCRIPT italic_T → ∞ end_POSTSUBSCRIPT divide start_ARG ∫ start_POSTSUPERSCRIPT italic_t = italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT italic_ϑ ( italic_t ) italic_d italic_t end_ARG start_ARG ∫ start_POSTSUPERSCRIPT italic_t = italic_T end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT roman_Θ ( italic_t ) italic_d italic_t end_ARG end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL = roman_lim start_POSTSUBSCRIPT roman_Δ italic_t → 0 end_POSTSUBSCRIPT divide start_ARG ∑ start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_ϑ ( italic_n roman_Δ italic_t ) roman_Δ italic_t end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT roman_Θ ( italic_n roman_Δ italic_t ) roman_Δ italic_t end_ARG , end_CELL end_ROW (8)
ϑ=i=1i=|𝖵|(j=1j=|𝒏𝗏(i)|αnn𝗏(i,j)×k=1k=|𝒍𝗏(i)|βll𝗏(i,k)),italic-ϑsuperscriptsubscript𝑖1𝑖𝖵superscriptsubscriptproduct𝑗1𝑗subscript𝒏𝗏𝑖superscriptsubscript𝛼𝑛subscript𝑛𝗏𝑖𝑗superscriptsubscriptproduct𝑘1𝑘subscript𝒍𝗏𝑖superscriptsubscript𝛽𝑙subscript𝑙𝗏𝑖𝑘\displaystyle\ \ \begin{aligned} \vartheta=\sum_{i=1}^{i=|{\mathsf{V}}|}(\prod% _{j=1}^{j=|\boldsymbol{n}_{{\mathsf{v}}}(i)|}\alpha_{n}^{n_{{\mathsf{v}}}(i,j)% }\times\prod_{k=1}^{k=|\boldsymbol{l}_{{\mathsf{v}}}(i)|}\beta_{l}^{l_{{% \mathsf{v}}}(i,k)}),\end{aligned}start_ROW start_CELL italic_ϑ = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i = | sansserif_V | end_POSTSUPERSCRIPT ( ∏ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_α start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) end_POSTSUPERSCRIPT × ∏ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | end_POSTSUPERSCRIPT italic_β start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) end_POSTSUPERSCRIPT ) , end_CELL end_ROW (9)
αnn𝗏(i,j)={1,n𝗏(i,j)successfully embedded inn,0,others,superscriptsubscript𝛼𝑛subscript𝑛𝗏𝑖𝑗cases1subscript𝑛𝗏𝑖𝑗successfully embedded in𝑛0others\displaystyle\alpha_{n}^{n_{{\mathsf{v}}}(i,j)}=\begin{cases}1,&n_{{\mathsf{v}% }}(i,j)\ \text{successfully embedded in}\ n,\\ 0,&\text{others},\end{cases}italic_α start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) end_POSTSUPERSCRIPT = { start_ROW start_CELL 1 , end_CELL start_CELL italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) successfully embedded in italic_n , end_CELL end_ROW start_ROW start_CELL 0 , end_CELL start_CELL others , end_CELL end_ROW (10)
βll𝗏(i,k)={1,l𝗏(i,k)successfully embedded inl,0,others,superscriptsubscript𝛽𝑙subscript𝑙𝗏𝑖𝑘cases1subscript𝑙𝗏𝑖𝑘successfully embedded in𝑙0others\displaystyle\beta_{l}^{l_{{\mathsf{v}}}(i,k)}=\begin{cases}1,&l_{{\mathsf{v}}% }(i,k)\ \text{successfully embedded in}\ l,\\ 0,&\text{others},\end{cases}italic_β start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) end_POSTSUPERSCRIPT = { start_ROW start_CELL 1 , end_CELL start_CELL italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) successfully embedded in italic_l , end_CELL end_ROW start_ROW start_CELL 0 , end_CELL start_CELL others , end_CELL end_ROW (11)

where ϑitalic-ϑ\varthetaitalic_ϑ represents the number of successfully accepted VNRs, ΘΘ\Thetaroman_Θ represents the number of all VNRs, and l𝑙litalic_l is a collective term for l𝗂𝗇𝗍𝗋𝖺subscript𝑙𝗂𝗇𝗍𝗋𝖺l_{\mathsf{intra}}italic_l start_POSTSUBSCRIPT sansserif_intra end_POSTSUBSCRIPT and l𝗂𝗇𝗍𝖾𝗋subscript𝑙𝗂𝗇𝗍𝖾𝗋l_{\mathsf{inter}}italic_l start_POSTSUBSCRIPT sansserif_inter end_POSTSUBSCRIPT.

III Algorithm Design of DNFS-VNE

Entailment is the core of the fuzzy system, which implies the logical cause-and-effect relationship, expressing reasoning or deductive logic [25]. In traditional fuzzy systems, entailment is realized by fuzzy implication operators, such as Min operator, Max operator, and so on [26]. It is realized in the form of an affirmative antecedent argument, as follows,

(A=True)(AB=True)B=True,𝐴True𝐴𝐵True𝐵True(A=\text{True})\wedge(A\rightarrow B=\text{True})\Rightarrow B=\text{True},( italic_A = True ) ∧ ( italic_A → italic_B = True ) ⇒ italic_B = True , (12)

It should be noted that assuming that Asuperscript𝐴A^{\prime}italic_A start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is a subset of A𝐴Aitalic_A, the fuzzy implication operator calculates the membership value of Asuperscript𝐴A^{\prime}italic_A start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, and the fuzzy rules infer Bsuperscript𝐵B^{\prime}italic_B start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT according to Asuperscript𝐴A^{\prime}italic_A start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, where Bsuperscript𝐵B^{\prime}italic_B start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is a subset of B𝐵Bitalic_B. However, for elements that are not in the subset of A𝐴Aitalic_A, it often leads to poor triggering effects of fuzzy rules. Therefore, this traditional fuzzy system is highly dependent on empirical knowledge, which requires training data and fuzzy rules to sufficiently cover possible test scenarios, that is, the reasoning space is required to be large enough. However, this situation is impractical for complex network environments.

Based on the inspiration of DNFS, in order to achieve self-learning, self-adaptation, self-reasoning, etc., of the VNE algorithms, this work aims to use classical DL-model convolutional neural networks (CNNs) to implement the fuzzy implication operator of the traditional fuzzy system and thus realize the implication operation. It is worth stating that its output will be the membership value of the fuzzy set of the subsequent defuzzification layer.

III-A Model Composition

Refer to caption
Figure 4: The policy network diagram of the proposed DNFS-VNE algorithm.

Based on the general paradigm of DNFS shown in Fig. 3, the policy network diagram of the proposed DNFS-VNE algorithm is shown in Fig. 4. Specifically, it also contains five blocks, which are the input block, fuzzification block, fuzzy rule block, defuzzification block, and output block. The specific details of each block are as follows:

III-A1 Input block

This block focuses on extracting the substrate network information and constructing the feature matrix. Same as in previous works [22, 27, 28, 18], the following information is selected as the substrate node feature information:

Available node resources: the available node resource of the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ) is denoted as,

r𝗇𝖺(i)subscriptsuperscript𝑟𝖺𝗇𝑖\displaystyle{r}^{\mathsf{a}}_{\mathsf{n}}(i)italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) =r𝗇(i)j=1j=|𝖵|k=1k=|𝒏𝗏(j)|αn(i)n𝗏(j,k)×r𝗇,𝗏(j,k)absentsubscript𝑟𝗇𝑖superscriptsubscript𝑗1𝑗𝖵superscriptsubscript𝑘1𝑘subscript𝒏𝗏𝑗superscriptsubscript𝛼𝑛𝑖subscript𝑛𝗏𝑗𝑘subscript𝑟𝗇𝗏𝑗𝑘\displaystyle={r}_{\mathsf{n}}(i)-\sum_{j=1}^{j=|{\mathsf{V}}|}\sum_{k=1}^{k=|% \boldsymbol{n}_{{\mathsf{v}}}(j)|}\alpha_{n(i)}^{n_{{\mathsf{v}}}(j,k)}\times{% r}_{\mathsf{n},{\mathsf{v}}}(j,k)= italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) - ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | sansserif_V | end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_j ) | end_POSTSUPERSCRIPT italic_α start_POSTSUBSCRIPT italic_n ( italic_i ) end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_j , italic_k ) end_POSTSUPERSCRIPT × italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_j , italic_k ) (13)
=c𝗇(i)j=1j=|𝖵|k=1k=|𝒏𝗏(j)|αn(i)n𝗏(j,k)×c𝗇,𝗏(j,k),absentsubscript𝑐𝗇𝑖superscriptsubscript𝑗1𝑗𝖵superscriptsubscript𝑘1𝑘subscript𝒏𝗏𝑗superscriptsubscript𝛼𝑛𝑖subscript𝑛𝗏𝑗𝑘subscript𝑐𝗇𝗏𝑗𝑘\displaystyle={c}_{\mathsf{n}}(i)-\sum_{j=1}^{j=|{\mathsf{V}}|}\sum_{k=1}^{k=|% \boldsymbol{n}_{{\mathsf{v}}}(j)|}\alpha_{n(i)}^{n_{{\mathsf{v}}}(j,k)}\times{% c}_{\mathsf{n},{\mathsf{v}}}(j,k),= italic_c start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) - ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j = | sansserif_V | end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_j ) | end_POSTSUPERSCRIPT italic_α start_POSTSUBSCRIPT italic_n ( italic_i ) end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_j , italic_k ) end_POSTSUPERSCRIPT × italic_c start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT ( italic_j , italic_k ) ,

where 𝒓𝗇={r𝗇(1),r𝗇(2),,r𝗇(|𝒏|)}subscript𝒓𝗇subscript𝑟𝗇1subscript𝑟𝗇2subscript𝑟𝗇𝒏\boldsymbol{r}_{\mathsf{n}}=\{{r}_{\mathsf{n}}(1),{r}_{\mathsf{n}}(2),\cdots,{% r}_{\mathsf{n}}({|\boldsymbol{n}|})\}bold_italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( 1 ) , italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( 2 ) , ⋯ , italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( | bold_italic_n | ) }, |𝒏|𝒏|\boldsymbol{n}|| bold_italic_n | indicates the number of substrate nodes.

Available link resources: it is expressed as the sum of available bandwidths connected to the substrate nodes. The available link resource of the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ) is denoted as,

r𝗅𝖺(i)=l(i,j)r𝗅(i,j)=l(i,j)w𝗅(i,j),subscriptsuperscript𝑟𝖺𝗅𝑖subscriptfor-all𝑙𝑖𝑗subscript𝑟𝗅𝑖𝑗subscriptfor-all𝑙𝑖𝑗subscript𝑤𝗅𝑖𝑗\displaystyle{r}^{\mathsf{a}}_{\mathsf{l}}(i)=\sum_{\forall{l({i,j})}}{r}_{% \mathsf{l}}(i,j)=\sum_{\forall{l({i,j})}}{w}_{\mathsf{l}}(i,j),italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_i ) = ∑ start_POSTSUBSCRIPT ∀ italic_l ( italic_i , italic_j ) end_POSTSUBSCRIPT italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_i , italic_j ) = ∑ start_POSTSUBSCRIPT ∀ italic_l ( italic_i , italic_j ) end_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_i , italic_j ) , (14)

where 𝒓𝗅={r𝗅(1),r𝗅(2),,r𝗅(|𝒍|)}subscript𝒓𝗅subscript𝑟𝗅1subscript𝑟𝗅2subscript𝑟𝗅𝒍\boldsymbol{r}_{\mathsf{l}}=\{{r}_{\mathsf{l}}(1),{r}_{\mathsf{l}}(2),\cdots,{% r}_{{\mathsf{l}}}({|\boldsymbol{l}|})\}bold_italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( 1 ) , italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( 2 ) , ⋯ , italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( | bold_italic_l | ) }, |𝒍|𝒍|\boldsymbol{l}|| bold_italic_l | indicates the number of substrate links, and l(i,j)𝑙𝑖𝑗l({i,j})italic_l ( italic_i , italic_j ) represents the links between substrate nodes n(i)𝑛𝑖n(i)italic_n ( italic_i ) and n(j)𝑛𝑗n(j)italic_n ( italic_j ).

Average distance: it is expressed as the average path length from the substrate node to other nodes. The larger its value, the greater the bandwidth occupied by the links passing through this node. The average distance of the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ) to other substrate nodes is denoted as,

d(i)=l(i,j)l(i)l(j)21+h(i,j),𝑑𝑖subscriptfor-all𝑙𝑖𝑗subscriptnorm𝑙𝑖𝑙𝑗21𝑖𝑗{d}(i)=\frac{\sum_{\forall{l({i,j})}}\|{l}(i)-{l}(j)\|_{2}}{1+h({i,j})},italic_d ( italic_i ) = divide start_ARG ∑ start_POSTSUBSCRIPT ∀ italic_l ( italic_i , italic_j ) end_POSTSUBSCRIPT ∥ italic_l ( italic_i ) - italic_l ( italic_j ) ∥ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG start_ARG 1 + italic_h ( italic_i , italic_j ) end_ARG , (15)

where l(i)𝑙𝑖{l}(i)italic_l ( italic_i ) denotes the location of the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ), l(j)𝑙𝑗{l}(j)italic_l ( italic_j ) denotes the location of the substrate node n(j)𝑛𝑗n(j)italic_n ( italic_j ), h(i,j)𝑖𝑗h(i,j)italic_h ( italic_i , italic_j ) denotes the hops of the links between substrate nodes n(i)𝑛𝑖n(i)italic_n ( italic_i ) and n(j)𝑛𝑗n(j)italic_n ( italic_j ), and \| denotes the Euclidean distance.

To eliminate the scale difference between various features, the input data is normalized using max-min normalization. This process maps the different data ranges into a uniform scale range, as follows,

x^=xmin(𝒙)max(𝒙)min(𝒙),^𝑥𝑥min𝒙max𝒙min𝒙\hat{x}=\frac{x-\text{min}(\boldsymbol{x})}{\text{max}(\boldsymbol{x})-\text{% min}(\boldsymbol{x})},over^ start_ARG italic_x end_ARG = divide start_ARG italic_x - min ( bold_italic_x ) end_ARG start_ARG max ( bold_italic_x ) - min ( bold_italic_x ) end_ARG , (16)

where 𝒙=[x1,x2,,x|𝒏|]T𝒙superscriptsubscript𝑥1subscript𝑥2subscript𝑥𝒏T\boldsymbol{x}=[x_{1},x_{2},\cdots,x_{|\boldsymbol{n}|}]^{\text{T}}bold_italic_x = [ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT | bold_italic_n | end_POSTSUBSCRIPT ] start_POSTSUPERSCRIPT T end_POSTSUPERSCRIPT, min()min\text{min}()min ( ) represents the minimum value of the vector, and max()max\text{max}()max ( ) represents the maximum value of the vector.

Thus, the input information is matrixed as follows,

𝐗=[𝒙^1𝒙^2𝒙^|𝒏|]=[r^𝗇𝖺(1)r^𝗅𝖺(1)d^(1)r^𝗇𝖺(2)r^𝗅𝖺(2)d^(2)r^𝗇𝖺(|𝒏|)r^𝗅𝖺(|𝒏|)d^(|𝒏|)].𝐗matrixsubscript^𝒙1subscript^𝒙2subscript^𝒙𝒏matrixsuperscriptsubscript^𝑟𝗇𝖺1superscriptsubscript^𝑟𝗅𝖺1^𝑑1superscriptsubscript^𝑟𝗇𝖺2superscriptsubscript^𝑟𝗅𝖺2^𝑑2superscriptsubscript^𝑟𝗇𝖺𝒏superscriptsubscript^𝑟𝗅𝖺𝒏^𝑑𝒏\displaystyle\mathbf{X}=\begin{bmatrix}\hat{\boldsymbol{x}}_{1}\\ \hat{\boldsymbol{x}}_{2}\\ \vdots\\ \hat{\boldsymbol{x}}_{|\boldsymbol{n}|}\end{bmatrix}=\begin{bmatrix}\hat{r}_{% \mathsf{n}}^{\mathsf{a}}(1)&\hat{r}_{\mathsf{l}}^{\mathsf{a}}(1)&\hat{{d}}(1)% \\ \hat{r}_{\mathsf{n}}^{\mathsf{a}}(2)&\hat{r}_{\mathsf{l}}^{\mathsf{a}}(2)&\hat% {{d}}(2)\\ \vdots&\vdots&\vdots\\ \hat{r}_{\mathsf{n}}^{\mathsf{a}}(|\boldsymbol{n}|)&\hat{r}_{\mathsf{l}}^{% \mathsf{a}}(|\boldsymbol{n}|)&\hat{{d}}(|\boldsymbol{n}|)\\ \end{bmatrix}.bold_X = [ start_ARG start_ROW start_CELL over^ start_ARG bold_italic_x end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL over^ start_ARG bold_italic_x end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL over^ start_ARG bold_italic_x end_ARG start_POSTSUBSCRIPT | bold_italic_n | end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] = [ start_ARG start_ROW start_CELL over^ start_ARG italic_r end_ARG start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT ( 1 ) end_CELL start_CELL over^ start_ARG italic_r end_ARG start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT ( 1 ) end_CELL start_CELL over^ start_ARG italic_d end_ARG ( 1 ) end_CELL end_ROW start_ROW start_CELL over^ start_ARG italic_r end_ARG start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT ( 2 ) end_CELL start_CELL over^ start_ARG italic_r end_ARG start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT ( 2 ) end_CELL start_CELL over^ start_ARG italic_d end_ARG ( 2 ) end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL ⋮ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL over^ start_ARG italic_r end_ARG start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT ( | bold_italic_n | ) end_CELL start_CELL over^ start_ARG italic_r end_ARG start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT ( | bold_italic_n | ) end_CELL start_CELL over^ start_ARG italic_d end_ARG ( | bold_italic_n | ) end_CELL end_ROW end_ARG ] . (17)

III-A2 Fuzzification block

This block involves fuzzification of the input data through a Gaussian membership function, which converts it into a fuzzy representation. The calculation is based on the distance between the input data x𝑥xitalic_x and the center point c𝑐citalic_c, where smaller distances result in larger membership values. As the distance increases, the membership value decreases until it reaches 00. Here are the specifics,

(x)=exp{(xc)22σ2},𝑥superscript𝑥𝑐22superscript𝜎2\mathcal{F}(x)=\exp\left\{-\frac{(x-c)^{2}}{2\sigma^{2}}\right\},caligraphic_F ( italic_x ) = roman_exp { - divide start_ARG ( italic_x - italic_c ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG 2 italic_σ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG } , (18)

where (x)𝑥\mathcal{F}(x)caligraphic_F ( italic_x ) denotes the membership value corresponding to the input value x𝑥xitalic_x, c𝑐citalic_c denotes the centroid of the membership function, and σ𝜎\sigmaitalic_σ denotes the width of the membership function. In this work, we utilize the clustering algorithm [29] to determine the centroids of clusters as c𝑐citalic_c and utilize the standard deviation as σ𝜎\sigmaitalic_σ.

It should be noted that, as described in Section II-C, the fuzzy representation represents a method for processing uncertain information, including fuzzy sets and membership values. Wherein, the fuzzy set is utilized to express and process imprecise information in a fuzzy system. The uncertain state of the system is abstracted into a fuzzy set, which enables the data to be expressed in a linguistic manner. Moreover, the degree of affiliation of the data belonging to the corresponding fuzzy set is expressed through the membership value, which is a real number between 00 and 1111. For example, setting three membership functions for the variable x𝑥xitalic_x will generate the fuzzy representation containing three fuzzy linguistic labels and corresponding membership values (e.g., “Large” = 0.820.820.820.82, “Medium” = 0.190.190.190.19, “Small” = 00).

III-A3 Fuzzy rule block

This block consists of two branches, the CNN-based fuzzy implication branch and the fuzzy rule interpretation branch. In this work, the fuzzy implication branch is a CNN-based implication operator that outputs the inferred membership value, which serves as the input to the defuzzification block, and undergoes aggregation and defuzzification to obtain the output substrate network node embedding probability. In addition, the fuzzy rule interpretation branch establishes associations between the fuzzy sets with the highest membership values from the fuzzification block and the defuzzification block. These associations form fuzzy rules that can be interpreted based on their linguistic labels, thereby breaking away from the traditional black-box paradigm of DL models. In other words, these rules act as a map** between input to output spaces.

CNN-based fuzzy rule implication branch: This branch is primarily composed of two convolutional layers and two fully connected layers to compute the available computational vectors of the substrate network and infer the membership values of the consequent fuzzy rules as the input to the defuzzification layer. The convolutional layer is computed as follows:

𝐂=Conv(𝐅,𝐖)+𝒃,𝐂𝐶𝑜𝑛𝑣𝐅𝐖𝒃\vspace{-0.1cm}\mathbf{C}=Conv(\mathbf{{F}},\mathbf{{W}})+\boldsymbol{b},% \vspace{-0.1cm}bold_C = italic_C italic_o italic_n italic_v ( bold_F , bold_W ) + bold_italic_b , (19)

where 𝐅𝐅\mathbf{F}bold_F represents the output of the fuzzification block, 𝐖𝐖\mathbf{W}bold_W represents the weight matrix of the convolution layer, and 𝒃𝒃\boldsymbol{b}bold_italic_b represents the bias vector. Moreover, the weights are initially initialized using the truncated normal distribution method to avoid the vanishing or exploding of the gradient caused by extreme values. This method restricts 99%percent9999\%99 % of the weights to a range between 3σ3𝜎-3\sigma- 3 italic_σ and 3σ3𝜎3\sigma3 italic_σ. In addition, the last fully connected layer is responsible for producing the membership values of the consequent, with the number of neurons equal to q𝑞qitalic_q. The optimizer uses a gradient descent optimizer to minimize the loss function through forward propagation and gradient back-propagation (BP) of the model. During this process, the model will identify fuzzy rule patterns and cache them in weights. It is worth explaining that the input and output of the CNN-based fuzzy implication branch are associated with the subsequent fuzzy rule interpretation branch, which contributes to the interpretability of rule implication.

Fuzzy rule interpretation branch: Fuzzy rules are based on the more intuitive and interpretable Mamdani-type111It is an antecedent-consequent type rule and uses linguistic labels in both antecedent and consequent parts. linguistic rule [30]. In this work, the j𝑗jitalic_j-th input data is 𝒙j=[x1,x2,x3]subscript𝒙𝑗subscript𝑥1subscript𝑥2subscript𝑥3\boldsymbol{x}_{j}=\left[x_{1},x_{2},x_{3}\right]bold_italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = [ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ] (1j|𝒏|1𝑗𝒏1\leq j\leq|\boldsymbol{n}|1 ≤ italic_j ≤ | bold_italic_n |) as in Eq. 17. The fuzzy set size222In general, the more Gaussian membership functions there are, the more precise the representation of the fuzzy set becomes. However, this may also lead to increased computation complexity and decreased operational efficiency. Hence, when determining the number of Gaussian membership functions, trade-offs and choices need to be made based on actual needs and computing resources. (number of fuzzy labels, depending on the number of membership functions) is defined as 5555, i.e., linguistic labels “Very High (VH)”, “High (H)”, “Medium (M)”, “Low (L)”, and “Very Low (VL)”. Therefore, the encoding of fuzzy rules derived from the fuzzification layer (antecedent) and defuzzification layer (consequent) is as follows,

i::superscript𝑖absent\displaystyle\mathbb{R}^{i}:blackboard_R start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT : Ifx1=F1i,andx2=F2i,andx3=F3i,formulae-sequenceIfsubscript𝑥1subscriptsuperscript𝐹𝑖1formulae-sequenceandsubscript𝑥2subscriptsuperscript𝐹𝑖2andsubscript𝑥3subscriptsuperscript𝐹𝑖3\displaystyle\textbf{If}\ x_{1}=F^{i}_{1},\ \text{and}\ x_{2}=F^{i}_{2},\ % \text{and}\ x_{3}=F^{i}_{3},If italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , and italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , and italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , (20)
Theny1=D1i,andy2=D2i,,andyq=Dqi,formulae-sequenceThensubscript𝑦1subscriptsuperscript𝐷𝑖1formulae-sequenceandsubscript𝑦2subscriptsuperscript𝐷𝑖2andsubscript𝑦𝑞subscriptsuperscript𝐷𝑖𝑞\displaystyle\textbf{Then}\ y_{1}=D^{i}_{1},\ \text{and}\ y_{2}=D^{i}_{2},% \cdots,\ \text{and}\ y_{q}=D^{i}_{q},Then italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_D start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , and italic_y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = italic_D start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , ⋯ , and italic_y start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT = italic_D start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT ,

where isuperscript𝑖\mathbb{R}^{i}blackboard_R start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT represents the i𝑖iitalic_i-the fuzzy rule, Fkisuperscriptsubscript𝐹𝑘𝑖F_{k}^{i}italic_F start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT represents the linguistic label corresponding to the k𝑘kitalic_k-th input dimension of 𝐗𝐗\mathbf{X}bold_X from the fuzzification black, and Dlisubscriptsuperscript𝐷𝑖𝑙D^{i}_{l}italic_D start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT represents the linguistic label corresponding to the l𝑙litalic_l-th output dimension from the defuzzification black.

III-A4 Defuzzification block

This block uses the center of gravity method for defuzzification to calculate the weighted average of the membership values of the fuzzy output and then uses the center of gravity as the output value. Unlike the maximum method, which may ignore relatively small membership values that have a certain impact, this method considers the possible impact of all membership values. Specifically, for the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ), it is calculated as follows,

o(i)=f(i)×(i)j=1(j),𝑜𝑖𝑓𝑖superscript𝑖subscript𝑗1superscript𝑗{o}(i)=\frac{{f}(i)\times{\mathcal{F}}^{\prime}(i)}{\sum_{j=1}{\mathcal{F}}^{% \prime}(j)},italic_o ( italic_i ) = divide start_ARG italic_f ( italic_i ) × caligraphic_F start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_i ) end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT caligraphic_F start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_j ) end_ARG , (21)

where o(i)𝑜𝑖o(i)italic_o ( italic_i ) represents the center of gravity of the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ), and (i)superscript𝑖{\mathcal{F}}^{\prime}(i)caligraphic_F start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_i ) represents the membership value of the i𝑖iitalic_i-th dimension output f(i)𝑓𝑖{f}(i)italic_f ( italic_i ) of the last fully connected layer at the CNN-based fuzzy rule implication branch.

III-A5 Output block

This block utilizes the softmax function to output the embedded probabilities of the substrate network nodes. Specifically, for the substrate node n(i)𝑛𝑖n(i)italic_n ( italic_i ), it is calculated as follows,

p(i)=o(i)j=1|𝒏|o(j),𝑝𝑖𝑜𝑖superscriptsubscript𝑗1𝒏𝑜𝑗{p}(i)=\frac{{o}(i)}{\sum_{j=1}^{|\boldsymbol{n}|}{o}(j)},italic_p ( italic_i ) = divide start_ARG italic_o ( italic_i ) end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT | bold_italic_n | end_POSTSUPERSCRIPT italic_o ( italic_j ) end_ARG , (22)

where p(i)𝑝𝑖p(i)italic_p ( italic_i ) represents the embedded probability of n(i)𝑛𝑖n(i)italic_n ( italic_i ).

Finally, after sorting, a set of candidate physical nodes with embedding probabilities from large to small is obtained. To further clarify the fuzzy rule implication process, we connect the consequent of the fuzzy rule interpretation branch to the output block. Thus, it can be further represented as,

i::superscript𝑖absent\displaystyle\mathbb{R}^{i}:blackboard_R start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT : Ifx1=F1i,andx2=F2i,andx3=F3i,formulae-sequenceIfsubscript𝑥1subscriptsuperscript𝐹𝑖1formulae-sequenceandsubscript𝑥2subscriptsuperscript𝐹𝑖2andsubscript𝑥3subscriptsuperscript𝐹𝑖3\displaystyle\textbf{If}\ x_{1}=F^{i}_{1},\ \text{and}\ x_{2}=F^{i}_{2},\ % \text{and}\ x_{3}=F^{i}_{3},If italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , and italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , and italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , (23)
ThenFji:wji=pj,:Thensubscriptsuperscript𝐹𝑖𝑗subscriptsuperscript𝑤𝑖𝑗subscript𝑝𝑗\displaystyle\textbf{Then}\ F^{\prime i}_{j}:w^{i}_{j}=p_{j},Then italic_F start_POSTSUPERSCRIPT ′ italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT : italic_w start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ,

where Fjisubscriptsuperscript𝐹𝑖𝑗F^{\prime i}_{j}italic_F start_POSTSUPERSCRIPT ′ italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT represent the linguistic label of j𝑗jitalic_j substrate node, wjisubscriptsuperscript𝑤𝑖𝑗w^{i}_{j}italic_w start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT represent the rule weight of isuperscript𝑖\mathbb{R}^{i}blackboard_R start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT, 1j|𝒏|1𝑗𝒏1\leq j\leq{|\boldsymbol{n}|}1 ≤ italic_j ≤ | bold_italic_n |, and pjsubscript𝑝𝑗p_{j}italic_p start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT represents a specific probability value.

The process of establishing the rule base is as follows: the establishment of rules is data-driven. When the first data is input, based on Eq. 23, the first rule is also established. If existing rules cannot explain current actions, new rules will be created. These rules are combined into a rule base to explain the principles and meaning of CNN-based fuzzy implication.

III-B DRL Configuration

The basic elements of DRL for this work are configured as follows,

III-B1 Agent

The main entity of DRL, which performs actions in the environment and learns how to make optimal decisions through interaction with the environment. Its configuration is shown in Fig. 4, and detailed information is provided in Section III-A.

III-B2 State

It refers to the information collection of the environment at a certain moment, as defined in Eq. 17, and is also the input information extracted by the input block.

III-B3 Action

It refers to the scheme adopted by the agent at a certain moment. It is defined as the node embedding scheme and the link embedding scheme, as shown in Eq. 24. It should be noted that the node embedding probability is obtained from the output block, and the link embedding scheme is obtained through breadth-first search (BFS). At time t𝑡titalic_t, for 𝒱isubscript𝒱𝑖\mathcal{V}_{i}caligraphic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the action ai(t)subscript𝑎𝑖𝑡a_{i}(t)italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) adopted is defined as Eq. 24, where a𝗇(t,j)=1subscript𝑎𝗇𝑡𝑗1a_{\mathsf{n}}(t,j)=1italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , italic_j ) = 1 indicates that the substrate node n(j)𝑛𝑗n(j)italic_n ( italic_j ) is used to host the virtual node, and a𝗅(t,j)=1subscript𝑎𝗅𝑡𝑗1a_{\mathsf{l}}(t,j)=1italic_a start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_t , italic_j ) = 1 indicates that the substrate link l(k)𝑙𝑘l(k)italic_l ( italic_k ) is used to host the virtual link. Furthermore, the map** relationship between the virtual node and the substrate node is 1:1:111:11 : 1, so j=1|𝒏|a𝗇(t,j)=|𝒏𝗏(i)|superscriptsubscript𝑗1𝒏subscript𝑎𝗇𝑡𝑗subscript𝒏𝗏𝑖\sum_{j=1}^{|\boldsymbol{n}|}\ a_{\mathsf{n}}(t,j)=|\boldsymbol{n}_{\mathsf{v}% }(i)|∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT | bold_italic_n | end_POSTSUPERSCRIPT italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , italic_j ) = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) |. However, the map** relationship between virtual links and physical links is 1:m:1𝑚1:m1 : italic_m, which means that the virtual link may span multiple substrate links (also mentioned in Eq. 4).

ai(t)={{(a𝗇(t,1),a𝗇(t,2),,a𝗇(t,j),,a𝗇(t,|𝒏|))\displaystyle a_{i}(t)=\Bigg{\{}\bigg{\{}\Big{(}a_{\mathsf{n}}(t,1),a_{\mathsf% {n}}(t,2),\cdots,a_{\mathsf{n}}(t,j),\cdots,a_{\mathsf{n}}(t,|\boldsymbol{n}|)% \Big{)}italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_t ) = { { ( italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , 1 ) , italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , 2 ) , ⋯ , italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , italic_j ) , ⋯ , italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , | bold_italic_n | ) ) |a𝗇(t,j)=0,1andj=1|𝒏|a𝗇(t,j)=|𝒏𝗏(i)|},\displaystyle\Big{|}\ a_{\mathsf{n}}(t,j)=0,1\ \text{and}\sum_{j=1}^{|% \boldsymbol{n}|}\ a_{\mathsf{n}}(t,j)=|\boldsymbol{n}_{\mathsf{v}}(i)|\bigg{\}},| italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , italic_j ) = 0 , 1 and ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT | bold_italic_n | end_POSTSUPERSCRIPT italic_a start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_t , italic_j ) = | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | } , (24)
{(a𝗅(t,1),a𝗅(t,2),,a𝗅(t,k),,a𝗅(t,|𝒍|))\displaystyle\bigg{\{}\Big{(}a_{\mathsf{l}}(t,1),a_{\mathsf{l}}(t,2),\cdots,a_% {\mathsf{l}}(t,k),\cdots,a_{\mathsf{l}}(t,|\boldsymbol{l}|)\Big{)}{ ( italic_a start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_t , 1 ) , italic_a start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_t , 2 ) , ⋯ , italic_a start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_t , italic_k ) , ⋯ , italic_a start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_t , | bold_italic_l | ) ) |a𝗅(t,k)=0,1}},\displaystyle\Big{|}\ a_{\mathsf{l}}(t,k)=0,1\bigg{\}}\Bigg{\}},| italic_a start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT ( italic_t , italic_k ) = 0 , 1 } } ,

III-B4 Reward

It refers to the feedback signal value obtained by an action taken by the agent at a certain moment, which is used to guide the agent to continue learning in the direction of a greater positive feedback value. Moreover, it is defined as the long-term average revenue-cost ratio, as follows,

r(t)=η.𝑟𝑡𝜂r(t)=\eta.italic_r ( italic_t ) = italic_η . (25)
1
Input: Substrate network and VNRs.
Output: Indicators Eq. 6, Eq. 7, Eq. 8; Fuzzy rule base 𝐑𝐑\mathbf{R}bold_R.
2 Truncated normal distribution randomly initializes network weights; 𝐑=𝐑\mathbf{R}={\varnothing}bold_R = ∅.
3while iterationmax_iteration𝑖𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑚𝑎𝑥_𝑖𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛iteration\leq max\_iterationitalic_i italic_t italic_e italic_r italic_a italic_t italic_i italic_o italic_n ≤ italic_m italic_a italic_x _ italic_i italic_t italic_e italic_r italic_a italic_t italic_i italic_o italic_n do
4       foreach n(i)𝐧𝑛𝑖𝐧n(i)\in\boldsymbol{n}italic_n ( italic_i ) ∈ bold_italic_n do
5             Build the state by Eq. 17;
6            Fuzzify input information by Eq. 18;
7            CNN-based fuzzy rule implication branch forward propagation;
8            Defuzzification by Eq. 21;
9            Calculate node embedding probability by Eq. 22;
10            if n𝗏(i,j)subscript𝑛𝗏𝑖𝑗n_{\mathsf{v}}(i,j)italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) embedded is succeed then
11                   Search substrate links by BFS;
12                  if l𝗏(i,k)subscript𝑙𝗏𝑖𝑘l_{\mathsf{v}}(i,k)italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) embedded is succeed then
13                         Update 𝐑𝐑\mathbf{R}bold_R by Eq. 23;
14                        Calculate reward value by Eq. 25;
15                        Calculate loss value by Eq. 26;
16                        Calculate gradient by Eq. 27 and update parameters via BP;
17                  else
18                        Cancel gradient BP;
19                   end if
20                  
21            else
22                  Cancel gradient BP;
23             end if
24            
25       end foreach
26      iteration=iteration+1𝑖𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑖𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛1iteration=iteration+1italic_i italic_t italic_e italic_r italic_a italic_t italic_i italic_o italic_n = italic_i italic_t italic_e italic_r italic_a italic_t italic_i italic_o italic_n + 1;
27 end while
Algorithm 1 The Learning Process of DNFS-VNE

III-C Model Learning

As mentioned earlier, DNFS-VNE utilizes the BP algorithm to update the identified implication patterns into the weights. Specifically, the loss function employed in this work is the cross-entropy loss, as follows,

=i|𝒏|o(i)log(p(i)).superscriptsubscript𝑖𝒏𝑜𝑖𝑝𝑖\mathcal{L}=-\sum_{i}^{|\boldsymbol{n}|}{o}(i)\log({p}(i)).caligraphic_L = - ∑ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT | bold_italic_n | end_POSTSUPERSCRIPT italic_o ( italic_i ) roman_log ( italic_p ( italic_i ) ) . (26)

Furthermore, the gradient is updated in the following directions,

:=μ×r(t)×,assign𝜇𝑟𝑡superscript\mathcal{L}:=\mathcal{L}-\mu\times r(t)\times\mathcal{L}^{\prime},caligraphic_L := caligraphic_L - italic_μ × italic_r ( italic_t ) × caligraphic_L start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , (27)

where μ𝜇\muitalic_μ represents the learning rate and superscript\mathcal{L}^{\prime}caligraphic_L start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT represents the gradient derivative of \mathcal{L}caligraphic_L. It should be noted that the reward r(t)𝑟𝑡r(t)italic_r ( italic_t ) will be used to jointly guide the model to optimize towards high reward feedback signals. It is widely recognized that the learning rate is a crucial parameter that requires careful tuning. Setting the learning rate too high or too low can hinder the model’s convergence. In this work, the learning rate is confirmed to be 0.010.010.010.01 after being verified in Section IV-B. During the learning process, the model will be optimized along the direction of gradient descent, following Eq. 27, until the loss function reaches a converged state. At this point, the three evaluation indicators as shown in Eq. 6, Eq. 7, and Eq. 8 will also converge.

The algorithm flow of the proposed DNFS-VNE is shown in Algorithm 1. It should be noted that the current VNR Risubscript𝑅𝑖R_{i}italic_R start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT embedding is successful only when all virtual nodes n𝗏(i,j)(1j|𝒏𝗏(i)|)subscript𝑛𝗏𝑖𝑗1𝑗subscript𝒏𝗏𝑖n_{\mathsf{v}}(i,j)(1\leq j\leq|\boldsymbol{n}_{\mathsf{v}}(i)|)italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_j ) ( 1 ≤ italic_j ≤ | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | ) and virtual links l𝗏(i,k)(1k|𝒍𝗏(i)|)subscript𝑙𝗏𝑖𝑘1𝑘subscript𝒍𝗏𝑖l_{\mathsf{v}}(i,k)(1\leq k\leq|\boldsymbol{l}_{\mathsf{v}}(i)|)italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i , italic_k ) ( 1 ≤ italic_k ≤ | bold_italic_l start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT ( italic_i ) | ) are successfully embedded. At this point, the learned rule patterns are updated to the model weights for the current successful embedding. Otherwise, no learning is done for the failed embedding.

In addition, the rule base is built through inference in traditional fuzzy systems. This process involves pruning fuzzy rules with weak firing strength, less coverage, and less weight in order to ensure compactness. However, this approach may result in the removal of key information, as the pruned rules often imply that the event occurrences are relatively rare. On the other hand, DNFS-VNE can disregard this aspect, which is due to that the rule base is built by extracting knowledge from the data and implementing it based on the computation of DNNs. Then, the identified fuzzy rule patterns are updated into the weights. As a result, DNFS-VNE is not bound by rule pruning and does not require the training data to sufficiently cover the test data, as is the case in traditional fuzzy systems.

IV Simulation Experimental Verification and Analysis

IV-A Environment Configuration

TABLE III: The environment configurations of this work.
Substrate Network Setting Virtual Network Setting
Substrate domain 4444 VNRs 2000200020002000
𝒏𝒏\boldsymbol{n}bold_italic_n 100100100100 Training or Testing 1000100010001000
𝒍𝗂𝗇𝗍𝗋𝖺subscript𝒍𝗂𝗇𝗍𝗋𝖺\boldsymbol{l}_{\mathsf{intra}}bold_italic_l start_POSTSUBSCRIPT sansserif_intra end_POSTSUBSCRIPT and 𝒍𝗂𝗇𝗍𝖾𝗋subscript𝒍𝗂𝗇𝗍𝖾𝗋\boldsymbol{l}_{\mathsf{inter}}bold_italic_l start_POSTSUBSCRIPT sansserif_inter end_POSTSUBSCRIPT 600600600600 𝒏𝗏subscript𝒏𝗏\boldsymbol{n}_{\mathsf{v}}bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT 2222-10101010
𝒓𝗇subscript𝒓𝗇\boldsymbol{r}_{\mathsf{n}}bold_italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT U[50,1005010050,10050 , 100]* 𝒓𝗇,𝗏subscript𝒓𝗇𝗏\boldsymbol{r}_{\mathsf{n},\mathsf{v}}bold_italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT U[1,501501,501 , 50]
𝒓𝗅subscript𝒓𝗅\boldsymbol{r}_{\mathsf{l}}bold_italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT U[50,1005010050,10050 , 100] 𝒓𝗅,𝗏subscript𝒓𝗅𝗏\boldsymbol{r}_{\mathsf{l},\mathsf{v}}bold_italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT U[1,501501,501 , 50]
  • *

    This indicates that the range of values for all elements in 𝒓𝗇subscript𝒓𝗇\boldsymbol{r}_{\mathsf{n}}bold_italic_r start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT. The similar as 𝒓𝗅subscript𝒓𝗅\boldsymbol{r}_{\mathsf{l}}bold_italic_r start_POSTSUBSCRIPT sansserif_l end_POSTSUBSCRIPT, 𝒓𝗇,𝗏subscript𝒓𝗇𝗏\boldsymbol{r}_{\mathsf{n},\mathsf{v}}bold_italic_r start_POSTSUBSCRIPT sansserif_n , sansserif_v end_POSTSUBSCRIPT, and 𝒓𝗅,𝗏subscript𝒓𝗅𝗏\boldsymbol{r}_{\mathsf{l},\mathsf{v}}bold_italic_r start_POSTSUBSCRIPT sansserif_l , sansserif_v end_POSTSUBSCRIPT.

In this work, as shown in Table III, the environment settings are generated by the GT-ITM tool and saved in “.txt” files. Specifically, a total of 100100100100 substrate nodes and 600600600600 substrate links are generated. These substrate nodes are randomly distributed in 4444 substrate domains. Additionally, 2,00020002,0002 , 000 VNRs are generated and recorded in 2,00020002,0002 , 000 “.txt” files, with half as a training set and half as a test set. In each VNR, there are 2222-10101010 virtual nodes, and virtual links are randomly generated with half probability, so there are |𝒏𝗏|×(|𝒏𝗏|1)4subscript𝒏𝗏subscript𝒏𝗏14\frac{|\boldsymbol{n}_{\mathsf{v}}|\times(|\boldsymbol{n}_{\mathsf{v}}|-1)}{4}divide start_ARG | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT | × ( | bold_italic_n start_POSTSUBSCRIPT sansserif_v end_POSTSUBSCRIPT | - 1 ) end_ARG start_ARG 4 end_ARG virtual links. Furthermore, all VNRs arrive at the DNFS-VNE according to a Poisson-distributed time series to generate a continuous process.

Refer to caption
Figure 5: Eq. 6 in the training process.

IV-B Learning Rate Selection and Training Performance

Refer to caption
Figure 6: Eq. 7 in the training process.

To determine the learning rate μ𝜇\muitalic_μ selection and stability of DNFS-VNE, it is important to observe the changes in indicator values at different learning rates. Therefore, we set μ𝜇\muitalic_μ to 0.010.010.010.01, 0.050.050.050.05, 0.0050.0050.0050.005, and 0.0010.0010.0010.001, and demonstrate the corresponding changes in indicator values during the training phase in Fig. 5, Fig. 6, and Fig. 7, respectively. It is observed that with μ=0.001𝜇0.001\mu=0.001italic_μ = 0.001, the stability speed is very slow. With μ=0.005𝜇0.005\mu=0.005italic_μ = 0.005, although stability can be achieved, the speed is unacceptable. Moreover, with μ=0.05𝜇0.05\mu=0.05italic_μ = 0.05, stability is faster, but the indicator fluctuates greatly due to the large stride. In contrast, when μ=0.01𝜇0.01\mu=0.01italic_μ = 0.01, due to the appropriate stride, the stability speed is faster and more stable, and it is stable in approximately 30303030-40404040 iterations. Therefore, considering overall performance, stability, and speed, we set μ=0.01𝜇0.01\mu=0.01italic_μ = 0.01. In addition, with μ=0.01𝜇0.01\mu=0.01italic_μ = 0.01, it can be observed that each evaluation indicator can reach the stability state quickly and more stably during the training process.

Refer to caption
Figure 7: Eq. 8 in the training process.

IV-C Fuzzy Linguistic Rules Definition

Refer to caption
Figure 8: Fuzzification of the available node resource dimension.

During the learning process, we apply fuzzification to each input dimension of 𝐗𝐗\mathbf{X}bold_X and use the clustering algorithm to determine the centroid and standard deviation of the Gaussian affiliation function. And, we randomly selected a substrate node from one iteration and visualized its fuzzification processing on the dimension of “Available node resources”, as shown in Fig. 8. As mentioned earlier, we generate five clusters that correspond to the linguistic labels “Very High”, “High”, “Medium”, “Low”, and “Very Low”. By analyzing the membership values of the current dimension values, we can determine the contribution values of the current input dimension values to different linguistic labels, which are then assigned to the corresponding fuzzy partitions. For instance, if r𝗇𝖺(i)=30subscriptsuperscript𝑟𝖺𝗇𝑖30{r}^{\mathsf{a}}_{\mathsf{n}}(i)=30italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) = 30, 2(r𝗇𝖺(i))>1(r𝗇𝖺(i))>3(r𝗇𝖺(i))>4(r𝗇𝖺(i))>5(r𝗇𝖺(i))subscript2subscriptsuperscript𝑟𝖺𝗇𝑖subscript1subscriptsuperscript𝑟𝖺𝗇𝑖subscript3subscriptsuperscript𝑟𝖺𝗇𝑖subscript4subscriptsuperscript𝑟𝖺𝗇𝑖subscript5subscriptsuperscript𝑟𝖺𝗇𝑖\mathcal{F}_{2}({r}^{\mathsf{a}}_{\mathsf{n}}(i))>\mathcal{F}_{1}({r}^{\mathsf% {a}}_{\mathsf{n}}(i))>\mathcal{F}_{3}({r}^{\mathsf{a}}_{\mathsf{n}}(i))>% \mathcal{F}_{4}({r}^{\mathsf{a}}_{\mathsf{n}}(i))>\mathcal{F}_{5}({r}^{\mathsf% {a}}_{\mathsf{n}}(i))caligraphic_F start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) ) > caligraphic_F start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) ) > caligraphic_F start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) ) > caligraphic_F start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) ) > caligraphic_F start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ( italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) ), we define that during this iteration process, the linguistic interpretation for this substrate node is “r𝗇𝖺(i)is lowsubscriptsuperscript𝑟𝖺𝗇𝑖is low{r}^{\mathsf{a}}_{\mathsf{n}}(i)\ \text{is low}italic_r start_POSTSUPERSCRIPT sansserif_a end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_n end_POSTSUBSCRIPT ( italic_i ) is low”. Therefore, based on Mamdani-type linguistic rules and following the same linguistic rules definition at the antecedent and consequent layers, reasonable interpretability can be provided for the VNE algorithm.

IV-D Generated Fuzzy Rule Interpretation

We show some generated rules by the fuzzy rule interpretation branch to explore the principles of the embedding process of the VNE, as shown in Table IV,

TABLE IV: Some examples of generated fuzzy rules.
1:Ifx1is very high (VH),andx2is very high (VH),andx3is low (L),Thennedis very high (VH):0.9170,:superscript1absentIfsubscript𝑥1is very high (VH)missing-subexpressionandsubscript𝑥2is very high (VH)missing-subexpressionandsubscript𝑥3is low (L),missing-subexpression:Then𝑛𝑒𝑑is very high (VH)0.9170\begin{aligned} \mathbb{R}^{1}:\ &\textbf{If}\ x_{1}\ \text{is very high (VH)}% ,\\ &\quad\text{and}\ x_{2}\ \text{is very high (VH)},\\ &\quad\text{and}\ x_{3}\ \text{is low (L),}\\ &\textbf{Then}\ ned\ \text{is very high (VH)}:0.9170,\end{aligned}start_ROW start_CELL blackboard_R start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT : end_CELL start_CELL If italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is very high (VH) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is very high (VH) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT is low (L), end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL Then italic_n italic_e italic_d is very high (VH) : 0.9170 , end_CELL end_ROW
2:Ifx1is low (L),andx2is very high (VH),andx3is low (L),Thennedis high (H):0.8384,:superscript2absentIfsubscript𝑥1is low (L)missing-subexpressionandsubscript𝑥2is very high (VH)missing-subexpressionandsubscript𝑥3is low (L),missing-subexpression:Then𝑛𝑒𝑑is high (H)0.8384\begin{aligned} \mathbb{R}^{2}:\ &\textbf{If}\ x_{1}\ \text{is low (L)},\\ &\quad\text{and}\ x_{2}\ \text{is very high (VH)},\\ &\quad\text{and}\ x_{3}\ \text{is low (L),}\\ &\textbf{Then}\ ned\ \text{is high (H)}:0.8384,\end{aligned}start_ROW start_CELL blackboard_R start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT : end_CELL start_CELL If italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is low (L) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is very high (VH) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT is low (L), end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL Then italic_n italic_e italic_d is high (H) : 0.8384 , end_CELL end_ROW
3:Ifx1is very high (VH),andx2is low (L),andx3is low (L),Thennedis medium (M):0.5916,:superscript3absentIfsubscript𝑥1is very high (VH)missing-subexpressionandsubscript𝑥2is low (L)missing-subexpressionandsubscript𝑥3is low (L),missing-subexpression:Then𝑛𝑒𝑑is medium (M)0.5916\begin{aligned} \mathbb{R}^{3}:\ &\textbf{If}\ x_{1}\ \text{is very high (VH)}% ,\\ &\quad\text{and}\ x_{2}\ \text{is low (L)},\\ &\quad\text{and}\ x_{3}\ \text{is low (L),}\\ &\textbf{Then}\ ned\ \text{is medium (M)}:0.5916,\end{aligned}start_ROW start_CELL blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT : end_CELL start_CELL If italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is very high (VH) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is low (L) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT is low (L), end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL Then italic_n italic_e italic_d is medium (M) : 0.5916 , end_CELL end_ROW
4:Ifx1is very high (VH),andx2is low (L),andx3is very high (VH),Thennedis low (L):0.3811,:superscript4absentIfsubscript𝑥1is very high (VH)missing-subexpressionandsubscript𝑥2is low (L)missing-subexpressionandsubscript𝑥3is very high (VH),missing-subexpression:Then𝑛𝑒𝑑is low (L)0.3811\begin{aligned} \mathbb{R}^{4}:\ &\textbf{If}\ x_{1}\ \text{is very high (VH)}% ,\\ &\quad\text{and}\ x_{2}\ \text{is low (L)},\\ &\quad\text{and}\ x_{3}\ \text{is very high (VH),}\\ &\textbf{Then}\ ned\ \text{is low (L)}:0.3811,\end{aligned}start_ROW start_CELL blackboard_R start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT : end_CELL start_CELL If italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is very high (VH) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is low (L) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL and italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT is very high (VH), end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL Then italic_n italic_e italic_d is low (L) : 0.3811 , end_CELL end_ROW

where ned𝑛𝑒𝑑neditalic_n italic_e italic_d represents the substrate node embedded probability. As mentioned before, x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, x2subscript𝑥2x_{2}italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, x3subscript𝑥3x_{3}italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT represent available node resources, available link resources, and average distance, respectively. Therefore, by observing the comparison between different fuzzy rules, we can explain the embedding principle of the VNE process based on DNNs. For instance, by comparing 1superscript1\mathbb{R}^{1}blackboard_R start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT and 2superscript2\mathbb{R}^{2}blackboard_R start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, we can conclude that the more remaining resources in the substrate node, the easier it is to be embedded. Similarly, by comparing 1superscript1\mathbb{R}^{1}blackboard_R start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT and 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT, we can conclude that the more available bandwidth resources in the substrate link, the easier it is to be embedded. Furthermore, by comparing 3superscript3\mathbb{R}^{3}blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT with 4superscript4\mathbb{R}^{4}blackboard_R start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT, we can conclude that the lower the number of substrate paths, the higher the embedding revenue. In fact, these reasoning results also align with the original intention of attribute design in many VNE works [22, 31, 27, 28, 18]. Therefore, this work provides a promising and interpretable solution to the black-box principle explanation of VNE working.

IV-E Comparison Experiment Analysis

TABLE V: The descriptions and parameter settings of all baselines.
Baseline Descriptions Parameter Settings
NodeRank [15] A heuristic algorithm based on the priority of node resources. ϵ=0.0001italic-ϵ0.0001\epsilon=0.0001italic_ϵ = 0.0001, Max_Hop=3𝑀𝑎𝑥_𝐻𝑜𝑝3Max\_Hop=3italic_M italic_a italic_x _ italic_H italic_o italic_p = 3, puJ=0.15subscriptsuperscript𝑝𝐽𝑢0.15p^{J}_{u}=0.15italic_p start_POSTSUPERSCRIPT italic_J end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_u end_POSTSUBSCRIPT = 0.15, puF=0.85subscriptsuperscript𝑝𝐹𝑢0.85p^{F}_{u}=0.85italic_p start_POSTSUPERSCRIPT italic_F end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_u end_POSTSUBSCRIPT = 0.85.
NRM-VNE [17] A heuristic algorithm based on multi-dimensional resource constraints. Based on the MIP process.
CDRL [18] A reinforcement learning algorithm based on time series, but the embedding rules are not interpretable. μ=0.005𝜇0.005\mu=0.005italic_μ = 0.005, wcpu=1/2subscript𝑤𝑐𝑝𝑢12w_{cpu}=1/2italic_w start_POSTSUBSCRIPT italic_c italic_p italic_u end_POSTSUBSCRIPT = 1 / 2, wsto=1/2subscript𝑤𝑠𝑡𝑜12w_{sto}=1/2italic_w start_POSTSUBSCRIPT italic_s italic_t italic_o end_POSTSUBSCRIPT = 1 / 2, wbw=1subscript𝑤𝑏𝑤1w_{bw}=1italic_w start_POSTSUBSCRIPT italic_b italic_w end_POSTSUBSCRIPT = 1. yi=1subscript𝑦𝑖1y_{i}=1italic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 1.
Refer to caption
Figure 9: Comparison experiment on Eq. 6.
Refer to caption
Figure 10: Comparison experiment on Eq. 7.
Refer to caption
Figure 11: Comparison experiment on Eq. 8.

We selected the classic VNE algorithms (NodeRank [15], NRM-VNE [17], CDRL [18]) as baselines to prove the effectiveness of DNFS-VNE. The descriptions and parameter settings of all baselines are recorded in Table V. For rigor, all baselines are run in the same simulation environment as shown in Table III. Starting from the time series 22222222 s of VNRs, the changes in indicators are recorded every 4,00040004,0004 , 000 s, as shown in Fig. 9, Fig. 10, and Fig. 11.

It can be found that the heuristic algorithm is generally inferior to the AI-based method. Most of the heuristic algorithms greedily allocate physical nodes and links with more resources, resulting in satisfactory performance initially but needing improvement in the long run. The CDRL algorithm introduces the RL algorithm on this basis, taking into account the interaction with the environment and comprehensively considering the VNR requirements, contributing to a significant improvement in effectiveness. In addition, the proposed DNFS-VNE fully considers the VNE implication rules and caches the identified inference patterns into weights through forward calculation and BP, thereby significantly improving the performance of each indicator.

As time progresses, the response to VNRs leads to a decrease in available resources for the substrate network. Consequently, this also reduces the number of VNRs that can be successfully embedded subsequently. Thus, the long-term average revenue and VNR acceptance success rate, as shown in Eq. 6 and Eq. 8, will continue to decrease. For Eq. 7, the long-term average revenue-cost ratio fluctuates as it is influenced by both revenue and cost. The results shown in the figures also validate these theories. In summary, this work is superior compared to other baselines as well as effective.

V Conclusion and Future

Based on the promising performance of interpretable DL represented by DNFS, this work proposes a DNFS-based VNE algorithm that aims to provide an interpretable NV scheme. Specifically, DNFS-VNE is a five-block architecture in which CNNs act as fuzzy implication operators to perform entailment operations and ultimately output the embedding probabilities of candidate substrate nodes. And, fuzzy rule patterns are cached into the weights during the model’s forward computation and gradient back-propagation. Moreover, Mamdani-type linguistic rules are used to construct the fuzzy rule base using linguistic labels and then interpret them. Furthermore, we use the policy network based on a five-block architecture as the agent of DRL to optimize the VNE scheme through interaction with the environment and joint guidance of the reward function. Finally, the effectiveness of the algorithm is proved through experiments.

Furthermore, it is important to mention that this work is only an initial effort to explore the interpretability of the VNE algorithm through DNFS. Additionally, this work can be easily extended to incorporate more resource dimensions, such as substrate link delay, substrate node degree, etc., to explore the influence of more attributes on the VNE process. Also, it can explore more complicated fuzzy implication designs to obtain more detailed fuzzy rules, and then develop more versions of DNFS-VNE.

References

  • [1] D. Basu, S. Kal, U. Ghosh, and R. Datta, “DRIVE: Dynamic Resource Introspection and VNF Embedding for 5G Using Machine Learning,” IEEE Internet of Things Journal, vol. 10, no. 21, pp. 18 971–18 979, January 2023.
  • [2] S. Wu, N. Chen, G. Wen, L. Xu, P. Zhang, and H. Zhu, “Virtual Network Embedding for Task Offloading in IIoT: A DRL-Assisted Federated Learning Scheme,” IEEE Transactions on Industrial Informatics, vol. 20, no. 4, pp. 6814–6824, January 2024.
  • [3] H. Lu and F. Zhang, “Resource Fragmentation-Aware Embedding in Dynamic Network Virtualization Environments,” IEEE Transactions on Network and Service Management, vol. 19, no. 2, pp. 936–948, February 2022.
  • [4] Z. Yan, J. Ge, Y. Wu, L. Li, and T. Li, “Automatic Virtual Network Embedding: A Deep Reinforcement Learning Approach with Graph Convolutional Networks,” IEEE Journal on Selected Areas in Communications, vol. 38, no. 6, pp. 1040–1057, April 2020.
  • [5] Z. Yang, R. Gu, H. Li, and Y. Ji, “Approximately Lossless Model Compression-Based Multilayer Virtual Network Embedding for Edge–Cloud Collaborative Services,” IEEE Internet of Things Journal, vol. 10, no. 14, pp. 13 040–13 055, March 2023.
  • [6] Y. Li, Y. Zuo, H. Song, and Z. Lv, “Deep Learning in Security of Internet of Things,” IEEE Internet of Things Journal, vol. 9, no. 22, pp. 22 133–22 146, 2022.
  • [7] H.-K. Lim, I. Ullah, J.-B. Kim, and Y.-H. Han, “Virtual Network Embedding Based on Hierarchical Cooperative Multiagent Reinforcement Learning,” IEEE Internet of Things Journal, vol. 11, no. 5, pp. 8552–8568, 2024.
  • [8] S. Dong and Y. Li, “Adaptive Fuzzy Event-Triggered Formation Control for Nonholonomic Multirobot Systems With Infinite Actuator Faults and Range Constraints,” IEEE Internet of Things Journal, vol. 11, no. 1, pp. 1361–1373, June 2024.
  • [9] J.-S. Lee and C.-L. Teng, “An Enhanced Hierarchical Clustering Approach for Mobile Sensor Networks Using Fuzzy Inference Systems,” IEEE Internet of Things Journal, vol. 4, no. 4, pp. 1095–1103, 2017.
  • [10] H. Zhao, J. Tang, B. Adebisi, T. Ohtsuki, G. Gui, and H. Zhu, “An Adaptive Vehicle Clustering Algorithm Based on Power Minimization in Vehicular Ad-Hoc Networks,” IEEE Transactions on Vehicular Technology, vol. 71, no. 3, pp. 2939–2948, January 2022.
  • [11] C. Pham, L. A. T. Nguyen, N. H. Tran, E.-N. Huh, and C. S. Hong, “Phishing-Aware: A Neuro-Fuzzy Approach for Anti-Phishing on Fog Networks,” IEEE Transactions on Network and Service Management, vol. 15, no. 3, pp. 1076–1089, April 2018.
  • [12] N. Talpur, S. J. Abdulkadir, H. Alhussian, M. H. Hasan, N. Aziz, and A. Bamhdi, “Deep Neuro-Fuzzy System Application Trends, Challenges, and Future Perspectives: A Systematic Survey,” Artificial intelligence review, vol. 56, no. 2, pp. 865–913, April 2023.
  • [13] N. Chen, S. Shen, Y. Duan, S. Huang, W. Zhang, and L. Tan, “Non-Euclidean Graph-Convolution Virtual Network Embedding for Space–Air–Ground Integrated Networks,” Drones, vol. 7, no. 3, p. 165, February 2023.
  • [14] L. Song, X. Hu, G. Zhang, P. Spachos, K. N. Plataniotis, and H. Wu, “Networking Systems of AI: On the Convergence of Computing and Communications,” IEEE Internet of Things Journal, vol. 9, no. 20, pp. 20 352–20 381, May 2022.
  • [15] X. Cheng, S. Su, Z. Zhang, H. Wang, F. Yang, Y. Luo, and J. Wang, “Virtual Network Embedding through Topology-Aware Node Ranking,” ACM SIGCOMM Computer Communication Review, vol. 41, no. 2, pp. 38–47, April 2011.
  • [16] N. M. M. K. Chowdhury, M. R. Rahman, and R. Boutaba, “Virtual Network Embedding with Coordinated Node and Link Map**,” in IEEE INFOCOM 2009, June 2009, pp. 783–791.
  • [17] P. Zhang, H. Yao, and Y. Liu, “Virtual Network Embedding Based on Computing, Network, and Storage Resource Constraints,” IEEE Internet of Things Journal, vol. 5, no. 5, pp. 3298–3304, July 2018.
  • [18] H. Yao, S. Ma, J. Wang, P. Zhang, C. Jiang, and S. Guo, “A Continuous-Decision Virtual Network Embedding Scheme Relying on Reinforcement Learning,” IEEE Transactions on Network and Service Management, vol. 17, no. 2, pp. 864–875, February 2020.
  • [19] S. Zhang, Z. Wang, Z. Zhou, Y. Wang, H. Zhang, G. Zhang, H. Ding, S. Mumtaz, and M. Guizani, “Blockchain and Federated Deep Reinforcement Learning based Secure Cloud-Edge-end Collaboration in Power IoT,” IEEE Wireless Communications, vol. 29, no. 2, pp. 84–91, April 2022.
  • [20] M. Dolati, S. B. Hassanpour, M. Ghaderi, and A. Khonsari, “DeepViNE: Virtual Network Embedding with Deep Reinforcement Learning,” in IEEE INFOCOM 2019 - IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS), September 2019, pp. 879–885.
  • [21] N. Chen, P. Zhang, N. Kumar, C.-H. Hsu, L. Abualigah, and H. Zhu, “Spectral Graph Theory-Based Virtual Network Embedding for Vehicular Fog Computing: A Deep Reinforcement Learning Architecture,” Knowledge-Based Systems, vol. 257, p. 109931, Decemeber 2022.
  • [22] P. Zhang, N. Chen, S. Li, K.-K. R. Choo, C. Jiang, and S. Wu, “Multi-Domain Virtual Network Embedding Algorithm Based on Horizontal Federated Learning,” IEEE Transactions on Information Forensics and Security, vol. 18, pp. 3363–3375, May 2023.
  • [23] A. Fischer, J. F. Botero, M. T. Beck, H. De Meer, and X. Hesselbach, “Virtual Network Embedding: A Survey,” IEEE Communications Surveys & Tutorials, vol. 15, no. 4, pp. 1888–1906, February 2013.
  • [24] W. Fan, F. Xiao, M. Lv, L. Han, J. Wang, and X. He, “Node Essentiality Assessment and Distributed Collaborative Virtual Network Embedding in Datacenters,” IEEE Transactions on Parallel and Distributed Systems, vol. 34, no. 4, pp. 1265–1280, February 2023.
  • [25] J. Zhu, W. Zhao, H. Yang, and F. Nie, “Joint Learning of Anchor Graph-Based Fuzzy Spectral Embedding and Fuzzy K-Means,” IEEE Transactions on Fuzzy Systems, vol. 31, no. 11, pp. 4097–4108, June 2023.
  • [26] B. Pang, “Fuzzy Convexities Via Overlap Functions,” IEEE Transactions on Fuzzy Systems, vol. 31, no. 4, pp. 1071–1082, July 2022.
  • [27] H. Cao, Y. Zhu, G. Zheng, and L. Yang, “A Novel Optimal Map** Algorithm with Less Computational Complexity for Virtual Network Embedding,” IEEE Transactions on Network and Service Management, vol. 15, no. 1, pp. 356–371, November 2017.
  • [28] S. Ma, H. Yao, T. Mai, J. Yang, W. He, K. Xue, and M. Guizani, “Graph Convolutional Network Aided Virtual Network Embedding for Internet of Thing,” IEEE Transactions on Network Science and Engineering, vol. 10, no. 1, pp. 265–274, September 2023.
  • [29] A. Likas, N. Vlassis, and J. J. Verbeek, “The Global K-Means Clustering Algorithm,” Pattern recognition, vol. 36, no. 2, pp. 451–461, February 2003.
  • [30] I. Iancu, “A Mamdani Type Fuzzy Logic Controller,” Fuzzy logic-controls, concepts, theories and applications, vol. 15, no. 2, pp. 325–350, March 2012.
  • [31] R. Zhu, G. Li, Y. Zhang, Z. Fang, and J. Wang, “Load-Balanced Virtual Network Embedding Based on Deep Reinforcement Learning for 6G Regional Satellite Networks,” IEEE Transactions on Vehicular Technology, vol. 72, no. 11, pp. 14 631–14 644, May 2023.