Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

- JMP User Community
- :
- Discussions
- :
- Steepest ascent search

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

Highlighted
##

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Steepest ascent search

Aug 23, 2018 11:39 PM
(1319 views)

How to implement PSA (**Steepest ascent search) analysis** in JMP DOE mode?

- Tags:
- RSM 最快上升法

2 REPLIES 2

Highlighted
##

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Steepest ascent search

I'm not completely sure, but I think you are talking about a sequential approach to experimentation in which (by exploiting the results from a first design) you augment that design by picking new points along the line of steepest ascent. I think that there are many who would suggest that there are better ways to augment a design, though 'better' will depend on your particular situation.

In spite of this, if you want to use the approach this script might get you started. Do 'File > New > New Script', copy the JSL, then 'Edit > Run Script':

```
// ian.cox@jmp.com: 18Sep2010
// Quick demo of design augmentation by steepest ascent
// Make some random data from a main effects model with no interaction
dt1 = New Table("Original Design",
Add Rows( 10 ),
New Column( "x1", Numeric, Continuous, Formula( Random Uniform(-1, 1) ) ),
New Column( "x2", Numeric, Continuous, Formula( Random Uniform(-1, 1) ) ),
New Column( "y", Numeric, Continuous, Formula( (2 * :x1 + 3 * :x2) + 0.1 * Random Normal() ) )
);
// Fit the model
fmd = dt1 << Fit Model(
Y( :y ),
Effects( :x1, :x2 ),
Personality( Standard Least Squares ),
Emphasis( Effect Leverage ),
Invisible
);
fmo = fmd << Run;
// Get what we need
fmr = fmo << Report;
pn = fmo << GetParameterNames;
pe = fmo << GetEstimates;
ps = fmo << GetStdErrors;
Print(pn, pe, ps);
// Close the (invisible) report
fmr << CloseWindow;
// Take x1 to be the base factor
X2OverX1 = pe[3]/pe[2];
// Specify number of steps to take and x1 step size for each
n = 6;
delX1 = 0.3;
// Get points on the path of steepest ascent into a new 'design' table
x1pts = J(n, 1, .);
x2pts = J(n, 1, .);
for (p=1, p<=n, p++,
x1pts[p] = delX1 * p;
x2pts[p] = x1pts[p] * X2OverX1;
);
dt2 = AsTable(x1pts||x2pts);
dt2 << SetName("Path of Steepest Ascent from Fit of "||(dt1 << GetName));
x1Col = Column(dt2, "Col1") << SetName("x1");
x2Col = Column(dt2, "Col2") << SetName("x2");
// Concatenate the two design tables
dt1 << NewColumn("Design", Numeric, Ordinal, Values(J(Nrow(dt1), 1, 1)));
dt2 << NewColumn("Design", Numeric, Ordinal, Values(J(Nrow(dt2), 1, 2)));
dt3 = dt1 << Concatenate(dt2, Output Table( "Augmented Design" ));
// Use graph builder to show the final result
dt3 = Graph Builder(
Show Control Panel( 0 ),
Variables( X( :x1 ), Y( :x2 ), Color( :Design ) ),
Elements( Points( X, Y, Color, Legend( 1 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model( 1, Properties( 1, {Line Color( 67 )} ) )}
),
Dispatch( {}, "Graph Builder", FrameBox, {Marker Size( 4 )} )
)
);
```

Highlighted
##

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Re: Steepest ascent search

Hi my frend,

thanks very very much for your help.

Article Labels

There are no labels assigned to this post.