Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
Asked — Edited

Ai Software

I am looking for some information on AI software. I remember reading some were about Leaf and I have no clue about it. I would like to start some kind of AI software on my laptop just to play around with it. At some point (soon) I would like to build a robot that has AI and an on board computer (something real small). I don't know where to start? Can someone guide me on this?




Upgrade to ARC Pro

ARC Pro will give you immediate updates and new features needed to unleash your robot's potential!

Thanks I am using windows 7 64 bit. Should i go to the above links? or is that for window XP?

Thanks for your help

Robotmaker: I was planning on using a small ITX board or the new PICO board I am looking into them also, do you have a recommendation? What operating system are you using? As far as windows7 go's I know it is supported by Microsoft. XP/ XP Pro are near end of life (no more support or updates). That is why I changed to windows 7 Professional for both my laptop and my desktop. I am about to install lisp 6.0 again on my laptop to see if I can get it working.
Leaf is what I am looking for I would like to get it running on my laptop to test it out. My understanding is that with ITX or PICO MB you can load any operating system. Is this true? I know I am asking a lot of questions but it is the way I learn. I appreciate any help you can give me. I did play with LINUX about 10 years ago and it was nice but I went back to Windows after about 3 months. I could use you guidance.

yes i know about about WINDOWS XP PRO no support,(i never use support)
you can use WINDOWS 7 but it will take up much much power (current)
on itx boards check out newegg,on pico board it can handle it.but may need 2 of them ,still very very low current 2 watts,thats also main reason i bought 7 OEM windows xp pro,so can use in all my robots
never had a problem with it or virus for many years,speed very fast
INTEL makes a good ITX board fairly low current quad core
the 32bit processor needed for windows 7 uses twice the current of a dual core or quad core
also whats good is a SSD (SolidState Drive) cost more but saves on a lot of current,plus if your robot falls doesnt damage the hard drive,plus when you install the LEAF software dont want to add any extra software thats not robot related it will slow it down
best way i do one mine is use a software like XPLITE and make your own operating system,pretty easy to do,i dont think it will work on WINDOWS 7 only WINDOWS XP PRO
PRO version is need if you want to also control your robot from a remote terminal using remote desktop
program like XPLITE ,REMOVES un needed programs ,like games,many memory hog resources,and there is alot of them
only need the main system,internet and remote desktop,plus saves alot of space
i also found ways to cut down ion files that my robot uses ,like LISP witch is main AI program
OPENCV witch is for VISION and face tracking ,SAPI for voice recognition,so it takes of less space,plusit helps on whats called VIRTUAL MEMORY,virtual memory is when your board doesnt have enough memory and uses hard drive space for memory
i know many many tricks to get a computer to run faster and lower current
OK great input. Can I keep asking you questions? I don't want to upset you with the questions that is why i am asking. I did join the group that you talked about. So if I have this right I shouldo the following

1. Use a ITX or 2 of the new pico boards. Four mgs of mem

2.Windows XP PRO and XPLITE

3.SSD hard drive.

As for as software go's I should the following:


Ok thanks.

I want to load LISP, LEAF on my laptop using windows 7 to test it out.

yes all that is correct,dont load SAPI,mostly need to join yahoo club to get the updated files for windows 7 and answers to install it
Thanks and have A safe trip. I will talk to you when you get back.

I feel compelled to respond.....
I just want to say that I want folks to be careful planning to use new ITX boards and XP Professional. You may find that it may not load XP very well as some updated drivers are not even available for some of the newer chipsets. All the new hardware is in fact optimized for Windows 7 and 8 and the new ITX boards are recommended to have Windows 7 on them so i would not want folks to think their old copy of XP will work just fine on their new ITX board...It may not. In fact the power management on Windows 7 exceeds XP by far when Windows 7 is properly tuned, especially on the low wattage ITX boards currently being used for Home Theatre PCs. Multitasking and intense processing is way beyond XP capabilities and many benchmarks will show that as well.

I am not denying that some old hardware from 2009 or so may have worked better with XP than Windows 7 when it first came out and many drivers were unavailable but the story is different now. I don't want to sound controversial on this topic, but I don't want folks thinking XP is the right platform for the future of Robotics. It is definitely not due to a whole bunch of reasons including security (Robots of the future will be connected to the Internet). I have worked with Windows for a very long time and currently am a Product Line manager for over 47 thousand Windows XP, Vista, and Windows 7 machines across 4 different Microsoft domains. IT experts will all agree that Windows 7, Linux, and VMWare solutions are where you need to go with IT right now. Macintosh of course is in there too!

Coming down off the soapbox now...but I don't want folks on here to be lead astray.....in the end your won research will prevail.


i tried oo many ITX and PICO all load perfect,have yet to have any problems loading drivers
you might be thinking about the ICORE 5 OR 7 made for WINDOWS 7
I have ICORE 7 IT HAS WINDOWS 7 WITH 16 GIG RAM 2 tera gig harddrive but mostly for programming and videos at one of my main PC ,total is 9 ,each room kitchens and tv's but rest use WINDOWS XP PRO,never breaks down,i even overclock them
becarefull on overclocking pc's need good test equipment some ICORE'S YOU CANT, MOST other PC'S you can
with WINDOWS 7 you will find like me that works with alot of computers at work that windows 7 uses alot of current power its 32 bits and windows xp is 16 bits when you buy a itx board it says what system software will work for it,you really need to test computers with WINDOWS XP OR WINDOWS 7 with DC-DC CONVERTER and use a amp meter,when you buy ICORE 5 OR 7 they are on main pc or laptop,they not really on a battery source where you can measure current,so nless you get a amp meter you cant tell is windows 7 uses more power or not
thats why alot of home theater pc uses windows xp pro
i fine tune my very well and still use more current,plus it needs a bigger hard drive ,it at the LEAF CLUB others are having much trouble with WINDOWS 7,sometimes its a driver problem
with new ITX board you are looking at ICORE 3 OR 5 OR 7 needed for windows 7,now if you compare that to dual core or quad on specs you will see the current draw
dont need a super fast computer for a robot,mostly needed is very low current
dual core is very fast and even the PICO px10000g will handle the leaf software, i have over 20 itx boards and 6 pico px1000g ,and pico i like the best 2 watts,1 GHZ 1 gig ram
ITX BOARD and PICO came out when there was no WINDOWS 7 YET
will get the model # very fast board fairly low current
Thanks Kevin for your input. I do understand what you are saying. I have been using windows 7 for a long time now with an intel I7 processor and 12 GB ram. It works great for video editing. and other things that I do. I am still researching the ITX and pico boards. I will use my laptop that has windows7 pro on it to do my testing. When I get to the ITX or pico board I guess I will try windows 7 but I will also try XP Pro also to see what works for me.

Kevin your opinion is always welcome as is everyone's opinion. In the end I will take all the advice I can get, from all you nice people. Sometimes things just become overwhelming, and I have to stop and ask for some advice.

Thanks for your help and input.

i use windows 7 too and ICORE7 for video editing it work great very fast you do need a very fast processor for A ROBOT
BUT dont forget this is a robot doesnt need that fast of a processor,can very easy run on 1 ghz or higher
like i said you are right about newer ITX board cant use windows xp pro ,mostly have ICORE 5 OR 7 and made for windows 7 and 8
when you buy the new ICORE ITX BOARD it does says how much wattage in specs like ICORE 7 95 WATTS just for cpu AT 12 VOLTS
other item is bigger the cpu ,much higher in cost
you look at the commercial robot designs they dont use WINDOWS 7
and ones at $15000
here is just one example carebot design at $15000 and higher
carebot robot
here is the info specs
Kinect processing is handled by a piece of software called GeckoImager, running on a dual core 1.66GHz Intel Atom motherboard. The navigation is handled by two other GeckoSavantsT, GeckoNavT and GeckoSuperT, running on a separate dual core Atom machine. Both computers were located on the robot during the video.

very close to the design i am making using three 1 ghz 1 gig memory 6 watts total thats about 500mano speed lacking or anything
and there are many others only using windows xp pro costing well over $10000 and one at $100000
another great example of commercial robot design using windows xp
the corebot at almost $5000


Born with a 1.5GHz PC processor, 80 GB hard disk, a 4 DOF (Degree of Freedom) Arm, sensors and much more, CoroBot minimizes the complexity of robotic development. The CoroWare CoroBot CB-W Robot Development Platform is a capable, expandable and affordable robotic platform that comes fully assembled with an application to teleoperate right out of the box. The teleoperation software allows the user to remotely control the robot and read sensors. Complete source code is included.

icore7 mother board

here is a good itx mother board made for WINDOWS 7,i did send it back
it does draw 5.1 amp no load at 12 volts,so for 1 hour nun time just cpu and hard drive plus all extra,no motors sensor or anything else you are looking at a 6 amp battery and 4 hours run time look at 24 amps battery then most likely 10 amps or more for wheelchair motors to handle heavy batteries,total is over 35 amps and more
so you need to add the factor in when adding a computer on board,or board not great too,many problems,dont think any design uses a pc computer,main reason what if power shuts down or loss of WIFI,PLUS SPEED,robot will wonder all over the place,plus sensor feedback and camera feedback and so much more
i forgot a big problem when trying to use the new ITX boards with robot or any design
how do you power the board from 12 volts
you need a pico itx DC -DC conveter with a itx plug to match .now on the dual core or quad core boards ,not a problem
but on new ICORE 3,5,OR 7,so far i havent seen that can handle the power,need close to 400 watt power supply,look at you ICORE processor see what power supply you are using,then need more to handle a hard drive,biggest one they make is 250 watt at 12 volts in and ITX power connection out
puts out different voltages neededd,like 12-,12 +,3.3 volts,5v-,5v+ plus turn-on circuit
some boards like the PX10000G comes with 12 volt converter board with ITX plug

so before anyone buys a new ITX board do your research first,always very important
make shore your converter will handle the board ,hard drive and at full power
mostly when you look for a 12 volt DCto DC ITX converter board the techs will tell you if that board will handle the power of the ITX board
also what type of connector like 24 pin or 20 pin and does it need 4 pin power connector that some pc's uses
robotmaker that was some good information.

its very important you do RESEARCH first ,get the model of the board you want to buy,ITX ICORE for windows 7 or ITX dual core or quad core and get the correct DC-DC converter dont forget extra power for hard drive and full load of cpu power (cpu load is kinda hard to work out),it depends on operating system and how many programs running at same time and more
somewhere i did see a chart that can work out the load if having cd or hard drive or usb camera added and software running ,but cant find it yet,each usb port you use is rated at 500ma
pc for a house is very easy,but robot its harder
now there is another way use a laptop ,but then more added weight and battery charging
you will need 12 to mostly 19 volt converter somestimes less voltage sometimes more,depending on thje wall adapter,then will it fit inside your robot design is another problem
i use alot of differnt types of boards and laptops and do alot of testing and sometimes i can send it back some without losing too much money
RESEARCH does always work in getting the board asnd trying it your self to see if it wll work in your design
I just upgraded my laptop , an Acer Aspire from Vista to Windows 7. I maxed the ram to 4gig. It has never ran as good as it does now, even when it was just pulled out of the box new! I've been trying to get Leaf up and running . There seem to be files everywhere for different OSs but not in one place and setup by OS.I joined the Yahoo Group someone pointed me to search the messages for a missing file I needed. I'm sure it's in 1 of the 1536 that came up in the search. I haven't given up yet though. LOL! J.W.:)

Don't give up. Leaf has been a permanent member of my family for almost two years now. His being in the home is priceless.

so your the one who ask the problem about windows 7,it is very hard to install,some have got it to work,i dont know if add-ons like boards will work,i think roboreal software has a problem somewhat working with windows 7
but on mine going to use windowsXP pro zero problems,lot faster unless you use 64 bit computer,but then it has another problem uses more power is runs at 64 bits not 32 bits ,board does need big power supply plus i see more heat 60 watts or less compare to 90 watts or more,can find specs about the cpu power ,great on desktops,but does have some good,64 bits,more memory
i think thats why most robot companies that sell robots over $5000 only use windows xp pro or linux

do a reasearch on robot companies that sell robots $5000 to $10000 and more ,have yet to see one use windows 7 and i bet they have the best engineers money can buy

i do like WINDOWS 7 for my desktop main computer
Power wont be a problem for me, or even computer speed. But software is a big problem. I think I can do what I want if I could find a AI or chatbot that has facial recognition. I could run that and ARC on the same computer. The only ones I have found are Leaf and Guile 3d and its $180! The problem I have with leaf is me being new to it and bad information . The information is only bad because of time Leaf has been around and the changes that were made to make leaf have different functions and work on different OSs. I haven't seen many videos of Leaf based robots and that kind of throws up a flag for me also.I'll play around with it a while longer though . J.W.:)
Robotmaker so what's it like interacting with you? Do you have to add all the responses in it's library of does it have one to start with and it just adds to it? Also do you use focal recognition on any of them? Thanks! JW:)
recognition you start by who is this and with the web cam he will keep your face in hard drive,so you need to train him first
now on questions ,he does have a long list of them you can ask,and not really to hard to make some using the examples
on chat program it does work kinda good,need more work on it,best person to ask is THOMAS
i am looking to make one too

when you get it up,in the leaf.lisp main file you can name your robot instead of LEAF and in where BRUCE or ALEX or ? you change them with your names and family names ,very easy ,in editor it says find and replace put in BRUCE and in replace put in your name,and all will be change to your name
emotions and other phrases and so on
here is a Basic Script in C++ need to Check it out... gawd knows what it will do with no pramiters or Variables Probably Nothing:D :P ;)
Script as Follows:
// Member function definitions of the AI class.
// For reference only 9/3/03


#include "AI.h"

AI::AI() // Constructor
// Use extensible Array class here
// rather than fixed size array

PsiAryPtr = new PsiStr[ARYSIZ];
EnAryPtr = new EnStr[ARYSIZ];
AudAryPtr = new AudStr[ARYSIZ];

AI::~AI() // Destructor
delete [] PsiAryPtr;
delete [] EnAryPtr;
delete [] AudAryPtr;

// Member Functions

// set functions
// Templates to be used for data base functions

BOOL AI::setEle( PsiStr *, const int ); // set concept array element
BOOL AI::setEle( EnStr *, const int ); // set english lexicon element, element index
BOOL AI::setEle( AudStr *, const int ); // set auditory memory element, element index

// get functions

BOOL AI::getEle( const int, PsiStr * ); // return concept array element
BOOL AI::getEle( const int, EnStr * ); // return english lexicon element
BOOL AI::getEle( const int, AudStr * ); // return auditory memory element

// delete functions

BOOL AI::delPsi( const int ); // delete concept array element, element index
BOOL AI::delEn( const int ); // delete english lexicon element, element index
BOOL AI::delAud( const int ); // delete auditory memory element, element index

// print functions

BOOL AI::printPsiElements(); // output
BOOL AI::printEnElements(); // output
BOOL AI::printAudElements(); // output

BOOL AI::setDefaults()
return (True);

// Functions below to be classes that are members of
// the AI class rather than functions

void AI::Security() // Human input module with AI attention
void AI::Sensorium() // AI Initial processing of Input
void AI::Think // AI Syntax and vocabulary of natural language
void AI::Motorium() // AI Output

void AI::Alife()
Security(); // Human input module with AI management
Sensorium(); // AI Initial processing of Input
Think(); // AI Syntax and vocabulary of natural language
Motorium(); // AI Output

void main(void)


// Declaration of the AI class.
// Member functions defined in AI.cpp

// preprocessor directives that
// prevent multiple inclusions of header file
#ifndef AI_H
#define AI_H

typedef int BOOL;

BOOL True = 1;
BOOL False = 0;

#define ARYSIZ 1024

class AI {



void Alife();


typedef struct AudStrTag // Auditory Memory Array
int pho; // Phoneme
int act; // Activation Level
int pov; // Point of View
int beg; // Beginning
int ctu; // Continuation
int psi; // Tag number to a concept
} AudStr;

typedef struct EnStrTag // English Lexicon Array
int nen; // English concept number
int act; // Activation Level
int fex; // Mindcore Exit tag
int pos; // Part of Speech
int fin; // Mindcore In tag
int aud; // Auditory Tag
} EnStr;

typedef struct PsiStrTag // Mindcore Concept Array
int psi; // Mindcore concept number
int act; // Activation level
int jux; // Juxtaposed modifier
int pre; // Previous associated
int pos; // Part of Speech
int seq; // Subsequent tag
int enx; // Transfer to English
} PsiStr;

AudStr * AudStrPtr;
EnStr * EnStrPtr;
PsiStr * PsiStrPtr;

PsiStr * PsiAryPtr;
EnStr * EnAryPtr;
AudStr * AudAryPtr;

// set functions

BOOL setEle( PsiStr *, const int ); // set concept array element, element index
BOOL setEle( EnStr *, const int ); // set english lexicon element, element index
BOOL setEle( AudStr *, const int ); // set auditory memory element, element index

// get functions

BOOL getEle( const int, PsiStr * ); // return concept array element
BOOL getEle( const int, EnStr * ); // return english lexicon element
BOOL getEle( const int, AudStr * ); // return auditory memory element

// delete functions

BOOL delPsi( const int ); // delete concept array element, element index
BOOL delEn( const int ); // delete english lexicon element, element index
BOOL delAud( const int ); // delete auditory memory element, element index

// print functions

BOOL printPsiElements(); // output
BOOL printEnElements(); // output
BOOL printAudElements(); // output

BOOL setDefaults();

void Security(); // Human input module with AI attention
void Sensorium(); // AI Initial processing of Input
void Think(); // AI Syntax and vocabulary of natural language
void Motorium(); // AI Output