Skip to main content

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

Project description

Global_Method_Package

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

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

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

Установка

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

pip install global-method-package==0.1.0

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

global_method_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_method_package import monte_carlo
from global_method_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_method_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_method_package-0.1.0.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_method_package-0.1.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file global_method_package-0.1.0.tar.gz.

File metadata

  • Download URL: global_method_package-0.1.0.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_method_package-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bfec090492794d99eb1aa3662bf8b9ce06ca900e8e254e287d421009b5d82aca
MD5 3ef3e48999bce9f1b4ac0bdbcee9b799
BLAKE2b-256 37413e698b509480268e1af353df96b92f914edc29781488fe6ae3c3a1c5cf66

See more details on using hashes here.

File details

Details for the file global_method_package-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for global_method_package-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4ba6d87a36d5495ef07dd2152ed6b55f7e8a84e7519b04a1973339c037cf6101
MD5 5f9eeaf95a6c6938165fe4bdbc65713c
BLAKE2b-256 8b9c0f02ef8841933b3dce64f1a30a5c617d61b96ec621b70a2f4470f63661ee

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