1 Introduction

A fuzzy association rule, such as {high blood pressure}\(\xrightarrow {0.6}\) {having diabetes}, means that if a person suffers from high blood pressure, then there will be about a 60% probability of having diabetes. Fuzzy association rules contain fuzzy sets {having diabetes, 0.6}, which can express various types of vagueness and uncertainty in relations.

Fuzzy association rule mining, has been applied in Web Intelligence [1], since it can provide interpretable relations for quantitative data with fuzzy sets [2]. It has been widely applied in web mining [3], recommendation systems [4], data analytics [5, 6], decision making [7, 8], natural language processing [9] and so on.

Enhancing metrics of fuzzy association rules’ number is one of popular ways to improve the quality of fuzzy association rules. However, there usually are more than one metric for measuring fuzzy association rules, including quantity performance (e.g., the number of rules, the number of frequent itemsets) and quality performance (e.g., fuzzy support and confidence) [10], and each of them can be equally important. Thus, it is essential to optimise multiple objective functions for association rules with high quantity and quality discovery.

There are some existing reference works on the problem of multiple objective functions for association rule mining. Some papers apply stochastic optimisation methods, such as genetic optimisation (GA) algorithm, Ant Colony Optimisation (ACO) algorithm, cross-entropy (CE) algorithm, and reactive search optimisation (RSO) algorithm [11]. Some papers apply the deterministic optimisation method, such as Linear programming problems (LP), Mixed-integer linear programming problems (MILP), Non-linear programming problems (NLP), and Mixed-integer non-linear programming problems (MINLP) [12]. Some papers, such as [13], propose the simulated water-stream algorithm (SWA) by combining stochastic and deterministic optimisation. The SWA algorithm solves objective functions problems that are nondifferentiable.

However, there are still two challenges for existing work: 1) find high performance rules by selecting appropriate partitioning points for fuzzy sets with the given dataset; 2) optimise multiple metrics simultaneously to enhance the quality and quantity of fuzzy association rules.

Therefore, this paper proposes a multi-objective optimisation based fuzzy association rule mining (MOOFARM) method to optimise all metrics in every optimisation step. Then, the proposed method can generate fuzzy association rules with both high quality and quantity. Our contribution is threefold.

  • The proposed multi-objective optimisation method, which optimises all objections simultaneously in each optimisation step (Section 3.2), can be applied in any other application.

  • Our MOOFARM method improves both quantity and quality performance of fuzzy association rules by locating partitioning points for changeable fuzzy sets and division sets, as shown in Section 3.3.

  • Experimental results also witness that our MOOFARM method outperforms its counterparts in terms of quality and quantity of fuzzy association rules, as shown in Section 4.

The rest of this paper is as follows. Section 2 shows existing fuzzy association rule mining methods with an optimisation process. We propose our multi-objective optimisation based fuzzy association rule mining (MOOFARM) method in Section 3. Following this, Section 4 illustrates our experiments and compares our proposed MOOFARM method with its counterparts. Finally, Section 5 concludes this paper.

2 Related works

The current fuzzy association rule mining methods for multiple optimisation include 1) a multi-objective approach; 2) a fuzzy logic-based approach; 3) a fuzzy-based multi-objective optimisation approach.

We first enumerate multi-objective optimisation works. Reference [14] applies a multi-objective genetic approach that can find association rules and improve the accuracy of classification. The fuzzy system generates a classier with high performance in a real-life power system. Reference [15] inaugurates the concept of fuzzy association rule mining and proposes a multi-object genetic algorithm (GA). The authors demonstrate the improvement of strongness, interestingness and comprehensibility. Reference [16] uses a multi-objective genetic approach to extract and optimise fuzzy rules. A computer activity dataset tests the effectiveness.

In addition, more efforts have been made to the multi-objective optimisation. The authors apply the bat algorithm and introduce a cooperative master-slave strategy for different subpopulations in [17]. Various experiments illustrate the bat algorithm outperforming other bio-inspired ones thanks to the association rule mining method. Furthermore, the same authors improve the bat algorithm based association rule mining method in [18]. Their study on cooperative strategies between swarms results in a multi-swarm optimisation method. Reference [17] also applies a hybrid topology by merging the ring and the master-slave methods in [17]. The results of multi-swarm optimisation show a clear superiority against its counterparts in terms of time and rule quality. Reference [19] discusses and compares two genetic algorithms: 1) Genetic Cooperative-Competitive Learning algorithm (GFS.GCCL algorithm); 2) Structural learning algorithm (SLAVE algorithm). The authors employ two public datasets: the Iris dataset and the Wine dataset in the experiments. The experimental results show that the SLAVE algorithm performs better than the GFS.GCCL algorithm in these two datasets. Reference [20] demonstrates the dimension-reduction technique in transactions and itemsets. The authors apply fuzzy and whale optimisation for frequent itemsets discovery and association rule mining. The proposed algorithm is comparable to particle swarm optimisation genetic algorithm and frequent fuzzy itemset-miner, as illustrated in the experimental results.

Next, we discuss fuzzy logic-based optimisation. Reference [21] applies to learn automata (LA) representation with reinforcement-based optimisation method (LA-OMF) to discover fuzzy sets of the time spent by users on each web page (TMFs) when mining fuzzy association rules. The experimental evaluation on a real dataset shows that the LA-OMF method is more efficient in discovering optimised membership function-based fuzzy association rules. Ai et al. [22] presents an optimisation method to optimise partitioning points for fuzzy sets in the fuzzy association rule mining process adaptively. The proposed strategy can predict behaviours with unknown system dynamics. The authors implement an FNN-based soft-sensor to adjust the number of fuzzy sets and optimal image features for better control performance. The strategy is validated in simulations and real-life experiments.

Then, there is also some work on fuzzy-based multi-objective optimisation approach. Reference [23] proposes a multi-objective optimisation method and applies it to fuzzy association rule mining to improve rules’ quality and quantity compared with the FARM method proposed in [24]. The proposed optimised method can reach a better result for at least one of the objectives in each optimisation step. The authors innovate the previous strategy and achieve higher quality and quantity for fuzzy association rules in [25], inspiring us to refine the procedures for multiple objectives optimisation. However, it remains open to obtaining better results for multiple objectives in each optimisation step of association rule mining.

3 Multiple objective optimisation for association rule performance metrics

The multi-objective optimisation method based on gradient descent and Schmidt orthogonal projection mainly includes the following two key steps: 1) Clarify the rule quality standard that needs to be optimised, that is, the objective function in multi-objective optimisation; 2) Use Schmidt orthogonalised projection and its matrix decomposition obtain the direction vector that can optimise multiple objective functions at the same time, and prove through theorem that the multi-objective optimisation algorithm can optimise all objective functions for each the iterative process.

Note that the proposed multi-objective optimisation method can solve the general problem of optimising multiple objectives. The objective functions relating to association rules are just one of its applications.

3.1 Association rules of interestingness and objective functions

Before discussing our objective functions, we borrow the concept of interestingness proposed by Silberschatz and Tuzhilin [26]. The definition of interestingness is shown in Definition 1.

Definition 1

Interestingness in association rule mining describes that an object is valuable on a given occasion. It usually explains that a condition of an association rule or an item is unexpected or actionable by the user in a fixed data set or on a given occasion.

To measure the ‘interestingness’ of an association rule r, we apply the following function from our previous work [23] in multiple objective optimisation processes.

$$\varphi(r) = \min\left\{ \begin{array}{l} \text{Supp}(r) - \text{minSupp}\\ \text{Conf}(r) - \text{minConf}\\ \text{CF}(r)-\text{minCF} \end{array} \right\}.$$
(1)

This formula (1) is applied to control the performance of mined association rules in this paper, where minSupp, minConf and minCF present corresponding user-defined threshold, respectively. Then, the value of function φ(r) larger means the mined association rules’ quality is better. To further optimise the quality of mined rules and compare them with our previous work, we also apply the following φ(r) based objective functions in [23].

  • \({\varPhi }_{1} = \max \limits _{r} \varphi (r)\): the measurement of the best quality rules among all mined fuzzy association rules;

  • \({\varPhi }_{3} = \max \limits _{r_{1}, r_{2}, r_{3}} {\sum }_{i=1}^{3} \varphi (r_{i})\): the average measurement of the three best quality rules among all mined fuzzy association rules;

  • Φ5: the average measurement of the five best quality rules among all mined fuzzy association rules;

  • Φ10: the average measurement of the ten best quality rules among all mined fuzzy association rules;

  • Φn/2: the average measurement of the half best quality rules among all mined fuzzy association rules;

We will use the worst quality rules to fill the deficient ones in calculating these objective functions in our experiments. The performance of these objectives will also be compared as measurements for the quality of fuzzy association rules.

3.2 Construction of our multiple objective optimisations

How to optimise multiple objective functions at the same time is a primary problem in the process of designing multiple objective optimisation algorithms. The basic idea is to construct a matrix according to the gradient of all objective functions and perform Schmidt orthogonal decomposition of the constructed matrix. Then, our optimisation process finds the optimal iterative direction vector of the multiple objective functions according to Schmidt orthogonal decomposition.

Suppose there are m objective functions, then they are denoted as

$$\varphi_{1}, \varphi_{2}, {\ldots} , \varphi_{m}$$

respectively. The gradient of these m objective functions are denoted as

$$\nabla \varphi_{1}, \nabla \varphi_{2}, {\ldots} , \nabla \varphi_{m}.$$

All gradients of the objective functions form a n × m matrix G. Then, we have

$$G = [ \nabla \varphi_{1}, \nabla \varphi_{2}, {\ldots} , \nabla \varphi_{m} ].$$

As matrix G has n rows, which means the matrix GT has n columns.

To find a n dimension vector x, so that

$${G^{T}} \mathbf{x} = \mathbf{y} = { [ y_{1}, y_{2}, \ldots, y_{m} ]^{T}},$$

satisfies condition y1 > 0,y2 > 0,…,ym > 0, then, we can obtain n dimension vector x. This gradient vector x is the solution that can optimise m objective functions simultaneously. To construct this gradient vector x, we define the following Lemmas [27, 28].

Definition 2 (Vector origin perpendicular)

In n dimension linear space, for ∀ non-zero n dimension vector v, the vectors which perpendicular to the vector v and cross the origin point’s hyperplane are denoted as the origin perpendicular [29]. They are shown as follows: ⊥v.

Definition 3 (Vector group of vertical subspace)

In n dimension linear space, ∀k,k < n non-zero n dimension vector v1,v2,…,vk, the vector group of vertical subspace [28] is shown as follows:

$$\perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}} := \perp_{\mathbf{v}_{1}} \cap \perp_{\mathbf{v}_{2}} \cap \ldots \cap \perp_{\mathbf{v}_{k}}.$$

Definition 4 (Vertical projection of vector on vector group)

In the n dimensional linear space, for any given k < n non-zero n dimensional vector v1,v2,…,vk and another n dimensional vector x, vector x about the vector group v1,v2,…,vk is defined as x in projection \(\perp _{\mathbf {v}_{1}, \mathbf {v}_{2}, \ldots , \mathbf {v}_{k}}\) [27],

$$\mathcal{P}_{\perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}}} \mathbf{x}.$$

Lemma 1 (Calculation method of vector vertical projection on vector group)

In a n dimensional linear space, let {k : k < n} non-zero n dimensional vectors v1,v2,…,vk and another n dimensional vector x form a linearly independent vector group of k + 1 vectors, then Schmidt orthogonalisation can get matrix decomposition

$$\left[ \mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}, \mathbf{x} \right] = Q U,$$

where

$$Q = \left[\mathbf{q}_{1}, \mathbf{q}_{2}, \ldots, \mathbf{q}_{k+1}\right]$$

is a n × (k + 1) matrix and

$${\mathbf{q}_{i}^{T}}{\mathbf{q}_{j} } = \left\{ \begin{array}{c} 1, \quad i = j \\ 0, \quad i \neq j \end{array} \right.$$
(2)
$$U= \begin{bmatrix} u_{1,1} & u_{1,2} & {\ldots} & u_{1,k} & u_{1,k+1} \\ 0 & u_{2,2} & {\ldots} & u_{2,k} & u_{2,k+1} \\ \vdots& {\vdots} &{\ddots} & {\vdots} & {\vdots} \\ 0 & 0 & {\ldots} & u_{k,k} & u_{k,k+1} \\ 0 & 0 & {\ldots} & 0 & u_{k+1,k+1} \end{bmatrix}$$

is an upper triangular matrix with all positive diagonal elements and has the following equation

$$\mathcal{P}_{\perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}}} \mathbf{x} = u_{k+1,k+1} \mathbf{q}_{k+1}.$$

Proof

First, let’s see the Schmidt Orthogonalisation process, as shown below:

$$u_{1,1} = \sqrt{\left \langle \mathbf{v}_{1}, \mathbf{v}_{1} \right \rangle},$$
$$\mathbf{q}_{1} = \frac{1}{u_{1,1}} \mathbf{v}_{1},$$
$$u_{1,2} = \left \langle \mathbf{q}_{1}, \mathbf{v}_{2} \right \rangle,$$
$$\tilde{\mathbf{v}}_{2} = \mathbf{v}_{2} - u_{1,2} \mathbf{q}_{1},$$
$$u_{2,2} = \sqrt{\left \langle \tilde{\mathbf{v}}_{2}, \tilde{\mathbf{v}}_{2} \right \rangle},$$
$$\mathbf{q}_{2} = \frac{1}{u_{2,2}} \tilde{\mathbf{v}}_{2},$$
$$\vdots$$
$$u_{i,j} = \left \langle \mathbf{q}_{i}, \mathbf{v}_{j} \right \rangle\quad \forall i = 1,\ldots,j-1$$
$$\tilde{\mathbf{v}}_{j} = \mathbf{v}_{j} - {\sum}_{i=1}^{j-1} u_{i,j} \mathbf{q}_{i},$$
$$u_{j,j} = \sqrt{\left \langle \tilde{\mathbf{v}}_{j}, \tilde{\mathbf{v}}_{j} \right \rangle},$$
$$\mathbf{q}_{j} = \frac{1}{u_{j,j}} \tilde{\mathbf{v}}_{j},$$
$$\vdots$$
$$u_{i,k+1} = \left \langle \mathbf{q}_{i}, \mathbf{x} \right \rangle\quad \forall i = 1,\ldots,k$$
$$\tilde{\mathbf{x}} = \mathbf{x} - {\sum}_{i=1}^{k} u_{i,k+1} \mathbf{q}_{i},$$
$$u_{k+1,k+1} = \sqrt{\left \langle \tilde{\mathbf{x}}, \tilde{\mathbf{x}} \right \rangle},$$
$$\mathbf{q}_{k+1} = \frac{1}{u_{k+1,k+1}} \tilde{\mathbf{x}},$$

The linear independence condition between the vector group v1,v2,…,vk,x is for all i = 1,2,…,k + 1 both ensure that ui,i > 0, so that when calculating qi, ui,i can be used as the denominator.

From the above Schmidt orthogonalisation process, we can also know that there are the following relations:

$$\mathbf{v}_{j} \in \text{span}\left\{ \mathbf{q}_{1},\ldots, \mathbf{q}_{j} \right\} \quad \forall j = 1,2,\ldots,k$$

Apart from the above formula, it has orthogonalisation relations as follows.

$${\mathbf{q}_{i}^{T}}{\mathbf{q}_{j} } = \left\{ \begin{array}{c} 1, \quad i = j \\ 0, \quad i \neq j \end{array} \right.$$

Therefore,

$$\mathbf{q}_{k+1} \perp \mathbf{v}_{j} \quad \forall j = 1,2,\ldots,k,$$

In other words,

$$\mathbf{q}_{k+1} \in \perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}},$$

From q1,q2,…,qk can be expressed linearly by v1,v2,…,vk, we have

$$\mathbf{q}_{j} \perp \perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}},$$

where j < k + 1, then,

$${\sum}_{i=1}^{k} u_{i,k} \mathbf{q}_{i} \perp \perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}}$$

Finally, with

$$\mathbf{x} = {\sum}_{i=1}^{k+1} u_{i,k+1} \mathbf{q}_{i},$$
$$\mathbf{q}_{k+1} \in \perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}},$$

and

$${\sum}_{i=1}^{k} u_{i,k} \mathbf{q}_{i} \perp \perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}},$$

we have

$$\mathcal{P}_{\perp_{\mathbf{v}_{1}, \mathbf{v}_{2}, \ldots, \mathbf{v}_{k}}} \mathbf{x} = u_{k+1,k+1} \mathbf{q}_{k+1}.$$

Lemma 2

Let mn and m × n real matrix A full row rank, That is, the rank of the matrix Ar(A) = m, the non-zero vector x can be found so that

$$A \mathbf{x} = \mathbf{y} = (y_{1}, y_{2}, \ldots, y_{m})^{T},$$
(3)

satisfy y1 ≥ 0,y2 ≥ 0,…,ym ≥ 0, and at least one of them makes yi > 0 true.

Proof

Denote A’s i-th row is ai,∗, ∀ integer in 1,2,…,m, and having

$$\mathbf{x} = \mathcal{P}_{\perp_{\mathbf{a}_{1,*}, \ldots, \mathbf{a}_{i-1,*}, \mathbf{a}_{i+1,*}, \ldots, \mathbf{a}_{m,*}}} \mathbf{a}_{i,*},$$

Then, with Lemma 1, we can ensure that x is non-zero, and the portion vector y1,y2,…,ym of

$$\mathbf{y} = A \mathbf{x}$$

has

$$y_{j} = \left\{ \begin{array}{c} \left \langle x, x \right \rangle, \quad i = j \\ 0, \quad i \neq j \end{array} \right.$$

Theorem 1

Suppose mn and m × n real matrix A is full row rank, then

$$\mathbf{x} := {\sum}_{i=1}^{m} \mathcal{P}_{\perp_{\mathbf{a}_{1,*}, \ldots, \mathbf{a}_{i-1,*}, \mathbf{a}_{i+1,*}, \ldots, \mathbf{a}_{m,*}}} \mathbf{a}_{i,*}$$
(4)

For portion vector y1,y2,…,ym of

$$\mathbf{y} = A \mathbf{x},$$

which satisfies

$$y_{1} > 0, y_{2} > 0, \ldots, y_{m} > 0$$

Proof

According to the proof processing of Lemma 2, for

$$\mathbf{x}_{i} := \mathcal{P}_{\perp_{\mathbf{a}_{1,*}, \ldots, \mathbf{a}_{i-1,*}, \mathbf{a}_{i+1,*}, \ldots, \mathbf{a}_{m,*}}} \mathbf{a}_{i,*}$$

vector Axi, only the i-th portion equals \(\left \langle \mathbf {x}_{i}, \mathbf {x}_{i} \right \rangle > 0\), while other portions are set to 0. Then, we have the sum of them,

$$\mathbf{x} = {\sum}_{i=1}^{m} \mathbf{x}_{i}$$

satisfies the conclusion of this theorem. □

Note that the Theorem 1 not only proves the existence of x, but also gives the construction method of x. The solution method is easy to realise with a computer program. Based on this theorem, the process of determining the search direction for multi-objective optimisation is the construction of the gradient construction matrix corresponding to the objective function.

$$A = \begin{bmatrix} \nabla {\varphi_{1}^{T}} \\ \nabla {\varphi_{2}^{T}} \\ {\vdots} \\ \nabla {\varphi_{m}^{T}} \end{bmatrix},$$
(5)

Then, we can solve the corresponding x in the formula (4) via Theorem 1, that is, Ax = y = (y1,y2,…,ym)T satisfy the relationship y1 > 0,y2 > 0,…,ym > 0. The vector y in Theorem 1 corresponds to the degree of optimisation of the multi-objective function. The direction vector x that satisfies the theorem can be solved simultaneously. The direction vector for optimising the multi-objective function is, therefore, solved.

Although the requirement of the theorem on the rank of Ar(A) = m increases the limitation of the theorem. In practical applications, the probability of r(A) = m in the iterative optimisation process is high. Theoretically, the optimal solution of the optimisation problem will degenerate the matrix A to r(A) = 1. However, the optimal solution is not attainable in a finite step, and the detection of the optimal solution is comparative. It is easier in solving x when the corresponding row vector of A is not full rank.

figure a

From Algorithm 1, we can see that the process of finding the direction for multi-objective optimisation, as shown in lines 1 − 3. Line 1 shows the initialisation step. Line 2 calculate the direction according to Theorem 1. Then, line 3 returns the direction vector η.

Theorem 2

In each optimisation iteration process of multi-objective optimisation, if the vector group formed by the gradient vectors of these objective functions is linearly independent, there is a direction vector η that can optimise all objective functions at the same time.

Proof

It is a direct inference of the Theorem 1. Note that the linearity of the vector group here is only to show that the row of the vector group is full of rank. □

Combined with the Algorithm 1, the Theorem 2 is further explained as follows:

  • The selected interval division points can be gradually optimised through the iterative optimisation target process in Algorithm 1.

  • Fuzzy set and its membership value have no corresponding changes in Algorithm 1, and the update process needs further research.

Determining the objective function of the multi-objective optimisation algorithm is the process of continuously optimising the quality evaluation metrics. This process is the core of the multi-objective optimisation algorithm and the process of discovering better association rules. Therefore, while ensuring the current multi-objective optimisation process, it is necessary to consider the construction process of fuzzy sets and related membership functions.

3.3 Find the direction for global multi-objective optimisation

This subsection further improves our multi-objective optimisation method by applying a random partitioning point for division sets. Also, we compare the optimisation parameters of our MOOFARM approach with that of our previous work, DOFARM.

figure b
Fig. 1
figure 1

Fuzzy set optimisation comparison of our proposed method and the most related work

According to Algorithm 2, we can see our global multi-objective optimisation processes from lines 1 − 15. Lines 1 − 4 are our initialisation steps. Then, we apply our randomly obtained parameters for multi-objectives and apply our proposed optimisation method by lines 5 − 14. Next, we compare the best objectives for each group of randomly obtained parameters by line 7 and keep the best Parameters that can achieve the best objectives according to Algorithm 1 in line 8. In this way, we can find the best direction for our global multi-objective optimisation with lines 11 − 13. We return the best direction in line 15.

According to our previous work [25], division sets construct the fuzzy sets for fuzzy association rules, and five division sets can generate three fuzzy sets. As shown in Figure 1, there are five division sets, and the two partitioning points for the three fuzzy sets are related to the second division set and the fourth division set separately. Therefore, two partitioning points of fuzzy sets are adjustable by changing four partitioning points of division sets.

The most related work DOFARM method adjusts and optimises the partitioning points of fuzzy sets to achieve high performance of fuzzy association rules. In contrast, our proposed MOOFARM optimises the partitioning points for both fuzzy sets and division sets. In this way, our proposed method MOOFARM will be more robust and can achieve better optimisation results. Then, we can mine higher quality and quantity of fuzzy association rules.

4 Experimental results

This section describes our experimental study of the proposed method. We also compare the proposed method with the most related work to show the excellent performance of our proposed multi-objective optimisation based fuzzy association rule mining (MOOFARM) method. We also compare our proposed MOOFARM method with a general fuzzy association rule mining (FARM) method [24] and our previous work DOFARM method [25]. Dataset ‘pima-indians-diabetes’ [30] from UCI Machine Learning Data is applied in our experiments.

4.1 Comparison with the number of frequent itemsets and fuzzy association rules

This subsection compares our MOOFARM method with existing methods: the FARM method and DOFARM method with the number of frequent itemsets and fuzzy association rules.

Fig. 2
figure 2

Comparison of the number of frequent item sets. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Fig. 3
figure 3

Comparison of the number of fuzzy association rules. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Figure 2 illustrates the number of frequent itemsets (Nfreq) among our proposed MOOFARM method, DOFARM method, and FARM method. The performance of three different minimum confidences: 0.5,0.6,0.7 are shown in sub-figures (a), (b), (c) in Figure 2 respectively. Our proposed MOOFARM method has a larger number of frequent itemsets than the numbers of both the FARM and DOFARM methods, such as at minimum support = 0.1, minimum confidence = 0.7, our MOOFARM (≈ 1300) is higher than both of DOFARM (≈ 400) and FARM (≈ 400) by (1300 − 400)/400 = 2.25 = 225% (2.25) times.

Figure 3 compares the number of fuzzy association rules (Nrules) among our proposed MOOFARM method, DOFARM method, and FARM method. For each different minimum confidence in: 0.5,0.6,0.7, our proposed MOOFARM method has a larger number of fuzzy association rules than the numbers of both the FARM method and DOFARM method. Similarly, taking minimum support = 0.1, minimum confidence = 0.7 as an example, our MOOFARM (≈ 600) is higher than both of DOFARM (≈ 100) and FARM (≈ 50) by 5 times and 11 times separately.

4.2 Comparison with the quality of fuzzy association rules

This subsection compares our MOOFARM method with existing methods: the FARM method and DOFARM method the quality of fuzzy association rules. The quality is presented in this paper according to φ(r) as shown in formula (1).

Fig. 4
figure 4

Comparison of the best fuzzy association rule. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Fig. 5
figure 5

Comparison in the best three fuzzy association rules. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Fig. 6
figure 6

Comparison in the best five fuzzy association rules. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Fig. 7
figure 7

Comparison in the best ten fuzzy association rules. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Fig. 8
figure 8

Comparison in the best half fuzzy association rules. a Confidence=0.5; b Confidence=0.6; c Confidence=0.7

Figure 4 compares the quality of fuzzy association rules (Best): φ(r) as shown in formula (1) among our proposed MOOFARM method, DOFARM method, and FARM method. Selecting different minimum confidence: 0.5,0.6,0.7 in Figure 4, our proposed MOOFARM method always has better quality φ(r) of fuzzy association rules than that of both the FARM method and DOFARM method. For example, at minimum support = 0.1, minimum confidence = 0.7, our MOOFARM (≈ 0.68) is higher than DOFARM (≈ 0.52) and FARM (≈ 0.42) by 30.77 % and 61.90 %.

As shown in Figure 5, the quality φ(r) of fuzzy association rules (BestThree) of our proposed MOOFARM method is better than φ(r) of DOFARM and FARM method at different minimum confidences: 0.5,0.6,0.7. At minimum support = 0.1, minimum confidence = 0.7, for example, our MOOFARM (≈ 0.67) is higher than DOFARM (≈ 0.51) and FARM (≈ 0.42) by 31.37 % and 59.52 %.

Figure 6 shows that the quality φ(r) of fuzzy association rules (BestFive) of our proposed MOOFARM method is higher than that of DOFARM and FARM method at different minimum confidences: 0.5,0.6,0.7. For instance, when minimum support = 0.1, minimum confidence = 0.7, our MOOFARM (≈ 0.66) is higher than DOFARM (≈ 0.5) and FARM (≈ 0.4) by 32 % and 65 %.

Figure 7 illustrates the quality of fuzzy association rules (BestTen) among our proposed MOOFARM method, DOFARM method, and FARM method at different minimum confidences: 0.5,0.6,0.7. Our proposed MOOFARM method’s quality φ(r) of fuzzy association rules is always higher than that of the FARM and DOFARM. Taking minimum support = 0.1, minimum confidence = 0.7 as an example, our MOOFARM (≈ 0.65) is higher than DOFARM (≈ 0.45) and FARM (≈ 0.38) by 44.44 % and 71.05 %.

Figure 8 applies different minimum confidence: 0.5,0.6,0.7 to better present the quality performance of all three methods. Our proposed MOOFARM method’s quality φ(r) of fuzzy association rules are much higher than that of both the FARM method and DOFARM method. For example, at minimum support = 0.1, minimum confidence = 0.7, the proposed MOOFARM method (≈ 0.46) increases the quality of fuzzy association rules (BestHalf) by 64.28 % compared to both DOFARM method (≈ 0.28), and FARM method (≈ 0.28).

According to Figures 2 and 3, our proposed MOOFARM method increases the number of frequent item sets and the number of fuzzy association rules than the FARM method and DOFARM method. Also, in Figures 4567 and 8, it is evident that the quality of fuzzy association rules mined by our proposed MOOFARM method is higher than that of its two counterparts. Specifically, at minimum support = 0.1, minimum confidence = 0.7, the proposed MOOFARM method’s quantity of fuzzy association rules increases approximately 2.25 − 5 times (DOFARM) and 2.25 − 11 times; while the quality of MOOFARM method has been improved around 30.77 − 62.28% and 59.52 − 71.05% for DOFARM and FARM respectively.

5 Conclusion

This paper first proposes a general multi-objective optimisation method to optimise all objections for each optimisation step simultaneously. Then, it is applied in fuzzy association rule mining to build our multi-objective optimisation-based fuzzy association rule mining (MOOFARM) model. In addition, we employ metrics in optimisation to improve both association rule’s quality and quantity performance. Moreover, our MOOFARM method achieves better performance as it optimises partitioning points in two rounds: different fuzzy sets and dynamic division sets. Experiments also show that our MOOFARM method outperforms its two counterparts. Specifically, at minimum support = 0.1, minimum confidence = 0.7, our MOOFARM increases the quantity metrics up to 11 times; for the quality of fuzzy association rules, the growth of the proposed MOOFARM method is up to 71.05%.