Jump to content

  • Log In with Google      Sign In   
  • Create Account


LifeAI v1.1 available


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
No replies to this topic

#1 Jeremiahg   Members   -  Reputation: 120

Like
2Likes
Like

Posted 13 June 2013 - 06:57 AM

LifeAI is an open source C++ library for Artificial Intelligence decision-making. It can be integrated in video games, robotics, or anything that requires simulated intelligence.

Entities and actions are created in C++ and text files with LifeAI's syntax.  Entities have characteristics that describe them called "stats".  They consider their value of the stats and how much they are modified to assess the "pros" and "cons" of an action.  They also consider their value of other entities involved in the action and how it affects them.  They can then determine an overall value for performing the action.  As stats in the simulation change, LifeAI updates the best action options for the entities. The actions can then be implemented as needed in a simulation.  LifeAI is licensed under the MIT (X11) license.

 

As IADaveMark pointed out in my original LifeAI thread, LifeAI best fits in the "Utility Theory" model for AI. Per his explanation, "Utility can represent anything that can be put on a continuum. Whether it be bullets in your gun, hunger, or a level of happiness, anger, etc. It's all numbers."  It does not provide all of these numbers, values, and weights for you.  But it does provide a thoughtfully crafted utility-based decision architecture.

 

Highlights of Version 1.1 include:

- Actions with negative values can now be selected as the "best action". Enables entities to choose the "lesser of two evils," if an action with a positive value is not an option.
- Added support for new "string" type. Convenient for storing words or phrases in LifeAI files.
- Added feature for creating multiple instances of variables, stats, strings, entities, and actions in LifeAI files at the time of their creation.
- Added laiSetLink() and laiSync() functions as an alternative way to sync data to and from LifeAI. Allows linking the memory address of a data type such as a floating point number to a variable, stat, or string in LifeAI. When laiSync() is called, syncs changes in the data to LifeAI.

 

Download LifeAI

Video of LifeAI Demo App

Video of LifeAI applied to a robot
 

demo_sm.png



Sponsor:



Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS