Introduction to IFs: Difference between revisions
CamrynDreyer (talk | contribs) No edit summary |
CamrynDreyer (talk | contribs) No edit summary |
||
Line 47: | Line 47: | ||
*[http://www.du.edu/ifs/help/intro/devmodefeatures/adding.html Adding Variables] | *[http://www.du.edu/ifs/help/intro/devmodefeatures/adding.html Adding Variables] | ||
*[http://www.du.edu/ifs/help/intro/devmodefeatures/rebuilding.html Rebuilding the Common Block] | *[http://www.du.edu/ifs/help/intro/devmodefeatures/rebuilding.html Rebuilding the Common Block] | ||
=== Adding Variables to IFs === | |||
You will only be able to do this if you have the source code of IFs and a license for its use (and if you have Visual Basic programming skills). | |||
'''To add a variable to IFs (or to eliminate one):''' | |||
*Edit IfsVar.mdb. This is an MS Access file. Add a new line for a new variable and provide values for the various fields by looking at similar, already existing variables in the file. | |||
*After adding a variable to IFs, you must rebuild the common block, rebuild the base case, and re-run the model. | |||
*Be aware that this topic has only described the addition of a variable to the input/output interface of IFs. It will have values of 0 unless you do something with it in the model code: | |||
*Use it as an output variable, calculated from other variables in IFs. | |||
*Use it as an input parameter or variable with specified initial condition. If you want to do this, you would also need to learn how to change the data files of IFs and the code in the pre-processor. | |||
'''Legacy Approach to Adding a Variable.''' In older versions of IFs that process was harder. The following description should not be necessary for those with new copies of the source code: | |||
::Edit DECLARE2.BAS to change the total number of positions in the vector that stores all results from IFs. Near the bottom of that file you will find code like this: | |||
::Type DATAPT2 '- New system | |||
::elem2(5000) As Single | |||
::End Type | |||
::Type DATAPT3 | |||
::elem3(3456) As Single | |||
::' elem3(4698) As Single | |||
::' Dim BufElem in RebBase sets total size of buffer; may need to | |||
::' expand that also - now set at 70000 | |||
::End Type | |||
DATAPT2 contains an element which is always dimensioned to 5000, because data is transferred to and from result files in a buffer which is 5000 positions in length. The number of positions needed will change with the number of variables in IFs and their dimensionality. You will need to change the dimensionality of elem3 in DATAPT3 in order to pick up the residual positions after the 5000-position buffer is used as frequently as needed. | |||
When adding a variable of known length (e.g. a scalar of length 1 or a regionalized variable across x regions), it is possible to adjust elem3’s dimensionality on the front end of an attempt to rebuild common. Often it is difficult to calculate the number of positions needed (especially for the change in subscripts applied to many variables). In this case, rebuild the common and let that procedure abort with a message that will tell you the new size needed for the total number of positions; adjust elem3 dimensionality accordingly and rebuilt the common again (hopefully now with success). | |||
It is possible to change the dimensionality of variables by edition IFs.grp. Again, you would need similarly to change the number of positions in DECLARE2.BAS and rebuild common. | |||
For your information, the total number of positions (FILEN) in each year of the result file is calculated from IfsVar.mdb when the model is initiated. You need not do so (its length will be elem2 dimensionality * x(as needed) + elem3 dimensionality. | |||
== Dominant relations == | == Dominant relations == |
Revision as of 16:44, 22 June 2017
Purposes
International Futures (IFs) is a tool for thinking about long-term global futures. It assists with:
- Understanding the state of the world
- Exploring trends and considering where they might be taking us
- Learning about the dynamics of global systems
Thinking about the future we want to see:
- Clarifying goals/priorities
- Developing alternative scenarios (if-then statements) about the future
- Investigating the leverage various agent-classes have in shaping the future
Assumptions that underlie IFs development and use:
- Global issues are becoming more significant as the scope of human interaction and human impact on the broader environment grow
- Goals and priorities for human systems are becoming clearer and are more frequently and consistently enunciated
- Understanding of the dynamics of human systems is growing rapidly
- The domain of human choice and action is broadening
What can you investigate with IFs? Examples include:
- Environmental Sustainability: Atmospheric carbon dioxide levels, world forest area, fossil fuel usage
- Social/Political Change: Life expectancy, literacy rate, democracy level, status of women, value change
- Demographic Futures: Population levels and growth, fertility, mortality, migration
- Food and Agriculture: Land use and production levels, calorie availability, malnutrition rates
- Energy: Resource and production levels, demand patterns, renewable energy share
- Economics: Sectoral production, consumption, and trade patterns and structural change
- Global System: Country and regional power levels
IFs Issues and Modules: Visual Representation
Among the philosophical premises of the International Futures (IFs) project is that the model cannot be a "black box" to users and be truly useful. Model users must be able to examine the structures of IFs in order (1) to have confidence in them, and (2) learn from them.
Development Mode Features
Procedures for IFs Development/Extension
This topic will be meaningful only to those having a site license for the source code and doing IFs development or for those in similar modeling projects.
Development topics.
Visual Basic. IFs was developed using Visual Basic.
Adding Variables to IFs
You will only be able to do this if you have the source code of IFs and a license for its use (and if you have Visual Basic programming skills).
To add a variable to IFs (or to eliminate one):
- Edit IfsVar.mdb. This is an MS Access file. Add a new line for a new variable and provide values for the various fields by looking at similar, already existing variables in the file.
- After adding a variable to IFs, you must rebuild the common block, rebuild the base case, and re-run the model.
- Be aware that this topic has only described the addition of a variable to the input/output interface of IFs. It will have values of 0 unless you do something with it in the model code:
- Use it as an output variable, calculated from other variables in IFs.
- Use it as an input parameter or variable with specified initial condition. If you want to do this, you would also need to learn how to change the data files of IFs and the code in the pre-processor.
Legacy Approach to Adding a Variable. In older versions of IFs that process was harder. The following description should not be necessary for those with new copies of the source code:
- Edit DECLARE2.BAS to change the total number of positions in the vector that stores all results from IFs. Near the bottom of that file you will find code like this:
- Type DATAPT2 '- New system
- elem2(5000) As Single
- End Type
- Type DATAPT3
- elem3(3456) As Single
- ' elem3(4698) As Single
- ' Dim BufElem in RebBase sets total size of buffer; may need to
- ' expand that also - now set at 70000
- End Type
DATAPT2 contains an element which is always dimensioned to 5000, because data is transferred to and from result files in a buffer which is 5000 positions in length. The number of positions needed will change with the number of variables in IFs and their dimensionality. You will need to change the dimensionality of elem3 in DATAPT3 in order to pick up the residual positions after the 5000-position buffer is used as frequently as needed.
When adding a variable of known length (e.g. a scalar of length 1 or a regionalized variable across x regions), it is possible to adjust elem3’s dimensionality on the front end of an attempt to rebuild common. Often it is difficult to calculate the number of positions needed (especially for the change in subscripts applied to many variables). In this case, rebuild the common and let that procedure abort with a message that will tell you the new size needed for the total number of positions; adjust elem3 dimensionality accordingly and rebuilt the common again (hopefully now with success).
It is possible to change the dimensionality of variables by edition IFs.grp. Again, you would need similarly to change the number of positions in DECLARE2.BAS and rebuild common.
For your information, the total number of positions (FILEN) in each year of the result file is calculated from IfsVar.mdb when the model is initiated. You need not do so (its length will be elem2 dimensionality * x(as needed) + elem3 dimensionality.
Dominant relations
Any computer simulation or other model will have some relationships and dynamics that dominate the behavior of the model and that therefore most heavily influence the analyses done with the model. Understanding these dominant relations will facilitate model use, particularly in the definition of key or framing scenarios.
The value added by more detailed specification of relationships in the model will lie partly in more probing analysis, often around specific policy options. Much of the value added by a more complete model specification will, however, lie in the dynamics of the full model.
For an introductory summary of dominant relations and dynamics by submodule:
- Dominant Relations: Agriculture
- Dominant Relations: Demography/Population
- Dominant Relations: Economics
- Dominant Relations: Education
- Dominant Relations: Energy
- Dominant Relations: Environment
- Dominant Relations: Governance
- Dominant Relations: Health
- Dominant Relations: Infrastructure
- Dominant Relations: Interstate Politics
- Dominant Relations: Socio-Political
Structure-Based and Agent-Class Driven Modeling
The Structure-Based, Agent-Class Driven approach has five key elements methodologically: organizing structures, stocks, flows, key aggregate relationships, and key agent-class behavioral relationships.
Organizing structures are well-recognized and theoretical and conceptual frameworks with an organizing character for important human systems: cohort-component structures for demographic systems, markets for economic systems, financial flows for socio-political-economic systems, and so on.
Stocks and flows remind us of systems dynamics. In demographic systems, the stocks are numbers of people in age- and sex-specific cohorts, while the flows are births, deaths, and migration. Systems dynamics would deal with the key relationships as auxiliaries, but econometrics would recognize them as equations that require empirical estimation.[1]
Key Aggregate Relationships. Life expectancy or mortality is a key aggregate relationship, clearly a function of income, perhaps education, and certainly of technological change. Aggregate Relationships are often actually Agent-Class behaviors that have not yet been decomposed enough to represent in terms of a single agent class. For instance, life expectancy is a function of government and firm spending on R&D as well as household life-style choices; it could eventually be decomposed to the agent-class level.
Key Agent-Class Behavioral Relationships. For example, in the case of fertility, there is one primary agent-class, namely households, whose behavior, as a function again of income, education, and technology, will change over time.
Agent-classes versus micro agents. IFs is not agent-based in the sense of models that represent individual micro-agents following rules and generating structures through their behavior. Instead, IFs represents both existing macro-agent classes and existing structures (with complex historic path dependencies), attempting to represent some elements of how behavior of those agents can change and how the structures can evolve. Although building aggregate model behavior and structure upward from micro agent behavior is laudable in more narrowly-focused models, global systems and structures are far too numerous and well-developed for such efforts to succeed across the breadth of concerns in IFs.
In representing the behavior of agent classes and the structures of systems, IFs draws upon large bodies of insight in many theoretical and modeling literatures. Although IFs sometimes breaks new ground with respect to specific sub-systems, its strengths lie primarily in the integration and synthesis of much earlier work.
- ↑ Bremer, Stuart A. 1977. Simulated Worlds: A Computer Model of National Decision-Making. Princeton: Princeton University Press.
Equation Notation
Variable names are shown in all capitals, as in the display functions of the model. Parameters are shown in lower case and boldface. Empirically-based initial conditions of variables are in capitals with boldface. Internal computed variables, which are not available for display, are shown in mixed upper and lower case.
At one time the project used a superscript of "t" to indicate time/year. Although it has mostly moved that to subscripts, it may sometimes still be found in project documentation. Superscripts other than "t" indicate exponentiation. Subscripts or superscripts with "t" indicate time, but will be omitted when a reference is contemporary to model year "t."
Subscripts show dimensionality and there are a number of standard ones in the model:
- r for region/country r = 1,2,... (e.g., United States, European Union, Japan, Brazil...)
- c (sometimes the project uses j) for age cohort c/j = 1,2,...,22 (infant, 0-4 years,...95-99 years, 100+ years; abbreviated set for World Value Survey variables)
- s for economic sector s = 1,2,3,4,5,6 (agriculture, energy, materials, manufactures, services, ICT)
- f for food types f = 1,2 (crops, meat/fish)
- l for land types l = 1,2,3,4,5 (crop, grazing, forest, unused, urban/industrial)
- e for energy types e = 1,2,3,4,5,6,7 (oil, gas, coal, hydroelectric, nuclear, other renewable, unconventional oil)
- g for govt spending g = 1,2,3,4,5,6 (military, health, education, R&D, other, foreign aid)
- p for population sex p=1,2 (male, female)
- ss for safe water and sanitation ladder categories
- d for cause of death (15 in total)
- dg for cause of death group dg=1,2,3 (communicable, non-communicable, injuries/accidents)
- h for household types h=1,2 (unskilled, skilled)
Individual equations specify a range of dimensionality only if it differs from that above.
IFs Issues and Modules: Quick Survey
The population module:
- represents 22 age-sex cohorts to age 100+
- calculates change in fertility and mortality rates in response to income, income distribution, and analysis multipliers
- computes average life expectancy at birth, literacy rate, and overall measures of human development (HDI) and physical quality of life
- represents migration and HIV/AIDS
- includes a newly developing submodel of formal education across primary, secondary, and tertiary levels
The economic module:
- represents the economy in six sectors: agriculture, materials, energy, industry, services, and ICT (other sectors could be configured, using raw data from the GTAP project)
- computes and uses input-output matrices that change dynamically with development level
- is a general equilibrium-seeking model that does not assume exact equilibrium will exist in any given year; rather it uses inventories as buffer stocks and to provide price signals so that the model chases equilibrium over time
- contains an endogenous production function that represents contributions to growth in multifactor productivity from R&D, education, worker health, economic policies ("freedom"), and energy prices (the "quality" of capital)
- uses a Linear Expenditure System to represent changing consumption patterns
- utilizes a "pooled" rather than the bilateral trade approach for international trade
- is being imbedded during 2002 in a social accounting matrix (SAM) envelope that will tie economic production and consumption to intra-actor financial flows
The agricultural module:
- represents production, consumption and trade of crops and meat; it also carries ocean fish catch and aquaculture in less detail
- maintains land use in crop, grazing, forest, urban, and "other" categories
- represents demand for food, for livestock feed, and for industrial use of agricultural products
- is a partial equilibrium model in which food stocks buffer imbalances between production and consumption and determine price changes
- overrides the agricultural sector in the economic module unless the user chooses otherwise
The energy module:
- portrays production of six energy types: oil, gas, coal, nuclear, hydroelectric, and other renewable
- represents consumption and trade of energy in the aggregate
- represents known reserves and ultimate resources of the fossil fuels
- portrays changing capital costs of each energy type with technological change as well as with draw-downs of resources
- is a partial equilibrium model in which energy stocks buffer imbalances between production and consumption and determine price changes
- overrides the energy sector in the economic module unless the user chooses otherwise
The two socio-political sub-modules:
Within countries or geographic groupings
- represents fiscal policy through taxing and spending decisions
- shows six categories of government spending: military, health, education, R&D, foreign aid, and a residual category
- represents changes in social conditions of individuals (like fertility rates or literacy levels), attitudes of individuals (such as the level of materialism/postmaterialism of a society from the World Value Survey), and the social organization of people (such as the status of women)
- represents the evolution of democracy
- represents the prospects for state instability or failure
Between countries or groupings of countries
- traces changes in power balances across states and regions
- allows exploration of changes in the level of interstate threat
- represents possible action-reaction processes and arms races with associated potential for conflict among countries
The implicit environmental module:
- is distributed throughout the overall model
- allows tracking of remaining resources of fossil fuels, of the area of forested land, of water usage, and of atmospheric carbon dioxide emissions
The implicit technology module:
- is distributed throughout the overall model
- allows changes in assumptions about rates of technological advance in agriculture, energy, and the broader economy
- explicitly represents the extent of electronic networking of individuals in societies
- is tied to the governmental spending model with respect to R&D spending
IFs Background
International Futures (IFs) has evolved since 1980 through three "generations," with a fourth generation now taking form.
The first generation had deep roots in the world models of the 1970s, including those of the Club of Rome. In particular, IFs drew on the Mesarovic-Pestel or World Integrated Model (Mesarovic and Pestel 1974). The author of IFs had contributed to that project, including the construction of the energy submodel. IFs consciously also drew on the Leontief World Model (Leontief et al. 1977), the Bariloche Foundation’s world model (Herrera et al. 1976), and Systems Analysis Research Unit Model (SARU 1977), following comparative analysis of those models by Hughes (1980). That generation was written in FORTRAN and available for use on main-frame computers through CONDUIT, an educational software distribution center at the University of Iowa. Although the primary use of that and subsequent generations was by students, IFs has always had some policy analysis capability that has appealed to specialists. For example, the U.S. Foreign Service Institute used the first generation of IFs in a mid-career training program.
The second generation of International Futures moved to early microcomputers in 1985, using the DOS platform. It was a very simplified version of the original IFs without regional or country differentiation.
The third generation, first available in 1993, became a full-scale microcomputer model. The third generation improved earlier representations of demographic, energy, and food systems, but added new environmental and socio-political content. It built upon the collaboration of the author with the GLOBUS project, and it adopted the economic submodel of GLOBUS (developed by the author). GLOBUS had been created with the inspiration of Karl Deutsch and under the leadership of Stuart Bremer (1987) at the Wissenschaftszentrum in Berlin.
The third generation has produced three editions/major releases of IFs, each accompanied by a book also called International Futures (Hughes 1993, 1996, 1999). The second edition moved to a Visual Basic platform that allowed a much improved menu-driven interface, running under Windows. The third edition incorporated an early global mapping capability and an initial ability to do cross-sectional and longitudinal data analysis.
The fourth generation has been taking shape since early 2000. It has been heavily influenced by the usage of the model in an increasingly policy-analysis mode by several important organizations. First, General Motors commissioned a specialized version of IFs named CoVaTrA (Consumer Values Trends Analysis) with a need for updated and extended demographic modeling and representation of value change. An alliance was established with the World Values Survey, directed by Ronald Inglehart, to create that version. Second, the Strategic Assessments Group of the Central Intelligence Agency commissioned a specialized version named IFs for SAG. The work involved in preparing that greatly extended and enhanced the socio-political representations of the model, both domestic and international. Third, the European Commission sponsored a project named TERRA which has led to a specialized version named IFs for TERRA. IFs for TERRA work led to enhancements across the model, including improved representation of economic sectors, updated IO matrices and a basic Social Accounting Matrix, GINI and Lorenz curves, and preparing for extended environmental impact representation (drawing upon the Advanced Sustainability Analysis framework of the Finland Futures Research Center).
Throughout this emergence of a fourth generation IFs (incorporating all of the above elements for additional users) there has been also a heavy emphasis on enhanced usability. Ideas from Robert Pestel in the TERRA project led to the creation of a new tree-structure for scenario creation and management. Ideas from Ronald Inglehart led to the development of the Guided Use structure and a somewhat more game-like character within that structure. Inglehart also help arrange funding to support the programming of Guided Use through the European Union Center of the University of Michigan.
The fifth version of IFs is currently in use and represents broad strides to improving the model and its usability. It is the first version of this software to be placed online due to the help of the National Intelligence Council (http://www.ifs.du.edu). Also, usability has been increased as Packaged Displays and Flex Packaged Displays were introduced that allowed for the creation of very specific lists of countries/regions, groups or Glists. A new education model has also been incorporated into the broader IFs model. New scenarios were created for UNEP (focusing on environmental change) and Pardee (focusing on poverty). Finally, one of the largest changes made was incorporating 182 countries into the Base-Case scenario used by IFs. Previous versions of IFs used broader regions to forecast global trends. This change also did away with the Student and Professional versions.
Geographic Representation of the World
186 countries underpin the functioning of IFs and these countries can be displayed separately or as parts of larger groups that users can determine.
*Note: In older versions of IFs, Regions were used as intermediaries between Countries and Groups. In the future, they, or some similarly named unit, will be a sub-unit of Countries. Regions, acting as a sub-unit of Countries, are currently not a feature of IFs.
When using IFs, there are many occasions where the user is asked whether or not they would like to display their results as a product of single countries, or larger groups. This is typically a toggle switch that moves between Country/Region and Groups, however, it might be a three-way-toggle that includes Country/Region, Group and Glist.
Countries/Regions are currently the smallest geographical unit that users can represent. The ability to split countries down into smaller regions, or states, is under development. There are 186 different countries/regions that users can display.
Groups are variably organized geographically or by memberships in international institutions/regimes. You can find out who is represented in each group and add or delete members by exploring the Managing Regionalization function.
Glists merge both Groups and Countries/Regions. These lists are mostly geographically bound. In the future, the Glist distinction will become more important as some users may want to place, for example, both the Indian state of Kerala in a Glist with Sri Lanka and Nepal.
Users may also want to create their own groups or explore what countries are members of what groups.
IFs Time Horizon
Future Forecasts. IFs begins computation with data from 2000 and can dynamically calculate values for all variables annually through 2100.
Historical Analysis and "Forecasts." IFs also includes an extensive and growing historical data base starting in 1960. The data basis allows analysis of relationships among variables across countries and across time.
Instructional Use
The standard modes for using IFs in a classroom are:
- 1. Assigning class members to an issue area or topic. Consider identifying specific questions for them to address.
- 2. Assigning class members to a country/geographic region. Again, specificity helps.
Most often, students will work independently or in groups on projects and share information after completing them. It is possible, however, to have students work interactively, by assigning them topics or regions, letting them begin work, and then have the interacting groups (or individuals) create a collective model run with the changes that each group proposes by topic or region. That process, although more difficult to organize, allows the class as whole to investigate the interaction of their topics or regions (and to share learning about model use).
There is a web site available in support of the educational use of IFs. You will find syllabi at that site. There are several publications on IFs, including a book structured specifically for educational use.
Donald Borock has described his classroom use of IFs in print. Borock, Donald. 1996. "Using Computer Assisted Instruction to Enhance the Understanding of Policymaking," Advances in Social Science and Computers 4, 103-127.
Acknowledgements
The author gratefully recognizes critical contributions in the forms of:
- 1. Testing and suggestions for development of IFs in one or more of multiple generations. By Donald Borock, Richard Chadwick, William Dixon, Dale Rothman, Phil Schrodt, Douglas Stuart, Donald Sylvan, Jonathan Wilkenfeld, and Ronald Inglehart.
- 2. Computer assistance across many releases. By Michael Niemann, Terrance Peet-Lukes, Douglas McClure, Mohammod Irfan, and Jose Solorzano.
- 3. Data gathering and general assistance. By James Chung, Padma Padula, Shannon Brady, David Horan, Michael Ferrier, Kay Drucker, Warren Christopher, and Anwar Hossain.
- 4. Long-term encouragement and support. By Harold Guetzkow, Karl Deutsch, Richard Chadwick, Gerald Barney, and Ronald Inglehart.
- 5. Association in related world modeling projects and projects building upon IFs. By Mihajlo Mesarovic, Aldo Barsotti, Juan Huerta, John Richardson, Thomas Shook, Patricia Strauch, and other members of the World Integrated Model (WIM) team. By Stuart Bremer, Peter Brecke, Thomas Cusack, Wolf Dieter-Eberwein, Brian Pollins, and Dale Smith of the GLOBUS modeling project. By Evan Hillebrand, Paul Herman, and others of the IFs for SAG project. By Rob Lempert and Steve Bankes at RAND, Santa Monica. By Robert Pestel, Jonathan Cave, Ronald Inglehart, Sergei Parinov, Pentti Malaska, and many others in the IFs for TERRA project.
- 6. Financial assistance (without responsibility for the form of the evolving product). By the National Science Foundation, the Cleveland Foundation, the Exxon Education Foundation, the Kettering Family Foundation, the Pacific Cultural Foundation, the United States Institute of Peace, General Motors, the Strategic Assessments Group of the Central Intelligence Agency, the European Commission (Information Society Technology) Programme, the European Union Center of the University of Michigan, the National Intelligence Council (for web conversion), and Frederick S. Pardee.
Feedback
Feedback on how to improve IFs is always appreciated, especially if you find something that is not working. Compliments are also accepted. Please contact. To send the IFs team an e-mail, click on Pardee Center in stand-alone versions or on the web.