This week, my main task has been to see what kinds of results I can wring out of the grids that were generated for the earlier paper. I wrote a simple classifier that attempt to "classify" grids based upon their similarity (with no pre-knowlege of their association with one another). I wanted to see if it was even possible to create an unsupervised learner that can categorize and name grids on its own. I started with a simple measure for classification... a match threshold. The classifier would run a given grid through its list (it starts out empty) of places it has seen and classified. If the match exceeded a certain threshold (I used 1000 in the experiments) it could be classified with the "old" classes (if there were several that > 1000, it was classified with the class that yielded the maximum average match value). If the match did not exceed the threshold value, a new class was created. That classification scheme yielded fairly good results. Better results came about when I started to normalize the match value (by dividing by the lesser of the two maximal match values of the two grids). This eliminates the criteria of similar sizes, and also yields a more understandable "percentage" ratio that one could adjust to yield higher/lower classification thresholds. (It currently is at 60%.) It became quiet apparent that the ability of the classifier is dependent upon the "quality" of the grid ("quality" defined as how well it describes a location, i.e., larger grids tends to be better than smaller grids). The quality of the grids can be defined as the match percentage differentials between grids of the same "place" and grids of different "places". Quality can also be defined as the number of correct classifications already in the library. For example, the match percentage differentials of *sweep grids were often only a few percentage, while diffrentials of *sweeps grids were often in the range of 5-20% percentage, and *path grids were even better at 10-20%. The latter two methods of generating grids also seem to affect the optimal percentage threshold (~65% for path grids and ~55% for sweeps grids). I will present a full report on the various classifications once all the grids have been completely "classified." (They are running the back- ground at this very moment.) The next level of experiments is to start the classifier with a core library of places it has classified (both actual classification by the classifier as well as artificial/human-generated classifications) and attempt further, random classifications. If I can get access to a machine that can run the Nserver robotics simulator, perhaps we can extend the experiment to incorporate some new experimental data for the robotics classifier. But, on the whole, the various experiments have shown that it is very much possible to create an unsupervised learner that can classify grids on its own-- though there remains the question of how one goes about setting the value of the match threshold (learning functions?). Experiments after that stage is to attempt to combine (utilizing probabilistic methods) the various classifications to create fewer, but better grids within its case library. Experiments after that would probably to incorporate topological information in aiding classification. July 19th follow-up: EXPERIMENTATION NOTES Feeding Order 1. 6 different grids of all of the same places (Repeated for each of the six places & two methods) 2. 6 different grids each of different places (Repeated for each of the six instances & two methods) 3. Completely random arrangment of place/instances (only for real, others TBC) 4. All grids by order of place (TBC) (Repeated for each of two mthds) 5. All grids by order of instance number (TBC) (Repeated for each of two mthds) (TBC - To Be Completed) GENERALIZATION OF RESULTS - While 60% led 55% in decreasing wrong classifications (as should be expected), 55% had a slight advantage in creating more optimal classifications. - In every instance, SWEEPS beat PATH both in lower wrong classifications and higher optimal classifications. - Increased noise does not appear to have a noticable impact on wrong classifications (tribute to strength of match equation) it did have a noticeable negative impact on optimality (again, as expected). - There is a huge impact coming from serial versus random learning. The robot has far more sucess if it can develop a good place library for one place, than moving on, rather than creating a whole set of places and than randomly attempting to classify them. (Although pure random classification still only resulted in 17% error, versus about 0-6% error for serial learning. Optimality for serial learning: in the 90s; optimality for random learning in the high 60s.) - Very good results came from the grids generated by the real robots, although the low number of grids may necessitate more experimentation in this area. - For further usage, probably recommend (1) serial learning (2) SWEEPS (3) threshold set at 60% in that order of importance to proper classification.