April 2008
2 posts
Changed state to record distance from object to hand, angle between, and distance from mouth to hand, angle between. Generalise function was incorrect, so have almost written up a new one. 
Apr 7th
Note: looping schemas problem; new arm indicator; improvements to learning mechanism; etc.
Apr 5th
March 2008
13 posts
Found some problems: if nothing changed between state one and state two of a schema it could cause problems so they can no longer be added … other stuff. Can now suck objects as well as hand. Fixed some stuff in the learning mechanism. Things are working better now anyways. 
Mar 31st
Grabbin' & Relativity
The schema, instead of recording upper and lower arm angles, now records the distance from hand to object [or mouth] and the angle between arm origin to hand and arm origin to object. It all seems to be working quite well, the aim of this was obviously so that the infant can learn to grab ANY object regardless of position (relative to object, rather than with absolute positions). The grabbing is...
Mar 28th
Comments
Today was a commenting, tidying, and simplifying day. I want everything to be clean before I start doing the next part. I fixed up some of the main schemas, like Response [lots of random crap in that class for no reason, hashtable of responses, boolean values, wtf?]. Same with some other classes. Moved indicators from mainbody to background. Removed interest rate from schema. MainBody, Processor,...
Mar 25th
WatchWatch
Changed … lots. Info is in a file called “prolbemoseee.txt” on my desktop. Or is it, “WERONG.txt”. One of those.
Mar 24th
Give a little love ...
… and it all comes back to you! I’ve made some changes with functionSix() and functionSeven() regarding storing the schema that the learning mechanism is aiming for at this point and other tweaks in those methods. I’m sort of frightened to see if it has helped at this early hour. 
Mar 23rd
Stupid Face
Todays code changes: removed match angles because it was only called once so moved content to calling method removed all matchEyeAngle, matchArmAngle etc methods in place of one matchValues method. removed getTargetSchemaMatchingEnvironment and getSchemaMatching(state) in place of getschemamatching(state,hastobetarget) removed matchesEnvironment in place of compareStates removed...
Mar 23rd
Update
The problem appears to have been with delta values. I’ve been using one delta value for fovea, one for eye, and one for arm. However, the same delta value shouldn’t be used to compare one fovea distance with another fovea distance, as should be used to check whether the fovea is over an object or not. I recon if I play around with these values for a while things will start kicking ass....
Mar 19th
Tweak
Last night I made some improvements with the algorithm used to detect whether an object is on the line of sight, and tweaked a couple of other things (e.g. movement speed and length of eye). I let it run for a while and it actually seemed to learn what was what … until it started flapping away in a corner somewhere [learned], so todays issue is to sort that out! 
Mar 19th
:S
I forgot to post last time I worked on the foetus. I’ve added some cool GUI stuff, a brain indicator, text showing the last response, and size of library. I also did some stuff with whether a schema matches one in the library. The fovea works really well in the last video I took, but unfortunately it seems to learn to move the fovea forward to hit the object even if the fovea is beyond the...
Mar 14th
always room to improv
I’ve made an improvement just now with the block scattering so they only appear within select regions. Also, I’ve replaced all [I think] references to 1000f with Const.NO_VAL as this looks less obscure. I should make it so that they can’t be knocked beyond that area …
Mar 11th
Shpadoinkle
I forgot to post yesterday, but I was just doing some debugging with the eye. I found a great error which I’d overlooked - the cloneSchema method wasn’t cloning the eye angle or fovea distance so that was being lost in the transition. Silly. I had to alter some other methods too - e.g. a method checking for null [1000f] values would return false if any value was null, which was dumb as...
Mar 11th
Update
Further work done today on the eye and fovea and the look, stare, focus, fixate mechanism seems to work well now. However, weird behaviour keeps occuring like the eye moving up down up down up down up down infinitely over an area, so further work needs to be done into the learning mechanism. Debugging here I come …
Mar 5th
Fovea Shtuff
Today I did some work on the eye and fovea. The eye can now hold a list of items in vision that it finds interesting rather than just one. The eye will look at each one it finds the most interesting as it passes over, which now works fine. The fovea state and response pairs are almost complete. The correct values are being held in the schema for the eye.  TODO: state 2 should not include values in...
Mar 4th
February 2008
18 posts
WatchWatch
Current eye progress.
Feb 27th
EPIC WIN.
Awesome eye progress. I kept having StackOverflowException, which meant that I had an infinite loop in my code. The entire learning mechanism is just a giant loop with loads of variables so it was impossible to trace where this loop started and ended. I managed to fix this, it turns out the problem was in the FireSchema method where it called FunctionOne(): I changed it to learningMode = 1 and it...
Feb 27th
Progress
As of last night, the eye can now stop and stare at an object while the arm still continues to move about. However, I’ve got a problem where the arm still thinks it’s in the mouth, despite it having been reset -which causes strange things to happpen. I’m not quite sure why this is happening … I need to change the schemas to store the difference in eye angle between the...
Feb 27th
Eye Problems
Well, I started programming the eyes today but it didn’t go well. The eyes will stop rotating when looking at an object, but will stick like that. The problem is that the arm needs to continue moving, even though the eyes can’t … which the program isn’t built to like. Also, their are some specifics in the code which mention particular target schemas … and that’s...
Feb 25th
THE EYES
Notes from today’s meeting: Start programming the eyes, zomg. ZOMG. 
Feb 21st
Woops
Hmm, I haven’t posted in a little while - and I can’t really remember exactly what I’ve been doing. I’ve done A LOT: don’t get me wrong, but I don’t know what that was. I guess I did a lot of work towards the learning mechanism, tweaking it and trying to make it work better. Also, making the arm move better by not allowing it to fire schemas that would put it...
Feb 20th
Feb 18th
Today's Meeting
Notes from today: Create a method for showing the “hand path” graphically from state one to state two of a given schema. Test the learning mechanism from A to B to C, where it already knows B to C, etc. Adapt the learning mechansim to make it work [because, it’s not going to]. It might be useful to adapt the algorithm that takes the delta values into account to use the equation...
Feb 18th
Save & Display [sad]
Today, I’ve started both the saving/loading of schemas and displaying schemas from the library. The display seems to work pretty well, but is limited to just showing the arm positions in state 1 and state 2. It was pretty difficult calculating where the arm should be using just the angles, which is something I should include in my report [diagrams etc]. Rather than exporting the schema...
Feb 17th
Flattened & Good Times
Today, I managed to remove a LOT of the methods from my code by creating better methods that could cover a few functions. I tweaked the learning mechanism some more … and I think it might actually be working! Holy crap! I need to test it further: and in order to do that, I need to program the ability to tell the robot arm to reposition itself anywhere that I tell it to. I also need to fix...
Feb 14th
Mbleh
Well, another day has gone and my robot baby arm still doesn’t work as it should. It is learning things, but not properly … still, one step in the right direction! The current problem lies in finding out whether the “target” has been reached, in two situations - and what that target actually is … and when it should be set. Also, the mouth sucking the hand has some...
Feb 12th
Implementizzle
Today, I implemented my written functions as Java.  They didn’t work straight away (and still don’t). This has less to do with my flow of logic and more to do with the ancillary methods for finding if a schema is a target schema (… etc), and other little intricacies of DOOM. The project is on track now though, I’m pretty sure I know where it is going wrong currently and...
Feb 11th
Method to my madness
Yesterday evening I spent a while going through the learning mechanism written algorithm trying to break it in to smaller functions. I’m pretty happy with what I’ve done, and I recon it might even work. So now, all I need to do is implement that and see what happens … *edit - while I remember, I spent a little while this week creating a project plan which I handed in on Friday. 
Feb 8th
Debugging and U.I.
I have been debugging this morning to try and work out what my program is doing (and why!). I fixed up a few errors, but more debugging is required. I’m meeting Frank today at 4pm, so I might get the U.I. then. That’ll make things a LOT easier! One major problem I’ve had up to now is that I cannot have while loops as shown in the algorithm. This is because the graphics engine...
Feb 7th
Progress
Have made further progress with the learning mechanism, but I had to redo most of it.  Technically, everything I wanted is in place, but it doesn’t actually work. So far, it might move the arm a bit … and then just stop. Need to do some debugging to map what exactly the program I’ve written does. Not much :D
Feb 6th
Woopah
Woah, I think I might have made some progress with the learning mechanism. At least, parts that weren’t executing at the right times before now … are.
Feb 5th
Plan
The first project deliverable, a project plan, is due this Friday, so I’ve started doing that today. I’ve also continued with the learning mechanism but I think I might be wasting my time. I need to sit down with a pen and paper and work out how everything will fit together before I do anything else. I thought I could maybe handle the learning mechanism in one place, but there will...
Feb 5th
Learning Mechanism
Today I started programming the learning mechanism, based on Frank’s notes. I’ve gotten tremendously lost, so will start again after dinner. I think what I’ll do is try and “trim the fat” of Frank’s algorithm so that it can only learn some really simple things, and then I can add to that later. I trimmed the algorithm a bit, and tried to put it into Java. It has...
Feb 4th
January 2008
3 posts
Morphing Fovea
This morning I managed to get the Fovea to move backwards and forwards based on the schemas being fired. I ended up doing it by physically changing the geometry of the shape as the fovea gets forced forward, in order to maintain the same axis of rotation. It works fine, so I’m happy!
Jan 29th
Jan 29th
Before Now
I had my first proper meeting with Frank last Friday, and started programming on Monday. I was given the task of getting the eyes to move via schemas and to create a fovea which will also move within the field of vision. On Monday, I managed to get the eye “field of vision” to rotate based on the appropriate schema being called. It took quite a while because I’m still getting...
Jan 29th