## 2 System Model and Problem Description
### System Model and Clustering Approach  
In order to cluster the workplace environment, two types of clustering can be performed, which are the disjoint clustering and the user-centric clustering. In the former, persons are divided into groups, and the workplace is split into non-overlapping cluster areas, where each group of persons is assigned to a cluster area and persons in each cluster area cannot be in another cluster. However, they can be in any geofence in the same cluster area. In the latter clustering approach, each person is assigned to a cluster area that contains a group of geofences, and cluster areas of different persons can be overlapped together. Each clustering approach can be implemented in either a static or dynamic manner. In the static clustering approach, clusters are fixed, are defined prior and they change only when the manager of the workplace changes them manually by updating the control measures. Meanwhile, in the dynamic clustering approach, clusters are changed when the persons density changes and are based on the pre-defined control measures. According to the nature of the work, persons may want to move between different geofences in different cluster areas. Therefore, the user-centric clustering is the proper approach for clustering the workplace environment. Moreover, the dynamic clustering approach is more flexible than the static approach when the density of the persons changes during working hours. When the density of persons is high, each person should not move to any geofence that they are not associated with, i.e., not included in the cluster of this person. On the other hand, when the density is low, the associated geofences for each person can be increased. The proposed clustering approach for the workplace environment is illustrated in Figure 1.  
Assume that the persons are split into three classes. The first class is a fully authorized person such as the manager of the workplace that can visit all the geofences. The second class is a partially authorized person that can join a number of associated geofences. Meanwhile, the third class is a unity authorized person that can join only one associated geofence. On the other hand, the geofences are split into two classes, i.e., public and private geofences. The public geofences are temporary associated areas such as break areas and bathrooms, where all persons have these geofences in their clusters. To control the capacity in the public geofences, some geofences are scheduled for specific times and specific durations such as break areas. Meanwhile, some geofences are scheduled for specific durations such as bathrooms. Meanwhile, the private geofences are permanently assigned to some persons according to the work nature. Denote \(\mathcal{K}=\{1,\ 2,\ \dots,\ K\}\) and \(\mathcal{G}=\{1,\ 2,\ \dots,\ G\}\) as a set of persons and geofences, respectively. It is clear that the fully authorized persons have all geofences in \(\mathcal{G}\) in their own clusters and the partially authorized persons have a set of geofences \(\mathcal{P}\subset\mathcal{G}\) as associated geofences for them. Figure 1: Dynamic user-centric clustering approach for the workplace environment. Let \(T\) represent the time duration of the workday. Suppose that \(T\) is split into \(N\) time intervals such that the duration of each interval \(n\in\mathcal{N}=\{1,\ 2,\ \ldots,\ N\}\) is defined by \(T_{n}\). To define the proposed dynamic user-centric clustering approach, let \(\beta_{kg}[n]\) represent a binary indicator to define whether the person \(k\) has geofence \(g\) in its cluster at the time interval \(n\), where \(\beta_{kg}[n]\) can be given by  
\[\beta_{kg}[n]= \begin{cases}1,&\text{if the person $k$ is attached with the}\\ &\text{geofence $g$ at the time interval $n$},\\ 0,&\text{otherwise}.\end{cases}  \tag{1}\]  
Let \(G_{k}[n]\) denote the number of associated geofences for the person \(k\) at the time interval \(n\), where the set of these geofences is represented by \(\mathcal{G}_{k}[n]=\{1,\ 2,\ \ldots,\ G_{k}[n]\}\).