Avi Kak's Open-Source Projects

In our business, if you do not know how to implement an algorithm in some programming language, you are only blowing hot air.

To fully comprehend an algorithm --- its power and its limitations --- you have no choice but to program it yourself in some language. Those who try to understand algorithms on the basis of other people's implementations are often handicapped by the limitations of their own understanding of the ideas involved.

1.   Algorithm::KMeans --- A Perl Module for Clustering Multidimensional
  Numerical Data
Version 2.05 Version Released:
December 11, 2014
2.   ICP --- A Python Module for Aligning a Photo with a Database Image of
  the Same Scene
Version 2.0 Version Released:
June 1, 2015
3.   BitVector --- A Pure-Python Memory-Efficient Packed Representation for
  Bit Arrays
Version 3.4.7 Version Released:
January 26, 2017
4.   Algorithm::DecisionTree --- A Perl Module for decision-tree based
  classification of multidimensional data
Version 3.43 Version Released:
June 23, 2017
5.   BitArray2D --- A Python Module for a Memory-Efficient Packed Representation
  for 2D Bit Arrays
Version 2.1 Version Released:
March 6, 2012
6.   DecisionTree --- A Python Module for decision-tree based classification
  of multidimensional data
Version 3.4.3 Version Released:
May 14, 2016
7.   Algorithm::VSM --- A Perl Module for Constructing a Vector Space Model
  (VSM) or a Latent Semantic Analysis Model (LSA) of a Software Library
  and for Using This Model for Efficient Retrieval of Files in Response

  to Search Words
Version 1.70 Version Released:
December 16, 2015
8.   Algorithm::ExpectationMaximization --- A Perl Module for Clustering
  Numerical Multidimensional Data with the Expectation Maximization
Version 1.22 Version Released:
December 11, 2014
9.   Algorithm::TicketClusterer --- A Perl Module for Retrieving Excel-Stored Past
  Tickets that are Most Similar to a New Ticket
  (Tickets are commonly used in software
   services industry and customer support businesses to record requests for service, product complaints, user
   feedback, and so on.)
Version 1.01 Version Released:
November 15, 2014
10.   Watershed --- A Python Module for Automatic and Interactive Image
Version 2.2.0 Version Released:
May 24, 2017
11.   PartialLeastSquares --- A Python Module for Making Multidimensional
  Predictions from Multidimensional Observations
Version 1.0.3 Version Released:
May 20, 2015
12.   Algorithm::RandomPointGenerator --- A Perl Module for Generating a Set of
  Random Points in a 2D Plane According to a User-Specified 2D Histogram
Version 1.01 Version Released:
August 15, 2014
13.   Algorithm::LinearManifoldDataClusterer --- A Perl Module for Clustering
  Data That Resides on a Low-Dimensional Manifold in a High-Dimensional
  Measurement Space
Version 1.01 Version Released:
January 9, 2015
14.   Algorithm::BitVector --- A Perl Module for memory efficient packed
  representation of bit vectors, and for logical and arithmetic operations on
  such vectors
Version 1.25 Version Released:
March 2, 2016
15.   NonlinearLeastSquares --- A Python Module for solving optimization
  problems with nonlinear least-squares algorithms (Gradient-Descent and
Version 1.1.1 Version Released:
December 14, 2016
16.   LocalitySensitiveHashing --- A Python implementation of Locality Sensitive
  Hashing for finding nearest neighbors and clusters in multidimensional
  numerical data
Version 1.0.1 Version Released:
May 25, 2017

For update notifications: Follow me on Twitter if you want to be automatically informed of updates to these open source modules.

Valid HTML 4.01 Transitional Valid CSS!