Нечеткое множество (Spatial Analyst)

Доступно с лицензией Spatial Analyst.

Краткая информация

Преобразует входной растр в шкалу от 0 до 1, указывающую силу принадлежности к набору, на основе заданного алгоритма нечеткости.

Значение 1 означает полную принадлежность к нечеткому множеству, с уменьшающейся принадлежностью до 0, что указывает на то, что значение не принадлежит к нечеткому множеству.

Более подробно о том, как работает инструмент Нечеткое множество

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

  • Этот инструмент не трансформирует категорийные данные. Чтобы включить категорийные данные в анализ нечеткого наложения, необходима предварительная обработка ячеек. Вы можете создать модель или запустить следующие инструменты геообработки. Сначала используйте инструмент Переклассификация, чтобы предоставить новый диапазон значений (например, 1 к 100). Затем используйте инструмент Разделить, чтобы разделить результат на коэффициент (например, на 100) и нормализовать выходные значения от 0.0 до 1.0.

  • Разброс определяет, насколько быстро значения нечеткого множества уменьшаются от 1 до 0. Чем больше значение, тем больше нечеткости у средней точки. При уменьшении величины разброса, значения принадлежности к нечеткому достигают 0 медленнее. Выборка соответствующего значения распределения – это субъективный процесс, который зависит от диапазона четких значений. Для вариантов принадлежности Гауссов или Ближайший можно начать со значения по умолчанию, равного 0.1. Как правило, значения варьируются в диапазоне [0.01–1] или [0.001-1], соответственно. Для вариантов принадлежности Маленький и Большой, можно начать со значения по умолчанию, равного 5, и значения, как правило, варьируются от 1 до 10.

    Иллюстрация влияния на разброс для Гауссова нечеткого множества

  • Это те случаи, когда ни у одного входного значения не будет 100 процентной возможности принадлежать к указанному набору. Другими словами, ни одно входное значение не будет принадлежать к нечеткому множеству 1. В этом случае вы можете пересчитать значения нечеткого множества, чтобы соответствовать новой шкале. Например, если наибольшее значение принадлежности для входных значений – 0.75, то вы можете установить новую шкалу, умножая каждое значение принадлежности к нечеткому множеству на 0.75.

  • Параметр Ограничение включает опции Очень Несколько и Нет. Очень также известен как концентрация, определенная как функция нечеткого множества в квадрате. Несколько также называется растяжение или Более или Менее. Это квадратный корень функции нечеткого множества. Очень и Несколько увеличивают и уменьшают, соответственно, функции нечеткого множества соответственно.

  • Отрицательные значения неприемлемы для типов нечеткого множества Маленький и Большой.

  • Для типа нечеткого множества Линейный входной растр должен быть содержать упорядоченные данные. Минимум может быть меньше максимума для создания положительного уклона, или больше максимума для создания отрицательного уклона для трансформации.

    Если минимум меньше максимума, для трансформации используется функция с положительным уклоном; если минимум больше максимума, используется функция с отрицательным уклоном.

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входной растр

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

Тип растра может быть целочисленным или с плавающей точкой.

Raster Layer
Тип принадлежности
(Дополнительный)

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

Определенные настройки для этого параметры использует тип Разброс, чтобы определить, насколько быстро значения нечеткого множество уменьшаются от 1 до 0. Значения разброса по умолчанию перечислены в расположенной ниже таблице.

  • Гауссов — присваивается значение принадлежности равное 1 в средней точке.

    Принадлежность уменьшается до 0 для значений, которые отклоняются от средней точки в соответствии с нормальной кривой. Тип Гауссов схож с типом Ближайший, но разброс значительно уже.

    • Середина — по умолчанию используется серединное значение диапазона значений входного растра.
    • Разброс – значение по умолчанию – 0.1. Обычно, значения изменяются в пределах [0.01–1].
  • Маленький — определяет, что небольшие значения входного растра имеют высокую степень принадлежности к нечеткому множеству.

    Значение принадлежности 0.5 присваивается средней точке.

    • Середина — по умолчанию используется серединное значение диапазона значений входного растра.
    • Разброс – Значение по умолчанию равно 5.
  • Большой — определяет, что большие значения входного растра имеют высокую степень принадлежности к нечеткому множеству.

    Значение принадлежности 0.5 присваивается средней точке.

    • Середина — по умолчанию используется серединное значение диапазона значений входного растра.
    • Разброс – Значение по умолчанию равно 5.
  • Ближайший — максимальная принадлежность к нечеткому множеству присваивается значениям, близким к промежуточному значению.

    Значение принадлежности 1 присваивается средней точке. Принадлежность уменьшается до 0 для значений, которые отклоняются от средней точки.

    • Середина — по умолчанию используется серединное значение диапазона значений входного растра.
    • Разброс – значение по умолчанию – 0.1. Как правило, значения варьируются в диапазоне [0.001–1].
  • MSLarge — вычисляет принадлежность на основании среднего значения и среднеквадратического отклонения входных данных, где высокие значения имеют большую степень принадлежности.

    Результат может быть схож с типом Большой, для определенного среднего значения и среднеквадратического отклонения.

    • Средний множитель – Значение по умолчанию – 1.
    • Множитель среднеквадратического отклонения – значение по умолчанию – 1.
  • MSSmall — вычисляет принадлежность на основании среднего значения и среднеквадратического отклонения входных данных, где низкие значения имеют большую степень принадлежности. Этот тип членства используется по умолчанию.

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

    • Средний множитель – Значение по умолчанию – 1.
    • Множитель среднеквадратического отклонения – значение по умолчанию – 1.
  • Линейный — рассчитывает множество, которое основано на линейном преобразовании входного растра.

    Значение принадлежности, равное 0 присваивается минимальному значению, а значение принадлежности 1 присваивается максимальному значению.

    • Минимум — по умолчанию — 1.
    • Максимум — по умолчанию — 2.
Fuzzy function
Ограничение
(Дополнительный)

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

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

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходными данными будет растр со значениями с плавающей точкой в диапазоне от 0 до 1.

Raster

FuzzyMembership(in_raster, {fuzzy_function}, {hedge})
ИмяОписаниеТип данных
in_raster

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

Тип растра может быть целочисленным или с плавающей точкой.

Raster Layer
fuzzy_function
(Дополнительный)

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

Нечеткие классы используются для определения типа принадлежности.

Ниже перечислены типы классов принадлежности:

Ниже представлены формы классов принадлежности:

  • FuzzyGaussian({midpoint},{spread})
  • FuzzyLarge({midpoint},{spread})
  • FuzzyLinear({minimum},{maximum})
  • FuzzyMSLarge({meanMultiplier},{STDMultiplier})
  • FuzzyMSSmall({meanMultiplier},{STDMultiplier})
  • FuzzyNear({midpoint},{spread})
  • FuzzySmall({midpoint},{spread})

Fuzzy function
hedge
(Дополнительный)

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

  • NONEОграничения не будут применены. Это значение по умолчанию
  • SOMEWHATБудет применено ограничение, известное как растяжение, задается как квадратный корень от функции нечеткого множества. Ограничение увеличивает функции нечеткого множества.
  • VERYБудет применено ограничение, известное как концентрация, задается как функция нечеткого множества, возведенная в квадрат. Ограничение уменьшает функции нечеткого множества.
String

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходными данными будет растр со значениями с плавающей точкой в диапазоне от 0 до 1.

Raster

Пример кода

FuzzyMembership, пример 1 (окно Python)

Этот пример создает растр принадлежности к нечеткому множеству, используя функцию Гауссов, где у значений высот близких к средней точке (1200 футов) более высокие значения принадлежности.

import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
outFzyMember = FuzzyMembership("elevation", FuzzyGaussian(1200, 0.06))
outFzyMember.save("c:/sapyexamples/fzymemb")
FuzzyMembership, пример 2 (автономный скрипт)

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

# Name: FuzzyMembership_Ex_02.py
# Description: Scales input raster data into values ranging from zero to one
#     indicating the strength of a membership in a set. 
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "elevation"

# Create the FuzzyGaussian algorithm object
midpoint = 1000
spread = 0.4
myFuzzyAlgorithm = FuzzyGaussian(midpoint, spread)

# Execute FuzzyMembership
outFuzzyMember = FuzzyMembership(inRaster, myFuzzyAlgorithm)

# Save the output
outFuzzyMember.save("c:/sapyexamples/fzymemb2")

Информация о лицензиях

  • Basic: Обязательно Spatial Analyst
  • Standard: Обязательно Spatial Analyst
  • Advanced: Обязательно Spatial Analyst

Связанные разделы