turn on suggestions

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

Showing results for

- JMP User Community
- :
- Discussions
- :
- Adding a dollar cost to model factors

Topic Options

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

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

Jul 12, 2017 4:16 PM
(941 views)

Hi,

I built a model, let's say, with two factors X1 and X2 and a response Y. Using a contour profiler, I can see the values of X1 and X2 that result in my target Y on a grid line. In reality, there is a dollar cost associated with each of X1 and X2 and I would like to display that cost for the X1 / X2 values that match my target Y (on the contour grid line).

Is there a trick to do this in JMP? I don't see a way to extract data on a contour profiler grid line.

I'm not sure if there's another way to associate the dollar costs of factors to the model?

1 ACCEPTED SOLUTION

Accepted Solutions

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

Jul 13, 2017 2:15 AM
(1800 views)

Solution

JMP is pretty good at this kind of thing, since the Profiler allows simultaneous optimisation. Here's a toy example:

```
NamesDefaultToHere(1);
// Sample data
dt = NewTable("Surface with Costs",
NewColumn("x1", Formula(RandomUniform(-1, 1))),
NewColumn("x2", Formula(RandomUniform(-1, 1))),
// Maximum of 'y' is at (+1, +1)
NewColumn("y", Formula(:x1 + :x2)),
// 'x1' and 'x2' costs increase linearly
NewColumn("Total Cost", Formula(:x1 + :x2)),
AddRows(50)
);
// Maximise 'y', minimise 'Total Cost'
Column(dt, "y") << Set Property("Response Limits", {Goal( Maximize ), Importance( 1 ), Show Limits( 0 )});
Column(dt, "Total Cost") << Set Property("Response Limits", {Goal( Minimize ), Importance( 1 ), Show Limits( 0 )});
// Profiler
pr = dt << Profiler(Y( :y, :Total Cost ));
// Maximise desirability
Wait(3);
pr << maximizeDesirability;
```

2 REPLIES

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

Jul 13, 2017 2:15 AM
(1801 views)

JMP is pretty good at this kind of thing, since the Profiler allows simultaneous optimisation. Here's a toy example:

```
NamesDefaultToHere(1);
// Sample data
dt = NewTable("Surface with Costs",
NewColumn("x1", Formula(RandomUniform(-1, 1))),
NewColumn("x2", Formula(RandomUniform(-1, 1))),
// Maximum of 'y' is at (+1, +1)
NewColumn("y", Formula(:x1 + :x2)),
// 'x1' and 'x2' costs increase linearly
NewColumn("Total Cost", Formula(:x1 + :x2)),
AddRows(50)
);
// Maximise 'y', minimise 'Total Cost'
Column(dt, "y") << Set Property("Response Limits", {Goal( Maximize ), Importance( 1 ), Show Limits( 0 )});
Column(dt, "Total Cost") << Set Property("Response Limits", {Goal( Minimize ), Importance( 1 ), Show Limits( 0 )});
// Profiler
pr = dt << Profiler(Y( :y, :Total Cost ));
// Maximise desirability
Wait(3);
pr << maximizeDesirability;
```

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

Jul 13, 2017 10:16 AM
(905 views)