Skip to main content

No project description provided

Project description

Pymetaheuristics

Combinatorial Optimization problems with quickly good soving.

Continuous Integration Coverage Status PyPI version

Introduction

Pymetaheuristics is a package to help build and train Metaheuristics to solve real world problems mathematically modeled. It strives to generalize the overall idea of the technic and delivers to the user a friendly wrapper so the cientist may focus on the problem modeling rather than the heuristic implementation. This package is an open source project so feel free to send your implementations and fixes so they may be helpful for others too.

Requires

Only need Python>=3.7. For now, no additional packages will be used.

Subpackages

The idea is to implement all possible Metaheuristics found on the market today and some helper functions to improve what is already there. Note: This package is under construction, new features will come up soon.

What Metaheuristics can be found on this project?

  1. Genetic Algorithm

How to use

First install the package (available on pypi)

$ pip install pymetaheuristics

Import the algorithm model you want to use to solve you problem. Implement the needed functions and pass to the model. Train and get the results.

from pymetaheuristics.genetic_algorithm.model import GeneticAlgorithm

model = GeneticAlgorithm(
    fitness_function=fitness_function,
    genome_generator=genome_generator
)

result = model.train(
    epochs=15, pop_size=10, crossover=pmx_single_point, verbose=True)

Every module has its integration test, which I submit the model for testing with very know NP-Hard problems today (Knapsack, tsp, ...). If you want to see how it goes, check out the integrations under the model testing folder.

How to contribute

Your code and help is very appreciate! Please, send your issue and pr's whenever is good for you! If needed, send an email to me I'll be very glad to help. Let's build up together.

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

pymetaheuristics-0.1.1.tar.gz (8.2 kB view hashes)

Uploaded Source

Built Distribution

pymetaheuristics-0.1.1-py3-none-any.whl (10.2 kB view hashes)

Uploaded Python 3

Supported by

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