User's Guide
CMOST Versi Versi on 2009 2009
By Computer Modelling Group Ltd.
This publication and the application described in it are furnished under license exclusively to the licensee, for internal use only, and are subject to a confidentiality agreement. They may be used only in accordance with the terms and conditions of that agreement. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means, electronic, mechanical, or otherwise, including photocopying, recording, or by any information storage/retrieval system, to any party other than the licensee, without the written permission of Computer Modelling Group. The information in this publication is believed to be accurate in all respects. However, Computer Modelling Group makes no warranty as to accuracy or suitability, and does not assume responsibility for any consequences resulting from the use thereof. The information contained herein is subject to change without notice.
Copyright
1987-2009 Computer Modelling Group Ltd.
All rights reserved.
The license management portion of this program is based on:
Reprise License Manager (RLM)
Copyright 2006-2009, Reprise Software, Inc. All rights reserved
CMOST, CMG, and Computer Modelling Group are registered trademarks of Computer Modelling Modelling Group Ltd. Ltd. All other trademarks are the property of their respective owners.
Computer Modelling Group Ltd.
Office #150, 3553 - 31 Street N.W. Calgary, Alberta Canada T2L 2K7
Tel: (403) 531-1300
Fax: (403) 289-8502
E-mail:
[email protected]
This publication and the application described in it are furnished under license exclusively to the licensee, for internal use only, and are subject to a confidentiality agreement. They may be used only in accordance with the terms and conditions of that agreement. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means, electronic, mechanical, or otherwise, including photocopying, recording, or by any information storage/retrieval system, to any party other than the licensee, without the written permission of Computer Modelling Group. The information in this publication is believed to be accurate in all respects. However, Computer Modelling Group makes no warranty as to accuracy or suitability, and does not assume responsibility for any consequences resulting from the use thereof. The information contained herein is subject to change without notice.
Copyright
1987-2009 Computer Modelling Group Ltd.
All rights reserved.
The license management portion of this program is based on:
Reprise License Manager (RLM)
Copyright 2006-2009, Reprise Software, Inc. All rights reserved
CMOST, CMG, and Computer Modelling Group are registered trademarks of Computer Modelling Modelling Group Ltd. Ltd. All other trademarks are the property of their respective owners.
Computer Modelling Group Ltd.
Office #150, 3553 - 31 Street N.W. Calgary, Alberta Canada T2L 2K7
Tel: (403) 531-1300
Fax: (403) 289-8502
E-mail:
[email protected]
Contents Introduction
1
What is CMOST?.......................................................................................................... CMOST?.......................................................................................................... 1 CMOST Tasks .............................................................................................................. 1 Sensitivity Analysis (SA) ................... .................. ................... .................. ....... 2 History Matching (HM) ................................................................................... 2 Optimization (OP)............................................................................................ (OP) ............................................................................................ 2 Uncertainty Assessment (UA) ................................. .................. .................. .... 2 Work Flow .................................................................................................................... 3
Base Files
9
Base Dataset.................. .................. .................. .................. .................. .................. ...... 9 Base IRF ....................................................................................................................... 9 Base Session File .......................................................................................................... 9 Field History File .......................................................................................................... 9 Master Dataset ............................................................................................................ 10 CMOST Formulas.......................................................................................... 11 CMOST Formula Samples................. ................. .................. ................. ........ 11 Using Include Files ........................................................................................ 12
CMOST CMOST Tasks
13
Creating a Task File .................................................................................................... 13 Saving a Task File ................. .................. .................. .................. .................. .............. 14 General Properties................ .................. .................. .................. .................. ............... 15 Parameters ................................................................................................................... 18 Adding a New Parameter ................ .................. .................. .................. ......... 18 Task Readiness .............................................................................................. 20 Validate Task File Menu Item ............................ .................. .................. ....... 21 Deleting a Parameter ................ ................. ................. ................. ................. .. 26 Moving Parameters in Table ................ ................... .................. .................. ... 26 Editing a Master Dataset ................... .................. ................... .................. ...... 26 Importing Parameters from the Master Dataset .......................... ................... 27
CMOST CMOST Studio: Getting Started
Contents
i
Objective Functions .................................................................................................... 27 Global Objective Function ............................................................................ 28 Local Objective Functions............................................................................. 29 Task Readiness .............................................................................................. 31 Validate Task File Menu Item ....................................................................... 32 Treeview Icons .............................................................................................. 32 Experimental Design Errors .......................................................................... 33 Objective Function Terms ............................................................................. 34 Experimental Design .................................................................................................. 38 Experimental Design Job Patterns ................................................................. 39 Verification Job Patterns ............................................................................... 40 Designs .......................................................................................................... 40 Design Details ............................................................................................... 41 Influence Matrix ......................................................................................................... 42 Editing the Influence Matrix ......................................................................... 44 Result Observers......................................................................................................... 44 Adding a New Result Observer ..................................................................... 45 Importing Result Observers........................................................................... 47 Removing a Result Observer ......................................................................... 49 Constraints .................................................................................................................. 49 Hard Constraints ............................................................................................ 50 Soft Constraints ............................................................................................. 50 Restart Configurations ................................................................................................ 51 Simulation Auto Restart ................................................................................ 52 CMOST Result Files Reuse .......................................................................... 52 CMOST Restart Configuration ..................................................................... 53 Run Configurations .................................................................................................... 55 Scheduler Configuration................................................................................ 55 Simulator Configuration ................................................................................ 58 CMOST Engine Configuration ..................................................................... 59 Job Removal from Launcher Job List View .................................................. 62 Starting a Task ............................................................................................... 62
CMOST Result s
65
Run Status Monitor .................................................................................................... 65 CMOST Engine ............................................................................................. 66 Run Display ................................................................................................... 67 Messages Tab ................................................................................................ 67 Schedulers Tab .............................................................................................. 68
ii
Contents
CMOST Studio: Getting Started
Job Summary .............................................................................................................. 69 Job Summary Table ....................................................................................... 69 Table Configuration ....................................................................................... 71 Loading Jobs with other CMG Software ...................... ................................. 72 Viewing Log Files ......................................................................................... 73 Parameter Status ......................................................................................................... 73 Run Progress ............................................................................................................... 74 Graph ............................................................................................................. 74 Job Details ..................................................................................................... 75 Table .............................................................................................................. 75 Viewing Multiple Plots .................................................................................. 76 Results Observers ....................................................................................................... 77 Time Series Results Observers ...................................................................... 78 Fixed Date Results Observers ........................................................................ 79 Job Details ..................................................................................................... 80 Viewing Multiple Plots .................................................................................. 81 Parameter Effective Estimates .................................................................................... 81 Effective Estimate Table ................................................................................ 81 Tornado Plots ................................................................................................. 82 Response Surfaces ...................................................................................................... 86 Monte Carlo PDF ........................................................................................................ 87 Unconditional PDF ........................................................................................ 88 Conditional PDF ............................................................................................ 88 CDF Plots....................................................................................................... 89 Tables ............................................................................................................. 90 Parameter Histograms ................................................................................................. 91 CMT in Results Section .............................................................................................. 92
General Operations
93
CMOST Host Manager ............................................................................................... 93 Starting the CMOST Host Service ................................................................. 94 Opening a Running CMR from Host Manager .............................................. 94 Opening a CMOST File .............................................................................................. 95 Operation Menu .......................................................................................................... 96 Task File Operations ...................................................................................... 96 Results File Operations .................................................................................. 96 Copying and Saving Images .......................................................................... 97 Copy ............................................................................................................... 97 Save Image ..................................................................................................... 98
CMOST Studio: Getting Started
Contents
iii
Validating Errors ...................................................................................................... 100 Task Readiness ............................................................................................ 100 Validate Task File Menu Item ..................................................................... 100 Treeview Icons ............................................................................................ 101 Experimental Design Errors ........................................................................ 101 CMOST Formula Editor ........................................................................................... 102 Functions ..................................................................................................... 102 Variables ...................................................................................................... 102 Text Size ...................................................................................................... 103 Printing Plots ............................................................................................................ 103 Page Setup ................................................................................................... 103 Print Preview ............................................................................................... 104 Print Setup ................................................................................................... 105 Exporting a Task File ............................................................................................... 106 Closing and Exiting .................................................................................................. 107 Close ............................................................................................................ 107 Exit .............................................................................................................. 108 Plot Properties .......................................................................................................... 108 Axis Tab ...................................................................................................... 108 Curve Tab .................................................................................................... 109 Legend Tab .................................................................................................. 110 Zooming for Plots ..................................................................................................... 111 How to Zoom .............................................................................................. 111 How to Remove Zooming ........................................................................... 112 Configuration Menu ................................................................................................. 114 Options ........................................................................................................ 114 Password...................................................................................................... 116
Troubleshooting
117
Creating and Editing a CMOST Task ...................................................................... 117 Running a CMOST Task .......................................................................................... 118 Viewing CMOST Result .......................................................................................... 121
Appendices
123
Appendix A: CMOST Formulas .............................................................................. 123 Parts of a Formula ....................................................................................... 123 Constants in Formulas ................................................................................. 123 Functions in Formulas ................................................................................. 123 Variables in Formulas ................................................................................. 124 Operators in Formulas ................................................................................. 125 Formula Calculation Order .......................................................................... 125 List of Built-in Functions in CMOST ......................................................... 126
iv
Contents
CMOST Studio: Getting Started
Appendix B: Names in CMOST ............................................................................... 133 Appendix C: Optimizers ........................................................................................... 133 CMG DECE Optimizer ................................................................................ 133 Particle Swarm Optimizer ............................................................................ 134 Brute Force Search....................................................................................... 136 Random Search ............................................................................................ 136 Appendix D: Probability Density Functions ............................................................. 136 Uniform Distribution ................................................................................... 136 Triangle Distribution.................................................................................... 137 Normal Distribution ..................................................................................... 137 Log-normal Distribution .............................................................................. 137 Appendix E: Objective Functions ............................................................................. 137 History Match Error ..................................................................................... 137 Discounted Value ......................................................................................... 139 Raw Simulation Result ................................................................................ 140 Appendix F: Experimental Design............................................................................ 140 Sensitivity Analysis Experimental Designs ................................................. 141 Uncertainty Assessment Experimental Designs ......... ................................. 142 Appendix G: Post Processing.................................................................................... 142 Sensitivity Analysis Post Processing ............................ ............................... 142 Uncertainty Assessment Post Processing ..................................................... 143
CMOST Studio: Getting Started
Contents
v
Introduction
This guide gives a quick overview of how to use CMOST and it is a useful reference for someone who has never worked with CMOST. Some basic knowledge of other CMGL products is assumed.
What is CMOST? CMOST is CMG’s history matching, optimization, sensitivity analysis, and uncertainty assessment tool. It can launch multiple simulation jobs to multiple computers using different input parameter values. It may be used in any situation where a user runs multiple simulation jobs with the intention of either converging on a better solution to some problem or seeing the effect of input parameter changes on output properties. CMOST can make full use of all available computers and licenses. Once a job has been created by CMOST, it will automatically submit simulation jobs and check their status periodically. Once simulations have completed, CMOST will automatically process the results. It will then visualize the results in ways that will provide insight to the problem. To make the best use of CMOST, the user should have a good understanding of the reservoir model they are working with. A rough understanding of which parameters need to be adjusted and the possible outcomes of changing each parameter should be known. The user should also clearly know the specific goal of the project.
CMOST Tasks CMOST Studio can be used for completing four different task types:
Sensitivity Analysis
History Matching
Optimization
Uncertainty Assessment
CMOST Studio: Getting Started
Introducti on
1
Sensiti vity Analysis (SA) A Sensitivity Analysis Task is used for determining the overall variation of simulation results under different parameter values and/or which parameters have the greatest effect on simulation results. A sensitivity analysis normally uses a small number of simulation runs to determine how sensitive results are to different adjustable parameters. This will help the user to achieve a better understanding of how different parameters affect results. The information can later be used in other tasks such as History Matching, Optimization, or Uncertainty Assessment which make use of greater numbers of simulation runs, as it will help determine which parameters should be varied and their approximate ranges.
History Matching (HM) History matching with CMOST provides an effective and efficient way to match simulation results to production history. CMOST can automatically create multiple derived simulation datasets from the Master Dataset by varying selected dataset parameters and then run the simulation jobs. As jobs complete, CMOST will analyze the results to determine how well they match the production history. An optimizer will then be used to determine parameter values for new simulation jobs. As more simulations complete, the results will converge to multiple optimal solutions which provide satisfactory history match if user specified parameters and their ranges are appropriate.
Optimization (OP) An optimization task is used to identify optimal field development plan and operating conditions that will produce either a maximum or minimum value for objective functions the user specifies. These objective functions may be physical quantities, such as cumulative oil produced, recovery factor, and cumulative steam oil ratio. More importantly, CMOST allows that monetary values can be assigned to different physical quantities. Thus optimization can be conducted using simplified net present value.
Uncertainty Assessment (UA) Uncertainty Assessment is normally used to determine the likely variation in simulation results due to uncertainty ─ usually uncertainty in reservoir variables. It makes use of some simulation to develop a Response Surface (RS) for each objective function (such as NPV, CSOR, cumulative oil production, etc.) of interest with respect to each of the uncertain variables (e.g. porosity, permeability, endpoint saturations, oil viscosity, etc.), and then conducts a Monte Carlo simulation by selecting tens of thousands of variable value combinations and determining the value of the objective function for each combination. The results are probability density function (PDF) and cumulative density function (CDF) plots for each objective function.
2
Introductio n
CMOST Studio: Getting Started
Uncertainty Assessment can be used to obtain a sensitivity analysis and an optimization in certain circumstances, and has certain advantages over SA and Optimization as well as certain limitations. The advantages are that: it uses three values for each variable instead of the two required by SA; It results in Response Surfaces that map the change in objective functions with respect to changes in the variables, which is a considerable improvement over SA; It provides a conditional PDF for each objective function with respect to each variable which gives good indication on the sensitivity of each variable; It allows some optimization of variables to be carried out, which cannot be done by SA; And it requires many fewer simulation cases to be run than does Optimization. The limitations mainly apply to the Optimization component in that the RS’s are a less accurate way to obtain an optimum solution than full Optimization, and are potentially limited to interpolation (rather than extrapolation) among the variable values. Also the number of variables, and variable values, which can be assessed, is more limited than would be the case with full Optimization and Sensitivity Analysis. Before any of these tasks are started, some basic information is required. This is discussed in the Base Files section.
Work Flow CMOST tasks can be performed independently in CMOST Studio. It is considered as a good practice to conduct a Sensitivity Analysis prior to History Matching, Optimization and Uncertainty Assessment if the reservoir model is complex and you are not sure which parameters need to be adjusted. Since the tasks can be performed independently, a user may also wish to redo a task such as a refined history matching after an initial history matching is complete. Before starting to work with CMOST, it is worthwhile to know the main components of CMOST as shown in the figure below.
CMOST Studio: Getting Started
Introducti on
3
The general steps for each task type are as follows:
4
Introductio n
CMOST Studio: Getting Started
CMOST Studio: Getting Started
Introducti on
5
6
Introductio n
CMOST Studio: Getting Started
Create a base dataset file & corresponding IRF file
Base.DAT and B ase.IRF
Create a CMOST Master Dataset (CMM file) for indicating where and how CMOST should modify the dataset. Original dataset can be copied and manually edited.
Base.CMM
Create a new Uncertainty Assessment Task in CMOST Studio. Enter parameters into the parameters section. Parameters that are marked in the CMM file can be imported directly. Normally, the middle value should be the mean and the High and Low values should be the highest/lowest practically possible values. Enter objective function information. Choose an Experimental Design and Results Observers. Save the new task file.
Uncertainty.CMT
Uncertainty As ses sm ent (Estimate reliability of the predictions)
Run the task. CMOST Result file:
Uncertainty.CMR Is generated along with a number of SR2 files specified in the Experimental Design step. In the Results, look at the Response Surface plots. The Response Surfaces are “trained” using SR2 files of verification runs. A few additional runs are then performed and plotted against the Response Surface plots to see if they match the predicted objective function values using the Response Surfaces. If these additional values are along the line of the plot, then the predicted values are very close to the actual simulation values. This is an indicator of the viability of a Response Surface and subsequent Monte Carlo simulation results.
Use Unconditional PDF plots to assess uncertainties of production forecast results. Use conditional PDF plots to understand the effect (sensitivity) of each uncertain parameter on forecast results.
Present your finding s to management
CMOST Studio: Getting Started
Introducti on
7
Base Files
Each CMOST Task is based on a previously completed simulation. CMOST needs access to a number of files from this base simulation, and can make use of other files if they are available. The types of files that can be referenced are mentioned below.
Base Dataset Before beginning to work with CMOST Studio (CMOST), a Base Dataset should be created. The Base Dataset can be any valid dataset for any CMG simulator. This file is not directly used by CMOST but will give a base state for which different variations can be made. See the Master Dataset and Base IRF sections.
Base IRF The Base Dataset should be used to create the Base IRF (simulation results file). This file gives CMOST basic information about the dataset, such as the type of simulator that was used, well lists, simulator start and end dates, etc. If the corresponding MRF file is located with the base IRF to complete the SR2 pair, then the base information from these files will be shown in the CMOST Results plots. The base IRF is a required component.
Base Session File A base session file is a useful file to have but is not required by CMOST. The base session file is a file created with Results Graph using the base IRF. CMOST can later use the session file to quickly display different plots in Results Graph with simulation runs created by CMOST.
Field History File A field history file contains production data for the reservoir. This file can be created using Builder or by following the steps outlined in the Results Graph Manual. Field History Files are only required for History Matching Tasks.
CMOST Studi o: Gettin g Started
Base Files
9
CMOST treats all the data points in a field history file equally. Therefore, the temporal distribution of data in the field history file will have certain effect on the final history match results. If users do not pay attention to this, CMOST could converge to results that are not desired. For example, the goal of a history match problem is to match the overall trend of Cumulative Oil SC of 5-years history (2000-01-01 to 2005-01-01). Ideally, the Cumulative Oil SC (or Oil Rate SC) data in the field history file should be equally distributed in time (daily, weekly, or monthly). In this way, CMOST will try to match the trend of Cumulative Oil SC during the entire five years. If the field history file has daily Cumulative Oil SC data for the year of 2001 and monthly data for the remaining four years, the simulation results of 2001 (365 data points) will contribute more to the history match error than those of 2002-2004 (48 data points). CMOST may converge to a match that is perfect for the year of 2001 but very bad for the years of 2002-2004. NOTE: Current version of CMOST only supports FHF using the following time units: ‘days’, ‘day’, ‘ISO_DATE_FORMAT’, ‘YYYY/MM/DD’, ‘YYYY MM’.
Master Dataset The Master Dataset is a version of the Base Dataset that has been modified to tell CMOST where to enter different values into the dataset. Parameters in the dataset that are of interest to the user have their values substituted with CMOST formulas allowing CMOST to substitute different values at runtime. For example, the following line is used to set water-oil contact depth in a STARS base dataset:
*DWOC 80.0 In a Master Dataset, water-oil contact depth can be specified by:
*DWOC
this[80.0]=WaterOilContact OR *DWOC
WaterOilContact WaterOilContact is a parameter (independent variable) which will be defined in the corresponding CMOST Task File created in CMOST Studio. Anywhere CMOST is required to substitute a value or text into the Master Dataset, a CMOST formula should be entered. CMOST formulas can appear anywhere in the Master Dataset. However, each CMOST formula must be completed in a single line. The Master Dataset is a required component. NOTE 1: The first and last date/time keywords for a Master Dataset must be *DATE. Errors will be encountered if *TIME keywords are used. NOTE 2: Current version of CMOST requires that simulator output time unit (OUTUNIT) must be ‘day(s)’. Otherwise, Errors will be encountered.
10
Base Files
CMOST Studi o: Getting Started
NOTE 3: It is recommended that master datasets DO NOT contain the action STOP in well operating and monitoring constraints to force simulation to terminate. CMOST will ignore simulation results that are terminated before the expected stop time is reached.
CMOST Formulas All CMOST formulas that are entered into the Master Dataset must be nested within a start tag
and an end tag cmos t >. It is optional but recommended to use t hi s[ Or i gi nal Val ue] = to start a formula. The original value indicates the value that was used by the base dataset. Also, if the syntax t hi s[ Or i gi nal Val ue] = is used, the variable t hi s can be used in the formula to reference the original value that was entered in the dataset. CMOST formula syntax and description of built in functions is provided in Appendix A: CMOST Formulas.
CMOST Form ula Sampl es this[1.0]=varA varA Substitutes the value of parameter varA directly into the dataset this[1]= this + varB Substitutes the result of adding parameter varB to the original value this[26]=varA-varB+5 varA-varB+5 Substitutes the result of varA minus varB plus 5 this[203.9]=179.79*POWER(varA/varB, 0.248)
var A Substitutes the result of 179.79 var B
0.248
this[1800.0]=MAX(varA*varB, 1200) If the result of varA multiplied by varB is greater than 1200, the multiplied parameters will be substituted. Otherwise, 1200 will be substituted. this[“OPEN”]=IF(varA>=600, “OPEN”, “CLOSED”) If varA is greater than or equal to 600, OPEN will be substituted. Otherwise, CLOSED will be substituted. this[402.57]=LOOKUP(varB, {3.0, 5.0, 7.3}, {524.62, 402.57, 188.75})
CMOST Studi o: Gettin g Started
Base Files
11
If varB matches any of the values in the first set of values, the corresponding value in the second set of values will be substituted. For example, if varB was set to 7.3, the value 188.75 would be substituted.
this[“permMid.inc”]=LOOKUP(varA, {“porLow.inc", "porMid.inc", "porHigh.inc"}, {"permLow.inc", "permMid.inc", "permHigh.inc"}) If varA matches any of the entries in the first set, the corresponding entry in the second set will be substituted. For example, if varA was set to “porMid.inc” , permMid.inc would be substituted into the dataset. this[0.68]=MAX(MIN(varA, 1), 0) A range of acceptable values is set for varA. If varA is less than 0, the value 0 will be substituted. If varA is greater than 1, the value 1 will be substituted. Otherwise, if varA is between 0 and 1, the value of varA would be substituted.
Using Includ e Files If large arrays of data need to be substituted, it may be easier to use include files. For example, porosity may have a value for each grid block in a reservoir. It would be unrealistic to create a parameter for each grid block’s porosity. Multiple include files can be used where each one can contain a different geostatistical realization for porosity. Include files can be used anywhere in a dataset. The syntax that is used for entering an include file into a master dataset is:
*INCLUDE ‘ArrayIncFile’ The parameter ArrayIncFile would then be defined as a Text on the Parameters page with the include files listed as candidate values. The include files would contain the block of text that is to be substituted into the dataset. For example, porosity could be used in an include file as follows for a reservoir with dimensions: ni = 10, nj = 3, nk = 2
*POR .08 .15 .074 .095 .11 .08
*ALL .08 .134 .12 .13 .12 .09
.081 .08 .12 .12 .134 .144
.09 .087 .154 .157 .157 .143
.12 .157 .167 .17 .157 .123
.15 .145 .187 .18 .18 .16
.09 .12 .121 .184 .18 .165
.097 .135 .122 .122 .098 .102
.087 .18 .08 .084 .09 .10
.011 .092 .08 .09 .09 .10
Other include files would be created with similar syntax but with different values entered.
12
Base Files
CMOST Studi o: Getting Started
CMOST Tasks
Creating a Task File Once all the base files have been created, a new task file can be started. When CMOST Studio is opened, a blank window will appear. To create a new task file, select ‘New’ from the ‘File’ menu. The following dialog will appear:
Task Type
According to the type of task that is wished to be performed, select the appropriate Task Type. See CMOST Tasks for more details. Base IRF File Name
The Base IRF contains basic information about the datasets that CMOST will create, such as the type of simulator that was used, well lists, simulator start and end dates, etc. See Base IRF for more details.
CMOST Studi o: Gettin g Started
CMOST Tasks
13
The file path can be entered manually or the Browse button can be used to search for the file. Task File Folder
The Task File Folder is the directory where all files related to the CMOST Task will be located. If the Task File Folder is going to be the same directory as directory where the base IRF is currently located, check the ‘The same as the Base IRF File’ checkbox. If not, uncheck the box and browse for the directory using the ‘Folder’ button. If this option is chosen, the base IRF file will be copied to the Task File Folder. NOTE: If CMOST will be scheduling jobs remotely, the Task File Folder must be in a UNC directory.
When all the information is filled in, click OK.
Saving a Task File At any point during the progress of a task, the CMOST task file can be saved. To save, click the ‘File’ menu and select ‘Save’ or ‘Save As’. The following dialog will appear:
14
CMOST Tasks
CMOST Studi o: Getting Started
The first time a file is saved, the default file name is newtask.cmt . However, the file can be named anything. The file should be saved to the Task File Folder chosen when creating the new task file. If it is not, all related files will be copied to the new file location. When the correct location and a file name have been chosen, click Save. The new task file will be saved. If the file needs to be saved later after changes have been made, select either ‘Save As’ through the File menu to save the file with the same or new name, or select ‘Save’ to overwrite the old file with any changes that have been made.
General Properties Once a new task is created, the studio will bring up the General Properties page of the task. The General Properties page is where the base files can be entered for the task. This page is also used for error checking using the Task Readiness display.
Master Dataset
The Master Dataset is a version of the Base Dataset that has been modified to tell CMOST where to enter different values into the dataset. The file path can either be entered manually or found using the Browse button. If the file is not in the Task File Folder, CMOST will copy the file to the folder automatically. The Master Dataset is a required component. CMOST Studi o: Gettin g Started
CMOST Tasks
15
The Edit button can be used to open up the master dataset in a text editor. If there is no text editor associated with the master dataset file type (CMM), a dialog will appear to set the file type association. See the Master Dataset section for more information about the file. Base Dataset
The Base Dataset is entered only for future reference. This is not a required component. The ‘Builder’ button can be used to open the dataset in Builder for editing or to visualize the dataset. See the Base Dataset section for more information about the file. NOTE: Changes made in the Base Dataset will not be reflected in the Master Dataset or vice versa. Each must be edited separately.
Base Sessi on File
The Base Session File is not required but is very useful for quickly analyzing simulation results. See the Base Session File section for details. IRF file from which ori gin info rmation was imported:
The location of the Base IRF is listed in this section. The Base IRF is only required when creating the Task File. See the Base IRF section for more information about the Base IRF File. If changes in the Master Dataset are made that were not included in the Base IRF when the task file was created, a new IRF file may need to be imported to update different sections of the Task File. For example, if a new well is added to the Master Dataset after the task file is created, a new IRF needs to be imported if the user wishes for CMOST to use results from the new well. To do this, the Base Dataset will need to be updated to contain the new well and then be run with a simulator. The new IRF file can then be imported by using the Import button in the Optional Files section on the General Properties page. Task Readiness
The Task Readiness display shows if there are any errors on the pages listed. As tasks are completed, the X’s will turn to checkmarks if there are no errors. If errors are encountered, the cell can be expanded to give a description of the error. A task cannot be started unless all errors have been fixed. If there are any warnings, they will appear as exclamation marks. The description of the warning can also be viewed by expanding the cell with the warning. A task can be started if there are warnings, but it is recommended that all warnings are examined before starting. See Validating Errors for more information on checking errors. 16
CMOST Tasks
CMOST Studi o: Getting Started
Task Name
The Task Name contains the full path name of the task file that is currently open. This information may not appear until the file is saved and reopened. The file name can also be found in the title bar of the studio. Task Type
The Task Type that is used for the current task file is listed here. See CMOST Tasks for more information on the different task types. Unit System
The unit system is the set of units that will be displayed in the plots in the CMOST Results file. If the unit system is different from the units in the Master Dataset then the units will be converted for the plots. Description
The description box is not used by CMOST but can be used to note any details that may be important for future reference.
CMOST Studi o: Gettin g Started
CMOST Tasks
17
Parameters The Parameters page can be found by selecting Parameters in the tree view. The Parameters page is where different values are entered for each parameter that will later be used to substitute into the Master Dataset. Each parameter has a number of properties associated with it.
Adding a New Parameter A new parameter can be manually entered in two ways. Information can be entered into the bottom row of the Parameters Table or the Insert button can be used to insert a new row into the table where information can then be added. CMOST can also automatically copy all parameters that are present in the Master Dataset to the Task file. To do this, click on the Import button. If the Master Dataset is very large, it may take a while for CMOST to read and find all parameters. See Importing Parameters from the Master Dataset for more information on how to import parameters from Master Dataset.
18
CMOST Tasks
CMOST Studi o: Getting Started
Name
The name of the CMOST Parameter listed in the Master Dataset should be entered into the Name column. The name entered in the Parameters Table must match the name of the parameter in the Master Dataset exactly. Names are case sensitive. See Appendix B: Names in CMOST for more information about using names in CMOST. Default Value
The default value should produce the original value that is entered in the Base Dataset. This value is only used when the Active checkbox is not checked for a parameter. To edit a default value in the studio, click on the cell and enter in the new value. If a more complicated CMOST Formula is used, the default value may not be equal to the original value in the dataset. For example, if the following CMOST Formula was entered into the Master Dataset:
this[1]=LOG10(Keq) The default value for the parameter Keq would be 10 since this value would produce the original value of 1 when the CMOST Formula is evaluated. Ac ti ve
The active checkbox determines whether or not CMOST will vary specific parameter when substituting into the Master Dataset. If the Active checkbox is checked, CMOST will assign a Candidate Value to the parameter. If the box is unchecked, CMOST will assign the Default Value to the parameter for every run that is created. Type
There are three different data types that the parameters can be defined as:
Real
Integer
Text
Depending on the simulator keyword that the parameter is being used with, different types should be chosen.
Real should be chosen for parameters that can have decimal values such as parameters representing porosity or permeability. This is the default type.
Integer should be chosen for a parameter that cannot have decimal values such as parameters representing rock type or a block location.
Text should be used for parameters that have text values. The values should always be enclosed in double quotation marks (for example “OPEN”). The Import option will automatically assign the text type to any parameter which has a default value enclosed in double quotation marks in the Master Dataset.
CMOST Studi o: Gettin g Started
CMOST Tasks
19
Source
Source is used to tell CMOST how to assign values to a parameter. There are two different types of sources for values that CMOST will use for a parameter:
Candidate Values List
Formula
The Candidate Value List refers to the items entered into the Candidate Value table located on the bottom part of the studio. If this option is selected, values will be taken from this list to assign to the parameter. This is the default. Formulas can be entered for a parameter. The section for entering the formula will appear if the source is changed to ‘Formula’ for a parameter. Any other parameter can be used in the formula, as well as any of the CMOST functions. See Validating Errors. There are a variety of different ways to check errors in CMOST Studio. It is important to check for errors and warnings before running a task since a task cannot be started unless all errors have been fixed. A task can be started if there are warnings, but it is recommended that all warnings are examined before starting.
Task Readiness The main way to check errors in CMOST Studio is to use the Task Readiness display on the General Properties page. The Task Readiness display shows if there are any errors on the pages listed. As pages are completed, the X’s will turn to checkmarks if there are no errors. If errors are encountered, the page’s cell can be expanded to give a description of the error. If there are any warnings, they will appear as exclamation marks. The description of the warning can also be viewed by expanding the cell with the warning.
20
CMOST Tasks
CMOST Studi o: Getting Started
Validate Task File Menu Item Another way to check for errors or warnings is to access the Validate Task File menu item. This can be found under the Tools menu or by clicking on the Validate icon in the Tool bar. When this item is selected, it will give a text output of errors or warnings found on each page
If no errors are encountered, the status will be shown as ‘Ready’. Treeview Icons
If there are errors with the task files, an error or warning display will appear on the treeview icon where the problem was encountered.
A description of the error can be found by right clicking on the icon then selecting ‘Show Page Status’. A similar display to the ‘Validate Task File’ dialog will appear.
CMOST Studi o: Gettin g Started
CMOST Tasks
21
Experimental Design Errors
Specific errors relating to experimental design can be found on the Experimental Design page in the Error Messages display. This field is updated when first entering the Experimental Design page or when the Check Error button is clicked. CMOST Formula Editor for more details on entering formulas for parameters. Track
The Track checkbox determines whether or not CMOST will show the value of the parameter on the Job Summary page of the CMOST results file. If the Track checkbox is checked, CMOST will show the parameter data in the Job Summary table. If the box is unchecked, the data will not be shown. Candidate Values
The Candidate Value table is where values are entered for CMOST to substitute into the Master Dataset. This section will differ depending on the Task Type that is chosen. The specific candidate value that is chosen for a run is different for each Task Type. Sensitivity Analysis and Uncertainty Assessment values for each run are determined by the Experimental Design. History Match and Optimization values for each run are determined by the Optimization Method that is used. Sensitivity Analysis
For a Sensitivity Analysis Task, this section will be labeled as ‘Sample Value’. Two different values will be required to be entered for each parameter using Candidate Value Table as the source. The values entered for low and high should be within the reasonable range for the property represented by the parameter. The low and high values should be different. History Match and Optimization
An unlimited number of entries can be added to the Candidate Value table for History Match and Optimization tasks. However, it should be noted that it will take longer and longer for the optimizer to arrive at a solution for the task as more candidate values are added. The values added should represent a range of acceptable values that can be substituted for a certain parameter. Candidate Value entries can be removed by clicking on the table entry number (the grey cell next to entry that needs to be removed), then using the delete key on the keyboard. For each parameter, candidate values must be arranged in either ascending or descending order.
22
CMOST Tasks
CMOST Studi o: Getting Started
Uncertainty Assessment
For an Uncertainty Assessment Task, this section will be labeled as ‘Dataset Value’. Three different values will be required to be entered for each parameter using Candidate Value Table as the source. The value entered for low should represent a value near the lower limit of practical values for that parameter. High should represent a value that is near the upper limit of practical values for that parameter. Middle should be a value somewhere in the middle of that range. For all task types except Sensitivity Analysis, if the parameter type is ‘Text’, an equivalent numerical value will have to be added with the candidate value. If there is a value that fits with the text value, that number should be entered. Copying Candidate Values
If candidate values for several parameters are the same, the values can be copied from one parameter to another parameter or group of parameters. To do this, right click on the parameter that the values are to be copied from then select ‘Copy Candidate Values to Other Parameters’. This will bring up the Candidate Value Copying dialog:
For Sensitivity Analysis and Uncertainty Assessment tasks, all candidate values will have to be copied. For History Matching and Optimization tasks, the different candidate values can be chosen to be copied by using the checkboxes in the Candidate Value table.
CMOST Studi o: Gettin g Started
CMOST Tasks
23
The Parameters table will be filled with all parameters that are the same Type as the candidate value that is being copied. The parameters that the candidate values will be copied to can be chosen by checking the corresponding checkbox for each parameter. NOTE: If the parameters that the values are being copied to already have values entered, the preexisting values will be replaced by the new copied values. Values will NOT be appended.
File Button
If a parameter is selected to represent an include file in the Master Dataset, the File button can be used to browse for the files that will be included. The parameter type must be selected as ‘Text’ for this button to be activated. Only one file may be selected at a time to add to the task file. See Using Include Files for more information on how to use include files with a Master Dataset. Generate Button
The Generate button can be used to quickly populate the Candidate Value table with a range of values. This button is only available for History Matching and Optimization tasks. The parameter type must be either ‘Real’ or ‘Integer’ for this button to be active. Once the button has been clicked, the Value Generator dialog will appear:
There are three different methods available for generating values:
24
CMOST Tasks
CMOST Studi o: Getting Started
Arithmetic Sequence
Geometric Sequence
Sampling from Distribution (Not recommended unless there is a specific reason to use this method.)
For each of the methods, the number of values that should be entered into the Task File is determined using the Number of Values box. NOTE: It will take longer and longer for the optimizer to arrive at a solution for the task as more candidate values are added.
The Arithmetic Sequence produces values that are evenly spaced between them (for example, 0.25, 0.50, 0.75, 1.00, 1.25, and 1.50). The minimum and maximum values can be any value. The Geometric Sequence creates a sequence of values that follow a pattern of multiplying a fixed number from one term to the next (for example, 0.25, 0.5, 1, 2, and 4). The minimum and maximum values can be any non-zero value and both values must be the same sign. (i.e. Minimum*Maximum > 0) The Sampling from Distribution method creates a random sampling of values based on the distribution that is entered. There are five types of distributions available for sampling:
Normal
Uniform
Triangle
Lognormal
Universal
See Appendix D: Probability Density Functions for more information on each of the distribution types. Once the PDF has been defined, click ‘Random Sample’ to randomly choose values using that distribution. This can be repeated several times if desired. After all of the information is filled out for the Value Generator dialog, click OK. The values will be transferred to the parameter. NOTE: If duplicate values are created by the random sample, they must be removed before continuing. To do this, select the item number of a duplicate value in the Preview Values table then use the Delete key on the keyboard.
CMOST Studi o: Gettin g Started
CMOST Tasks
25
Prior Probability Density Function s
Prior Probability Density Functions are only available for Uncertainty Assessment tasks. The distribution given in this section should represent the probability that specified values can occur. There are several different distribution types available for CMOST:
Normal
Fixed
Uniform
Triangle
Lognormal
Universal
More information for each of the Prior Probability Density Functions is provided in the Appendix D: Probability Density Functions section. All of the associated Prior Probability Density Function data entries must be filled out for each parameter.
Deleting a Parameter To delete a parameter, the entire row of the parameter must be selected. To do this, click on the grey cell to the left of the parameter name. The entire row will then become highlighted and the Delete Button will become enabled. Click on the Delete button to delete the row. The Delete key on the keyboard can also be used. Multiple Parameters can be removed by clicking on the grey cell to the left of a Parameter’s Name and dragging the mouse up or down. Shift and Ctrl functionality is also available. The Delete button or Delete key on the keyboard can then be used to delete the rows.
Moving Parameters in Table To move a Parameter up or down in the Parameters Table, select any cell in the row of the parameter that needs to be moved, then click on the Up or Down arrow buttons. Parameters may be listed in any order.
Editing a Master Dataset The Master Dataset and Task File can be accessed from the Parameters page to view or to edit with other programs. The files can either be opened in Builder or with a text editor. To open the Task File in Builder, click on the Builder button. This will open the Task File in Builder with the CMOST Project dialog opened (This feature will be available for 2009 Builder release). To open the Master Dataset in a text editor, click on the Edit button.
26
CMOST Tasks
CMOST Studi o: Getting Started
NOTE: If there is no text editor associated with the master dataset file type (CMM), a dialog will appear to set the file type association.
Importin g Parameters from the Master Dataset CMOST can automatically copy all parameters that are present in the Master Dataset to the Task file. To do this, click on the Import button (It may take a while for CMOST to read large Master Dataset files). If the this[OriginalValue] syntax is used in the Master Dataset, the Default Value will also be copied from the file. CMOST will assume that the Default Value is equal to the original value when importing parameters from the Master Dataset. The imported default values should be checked since this may not always be the case. The parameter Type should also be checked for any errors. When importing, CMOST will set any parameters that have original values with quotation marks to Text. All other parameters will be set to Real. Parameters that should be Integers will have to be changed manually after importing. Active and Track checkboxes are automatically checked when importing parameters. The Source will be set to Candidate Value List by default. Candidate Values and Prior Probability Density Functions will still have to be entered after the parameters have been imported.
Objectiv e Functi ons Objective functions are what CMOST uses to analyze the data that is retrieved from the simulation output files. For a History Matching or Optimization task, a global objective function is required. For all task types, at least one local objective function is required. Each local objective function must contain at least one objective function term. For History Matching and Optimization, both global objective function and local objective functions are used to rank results of simulation jobs and determine how to modify parameter values to improve simulation results. For Sensitivity Analysis and Uncertainty Assessment, local objective functions are the responses you want to investigate for a simulation model by changing parameter values.
CMOST Studi o: Gettin g Started
CMOST Tasks
27
Global Objective Function Global Objective functions are only used for History Matching and Optimization tasks. Name
The Global Objective Function can be changed to any acceptable name to give it a better description. See Appendix B: Names in CMOST for more information about using names in CMOST. Method
For a History Matching task, the global objective function is always the weighted average of all the Local Objective functions. For an Optimization Task, the Global Objective Function can be determined using one of three different methods:
28
Sum (Recommended)
Weighted Average
Use the First
CMOST Tasks
CMOST Studi o: Getting Started
The Sum method adds all objective functions together to produce a Global Objective Function. The weighted average will average all values using the Weight set for each Local Objective Function. Error! Objects cannot be created from editing field codes.
Here, LOFi is local objective function; w i is weight. If Use the First is selected, the Global Objective Function will be equal to the first Local Objective Function listed in the Local Objective Functions Table.
Local Objectiv e Functi ons Local Objective Functions are used in all task types. There are three types of local objective functions:
History Match Error (For History Matching only)
Discounted Value (Optimization, Sensitivity Analysis, Uncertainty Assessment)
Raw Simulation Result (Optimization, Sensitivity Analysis, Uncertainty Assessment)
See Appendix E: Objective Functions for more information about how these objective functions are calculated. Ad di ng a New Lo cal Obj ect iv e Funct io n
To add a new Local Objective Function, click on the Insert button. For each task type except for History Matching, a menu will appear. There will be two options for creating a Local Objective Function:
Discounted Value
Raw Simulation Result
Local Objective Functions using Raw Simulation Results will analyze data by taking simulation results without any alterations. If Discounted Value is selected, simulation results will be transformed using the discounting function. This option should be used if you want to calculate Net Present Value using simulation results. See Discounted Value for more information about how data is transformed.
CMOST Studi o: Gettin g Started
CMOST Tasks
29
Name
The name of the Local Objective Function should be entered into the Name column. Names for each Local Objective Function must be unique. Do not use the same name for more than one Objective Function. See See Appendix B: Names in CMOST for more information about using names in CMOST Active
The active checkbox determines whether or not CMOST will analyze data using that specific Local Objective Function. If the Active checkbox is checked, CMOST will use the function. Otherwise, the Local Objective Function will not be used. Weight
The Weight will give local objective functions more or less emphasis in the Global Objective function if Weighted Average is selected for the Calculation Method. The higher the Weight relative to the other Local Objective Functions, the more emphasis the objective function will have on the Global Objective Function. This value has no effect on Sensitivity Analysis or Uncertainty Assessment tasks. Category
The Category lists the type of local objective function. This will be the same as the option that was chosen when adding the new Local Objective Function. If the task is History Matching, the Category will be listed as History Match Error. See Appendix E: Objective Functions for more information about how each option is calculated. Formula
The Formula column lists how each Local Objective Function uses its Objective Function Terms to produce a value. For History Match Error and Discounted Value, this column is read only. For Raw Simulation Result, the formula needs to be entered manually. See Appendix E: Objective Functions for more information on how other Local Objective Function types are calculated. NOTE: It is recommended that Objective Function Terms are entered before adding a Formula to a Raw Simulation Result Objective Function.
To enter a formula for a Raw Simulation Result Objective Function, click the Formula cell in the Local Objective Functions table. A text box and button will appear. The Formula can be typed into the text field or the button can be clicked to bring up a dialog for editing formulas.
30
CMOST Tasks
CMOST Studi o: Getting Started
The variables listed will be the Objective Function Terms that have been added for that Local Objective Function. See Validating Errors. There are a variety of different ways to check errors in CMOST Studio. It is important to check for errors and warnings before running a task since a task cannot be started unless all errors have been fixed. A task can be started if there are warnings, but it is recommended that all warnings are examined before starting.
Task Readiness The main way to check errors in CMOST Studio is to use the Task Readiness display on the General Properties page. The Task Readiness display shows if there are any errors on the pages listed. As pages are completed, the X’s will turn to checkmarks if there are no errors. If errors are encountered, the page’s cell can be expanded to give a description of the error. If there are any warnings, they will appear as exclamation marks. The description of the warning can also be viewed by expanding the cell with the warning.
CMOST Studi o: Gettin g Started
CMOST Tasks
31
Valid ate Task File Menu Item Another way to check for errors or warnings is to access the Validate Task File menu item. This can be found under the Tools menu or by clicking on the Validate icon in the Tool bar. When this item is selected, it will give a text output of errors or warnings found on each page.
If no errors are encountered, the status will be shown as ‘Ready’.
Treeview Icons If there are errors with the task files, an error or warning display will appear on the treeview icon where the problem was encountered.
32
CMOST Tasks
CMOST Studi o: Getting Started
A description of the error can be found by right clicking on the icon then selecting ‘Show Page Status’. A similar display to the ‘Validate Task File’ dialog will appear.
Experimental Design Errors Specific errors relating to experimental design can be found on the Experimental Design page in the Error Messages display. This field is updated when first entering the Experimental Design page or when the Check Error button is clicked. CMOST Formula Editor for more information about adding formulas to Objective Functions Units
The units that should be displayed with the objective functions can be listed in this cell. For example, if the objective function represents the cumulative liquid production of a well, ‘bbl’ may be added as the unit type. This item is optional and does not affect the values that are calculated. Removing a Local Objective Function
To delete a Local Objective Function, the whole row for that function must be selected. To do this, click on the grey cell to the left of the Local Objective Function’s name. The whole row will become highlighted and the Delete button will become enabled. Click on the Delete button or use the Delete key on the keyboard to delete the row. Multiple Local Objective Functions can be removed by clicking on the grey cell to the left of a Local Objective Function’s Name and dragging the mouse up or down. Shift and Ctrl functionality is also available. The Delete button or Delete key on the keyboard can then be used to delete the rows. Repeating an Objective Function
Local Objective Functions can quickly be repeated if very similar Local Objective Functions need to be created. Using the Repeat button, all Local Objective Function information will be copied except for the Local Objective Function Name and Objective Function Terms’ Origin Name.
CMOST Studi o: Gettin g Started
CMOST Tasks
33
To repeat a Local Objective Function, the entire row for that function must be selected. To do this, click on the grey cell to the left of the Local Objective Function’s name. The whole row will become highlighted and the Repeat button will become enabled. NOTE: To be able to repeat an Objective Function, all of the Objective Function Terms for that function must have the same Origin Name.
Click on the Repeat button to bring up a dialog for selecting which Origin Names should be repeated. Shift and Ctrl functionality is available for selecting items in the list. Once all the Origin Names that should be repeated are selected click OK.
The same objective function information for all of the selected items will be entered into the table. Any of the information for the repeated Local Objective Functions may be edited. Moving Loc al Objective Functio ns in Table
To move a Local Objective Function up or down in the Local Objective Functions Table, select any cell in the row of the objective function that needs to be moved, then click on the Up or Down arrow buttons respectively. Local Objective Functions may be listed in any order.
Objectiv e Functi on Terms Objective Function Term describes which data should be extracted from simulation results files for calculating objective functions.
34
CMOST Tasks
CMOST Studi o: Getting Started
Ad di ng a New Obj ect iv e Fun ct io n Term
There are two ways to add new Objective Function Terms. Information can be added to the bottom row of the Objective Function Terms Table or by clicking on the Insert button and adding information to the new row that is created. Name
The name of the Objective Function Term should be entered into the Name column. Names for each Objective Function can be the same as an Objective Function Term for a different Local Objective Function. However, the same name cannot be used for two Objective Function Terms for the same Local Objective Function. See Appendix B: Names in CMOST for more information about using names in CMOST. Origin Type
The Origin Type is the type of data that will be retrieved for the Objective Function Term. This data can come from the following types:
Wells
Groups
Specials
Sectors
Layers
Leases
Parameters
Numerical (Not supported yet)
All Origin Types come from the simulation results file except for Parameters which retrieves parameter information from the task file. Origin Name
The Origin Name is a specific item of the Origin Type. If there are no items available for Origin Type, the Origin Name list will be empty. If this is the case, that Origin Type should not be used. For example, if the Origin Type is WELLS, the Origin Name would contain a list of all the wells that are present in the dataset. Property
The Property is a specific item for the Origin Name. No information needs to be entered into this column if the Origin Type is SPECIALS or PARAMETERS. Information is required for all other types. CMOST Studi o: Gettin g Started
CMOST Tasks
35
For example, if the Origin Type is WELLS, the Property cell would have a list of well properties such as Cumulative Oil SC or Gas Rate SC. If Discounted Value is selected for the Local Objective Function, select property rates, not cumulative property amounts. Start Date Time
The Start Date Time is only available for Discounted Value and History Match Error Local Objective Functions. This date represents the date that data should start to be analyzed from. This date must be between the simulation start date and the End Date Time. The default date that is entered is the simulation start date. End Date Time
The End Date Time is only available for Discounted Value and History Match Error Local Objective Functions. This date represents the date that CMOST should stop analyzing data. This date must be between the Start Date Time and the simulation stop time. The default date that is entered is the simulation stop time. Simulation Date Time
The Simulation Date Time is only available for Raw Simulation Result Local Objective Functions. This date is the time that the data for the Objective Function Term will be taken at. This date must be between the simulation start date and simulation stop time. The default date that is entered is the simulation stop time. NOTE: You must make sure that the required data at the specified Simulation Date Time are available in SR2 files. Improper use of WSRF keyword in Master Dataset may cause simulator to skip writing data to SR2 output files.
Yearly Interest Rate
The Yearly Interest Rate is the rate that is used for discounting simulation results. This column is only available for Discounted Value Local Objective Functions. This value should be entered as a fraction, not a percent. The default value is 0.10 (10%). See Discounted Value for more information how this value is used. Field History File
This option is only available for History Match Error Local Objective Functions. This is the column where the Field History File containing the production data that matches the Property information for the Objective Function Term. NOTE: There must be data in the field history file for each objective function term. If there is not, analysis will not be completed. Do not add terms which do not have available data.
Different Field History Files can be added for different Objective Function Terms. The ellipsis button 36
CMOST Tasks
can be used to browse for the Field History File. CMOST Studi o: Getting Started
Measurement Error
This option is only available for History Match Error Local Objective Functions. Measurement error is used to indicate the accuracy of the production data. The measurement error for each Objective Function Term can be added to the measurement error cell. A default of 0 is entered otherwise. More information about how Measurement Error is used to calculate the history match error can be found in the History Match Error section. Term Weight
This option is only available for History Match Error Local Objective Functions. The Term Weight gives Objective Function Terms more or less emphasis in the Local Objective Function. The higher the Term Weight relative to the other terms’ Term Weight, the more emphasis the term will have on the Local Objective Function. Normally, higher term weight should be given to wells that are important (good production, long history, near future development wells) and difficult to match. Unit Value
This column is only available for Discounted Value Local Objective Functions. The unit value should be used primarily for adding a monetary value to a simulation result. Both positive and negative values can be entered. For example, in SAGD processes, unit value for oil rate should be positive and determined from oil price; unit value for injector water rate should be negative and determined from steam generation cost. Conversion Factor
This option is available for Discounted Value and Raw Simulation Value Local Objective Functions. The conversion factor is used to convert from one unit to another. For example, if the units in the dataset were bbl and units of Million bbl were desired, a value of 1E-6 would be entered for the conversion factor. (1 Million bbl/1,000,000 bbl) Removing an Objective Function Term
To delete an Objective Function Term, the whole row for that function must be selected. To do this, click on the grey cell to the left of the Objective Function Term’s name. The whole row will become highlighted and the Delete button will become enabled. Click on the Delete button or use the Delete key on the keyboard to delete the term. Multiple Objective Function Terms can be removed by clicking on the grey cell to the left of an Objective Function Term’s Name and dragging the mouse up or down. Shift and Ctrl functionality is also available. The Delete button or Delete key on the keyboard can then be used to delete the rows. Repeating an Objective Function Term
Objective Function Terms can quickly be repeated if very similar terms need to be created. Using the Repeat button, all Objective Function information will be copied except for the Objective Function Terms’ Name and the Objective Function Terms’ Origin Name.
CMOST Studi o: Gettin g Started
CMOST Tasks
37
To repeat an Objective Function Term, the entire row for that function must be selected. To do this, click on the grey cell to the left of the Objective Function Terms’ name. The whole row will become highlighted and the Repeat button will become enabled. NOTE: To be able to repeat an Objective Function Term, the Origin Type of the term cannot be set to PARAMETERS or NUMERICAL. Additional Origin Names must also be available.
Click on the Repeat button to bring up a dialog for selecting which Origin Names should be repeated. Shift and Ctrl functionality is available for selecting items in the list. Once all the Origin Names that should be repeated are selected click OK.
The same objective function term information for all of the selected items will be entered into the table. Any of the information for the repeated Objective Function Terms may be edited.
Experimental Design The Experimental Design page is where detailed information about which candidate values will be used for each run. This page is only available for Sensitivity Analysis and Uncertainty Assessment Tasks. This page should not be completed until the Parameters page has been completed.
38
CMOST Tasks
CMOST Studi o: Getting Started
Experimental Design Job Patterns Patterns used by CMOST are composed of a series of + and – symbols. The + symbol represents the High value for a parameter and the – represents the Low value for a parameter. For Uncertainty Assessment tasks, there is a third symbol: 0. The 0 represents the middle value for a parameter. The order of the pattern is the same order that parameters are listed on the Parameters page. Only Active parameters are used in the patterns. NOTE: If information is changed on the Parameters page, the Experimental Design page has to be updated.
By default, CMOST will keep the output files (*.irf, *.mrf, *.log, *.out, etc.) for all runs. This may consume large amounts of disk space. If this is an issue, it may be advisable to select which experimental design patterns CMOST should keep output files for. NOTE: If a pattern has already been simulated, the simulation results (IRF) file can be listed in the Existing IRF column. When CMOST reaches that pattern in the design, it will analyze the Existing IRF’s data instead of creating a new dataset and running the simulation again. If the cell is clicked, a button will appear that can be used to browse for the IRF file.
CMOST Studi o: Gettin g Started
CMOST Tasks
39
Verifi cation Jo b Patterns This table is only available for Uncertainty Assessment tasks. It is used by CMOST to test the accuracy of the Response Surfaces that it creates. Patterns are created the same as regular experimental design patterns.
Designs Designs can either be user defined or a design can be chosen from a predefined set. CMOST can produce predefined experimental designs with up to 20 parameters for a Sensitivity Analysis Task and up to 8 parameters for an Uncertainty Assessment Task. Click the ‘Pick a Design’ button to select a predefined design.
A list of design types will be given. See Appendix F: Experimental Design for more information on the designs. Once a design has been selected, click OK to add the design to the Task file. Predefined Experimental Design Job Patterns cannot be edited. However, Verification Job Patterns can be edited. User Custom Designs
If a User Custom Design is chosen, the user has the option to select a predefined pattern to work from.
40
CMOST Tasks
CMOST Studi o: Getting Started
If a blank design is desired, click No when asked if you wish to work with an existing design.
Design Details Various details about the design are listed to the right of the patterns. Number of Parameters
This text field lists the number of Active parameters. Number of Jobs
This text field lists the number of jobs that will be created using the experimental design. Verification jobs are not included for this number. Resolution
The resolution of a predefined design is listed here. Information is only listed for Sensitivity Analysis tasks. Design Type
The type of design that was chosen in the Pick a Design dialog is listed here. User Custom Design is the default. See Appendix F: Experimental Design for more information on the different design types. Error Messages
This box lists any errors that have been found in the experimental design. To update this display, click on the Check Error button located at the bottom of the display.
CMOST Studi o: Gettin g Started
CMOST Tasks
41
Influence Matrix The influence matrix gives CMOST optimizers information that will help speed up convergence of the optimization. For each of the Parameters and Local Objective Functions, a value from 0 to 1 is given to represent the effect each parameter will have on the objective function. The more likely a parameter is to affect the Local Objective Function, the higher the value should be. Engineering judgment and understanding of the reservoir model should be applied when modifying the influence matrix. For more information about the optimizers, see the Appendix C: Optimizers . NOTE: This page must be updated whenever Parameters page and/or Objective Functions page are modified.
By default, all values in the Influence Matrix are 1. This is acceptable for CMOST but it may take longer for a solution to be found. Values can be entered into the matrix by selecting a cell and entering a value, or one or more cells can be selected and have their values all changed by selecting a value from the Possibility of Influence radio buttons on the right side of the page.
42
CMOST Tasks
CMOST Studi o: Getting Started
Each value in the influence matrix indicates user’s estimation on the possibility of whether changing a parameter will affect the result of an objective function:
Definitely Yes = 1
Very Possible = 0.8
Possible = 0.6
Somewhat Possible = 0.4
Doubtfully Possible = 0.2
Definitely No = 0
For example, if a parameter is a global parameter and its adjustment will definitely affect all the objective functions, you may enter 1.0 for all the objective functions. If a parameter is a regional parameter and its adjustment will only affect certain objective functions, you may enter 1.0 for those that will definitely be affected by the parameter. For objective functions that will definitely not be affected by the parameter, 0.0 should be entered. For objective function that could (somewhat possible) be affected by the parameter, 0.4 could be used. The following influence matrix shows an example which has 8 objective functions, 6 global parameters, and 16 regional parameters.
CMOST Studi o: Gettin g Started
CMOST Tasks
43
The first column in the table shows the names of parameters. The remaining columns are parameter-objective function possibility of influence. The example shown is for a history matching problem with 8 objective functions, which are defined for 8 production wells respectively. Objective function ‘W4_HM_Error’ is defined for Well #4, which is the only well that has bottom-hole pressure measurement. The adjustable parameters include 6 global parameters and 16 regional parameters.
The first parameter initial reservoir pressure ‘INIP’ is a global parameter, and its adjustment will most likely affect all of the 8 objective functions. Therefore, the value of 0.8 (Very Possible) is given for all objective functions except for the objective function ‘ME04’, which is given the value of 1.0 because well bottomhole pressure match will definitely be affected by INIP.
The seventh parameter ‘BKROCW_1’ is a regional parameter, and its adjustment will definitely affect objective function ‘W1_HM_Error’. Therefore, the value of 1.0 is given for ‘W1_HM_Error’. Moreover, Well #1 is adjacent to well #2. Adjustment on the former may affect the latter. Therefore, 0.4 (Somewhat Possible) is given for ‘W2_HM_Error’. For all the other objective functions, 0.0 is used.
CMOST does not require accurate values for the table. However, the table will greatly affect the convergence behavior of CMG DECE optimization if there are many adjustable parameters and objective functions. Therefore, the user should make sure the influence matrix is properly set up. The basic requirement is that global and regional parameters should be differentiated.
Editing t he Influence Matrix Values for the influence matrix can be entered by selecting one or more cells and selecting the corresponding Possibility of Influence located at the right side of the grid. Entire rows or columns can be copied or pasted by clicking on the row or column title to select the whole row or column then typing ctrl+c (copy) or ctrl+v (paste). If copying and pasting between influence matrices in different task files, the number of entries in each row or column must match. The ordering of the influence matrix can be changed by clicking on the row or column title to select the entire row or column then clicking on one of the arrow buttons located at the edge of the grid to move the selection.
Result Observers Result Observers are simulation outputs that CMOST will cache in its results file. Specific data that should be tracked should be defined in the Result Observers Table. There are two types of Result Observers that can be added to a task file:
44
CMOST Tasks
CMOST Studi o: Getting Started
Time Series Simulation Result Observers
Fixed Date Simulation Result Observers
Times Series Simulation Results Observers collect data for all times during the simulation runs. Fixed Date Simulation Result Observers only collect data at one point for each simulation. Fixed Date Simulation Result Observers are only available for History Matching or Optimization Tasks.
Addi ng a New Result Observer A new Result Observer can be added by adding information to the bottom row of a Result Observers Table. The Insert button can also be used to add a new entry. Name
The name of the Result Observer should be entered into the Name column. Two Result Observers of the same type cannot have the same name. However, a Time Series Simulation Result Observer can have the same name as a Fixed Date Simulation Result Observer. See Appendix B: Names in CMOST for more information about using names in CMOST. CMOST Studi o: Gettin g Started
CMOST Tasks
45
Origin Type
The Origin Type is the type of data that will be retrieved for the Result Observer. This data can come from the following types:
Wells
Groups
Specials
Sectors
Layers
Leases
Parameters
Numerical (not supported yet)
All Origin Types come from the simulation results file except for Parameters which retrieves parameter information from the task file. Origin Name
The Origin Name is a specific item of the Origin Type. If there are no items available for Origin Type, the Origin Name list will be empty. If this is the case, that Origin Type should not be used. For example, if the Origin Type is WELLS, the Origin Name would contain a list of all the wells that are present in the dataset. Property
The Property is a specific item for the Origin Name. No information needs to be entered into this column if the Origin Type is SPECIALS or PARAMETERS. Information is required for all other types. For example, if the Origin Type is WELLS, the Property cell would have a list of well properties such as Cumulative Oil SC or Gas Rate SC. Number of Points
This option is only available for Times Series Result Observers. Number of Points tells CMOST how many data points should be cached in the CMOST Results File. The points will be spread evenly throughout the entire date range of the simulations. If more detailed results are desired, more points can be chosen. NOTE: Graphs will take longer to load if many points are displayed.
46
CMOST Tasks
CMOST Studi o: Getting Started
If only a rough estimate is required, fewer points can be chosen. CMOST can cache fewer points than are in the simulation output file. This can be useful if disk space is a consideration. NOTE: Values entered here will have no effect on the number of points in the simulation output files.
Multiple cells can be changed at once by selecting the ‘Number of Points’ cells that should be changed then entering a new value into the last cell that was selected. Field History File
This option is only available for Time Series Simulation Result Observers. If there is production history data available for a specific Result Observer, the field history file can be added. This is usually only necessary for History Matching and Sensitivity Analysis tasks. This data will be plotted with the rest of the simulation results curves. The button on the right side of the cell can be clicked to browse for the field history file. For more information about this file, see the Field History File section. Simulatio n Date Time
This option is only available for Fixed Date Simulation Result Observers. This is the date that CMOST will find data for. It can be any date between the simulation start date and the simulation stop time. The default date is the simulation stop date. NOTE: You must make sure that the required data at the specified Simulation Date Time are available in SR2 files. Improper use of WSRF keyword in Master Dataset may cause simulator to skip writing data to SR2 output files.
Conversion Factor
This option is only available for Fixed Date Simulation Result Observers. The conversion factor should be used to convert from one unit to another. For example, if the units in the dataset were bbl and units of Million bbl were desired, a value of 1E-6 would be entered for the conversion factor. (1 Million bbl/1,000,000 bbl) Units
This option is only available for Fixed Date Simulation Result Observers. The units that should be displayed on the plots for the CMOST Results file should be entered here. This item is optional and will not change the values displayed on the plot.
Importin g Result Observers Associated with the Time Series Simulation Result Observers table is a button entitled ‘Import’. The purpose of the Import feature is speed up the process for creating Time Series Simulation Result Observers. If this button is pressed, a dialog will appear that contains a list of available objective functions with the associated terms. For example, if the Objective Functions page showed the following: CMOST Studi o: Gettin g Started
CMOST Tasks
47
Then the Results Observers section would provide the following options when pressing the Import button:
48
CMOST Tasks
CMOST Studi o: Getting Started
Shift and Ctrl functionality is available for selecting items in the list. Once all the desired Time Series Simulation Result Observers have been selected, click OK. The selected items will then be populated in the table. The Origin Type, Origin Name and Property from the original Objective Function Term will be included in the Time Series Simulation Result Observers table after the import. The items in the table can then be manually edited as necessary.
Removing a Result Observer To delete a Result Observer, the whole row for that function must be selected. To do this, click on the grey cell to the left of the Result Observer’s name. The whole row will become highlighted and the Delete button will become enabled. Click on the Delete button or use the Delete key on the keyboard to delete the term. Multiple Result Observers can be removed by clicking on the grey cell to the left of a Result Observer’s Name and dragging the mouse up or down. Shift and Ctrl functionality is also available. The Delete button or Delete key on the keyboard can then be used to delete the rows.
Constraints The ability to add Constraints is available when working with History Matching or Optimization tasks in CMOST. The purpose of the constraints is to prevent unnecessary simulation runs and allow the user to change local objective function values if constraints are violated.
CMOST Studi o: Gettin g Started
CMOST Tasks
49
Hard Const raints Hard Constraints can be particularly useful when a lot of simulations are set up to be run. If a Hard Constraint is violated, then the simulation run will not take place as these constraints are checked by the CMOST engine before performing a run. For example, if a CMOST Optimization task is set up to work with a SAGD case, it may be known beforehand that the production wells involved should not be less than a certain distance apart from each other. In the figure shown above, the following hard constraint can be seen: W1_I – W2_I > 40 For this particular task, W1_I and W2_I refer to the block address of wells ‘W1’ and ‘W2’ in the ‘I’ direction, respectively. The constraint formula shown indicates that there should always be more than 40 grid blocks between W1 and W2 in the I direction. If the condition ‘W1_I – W2_I <= 40’ is encountered, the simulation should not be run. Both ‘W1_I’ and ‘W2_I’ were specified as parameters to be modified by CMOST in the Master dataset. To specify a hard constraint, press the ellipsis button that is next to an empty row in the table. This will bring up the CMOST Formula Editor. Formulas can be entered using the list of available parameters that have been defined previously. An alternate method of entering the formula is to click with the mouse in the white space of an empty row and manually type in the formula. Rows in the table can be either inserted or deleted by clicking in the grey area that is to the left of the white space (which will cause an arrow to appear), and pressing either the ‘Insert’ or ‘Delete’ button.
Soft Constraints Soft constraints allow the user to override local objective function values if they violate any parameter (or fixed date result observer) based constraints that have been set. Checking for this violation is performed while the simulations are being run. For example, if there is a fixed date results observer set for the cumulative steam oil ratio of well W1 (‘CSOR_W1’), a formula can be entered using CSOR_W1 for the soft constraint. If CSOR_W1 should normally be less than a value of 5, then the soft constraint specified would be ‘CSOR_W1 < 5’. If the soft constraint is violated for a simulation while it’s running (i.e. CSOR_W1 >= 5), a penalty can be applied to a local objective function. To specify a soft constraint, press the ellipsis button that is next to an empty row in the table. This will bring up the CMOST Formula Editor. Formulas can be entered using any of the available variables shown in the editor. The list will include previously defined parameters as well as fixed date results observers. An alternate method of entering the formula is to click with the mouse in the white space of an empty row and manually type in the formula. Rows in the table can be either inserted or deleted by clicking in the grey area that is to the left of the white space (which will cause an arrow to appear), and pressing either the ‘Insert’ or ‘Delete’ button.
50
CMOST Tasks
CMOST Studi o: Getting Started
Defining Penalties
The other part of specifying a soft constraint is to define the associated penalty if that constraint is violated. In the Penalties table, a list of the local objective functions that have been defined previously in the CMOST task file will be available. For each of the soft constraints defined in the other table, one or more penalties should be defined. For example, say a local objective function is defined for calculating the Net Present Value from well ‘W1’ (called ‘NPV_W1’), then a penalty can be defined for it if our soft constraint ‘CSOR_W1 < 5’ is violated. The penalty can be defined using the CMOST Formula Editor. An example of a penalty for this objective function may be something like the following: IF(NPV_W1>=0, NPV_W1/SQRT(CSOR_W1 - 4), NPV_W1*SQRT(CSOR_W1 - 4)) This formula indicates that if the local objective function NPV_W1 is greater than or equal to 0, the value for NPV_W1 should be set to:
NPV _ W 1
(CSOR _ W 1 4)
If not, it should be set to:
NPV _ W 1 * (CSOR _ W 1 4) The violation of the soft constraint will occur if CSOR_W1 is greater than or equal to 5. If a value of 6 is encountered and the NPV_W1 value is >= 0, then the NPV_W1 will be changed to ‘=NPV_W1 / ( √ (6-4))’. Any constraint violations that occur will be mentioned in the messages displayed by the CMOST Engine when the task is running.
Restart Config urations Restart Configurations can be used to take advantage of previous simulation results. This section can also be used to restart from a previous CMOST task run.
CMOST Studi o: Gettin g Started
CMOST Tasks
51
Simulation Aut o Restart Simulator auto restart can be used if CMOST parameters are scattered in the well and recurrent section of the Master Dataset. ( This feature is not available in the current version.)
CMOST Result Files Reuse This feature is useful when you want to run the same task file multiple times by changing optimization methods. For example,
52
Results of the first run using Particle Swarm Optimizer are in MyTask_PSO.cmr
Results of the second run using Random Search are in MyTask_Random.cmr
Now you want to do the third run using CMD DECE Optimizer.
CMOST Tasks
CMOST Studi o: Getting Started
If MyTask_PSO.cmr and MyTask_Random.cmr is entered into the CMOST Result File Reuse table, these two files will be loaded by CMOST when the task is started. When DECE Optimizer creates a new job, CMOST Engine will try to find whether there exists a job in the two reuse cmr files that have the same parameter value combination. If there is such a job, CMOST will retrieve objective function values directly without the need to run the job again. Therefore, considerable amount of simulation time could be saved.
CMOST Restart Configuration A CMOST Task can be restarted from a previously run if certain information in the task files is the same. This can be useful if a task is stopped or fails, and the user wishes to continue the task from where it was stopped. NOTE: This option cannot be used with the Particle Swarm Optimizer for Optimization and History Matching tasks.
Checkboxes
The ‘Restart from previous CMOST runs’ checkbox should be checked to enable the CMOST Restart Option. If the ‘Reprocess SR2 Files’ checkbox is checked, CMOST will recalculate objective functions and results observers using SR2 files. This allows objective functions and results observers to be changed for the restart run. Otherwise, CMOST will read objective function and observer values from the CMR file and it is not possible to change objective functions and result observers for the restart run. CMOST Result File to Restart From
The CMOST Result (*.CMR) file that is to be restarted from, should be entered here. The ellipsis button
can be used to browse for the file.
Total Number of Jobs in Result File
Once a CMOST Result file has been entered, CMOST will read the file and display how many jobs are available to use in the CMOST Result file. Restart Option
There are two options for restarting from a CMOST Results file:
Continue From Selected Job
Re-Run Selected Jobs
For History Matching and Optimization tasks, the ‘Continue From Selected Job’ option should be used. For Sensitivity Analysis and Uncertainty Assessment, either of the options can be used.
CMOST Studi o: Gettin g Started
CMOST Tasks
53
If the ‘Continue From Selected Job’ is chosen, CMOST will use the simulation results from the specified CMR file up to the job number specified in Restart Job Number. If Re-Run Selected Jobs is chosen, Re-Run Jobs Table will appear to allow you to pick specific jobs you want to re-run. For unpicked jobs, CMOST will use simulation results from the specified CMR file. Restart Job Number
This option is only available if Continue from Selected Job is selected for the Restart Option. The number determines which job number that CMOST will restart from. That is, CMOST will use the results from the CMOST Results file up to the job number specified then continue running after that point. Re-Run Jobs Table
The Re-Run Jobs Table is only available if Re-Run Selected Jobs is selected for the Restart Option. This table gives information about the jobs that were run in the CMOST Results file and allows the user to select which jobs should be rerun. Typically, this is used after running a Sensitivity Analysis or Uncertainty Assessment task and some simulation jobs are crashed (abnormal termination). These crashed jobs require some numerical tuning in the CMM file and need to be re-run again.
54
CMOST Tasks
CMOST Studi o: Getting Started
Run Configurations This section is used to set up how CMOST Engine and the simulators will run. Job Schedulers will also be set up on this computer.
Scheduler Scheduler Configuration A list of schedulers will automatically be taken from Launcher. If there are no schedulers listed in Launcher, only the Local scheduler will be shown. If a scheduler needs to be added or changed, this must be done through Launcher. See the Launcher Manual for more information on Job Schedulers. Host Name
Host Name is the computer name (‘Local’ for the local computer) in which CMG CMOST Host Service is running. The default host name is ‘Local’. After a task is started, it is running in the background by CMG CMOST Host Service. This means that you can close CMOST Studio while the task is running. When you open the corresponding CMR file later in CMOST Studio, the connection between CMOST Studio and CMOST Host will be established again. If you wish to run the CMOST Host on a remote computer, the computer’s name must be typed in the Host Name box. Remote host names will be stored for later use and can be found by using the drop down box. CMOST CMOST Studi o: Gettin g Started
CMOST CMOST Tasks
55
Scheduler Configuration Table Table
The Scheduler Configuration Table allows the user to adjust settings for each scheduler separately. It also lists some basic information about the schedulers. Active
The active checkbox determines whether or not CMOST will use a specific scheduler. If the Active checkbox is checked, CMOST will use the scheduler. Otherwise, the scheduler will not be used. NOTE: If schedulers other than Local are used, all Base Files and the Task file must be located in a UNC directory.
Scheduler Name
The names of the schedulers are listed in the Scheduler Name Column. ‘Local’ is the computer that is currently being used to create the task. This information cannot be edited in CMOST Studio. If this information needs to be changed, it should be done through Launcher. Scheduler Type
The scheduler type is one of the following four types:
Local (local computer running CMG Job Service)
CMG Drone Scheduler (a remote computer running CMG Job Service)
Mscc Scheduler (Microsoft Windows Compute Cluster)
Lsf Scheduler (Platform Computing LSF)
Max Pending Jobs
Different numbers of jobs can be run on different schedulers. Max Pending Jobs can be edited so that CMOST will send a certain amount of jobs to each scheduler. The Default value is 1. When changing this value, you should consider:
Number of processors of the scheduler: N
Number of required processors for each job: nj
Is the scheduler shared by other users?
The Max Pending Jobs should NOT be greater than N/nj. If a scheduler is shared by other users, you should limit Max Pending Jobs to prevent using all processors by yourself. NOTE: Jobs Jobs that are running running as well as jobs jobs that are queued queued are both considered considered pending jobs.
56
CMOST CMOST Tasks
CMOST CMOST Studi o: Getting Started
NOTE: If the CMG DECE Optimizer is used for a History Matching or Optimization Task, it is suggested that the total number of Max Pending Jobs for all schedulers be less than 8 to improve performance. This is because because if too many pending jobs jobs are set, schedulers schedulers will be filled and there could be unnecessary runs queued.
If this value is set to 0, no jobs will be run on that scheduler. However, it is recommended that the Active checkbox is unchecked if jobs shouldn’t be run on a specific scheduler. Max Failed Jobs
Schedulers can be set to stop sending jobs to a scheduler if a certain amount of jobs have failed. Failed jobs are jobs that couldn’t be started due to hardware or software problem such as network cable is unplugged, computer is shut down, CMG Job Service is not running, no simulator is installed, or no license is available. Jobs that are terminated by simulator abnormally due to numerical problems are NOT failed jobs. CMOST will stop sending jobs if the hardware/software problem problem persist persistss for for a sched scheduler uler.. The The defaul defaultt maxim maximum um number number of fail failed ed jobs jobs is 5. 5. Work Plan
CMOST can be set to send jobs to different schedulers at different times. There are three options available for work plans:
All Time
Evenings and Weekends
Weekends
If the Work Plan is set to All Time, there will not be any limits on when jobs can be scheduled. This is the Default. If the Work Plan is set to Evenings and Weekends, jobs will be scheduled 8PM to 6AM Monday through Friday and all hours on Saturday and Sunday. This option is useful if a computer is normally used during the day during the work week but is left idle during the evenings and weekends. If the Work Plan is set to Weekends, jobs will only be scheduled from 12:00AM Saturday to 12:00PM Sunday. This option is useful if a computer is used during the workweek but left idle during the weekends. NOTE: Jobs that take take a while to run may run outside outside of the range set in the Work Work Plan. The Work Plan Plan only guarantees that jobs will not be sent to a scheduler outside of the times set. If necessary, it is OK to kill jobs in Launcher. Once a job is killed, CMOST will be notified and proper action will be taken. For Sensitivity Analysis and Uncertainty Assessment, a new job with the same parameter values will be scheduled. For History Matching and Optimization, Optimization, the killed job will be ignored and a new job may be scheduled depending on the progress of the optimization process.
CMOST CMOST Studi o: Gettin g Started
CMOST CMOST Tasks
57
Job Priority
Different priority can be set for different schedulers. If there are multiple jobs queued for a scheduler, the jobs with higher priority will be run first. The default value for Job Priority is Low. Scheduler Switches
If a scheduler switch is required, it should be entered into the Scheduler Switches column. See the Launcher Manual for more information on scheduler switches. Head Node
The Head Node column lists which computer the scheduler runs from. There is no Head Node listed for the Local scheduler. This information cannot be edited in CMOST Studio. If this information needs to be changed, it should be done through Launcher. Refreshing Refreshing Schedulers
If a new scheduler has been added or removed via Launcher, the Scheduler Configuration Table can be updated to reflect these changes. Schedulers may also need to be updated if a task file is sent from one computer to another and schedulers are different on the two machines. The Refresh Schedulers button can be clicked to update the table. If new schedulers have been added, they will be added to the table with default values. NOTE: The Refresh Refresh Schedulers button button will work only if CMG CMOST CMOST Host Service Service is running on the Host computer (default is the local computer). Otherwise, an error message dialog will appear. To start the service, Click on the Tools Host Admin menu item. Then click on the Start Service button to start the CMOST Host Service.
Simulator Configuration This section specifies which simulator version to use and options on how jobs will be run. Writing Files to Temporary Folder
Simulation results files can be saved to a temporary location (C:\Documents and Settings\All Users\Application Data\cmg) on the execution computer when running the simulation. After the simulation is complete, the output files will be copied back to the jobs folder under the Engine Output Path location. To do this, check the Write Output Files to a Temporary Folder checkbox. NOTE: This feature is not available available for local or Microsoft Computer Cluster (MSCC) (MSCC) schedulers. This option is only available for CMG and LSF schedulers.
58
CMOST CMOST Tasks
CMOST CMOST Studi o: Getting Started
Simulator
The simulator that CMOST should use is specified in the Simulator box. If there is more than one simulator version installed on the local computer, more than one version will be listed. It is recommended that the same simulator version is installed on all compute nodes of all schedulers. Method to Find Executable
The method to find executable defines which simulator will be used on remote computers. By default CMOST will attempt to use the simulator version defined in the Simulator field. If this version does not exist on the remote computer, CMOST will use a method to find an alternative simulator version. There are three options available:
Find Best Version
Find Latest Version
Find Exact Version
The option ‘Find Best Version’ will try to locate the closest match to the simulator defined. The ‘Find Latest Version’ option will try to find the newest version located on the remote computer. If ‘Find Exact Version’ is used, only the simulator defined will be used; no jobs will be sent to the scheduler if that version does not exist. Number of Processors to Use
The number of processors to use for each job can be specified. NOTE: This value should not be greater than the number of processors for the scheduler with the lowest number of processors.
Additional Simulator Switches
If simulation switches are required, they can be entered into the Additional Simulator Switches text box. More information on simulator switches can be found in the Simulator Manuals.
CMOST Engine Configuration CMOST Engine is the component that runs CMOST tasks in the background. When it is running, it performs the following tasks:
Creates all output files
Calls the Optimizer to create simulation jobs
CMOST Studi o: Gettin g Started
CMOST Tasks
59
Creates simulation data sets
Submits simulation jobs to schedulers
Checks simulation job status
Processes simulation output files
Updates CMOST result file
Some configurable options for the CMOST Engine are listed as follows. Engine Refresh Interval
This value can be changed to set how long CMOST Engine waits before checking whether status of simulation jobs is changed. If it has changed, proper action will be taken by the Engine such as processing simulation results, and submitting new jobs. The default interval time is 15 seconds. For fast running simulation jobs, this interval can be decreased. For slow running simulation jobs, this interval can be increased. Max Number of SR2 Files to Keep
The number of simulation results (SR2) files that CMOST will keep is listed here. It is only editable for History Matching and Optimization tasks. For Sensitivity Analysis and Uncertainty Assessment tasks, this value is equal to the number of SR2 files that are checked on the Experimental Design page. For History Matching and Optimization tasks, CMOST will keep the best runs that are produced. For History Matching and Optimization Minimum tasks, these are the runs with the lowest values for the Global Objective Function. If the Task is an Optimization Maximum, the runs with the highest values will be kept. The task type that was chosen can be checked on the General Properties page. Optimization Switches
Optimization Switches are only used when the Particle Swarm Optimizer is used. If Optimization Switches are required, they can be entered by clicking on the Optimizer Switches button. This will bring up a dialog to set the Particle Swarm Optimization Switches.
60
CMOST Tasks
CMOST Studi o: Getting Started
If any of the values are changed from their default, they will be shown in bold. More information on Optimizer Switches can be found in the Particle Swarm Optimization Switches section. Maximum Number of Simulator Calls
The amount of jobs that CMOST will create can be set. For Sensitivity Analysis or Uncertainty Assessment, this value should not be set to a value less than the Number of Jobs listed on the Experimental Design page. CMOST will automatically stop running after all jobs in the Experimental Design have completed. For a History Match or Optimization, the engine will stop if the CMG DECE Optimizer detects that further improvement of the solution is not possible or the maximum number of simulator calls is reached. If the task stops because the maximum number of simulator calls is reached, the task can be continued by using the CMOST Restart Configuration. Optimization Method
The Optimization Method must be entered for every task type. If the task type is a Sensitivity Analysis or Uncertainty Assessment, the Optimization Method will be Experimental Design Dispatcher. For History Matching or Optimization task, there are four options to choose from:
CMG DECE Optimization (default and recommended)
CMOST Studi o: Gettin g Started
CMOST Tasks
61
Particle Swarm Optimization
Brute Force Search
Random Search
See Appendix C: Optimizers for detailed information on these optimization methods.
Job Removal from Launcher Job Li st View Jobs can be removed automatically from the Job List View in Launcher by checking the ‘Remove finished jobs from Job Service and Launcher’ checkbox. Otherwise, jobs will remain in the Job List View until they have been deleted by the user. If jobs are deleted in Launcher before CMOST has completed analysis of the simulation results file, jobs will be reported as lost. It is recommended that either this option is used or the user should wait until the results of a job appear in CMOST Studio before deleting the job from Launcher.
Starting a Task It is recommended to validate the task file first before running a task. To do this, go to Tools Validate Task File. If there are no errors, click on the Start Task button to run the task. If errors or warnings are still present, a message will appear informing the user to check the General Properties page. A task cannot be started if there are errors present. If there are warnings present, there is a choice to continue or not. The following dialog will appear if no errors exist or the user chooses to continue with warnings:
62
CMOST Tasks
CMOST Studi o: Getting Started
Task File (CMT)
This text box displays the full path of the Task File that will be run. This information cannot be edited. Host Name
The Host Name that was defined in Run Configurations is listed. If it needs to be changed, it can be changed here. See Host Name for more details. The status of the connection to the host is also shown. If the status is “Connected”, communication between CMOST Studio and CMOST Host is established and it is ready to submit the task to CMOST Host. If the status is “Cannot find host”, CMOST Studio is not able to communicate with CMOST Host. Normally, this is because CMG CMOST Host Service is stopped. To start the service, click cancel to exit the dialog. Then select the Tools Host Admin menu item. Then click the Start Service button. For more information about the Host Manager, see the CMOST Host Manager section. Run Tag
A run tag can be entered if the task is going to be run more than once. This tag will be appended onto the end of the results file name and to the end of all datasets created by CMOST. For example, if the task file is named TaskFile.cmt and a run tag FirstRun is entered, the CMOST Results file name that is created will be TaskFile_FirstRun.cmr . The datasets that are created will have a name similar to TaskFile_FirstRun_00001.dat. NOTE: Text is not required for this field. An empty Run Tag is considered to be a unique Run Tag.
Engine Output Path
The Engine Output Path is the location where all the results files will be saved (all simulation job files will be saved in the jobs subfolder). The default location is the Task File Folder . If the Engine Output Path should be changed, the ellipsis button can be used to browse for a new location. If the Engine Output Path is different from the Task File Folder, all required base files will be automatically copied to the Engine Output Path. NOTE: If remote schedulers are being used, this path must be a UNC directory.
Scheduler Configuration Table
The Scheduler Configuration Table is the same as the table shown on the Run Configuration page. This is provided to check for anything that needs to be changed before starting the task. This table has been refreshed and has the most current schedulers listed. See Scheduler Configuration Table for more information about this table. After all the information shown on the Submit a CMOST Run dialog is checked, the run can be started by clicking the OK button.
CMOST Studi o: Gettin g Started
CMOST Tasks
63
CMOST Results
Once the task has started to run, CMOST will automatically load the CMOST Results file. As the run progresses, results will be updated periodically.
Run Status Monitor The first page that will appear after a run has started is the Run Status Monitor page. Information about how the task is running is displayed on this page.
CMOST Studi o: Getting Started
CMOST Results
65
CMOST CMOST Engin e Details about the engine are listed. This information cannot be edited. The engine can also be controlled from this point. Engine Status
The current status of the Engine is shown in the Engine Status box. This status will be either Running, Paused, or Stopped. Current Activity
The current activity of the engine is shown in the Current Activity box. The activities that may be shown are Idle, Busy, or No Load. Engine Host
The Engine Host that is used for the run is listed here. For more information about Engine Hosts, see Host Name. Run Tag
The Run Tag that was defined with starting the run is listed here. Controlling the Engine
The engine control buttons can be used to manage the Engine. The engine can be stopped or paused by pressing the Stop or Pause buttons respectively. If the engine is paused, it will finish running any pending jobs in the job scheduler but no new jobs will be sent. To resume the engine, click on the Play button. If the engine is stopped, no new jobs will be sent to the job scheduler and the user will be prompted as to whether all running jobs should be killed. The engine cannot be resumed if it has been stopped. The Refresh button can be used to reload the CMOST Results file. This will update the studio and any changes will be displayed. This will be done automatically by the CMOST Studio and does not need to be used unless Stop Auto Refresh Result has been selected. NOTE: These buttons buttons are equivalent to the engine control menu menu items in the Operation Menu and the toolbar.
66
CMOST CMOST Results
CMOST CMOST Studi o: Getting Started
Run Display A quick display of the progress of the run is displayed on the Run Status Monitor page. This display differs depending on what task type is chosen. Experimental Design Job Status Matrix
In the Experimental Design Job Status Matrix, the progress of the Task’s run can be seen. This is shown for Sensitivity Analysis and Uncertainty Assessment tasks. Each different cell represents a different experimental design pattern. If a cell is white, the job has not been sent to the job scheduler. If a cell is light green, the job is either running or waiting in the job scheduler. If a cell is dark green, the job has completed normally. If the cell is red, the job has failed or is terminated by simulator abnormally. For CMOST to complete any post processing after all simulations have completed, there must not be any abnormally terminated simulations. CMOST will rerun jobs that have failed due to a scheduler problem but will not rerun jobs if a job crashes due to numerical problem in the simulation. Run Progress Plot
In the Run Progress Plot, the progress of the task’s runs can be seen. This plot is shown for History Matching and Optimization tasks. Each point on the plot represents the value of the global objective function. The best runs are colored in dark green (or red) while the rest of the runs are colored blue. The number of runs shown in dark green is determined by the Max Number of SR2 Files to Keep set on the Run Configurations page. This plot is repeated on the Run Progress page.
Messages Tab The messages tab in the bottom part of the Run Status Monitor page gives messages about what the engine is doing. It will display what time jobs start and finish and which scheduler they have been sent to. If there are any errors or warnings, they will be displayed here.
CMOST CMOST Studi o: Getting Started
CMOST CMOST Results
67
Schedulers Tab
From the Schedulers tab, each of the schedulers can be controlled. This is very similar to the Scheduler Configuration Table on the Run Configurations page. There are three additional columns here. NPending, NFinished, and NFailed display the number of pending, finished and failed runs respectively. Apply
If any changes are made to the schedulers, the apply button needs to be clicked to update the engine. Changes will not be sent to the engine if the Apply button is not used. Refresh
To update these three columns, click on the refresh button located to the right of the grid. The Load All button will act in the same way as the Refresh Schedulers button on the Run Configurations page. See Refreshing Schedulers for more information.
68
CMOST CMOST Results
CMOST CMOST Studi o: Getting Started
Load All
If a new scheduler has been added via Launcher after a task is started, the Load All button can be clicked to update the table to include the newly added schedulers. If new schedulers are added, they will be added to the table with default values. To let the engine use new schedulers, check the Active cell and click the Apply button.
Job Summary The Job Summary page gives details of the results of each run. This page can also be used to load each job’s dataset or simulations results file in other CMG software (Builder, Results Graph and Results 3D).
Job Summary Table Detailed information about each run is listed in the table. Information can be copied from the table by selecting the cells that need to be copied and typing Ctrl+c on the keyboard. Items in this table can be sorted by clicking the top title row.
CMOST Studi o: Getting Started
CMOST Results
69
Job Number
The CMOST Job ID Number is listed in the Job # column. This column is frozen and will not move when the horizontal scroll bar is used. Has SR2
If a run has simulation results (SR2) files, the checkbox in this column will be checked. These checkboxes are read-only and cannot be edited. User Highlight
Specific runs can be highlighted in CMOST plots. If a job is check as User Highlighted, that job will show as purple in all plots by default. Pattern
If the task is a Sensitivity Analysis or Uncertainty Assessment, the pattern that was used for the job is shown. Objective Functions
The calculated value for each Objective Function is listed in the Job Summary Table. A column with each Objective Function’s name is listed. Parameters
The specific candidate value that was entered for each parameter is listed in the Job Summary Table. If the Parameter had its Source specified as Formula, the formula that was used is listed. All Parameters are listed whether or not they are Active. Fixed Date Observers
If Fixed Date Simulation Result Observers have been entered in the Result Observers section, their values will be shown in this table. Status
The Status column gives the current status of the run. There are several possible statuses that each run could be:
70
Created
Failed (Failed due to hardware/software problem)
Running
Normal Termination
Abnormal Termination (Terminated by simulator due to numerical problem)
CMOST Results
CMOST Studi o: Getting Started
Dataset
The name of the dataset that was simulated is listed here. Scheduler
The name of the scheduler that was used is listed here. Computer
The computer that the scheduler’s head node is on is listed here. Launcher ID
The Launcher ID number for the job is listed here. This is different from the Job ID Number. Source
The source that the job information came from is listed here. Jobs may come from the following sources:
Simulator
Restart CMR File
Reuse CMR File
Existing SR2
If a session file was created for the CMOST task, it will be used when the results file is loaded in Results Graph. The run selected will automatically be substituted in the session file when it is opened.
Table Configur ation
Columns can be adjusted so that only the columns that are needed are shown. To do this, Click on the notebook button above the table. The following dialog will appear:
CMOST Studi o: Getting Started
CMOST Results
71
Field Category
To switch between the different sections of the Job Summary Table for adjusting, select the section in the Field Category box. Table Display
Each of the different columns in each section chosen from the Field Category is listed in the table. Columns can be shown or removed from the Job Summary table by checking or unchecking the checkbox in the Show column. All of the checkboxes can be checked or unchecked at once by clicking on the Select All or Unselect All buttons. To apply any changes that have been made and exit the dialog, click OK.
Loading Jo bs wi th ot her CMG Softw are If a job has a dataset and simulation results (SR2) files, it can be loaded in other CMG Software. This can be seen in the Has SR2 column in the Job Summary table. To load the file, click on any cell in the row of the job that is to be shown. If it has the appropriate files, the Load buttons located above the table will become enabled. The files can be loaded in Builder, Results Graph, or Results 3D. If a Base Session File was entered for the CMOST Task, it will be used when the SR2 file is loaded in Results Graph. The job selected will automatically be substituted in the session file when it is opened. NOTE: The newest version of the software will be used to open the files
72
CMOST Results
CMOST Studi o: Getting Started
Viewing Log Files
Log Files can be viewed by clicking on the White Page button. This will open the file in a text editor. If no text editor is set to open .log files by default, a dialog will appear asking the user to select a program to view the file with.
Parameter Status If the CMG DECE Optimizer is used, the Parameter Status page will fill out as the run progresses. This page is only available for History Matching and Optimization Tasks.
CMOST Studi o: Getting Started
CMOST Results
73
Cells that are colored in red have been determined not to be suitable solutions for the optimization. These values will no longer be included for substitution into the datasets by CMOST. The optimizer will stop looking for solutions when it detects that further improvement on solutions is not possible. See CMG DECE Optimizer for more information on the optimizer.
Run Progress Run Progress plots show the results of each job’s objective functions. This page is only available for History Matching and Optimization Tasks. As more and more simulations are complete, more points will be shown on the plot.
Graph By default, the best runs are shown as red points while the rest of the runs will be shown as blue points.
74
CMOST Results
CMOST Studi o: Getting Started
There is one plot produced for the global objective function as well as plots produced for each local objective function. Each plot can be viewed by selecting a specific Run Progress plot in the tree view. Alternatively, different graphs can be viewed by using the arrow buttons located above the graph.
Job Details If a point on the graph is double clicked, a Job Details dialog will appear. This dialog gives the user basic information about the job that was selected.
Table The results that were found in the graph can be shown in a table as well. To do this click on the Table radio button in the Operations section above the Run Progress display.
CMOST Studi o: Getting Started
CMOST Results
75
Data can be copied from the table by selecting cells then typing Ctrl+c on the keyboard or using the ‘Copy to Clipboard’ option in the Tools menu.
Viewing Multiple Plots Multiple plots can be shown at once by changing the values for Plots on Horizontal and Plots on Vertical. This can be used for viewing multiple graphs or tables.
76
CMOST Results
CMOST Studi o: Getting Started
Results Observers The Results Observers page displays graphs that were specified when creating the task. Each graph can be viewed by selecting a specific Results Observer in the tree view. Alternatively, different graphs can be viewed by using the arrow buttons located above the graph. As the run progresses more and more curves or points will appear on the plots. Jobs that have failed or terminated abnormally will not appear on the plots.
CMOST Studi o: Getting Started
CMOST Results
77
Time Series Results Observers
The best runs on the Time Series Results Observers plots are colored in red while the rest of the runs are colored in light blue by default. If there is a field history file specified for the Result Observer, this will appear as points that are colored dark blue. For a History Match or an Optimization Minimum task, the best runs are the runs with the lowest global objective functions. For an Optimization Maximum task, the best runs are the runs with the highest global objective functions. For a Sensitivity Analysis or Uncertainty Assessment task, the runs that have SR2 files are colored red and the rest of the runs are colored light blue by default.
78
CMOST Results
CMOST Studi o: Getting Started
Fixed Date Results Observers Graph
On the Fixed Date Results Observers, the best runs are colored in red and the rest of the runs are colored in blue by default.
Table
Results of the Fixed Date Results Observers can be viewed in a table as well. Click on the Table radio button located above the plot to switch to the table display.
CMOST Studi o: Getting Started
CMOST Results
79
Job Details If a point or curve on one of the Result Observer graphs is double clicked, a Job Details dialog will appear. This dialog contains basic information about the job that was selected.
80
CMOST Results
CMOST Studi o: Getting Started
Viewing Multi ple Plots Multiple graphs can be displayed at once by changing the values of ‘Plots on horizontal’ or ‘Plots on vertical’.
Parameter Effective Estimates The Parameter Effective Estimates section displays analysis of the simulation results once all jobs are completed. This is only available for Sensitivity Analysis tasks. NOTE: There must not be any Abnormal Termination runs for a sensitivity analysis task or CMOST cannot perform any post processing.
Effective Estimate Table The Effective Estimate table displays the results of the sensitivity analysis in tabular form. All of the objective functions and parameters can easily be compared with this table. See Sensitivity Analysis Post Processing for more details.
CMOST Studi o: Getting Started
CMOST Results
81
Values from this table can be copied and pasted into documents or spreadsheets by selecting cells and typing Ctrl+c on the keyboard or by going to the Tools menu and selecting ‘Copy to Clipboard’.
Tornado Plots The tornado plots section shows the results of the Sensitivity Analysis’ post processing for each objective function. Graphs
Tornado plots are a visual display of the data presented in the Effective Estimate Table. There is one tornado plot for each objective function. Parameters are ordered from having the greatest effect on the objective function to having the least effect. Each parameter is given its own color for all plots. The average bar represents the average value of the objective functions for all of the jobs.
82
CMOST Results
CMOST Studi o: Getting Started
Toggling Orientation
Orientation can be toggled so that negative bars appear to the left of 0 on the x-axis and positive bars appear to the right of 0 on the axis. To do this, right click on one of the plots and select ‘Toggle Orientation’. To change back, right click on the plot and select ‘Toggle Orientation’ again.
CMOST Studi o: Getting Started
CMOST Results
83
Table
The Tornado Plots can also be viewed in table form. Click on the Table radio button located above the plots to change to the table view.
84
CMOST Results
CMOST Studi o: Getting Started
Viewing Multiple Plots
Multiple plots can be viewed at once by adjusting the values for ‘Plots on Horizontal’ and ‘Plots on Vertical’ at the top of the page.
CMOST Studi o: Getting Started
CMOST Results
85
Response Surfaces This section is only available for Uncertainty Assessment tasks. Once all runs in the experimental design have completed, the simulation results are approximated with a second order polynomial equation. The equation is then used to quickly simulate thousands of Monte Carlo simulations using the distributions from the Prior Probability Density Functions defined in the Parameters section of the task file. NOTE: There must not be any Abnormal Termination runs in an Uncertainty Assessment task or post processing will not occur.
The response surface is a display of how closely the response surface predictions match the actual values from the simulations. See Response Surface Modeling for more information about response surfaces.
86
CMOST Results
CMOST Studi o: Getting Started
The 45 degree line represents a perfect match between the equation and actual simulation results. The closer the points are to the 45 degree line, the better the match between the predicted and actual data. The dark blue points are training jobs used by CMOST to create the equation. The red points are verification jobs used by CMOST to check if the equation created is a good proxy to the actual simulation results.
Monte Carlo PDF The Monte Carlo probability density functions (PDF) are a distribution of how probable that a value for an objective function will occur. CMOST displays two types of Monte Carlo PDFs:
Unconditional PDF
Conditional PDF
CMOST Studi o: Getting Started
CMOST Results
87
Unconditi onal PDF The unconditional PDFs show the distribution of values for each objective function with all uncertain parameters are sampled from prior probability density functions.
Conditional PDF The conditional PDFs show different distributions for each objective function given that a certain parameter is held constant. For example, if an objective function was created representing average vertical displacement throughout the reservoir and Young’s Modulus is set as a parameter; three plots will be created. (One given that Young’s Modulus is set at the low value, one given that Young’s Modulus is set at the middle value and one give that Young’s Modulus is set at the high value.)
88
CMOST Results
CMOST Studi o: Getting Started
CDF Plots Cumulative Density Function plots can be viewed by selecting the CDF Plots radio button located above the plots.
CMOST Studi o: Getting Started
CMOST Results
89
Tables The Monte Carlo plots can also be viewed in table form. Click on the Tables radio button located above the plots to change to the table view. Data is displayed for both Probability Density Functions and Cumulative Density Functions. Data can be copied from the tables by selecting cells and typing Ctrl+c on the keyboard or by going to the Tools menu and selecting ‘Copy to Clipboard’.
90
CMOST Results
CMOST Studi o: Getting Started
Parameter Histogr ams The frequency that a certain value of each parameter has been used is shown in the Parameter Histogram pages. If a value has been used at least once in the user-specified number of best runs, its corresponding bar will be colored red by default.
CMOST Studi o: Getting Started
CMOST Results
91
CMT in Resul ts Section All of the information that was entered into the task file (*.cmt) can be found in the results file (*.cmr). Since the original task file may be edited for future runs, this section provides a good reference to see the information that was used for that specific run. This information is read-only and cannot be edited.
92
CMOST Results
CMOST Studi o: Getting Started
General Operations
CMOST Host Manager All CMOST Engines that are currently running on a computer can be managed through the CMOST Host Manager. To access this dialog, go to Tools in the task bar then click on Host Admin. It can also be accessed through the Host Admin icon following dialog will appear:
in the toolbar. The
Basic information is listed for each of the engines that are running. Engines can also be paused or stopped from this dialog by clicking on the Pause or Stop buttons respectively. To receive updated information displayed in the Host Admin, click on the refresh button:
This dialog can be accessed at any point during the CMOST process.
CMOST Studi o: Gettin g Started
General Operatio ns
93
Starting th e CMOST Host Servi ce If for some reason the CMOST Host Service has stopped, it can be restarted in the Host Manager dialog. When the service is not running, a warning message appears and the Start Service button is enabled:
To start the service, click on the Start Service button located at the top right side of the Host Manager dialog. If this was successful, the error message will disappear and the Start Service button will disable. NOTE: The user must have administrative privileges to start the CMOST Service.
Opening a Running CMR from Host Manager CMOST Results files that are currently being run can be opened directly from CMOST. To do this, double click on a CMR. If there is currently another file open in CMOST Studio, the selected file will be opened in another instance of the Studio.
94
General Operations
CMOST Studio: Getting Started
Opening a CMOST File At any point during the CMOST process, a CMOST file can be opened. To do this, click on File in the menu bar and select Open. If there is already a file open, the user will be prompted whether or not they wish to save the file that is currently open. If the file is not saved and another file is opened, any changes that have been made to the current file will be lost. A browser window will appear when opening a file:
By default, only Task and CMOST Results files will appear in the browser window. This can be changed by selecting different options for the Files of Type box. NOTE: Only Task and CMOST Results files can be opened in CMOST. Other file type should be added to a CMOST Task through the General Properties page.
Once a file has been found, click on the Open button to open the file in CMOST.
CMOST Studi o: Gettin g Started
General Operatio ns
95
Operation Menu The engine can be controlled from the Operation Menu on the menu bar.
Task File Operations If a task file is open, the task file can be started by clicking on Start Task in the Operation Menu. This is equivalent to clicking on the Start Task button on the Run Configurations page. See Starting a Task for more details on this operation. All other options will be disabled in the Operation menu if a task file is open.
Results File Operations Engine Control
Once a task starts running, engine control buttons in the Operation Menu will become enabled. The engine can be paused or stopped by using the Pause Engine or Stop Engine menu options respectively. If the engine is paused, it will finish running any pending jobs in the job scheduler but no new jobs will be sent. To resume the engine, click on the Resume Engine button. If the engine is stopped, no new jobs will be sent to the job scheduler and the user will be prompted as to whether all running jobs should be killed. The engine cannot be resumed if it has been stopped. These menu items are equivalent to the Pause and Stop buttons on the Run Status Monitor page. Refresh Result
The Refresh Result menu item can be used to reload the CMOST Results file. This will update the studio and any changes will be displayed. This will be done automatically by the Studio and does not need to be used unless Stop Auto Refresh Result has been selected. This menu item is equivalent to the Refresh button on the Run Status Monitor page. Stop Auto Refresh Result
If the studio does not need to be refreshed automatically, Stop Auto Refresh Result in the Operation Menu can be used. If this option is selected, CMOST will stop loading the CMOST Results file automatically. The Results file will still be updated as more simulations finish. However, the results will not appear in the studio unless Resume Auto Refresh Result is selected or the Refresh Result menu item is selected. Result Refresh Rate
The refresh rate that was defined in the Run Configurations can be adjusted after the engine starts with ‘Result Refresh Rate’.
96
General Operations
CMOST Studio: Getting Started
The Engine Refresh Time Interval represents how often the CMOST engine will check to see if a job has completed. The Studio Result Refresh Time Interval represents how often CMOST Studio will reread the CMR file for changes. The Update buttons will not become enabled unless the refresh rate is changed. The refresh rate when the engine starts is defined in the CMOST Engine Configuration section of the Run Configuration page.
Copying and Saving Images Images of different plots and graphs can be copied or saved by CMOST for use in other applications. A page with a plot or graph must be selected before an image is copied or saved.
Copy To copy an image, go to Tools in the Task Bar menu and select Copy to Clipboard. This option can also be accessed through the Copy icon in the toolbar. The image that is currently being displayed on the screen will be copied to the computer’s clipboard. The image can later be pasted in other applications such as word processors.
CMOST Studi o: Gettin g Started
General Operatio ns
97
Save Image One or more images can be saved using Save Image. A variety of different options are available when saving an image. To save an image, go to Tools in the Task Bar menu and select Save Image. The following dialog will appear:
98
General Operations
CMOST Studio: Getting Started
Page Selection
Single or Multiple pages of images can be copied at once. If all pages need to be saved, check the For All Pages checkbox. Otherwise, to save a selection of the pages, enter which pages need to be saved in the From Page and To boxes. Image Size
The size of the image can be set in the Image size section. The image can be set to the size of the screen or to any custom size. The units used to determine image size are pixels. It is recommended that the Width to Height ratio be kept close to the same or the image may become skewed. The minimum size for each dimension is 100. File Information
Base File Name
The full path of where the image file is going to be saved should be listed here. This should include the file name. If multiple images are being saved, this name will be used by the first image. Subsequent images that are created will be the base file name appended with a number.
CMOST Studi o: Gettin g Started
General Operatio ns
99
Image File Format
The image type that the file will be saved as can be chosen from the Image File Format list. Once all the information is entered, click OK to save the images.
Validating Error s There are a variety of different ways to check errors in CMOST Studio. It is important to check for errors and warnings before running a task since a task cannot be started unless all errors have been fixed. A task can be started if there are warnings, but it is recommended that all warnings are examined before starting.
Task Readiness The main way to check errors in CMOST Studio is to use the Task Readiness display on the General Properties page. The Task Readiness display shows if there are any errors on the pages listed. As pages are completed, the X’s will turn to checkmarks if there are no errors. If errors are encountered, the page’s cell can be expanded to give a description of the error. If there are any warnings, they will appear as exclamation marks. The description of the warning can also be viewed by expanding the cell with the warning.
Valid ate Task File Menu Item Another way to check for errors or warnings is to access the Validate Task File menu item. This can be found under the Tools menu or by clicking on the Validate icon in the Tool bar. When this item is selected, it will give a text output of errors or warnings found on each page.
100
General Operatio ns
CMOST Studi o: Getting Started
If no errors are encountered, the status will be shown as ‘Ready’.
Treeview Icons If there are errors with the task files, an error or warning display will appear on the treeview icon where the problem was encountered.
A description of the error can be found by right clicking on the icon then selecting ‘Show Page Status’. A similar display to the ‘Validate Task File’ dialog will appear.
Experimental Design Errors Specific errors relating to experimental design can be found on the Experimental Design page in the Error Messages display. This field is updated when first entering the Experimental Design page or when the Check Error button is clicked.
CMOST Studi o: Gettin g Started
General Operatio ns
101
CMOST Formula Editor The CMOST Formula Editor can be used to easily add formulas to Parameters and Local Objective Functions. On the Parameters page, the dialog will appear on the bottom half of the page if a parameter that has Source as a Formula has been selected. On the Objective Functions page, the formula dialog will appear after clicking the button to enter a formula for a Raw Simulation Result Objective function.
Functions A list of all the available functions that CMOST can use is listed in the Functions box. To add a function to the Formula editor text field, select the function from the Functions box and click on the add button located directly below it. The formula will appear with the basic syntax for the function provided. See Appendix A: CMOST Formulas for more information about the different CMOST Functions.
Variables The variables box is populated with a list of Objective Function Terms if editing a Local Objective Function formula, or a list of parameters if editing a parameter formula. To add the variable to the formula, make sure the cursor is in the location where the variable should be entered, then click the add button directly below the variable combo box. Text can also be replaced by selecting the text that should be replaced then clicking the add button.
102
General Operatio ns
CMOST Studi o: Getting Started
Text Size Text can be changed to a few different sized to make text easier to read. This option has no effect on the results of the formula.
Printing Plots Page Setup Different page types and page layouts can be selected when printing. To do this, open the Page Setup dialog by Clicking on the File menu and selecting Page Setup. The following dialog will appear:
CMOST Studi o: Gettin g Started
General Operatio ns
103
Paper size and source can be changed in the Paper section. The page orientation can be changed between Portrait and Landscape in the Orientation section. Page margins can be adjusted in the Margins section. Any changes to the page setup will be shown in the page display at the top of the dialog. The printer that is used can be selected by using the Printer button.
Print Preview A preview of the print job can be found in the Print Preview. To access the Print Preview, click on File in the menu bar and select Print Preview.
The preview can be zoomed by clicking on the magnification icon from the print preview toolbar. Multiple pages can be shown at once by clicking on the multiple page icons. If any changes need to be made to the page, the Page Setup icon
104
General Operatio ns
can be used.
CMOST Studi o: Getting Started
If the preview looks correct and no changes need to be made, the page can be printed directly from the Print Preview dialog. To do this, click on the Print icon located at the far left side of the toolbar. The print job will be sent directly to the printer; the Print Setup dialog will not appear. To exit the dialog, click on the Close button.
Print Setup When a page is ready to be printed, click on File in the menu bar and select Print. The Print Setup dialog will appear:
Printer Selection
All known printers will be listed in the Select Printer section. If a printer is missing from the list, the Find Printer button can be used to find the printer.
CMOST Studi o: Gettin g Started
General Operatio ns
105
The default printer will have a check mark on its icon. It will be selected by default. Different printer options can be set up using the preferences button. Page Range
There are three different options that can be chosen for the Page Range:
All
Current Page
Pages
‘All’ will print all of a specific plot type. Current Page will print the plot that was active when the print dialog was opened. A single page or range of pages for a specific plot type can be selected to be printed with the Pages option. Number of Copies
More than one copy of the page can be printed. To do this, adjust the Number of Copies value. If more than one copy is chosen, the user has the choice whether or not to collate. If the Collate checkbox is checked, the pages will be collated; otherwise, they will not. Once everything has been set, click on the Print button to send the print job to the printer.
Export ing a Task File A task file can be exported from any CMOST results file. CMOST will use the information that is shown under the CMT node when exporting the file. To export from a CMOST Results file, click on File in the menu bar and select Export Task File. A dialog will appear to set a name and location for the new task file:
106
General Operatio ns
CMOST Studi o: Getting Started
The new file name can be changed to any valid name. Any location can be chosen to save the task file. When the file name and location have been chosen, click Save. The task file will be created in the new location. Other files that are associated with the task file will also be copied to the save location. This includes the master dataset, base dataset, base session file, and field history files if available.
Closing and Exiti ng Close When the user is finished with a certain CMOST file, the file can be closed. To do this, select close from the File menu. If any changes have been made to the file, the user will be prompted if the file should be saved before closing the file. The close menu item will close the file that is open but will not exit the studio. If a running CMOST Results file is open, the close option will not stop the engine and the engine will continue updating the file.
CMOST Studi o: Gettin g Started
General Operatio ns
107
Exit To exit the Studio, select the Exit menu item from the File menu. This will close any files that are open then will exit the studio. If any changes have been made to the file, the user will be prompted if the file should be saved before exiting. If a running CMOST Results file is open, the exit option will not stop the engine and the engine will continue updating the file.
Plot Properties Different plot options can be changed for CMOST Results files. The Properties dialog can be accessed for a plot by right clicking the plot and selecting Properties. This option is available for Run Progress, Result Observers, Probability Density Function and Parameter Histogram plots. Changes made to the Global Objective Function Run Progress plot will also apply to the Run Progress plot on the Run Status Monitor page.
Axis Tab Different axis options can be changed in the Axis Tab. This includes axis label font, grid lines, and axis scale.
108
General Operatio ns
CMOST Studi o: Getting Started
Title
The font of the axis labels can be changed by clicking the Font button for each axis. If the same changes should be made to every plot of the same type, check the ‘Apply to all graphs in the group’ checkbox. Grid Lines
Grid Lines can be added to any plot. Lines will appear to have the same spacing as the Step Size in the Range section. To apply the changes to all plots of the same type, check the ‘Apply to all graphs in the group’ checkbox. Range
The minimum and maximum values for the plots can be adjusted in the range section. The spacing between points on the axes can be changed by adjusting the step size. If an axis is a date, the Step Size will have days as units. To apply the changes to all plots of the same type, check the ‘Apply to all graphs in the group’ checkbox. If auto is selected, the range will be calculated automatically. This is the default.
Curve Tab Options regarding the appearance of the curves and points on plots can be adjusted in the Curve Tab. Changes made to the curve or point will be shown in the Line Preview display. If changes should be applied to all plots of the same type, check the ‘Apply to all graphs in the group’ checkbox.
CMOST Studi o: Gettin g Started
General Operatio ns
109
Curves
This section is only enabled if the data type is a curve. The color of a curve can be adjusted by clicking on the ellipsis button. The thickness of the line can be adjusted by changing the width value. Different line styles can be adjusted by selecting different options in the style box. If the style is selected as Not Set, the curve type will not be shown on the plot. NOTE: Color is the only option that can be changed for Parameter Histograms plots.
Markers
This section is only enabled if the data type is a point. The appearance of the data points can be changed by adjusting marker options. Color can be changed by clicking on the ellipsis button and selecting a color from the color dialog. The size can be changed by adjusting the value in the Size box. Several different marker shapes can be chosen from the shape box. If ‘None’ is selected, no points will appear on the plot.
Legend Tab If the properties dialog was opened for a Response Surface plot, there will be a legend tab. This tab is unavailable for all other plot types.
110
General Operatio ns
CMOST Studi o: Getting Started
The legend can be added or removed from the plot by checking or unchecking the ‘Show Legend’ checkbox. The position of the legend can be changed by changing the options in the Placement and Alignment sections. The Legend Sample shows where the legend will appear on the actual plot.
Zooming for Plots When viewing a CMOST Results file, plots can be shown for Run Progress, Results Observers, Response Surfaces, Tornado Plots, Probability Density Functions and Parameter Histograms. For any of the available plots, it is possible to zoom in on any part of the data.
How to Zoom The option of zooming is not available through the CMOST menu and has to be performed using a mouse. When a plot is displayed, zooming can be performed by pressing on the left mouse button and clicking in the lower left hand portion of the section of the plot to be zoomed. Keep the mouse button pressed down and drag the mouse to the upper right hand portion of the section to be zoomed.
CMOST Studi o: Gettin g Started
General Operatio ns
111
Release the mouse button. The zoomed in section will be shown. The entire plot can still be viewed by using the sliders that are now shown along the X and Y axis.
How to Remove Zoomin g To remove the sliders that are generated along the X or Y axis (and return to the original axis display), click once on the button with a circle in it located at the end of the slider.
112
General Operatio ns
CMOST Studi o: Getting Started
CMOST Studi o: Gettin g Started
General Operatio ns
113
Configuration Menu Options Recent Files
In the Recent Files tab, the files listed in the File menu can be adjusted. The number of files that are kept can be changed. Also, recent files listed can be cleared by selecting a file then clicking the Remove button. This will not delete the file; only the record of the file use will be cleared.
114
General Operatio ns
CMOST Studi o: Getting Started
Curves
The default appearance of curves and markers used in CMOST plots can be set in the curves tab. Any changes that are made will be seen in subsequent CMOST sessions. Any previously opened CMR files will have a corresponding .session file that defines the appearance of CMOST plots for a specific CMR. This file must be deleted before CMOST will use the new default curves and markers set in the Options tab. To restore the default settings, select the curve or plot in the treeview that should be reset then click on the Restore Default button. All plots can be restored to the default settings by clicking ‘Default Curve Settings’ in the treeview then clicking the ‘Restore Default’ button.
CMOST Studi o: Gettin g Started
General Operatio ns
115
Password
CMOST needs a password to submit jobs. The password can be changed in the Password dialog.
116
General Operatio ns
CMOST Studi o: Getting Started
Troubleshooting
Creating and Editing a CMOST Task 1. I added a new well in my CMOST master dataset but the new well doesn’t appear in the list of origin names.
Add the new well in your base dataset
Run your base dataset
Click the “Import IRF file” button in General Properties page
Select the IRF file of your base dataset and click OK
The new well will appear in the list of origin names
2. I added a new remote scheduler in Launcher, but the new scheduler doesn’t appear in Run Configurations page.
Click the “Refresh Schedulers” button in Run Configurations page
The new scheduler will appear in the list of schedulers
3. When I click the “Refresh Schedulers” button, error message “Failed to connect to an IPC Port: The system cannot find the file specified” appears.
Go to Tools Host Admin
Click on the Start Service button to start the CMOST Host Service
The “Refresh Schedulers” button will now work
4. All items in the Task Readiness table have green checkmarks but there are still errors and/or warning messages when I start the task. The task Readiness table only checks some common errors and warnings. For a complete error checking, click menu item Tools Validate Task File, a dialog will appear with a textbox showing the error checking result.
CMOST Studio: Getting Started
Troubleshooti ng
117
Running a CMOST Task 5. When submitting a CMOST run, the OK button is disabled and “Cannot find host” message is displayed beside the Host Name combo box.
Click Cancel
Go to Tools Host Admin
Click on the Start Service button to start the CMOST Host Service
Submit the task again
The OK button should be enabled and message “Connected” should appear
6. After submitting a CMOST run, nothing happens and no job is submitted.
Go to Run Status Monitor page
Click Schedulers tab
Check the list of schedulers and make sure (Active = true, Max Pending Jobs >= 1, Work plan is All Time) for schedulers to which you want to submit simulation jobs
If you need to make changes, enter your changes into the table and click Apply
Click Messages tab
You should see messages telling that schedulers are updated and simulation jobs are submitted.
7. I added a new remote scheduler in Launcher, but the new scheduler doesn’t appear in Run Status Monitor page.
Go to Run Status Monitor page
Click Schedulers tab
Click Load All
The new scheduler should appear in the schedulers table
By default, the active field is false for the new scheduler. If you want to let CMOST submit jobs to it, you need to check the Active box and then click Apply.
118 Troubleshoot ing
CMOST Studio: Getting Started
8. When using a Microsoft Windows Compute Cluster, output files are written in the jobs folder directly even though I have checked the check box beside “Write output files to a temporary folder on the execution computer and copy all files back to the simulator working directory when job is done”.
Microsoft Windows Compute Cluster doesn’t support this functionality yet.
If you are using CMG Scheduler, this functionality is supported.
9. Some simulation jobs are terminated by the simulator abnormally and error message “Fatal error from subroutine RDLINE (unable to read with a format)” appears in the log file of abnormally terminated jobs. This could be caused by:
Temporary network hardware/software problem
Inbound connections limit in Windows 2000, XP, and Vista (For more information about Inbound connections limit, view Microsoft Knowledge Base article Q314882)
For History Matching and Optimization tasks, CMOST can tolerate a small number of such abnormally terminated jobs. The ultimate result will not be affected. For Sensitivity Analysis and Uncertainty Assessment, CMOST will not be able to do post-processing if there are jobs that are terminated abnormally. To complete the task successfully, you need to restart the CMOST task.
Open the cmt file in Studio
Go to Restart Configurations page
Check the check box beside “Restart from previous CMOST runs”
Use the Browse button beside “CMOST result file to restart from” to select the previously created cmr file
Save (or Save As) the task
Start the task
Enter a run tag if you don’t want to overwrite the previous cmr file
CMOST will automatically re-run the jobs that were terminated abnormally. For jobs that were completed successfully, CMOST will read results directly.
If all re-run simulation jobs are completed successfully, CMOST will proceed to post-processing.
CMOST Studio: Getting Started
Troubleshooti ng
119
10. Engine stops unexpectedly with an error message “CMGCmostWorkerException is caught in executing instruction: RevolveEngine” Normally, this exception is caused by one of the following reasons:
The SR2 file may not contain well information for the last time step.
The required data don't exist in the SR2 file.
The required data don't exist in the FHF file.
Dictionary files required by Report.exe don't exist.
Simulator didn’t finish writing the MRF file even though the job is completed successfully and IRF is also complete. This could be caused by temporary network problem or inbound connections limit in Windows 2000, XP, and Vista.
To diagnose the problem, please run Report.exe using the corresponding rwd file located in jobs folder. If it is determined that the problem is incomplete MRF files for completed jobs and you cannot resolve possible network problem, please contact the CMOST team in CMG for help. After these possible problems are resolved, you can restart from the previous cmr file.
Open the cmt file in Studio
Go to Restart Configurations page
Check the check box beside “Restart from previous CMOST runs”
Use the Browse button beside “CMOST result file to restart from” to select the previously created cmr file
Save (or Save As) the task
Start the task
Enter a run tag if you don’t want to overwrite the previous cmr file
For jobs that were completed successfully and have complete MRF files, CMOST will read results directly.
After all previous jobs are processed CMOST will proceed to create new jobs.
11. I have clicked the Stop Engine button several times but the engine doesn’t stop. If you are working with large models with large SR2 files, the Engine may be busy reading SR2 files. So please wait for a while until the Engine is idle and click the Stop Engine button again. The engine should stop by itself. 120 Troubleshoot ing
CMOST Studio: Getting Started
During our internal test, we have also found that this is a known problem for Particle Swarm Optimizer in some situations. If you encounter such problem, please notify CMG. As the last resort to stop the engine, you can
Close CMOST Studio
Go to Control Panel Administrative Tools Services right click CMG CMOST Host Service click Stop to stop CMOSTHostService
When the service is stopped, all CMOST Engines will be stopped and their associated objects are released from the me mory as well.
To start the service again: Go to Control Panel Administrative Tools Services right click CMG CMOST Host Service click Start to Start CMOSTHostService
Viewin g CMOST Result 1. I accidentally closed CMOST Studio. Is my task still running?
Yes, your task is still running in the background by CMOSTHostService
To view result, open the cmr file again in CMOST Studio
CMOST Studio will automatically connect to the Engine if it is still running
2. I want to view a .cmr file using all default settings. Every time you make changes to the table and plot settings in CMOST Studio, the changes are saved to a session file when you close CMOST Studio. The file name of the session file is the same as your cmr file but with a different extension “.session”. At the next time you open your cmr file, CMOST studio will read the session file and apply the saved settings automatically. To restore all default settings, you can
Close CMOST Studio
Delete the session file
Open your cmr file again in CMOST Studio
All default settings are now restored.
CMOST Studio: Getting Started
Troubleshooti ng
121
Appendices
Appendix A: CMOST Formulas Formulas are equations that perform calculations on values during a CMOST run. Formulas can appear in CMOST Master Datasets and CMOST Task files. In a CMOST Master Dataset, formulas can appear anywhere provided that each formula is enclosed within a start tag and an end tag . In a CMOST Task file, formulas can be entered in Parameters and Objective Functions page.
Parts of a Formul a A formula can contain any or all of the following: functions, variables (parameter or objective function term names), constants, and operators.
Constants: Numbers or text values entered directly into a formula, such as 0.001, “OPEN”.
Functions: The POWER(30, 0.25) function returns the result of 30 raised to 0.25.
Variables: SteamPress returns the chosen value of parameter SteamPress for the particular simulation job created by CMOST.
Operators: The + (plus) operator adds, and the * (asterisk) operator multiplies.
Constants in Formulas A constant is a value that is not calculated. For example, the number 210, and the text "OPEN" are all constants. Text must be enclosed in double quotation marks. An expression, or a value resulting from an expression, is not a constant.
Functions in Formulas Functions are predefined formulas that perform calculations by using specific values, called arguments, in a particular order, or structure. Functions can be used to perform simple or complex calculations.
CMOST Studio: Getting Started
Appendices
123
Structure of a function: POWER(SteamPress * 0.001, 0.2388057)
Structure: The structure of a function begins with the function name, an opening parenthesis, the arguments for the function separated by commas, and a closing parenthesis.
Function name: List of Built-in Functions in CMOST
Arguments: Arguments can be constants, parameter names, formulas, or other functions. The argument you designate must produce a valid value for that argument. For the LOOKUP function, arrays of constants or formulas can be arguments as well.
In certain cases, you may need to use a function as one of the arguments of another function. In this case, the function used as an argument is a nested function. When a nested function is used as an argument, it must return the same type of value that the argument uses.
Variables in Formulas For formulas in Master Dataset and Parameters page, a parameter name can be used as a variable name. For formulas in Objective Functions page, an objective function term name can be used as a variable name. A parameter name identifies a parameter defined in your CMOST Task file. For a particular job created by CMOST, each parameter has one chosen value, which will be used by CMOST in evaluating formulas. An objective function term name identifies an objective function term within the objective function. For a complete job, CMOST will extract the value from SR2 files and use it in calculating formulas. For example, the following formula contains a parameter name SteamPress. For a specific simulation job created by CMOST, the chosen value of parameter SteamPress is equal to 2500. When CMOST evaluates the formula, the result will be 223.78. 179.7989 * POWER(SteamPress * 0.001, 0.2388057) Another example, the following formula contains two objective function terms: CumOil and CSOR. CumOil is defined as the Cumulative Oil SC at 2008-12-01 and CSOR is defined as the cumulative steam oil ratio at 2008-12-01. For a specific finished simulation job, CumOil is equal to 6.528e5 m3 and CSOR is equal to 3.15. When CMOST evaluates the formula, the result will be 0.207. 1e-6 * CumOil/CSOR
124 Appendices
CMOST Studio: Getting Started
Operators i n Formulas Operators specify the type of calculation that you want to perform on the elements of a formula. CMOST includes two different types of calculation operators: arithmetic and comparison. Arithmetic operators: To perform basic mathematical operations such as addition, subtraction, or multiplication; combine numbers; and produce numeric results, use the following arithmetic operators. Arithmetic operator
Meaning (Example)
+ (plus sign)
Addition (3+3)
– (minus sign)
Subtraction (3–1)
Negation
(–1)
* (asterisk)
Multiplication (3*3)
/ (forward slash)
Division (3/3)
Comparison operators: You can compare two values with the following operators. When two values are compared by using these operators, the result is a logical value either TRUE or FALSE. Comparison operator
Meaning (Example)
== (double equal sign)
Equal to (A1==B1)
> (greater than sign)
Greater than (A1>B1)
< (less than sign)
Less than (A1
>= (greater than or equal to sign)
Greater than or equal to (A1>=B1)
<= (less than or equal to sign)
Less than or equal to (A1<=B1)
!= (not equal to sign)
Not equal to (A1!=B1)
Formula Calculation Order Formulas calculate values in a specific order. CMOST calculates the formula from left to right, according to a specific order for each operator in the formula. Operator precedence: If you combine several operators in a single formula, CMOST performs the operations in the order shown in the following table. If a formula contains operators with the same precedence—for example, if a formula contains both a multiplication and division operator — CMOST evaluates the operators from left to right.
CMOST Studio: Getting Started
Appendices
125
Operator
Description
–
Negation (as in –1)
* and /
Multiplication and division
+ and –
Addition and subtraction
== < > <= >= !=
Comparison
Use of parentheses: To change the order of evaluation, enclose in parentheses the part of the formula to be calculated first. For example, the following formula produces 11 because CMOST calculates multiplication before addition. The formula multiplies 2 by 3 and then adds 5 to the result. =5+2*3 In contrast, if you use parentheses to change the syntax, CMOST adds 5 and 2 together and then multiplies the result by 3 to produce 21. =(5+2)*3
List o f Buil t-in Functions i n CMOST IF
Returns one value if a condition you specify evaluates to TRUE and another value if it evaluates to FALSE. Use IF to conduct conditional tests on values and formulas. Syntax
IF(logical_test, value_if_true, value_if_false) logical_test is any value or expression that can be evaluated to TRUE or FALSE. For example, WellLen>=800 is a logical expression; if the value of WellLen is greater than or equal to 800, the expression evaluates to TRUE. Otherwise, the expression evaluates to FALSE. This argument can use any comparison calculation operator. value_if_true is the value that is returned if logical_test is TRUE. Value_if_true can be a constant or a formula. value_if_false is the value that is returned if logical_test is FALSE. Value_if_false can be a constant or a formula. Example 1 Use the following IF functions to open/close certain perforations of a well according to the length of the well in a CMOST Master Dataset.
126 Appendices
CMOST Studio: Getting Started
PERF GEO **$ UBA 9 3 12 1. 9 4 12 1. 9 5 12 1. 9 6 12 1. 9 7 12 1. 9 8 12 1. 9 9 12 1.
'Horizontal' ff Status Connection OPEN FLOW-TO 'SURFACE' OPEN FLOW-TO 1 OPEN FLOW-TO 2 OPEN FLOW-TO 3 IF(WL>=500,"OPEN","CLOSED") FLOW-TO 4 IF(WL>=600,"OPEN","CLOSED") FLOW-TO 5 IF(WL>=700,"OPEN","CLOSED") FLOW-TO 6
For a simulation job created by CMOST with WL=600, perforations for well 'Horizontal' in the dataset will be:
PERF GEO **$ UBA 9 3 12 1. 9 4 12 1. 9 5 12 1. 9 6 12 1. 9 7 12 1. 9 8 12 1. 9 9 12 1.
'Horizontal' ff Status Connection OPEN FLOW-TO 'SURFACE' OPEN FLOW-TO 1 OPEN FLOW-TO 2 OPEN FLOW-TO 3 OPEN FLOW-TO 4 OPEN FLOW-TO 5 CLOSED FLOW-TO 6
LOOKUP
The LOOKUP function looks in array_constants for the specified value and returns a value from the same position in array_formulas. Use LOOKUP to define relationships between parameters. Syntax
LOOKUP(lookup_value, array_constants, array_formulas) lookup_value is a value that LOOKUP searches for in an array. Lookup_value must be a parameter name. array_constants is a group of constants that you want to compare with lookup_value. array_formulas is a group of formulas, one of which will be the return value of the LOOKUP function. The number of formulas should be equal to the number of constants in array_constants. Remarks array_constants format
Constants are enclosed in braces { } and separated with commas (,).
Array constants can contain numbers, and text. Text is case-sensitive.
Numbers in array constants can be in integer, decimal, or scientific format.
Text must be enclosed in double quotation marks, for example, "CLOSED".
CMOST Studio: Getting Started
Appendices
127
Array constants cannot contain formulas and parameter names.
array_formulas format
The format of array_formulas is the same as array_constants except that array_formulas can contain constants, formulas, and variable names.
Important
The LOOKUP function finds the value that matches exactly the same as the lookup_value. If LOOKUP can't find the lookup_value, the result is undefined.
Example 2 Use the LOOKUP function to set the mole fraction of solution gas according to gas-oil ratio in a CMOST Master Dataset
**$ Property: Oil Mole Fraction(Soln_Gas) MFRAC_OIL 'Soln_Gas' CON LOOKUP(ogor, {7,5,4,3}, {0.10,0.08,0.06,0.04}) For a simulation job created by CMOST with ogor=4, the mole fraction of solution gas will be set to 0.06
**$ Property: Oil Mole Fraction(Soln_Gas) MFRAC_OIL 'Soln_Gas' CON 0.06 AB S
Returns the absolute value of a number. The absolute value of a number is the number without its sign. Syntax
ABS(number) number is the actual number of which you want the absolute value. Example
ABS(-12.5) returns 12.5
128 Appendices
CMOST Studio: Getting Started
COS
Returns the cosine of the given angle. Syntax
COS(number) number is the angle in radians for which you want the cosine. Remark If the angle is in degrees, multiply it by 3.14159/180 to convert it to radians. Example
COS(1.047) returns 0.500171 EXP
Returns e raised to the power of number. The constant e equals 2.71828182845904, which is the base of the natural logarithm. Syntax
EXP(number) number is the exponent applied to the base e. Remarks To calculate powers of other bases, use the POWER function. Example
EXP(2) returns 7.389056 LN
Returns the natural logarithm of a number. Natural logarithms are based on the constant e (2.71828182845904). Syntax
LN(number) number is the positive real number for which you want the natural logarithm. Remark LN is the inverse of the EXP function.
CMOST Studio: Getting Started
Appendices
129
Example
LN(2.7182818) returns 1 LOG10
Returns the base-10 logarithm of a number. Syntax
LOG10(number) number is the positive real number for which you want the base-10 logarithm. Example
LOG10(100) returns 2 MAX
Returns the largest value in a set of values. Syntax
MAX(number1,number2,...) number1, number2, ... are numbers for which you want to find the maximum value. Remarks
You can specify arguments that are numbers, variable names, and formulas.
The arguments must contain at least two values.
Example
MAX(var1, 2.54) returns 2.54 if var1=1.06 MIN
Returns the smallest number in a set of values. Syntax
MIN(number1,number2,...) number1, number2, ... are values for which you want to find the minimum value. Remarks
You can specify arguments that are numbers, variable names, and formulas.
The arguments must contain at least two values.
130 Appendices
CMOST Studio: Getting Started
Example For a SAGD well pair, you want to change the total liquid rate of the producer according to the steam rate of the injector. You can use the MIN function in your Master Dataset to achieve this.
INJECTOR MOBWEIGHT EXPLICIT 'WEST-I' INCOMP WATER 1. 0. 0. TINJW 253.2 QUAL 0.9 OPERATE MAX BHP 4200. CONT REPEAT OPERATE MAX STW Steam CONT REPEAT PRODUCER 'WEST-P' OPERATE MIN BHP 2000 CONT REPEAT OPERATE MAX STL MIN(Steam*1.6,1000) CONT REPEAT For a job with Steam=500, operating constrains for producer 'WEST-P' will be:
PRODUCER 'WEST-P' OPERATE MIN BHP 2000 CONT REPEAT OPERATE MAX STL 900 CONT REPEAT For a job with Steam=700, operating constrains for producer 'WEST-P' will be:
PRODUCER 'WEST-P' OPERATE MIN BHP 2000 CONT REPEAT OPERATE MAX STL 1000 CONT REPEAT POWER
Returns the result of a number raised to a power. Syntax
POWER(number, power) number is the base number. It can be any number. power is the exponent to which the base number is raised. Example
POWER(5,2) returns 25
CMOST Studio: Getting Started
Appendices
131
SIN
Returns the sine of the given angle. Syntax
SIN(number) number is the angle in radians for which you want the sine. Remark If your argument is in degrees, multiply it by 3.14159/180 to convert it to radians. Example
SIN(30*3.14159/180) return 0.5 SQRT
Returns a positive square root. Syntax
SQRT(number) number is the number for which you want the square root. Remark The number must be non-negative. Example
SQRT(2.0) returns 1.4142 TAN
Returns the tangent of the given angle. Syntax
TAN(number) number is the angle in radians for which you want the tangent. Remark If your argument is in degrees, multiply it by 3.14159/180 to convert it to radians. Example
TAN(0.785) return 0.99920
132 Appendices
CMOST Studio: Getting Started
Appendix B: Names in CMOST In Parameters, Objective Functions, and Results Observers page, proper names must be entered for each defined parameter, objective function, objective function term, time-series observer, and fixed-date observer. The following guidelines should be followed:
The first character of a name must be a letter. Remaining characters in the name can be letters, numbers, and underscore characters.
Names are case sensitive.
Spaces are not allowed. Underscore characters may be used as word separators— for example, perm_h, perm_v.
It is OK to use simulator keywords as parameter names. This indeed has some advantages for users who are familiar with simulator keywords because the meaning of such defined parameter will be very clear.
Do not use the following names because they are internal keywords used by CMOST: this, Status, Dataset, Scheduler, Computer, Pattern, and Source.
All names must be unique. That is, if a name is already used for a parameter, it shouldn’t be used for an objective function or a result observer.
Appendix C: Optimizers CMG DECE Optimizer CMG DECE Optimizer implements CMG’s proprietary optimization method: Designed Exploration and Controlled Evolution. DECE optimization method tries to imitate the process which reservoir engineers commonly use to solve history matching or optimization problems. For simplicity, DECE optimization can be described as an iterative optimization process that applies Designed Exploration stage and Controlled Evolution stage sequentially. In the Designed Exploration stage, the goal is to explore the search space in a designed random manner such that maximum information about the solution space can be obtained. In this stage, experimental design and Tabu search techniques are applied to pick parameter values and create representative simulation datasets. In the Controlled Evolution stage, statistical analyses are performed for the simulation results obtained in the Designed Exploration stage. Based on the analyses, DECE algorithm scrutinizes every candidate values of each parameter and determines whether there is better chance to improve solution quality if certain candidate values are rejected (banned) from being picked again. These rejected candidate values are remembered by the algorithm and they will not be used in the next Controlled Exploration stage. To minimize the possibility of being trapped in local minima, DECE algorithm checks rejected candidate values from time to time to make sure previous rejection decisions are still valid. If the algorithm determines that certain rejection decisions are not valid, the rejection decisions are recalled and corresponding candidate values will be used again. CMOST Studio: Getting Started
Appendices
133
One important unique feature of CMG DECE optimization method is its capability to incorporate user’s engineering judgment and understanding of the reservoir in the optimization process by adopting the concept of influence matrix. Each element of the influence matrix indicates user’s estimation on the possibility of whether changing a parameter will affect an objective function. For example, if a user knows that adjusting the skin of a well A will not affect the simulation results of well B which is several hundred meters away from well A, the user can let the DECE optimization method incorporate such important information by setting the corresponding influence matrix element value to zero for the skin parameter of well A and history match objective function of well B. For large fields with multiple wells and large number of adjustable parameters, the efficiency of CMG DECE optimization method can be improved dramatically by using a proper influence matrix. See Influence Matrix for more information on how to set up an influence matrix. DECE optimization method has been successfully applied in a number of real world reservoir simulation studies, such as:
History matching for a highly heterogeneous black oil model
History matching of cold heavy oil production with aquifer
History matching of cyclic steam stimulation process
NPV optimization for a post-primary SAGD model with aquifer
NPV optimization for a 6 well pair SAGD model
The results demonstrate that DECE optimization method is reliable and efficient. Therefore, it is the recommended optimization method in CMOST.
Particle Swarm Optimizer Particle swarm optimization (PSO) is a population based stochastic optimization technique developed by James Kennedy and Russell C. Eberhart in 1995, inspired by social behavior of bird flocking or fish schooling. Social influence and social learning enable a person to maintain cognitive consistency. People solve problems by talking with other people about them, and as they interact their beliefs, attitudes, and behaviors change; the changes could typically be depicted as the individuals moving toward one another in a sociocognitive space. The particle swarm simulates this kind of social optimization. The system is initialized with a population of random solutions and searches for optima by updating generations. The individuals iteratively evaluate their candidate solutions and remember the location of their best success so far, making this information available to their neighbors; they are also able to see where their neighbors have had success. Movements through the search space are guided by these successes, with the population usually converging towards good solutions.
134 Appendices
CMOST Studio: Getting Started
It is noted that the current Particle Swarm Optimization in CMOST has the following limitations (known problems):
It should should not not be used if if the search space is smaller smaller than 500.
The maximum maximum number number of allowed simulator calls in the Run Configuration page should be smaller than the search space.
It does not support CMOST restart.
Particle Particle Swarm Swarm Optimization Optimization Switches
It is optional to enter optimization switches in Run Configurations page for particle swarm optimization.
Activate Simulated Simulated Annealing Annealing indicates indicates whether whether or not to activate simulated simulated annealing while PSO is working. Its default is True.
Days represents the number of days user can allow optimizer optimizer to retrieve valid solutions from the repository. Its default is 1.
Maximum Number Number of Retrieved Solutions Solutions represents how many solutions the optimizer will retrieve. Its default is 10000. Any positive integer greater than 100 may be used.
Multiple Objective Optimization represents the work work way used by by the the optimizer. optimizer. If this option is False, Single-objective optimization will be used. Multi-objective optimization will be used if its value is True. The default is False.
Number of Annealing Times represents represents the the number of annealing times used used by the simulated annealing optimizer. Its default is 20. If the parameter design space is small, smaller values should be used. If the space is larger, greater values should be used.
Starting Number of Simulator Calls initially initially activating simulated annealing annealing optimizer represents the number of calls where the simulated annealing optimizer begins to activate. Its default is is 250.
Threshold represents the the threshold threshold for influence matrix; matrix; the threshold must be between 0 and 1. Its default is 0.2.
Total Number Number of Simulator Calls only only by PSO represents represents the number of of simulator simulator calls that will be used by the Particle Swarm Optimizer. The default is 500. This value will override the Maximum Number of Simulator Calls given on the Run Configurations page.
CMOST CMOST Studio: Getting Started
Appendices
135
Brute Force Search Brute Force Search method is a straightforward optimization method which tries to evaluate all possible solutions and decide afterwards which one is the best. It is feasible only for small problems in terms of the dimensionality of the search space. More specifically, CMOST requires that the search space (the number of all possible parameter value combinations) should be less than 65536. Despite these drawbacks, Brute Force Search method does have a few benefits: they are simple to implement, and in the case of discrete systems, all possible solutions can be checked, which means that it can always find the true optimum solution if all possible solutions solutions are indeed evaluated.
Rando Random m Search Search Random search methods for optimization are based on exploring the domain in a random manner to find optimum solutions. These are the simplest methods of stochastic optimization and can be quite effective in some problems (small search space and fast-running simulation jobs). There are many different algorithms for random search such as blind random search, localized random search, and enhanced localized random search. The algorithm implemented in CMOST is blind random search. This is the simplest random search method, where the current sampling does not take into account the previous samples. That is, this blind search approach does not adapt the current sampling strategy to information that has been garnered in the search process. One advantage of blind random search is that it is guaranteed to converge to the optimum solution as the number of function evaluations (simulations) gets large. Realistically, however, this convergence feature may have limited use in practice since the algorithm may take a prohibitively large number of function evaluations (simulations) to reach the optimum solution.
Ap A p p end en d i x D: Pro Pr o b abi ab i l i t y Dens i t y Fun Fu n c t i o n s Uniform Distribution
f (x)
0 1 b a 0
x a
a
x b x b
Here, a and b are the lower and upper limit of the variable.
136 Appendices
CMOST CMOST Studio: Getting Started
Triangle Distribution
0 2( x a ) ( b a )(c a ) f (x ) 2( b x ) ( b a )( b c) 0
x a
a
xc
c x b x b
Here, a and b are the lower and upper limit of the variable; c is the peak (mode).
Normal Distribution
( x ) 2 f (x ) exp 2 2 2 1
Here, and are the mean and standard deviation of the variable.
Log-normal Log-normal Distribution
(ln x ) 2 f (x ) exp 2 2 x 2 1
Here, and are the mean and standard deviation of the variable’s natural logarithm.
Ap A p p end i x E: Obj Ob j ect ec t i v e Fun Fu n c t i o n s Three different types of objective functions can be used in CMOST:
History Match Error
Discounted Value
Raw Simulation Result
History Match Error should be used for history matching task only. Discounted Value and Raw Simulation Result can be used for optimization, sensitivity analysis, and uncertainty assessment tasks.
History Match Error History Match Error objective function measures the relative difference between the simulation results and measured production data. If a field has multiple wells and each well CMOST CMOST Studio: Getting Started
Appendices
137
has multiple types of production data to match, it is recommended to define an objective function for each well. The objective function of each well contains multiple objective function terms, each of which corresponds to a production data type. In practice, it is also common to see that the quality and importance of measured data may be different for different production data types. In a manual history match, these variations are usually taken into account by the reservoir engineer intuitively and qualitatively. In computer-assisted history matching, a quantitative approach should be used to account for the data quality and importance. Therefore, different measurement errors and weights need to be assigned to different production data types of different wells in calculating objective functions. In CMOST, the following equation is used to calculate History Match Error for well i: Error! Objects cannot be created from editing field codes.
Here subscripts i, j, t represent well, production data type, and time respectively; N(i) is the total number of production data types for well i; NT(i, j) is the total number of measured data points; Yis, j,t are simulated results; Yim, j,t are measured results; twi,j is the term weight; and Scale i,j is the normalization scale, which is calculated by using one of the following two methods. Method #1 applies when the number of measured data points is greater than 5. In this method, the normalization scale is the maximum of the following three quantities: Error! Objects cannot be created from editing field codes. Error! Objects cannot be created from editing field codes. Error! Objects cannot be created from editing field codes.
Here
Yim, j is the measured maximum change for well i and production data type j; Merr i,j is
the measurement error. Method #2 applies when the number of measured data points is small ( 5). In this case, the normalization scale is obtained by: Error! Objects cannot be created from editing field codes.
As can be seen from the above equation, the calculated History Match Error is dimensionless percentage relative error. If simulation results are exactly the same as measured data, the calculated history match error is 0% which indicates perfect match. Our experience indicates that if history match error is less than 5%, the match is usually acceptable. Because the defined History Match Error is dimensionless, it can be used to calculate the global history match error using the weighted average method. Error! Objects cannot be created from editing field codes.
Here Qglobal is the global objective function; Q i is the objective function for well i; and NW is the total number of wells.
138 Appendices
CMOST Studio: Getting Started
Discounted Value In finance and economics, discounting is the process of finding the present value of an amount of cash at some future date, and along with compounding cash forms the basis of time value of money calculations. The discounted value of a cash flow is determined by reducing its value by the appropriate discount rate for each unit of time between the time when the cash flow is to be valued to the time of the cash flow. To calculate the present value of a single cash flow, it is divided by one plus the interest rate for each period of time that will pass. Error! Objects cannot be created from editing field codes.
Here t is the time of the cash flow; I is the discount rate (interest rate); Rt is the net cash flow (positive for inflow, and negative for outflow) at time t. Net present value (NPV) is defined as the total present value (PV) of a time series of cash flows. It is a standard method for using the time value of money to appraise long-term projects. Each cash inflow/outflow is discounted back to its present value (PV). Then they are summed. Therefore NPV is the sum of all terms. Error! Objects cannot be created from editing field codes.
Based on the above equation, the Discounted Value objective function in CMOST is calculated by Q
NJ Ndays
j 1
t 1
Quantity * UnitValue (1 I) t
Here t is the time of the cash flow in days; I is the daily interest rate; Quantity is the value read from the SR2 file using user-specified origin name and property name; Unit Value is user-specified cash flow value per Quantity (positive for inflow, and negative for outflow); Ndays is the total number of days from the user-specified start date time and the end date time; j represents each objective function term; and NJ is the number of objective function terms for the Discounted Value objective function. It is noted that CMOST uses the OUTUNIT table of the IRF file to read SR2 files. Therefore, it is user’s responsibility to enter a proper Unit Value for each objective function term according to the OUTUNIT of datasets. For example, if the output unit of oil rate is bbl/day, the unit value should be dollar per barrel. If the output unit of oil rate is m3/day, the unit value should be dollar per m3.
Raw Simul ation Result Raw Simulation Result objective function allows users to specify user-defined objective functions. Each Raw Simulation Result objective function contains a list of objective function terms. Each objective function term is identified by its unique term name. To define a custom objective function, users can use each term name as a variable name to construct a formula. CMOST Studio: Getting Started
Appendices
139
The formula will then be used by CMOST in objective function calculations. For example, a Raw Simulation Result objective function has two terms:
CumOil identifies Cumulative Oil SC on 2008-10-01 for Producer
CSOR identifies Cumulative Steam-Oil Ratio on 2008-10-01 for Injector-Producer pair
The formula field of the objective function is “CumOil/CSOR”. Therefore, the calculated value of the objective function is equal to “CumOil divided by CSOR” which means cumulative oil production per unit CSOR.
Appendix F: Experiment al Design In Sensitivity Analysis and Uncertainty Assessment, CMOST deliberately change one or more variables (parameters) in order to observe the effect the changes have on one or more response variables (objective functions). The statistical design of experiments is an efficient procedure for planning experiments (simulation runs) so that the data obtained can be analyzed to yield valid and objective conclusions. Design of experiments begins with determining the objectives of an experiment (simulation) and selecting the process variables (parameters) for the study. An Experimental Design in CMOST is the laying out of a detailed simulation plan in advance of doing simulations. Well chosen experimental designs maximize the amount of "information" that can be obtained for a given amount of simulation effort. The statistical theory underlying Experimental Design generally begins with the concept of process models. In CMOST, the reservoir model is treated as a black-box type process model with several discrete or continuous input parameters that can be varied at will by the user and one or more measured (calculated) output responses (objective functions). The output responses are assumed continuous. Experimental (simulation) data are used to derive an empirical (approximation) model linking the outputs and inputs. The most common empirical models take either a linear form or quadratic form of a polynomial function. One important step in sensitivity/uncertainty analysis study is to choose the range of the settings for input parameters. It is wise to give this some thought beforehand rather than just try extreme values. In some cases, extreme values will give runs that are impractical or impossible; in other cases, extreme ranges might move one out of a smooth area of the response surface into some jagged region, or close to an asymptote. Successful application of Experimental Design requires that the responses (objective functions) are likely to be approximated well by first-order or second-order polynomial models. For Sensitivity Analysis, first-order polynomial models are used. This requires that over the experimental range, outputs (objective functions)
must be continuous
140 Appendices
CMOST Studio: Getting Started
must be reasonably smooth and close to linear
For Uncertainty Assessment, second-order polynomial models are used. This require that over the experimental range, outputs (objective functions)
must be continuous
must be reasonably smooth
Sensiti vity A nalysis Experimental Designs Two-level designs are used in Sensitivity Analysis. Two-level designs are ideal for screening designs. They are simple and economical. They also give most of the information required to go to a multilevel response surface experiment if one is needed. The standard layout for a two-level design uses - and + notation to denote the "low level" and the "high level" respectively, for each parameter. For example, the matrix below Run
Parameter (X1)
Parameter (X2)
1
-
-
2
+
-
3
-
+
4
+
+
Describes an experiment in which 4 runs were conducted with each parameter set to high or low during a run according to whether the matrix had a + or - set for the parameter during that run. If the experiment had more than 2 parameters, there would be an additional column in the matrix for each additional parameter.
CMOST Studio: Getting Started
Appendices
141
The following types of experimental designs are available in CMOST:
Full factorial designs
Fractional factorial designs
Plackett-Burman designs
Uncertainty Assessment Experimental Designs In Uncertainty Assessment, three-level experimental designs are used. In a three-level design, each parameter effect on the response is evaluated at three levels (low, median, and high). Three-level designs are also called response surface designs because in addition to main effects (linear term), both two-term interactions and quadratic terms can be examined. The standard layout for a three-level design uses -, 0, and + notation to denote the "low level", “median level”, and the "high level" respectively, for each parameter. CMOST provides the following types of response surface designs:
Full Factorial designs
Box-Behnken designs
Central Composite designs (Face Centered, Uniform Precision)
Appendix G: Po st Pr ocessing Sensitivity Analysis Post Processing In post processing a Sensitivity Analysis task results, CMOST calculates the effect estimate of each parameter for each objective function. The effect estimate indicates how changing the settings of a parameter change the response (objective function). The effect estimate of a single parameter is also called a main effect. For a parameter X with two levels, the main effect of X for an objective function is estimated by subtracting the average objective function value when X is “–” from the average objective function value when X is “+”. Effect Estimate
Y ( ) Y ( )
Here Y ( ) is the average response (objective function) value for which the parameter takes on a "+" value; and Y ( ) is the average response (objective function) value for which the parameter takes on a "-" value. In the above equation, a large difference in the two averages imply that the parameter is important because it means that it leads to a significant shift in the location of the response as we go from the “-“ setting of the parameter to the “+” setting. On the other hand, a small difference would imply the factor is not important.
142 Appendices
CMOST Studio: Getting Started
A Tornado plot for an objective function displays a sequence of effect estimates of all parameters for the objective function in the ascending order. To assist in comparability and relative importance, all of the effect estimates are plotted on the same scale as the average (intercept) objective function value, which is calculated from: Error! Objects cannot be created from editing field codes.
Uncertainty A ssessment Post Processing Response Surface Modeling
Response surface methodology (RSM) explores the relationships between input variables (parameters) and responses (objective functions). The main idea of RSM is to use a set of designed experiments to build a surrogate model to represent the original complicated reservoir simulation model. CMOST uses a second-degree polynomial model to fit simulation results of experimental design runs. In the general case, a quadratic polynomial in n variables x1, x2, … ,xn can be written in the form Error! Objects cannot be created from editing field codes.
Here A is a symmetric n-dimensional matrix; B is an n-dimensional vector; and C a constant. It is noted that such a surrogate model is simple and easy to estimate, but it is used because such a model is generally sufficient for forecast purpose given the fact that so little is known about the future behavior of a reservoir. It has also been found that quadratic polynomials are comparable to complex responses surfaces in terms of their estimation accuracy (See Paper SPE 93347: Yeten, B., Castellini, A. Guyaguler, B., and Chen, W.H., A Comparison Study on Experimental Design and Response Surface Methodologies). In CMOST, the seconddegree polynomial model is further used in Monte Carlo simulation to analyze uncertainty propagation. Moreover, it can also be used to optimize (maximize, minimize, or attain a specific target) for a response (objective function). In such use, it is suggested that the polynomial model should be potentially limited to interpolation (rather than extrapolation) among the variable values. Monte Carlo Simulation
Monte Carlo simulation is an accurate method for analyzing uncertainty propagation, where the goal is to determine how random variation, lack of knowledge, or error affects the sensitivity, performance, or reliability of the system that is being modeled. Monte Carlo simulation is categorized as a sampling method because the inputs are randomly generated from probability distributions to simulate the process of sampling from an actual population. So, it is required to choose a distribution for the inputs (parameters) that most closely characterize data we already have, or best represents our current state of knowledge. The results generated from the simulation can be represented as probability distributions (probability density function and cumulative density function) or converted to error bars, reliability predictions, tolerance zones, and confidence intervals. The following figure demonstrates the concept of uncertainty propagation analysis using Monte Carlo simulation.
CMOST Studio: Getting Started
Appendices
143