Parallel Formal Concept Analysis Algorithms

Nuwan Kodagoda

Nuwan Kodagoda

Malabe, Western Province

6 0
  • 0 Collaborators

Formal Concept Analysis ...learn more

Project status: Under Development

HPC, Artificial Intelligence

Intel Technologies
AI DevCloud / Xeon, Intel CPU

Links [2]

Overview / Usage

Formal Concept Analysis (FCA) provides the mathematical notations for representing concepts and concept hierarchies making use of order and lattice theory. This has now been used in numerous applications which include software engineering, linguistics, sociology, information sciences, information technology, genetics, biology and in engineering.

This project involves the parallelization of FCA Algorithms. Parallel FCA algorithms will contribute in developing FCA implementation that can leverage on modern parallel architectures. Shared Memory Implementations can basically leverage on the multi core processors readily available on any Desktop/Laptop machine. Where as Distributed memory algorithms will enable these algorithms to run on a cluster.

Applications of the Parallel Algorithms include developing systems which can tackle larger real world datasets, development of real time systems that can generate ontologies on the fly and interactive applications that can enable the development of applications like the virtual museum of the pacific (https://australianmuseum.net.au/media/virtual-museum-of-the-pacific) at a much larger scale with millions of artifacts.

Methodology / Approach

A candidate serial algorithm was selected comparing several contemporary serial algorithms. This is outlined in the journal article "Comparision Between Features of CbO based Algorithms for Generating Formal Concepts".

The selected FCA algorithm InClose was parallelized using OpenMP and the approach was presented in the IEEE conference paper "A Parallel Version of the InClose Algorithm".

In this project we are looking at developing two new Parallel Algorithms that includes Shared Memory and a Distributed Memory algorithms. OpenMP and MPI are to be used for the implementations. A python port of the parallel algorithm implementation is also envisaged

Technologies Used

Intel Technologies

Intel AI DevCloud,
Intel C++,
Intel Parallel Studio,
Intel Distribution of Python,
OpenMP,
MPI

Comments (0)