and crude-oil Scheduling using Lagrangian decomposition
MODEL SETTINGS
4- Use the Recursion Model Settings dialog box to maintain recursion model settings
Recursion is a nonlinear technique used in linear programming to model nonlinearities by approximating them with linear segments and updating the linear-programming matrix during the recursion pass. A recursion pass involves the calculation of new properties and, in DR (Distributive Recursion), new distribution coefficients.
With nonlinearities, there is the possibility that there may be more than one solution to the problem. These multiple solutions are referred to as local optima if the value of the objective function is less than that of the largest objective function. The solution with the largest objective function is generally called the global optimum. There is, unfortunately, no mechanism to determine if an observed global optimum is indeed the true global optimum or just another local optima for which the global optimum has yet to be discovered.
TABLES:
Use Tables to supply model input data to PIMS. The major source of data input to PIMS is a set of tables that describe the economics and process technology of the plant under consideration. The precise format of the tables is discussed later in this Help, but it may be noted that a PIMS table contains a set of named rows and columns with numeric or text entries in the body of the table.
PIMS input tables can be in one of the following formats, depending on the type of model you are working with:
Spreadsheet Database
Chapter 2
Getting Started With Aspen PIMS®
Page
10
In this book we will be considering Only Spreadsheets input. The standard table format obeys the following conventions:
The spreadsheet can be constructed with any convenient arrangement of column widths, cell format, text alignment, cell protection, windows, titles etc. PIMS is only concerned with the cell contents and not the nature of the screen display. Hidden cells are not read if OLE automation is used.
Any row that contains an asterisk (*) in the first position is regarded as a comment row and is ignored by PIMS. Comment rows can be used for client annotations, table spacing (for easy readability) or for including client-required computations.
As can be seen above, the very first non-comment row is treated as a row of column names for the PIMS table. In this row, the entry in column A may be absent or may be the text entry ROWNAMES. Spreadsheet columns B onwards then contain the PIMS column names. These column names must be text entries with up to 8 (9 for multi-plant/multi-period models) alphanumeric characters (A-Z, 0-9) in each name.
The column name(s) must be unique - numeric or date entries are not permitted. Note also that column names cannot include leading blank characters. One column may be named TEXT (all caps) and is used for descriptive entries. A column name that is an asterisk (*) may be used to terminate the table columns. Any entries in or to the right of this column will be ignored by PIMS. PIMS will also ignore any entry in the body of the table that is to the right of a blank or empty column heading. Any column tag that begins with an exclamation point character (!) is designated as a comment column. All the contents of that column are ignored on input to PIMS.
Each row below the row of column names, except for a comment row, is a PIMS table row. It must contain a row name in the spreadsheet column A. This row name must be a unique text entry of up to 8 (9 for X-PIMS) alphanumeric characters with no leading blank characters. Note that numeric entries that display as text entries must be entered by preceding the entry with a valid text identifier character (',",^). Row names cannot be numeric or date values and blank or empty rows or columns are not permitted.
Usually no specific ordering of rows and columns is required by PIMS. The client will probably find it convenient to make column TEXT the first table column (that is column B) but this is not required. The row ordering will usually determine the order in which items are reported in the Data Validation report.
The body of the table is entered in the rows of the table. Entries in column TEXT must be text (not numeric). Note that the column width for column TEXT may be set to client convenience, but in most cases, unless otherwise indicated below, PIMS will retrieve only the first 20 characters in each TEXT entry. Entries in all other
row/column intersections must be one of the following:
A numeric value or valid numeric formula
Page
11
Empty (no entry) or a cell comment. A cell comment is any entry that begins with an asterisk (*). Cell comments are ignored by PIMS. Note that where spreadsheet formulas are used, PIMS cannot retrieve the current value for the cell as displayed on the screen because a spreadsheet recalculation to other linked values may have changed. Formulas can be very useful for computing table values in terms of other entries, for adding the elements in a column to ensure material balance closure, etc. An example of the use of this technique is follows:
Text entries in column TEXT, as well as the row and column names of the table, can be constructed using string formulas if desired. Character formatting is ignored by PIMS.
Small System PIMS tables are restricted to (at most) 800 rows, 200 columns
(excluding column TEXT) and 30,000 row/column intersections. Note that in Large System PIMS, larger table dimensions are permitted and user-definable.
Although this is not a requirement, it is recommended that clients construct tables that contain several comment rows at the top. These comments should include the table name, description, and date of last update.
Many PIMS tables use pre-defined column names. For example, it will be seen later in this section that PIMS recognizes the following column name(s) in table BUY:
TEXT, MIN, MAX, FIX, COST, VOL, SPG, API, WGT, and GROUP. In tables where PIMS recognizes a set of pre-defined column names, the client can include additional columns with arbitrary names if desired. (All pre-defined column names must be spelled using all capital letters.) For example, it may be convenient in table BUY to include a column named CPG that contains component costs in cents per
Chapter 2
Getting Started With Aspen PIMS®
Page
12
gallon and then define the entries in column COST using formulas that refer to the entries in column CPG.
Column and row names in PIMS are case sensitive.
PIMS supports comment columns in tables. The designation for a comment column is an exclamation point as the first character of the column tag (e.g., !MAX3).
The following table contains an alphabetical list of input spreadsheet tables with condensed description.
Table Description
ABML Aspen Blend Model Library ABMLMAP ABML Blend property tag aliases ABMLOPT ABML CARBOB2 options ABMLSUBF ABML conversion correlations ACCUQUAL Accumulated material qualities ADDITIVE Additive levels
ALTTAGS Alternate tags ASSAYLIB Multi assay tables ASSAYS Crude assay data
ATMDISTL Amospheric Tower Distillation BLENDS Blends
BLNCAP Blender capacities BLNMIP Blend limits
BLNMIX Blend components and formulas BLNPROP See BLNxxxx
BLNSPEC Product specifications BLNTARG Blend target recipes BLNxxxx Blend property tables BOUNDS Miscellaneous bounds BUY Purchased materials CAPS Unit capacities CASE Case stacking option CRDALLOC Crude allocation to tanks CRDBLEND Crude blending
CRDCUTS Crude cut scheme CRDDISTL Crude distillation CRDMIX Crude mix receipts
CRDPCALC Crude stream quality relationship CRDPOOLS Crude pools
CRDQUAL Crude stream default qualities CRDTANKS Crude tanks
CURVE Generalized recursion curves DEMALLOC Market demand
DEMAND Sales to market
Page
13
DEPOTS Trans-shipment models
DINV Inventories carried in DEPOTS DISABLE Disabled material tags
DISPLAY Items Displayed inParametric Analysis EDITBNDS Scheduling bounds
EXPERT Alternate method for CASE changes GASES Gasious materials
GASPLANT Build gas plant drivers in submodel GBLNMIX Global-blend mixes
GBLNPER Periods and plants in which the global-spanning-blend specifications apply
GBLNSPEC Global-spanning-blend specifications GOBOUNDS Bounds on global optimization variables
GROUPS Purchases, sales, inventory, utility, and specification grouping
GSUPPLY Global supply HOLIDAYS Scheduled holidays INDEX Blending indices INTERACT Interactive blending LOCTAGS Global/Local alt tags MARKETS Markets for products MARKTGRP Market groups
MICROCUT Shortcut Distillation Cuts MIP Mixed integer definition MODELS Local models
MODES Transport modes MSGSUP Suppressed messages NCRDCUTS Distillation Cutting Scheme NCRDROWS
NCUTPOOL Crude to Logical Crude Unit Map NEWCUT New crude cuts from existing cuts NLPROP Nonlinear blend quality specifications NONLIN Generalized recursion items
NOTDAILY Products not sold on holidays PARAOBJ Objective function parametrics PBLNMIX Period-spanning-blend mixes
PBLNPER Periods in which the period-spanning-blend specifications apply
PBLNSPEC Period-spanning-blend specifications PBONUS Property bonuses
PCALCB Property calculations PCALC Property calculations
PDIST Initial distribution coefficient estimates
PERCASE Case stacking where the client wishes to assign the equivalent of a period length to individual cases PERIODS Period definitions
Chapter 2
Getting Started With Aspen PIMS®
Page
14
PGUESS Initial property estimates for Distributive Recursion (DR)
PINV Stream inventory PLANTGRP Plant groups
PRNTABS Tables to print (include) in Data Validation report PROCLIM Process capacity limits
PROPRNG Validate stream property ranges PSPAN Span recipe periods
RATIO Control ratios of LP columns RECEIVE Timed purchases
REPORT Fixed costs and report suppression RFG Reformulated gasoline
ROWS Miscellaneous rows
RWGRPBLN Aspen Report Writer group blends RWGRPSTR Aspen Report Writer group streams RWGRPUNT Aspen Report Writer units
SCALE Scale factors and specific recursion tolerances SELL Sell products
SEQUENCE Timeslices SHIP Timed sales
SHUTDOWN Scheduled process unit shutdowns SKDSLICE Simulate time-slicing
SKEDLINK Link to Ref-Sked directory SLICEMAP Supports the PvA BPT
SOLNKPIS Key process indicators used during solution evaluation STATTANK Relationship between timeslice and variables and tanks SUBMODS Unit submodel list
SUPPLY Materials purchased SWING Swing cut disposition SXSKDLNK PIMS to Ref-Sked mapping SXSKDSRE Ref-Sked input tables
TESTRUN Store distillation data from previous run to be used by Shortcut Distillation to produce operating parameter estimates in table NCRDCUTS
TNK2TNK Tank-to-Tank transfers TRANSFER Inter-plant transfers TRNSTIME Transition times UNITS Units of measure
UPOOL Automated recursed pool construction UTILBUY Purchase utilities
UTILSEL Sell utilities
VACDISTL Vaccum Tower Distillation VPOOL Virtual pooling
WSPECS Weight blend specs
XBOUNDS Impose bounds on XNLP created variables
Page
15
The complete description and use is illustrated in examples and Help provided with PIMS. But for ease of understanding some basic tables will is described in next section.
Reports
Use Reports, located on the the model tree Reports tab, to review the results produced from the execution of a PIMS model.
Use Solutions Files, located on the model tree Solution Files tab, to access output data produced by the PIMS Solution Reporter for a specific model
Flow sheet
Use Flowsheets, located on the model tree Flowsheets tab, to display your current model as a block-flow diagram and/or to display linear-programming results in a block-flow diagram.
The flowsheets produced by PIMS are based on the information from the Validation reports or the Solution reports.
Two separate flowsheet files are produced:
The flowsheet file generated from the Validation reports is titled Model.flo.
The flowsheet file generated from the Solution reports is titled Result.flo or Result###.flo for case-stacked results.
When viewing the Model.flo file, keep in mind that PIMS must make certain
assumptions as to whether streams are feeds or products. When there are both positive and negative stream yields in a submodel, PIMS assumes a positive yield. In reality, the stream may be a feed to the submodel, but PIMS has no way of determining this. With this assumption, PIMS may draw lines that appear to be products when they are actually feeds. This phenomenon does not exist when you display the Results.flo file.
Property Calculator
Use the Property Calculator to augment table INDEX. This feature allows you to define new qualities as a function of other qualities in the model. For example, use property calculation formulas to represent blending indices.
The dependent qualities are only calculated one time during matrix generation. That is, the dependent qualities are NOT recalculated at every recursion pass when the underlying
Chapter 2
Getting Started With Aspen PIMS®
Page
16
non-linear qualities change. This functionality can be added through the non-linear equation feature of PIMS-AO.
When a calculated index specification is used to replace a quality specification, the property calculator automatically determines if the relationship between the property and the index needs to be inverted. This situation occurs when an index decreases when the quality increases, thus a minimum quality specification becomes a maximum index specification.
BLENDING TABLES