Skip to main content

RootKit ai Lib (RL - Qlearning)

Project description

rkt_ai_lib - Python library

Package Version

quality reliability_rating security_rating vulnerabilities coverage maintainability

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

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!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rkt_ai_lib-2.1.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rkt_ai_lib-2.1.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file rkt_ai_lib-2.1.0.tar.gz.

File metadata

  • Download URL: rkt_ai_lib-2.1.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for rkt_ai_lib-2.1.0.tar.gz
Algorithm Hash digest
SHA256 8e86edd2f0ccd05e68c96852b36a4cd204872592d0cba4dbadd8503323d56db6
MD5 8a8390c96be024f73e709645df1b9598
BLAKE2b-256 c76f2b65d7d69704dcb2f76cacbdb6f732cacc338e4478a0f7a996170b2881bc

See more details on using hashes here.

File details

Details for the file rkt_ai_lib-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: rkt_ai_lib-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for rkt_ai_lib-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 089cb2abe5ea76c4bde5abfacbda1e8409f2142ba8c262273b768191ad5d3ad4
MD5 bc1e05bf3bad70671e2b2b2847810c9c
BLAKE2b-256 4244d4ccfdb2a424fe68f37418ef9599ab6c5e34e412ee69d9f782103fa0777b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page