Поиск точек в наборе Парето
определяет набор нижних и верхних границ для конструктивных переменных в x = paretosearch(fun,nvars,A,b,Aeq,beq,lb,ub)x, так что x всегда находится в диапазоне lb ≤ x ≤ ub. Если линейных уравнений не существует, установите Aeq = [] и beq = []. Если x(i) не имеет нижней границы, набор lb(i) = -Inf. Если x(i) не имеет верхней границы, набор ub(i) = Inf.
применяет нелинейные неравенства x = paretosearch(fun,nvars,A,b,Aeq,beq,lb,ub,nonlcon)c(x) определено в nonlcon. paretosearch функция находит недоминированные точки, такие, что c(x) ≤ 0. Если границ не существует, установите lb = [], ub = []или и то и другое.
Примечание
В настоящее время, paretosearch не поддерживает нелинейные ограничения равенства ceq(x) = 0.
Найдите точки на фронте Парето двухобъектной функции двумерной переменной.
fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; rng default % For reproducibility x = paretosearch(fun,2);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.
Постройте график решения как график рассеяния.
plot(x(:,1),x(:,2),'m*') xlabel('x(1)') ylabel('x(2)')

Теоретически решением этой задачи является прямая линия от [-2,-1] кому [1,2]. paretosearch возвращает равномерно разнесенные точки вблизи этой линии.
Создание фронта Парето для задачи с двумя целями в двух измерениях с учетом линейной зависимости x(1) + x(2) <= 1.
fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; A = [1,1]; b = 1; rng default % For reproducibility x = paretosearch(fun,2,A,b);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.
Постройте график решения как график рассеяния.
plot(x(:,1),x(:,2),'m*') xlabel('x(1)') ylabel('x(2)')

Теоретически решением этой задачи является прямая линия от [-2,-1] кому [0,1]. paretosearch возвращает равномерно разнесенные точки вблизи этой линии.
Создание фронта Парето для задачи с двумя целями в двух измерениях, зависящих от границ x(1) >= 0 и x(2) <= 1.
fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; lb = [0,-Inf]; % x(1) >= 0 ub = [Inf,1]; % x(2) <= 1 rng default % For reproducibility x = paretosearch(fun,2,[],[],[],[],lb,ub);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.
Постройте график решения как график рассеяния.
plot(x(:,1),x(:,2),'m*') xlabel('x(1)') ylabel('x(2)')

Все точки решения находятся на границах ограничения x(1) = 0 или x(2) = 1.
Создание фронта Парето для задачи с двумя целями в двух измерениях, зависящих от границ -1.1 <= x(i) <= 1.1 и нелинейное ограничение norm(x)^2 <= 1.2. Функция нелинейных ограничений появляется в конце этого примера и работает, если этот пример выполняется в реальном времени. Чтобы выполнить этот пример в противном случае, включите функцию нелинейных ограничений в качестве файла на пути MATLAB ®.
Чтобы лучше видеть эффект нелинейного ограничения, задайте параметры, чтобы использовать большой размер набора Парето.
rng default % For reproducibility fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; lb = [-1.1,-1.1]; ub = [1.1,1.1]; options = optimoptions('paretosearch','ParetoSetSize',200); x = paretosearch(fun,2,[],[],[],[],lb,ub,@circlecons,options);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.
Постройте график решения как график рассеяния. Включите график круговой границы зависимости.
figure plot(x(:,1),x(:,2),'k*') xlabel('x(1)') ylabel('x(2)') hold on rectangle('Position',[-1.2 -1.2 2.4 2.4],'Curvature',1,'EdgeColor','r') xlim([-1.2,0.5]) ylim([-0.5,1.2]) axis square hold off

Точки решения, которые имеют положительные x(1) значения или отрицательные x(2) значения близки к границе нелинейной зависимости.
function [c,ceq] = circlecons(x) ceq = []; c = norm(x)^2 - 1.2; end
Контроль хода выполнения paretosearch, укажите 'psplotparetof' функция графика.
fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; options = optimoptions('paretosearch','PlotFcn','psplotparetof'); lb = [-4,-4]; ub = -lb; x = paretosearch(fun,2,[],[],[],[],lb,ub,[],options);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.

Решение выглядит как четвертькруглая дуга с радиусом 18, которая может быть показана как аналитическое решение.
Получение передней панели Pareto как в пространстве функций, так и в пространстве параметров путем вызова paretosearch с обоими x и fval выходы. Задайте параметры для печати набора Парето как в пространстве функций, так и в пространстве параметров.
fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; lb = [-4,-4]; ub = -lb; options = optimoptions('paretosearch','PlotFcn',{'psplotparetof' 'psplotparetox'}); rng default % For reproducibility [x,fval] = paretosearch(fun,2,[],[],[],[],lb,ub,[],options);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.

Аналитическим решением в пространстве целевой функции является четвертькруглая дуга радиуса 18. В пространстве параметров аналитическое решение представляет собой прямую линию из [-2,-1] кому [1,2]. Точки решения близки к аналитическим кривым.
Задайте параметры для мониторинга процесса решения набора Pareto. Кроме того, получите больше выходных данных от paretosearch для понимания процесса решения.
options = optimoptions('paretosearch','Display','iter',... 'PlotFcn',{'psplotparetof' 'psplotparetox'}); fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; lb = [-4,-4]; ub = -lb; rng default % For reproducibility [x,fval,exitflag,output] = paretosearch(fun,2,[],[],[],[],lb,ub,[],options);
Iter F-count NumSolutions Spread Volume 0 60 11 - 3.7872e+02 1 386 12 - 3.4654e+02 2 702 27 9.4324e-01 2.9452e+02 3 1029 27 - 2.9904e+02 4 1357 40 0.0000e+00 3.0154e+02 5 1697 60 1.4903e-01 3.0369e+02 6 1841 60 1.4515e-01 3.0439e+02 7 1961 60 1.7716e-01 3.0465e+02 8 2075 60 1.6123e-01 3.0475e+02 9 2189 60 1.7419e-01 3.0449e+02 Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.

Проверьте дополнительные выходы.
fprintf('Exit flag %d.\n',exitflag)Exit flag 1.
disp(output)
iterations: 10
funccount: 2189
volume: 304.4256
averagedistance: 0.0215
spread: 0.1742
maxconstraint: 0
message: 'Pareto set found that satisfies the constraints. ...'
rngstate: [1x1 struct]
Получите и изучите остатки зависимостей фронта Парето. Создание проблемы с линейным ограничением неравенства sum(x) <= -1/2 и ограничение нелинейного неравенства norm(x)^2 <= 1.2. Для повышения точности используйте 200 точек на передней панели Pareto и ParetoSetChangeTolerance из 1e-7, и дать естественные границы -1.2 <= x(i) <= 1.2.
Функция нелинейных ограничений появляется в конце этого примера и работает, если этот пример выполняется в реальном времени. Чтобы выполнить этот пример в противном случае, включите функцию нелинейных ограничений в качестве файла на пути MATLAB ®.
fun = @(x)[norm(x-[1,2])^2;norm(x+[2,1])^2]; A = [1,1]; b = -1/2; lb = [-1.2,-1.2]; ub = -lb; nonlcon = @circlecons; rng default % For reproducibility options = optimoptions('paretosearch','ParetoSetChangeTolerance',1e-7,... 'PlotFcn',{'psplotparetof' 'psplotparetox'},'ParetoSetSize',200);
Звонить paretosearch с использованием всех выходов.
[x,fval,exitflag,output,residuals] = paretosearch(fun,2,A,b,[],[],lb,ub,nonlcon,options);
Pareto set found that satisfies the constraints. Optimization completed because the relative change in the volume of the Pareto set is less than 'options.ParetoSetChangeTolerance' and constraints are satisfied to within 'options.ConstraintTolerance'.

Ограничения неравенства уменьшают размер набора Парето по сравнению с неограниченным набором. Проверьте возвращенные остатки.
fprintf('The maximum linear inequality constraint residual is %f.\n',max(residuals.ineqlin))The maximum linear inequality constraint residual is 0.000000.
fprintf('The maximum nonlinear inequality constraint residual is %f.\n',max(residuals.ineqnonlin))The maximum nonlinear inequality constraint residual is -0.002619.
Максимальные возвращаемые остатки являются отрицательными, что означает, что все возвращаемые точки осуществимы. Максимальные возвращаемые остатки близки к нулю, что означает, что каждое ограничение активно для некоторых точек.
function [c,ceq] = circlecons(x) ceq = []; c = norm(x)^2 - 1.2; end
fun - Фитнес-функции для оптимизацииОптимизируемые функции пригодности, указанные как дескриптор функции или имя функции.
fun является функцией, которая принимает действительный вектор строки из двойников x длины nvars и возвращает действительный вектор F(x) значений целевой функции. Для получения подробной информации о написании fun, см. раздел Вычислить целевые функции.
Если установить UseVectorized опция для true, то fun принимает матрицу размера nоколо-nvars, где матрица представляет n отдельных лиц. fun возвращает матрицу размера nоколо-m, где m - количество объективных функций. См. раздел Векторизация фитнес-функции.
Пример: @(x)[sin(x),cos(x)]
Типы данных: char | function_handle | string
nvars - Количество переменныхЧисло переменных, указанное как положительное целое число. Решатель пропускает векторы строк длины nvars кому fun.
Пример: 4
Типы данных: double
A - Линейные ограничения неравенстваЛинейные ограничения неравенства, заданные как вещественная матрица. A является Mоколо-nvars матрица, где M - число неравенств.
A кодирует M линейные неравенства
A*x <= b,
где x - вектор столбца nvars переменные x(:), и b - вектор столбца с M элементы.
Например, для указания
x1 + 2x2 ≤ 10
3x1 + 4x2 ≤ 20
5x1 + 6x2 ≤ 30,
дать следующие ограничения:
A = [1,2;3,4;5,6]; b = [10;20;30];
Пример: Чтобы указать, что управляющие переменные суммируются до 1 или менее, задайте ограничения A = ones(1,N) и b = 1.
Типы данных: double
b - Линейные ограничения неравенстваЛинейные ограничения неравенства, заданные как действительный вектор. b является M-элементный вектор, связанный с A матрица. Если вы проходите b как вектор строки, решатели внутренне преобразуют b к вектору столбца b(:).
b кодирует M линейные неравенства
A*x <= b,
где x - вектор столбца N переменные x(:), и A является матрицей размера Mоколо-N.
Например, для указания
x1 + 2x2 ≤ 10
3x1 + 4x2 ≤ 20
5x1 + 6x2 ≤ 30,
дать следующие ограничения:
A = [1,2;3,4;5,6]; b = [10;20;30];
Пример: Чтобы указать, что управляющие переменные суммируются до 1 или менее, задайте ограничения A = ones(1,N) и b = 1.
Типы данных: double
Aeq - Линейные ограничения равенстваЛинейные ограничения равенства, заданные как вещественная матрица. Aeq является Meоколо-nvars матрица, где Me - количество уравнений.
Aeq кодирует Me линейные равенства
Aeq*x = beq,
где x - вектор столбца N переменные x(:), и beq - вектор столбца с Me элементы.
Например, для указания
x1 + 2x2 + 3x3 = 10
2x1 + 4x2 + x3 = 20,
дать следующие ограничения:
Aeq = [1,2,3;2,4,1]; beq = [10;20];
Пример: Чтобы указать, что управляющие переменные суммируются до 1, задайте ограничения Aeq = ones(1,N) и beq = 1.
Типы данных: double
beq - Линейные ограничения равенстваЛинейные ограничения равенства, заданные как действительный вектор. beq является Me-элементный вектор, связанный с Aeq матрица. Если вы проходите beq как вектор строки, решатели внутренне преобразуют beq к вектору столбца beq(:).
beq кодирует Me линейные равенства
Aeq*x = beq,
где x - вектор столбца N переменные x(:), и Aeq является матрицей размера Meqоколо-N.
Например, для указания
x1 + 2x2 + 3x3 = 10
2x1 + 4x2 + x3 = 20,
дать следующие ограничения:
Aeq = [1,2,3;2,4,1]; beq = [10;20];
Пример: Чтобы указать, что управляющие переменные суммируются до 1, задайте ограничения Aeq = ones(1,N) и beq = 1.
Типы данных: double
lb - Нижние границы[] (по умолчанию) | вещественный вектор или массивНижние границы, определяемые как действительный вектор или массив двойников. lb представляет нижние границы по элементам в lb ≤ x ≤ ub.
Внутри, paretosearch преобразует массив lb к вектору lb(:).
Пример: lb = [0;-Inf;4] средства x(1) ≥ 0, x(3) ≥ 4.
Типы данных: double
ub - Верхние границы[] (по умолчанию) | вещественный вектор или массивВерхние границы, определяемые как действительный вектор или массив двойников. ub представляет верхние границы по элементам в lb ≤ x ≤ ub.
Внутри, paretosearch преобразует массив ub к вектору ub(:).
Пример: ub = [Inf;4;10] средства x(2) ≤ 4, x(3) ≤ 10.
Типы данных: double
nonlcon - Нелинейные ограниченияНелинейные ограничения, указанные как дескриптор функции или имя функции. nonlcon - функция, принимающая вектор строки x и возвращает два вектора строк, c(x) и ceq(x).
c(x) - вектор строки нелинейных ограничений неравенства в x. paretosearch функция пытается удовлетворить c(x) <= 0 для всех записей c.
ceq(x) должен вернуться [], потому что в настоящее время paretosearch не поддерживает нелинейные ограничения равенства.
Если установить UseVectorized опция для true, то nonlcon принимает матрицу размера nоколо-nvars, где матрица представляет n отдельных лиц. nonlcon возвращает матрицу размера nоколо-mc в первом аргументе, где mc - количество нелинейных ограничений неравенства. См. раздел Векторизация фитнес-функции.
Например, x = paretosearch(@myfun,nvars,A,b,Aeq,beq,lb,ub,@mycon), где mycon является функцией MATLAB ®, например:
function [c,ceq] = mycon(x) c = ... % Compute nonlinear inequalities at x. ceq = [] % No nonlinear equalities at x.
Дополнительные сведения см. в разделе Нелинейные ограничения.
Типы данных: char | function_handle | string
options - Варианты оптимизацииoptimoptions | структураОпции оптимизации, указанные как выходные данные optimoptions или как структура.
optimoptions скрывает варианты, перечисленные курсивом; см. раздел Опциональные опции Скрытие.
{} обозначает значение по умолчанию. Дополнительные сведения см. в разделе Опции поиска массива.
Опции для patternsearch и paretosearch
| Выбор | Описание | Ценности |
|---|---|---|
| Допуск на зависимости. Для структуры опций используйте | Положительный скаляр | |
| Уровень отображения. | 'off' | 'iter' | 'diagnose' | {'final'} |
| Максимальное количество оценок целевой функции. Для структуры опций используйте | Положительное целое число | |
| Максимальное число итераций. Для структуры опций используйте | Положительное целое число | |
| Общее время (в секундах), допустимое для оптимизации. Для структуры опций используйте | Положительный скаляр | |
| Допуск для размера сетки. Для структуры опций используйте | Положительный скаляр | |
| Функция, вызываемая функцией оптимизации в каждой итерации. Укажите в качестве дескриптора функции или массива ячеек дескрипторов функции. Для структуры опций используйте | Дескриптор функции или массив ячеек дескрипторов функции | |
| Графики выходных данных поиска шаблона. Укажите в качестве имени встроенной функции графика, дескриптора функции или массива ячеек имен встроенных функций графика или дескрипторов функции. Для структуры опций используйте |
Для Для |
| Стратегия опроса, используемая при поиске шаблона. |
Для |
| Вычислять целевые и нелинейные функции ограничения параллельно. См. разделы Векторизованные и параллельные параметры и Использование параллельной обработки в инструментарии глобальной оптимизации. Примечание Необходимо установить Начиная с R2019a, при установке |
|
| Указывает, являются ли функции векторизованными. См. разделы Векторизованные и параллельные опции и векторизация функций цели и ограничения. Примечание Необходимо установить Для структуры опций используйте |
|
Опции для paretosearch Только
| Выбор | Описание | Ценности |
|---|---|---|
| Начальные точки для
| Матрица с |
| Минимальная доля образца для опроса. | Скаляр от 0 до 1 | |
| Количество точек в наборе Парето. | Положительное целое число | |
| Решатель останавливается, когда относительное изменение меры остановки в окне итераций меньше или равно
См. раздел Определения алгоритма паретосearch. Решатель останавливается, когда относительное изменение любого применимого измерения меньше Примечание Настройка | Положительный скаляр | |
Опции для patternsearch Только
| Выбор | Описание | Ценности |
|---|---|---|
| Тайник | С Примечание
|
|
| CacheSize | Размер истории. | Положительный скаляр | |
| CacheTol | Наибольшее расстояние от текущей точки сетки до любой точки в истории для | Положительный скаляр | |
FunctionTolerance | Допуск для функции. Итерации останавливаются, если изменение значения функции меньше Для структуры опций используйте | Положительный скаляр | |
InitialMeshSize | Начальный размер сетки для алгоритма. См. раздел Как работает опрос поиска шаблонов. | Положительный скаляр | |
| InitialPenalty | Начальное значение штрафного параметра. См. раздел Алгоритм решателя нелинейных ограничений. | Положительный скаляр | |
| MaxMeshSize | Максимальный размер сетки, используемый в шаге опроса или поиска. См. раздел Как работает опрос поиска шаблонов. | Положительный скаляр | |
MeshContractionFactor | Коэффициент сжатия сетки для неудачной итерации. Для структуры опций используйте | Положительный скаляр | |
MeshExpansionFactor | Коэффициент расширения сетки для успешной итерации. Для структуры опций используйте | Положительный скаляр | |
| MeshRotate | Поверните массив, прежде чем объявить точку оптимальной. См. раздел Параметры сетки. |
|
| PenaltyFactor | Параметр обновления штрафов. См. раздел Алгоритм решателя нелинейных ограничений. | Положительный скаляр | |
| PlotInterval | Указывает, что функции печати вызываются через каждый интервал. | положительное целое число | |
PollOrderAlgorithm | Порядок направлений опроса при поиске шаблона. Для структуры опций используйте |
|
ScaleMesh | Автоматическое масштабирование переменных. Для структуры опций используйте |
|
SearchFcn | Тип поиска, используемый при поиске шаблона. Укажите в качестве имени или дескриптора функции. Для структуры опций используйте |
|
StepTolerance | Допуск для переменной. Итерации останавливаются, если и изменение положения, и размер сетки меньше Для структуры опций используйте | Положительный скаляр | |
| TolBind | Допуск привязки. См. раздел Параметры ограничения. | Положительный скаляр | |
UseCompletePoll | Выполните опрос вокруг текущей точки. См. раздел Как работает опрос поиска шаблонов. Для структуры опций используйте |
|
UseCompleteSearch | Полный поиск вокруг текущей точки, когда метод поиска является методом опроса. См. раздел Поиск и опрос. Для структуры опций используйте |
|
Пример: options = optimoptions('paretosearch','Display','none','UseParallel',true)
problem - Структура проблемыСтруктура проблемы, заданная как структура со следующими полями:
objective - Целевая функция
x0 - Начальная точка
Aineq - Матрица для линейных ограничений неравенства
bineq - Вектор для линейных ограничений неравенства
Aeq - Матрица для линейных ограничений равенства
beq - Вектор для линейных ограничений равенства
lb - Нижняя граница для x
ub - Верхняя граница для x
nonlcon - Функция нелинейных ограничений
solver — 'paretosearch'
options - Параметры, созданные с помощью optimoptions
rngstate - Необязательное поле для сброса состояния генератора случайных чисел
Примечание
Все поля в problem являются обязательными, за исключением rngstate, что является необязательным.
Типы данных: struct
x - Точки Паретоmоколо-nvars множествоТочки Парето, возвращенные как mоколо-nvars массив, где m - количество точек на фронте Парето. Каждая строка x представляет одну точку на фронте Парето.
fval - Значения функций на передней панели Paretomоколо-nf множествоЗначения функций на фронте Парето, возвращаемые как mоколо-nf массив. m - количество точек на фронте Парето, и nf - количество фитнес-функций. Каждая строка fval представляет значения функции в одной точке Парето в x.
exitflag - Причина paretosearch остановленныйПричина paretosearch stopped, возвращено как одно из целых значений в этой таблице.
| Флаг выхода | Условие остановки |
|---|---|
1 | Выполняется одно из следующих условий.
|
0 | Число итераций превышает options.MaxIterationsили количество оценок функций превышает options.MaxFunctionEvaluations. |
-1 | Оптимизация останавливается функцией вывода или функцией графика. |
-2 | Решателю не удается найти точку, удовлетворяющую всем ограничениям. |
-5 | Время оптимизации превышает options.MaxTime. |
output - Информация о процессе оптимизацииИнформация о процессе оптимизации, возвращенная в виде структуры со следующими полями:
iterations - общее число итераций.
funccount - Общее количество оценок функций.
volume - гиперобъёмность множества, образованного из точек Парето в пространстве функций. См. раздел Определения алгоритма паретосearch.
averagedistance - измерение среднего расстояния точек Парето в функциональном пространстве. См. раздел Определения алгоритма паретосearch.
spread - Среднее значение разброса точек Парето. См. раздел Определения алгоритма паретосearch.
maxconstraint - Максимальное нарушение ограничений, если таковое имеется.
message - Причина прекращения работы алгоритма.
rngstate - состояние генератора случайных чисел MATLAB непосредственно перед запуском алгоритма. Можно использовать значения в rngstate для воспроизведения выходных данных при использовании метода случайного опроса, такого как 'MADSPositiveBasis2N' или при использовании метода quasirandom по умолчанию для создания исходной совокупности. См. раздел Воспроизведение результатов, в котором рассматривается идентичный метод для ga.
residuals - Остатки ограничений в xОстатки ограничения в x, возвращается в виде структуры с этими полями (глоссарий терминов и записей размера поля следует за таблицей).
| Имя поля | Размер поля | Записи |
|---|---|---|
lower | mоколо-nvars | lb – x |
upper | mоколо-nvars | x – ub |
ineqlin | mоколо-ncon | A*x - b |
eqlin | mоколо-ncon | |Aeq*x - b| |
ineqnonlin | mоколо-ncon | c(x) |
m - Количество возвращенных баллов x на фронте Парето
nvars - Количество управляющих переменных
ncon - Количество ограничений соответствующего типа (например, количество строк A или количество возвращенных нелинейных уравнений)
c(x) - Числовые значения функций нелинейных ограничений
Недоминированные точки, также называемые неинфериорными точками, являются точками, для которых ни одна другая точка не имеет более низких значений всех объективных функций. Другими словами, для недоминированных точек ни одно из значений целевой функции не может быть улучшено (понижено) без повышения других значений целевой функции. Смотрите раздел Что такое многообъективная оптимизация?.
paretosearch использует поиск по образцу для поиска точек на передней панели Парето. Дополнительные сведения см. в разделе Алгоритм поиска.
Задача «Оптимизировать интерактивный редактор» обеспечивает визуальный интерфейс для paretosearch.
Для параллельного выполнения установите 'UseParallel' опция для true.
options = optimoptions('solvername','UseParallel',true)
Дополнительные сведения см. в разделе Использование параллельной обработки в инструментарии глобальной оптимизации.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.