solutionfromID

Класс: FunctionApproximation. LUTSolution
Пакет: FunctionApproximation

Доступ к решению найден во время процесса приближения

Синтаксис

other_solution = solutionfromID(solution,id)

Описание

other_solution = solutionfromID(solution,id) возвращает решение, сопоставленное с FunctionApproximation.LUTSolution объект, solution, с ID, заданным id.

Входные параметры

развернуть все

Объект решения, содержащий решение, вы хотите исследовать, заданный как FunctionApproximation.LUTSolution объект.

ID решения, которое вы хотите исследовать, заданный как скалярное целое число.

Типы данных: double

Выходные аргументы

развернуть все

FunctionApproximation.LUTSolution объект сопоставлен с заданным ID.

Примеры

развернуть все

В этом примере показано, как использовать solutionfromID метод FunctionApproximation.LUTSolution объект исследовать другие решения для приближения.

Создайте FunctionApproximation.Problem объект, задающий математическую функцию, чтобы аппроксимировать. Затем используйте solve метод, чтобы получить FunctionApproximation.LUTSolution объект.

problem = FunctionApproximation.Problem('sin')
problem = 
  1x1 FunctionApproximation.Problem with properties:

    FunctionToApproximate: @(x)sin(x)
           NumberOfInputs: 1
               InputTypes: "numerictype(0,16,13)"
         InputLowerBounds: 0
         InputUpperBounds: 6.2832
               OutputType: "numerictype(1,16,14)"
                  Options: [1x1 FunctionApproximation.Options]

solution = solve(problem)
|  ID |  Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification |             Error(Max,Current) | 
|   0 |             64 |        0 |          2 |              16 |           16 |             EvenSpacing |     7.812500e-03, 1.000000e+00 |
|   1 |            784 |        1 |         47 |              16 |           16 |             EvenSpacing |     7.812500e-03, 5.388912e-03 |
|   2 |            768 |        1 |         46 |              16 |           16 |             EvenSpacing |     7.812500e-03, 4.534419e-03 |
|   3 |            608 |        1 |         36 |              16 |           16 |             EvenSpacing |     7.812500e-03, 4.089765e-03 |
|   4 |            592 |        1 |         35 |              16 |           16 |             EvenSpacing |     7.812500e-03, 4.272461e-03 |
|   5 |            416 |        1 |         24 |              16 |           16 |             EvenSpacing |     7.812500e-03, 6.192382e-03 |
|   6 |            400 |        1 |         23 |              16 |           16 |             EvenSpacing |     7.812500e-03, 6.939196e-03 |
|   7 |             64 |        0 |          2 |              16 |           16 |         EvenPow2Spacing |     7.812500e-03, 1.315166e+00 |
|   8 |            576 |        0 |         18 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.827414e-03 |
|   9 |            640 |        1 |         20 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.784160e-03 |
|  10 |            576 |        0 |         18 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.866281e-03 |
|  11 |            576 |        0 |         18 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.849443e-03 |
|  12 |            640 |        1 |         20 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.244422e-03 |

Best Solution
|  ID |  Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification |             Error(Max,Current) |
|   6 |            400 |        1 |         23 |              16 |           16 |             EvenSpacing |     7.812500e-03, 6.939196e-03 |
solution = 
  1x1 FunctionApproximation.LUTSolution with properties:

          ID: 6
    Feasible: "true"

Отобразите все выполнимые решения, найденные во время процесса приближения.

displayfeasiblesolutions(solution)
|  ID |  Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification |             Error(Max,Current) | 
|   1 |            784 |        1 |         47 |              16 |           16 |             EvenSpacing |     7.812500e-03, 5.388912e-03 |
|   2 |            768 |        1 |         46 |              16 |           16 |             EvenSpacing |     7.812500e-03, 4.534419e-03 |
|   3 |            608 |        1 |         36 |              16 |           16 |             EvenSpacing |     7.812500e-03, 4.089765e-03 |
|   4 |            592 |        1 |         35 |              16 |           16 |             EvenSpacing |     7.812500e-03, 4.272461e-03 |
|   5 |            416 |        1 |         24 |              16 |           16 |             EvenSpacing |     7.812500e-03, 6.192382e-03 |
|   6 |            400 |        1 |         23 |              16 |           16 |             EvenSpacing |     7.812500e-03, 6.939196e-03 |
|   9 |            640 |        1 |         20 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.784160e-03 |
|  12 |            640 |        1 |         20 |              16 |           16 |          ExplicitValues |     7.812500e-03, 7.244422e-03 |

Best Solution
|  ID |  Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification |             Error(Max,Current) |
|   6 |            400 |        1 |         23 |              16 |           16 |             EvenSpacing |     7.812500e-03, 6.939196e-03 |

Решение с ID 5 не перечислено как выполнимое решение в таблице. Исследуйте это решение видеть, почему это не выполнимо.

solution5 = solutionfromID(solution, 5)
solution5 = 
  1x1 FunctionApproximation.LUTSolution with properties:

          ID: 5
    Feasible: "true"

Сравните числовое поведение решения с ID 5.

compare(solution5)

ans = struct with fields:
    Breakpoints: [51473x1 double]
       Original: [51473x1 double]
    Approximate: [51473x1 double]

Вы видите из графика, что решение не соответствует необходимым допускам.

Введенный в R2018a

Для просмотра документации необходимо авторизоваться на сайте