param.Continuous
연속 조정 가능형 파라미터
설명
연속 파라미터는 지정된 구간 내에서 임의의 값을 가질 수 있는 숫자형 파라미터입니다. 파라미터는 스칼라 값 또는 배열 값일 수 있습니다.
일반적으로 연속 파라미터를 사용하여 모수적 모델을 만들고 이러한 모델에서 조정 가능형 파라미터를 추정하거나 최적화합니다. 예를 들어 sdo.optimize
로 응답 최적화 또는 파라미터 추정을 수행할 때, sdo.getParameterFromModel
을 사용하여 Simulink® 모델의 파라미터에 대응하는 param.Continuous
객체를 생성합니다.
생성
다음 방법 중 하나를 사용하여 연속 parameter 객체를 생성합니다.
sdo.getParameterFromModel
(Simulink 모델의 연속 값 파라미터에 대응하는 객체를 생성하는 경우)param.Continuous
함수
설명
은 스칼라 파라미터를 생성하고 p
= param.Continuous(name
)Name
속성을 설정합니다. 객체의 나머지 속성은 디폴트 값을 갖습니다.
는 p
= param.Continuous(name
,value
)value
와 차원이 동일한 파라미터를 생성하고 Value
속성을 설정합니다.
속성
Name
— 파라미터 이름
''
(디폴트 값) | 문자형 벡터 | string형 스칼라
읽기 전용 속성입니다.
파라미터 이름으로, 문자형 벡터 또는 string형 스칼라로 지정되고 문자형 벡터로 저장됩니다. 객체 생성 시 Name
을 설정합니다.
Value
— 파라미터 값
0
(디폴트 값) | 스칼라 | 배열
파라미터 값으로, 스칼라 또는 배열로 지정됩니다. 이 속성의 차원이 파라미터의 차원을 결정합니다. 객체 생성 시 Value
를 설정합니다.
Minimum
— 파라미터 값의 하한
–Inf
(디폴트 값) | 스칼라 | 배열
파라미터 값의 하한으로, 스칼라 또는 배열로 지정됩니다. 이 속성의 차원은 Value
속성의 차원과 일치합니다.
배열 값 파라미터의 경우 다음을 수행할 수 있습니다.
개별 배열 요소에 대한 하한을 지정합니다. 예를 들어
p.Minimum([1 4]) = -5
와 같이 지정합니다.스칼라 확장을 사용하여 모든 배열 요소에 대한 하한을 설정합니다. 예를 들어
p.Minimum = -5
와 같이 지정합니다.
Maximum
— 파라미터 값의 상한
Inf
(디폴트 값) | 스칼라 | 배열
파라미터 값의 상한으로, 스칼라 또는 배열로 지정됩니다. 이 속성의 차원은 Value
속성의 차원과 일치합니다.
배열 값 파라미터의 경우 다음을 수행할 수 있습니다.
개별 배열 요소에 대한 상한을 지정합니다. 예를 들어
p.Maximum([1 4]) = 5
와 같이 지정합니다.스칼라 확장을 사용하여 모든 배열 요소에 대한 상한을 설정합니다. 예를 들어
p.Maximum = 5
와 같이 지정합니다.
Free
— 파라미터가 조정 가능한지 여부 표시
true
또는 1
(디폴트 값) | false
또는 0
| 배열
파라미터가 조정 가능한지 여부의 표시로, 숫자형이나 논리형(즉, 1
(true
) 또는 0
(false
)) 또는 이러한 값으로 구성된 배열로 지정됩니다.
스칼라 파라미터의 경우:
Free = 1
(true
)는 최적화 중에 파라미터를 조정할 수 있음을 의미합니다.Free = 0
(false
)는 최적화 중에 파라미터 값이 고정되어 있음을 의미합니다.
배열 값 파라미터의 경우, Free
의 차원은 Value
속성의 차원과 일치합니다. 배열 값 파라미터의 경우 다음을 수행할 수 있습니다.
개별 배열 요소를 고정합니다. 예를 들어
p.Free = [1 0; 0 1]
은 최적화 중에 2×2 행렬 값 파라미터의 비대각선 요소를 고정하지만 대각선 요소의 조정은 허용됩니다. 마찬가지로p.Free([2 3]) = 0
은p
의 두 번째 요소와 세 번째 요소를 고정합니다.스칼라 확장을 사용하여 모든 배열 요소를 고정합니다. 예를 들어
p.Free = false
는 최적화 중에p
의 모든 요소의 값을 고정합니다.
Scale
— 스케일링 인자
1
(디폴트 값) | 스칼라 | 배열
파라미터 값을 정규화하기 위한 스케일링 인자로, 스칼라 또는 배열로 지정됩니다. 이 속성의 차원은 Value
속성의 차원과 일치합니다.
배열 값 파라미터의 경우 다음을 수행할 수 있습니다.
개별 배열 요소에 대한 스케일링을 지정합니다. 예를 들어
p.Scale([1 4]) = 1
과 같이 지정합니다.스칼라 확장을 사용하여 모든 배열 요소에 대한 스케일링을 설정합니다. 예를 들어
p.Scale = 1
과 같이 지정합니다.
Info
— 파라미터 단위 및 레이블
구조체
파라미터 단위 및 레이블로, 필드 Label
및 Unit
을 갖는 구조체형 배열로 지정됩니다. 배열 차원은 Value
속성의 차원과 일치해야 합니다.
이 속성을 사용하여 파라미터를 설명하는 파라미터 단위 및 레이블을 저장합니다. 예를 들어 p.Info(1,1).Unit = 'N/m';
또는 p.Info(1,1).Label = 'spring constant'
와 같이 지정합니다.
Label
필드와 Unit
필드에 대한 디폴트 값은 모두 ''
입니다.
객체 함수
isreal | 파라미터 값, 최솟값, 최댓값이 실수인지 확인 |
예제
최적화를 위해 모든 모델 파라미터를 연속 설계 변수로 가져오기
Simulink 모델을 엽니다.
load_system("sldo_model1_stepblk")
모델 파라미터를 지정하지 않은 경우 sdo.getParameterFromModel
은 모델에서 모든 조정 가능형 파라미터를 찾고 이를 연속 파라미터로 처리합니다.
DesignVars = sdo.getParameterFromModel("sldo_model1_stepblk");
DesignVars
DesignVars(1,1) = Name: 'Kd' Value: 0 Minimum: -Inf Maximum: Inf Free: 1 Scale: 1 Info: [1x1 struct] DesignVars(2,1) = Name: 'Ki' Value: 0 Minimum: -Inf Maximum: Inf Free: 1 Scale: 1 Info: [1x1 struct] DesignVars(3,1) = Name: 'Kp' Value: 1 Minimum: -Inf Maximum: Inf Free: 1 Scale: 1 Info: [1x1 struct] DesignVars(4,1) = Name: 'w0' Value: 0.5000 Minimum: -Inf Maximum: Inf Free: 1 Scale: 0.5000 Info: [1x1 struct] DesignVars(5,1) = Name: 'zeta' Value: 0.5000 Minimum: -Inf Maximum: Inf Free: 1 Scale: 0.5000 Info: [1x1 struct] 5x1 param.Continuous
따라서 이 모델에는 조정 가능형 파라미터 Kd
, Ki
, Kp
, w0
, zeta
가 있으며 출력값 DesignVars
는 5개의 param.Continuous
객체로 구성된 배열입니다. 최적화를 위한 파라미터를 준비하기 위해 필요에 따라 초기값, 최솟값과 최댓값, 각 파라미터의 자유 요소를 설정할 수 있습니다. 예를 들어 Kd
의 최솟값을 0.001로, 최댓값을 100으로, 초기값을 1로 설정합니다.
DesignVars(1).Minimum = 1e-3; DesginVars(1).Maximum = 100; DesignVars(1).Value = 1;
연속 파라미터 구성하기
2×2 행렬 값 param.Continuous
객체를 구성하고 초기값을 단위 행렬로 설정합니다.
p = param.Continuous('K',eye(2))
p = Name: 'K' Value: [2x2 double] Minimum: [2x2 double] Maximum: [2x2 double] Free: [2x2 logical] Scale: [2x2 double] Info: [2x2 struct] 1x1 param.Continuous
최적화 중에 p
의 모든 요소가 가질 수 있는 최댓값을 설정합니다.
p.Maximum = 5;
2×2 행렬을 사용하여 각 요소에 다른 최솟값을 할당합니다.
p.Minimum = [-1 -10; 0.02 1];
대신에, 최적화 중에 p
의 대각선 요소는 1로 고정된 상태로 유지하되 비대각선 요소는 변경할 수 있도록 한다고 가정해 보겠습니다. 먼저, 값이 1인 대각선 요소가 현재 값에 포함되어 있는지 확인합니다. 그런 다음 Free
속성을 사용하여 이 값으로 대각선 요소를 고정합니다.
p.Value
ans = 2×2
1 0
0 1
p.Free = [0 1; 1 0];
버전 내역
R2012b에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)