However, addition of a simple functional group into MOF linkers creates a huge complexity in the framework, the number of isomers increasing exponentially with the number of functionalized linkers. Illustrated in Figure , suppose that the linker is a simple benzene-1,4-dicarboxylic acid (bdc), for which there are 4 hydrogen atoms where a functional group could be substituted. If the system is functionalized by one functional group per bdc linker, the number of possible isomers is 4 to the 4th power of the number of linkers, minus any duplicates arising due to symmetry of the framework. In the case of a MOF, which is typically periodic in three dimensions, considering all linkers distinctly would lead to an incredibly large number of linkers. For example, 1g of UiO-66 contains 2.171 × 10 21 linkers. To make this tractable, we consider isomerization at the pore level. This is justifiable as any individual guest molecule will 'see' only one pore environment at a time, and also allows application to discrete molecular cages. At the pore level then, every pore isomer is noteworthy as it has different potential surface and represents a different environment for the guest molecule, especially where the guest molecule is of sufficient size to interact with multiple functional groups on different pore walls. The absorption properties of framework materials such as MOFs are typically computed using the Grand Canonical Monte Carlo (GCMC) method. It is possible to do GCMC simulations for a small number of positional functionalization isomers, however, due to the extremely large number of possible structures the procedure needs to be incorporated into (stochastic) optimisation algorithms or machine learning approaches. Machine learning has been a very attractive research area, because it accelerates the discovery of top performing MOFs. Machine learning in general, learns patterns from provided data to make a simpler model that connects input and output. Each MOF candidate is linked to a descriptor, which can discriminate between MOFs and contains the important features that reflect the targeted property. Choosing a descriptor is the most crucial step in a machine learning procedure; if a descriptor has low correlation to the property of interest, the model will have poor predictive performance.