Post on 31-Dec-2015
description
Coursework Master’s Coursework Master’s Thesis ProposalThesis Proposal
December 1999December 1999
University of South AustraliaUniversity of South Australia
School of Computer and Information ScienceSchool of Computer and Information Science
Student: David BennStudent: David Benn
Supervisor: Dan CorbettSupervisor: Dan Corbett
Implementing Conceptual Graph Processes Implementing Conceptual Graph Processes
David Benn, December 1999
2
PlanPlan
• Conceptual Graphs
• Mineau’s Processes
• Implementing Processes
• Research Issues
• High-level Timeline
• References
David Benn, December 1999
3
Conceptual GraphsConceptual Graphs• Sowa’s [1984] Conceptual Graphs (CGs)
represent knowledge via:– Concepts– Conceptual relations (relationships between
concepts)
David Benn, December 1999
4
Conceptual GraphsConceptual Graphs• Sowa’s theory provides primitives to
model static knowledge.
• Permits modification of knowledge base (KB) via Canonical Formation Rules, e.g.– Copy– Join– Simplify
David Benn, December 1999
5
Conceptual GraphsConceptual Graphsg1: [Feline: ](attr)[Carnivore]
g2: [Sitting]- (agent)[Cat: Elsie] (location)[Mat]
Join g1 and g2 to give g3
g3: [Sitting]- (agent)[Cat: Elsie]-
(attr)[Carnivore] (location)[Mat]
Feline
Cat Tiger Lion
David Benn, December 1999
6
ProcessesProcesses• Dynamic updating of KB falls outside of
scope of theory.
• Mineau [1998] proposed processes as an extension to overcome this lack.
• Need arose from a R&D project to
capture knowledge about corporate
processes, e.g. fabrication of windows [Gerbe´, Keller & Mineau 1998].
David Benn, December 1999
7
ProcessesProcesses
From [Gerbe´, Keller & Mineau 1998]
• Activity dependencies.• Inputs, outputs.• Precondition: before a
window can be assembled, a fabrication order must have been updated with frames and panes which conform to client order.
• Postconditions: when a frame is built, fabrication order is updated; likewise when a window pane is cut.
David Benn, December 1999
8
ProcessesProcesses• [Gerbe´, Keller & Mineau 1998] outlined
a definition of processes in terms of activities and events but said nothing about mechanism.
• [Mineau 1998] introduced mechanism for processes in which:– Dynamic knowledge represented as state
transitions via pre and post conditions.– Applying postconditions consists of asserting
or retracting CGs in KB.
David Benn, December 1999
9
ProcessesProcesses• Actors and demons are specialisations of
processes.– Actors take concepts and compute
individuals of pre-determined concept type. – Demons take concepts and return arbitrary
concept instances.– Processes take CGs as input and return
arbitrary CGs.
• Mineau emphasises simple process primitives which can be extended.
David Benn, December 1999
10
Processes: mechanismProcesses: mechanism• A process consists of a rule set.
• Each rule is a pre/post condition pair.
• Process engine finds matching rule via preconditions and applies postconditions.
• Process takes ≥ 1 CG parameters, yields ≥ 1 CG outputs, asserts/retracts CGs.
process p (in g1...; out g2...) is { ri = prei;posti ,∀i ∈ 1,n[ ] }
David Benn, December 1999
11
Processes: mechanismProcesses: mechanismA trivial algorithm:L0: int n = 1;
L1: while (n <= 10)
L2: n = n + 1;
Rule 0:
Pre0:[Line: L0](to_do)
Post0:[Integer: 1](value)[Variable:*n][Line: L0](done)[Line: L1](to_do)
[Mineau 1998] gives long partial definition for iterative factorial.
Following shows example rule set.
Trigger: [Line: L0](to_do)
David Benn, December 1999
12
Processes: mechanismProcesses: mechanismRule 1a:
Pre1a:
[Line: L1](to_do)[Boolean: True]< ≤ >-
1-[Variable: *n] 2-[Integer: 10]
Post1a:
[Line: L1](done)[Line: L2](to_do)
actor
A trivial algorithm:L0: int n = 1;
L1: while (n <= 10)
L2: n = n + 1;
David Benn, December 1999
13
Processes: mechanismProcesses: mechanismRule 1b:
Pre1b:
[Line: L1](to_do)[Boolean: False]< ≤ >-
1-[Variable: *n] 2-[Integer:
10]
Post1b:
[Line: L1](done)
A trivial algorithm:L0: int n = 1;
L1: while (n <= 10)
L2: n = n + 1;
David Benn, December 1999
14
Processes: mechanismProcesses: mechanismRule 2:
Pre2:
[Line: L2](to_do)
Post2:
[Variable: *n]-
(value)[Integer: *x]- < + >-
[Variable: *n] [Integer: 1]
[Line: L2](done)[Line: L1](to_do)
A trivial algorithm:L0: int n = 1;
L1: while (n <= 10)
L2: n = n + 1;
David Benn, December 1999
15
Implementing ProcessesImplementing Processes• “…there is only a theory which needs to
be refined, implemented, and applied.” [Mineau 1999b]
• Preliminary thoughts:– Need suitable way of expressing rules and processes
(i.e. a process language).
– Use Java for platform independence
– Use Notio framework [Southey & Linders 1999]• KBs, CGs, type lattices, CFRs, CGIF/LF reading/writing
– Use Mineau & Gerbe´’s [1997] contexts for rules.
David Benn, December 1999
16
Digression: ContextsDigression: Contexts
[Human: Fred] (believes) [Statement: #]
[Entity: Earth]–(attr)[Shape: flat](attr)[Location: center_of_universe]
intention
extension
• Sowa [1984] introduced PROPOSITION concept type where referent is set of CGs.
• Mineau & Gerbe´ [1997] formalised contexts.• Intention constrains CGs in extension. (WoA)• Can be used to structure a KB.• Equations to extract graphs by intention, etc.• See Appendix A for overview of contexts.
David Benn, December 1999
17
Research IssuesResearch Issues• How to represent processes
– Syntactically? Algorithmically?
– Can actors, demons, processes have one syntax & representation? Will latter be inefficient? (see p. 11)
• Retraction mechanism– (to_do) vs (done) in algorithm example– Erasure: replacing any CG with “blank”. [Sowa 1999]
• When should process engine stop?– Specify ≥ 1 rules upon which to stop?
– No more matching preconditions?
– Always run to completion or permit stop & restart?
David Benn, December 1999
18
Research Issues (continued)Research Issues (continued)• Interaction with other systems (e.g. CharGer
[Delugach 1999]): CG import, export.• Behaviour of implementation vs original
conception. What has Mineau missed?• Applicability of process mechanism
– [Mineau 1998] only gave factorial as example.
– Needs to be demonstrated on more complex application, e.g. business processes, something more interesting?
David Benn, December 1999
19
Other Research IssuesOther Research Issues• Automatic generation of rule sets. Difficult.• Soundness and completeness
– Do two postconditions conflict?
– [Mineau 1999a]: constraints on processes
• Conceptual Programming Environment– Logic and imperative programming.
– How does current work fit in with this goal (stated in [Mineau 1998])?
• Relationship to other work on dynamic CGs, dataflow languages, etc?
• Higher order processes?
David Benn, December 1999
20
TimelineTimeline• Literature Review
(February, March)• Scope & features
(April)• Design & implement
(May, June, July)• Examples (August,
September)– Factorial– Business processes etc
• Write thesis (October, November)
Lit. Review
Scope
Implement
Examples
Write thesis
David Benn, December 1999
21
ReferencesReferences[Delugach 1999] Delugach, H. CharGer: A Conceptual Graph Editor, [Accessed Online: December 1999], URL: http://www.cs.uah.edu/~delugach/CharGer/
[Gerbe´, Keller & Mineau 1998] Gerbe´, O., Keller, R., Mineau, G. Conceptual Graphs for Representing Business Processes in Corporate Memories. In Proceedings of the 6th International Conference on Conceptual Structures, pp. 401-415, 1998.
[Mineau & Gerbe´ 1997] Mineau, G. & Gerbe´, O. Contexts: A Formal Definition of Worlds of Assertions. In Proceedings of the 5th International Conference on Conceptual Structures, pp. 80-94, 1997.
[Mineau 1998] Mineau, G. From Actors to Processes: The Representation of Dynamic Knowledge Using Conceptual Graphs. In Proceedings of the 6th International Conference on Conceptual Structures, pp. 65-79, 1998.
[Mineau 1999a] Mineau, G. Constraints on Processes: Essential Elements for the Validation and Execution of Processes. In Proceedings of the 7th International Conference on Conceptual Structures, pp. 66-82, 1999.
David Benn, December 1999
22
References (continued)References (continued)[Mineau 1999b] Mineau, G. E-mail correspondence from Guy Mineau to David Benn, 1st December, 1999.
[Southey & Linders 1999] Southey, F. & Linders, J.G., Notio — A Java API for developing CG tools. In Proceedings of the 7th International Conference on Conceptual Structures, 1999.
[Sowa 1984] Sowa, J., F. Conceptual Structures: Information Processing in Mind and Machine, Addison-Wesley, 1984.
[Sowa 1999] Sowa, J.F. et al, Conceptual Graph Standard, draft proposed American National Standard (dpANS) NCITS.T2/98-003, 1999. [Accessed Online: November 1999], URL: http://www.bestweb.net/~sowa/cg/cgdpansw.htm
[Sowa 2000] Sowa, J., F. Knowledge Representation: Logical, Philosophical, and Computational Foundations, Brooks/Cole, 2000.