| ifafgwc | R Documentation |
Fuzzy clustering with addition of spatial configuration of membership matrix with centroid optimization using (Intelligent) Firefly Algorithm.
ifafgwc(
data,
pop = NA,
distmat = NA,
ncluster = 2,
m = 2,
distance = "euclidean",
order = 2,
alpha = 0.7,
a = 1,
b = 1,
error = 1e-05,
max.iter = 100,
randomN = 0,
vi.dist = "uniform",
ei.distr = "normal",
fa.same = 10,
nfly = 10,
ffly.no = 2,
ffly.dist = "euclidean",
ffly.order = 2,
gamma = 1,
ffly.beta = 1,
ffly.alpha = 1,
r.chaotic = 4,
m.chaotic = 0.7,
ind.levy = 1,
skew.levy = 0,
scale.levy = 1,
ffly.alpha.type = 4
)
data |
an object of data with d>1. Can be |
pop |
an n*1 vector contains population. |
distmat |
an n*n distance matrix between regions. |
ncluster |
an integer. The number of clusters. |
m |
degree of fuzziness or fuzzifier. Default is 2. |
distance |
the distance metric between data and centroid, the default is euclidean, see |
order |
minkowski order. default is 2. |
alpha |
the old membership effect with [0,1], if |
a |
spatial magnitude of distance. Default is 1. |
b |
spatial magnitude of population. Default is 1. |
error |
error tolerance. Default is 1e-5. |
max.iter |
maximum iteration. Default is 500. |
randomN |
random seed for initialisation (if uij or vi is NA). Default is 0. |
vi.dist |
a string of centroid population distribution between |
ei.distr |
distribution of random walk parameter. Can be defined as |
fa.same |
number of consecutive unchange to stop the iteration. Can be defined as |
nfly |
number of fireflies. Can be defined as |
ffly.no |
The number of selected best fireflies for intelligent firefly algorithm. Can be defined as |
ffly.dist |
The distance between fireflies. Can be defined as |
ffly.order |
The minkowski order of the |
gamma |
distance scaling factor. Can be defined as |
ffly.beta |
Attractiveness constant. Can be defined as |
ffly.alpha |
Randomisation constant. Can be defined as |
r.chaotic |
weight in logistic chaotic between [0,4]. Can be used when |
m.chaotic |
mapping parameter in kent chaotic between [0,1]. Can be used when |
ind.levy |
Levy distribution index for random walk. Can be used when |
skew.levy |
Levy distribution skewness for random walk. Can be used when |
scale.levy |
Levy distribution scale for random walk. Can be used when |
ffly.alpha.type |
An integer. The type of |
Fuzzy Geographically Weighted Clustering (FGWC) was developed by \insertCitefgwc;textualnaspaclust by adding neighborhood effects and population to configure the membership matrix in Fuzzy C-Means. Furthermore, the Firefly Algorithm was developed by \insertCiteYang2009;textualnaspaclust and the technique is also upgraded by \insertCiteintfa;textualnaspaclust by adding the intelligent phase (choosing the best firefly based on the intensity) in order to get a more optimal solution of a certain complex function. FGWC using IFA has been implemented previously by \insertCiteNasution2020;textualnaspaclust.
an object of class 'fgwc'.
An 'fgwc' object contains as follows:
converg - the process convergence of objective function
f_obj - objective function value
membership - membership matrix
centroid - centroid matrix
validation - validation indices (there are partition coefficient (PC), classification entropy (CE),
SC index (SC), separation index (SI), Xie and Beni's index (XB), IFV index (IFV), and Kwon index (Kwon))
max.iter - Maximum iteration
cluster - the cluster of the data
finaldata - The final data (with the cluster)
call - the syntax called previously
time - computational time.
fpafgwc gsafgwc
data('census2010')
data('census2010dist')
data('census2010pop')
# First way
res1 <- ifafgwc(census2010,census2010pop,census2010dist,3,2,'minkowski',4,nfly=10)
# Second way
# initiate parameter
param_fgwc <- c(kind='v',ncluster=3,m=2,distance='minkowski',order=3,
alpha=0.5,a=1.2,b=1.2,max.iter=1000,error=1e-6,randomN=10)
## tune the IFA parameter
ifa_param <- c(vi.dist='uniform', ei.distr='logchaotic',
fa.same=10, npar=15, par.no=3, par.dist='minkowski',
par.order=4, gamma=1, beta=1.5,
alpha=1, chaos=4,update_type=4)
##FGWC with IFA
res2 <- fgwc(census2010,census2010pop,census2010dist,'ifa',param_fgwc,ifa_param)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.