Skip to main content

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

Project description

Global_Meth_Package

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

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

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

Установка

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

pip install global-meth-package==0.1.0

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

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.1.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.1-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: global_meth_package-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 9f333feabd53234716bc824ccd8e5f676c3581f1f9b5fbd70d39ba4890ff92be
MD5 01087fec8779229e5b3b1b2b1596996b
BLAKE2b-256 6b35a8a7e627c69bc9e7715b3053887e4e403846cfbd86a74e4e4362cf608b55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for global_meth_package-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ebb775b5ac813d14365205192288b6e205b76f4a723b573d0c432f7088460f80
MD5 e4c7b424b6ad8a338ee2809bb8c46df4
BLAKE2b-256 b772709950819513349f1fab094331a3759ecacb3dd831c04934c35ffbe4ccd4

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