Custom Profiler를 사용하여 "각 행"에 대한 자동화(스크립트) 최적화안녕하세요, Custom Profiler를 사용하는 고객 @Solvay가 있습니다.
그의 목표는 성능이 사양 미만인 각 행을 살펴보고 요소 값을 가져오고 제어할 수 없는 요소를 잠그고 제어할 수 있는 요소를 사용하여 성능을 최적화한 다음 새 설정과 예상 성능을 저장하는 것입니다. .
이것은 수동으로 수행할 수 있지만 불행하게도 로그는 해당 코드를 저장하지 않습니다.
그는 대용량 데이터 테이블을 가지고 있으므로 이를 자동화하는 프로세스를 스크립팅하려고 합니다.
누구나 해당 코드를 알고 있습니까?
참고: 다음 날 JMP 커뮤니티에 표시될 것 같습니다.
임마누엘
Re: Custom Profiler를 사용하여 "각 행"에 대한 자동화(스크립트) 최적화다음은 하나의 변수만 잠그는 방식으로 이를 수행하는 스크립트입니다. 여러 변수를 잠그려면 더 많은 For 루프를 중첩해야 합니다.
dt = open ("$SAMPLE_DATA\Body Fat.jmp");
dt << New Column ("Formula", Set Formula (109.665262588823 + 0.329339426252964 * :"Weight (lbs)"n +
-1.47623913006859 * :"Height (inches)"n + -0.492211525467987 *
:"Neck circumference (cm)"n + -1.41262250197006 *
:"Wrist circumference (cm)"n + (:"Height (inches)"n
-70.1488095238095) * ((:"Height (inches)"n - 70.1488095238095) *
-0.0306978267773712) + (:"Height (inches)"n - 70.1488095238095) * ((
:"Neck circumference (cm)"n - 37.9920634920635) * -0.121564139238233)
+ (:"Neck circumference (cm)"n - 37.9920634920635) * ((
:"Neck circumference (cm)"n - 37.9920634920635) * -0.127296845579246)));
dt:Formula << Set Property ("Response Limits", {Goal( Match Target ), Lower (20, .05), Middle (25, 1), Upper (30, .05)});
prof = dt << Profiler ( Y(:Formula));
for (i = 60, i <= 74, i++,
prof << Term Value ("Height (inches)" (i, Lock (1)) );
prof << Maximize and Remember;
);
Re: Custom Profiler를 사용하여 "각 행"에 대한 자동화(스크립트) 최적화중첩 루프와 "Mazimize and Remember"를 사용하는 대신(외에도?) 탐색할 수 있는 "각 그리드 지점에 대해 최대화" 메시지도 있습니다.
Re: Custom Profiler를 사용하여 "각 행"에 대한 자동화(스크립트) 최적화나는 그런 일을 하기 위한 아이디어를 갖고 놀고 있었다.
Names Default To Here( 1 );
// comment out the nexct line if the script is pasted into a table
dt = Open( "AutoProfiler Tiretread.jmp" );
// uncomment the next line if the script is pasted into a table
//dt=current data table();
//This is where your profiler script goes
obj = dt << Profiler(
Y(
:Pred Formula ABRASION,
:Pred Formula MODULUS,
:Pred Formula ELONG,
:Pred Formula HARDNESS
),
Profiler(
1,
Term Value(
SILICA( 1.25, Lock( 0 ), Show( 1 ) ),
SILANE( 50, Lock( 0 ), Show( 1 ) ),
SULFUR( 2.25, Lock( 0 ), Show( 1 ) )
),
Simulator(
1,
Factors(
SILICA << Random( Normal( 1.25, 0.3266 ) ),
SILANE << Random( Normal( 50, 6.532 ) ),
SULFUR << Random( Normal( 2.25, 0.3266 ) )
),
Automatic Histogram Update( 1 )
)
)
);
//your profiler goes above here
obj << Simulator( 1 );
obj2 = obj << Get Simulator;
obj2 << Automatic Histogram Update( 1 );
For( i = 1, i <= N Rows( dt ), i++,
obj << Set to Data in Row( i );
obj << Remember Settings(Column(1)[i]); //"Column(1)[i]" is the firtst column of the table, ith row
);//end of for loop
obj<<DISPATCH></DISPATCH>
프로파일러를 실행하고 테이블의 모든 행에 대한 설정을 저장합니다. 고객은 결함 행의 하위 집합을 지정한 다음 이와 같은 스크립트를 실행해야 합니다.

Re: Custom Profiler를 사용하여 "각 행"에 대한 자동화(스크립트) 최적화두 분 모두 감사합니다 