Problem Note 64448: Profile generation might eliminate lower-level profiles that should be retained in SAS® Size Optimization
In SAS Size Optimization, profile generation might eliminate lower-level profiles when they should be retained. The current processing is not always sensitive to differences between the lower level ("child") and upper level ("parent") profiles in certain cases.
Click the Hot Fix tab in this note to access the hot fix for this issue.
After the fix is available, you have the option to execute code that performs an alternative algorithm to determine whether to retain child profiles. This enables you to set thresholds to define the amount of difference between the parent and child profiles that trigger the child profile to be retained. There are two thresholds available. One defines the amount of difference in the contributions of individual sizes in a profile. It sets what is a significant difference in a size contribution between parent and child. The other sets what percentage of sizes have to exceed this significance threshold in order for the child's profile to be retained. The second threshold ensures that a big difference in a single size (possibly due to undesirable outliers) is ignored.
Many times when a child's contributions are identical to its parent's, the child profile is eliminated altogether. When more child profiles keep their contributions, more profiles result.
There are four new global settings that control how this functionality works.
- The PROFILE_SELECTION_FLG global setting enables the solution to use the new logic. It must be set to '1' in order for the new method to be used. Upon installation of the fix, the value defaults to '0', which means the solution works as before.
- The PARENTDIFFSALES global setting defines the first threshold for the amount of difference in individual sizes between the parent and child profiles. It represents the number of percentage point difference between a size's contributions between parent and child. The difference is always calculated as an absolute value so that it does not matter if the parent's contribution is more or less than the child's contribution. For example, if the parent's profile size contribution for size Small is 10% and the child's size contribution is 12.5%, the difference calculation is 2.5. If the PARENTDIFFSALES global setting is set to 0.02, then this size is flagged as significant. The higher the setting for this number, the less likely the child profile is retained.
- The PERSIZESATISFYFSTTHR global setting defines the second threshold for the percentage of sizes with significant differences that must be met in order to retain the child profile. If PERSIZESATISFYFSTTHR=50, then more than 50% of all the sizes in the profile have to be flagged as significantly different for the child profile to be retained. The higher the setting for this number, the less likely the child profile is retained. Setting it to 99 ensures that no child profiles are retained. The higher the setting for this number, the less likely the child profile is retained. Setting it to 0 ensures that all child profiles are retained.
The PARENTDIFFSALES and PERSIZESATISFYFSTTHR global settings work together. For example, a profile has 7 sizes. PARENTDIFFSALES is set to 0.02 and the PERSIZESATISFYFSTTHR is set to 50. First, the solution compares a child's contribution of the 7 sizes to its parent. In the example, suppose that 4 of the seven sizes have more than a 2-point difference between parent and child. Then the child's contributions are kept. If, however, only 2 of the sizes have more than a 2-point difference, then the parent size contribution is used for the child profile. The child profile might even be eliminated. In another example, if you set both thresholds to 0, then all the child contributions are retained. None are copied from the parent.
- The CHILD_PREFERENCE global setting governs whether to override results when parent profile level is selected as best profile level over child profile level. If set to 0, then the new logic result is always selected, even if the selection is not the child profile. If set to '1', then the final result reflects the child profile's contributions, regardless if it was selected by the new logic or the existing code. If you always want the child profile selected, then set this flag to 1.
These threshold settings are in the GLOBAL_SETTING table and apply to all projects. The current prf_minsales settings remain in effect with this alternative retention test method.
Operating System and Release Information
SAS System | SAS Size Profiling | Linux for x64 | 3.4 | | 9.4 TS1M3 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
In SAS® Size Optimization, profile generation might eliminate lower-level profiles when they should be retained.
Type: | Problem Note |
Priority: | medium |
Date Modified: | 2020-01-17 12:13:03 |
Date Created: | 2019-07-09 17:04:53 |