480 likes | 623 Views
Pietro Terna pietro.terna@unito.it Department of Economics and Finance “G.Prato” University of Torino - Italy Decision making and enterprise simulation with jES and Swarm web.econ.unito.it/terna web.econ.unito.it/terna/jes. jES. _jVE->JES.
E N D
Pietro Ternapietro.terna@unito.it Department of Economics and Finance “G.Prato” University of Torino - Italy Decision making and enterprise simulation with jES and Swarm web.econ.unito.it/terna web.econ.unito.it/terna/jes jES SwarmFest, Notre Dame
_jVE->JES _______________________________________ jVE jES _______________________________________ SwarmFest, Notre Dame
jVE->jES From jVE … Virtual Enterprise ?? … to jES Enterprise Simulator • With jES we can simulate: • actual enterprises • virtual enterprises • (as “would be” enterprises or in the direction of the NIIIP project, see below) www.flightgear.org SwarmFest, Notre Dame
_overview _______________________________________ Overview _______________________________________ SwarmFest, Notre Dame
overview 1 Overview 1/2 jES, java Enterprise Simulator (formerly jVE, java Virtual Enterprise), is a large Swarm-based package[1] aimed at building simulation models both of actual enterprises and of virtual ones. On the first side, the simulation of actual enterprises, i.e. the creation of computational models of those realities, is useful for the understanding of their behavior, mainly in order to optimize the related decisional processes. On the other side, through virtual enterprises we can investigate how firms originate and how they interact in social networks (Burt, 1992; Walker et al., 1997) of production units and structures, also in “would be” situations. In both cases, following Gibbons (2000), we have to overcome the basic economic model of the firm, i.e. a black box with labor and physical inputs in one end and output on the other, operating under the hypothesis of minimum cost and maximum profit. Simulation models – such as jES – represent the most appropriate tool to be used in this direction. [1] Download last version from http://web.econ.unito.it/terna/jes SwarmFest, Notre Dame
overview 2 Overview 2/2 Agents, in jES, are objects like the orders to be produced and the production units able to deal with the orders. In the same context, there are also agents representing the decision nodes, where rules and algorithms (like GA or CS), or avatars[1] of actual people, act. In the case of avatars, decisions are taken asking actual people what to do: in this way we can simulate the effects of actual choices; we can also use the simulator as a training tool and, simultaneously, as a way to run economic experiments to understand how people behave and decide in organizations. This is the big Simon’s (1997) question. Some recent improvements of jES are outlined in the presentation. [1] From www.babylon.com: s. avatar (Hindu mythology) earthly incarnation of a god, human embodiment of a deity; (Internet) online image that represents a user in chat rooms or in a virtual “space”. SwarmFest, Notre Dame
_jES principles _______________________________________ jESprinciples _______________________________________ SwarmFest, Notre Dame
jES principles 1 jES principles 1/3 The goals With the simulator we want to reproduce in a detailed way the behavior of a firm into a computer. The basis of the method has to be found into agent based simulation techniques, i.e. the reconstruction of a phenomenon via the action and interaction of minded or no minded agents within a specific environment, with its rules and characteristics. In our cases, we have both no minded agents - as things to be done (orders) or units able to work with them - and minded - as the agents who have to express decisions within the model -. Simulating a single enterprise or a system of enterprises (e.g. within a district or within a virtual enterprise system) we can apply in a direct way the ‘what if’ analysis introducing changes into the simulation, while fully preserving the complexity of our context. SwarmFest, Notre Dame
jES principles 2 jES principles 2/3 Why agents and what kind of tool? Only in a true agent based context, with independent pieces of software expressing the different behavior of all the components of our environment (a firm), we can overtake the traditional limitation of models founded on equations (differential equations or recursive ones) where the granularity of the description is strongly compelled by the limitations of the method. We are interested in using a plurality of tools, with Swarm at the first place, to build our models. We must also interact in a correct way with actual enterprise’s data and for that we want to develop easy to use interfaces based on the XML formalism. SwarmFest, Notre Dame
jES principles 3 jES principles 3/3 Perspectives and results Perspectives and results of our models are along three directions. Enterprise optimization, also via soft computing tools as genetic algorithms and classifier systems, and what-if analysis: when we use a genetic algorithm or a classifier system in a simulation framework, the fitness of the evolved genotype or the evolved rules is evaluated running the simulator. Interaction between people and the model, through artificial agents representing the actual ones, with two purposes: to study how people behave in organizations, with experiments build using the simulator; to train people about the consequences of their decision within an organization. Theoretical analysis of “would be” situations of enterprises and their interactions, to increase the knowledge about how firms start, behave and decline. SwarmFest, Notre Dame
_WD, DW, WDW _______________________________________ WD, DW, WDW _______________________________________ SwarmFest, Notre Dame
WD, DW, WDW WD side or formalism: What to Do DW side or formalism:whichisDoingWhat WDW formalism: When Doing What SwarmFest, Notre Dame
A dictionary dictionary unit = a productive structure within or outside our enterprise; a unit is able to perform one or more of the steps required to accomplish an order order = the object representing a good to be produced; an order contains technical information (the recipe describing the production steps) and accounting data recipe = a sequence of steps to be executed to produce a good SwarmFest, Notre Dame
_DW: a flexible scheme _______________________________________ DW: a flexible scheme _______________________________________ SwarmFest, Notre Dame
DW: a flexible scheme 1 DW 1 Units … 1,3,4 5 3 3 3 1,2,5 1 2 1 2 SwarmFest, Notre Dame
DW: a flexible scheme 2 DW 1 Units and Firms … 1,3,4 5 3 3 3 1,2,5 1 2 1 2 SwarmFest, Notre Dame
DW: a flexible scheme 3 DW 1 … in a district … 1,3,4 5 3 3 3 1,2,5 1 2 1 2 SwarmFest, Notre Dame
DW: a flexible scheme 4 DW The NIIIP project (National Industrial Information Infrastructure Protocols ) http://www.niiip.org/ 1 … or building up a virtual enterprise 1,3,4 5 3 3 3 1,2,5 1 2 1 2 SwarmFest, Notre Dame
_WD: recipes _______________________________________ WD: recipes _______________________________________ SwarmFest, Notre Dame
WD: recipes WD SwarmFest, Notre Dame
_a simple example with WD, DW and WDW _______________________________________ A simple example with WD, DW and WDW _______________________________________ SwarmFest, Notre Dame
a simple example 0 the recipes the starting sequence WDW the continuous sequence (empty) t=0 100 100 100 101 Building a sequential batch DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 1 the recipes WD the starting sequence WDW the continuous sequence (empty) t=1 100 100 100 101 Sequential batch step 1/3 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 2 the recipes WD the starting sequence WDW the continuous sequence (empty) t=2 100 100 100 101 Sequential batch step 2/3 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 3 the recipes WD the starting sequence WDW the continuous sequence (empty) t=3 101 100 100 100 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 4 the recipes WD the starting sequence WDW the continuous sequence (empty) t=4 100 100 100 101 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 5 the recipes WD the starting sequence WDW the continuous sequence (empty) t=5 100 100 100 101 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 6 the recipes WD the starting sequence WDW the continuous sequence (empty) t=6 100 100 100 101 Building a sequential batch DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 7 the recipes WD the starting sequence WDW the continuous sequence (empty) t=7 100 100 100 101 Sequential batch step 1/2 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 8 the recipes WD the starting sequence WDW the continuous sequence (empty) t=8 100 101 100 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 9 the recipes WD the starting sequence WDW the continuous sequence (empty) t=9 100 101 100 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
a simple example 10 the recipes WD the starting sequence WDW the continuous sequence (empty) t=10 100 100 DW 1 2 3 10 a production unit an end unit SwarmFest, Notre Dame
_a complex example: the VIR case _______________________________________ A complex example: the VIR case _______________________________________ SwarmFest, Notre Dame
VIR 1 VIR (a firm producing valves, to regulate the flow of liquids and gas) Basic case (with unitCriterion=2) SwarmFest, Notre Dame
VIR 2 VIR Adding 3 complex units in the lathe sector SwarmFest, Notre Dame
_the decision process _______________________________________ The decision process _______________________________________ SwarmFest, Notre Dame
decision process 1 1 How to decide? 1,3,4 5 3 3 3 1,2,5 1 2 1 2 SwarmFest, Notre Dame
decision process 2 • In a random way • Using fixed rules • Using an expert system • Via soft computing techniques (GA & CS) • Asking to an actual agent what to do (training and monitoring actual agents’ behavior) How to decide? SwarmFest, Notre Dame
_new tools: recipes and layers, computational objects _______________________________________ New tools: recipes and layers, computational objects _______________________________________ SwarmFest, Notre Dame
recipes and layers Recipes and layers SwarmFest, Notre Dame
computational objects 1 Computational objects Memory matrixes data are reported in a text file (unitData/memoryMatrixes.txt) number(from_0_ordered;_negative_if_insensitive_to_layers)_rows_cols 0 2 3 -1 3 5 2 4 1 3 3 1 Mandatory first line SwarmFest, Notre Dame
computational objects 2 Computational objects Recipes with computations (recipes are reported in external and intermediate format) time specification: seconds External format (remember: step, time specification, time): 1 s 1 c 1999 3 0 1 3 2 s 2 3 s 2 1 s 1 c 1998 1 0 5 s 2 1 s 1 c 1998 1 1 6 s 2 1 s 1 c 1998 1 3 7 s 2 step in recipe a step with computation: step 2, requiring 2 seconds, involve computation 1999 with 3 matrixes (those numbered 0, 1, 3 in the previous Figure) time in seconds a step with computation: step 7, requiring 2 seconds, involve computation 1998 with 1 matrix (that numbered 3 in the previous Figure) SwarmFest, Notre Dame
computational objects 3 Computational objects The Java Swarm code used by the recipes with computations of this example /** computational operations with code -1998 (a code for the checking * phase of the program) * * this computational code place a number in position 0,0 of the * unique received matrix and set the status to done */ public void c1998(){ mm0=(MemoryMatrix) pendingComputationalSpecificationSet. getMemoryMatrixAddress(0); layer=pendingComputationalSpecificationSet. getOrderLayer(); mm0.setValue(layer,0,0,1.0); mm0.print(); done=true; } // end c1998 SwarmFest, Notre Dame
_other tools _______________________________________ Other tools _______________________________________ SwarmFest, Notre Dame
other tools Other tools: Stand alone batches Procurements (as seen above) Parallel paths (AND formalism) Multiple paths (OR formalism) SwarmFest, Notre Dame
_references _______________________________________ References _______________________________________ SwarmFest, Notre Dame
references References Burt R.S. (1992), Structural Holes – The Social Structure of Competition. Cambridge, MA, Harvard University Press. Gibbons R. (2000), Why Organizations Are Such a Mess (and What an Economist Might Do About It). A draft of the first Charter is at http://web.mit.edu/rgibbons/www/ Simon H.A. (1997), Administrative Behavior: A Study of Decision-Making Processes in Administrative Organizations. Simon & Schuster, New York. Walker G., Kogut B., Shan W. (1997), Social Capital, Structural Holes and the Formation of an Industry Network, in Organization Science. Vol. 8, No. 2, pp.109-25. SwarmFest, Notre Dame
pietro.terna@unito.it web.econ.unito.it/terna web.econ.unito.it/terna/jes address again SwarmFest, Notre Dame