1 / 48

Ontology-based integrated socio-ecosystem simulation

Gary Polhill. Ontology-based integrated socio-ecosystem simulation. Outline. Introduction to Agent-Based Modelling Agent-Based Modelling in Socio-Ecosystems Issues in Agent-Based Modelling Introduction to Ontologies Ontologies in Agent-Based Modelling Towards an Architecture Conclusion.

feivel
Télécharger la présentation

Ontology-based integrated socio-ecosystem simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Gary Polhill Ontology-based integrated socio-ecosystem simulation

  2. Outline Introduction to Agent-Based Modelling Agent-Based Modelling in Socio-Ecosystems Issues in Agent-Based Modelling Introduction to Ontologies Ontologies in Agent-Based Modelling Towards an Architecture Conclusion

  3. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  4. Agent-Based Modelling Economics Complex Systems Theory Classical theories don’t always work Individuals and interactions matter Explore theory more formally Exploit social theory in CS Social Science Distributed AI

  5. What is an Agent? Various answers... Purposive, goal seeking, intelligent, autonomous, program (software agents, AO design) Stricter sense of encapsulation than OO Interaction using a language (e.g. KQML) Anything in a program representing an individual in the real world (object, OO design) Emphasis on representation within the program rather than within the network Interaction using method or function calls Grid cell (Cellular Automata) Disaggregated spatial representation Doesn’t represent a specific thing in the real world!

  6. Complex Systems Arthur, Durlauf and Lane (1997) draw on Holland’s term ‘adaptive nonlinear network’ to describe properties of economic systems that are challenging to mathematical modelling Dispersed interaction No global controller of interactions Multiple, partially interacting layers of structure Continual adaptation Perpetual novelty Out-of-equilibrium dynamics Other terms Self-organisation, self-organised criticality • There are no authoritative definitions of Complex Systems, though many draw on the work of John Holland • Holland (1991) describes a complex system thus: • Consists of a network of interacting agents • Exhibits a dynamic aggregate behaviour emerging from agents’ activities • Aggregate behaviour can be described without a detailed knowledge of agents’ behaviour • A complex adaptive system then has two further properties: • Agents act in an environment that feeds back a consequent ‘value’ to them • fitness, payoff, utility • Agents behave so as to increase this value over time

  7. Statistical signatures of CAS • Leptokurtosis • Fat tailed distributions (relative to normal) • Extreme events more likely • Heteroskedasticity • Variance is not constant across observations • Power law distributions • Interesting because they are scale-free • Bad news for those who think complexity is a scale issue… • Variance, skewness and kurtosis are infinite • i.e. they increase rather than converge with increasing sample size • For some power law distributions, even the mean can be infinite

  8. ABM and Complex Systems £ • Heterogeneity of agents cannot be ignored… • It does not ‘average out’ • Differences do not ‘cancel’ • …because aggregate structure ‘emerges’ from interactions • Predictions of aggregate structure impossible, intractable or meaningless without knowledge of underlying behaviour • Indeed, particularly in human social systems, individuals are conscious of and respond to aggregate structure £ ? t

  9. Economics and ABM • The ABM community exist on a spectrum in their attitude towards economics: • “Economics, as developed over the past half-century and more, is not usefulfor the analysis and support of formal policy; it should simply be ignored by serious social scientists” [Moss, 1999] • ABM as a branch of computational economics allowing the study of non-rational agents [Axtell, 2000] • Most, however, would see ABM as distinct from neoclassical economics in: • Emphasising the importance of agent heterogeneity • Emphasising the significance of agent interactions • Emphasising heuristic, cognitively plausible or boundedly rational modes of human decision making • Less concern with equilibria

  10. Farm decisions aren’t all economic • The Guardian, UK, Tuesday 24 April 2007 In 1995, producers got 24.5p a litre for their milk; the average today is 18p a litre, which represents a loss of more than 3p on every litre. Kemble Farms has been getting 19p a litre. … The irony for Colin Rank, one of the family that owns Kemble Farms, is that his cows drink water from a Cotswold spring that he could bottle and sell for 80p a litre. “We're giving it to cows and devaluing it by turning it into milk. Like all dairy farmers we could pack up tomorrow and do something better with our capital, but we do it because we have an emotional investment in the land and the animals. And we know there's a market for our product, if only the market worked.” [Felicity Lawrence]

  11. DAI and ABM • Properties of agents [Gilbert & Troitzsch, 1999] • Knowledge & belief • Inference • Social models • Knowledge representation • Goals • Planning • Language • Emotions • Intentional agents [Wooldridge & Jennings, 1995] • “An agent is a system that is most conveniently described by the intentional stance” • Direct inheritance from AI thinking The Intentional Stance[Dennett] Something is intelligent if its behaviour is “most conveniently” described in terms of beliefs, desires and intentions

  12. Contrasting approaches in ABM • KISS: Keep It Simple, Stupid • Preference for simple models, often very simple agents • Main idea is to explore the minimum conditions needed for some aggregate phenomenon to occur • Criticise more complex models for being difficult to study • Occam’s razor often applied… • KIDS [Edmonds and Moss, 2004]: Keep It Descriptive, Stupid • Logically, things are not true purely because they are simple • Models should be as complex as needed to adequately describe phenomena • Emphasis is on the evidence

  13. Computer Science • ABM needs computer science for: • Pseudo random number generation • Scheduling • User interface • Statistical analysis • Handling floating-point arithmetic • Parallel processing • Managing multiple runs • Data structures and algorithms for improving performance • Best practice • Version control, documentation • Hence development and widespread use of libraries and modelling environments • Swarm, MASON, RePast, NetLOGO • Some do start from scratch • This is not recommended practice!

  14. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  15. Coupling models loosely coupled model submodel 1 submodel 3 submodel 2 closely coupled model submodel 1 submodel 3 submodel 2 Integrated model • Various approaches to coupling [Antle et al. 2001] • Loose coupling • Swap variables • Close coupling • Swap variables • Share subprocesses • Fully integrated • Coupled models • Submodels dictate spatial and temporal scales • Clashes of underlying assumptions • Multiple sources of the same data • Overlap in functionality • Hacking code to make it work interferes with functionality • BUT: cheap! • Integrated is better • BUT: expensive!

  16. Two examples • FEARLUS • Framework for Evaluation and Assessment of Regional Land Use Scenarios • [Gotts & Polhill, 2003; Polhill & Gotts, 2001] • Agent based model of land use change • Mostly studied innovation and imitation • CAMEL • Spatially explicit hydrochemical model • With FEARLUS: impacts of land use decisions on phosphorus pollution • SPOMM • Species metacommunity model • With FEARLUS: impacts of land use decisions on biodiversity

  17. FEARLUS £ Land use selection Calculation of returns Land use Biophysical properties Land Uses Climate Estimated Yield Yield P runoff Yearly Cycle Market Reward Estimated Social Acceptability Income Social Neighbourhood After Before Land sales & updating Approving/ Disapproving

  18. CAMEL Active Organic P Stable Organic P (Humus) Labile P Labile P Labile P Stable Mineral P Active Mineral P Active Mineral P Active Mineral P AQUIFER CHANNEL Slow Sorption Stable Mineral P Stable Mineral P Decomposition SOIL Mineralisation Plant Residue Excretion + Manure Fertiliser Immobilisation Uptake Rapid Sorption Slow Sorption Rapid Sorption Rapid Sorption Slow Sorption Models Phosphorus transformation processes and flow of water in a catchment

  19. A Challenge Clash of scale... ...& model Evapotranspiration rate Climate (daily) CAMEL P runoff Crop model Crop model LU map Climate (yearly) FEARLUS Yield at harvest

  20. More successful coupling Loose Coupling Close Coupling Bankruptcies Land Use selection Exchange of Land Update economy FEARLUS Update climate Learning Approval/Disapproval Extinction Crop Yield Updatehabitats SPOMM Harvest Government response Colonisation

  21. Preliminary results • SPOMM • 10 species (1 competitor), 2 habitats (5 spp each) • High/low dispersal rate • Fast/slow competition • FEARLUS • Case Based Reasoning for decision making in agents • Policy based on reward (or compensation) for biodiversity • Number of species on each field (>= 5, >=1) • Amount of reward per field (1000, 10000) • Economic return based on • Yield per unit area (0-100) • Price per unit yield (0-100) • 8 Land Uses with varying degrees of habitat availability

  22. Species (Low disp, Slow comp) S F+S Reward 1000 for >= 5spp Reward 10000 for >= 1spp Policy

  23. Land Use (Low disp, Slow comp) F F+S (10k;1)

  24. Coupling can work… • Coupling models can work if: • Good match of spatial and temporal scales • Similar level of abstraction in representation • No overlap in functionality • Consistent and coherent coupled ontology • How could we know when coupling is OK? • Or at least detect that it is not OK for some reason

  25. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  26. Issues with ABM: 1 • ‘Ad hocery’ • Programming languages give you too much freedom! • Use of libraries or standard development platforms • Lack of standards for documentation and communication of ABMs • ODD [Grimm et al., 2006] • Repeatability • Lack of standards can mean ABM results are difficult to replicate, though this is being addressed • Model-2-Model workshops • Forum of JASSS • Various papers replicating others work • [Edmonds & Hales 2003; Janssen, 2007; Galan & Izquierdo, 2005] • Replication usually requires interaction with the original developers

  27. Issues with ABM: 2 • Validation • How do you know the model is any good? Why should you ‘believe’ in it? • Belief is really in your assumptions… • Conceptual models may not be empirically verifiable • Validation may not be meaningful in open worlds • [Oreskes et al., 1994] • Participatory ABMs may be ‘stakeholder validated’ • Growing literature on validation of ABMs • Falsifiability • When will you reject a model? • Is a new version a different model? Assumptionsyou thinkyou made Assumptionsyou actuallymade

  28. Issues with ABM: 3 • Model structure • Models can be sensitive to seemingly arbitrary decisions • Scheduling • Spatial structure • Decision-making algorithms • Data • Large amounts of data are needed to specify the initial conditions and exogenous time series • Not always available • Confidentiality issue • Data from individual households should not be identifiable • Need to work with ‘stylised’ scenarios • Similar statistical properties, but hypothetical landscape • Prediction(?) • Outcomes of models better understood as ‘plausible narratives’ based on assumptions

  29. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  30. Ontologies • Not to be confused with Ontology [Philosophy] • The theory of what exists • An ontology is [CS] (Gruber, 1993)… • “A formal • Machine readable • explicitspecification • All relevant concepts and constraints are explicitly defined • of a shared • Consensual knowledge accepted by a group [debatable] • conceptualisation” • An abstract model of a real-world phenomenon

  31. OWL Ontologies hasParent(Human) hasParent(Dog) A A • OWL: Web Ontology Language • Concepts/Classes • Primitive • Defined • Properties • Datatype • Object • Annotation (metadata) • Restrictions • Individuals • Founded on Description Logics • Can be used with automated reasoning services • e.g. FaCT++, Tsarkov & Horrocks • Uses: • Concept satisfiability • Instance checking • Concept equivalence/subsumption • Ontology consistency nLegs dogmatix Animal Dog asterix Human hasParent description hasFather hasMother

  32. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  33. Various uses • Describing the structure of a simulation • What concepts are represented by objects in a simulation • What properties they have • Describing the state of a simulation • What individuals are in a simulation • How they relate to each other • Describing work with a simulation • Experiments [Pignotti et al., various] • Describing data used by a simulation • Describing links with other related work • Describing the modelling approach • …

  34. Ontology generation from code • Two options for ontology generation from code: • Use a separate parser to translate from OO programming language to OWL • Use the OO language’s ‘reflection’ capability to generate OWL code without parsing • Reflection allows access from within the program to information about classes, instance variables and methods • Ontology generation using reflection (naïve, trivial prototype mapping) • OO classes  OWL classes • OO inheritance  OWL subclass • OO instance variables (primitive datatypes)  OWL datatype properties • OO instance variables (objects)  OWL object properties • OWL (object & datatype) properties are not ‘encapsulated’ within OWL classes, so care is needed here • OO instances  OWL individuals • Some restrictions can also be defined from knowledge of OO paradigm • OO classes are disjoint (multiple inheritance aside, an instance of one class cannot be an instance of another). OWL classes are not unless specifically declared to be such • OO ivars that are declared to be instances of another specific class (e.g. Human x as opposed to anonymous type such as Object x (or in Obj-C id x)) can be restricted in OWL to belong to the corresponding OWL class

  35. Ontology generation from code hasParent(Human) hasParent(Dog) A A public class Animal { int nLegs; Animal mother; Animal father; String description; boolean hasParent(Animal a) { return (a == mother || a == father); } } public class Humanextends Animal { Human mother; Human father; } public class Dogextends Animal { Dog mother; Dog father; } Dog dogmatix; Human asterix; nLegs dogmatix Animal Dog asterix Human hasParent description hasFather hasMother

  36. Demonstration • Trivial reflection-based ontology generation implemented in FEARLUS (Obj-C Swarm) • Obj-C doesn’t officially have a ‘Reflection’ package as does Java, but much the same functionality can be achieved using the Obj-C API and underlying C datastructures • Three kinds of ontology: • ‘Framework’ ontology • Description of all the classes available in FEARLUS that may or may not be used in a particular model • ‘Model’ ontology • Description of the classes used by the instances in a particular model • ‘Model state’ ontology • ‘Imports’ the model ontology, and further provides descriptions of all the instances in a model at a certain time period • OWL visualisation tools available in Protégé can be used to view these ontologies

  37. Class hierarchy

  38. Model structure • Classes and links between them through object properties

  39. Exploring instances • Protégé GUI, instance browser

  40. Relationships among instances • Network of social approval (A) among land managers at a certain time in a FEARLUS model • Visualised using OntoViz (and an edited ontology to shorten nomenclature!)

  41. Evaluation • Useful, but… • Major issue pertains to differing semantics between OWL and OO • Primarily affects mapping of inheritance • OO inheritance ≠ OWL subclass • Much debate on this in CS literature of late 80s, early 90s • Cook, Hill & Canning (1990): Inheritance is not subtyping • LaLonde & Pugh (1991): Subclassing ≠ subtyping ≠ is-a • OWL may therefore have something to add to the description of ABMs that is not captured in formalisms based on OO such as UML • Differences between ivars and properties • Other issues in distinguishing between ‘ontologically significant’ classes (e.g. Land Managers) and algorithmically convenient classes (e.g. Hash Tables) • Some of these issues could be resolved using coding conventions • Imposing constraints on the way we program ABMs could in any case be an advantage

  42. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  43. Ontological coupling • Can we couple a model ‘ontologically’? • Represent the state at time T with an OWL ontology • Modular independent actions change that state • All variables they use must be in the ontology • Reasoning software can check consistency of integrated ontology ontologically coupled model ontology

  44. Actions • Actions are modular algorithmic components that change the state of a simulation • Actions are performed by an assigned individual in the state ontology • Actions need to assume certain information about those individuals exists • owl:equivalentClass and owl:equivalentProperty could be used to link vocabularies • Could use ontologies to describe these too • e.g. workflows • But result would not be much clearer than code • Just replaced Obj-C/Java with OWL descriptions of it • Engine implementing the model is hidden • Better to use ontologies to record metadata about Actions • What theories are they based on? • Where have the algorithms come from? • What other choices of Action perform similar tasks? • Ontologies/workflows could be used to describe schedule

  45. Advantages • Coupling • Can perform some checks that a proposed coupling of Actions provides a coherent model • Can also check changes to the state as they are made • Are Actions trying to make different changes to the same variable? • Links to an upper level ontology could be exploited to make further consistency checks • Transparency • Model structure exists independently (as an OWL ontology) from the code implementing it • It can be visualised using ontology tools • Not necessary to understand OWL or a programming language • Provenance of Actions makes it clearer where the model has come from • Replication should be easier • Less ad hocery • ‘Standard’ libraries of Actions could be developed, with metadata about their origins • Easier to swap and explore algorithmic variants to check sensitivity

  46. Issues… • Open World Assumption • Tricky for some actions—e.g. total yield for a farmer: perhaps there are other fields not mentioned • May need to assume closed world for the purposes of the model • Unique Name Assumption • Convenient in programming • Can workaround with many owl:differentFrom assertions • However… • Reasoner will not declare as inconsistent something that is consistent • Closed world allows us to make more inferences than open world • So… • Will not be able to say proposed coupling is definitely OK • But there will be inconsistencies and other issues it can detect • Definite NO, but not a definite YES

  47. Outline • Introduction to Agent-Based Modelling • Agent-Based Modelling in Socio-Ecosystems • Issues in Agent-Based Modelling • Introduction to Ontologies • Ontologies in Agent-Based Modelling • Towards an Architecture • Conclusion

  48. Conclusion • Agent based modelling allows explicit representation of individuals and their interactions • Coupling models and code reuse is challenging • Transparency and replicability of models are issues • OWL ontologies can be used to describe the ‘state’ of a model independently of its implementation • Allows association with context of the model • Models can be built in a more modular fashion to enable • OWL ontology representation of state • More transparent and replicable model • Easier to couple models and ensure consistency • Issues with different semantics in OO and OWL need to be handled carefully

More Related