Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In with Facebook Sign In with Google Sign In with OpenID

Categories

We have migrated to a new platform! Please note that you will need to reset your password to log in (your credentials are still in-tact though). Please contact lee@programmersheaven.com if you have questions.
Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

LifeAI open source C++ library

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

[link=http://www.lifeai.com/download.html]Download[/link] LifeAI
[link= of LifeAI Demo App
[link= of LifeAI applied to a robot

[img=http://www.lifeai.com/media/demo_sm.png]

[b]What is the benefit of LifeAI?[/b]

LifeAI helps facilitate entity reactions to the changing dynamics of a complex, virtual or real environment. The result is a greater sense of autonomy.

[b]What does it include?[/b]

LifeAI includes functions for managing variables, and computes action preferences for entities based on the provided variables. A file input/output system with specialized syntax is also included. It does NOT include a system for pathfinding, image/audio analysis, or learning (though learning is a future goal).

[b]How does it work?[/b]

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.

[b]Why LifeAI instead of other AI solutions?[/b]

LifeAI was designed to be as simple, intuitive, and flexible as possible. It includes optimizations to perform well at real-time speeds. It can be integrated in almost any project that requires artificial intelligence.

[b]What AI theory is it based on?[/b]

It most closely resembles the Utility Theory.

Comments

  • abettisworthabettisworth Posts: 4Member
    Interesting post, thanks.

    Kind Regards,
    Team at ACCREU
  • jeremiahgjeremiahg Posts: 3Member
    Thanks :) I'm currently working on a demonstration of LifeAI applied to a robot.
  • jeremiahgjeremiahg Posts: 3Member
    Version 1.1 is now available. This release focuses on usability enhancements. Highlights of the release 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.
Sign In or Register to comment.