Алгоритмический метод

редактировать

В математике и информатике, алгоритмический метод является общим подходом для реализация процесса или вычислений.

Содержание
  • 1 Общие методы
    • 1.1 Грубая сила
    • 1.2 Разделяй и властвуй
    • 1.3 Динамический
    • 1.4 Эволюционный
    • 1.5 Обход графа
    • 1.6 Жадный
    • 1.7 Эвристический
    • 1.8 Обучение
    • 1.9 Математическая оптимизация
    • 1.10 Моделирование
    • 1.11 Рекурсия
  • 2 См. Также
  • 3 Примечания
  • 4 Внешние ссылки
Общие методы

Существует несколько широко признанных алгоритмических методов, которые предлагают проверенный метод или процесс для проектирования и построения алгоритмов. В зависимости от цели могут использоваться различные методы, которые могут включать поиск, сортировку, математическую оптимизацию, удовлетворение ограничений, категоризация, анализ и прогноз.

Грубая сила

Грубая сила - это простой, исчерпывающий метод, который оценивает каждый возможный результат для поиска решения.

Разделяй и властвуй

Метод разделяй и властвуй рекурсивно разбивает сложные проблемы на более мелкие подзадачи. Затем каждая подзадача решается, и эти частичные решения объединяются для определения общего решения. Этот метод часто используется для поиска и сортировки.

Динамическое

Динамическое программирование - это систематический метод, при котором сложная проблема рекурсивно декомпозируется на более мелкие, перекрывающиеся подзадачи для решения. В динамическом программировании результаты перекрывающихся подзадач хранятся локально с использованием метода оптимизации, называемого мемоизация.

эволюционный

эволюционный подход, разрабатывающий возможные решения, а затем аналогично биологической эволюции, выполняет серию случайных изменений или комбинаций этих решений и сравнивает новые результаты с функцией приспособленности. Наиболее подходящие или многообещающие результаты выбираются для дополнительных итераций для достижения общего оптимального решения.

Обход графа

Обход графа - это метод поиска решений проблем, которые могут быть представлены как графики. Этот подход является широким и включает поиск в глубину, поиск в ширину, обход дерева и многие конкретные варианты, которые могут включать локальную оптимизацию и исключение поиска. пространства, которые могут быть определены как неоптимальные или невозможные. Эти методы могут использоваться для решения множества проблем, включая кратчайший путь и проблемы удовлетворения ограничений.

Жадный

A жадный подход начинается с оценки одного возможного результата из набора возможных результатов, а затем ищет на местном уровне улучшение этого результата. При обнаружении локального улучшения процесс повторяется и снова локально ищет дополнительные улучшения вблизи этого локального оптимума. Жадный метод, как правило, прост в реализации, и эти серии решений можно использовать для поиска локальных оптимумов в зависимости от того, где начался поиск. Однако жадные методы могут не определить глобальный оптимум для всего набора возможных результатов.

Эвристический

A эвристический подход использует практический метод для достижения немедленного решения, не гарантирующего его оптимальности. 95>

Обучение

Методы обучения используют статистические методы для категоризации и анализа без явного программирования. Обучение с учителем, обучение без учителя, обучение с подкреплением и методы глубокого обучения включены в эту категорию.

Математические оптимизация

Математическая оптимизация - это метод, который можно использовать для вычисления математического оптимума путем минимизации или максимизации функции.

Моделирование

Моделирование - это общий метод абстрагирования реального - мировую проблему в структуру или парадигму, которая помогает в решении.

Рекурсия

Рекурсия - это общий метод для разработки алгоритма, который вызывает себя с все более простой частью задача до одного или нескольких базовых случаев с определенными результатами.,

См. также
Примечания
Внешние ссылки
Последняя правка сделана 2021-06-10 22:44:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте