Skip to content
David Ray edited this page Oct 30, 2018 · 21 revisions

HTM.java Wiki

Welcome to the HTM.java wiki!

06/06/2015 - (Newly updated entire wiki for arrival of new [Network API])(http://numenta.org/blog/2015/06/08/htm-java-receives-new-network-api.html)

The official wiki for the Java™ language port of the Numenta Platform for Intelligent Computing (NuPIC)

For general information about NuPIC, Numenta, and the Cortical Learning Algorithm, please go to http://numenta.org.

Browse Java Docs

For Eclipse development environment setup tips: click here

Ok, so?

Ok, so... Everyone knows that when the singularity is created, it will be written in the Java language right?
HINT: (This is where you answer, "Yeah, sure... whatever you say.")

Ok, well some of us in the NuPIC Community figured why wait for someone else to do it, or beat around the bush with those other languages? Let's just get down to it. Ergo, htm.java.

Introduction

Throughout the development of htm.java, there was an emphasis on keeping a 1-to-1 correlation between the methods and functions implementing each algorithm in the Java and Python versions. To this end, it is estimated that 98% of the Python tests in each module have the exact same output produced within the Java unit tests and integration tests. The only place where they differ is in places where calls to an underlying Random Number Generator have a significant impact - however, even in those places, every other aspect of the code output is carefully monitored to ensure that, had certain initial parameters been the same, the two versions (Python and Java) would produce the exact same output. This was achieved by altering the Python tests temporarily to be initialized with the same values with which the Java version was initialized - and making sure the output produced was the same!

Next: Usability