rkt-ai-lib 2.0.0

Creator: railscoderz

Last updated:

Add to Cart

Description:

rktailib 2.0.0

rkt_ai_lib - Python library







This Python library is based only on built-in Python libraries and two (2) non-build-in library :

numpy
pandas

Python Version 3.9.9
PyYaml Version 5.4.1 (Released Jan 20, 2021)
numpy Version 1.21.5 (Released Jan 7, 2022)
pandas Version 1.3.5 (Released Dec 12, 2021)

What is Python?
Python is an interpreted high-level general-purpose programming language. Python's design philosophy emphasizes code readability with its notable use of significant indentation. Its language constructs as well as its object-oriented approach aim to help programmers write clear, logical code for small and large-scale projects.
source
What is numpy?
NumPy is the fundamental package for scientific computing in Python.
It is a Python library that provides a multidimensional array object, various derived objects (such as masked arrays and matrices),
and an assortment of routines for fast operations on arrays, including mathematical, logical, shape manipulation,
sorting, selecting, I/O, discrete Fourier transforms, basic linear algebra, basic statistical operations, random simulation and much more.
source
What is pandas?
pandas is a Python package that provides fast, flexible, and expressive data structures designed to make working with
"relational" or "labeled" data both easy and intuitive.
It aims to be the fundamental high-level building block for doing practical, real world data analysis in Python.
Additionally, it has the broader goal of becoming the most powerful and flexible open source data analysis / manipulation tool available in any language.
It is already well on its way towards this goal.
source
Libraries

AI: overlay of pandas library (Renforcement Learning - Qlearning)

Use it
Install
(venv) my_project> pip install rkt_ai_lib [--index-url https://gitlab.tprc.ovh/api/v4/groups/python/-/packages/pypi]


from os.path import exists
from rkt_ai_lib import QLearning
from your_local_lib import MyGameObject

my_action_list = ['up', 'down', 'left', 'right']

# can override alpha (0.1), gamma (0.5)
if exists("my_mind.pkl"):
mind = QLearning(actions=my_action_list, should_load=True, qtable_file_to_load="my_mind.pkl")
else:
mind = QLearning(actions=my_action_list)

# You can use the Qlearning for another thing then game
my_game = MyGameObject()

while True:
# get the current state
state = my_game.get_state()
# get the action
action = mind.choose_action(state)
# do the action your logic is here (move, attack, ... for game, send, buy, ... for trading, ...)
my_game.do_action(action)
# get the reward this is here reward logic
reward = my_game.get_reward(action, state)
# update the Q-table
mind.learn(state, action, reward)

# check if you "win"
if my_game.is_win():
break

mind.save("my_mind.pkl")

Output (as file or sdtout ot both)
Your "game" log

Contributing
If you find this library useful here's how you can help:

Send a merge request with your kickass new features and bug fixes
Help new users with issues they may encounter
Support the development of this library and star this repo!

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.