Skip to main content

Библиотека, содержащая пять методов глобальной оптимизации: метод ветвей и границ, сеточный поиск, метод Монте-Карло, имитация отжига, генетический алгоритм.

Project description

Global_Meth_Package

Global_meth_Package — это Python-библиотека, реализующая популярные методы глобальной оптимизации, такие как:

  • Метод ветвей и границ
  • Сеточный поиск
  • Метод Монте-Карло
  • Имитация отжига
  • Генетический алгоритм

Библиотека создана в учебно-исследовательских целях, легко расширяема, адаптирована под общее API.

Установка

Установить из PyPI:

pip install global-meth-package==0.1.2

Структура проекта

global_meth_package/
│
├── branch_and_bound.py       # Метод ветвей и границ
├── grid_search.py            # Сеточный поиск
├── monte_carlo.py            # Метод Монте-Карло
├── simulated_annealing.py    # Имитация отжига
├── genetic_algorithm.py      # Генетический алгоритм
├── utils.py                  # Тестовые функции
├── __init__.py               # Объединение методов в единый API
│
tests/
├── test_branch_and_bound.py
├── test_grid_search.py
├── test_monte_carlo.py
├── test_simulated_annealing.py
├── test_genetic_algorithm.py
│
pyproject.toml                # Настройки проекта
README.md                     # Документация

Использование

Пример использования метода Монте-Карло:

from global_meth_package.monte_carlo import monte_carlo
from global_meth_package.utils import rastrigin

bounds = [(-5.12, 5.12)] * 3  # 3 переменные
x, fx = monte_carlo(rastrigin, bounds)
print("Приближённый глобальный минимум найден в точке:", x)
print("Значение функции в этой точке:", fx)

Тестирование

Тесты написаны с использованием pytest.

Запуск всех тестов:

pytest tests/

Реализованные методы

Метод Модуль Аргументы по умолчанию
Ветвей и границ branch_and_bound() max_iter=500, eps=1e-5, L=10.0
Сеточный поиск grid_search() grid_size=30
Монте-Карло monte_carlo() max_iter=10000, seed=None
Имитация отжига simulated_annealing() max_iter=10000, T_start=1000, alpha=0.995
Генетический алгоритм genetic_algorithm() population_size=30, generations=100

Поддерживаемые функции

from global_meth_package.utils import rastrigin, rosenbrock, booth
  • rastrigin(x) — функция Растригина
  • booth(x) — функция Бута
  • rosenbrock(x) — функция Розенброка

Лицензия

MIT License

Автор

milka_bulka

Обратная связь

Если вы нашли ошибку или хотите предложить улучшение — напишите сообщение на почту kashinaolesya@inbox.ru.

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

global_meth_package-0.1.2.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

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

global_meth_package-0.1.2-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file global_meth_package-0.1.2.tar.gz.

File metadata

  • Download URL: global_meth_package-0.1.2.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for global_meth_package-0.1.2.tar.gz
Algorithm Hash digest
SHA256 1759846dd53c943139ec5c773aeb4e74650aff950d84c242f95603e312c5bcc7
MD5 915a3e8e5128397b45ebe2b2f3bd789f
BLAKE2b-256 a9e4b6e39e71857d15e8cb42311d64fa926ddb0b578a7d81e82f28345ee5b41a

See more details on using hashes here.

File details

Details for the file global_meth_package-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for global_meth_package-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a1ba2d138dffbc999a9f49d46c110b96e92e23aa9443a6c660a401f96f30e472
MD5 499a90b4b7d48883a45f27d3f36ae06a
BLAKE2b-256 c3381fb6abd1cf4d74c136db96f812b91ff7b28a65c13a191a344efdfee11b6d

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