# Fuzzy B-Spline Surface Modeling

Authors: Rozaimi Zakaria; Abd. Fatah Wahab; R. U. Gobithaasan
Journal: Journal of Applied Mathematics
 (2014)

---

## Abstract

This paper discusses the construction of a fuzzy B-spline surface model. The construction of this model is based on fuzzy set theory which is based on fuzzy number and fuzzy relation concepts. The proposed theories and concepts define the uncertainty data sets which represent fuzzy data/control points allowing the uncertainties data points modeling which can be visualized and analyzed. The fuzzification and defuzzification processes were also defined in detail in order to obtain the fuzzy B-spline surface crisp model. Final section shows an application of fuzzy B-spline surface modeling for terrain modeling which shows its usability in handling uncertain data.


---

## Body

## 1. Introduction

Data points are collected from physical objects to capture its geometric entity and representation in a digital system, that is, CAD systems. This data is collected by using specific devices such as scanning tools. However, the recorded data do not necessarily represent error-free data. It is due to the fact that the errors are produced by the limitations of the tools, environmental factors, human errors, and so forth. Usually, these kinds of data which have uncertainty characteristics cannot be used directly to produce digitized models. Hence, designers use certain type of digital filter to remove and amend the errors involved which is a painstaking process [1]. One may not truly capture the digital model of a scanned model due to the reasons stated above regardless of executing the time consuming digital filter.In order to make the uncertain data useable for analysis and model building, these data have to be defined in a different approach which will incorporate uncertainties of the measurements. In this paper, we propose fuzzy set theory which was introduced by Zadeh in 1965 [2]. It has been widely used in dealing with uncertain matters for wise decision making processes. Readers are referred to [3–5] for detailed explanation regarding the subject matter.Natural spline, Bezier, and B-spline functions are example of functions which can be used to create CAD models with data points [6–8]. These curves and surfaces created with the stated functions are the standard approach to represent a set of collected data points. These curves and surfaces are used to visualize and analyze the CAD models. B-spline functions can be used to design curves and surface using either approximation or interpolation methods to model the real data points [9–15]. The reason why B-spline functions with its weight known as nonuniform rational B-spline (NURBS) being used in many applications is that the designer can easily tweak the control points to obtain a desired shape easily.This paper discusses modeling of interpolating B-spline surface using fuzzy set theory and it is organized as follows. Section2 reviews the previous work on modeling uncertain data via B-spline function in the form of curves and surface. Section 3 discusses the representation of data points using fuzzy set theory, fuzzy number, and fuzzy relation concepts. Section 4 discusses blending of fuzzy data/control point with B-spline curve and surface function where the end results in fuzzy B-spline curve and surface model. This section also defines fuzzification and defuzzification processes. To show the application of fuzzy B-spline surface model, we apply the proposed method to model lakebed from a set of uncertain data in Section 5. This section also compares the result of statistical analysis to show the effectiveness of proposed fuzzy B-spline model.


## 2. Previous Works

The requirement of fuzzy set theory is essential in handling ambiguous data in order to create a model using B-spline curve and surface function. The designers are unable to choose the appropriate control points which are exposed to errors and uncertainties due to the reasons stated above. Therefore, this is the reason why we define the uncertain data by using fuzzy set theory and model them through B-spline curve and surface function.There are a number of methods that have been developed in dealing with uncertain data. Examples include modeling surface of Mount Etna which was proposed by Gallo et al. [16, 17]. In this paper, they developed a fuzzy B-spline model which was conceptualized from fuzzy numbers in the form of intervals. They also proposed alpha level within (
0,1
]. The data of Mount Etna was represented in the form of interval fuzzy surface based on alpha value. Anile et al. [18] further enhanced this method for modeling uncertain and sparse data.Both of the methods discussed above do not have defuzzification process to obtain a crisp fuzzy surface (defuzzified surface). Although both methods employed fuzzification phase, it is still in interval surface form which is not in single surface form. Furthermore, the fuzzification and defuzzification process of B-spline fuzzy system [19] were not elaborated in detail. Therefore, this paper elucidates defuzzification process upon the application of fuzzification process.


## 3. The Process of Defining Fuzzy Data

This section defines uncertain data based on the concept of fuzzy number [3–5, 20] based on the interval of fuzzy number.Definition 1.
LetR be a universal set in which R is a real number and A is subset of R. A Fuzzy set A
⃡ in R is called a fuzzy number and expressed using the α-level with various α-cut; that is, if for every α
∈
(
0,1
], there exist set A
⃡
α in R where A
⃡
α
=
{
x
∈
R
:
μ
A
α
(
x
)
>
α
} and A
⃡
α
=
{
x
∈
R
:
μ
A
α
(
x
)
≥
α
} [21].
Definition1 provides the basis to define uncertain data in which these data are in the form of real numbers. We use triangular fuzzy number for defining the uncertain data in the form of interval. Therefore, the triangular fuzzy number can be defined in Definition 2 as follows [21].Definition 2.
If triangular fuzzy number is represented asA
⃡
=
(
a
,
d
,
c
) and A
⃡
α is a α-cut operation of triangular fuzzy number, then crisp interval by α-cut operation is obtained as A
⃡
α
=
[
a
α
,
c
α
]
=
[
(
d
-
a
)
α
+
a
,
-
(
c
-
d
)
α
+
c
] with α
∈
(
0,1
] where the membership function, μ
A
⃡
(
x
), is given by
(1)
μ
A
⃡
(
x
)
=
{
0
for
x
,
<
a
x
-
a
d
-
a
for
a
≤
x
≤
d
,
c
-
x
c
-
d
for
d
≤
x
≤
c
,
0
for
x
>
c
,
where a and c are left and right fuzzy number which form the interval fuzzy number and d is the crisp point in the interval. The α symbol means the α-level values of triangular fuzzy α-cut (see Figure 1).Figure 1
Triangular fuzzy number,A
⃡
=
(
a
,
b
,
c
).In Figure1, the b value is the crisp fuzzy number which has full membership function; that is, it is equal to 1.Before we define the uncertain data points, we must define the fuzzy relation which is used as a converter from the definition of fuzzy number to the definition of fuzzy data points in real numbers. Then, the definition of fuzzy relation and also the definition of the relation between two fuzzy points can be given in Definition3 till Definition 5.Definition 3.
LetX
,
Y
⊆
R be universal sets; then
(2)
R
⃡
=
{
(
(
x
,
y
)
,
μ
R
⃡
(
x
,
y
)
)
∣
(
x
,
y
)
⊆
X
×
Y
}
is called a fuzzy relation on X
×
Y [4, 21].Definition 4.
LetX
,
Y
⊆
R and A
⃡
=
{
x
,
μ
A
⃡
(
x
)
∣
x
∈
X
} and B
⃡
=
{
y
,
μ
B
⃡
(
y
)
∣
y
∈
Y
} are two fuzzy sets. Then R
⃡
=
{
[
(
x
,
y
)
,
μ
R
⃡
(
x
,
y
)
]
,
(
x
,
y
)
∈
X
×
Y
} is a fuzzy relation on A
⃡ and B
⃡ if μ
R
⃡
(
x
,
y
)
≤
μ
A
⃡
(
x
), ∀
(
x
,
y
)
∈
X
×
Y and μ
R
⃡
(
x
,
y
)
≤
μ
B
⃡
(
y
), ∀
(
x
,
y
)
∈
X
×
Y [4].Definition 5.
LetX
,
Y
⊆
R with M
⃡
=
{
x
,
μ
M
⃡
(
x
)
∣
x
∈
X
} and N
⃡
=
{
y
,
μ
N
⃡
(
y
)
∣
y
∈
Y
} represent two fuzzy data. Then, the fuzzy relation between both fuzzy data is given by P
⃡
=
{
[
(
x
,
y
)
,
μ
P
⃡
(
x
,
y
)
]
,
(
x
,
y
)
∈
X
×
Y
}.
The uncertain data points can be defined after fuzzy number and fuzzy relation had been defined. This uncertain data point becomes fuzzy data point (FDP) as shown in Definition6.Definition 6.
LetD
=
{
(
x
,
y
)
,
x
∈
X
,
y
∈
Y
∣
x
and
y
are
fuzzy
data
} and D
⃡
=
{
P
i
∣
P
is
data
point
} is the set of FDPs which is D
i
∈
D
⊂
X
×
Y
⊆
R with R is the universal set and μ
P
(
D
i
)
:
D
→
[
0,1
] is membership function defined as μ
P
(
D
i
)
=
1 in which D
⃡
=
{
(
D
i
,
μ
D
(
D
i
)
)
∣
D
i
∈
R
}. Therefore,
(3)
μ
P
(
D
i
)
=
{
0
,
if
D
i
∉
R
,
c
∈
(
0,1
)
,
if
D
i
∈
⃡
R
,
1
,
if
D
i
∈
R
,
with μ
D
(
D
i
)
=
〈
μ
P
(
D
i
←
)
,
μ
P
(
D
i
)
,
μ
P
(
D
i
→
)
〉 where μ
D
(
D
i
←
) and μ
D
(
D
i
→
) are left-grade and right-grade membership values, respectively. This can be written as
(4)
D
⃡
=
{
D
⃡
i
=
(
x
i
,
y
i
)
∣
i
=
0,1
,
…
,
n
}
for all i, D
⃡
i
=
〈
D
⃡
i
←
,
D
i
,
D
⃡
i
→
〉 with D
⃡
i
←, D
i, and D
⃡
i
→ being left FDP, crisp data point, and right FDP, respectively [20]. The procedure in defining FDP is illustrated in Figure 2.Figure 2
The process of defining FDPs.Figure2 shows the approach to transform ordinary data point to Fuzzy data point (FDP). The membership grades of FDPs in the form of (
x
,
y
) are illustrated in Figure 3.Figure 3
FDP form after being defined by fuzzy relation.Figure3 shows the formation of FDP by using the definitions of fuzzy relation and fuzzy number. The construction of FDPs is in x- and y-axis.Definition6 gives us the definition of FDP in 2D form and for FDP in 3D form similar concept is applicable given by (5) (based on (4)). Consider
(5)
D
⃡
=
{
D
⃡
i
=
(
x
i
,
y
i
,
z
i
)
∣
i
=
0,1
,
…
,
n
}
.


## 4. The Proposed Method

This section discusses blending of FDPs into B-spline function to produce fuzzy B-spline curves and surfaces. The fuzzification and defuzzification process towards fuzzy B-spline model in the form of either curves or surface are also discussed.Based on B-spline function [6–8], we can define the fuzzy B-spline model [22, 23] as follows.Definition 7.
A fuzzy B-spline curve is a functionB
s
⃡
(
t
) which represents a curve to the set of real fuzzy numbers and it is defined as
(6)
B
s
⃡
(
t
)
=
∑
i
=
1
k
+
h
-
1
P
⃡
i
B
i
,
h
(
t
)
,
where P
i
⃡ are fuzzy control points which are also known as fuzzy data point and B
i
,
h
(
t
) are B-spline basic function with crisp knot sequences t
1
,
t
2
,
…
,
t
m
=
d
+
n
+
1 where d represents the degree of B-spline function and n represents the numbers of control points.Definition 8.
A fuzzy B-spline surface is defined by the following equation:(7)
B
s
S
⃡
(
s
,
t
)
=
∑
i
=
0
m
∑
j
=
0
n
P
⃡
(
i
,
j
)
N
i
,
p
(
s
)
N
j
,
q
(
t
)
,
where (i) N
i
,
p
(
s
) and N
j
,
q
(
t
) are B-spline basic function of degrees p and q with crisp parameters of s and t in [
0,1
]; (ii) each vector knot must satisfy the conditions r
=
m
+
p
+
1 and s
=
n
+
q
+
1; (iii) P
⃡
(
i
,
j
)
=
〈
P
⃡
(
i
,
j
)
←
,
P
(
i
,
j
)
,
P
⃡
(
i
,
j
)
→
〉 are fuzzy control point in ith row and jth column.
Therefore, both of Definitions7 and 8 can be illustrated in the form of numerical examples with Figure 4.
For fuzzy B-spline curve model, the resultant curve interpolates the first and last fuzzy control points. This fuzzy curve was designed based on five fuzzy control/data points (i
=
0,1
,
…
,
4). The same concept is applied to surface which uses diagonal fuzzy control/data points having 16 fuzzy control/data points.
For fuzzy B-spline curve model, the fuzzy control/data points are defined forx-element and for fuzzy B-spline surface model, and the fuzzy control/data points are defined at z-element. Therefore, defining uncertain data can be done by combining either the tuple axis or one of the axes while maintaining other axes as crisp values [21].
Upon defining the fuzzy B-spline model, we use the alpha-cut operation of triangular fuzzy number to do the fuzzification process based on Definition2. Therefore, the fuzzification process of fuzzy control points is given by the following definition which is intact with the B-spline surface function.The fuzzy B-spline models in the form of (a) curves and (b) surface.
(a)
(b)Definition 9.
LetP
⃡
(
i
,
j
) be the set of fuzzy control points where i
=
0,1
,
…
,
m and j
=
0,1
,
…
,
n. Then, P
⃡
(
i
,
j
)
α
k is the alpha-cut operation of fuzzy control point which is given as the following equation where α
k
∈
(
0,1
] with k
=
1,2
,
…
,
l:
(8)
P
⃡
(
i
,
j
)
α
k
=
〈
P
⃡
(
i
,
j
)
α
k
←
,
P
(
i
,
j
)
,
P
⃡
(
i
,
j
)
α
k
→
〉
P
⃡
(
i
,
j
)
α
k
=
〈
[
(
P
(
i
,
j
)
-
P
⃡
(
i
,
j
)
←
)
α
k
+
P
⃡
(
i
,
j
)
←
]
,
P
(
i
,
j
)
,
11111111111
[
-
(
P
⃡
(
i
,
j
)
→
-
P
(
i
,
j
)
)
α
k
+
P
⃡
(
i
,
j
)
→
]
〉
.
Upon fuzzification, the next procedure is the defuzzification process. Defuzzification process is applied to obtain a fuzzy solution in a single value. The result of defuzzification process is also known as fuzzy crisp solution. Therefore, the defuzzification process is defined as in Definition10.Definition 10.
The defuzzification ofP
⃡
(
i
,
j
)
α
k and P
-
(
i
,
j
)
α
k can be given as
(9)
P
-
α
k
=
{
P
-
(
i
,
j
)
α
k
}
where
P
-
(
i
,
j
)
α
k
=
1
3
∑
i
=
0
,
j
=
0
〈
P
-
(
i
,
j
)
α
k
←
,
P
(
i
,
j
)
,
P
-
(
i
,
j
)
α
k
→
〉
.
The illustration of fuzzification and defuzzification processes based on Definitions9 and 10, respectively, is illustrated in Figure 5 with the alpha value being 0.5.
Figure5 shows the fuzzy B-spline surface after fuzzification (Figure 5(a)) and defuzzification of B-spline surface (Figure 5(b)). From Figure 5(b), the fuzzification process was applied by means of alpha-cut operation with the value of alpha as 0.5. Finally, the defuzzification of B-spline surface is equal to crisp B-spline surface because the left and right interval of fuzzy control points is equal.
The constructed fuzzy B-spline surface along with defuzzification process has its merits. The advantage includes the effectiveness model which can be used to model either the crisp data (exact data) or fuzzy data (with variousα-cuts) compared to the crisp model which can be used to model the crisp data only but not for fuzzy data.Fuzzy B-spline surface after fuzzification and defuzzification processes.
(a)
(b)


## 5. Lakebed Modeling

This section illustrates an application example of fuzzy B-spline surface model proposed in this paper. The proposed model is used to generate the lakebed by using collected data points which is exposed to various kinds of errors.These errors which occurred during data point retrieval include the wavy water surface condition which gives the uncertain data reading. Therefore, every set of data points in modeling underwater ground surface has the error of accuracy to a certain extent. Figure6 shows the scenario.Figure 6
The illustration of collecting the depth of lake.Figure6 shows the process of getting uncertain depth lake data which has been taken by echo sounder. We can clearly comprehend the reason for modeling the uncertain data indicating the depth of lake with fuzzy B-spline surface model. This uncertainty in the data exists for z-elements (depth).Fuzzy number concept and fuzzy relation definition are utilized to define this uncertain data. We represent the following algorithm to illustrate the steps to be modeled with fuzzy B-spline from fuzzification to defuzzification processes.Algorithm 11.
Step  1. Define the uncertain data of lakebed by using Definition 6.
Step  2. Blend the FDPs of lakebed together with B-spline surface function which is given as
(10)
B
s
S
L
⃡
(
s
,
t
)
=
∑
i
=
0
,
…
,
7
m
∑
j
=
0
,
…
,
7
n
L
D
⃡
(
i
,
j
)
N
i
,
3
(
s
)
N
j
,
3
(
t
)
which is in the form of bicubic surface.
Note that the set of FDPs of lakebed of Kenyir Lake has 64 data points wherei
×
j with i
,
j
=
0,1
,
…
,
7.
Step  3. Apply alpha-cut operation as fuzzification process (Definition 9) towards (10) with the alpha value being 0.5. Consider
(11)
B
s
S
L
⃡
α
0.5
(
s
,
t
)
=
∑
i
=
0
,
…
,
7
m
∑
j
=
0
,
…
,
7
n
L
D
⃡
(
i
,
j
)
α
0.5
N
i
,
3
(
s
)
N
j
,
3
(
t
)
,
where L
D
⃡
(
i
,
j
)
α
0.5 are the fuzzified data points of lakebed after alpha-cut operation was applied with
(12)
L
D
⃡
(
i
,
j
)
α
0.5
=
〈
L
D
⃡
(
i
,
j
)
α
0.5
←
,
L
D
(
i
,
j
)
,
L
D
⃡
(
i
,
j
)
α
0.5
→
〉
L
D
⃡
(
i
,
j
)
α
0.5
=
〈
[
(
L
D
(
i
,
j
)
-
L
D
⃡
(
i
,
j
)
←
)
0.5
+
L
D
⃡
(
i
,
j
)
←
]
,
L
D
(
i
,
j
)
,
1111111111111
[
-
(
L
D
⃡
(
i
,
j
)
→
-
L
D
(
i
,
j
)
)
0.5
+
L
D
⃡
(
i
,
j
)
→
]
〉
.
Step  4. Use Definition 10 to defuzzify B-spline surface model of lakebed which is
(13)
B
s
S
L
¯
α
0.5
(
s
,
t
)
=
∑
i
=
0
,
…
,
7
m
∑
j
=
0
,
…
,
7
n
L
D
-
(
i
,
j
)
α
0.5
N
i
,
3
(
s
)
N
j
,
3
(
t
)
,
where L
D
-
(
i
,
j
)
α
0.5 are defuzzified data points of lakebed with
(14)
L
D
-
(
i
,
j
)
α
0.5
=
1
3
∑
i
=
0
,
…
,
7
;
j
=
0
,
…
,
7
〈
L
D
⃡
(
i
,
j
)
α
0.5
←
,
D
(
i
,
j
)
,
L
D
⃡
(
i
,
j
)
α
0.5
→
〉
.
The result of Algorithm11 can be illustrated in Figure 7.Figure 7
The process of modeling fuzzy data of Kenyir Lake lakebed.Figure7 shows the processes of defining the uncertain data of lakebed which is then modelled by using fuzzy B-spline surface. The fuzzy data points of lakebed can be defined as the fuzzy control points because we used the approximation method to create the fuzzy B-spline surface which used fuzzy data points as fuzzy control points. After achieving fuzzy B-spline surface modeling, we then apply the fuzzification process which utilized the alpha-cut operation of triangular fuzzy number with the alpha value as 0.5. Then, we defuzzify the fuzzy lake surface based on the definition of defuzzification. By setting the new alpha values that are 0.2 and 0.9, we may obtain the result of the defuzzified lakebed model as illustrated in Figures 8 and 9, respectively.Figure 8
The defuzzification process of fuzzy data of a lakebed for Kenyir Lake withα
=
0.2.Figure 9
The defuzzification process of fuzzy data of a lakebed for Kenyir Lake withα
=
0.9.In order to investigate the effectiveness of the output of lakebed, we find the errors between the defuzzification data points and crisp data points of lakebed which can be given through (15). Therefore, the error between those data can be illustrated by Figures 10, 11, and 12 for different alpha values as follows:
(15)
∑
k
=
0
,
…
,
n
n
L
D
k
e
∑
k
=
0
,
…
,
n
n
(
L
D
k
e
)
where
L
D
k
e
=
L
D
-
k
-
L
D
k
L
D
k
∑
k
=
0
,
…
,
n
n
L
D
k
e
∑
k
=
0
,
…
,
n
n
(
L
D
k
e
)
h
with
k
=
0,1
,
2
,
…
,
n
=
64
.Figure 10
The error between defuzzified and crisp data points of lakebed withα
=
0.5.Figure 11
The error between defuzzified and crisp data points of lakebed withα
=
0.2.Figure 12
The error between defuzzified and crisp data points of lakebed withα
=
0.9.Figure10 until Figure 12 shows the errors between defuzzified and crisp data points of lakebed in order to see the effectiveness of proposed model in modeling uncertain data of lakebed. The average percentage of the errors is 0.0413623 m, 0.0661796 m, and 0.00827245 m, respectively. These errors are acceptable for terrain modeling.


## 6. Conclusion

In this paper, we proposed a new paradigm in modeling the uncertain data by using the hybrid method between fuzzy set theory and B-spline function surface function. This model has an upper hand in dealing with uncertain problem compared to the existing model which only can be used in dealing with and modeling crisp data.The fuzzification and defuzzification processes were also elucidated exclusively for fuzzy B-spline surface model. For fuzzification process, the alpha-cut operation was applied which is in the form of triangular functions. This fuzzification process was applied to obtain the fuzzy interval of fuzzy data points where the crisp fuzzy solution is in this interval. It is then followed by the defuzzification process to find crisp B-spline surface which focused on the defuzzification of fuzzy data points.Finally, to identify the effectiveness of fuzzy B-spline surface model, this model was applied to modeling of the uncertain data of lakebed. The process of defining, fuzzification, and defuzzification of uncertain data of lakebed can be represented by an algorithm which is applicable in dealing with various fuzzy data. The errors produced in the case of lakebed modeling indicate that it can be used for terrain modeling.This work can expand further to solveG
2 Hermite data problems which occur in designing aesthetic splines [24]. One may create a system to optimize and propose a suitable alpha-cut which satisfies given G
2 Hermite data which may facilitate the designers in creating aesthetic shapes efficiently.



---

*Source: 285045-2014-07-06.xml*