tlbofgwc {naspaclust}R Documentation

Fuzzy Geographicaly Weighted Clustering with Teaching - Learning Based Optimization

Description

Fuzzy clustering with addition of spatial configuration of membership matrix with centroid optimization using Teaching - Learning Based Algorithm.

Usage

tlbofgwc(
  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",
  nstud = 10,
  tlbo.same = 10,
  nselection = 10,
  elitism = F,
  n.elite = 2
)

Arguments

data

an object of data with d>1. Can be matrix or data.frame. If your data is univariate, bind it with 1 to get a 2 columns.

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 cdist for details.

order

minkowski order. default is 2.

alpha

the old membership effect with [0,1], if alpha equals 1, it will be same as fuzzy C-Means, if 0, it equals to neighborhood effect.

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 'uniform' (default) and 'normal'. Can be defined as vi.dist= in opt_param.

nstud

number of students. Can be defined as npar= in opt_param. Default is 10.

tlbo.same

number of consecutive unchange to stop the iteration. Can be defined as same= in opt_param. Default is 10.

nselection

number of teachers based on selected students. Can be defined as nselection= in opt_param. Default is equal to nstud.

elitism

wheter to use elitism algorithm or not. Either TRUE or FALSE. Can be defined as elitism= in opt_param. Default is FALSE.

n.elite

Number of elitist students. Can be defined as n.elite= in opt_param. Default is 2.

Details

Fuzzy Geographically Weighted Clustering (FGWC) was developed by Mason and Jacobson (2007) by adding neighborhood effects and population to configure the membership matrix in Fuzzy C-Means. Furthermore, the Teaching - Learning Based Optimization was developed by Rao et al. (2012) and Developed by Rao and Patel (2012) by adding the elitism algorithm in order to get a more optimal solution of a certain complex function.

Value

an object of class 'fgwc'.
An 'fgwc' object contains as follows:

References

Mason GA, Jacobson RD (2007). “Fuzzy Geographically Weighted Clustering.” In Proceedings of the 9th International Conference on Geocomputation, 1–7.

Rao RV, Patel V (2012). “An elitist teaching-learning-based optimization algorithm for solving complex constrained optimization problems.” International Journal of Industrial Engineering Computations, 3(4), 535–560. ISSN 19232926, doi: 10.5267/j.ijiec.2012.03.007, https://doi.org/10.5267/j.ijiec.2012.03.007.

Rao RV, Savsani VJ, Balic J (2012). “Teaching\- learning-based optimization algorithm for unconstrained and constrained real-parameter optimization problems.” Engineering Optimization, 44(12), 1447–1462. doi: 10.1080/0305215x.2011.652103, https://doi.org/10.1080/0305215x.2011.652103.

See Also

fpafgwc gsafgwc

Examples

data('census2010')
data('census2010dist')
data('census2010pop')
# First way
res1 <- tlbofgwc(census2010,census2010pop,census2010dist,3,2,'minkowski',4,nstud=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 TLBO parameter
tlbo_param <- c(vi.dist="uniform",nstud=10, tlbo.same=10,
         nselection=10,elitism=FALSE,n.elite=2)
##FGWC with TLBO
res2 <- fgwc(census2010,census2010pop,census2010dist,'tlbo',param_fgwc,tlbo_param)

[Package naspaclust version 0.2.1 Index]