350 rub
Journal Information-measuring and Control Systems №12 for 2016 г.
Article in number:
Predicate representation of metagraph data model
Authors:
Yu.E. Gapanyuk - Ph.D. (Eng.), Associate Professor, Information Processing and Control Systems Department, Bauman Moscow State Technical University E-mail: gapyu@bmstu.ru G.I. Revunkov - Ph.D. (Eng.), Associate Professor, Computer Science and Control Systems Department, Bauman Moscow State Technical University E-mail: revunkov@bmstu.ru Yu.S. Fedorenko - Post-graduate Student, Information Processing and Control Systems Department, Bauman Moscow State Technical University E-mail: fedyura1992@yandex.ru
Abstract:
The article is devoted to the predicate representation of metagraph data model. Traditionally, predicate representation is used in logical programming languages. Currently, it is believed that the approach based on the predicate representation and predicate-based logical languages are obsolete. However, classical predicate form is convenient enough for syntax rep-resentation, as it resembles a function call in most programming languages. The syntax of predicate form is significantly less diverse than the syntax of functional programming languages, which simplifies learning of languages based on predicate form. However, the absence of named parameters should be attributed to the shortcomings of the classical predicate form. The opinion that logical programming languages are obsolete is refuted, first of all, by the principle of Curry-Howard correspondence. This principle establishes a correspondence between type systems (which are used in functional languages) and the logical calculus (which are the basis of logical languages). Thus, it is possible to speak about the isomorphism of logical and functional programming paradigms. Therefore, the opinion about the superiority of one paradigm is incorrect. The mechanism of backtracking used in the Prolog, provides a convenient way to query the knowledge base. The classical Prolog implements the closed-world assumption; however, modern logical languages such as AnsProlog implement the open-world assumption. The classical Prolog doesn\'t implement the higher-order predicate calculus; however, it is supported by modern logic languages such as Flora-2. The classical Prolog doesn\'t support forward chaining, as an extension we propose forward chaining on metagraph using metagraph agents. Prolog is used in modern artificial intelligence projects, such as GATE (Prolog is used for constructing syntax trees and sentence processing) and HypergraphDB (dialect TuProlog is used for hypergraph data model processing). In this article metagraph data model is proposed. The basic elements of this model are vertex, edge, metavertex, metaedge. All the elements of a metagraph are annotated with attributes. The presence of metavertex-s own attributes and relations with other vertices is an important feature of metagraph model. This corresponds to the principle of emergence, which is, giving the metavertex a new quality, the impossibility to separate metavertex to the sum of its parts. Metagraph agents based on production rules are used as the active element of metagraph data model. The rule condition is a fragment of the metagraph; the rule action is a set of operations performed on the metagraph. Metagraph agent rules can be divided into closed and open. The action of open rule doesn-t change the fragment of a metagraph relating to the condition of the rule. The input and output fragments of the metagraph can be separated. The open rule is similar to the template that generates the output metagraph based on the input metagraph. The action of closed rule changes the fragment of a metagraph relating to the condition of the rule. The change of the metagraph by the action of the rule cause to check the conditions of other rules. But incorrectly designed closed rules may cause an infinite loop of metagraph agent. Thus, metagraph agent can generate a metagraph based on another one (using open rules) or to modify the single metagraph (using closed rules). The metagraph data model is isomorphic to the higher-order predicate model. The metagraph data model, including the agents, can be converted to a predicate representation. An important property of the proposed representation is ho-moiconicity, which means that agents can modify metagraph data model as well as the structure of the lower level agents.
Pages: 122-131
References

 

  1. Evin I.A. Vvedenie s teoriju slozhnykh setejj // Kompjuternye issledovanija i modelirovanie. 2010. T. 2. № 2. S. 121-141.
  2. Kuznecov O.P., ZHiljakova L.JU. Slozhnye seti i kognitivnye nauki // Sb. nauch. trudov XVII Vseross. nauchno-tekhnich. konf. «Nejjroinformatika-2015». CH. 1. M.: MIFI. 2015. S. 18.
  3. Anokhin K.V. Kognitom: gipersetevaja model mozga // Sb. nauch. trudov XVII Vseross. nauchno-tekhnich. konf. «Nejjroinformatika-2015». CH. 1. M.: NIJAU MIFI. 2015. S. 14-15.
  4. CHernenkijj V.M., Terekhov V.I., Gapanjuk JU.E. Predstavlenie slozhnykh setejj na osnove metagrafov // Sb. nauch. trudov XVIII Vseross. nauchno-tekhnich. konf. «Nejjroinformatika-2016». CH. 1. M.: NIJAU MIFI. 2016.
  5. Samokhvalov EH.N., Revunkov G.I., Gapanjuk JU.E. Ispolzovanie metagrafov dlja opisanija semantiki i pragmatiki informacionnykh sistem // Vestnik MGTU im. N.EH. Baumana. Ser. «Priborostroenie». 2015. № 1. S. 83-99.
  6. CHernenkijj V.M., Terekhov V.I., Gapanjuk JU.E. Struktura gibridnojj intellektualnojj informacionnojj sistemy na osnove metagrafov // Nejjrokompjutery: razrabotka, primenenie. 2016. № 9. S. 3-14.
  7. Comparing Mercury with Haskell. Rezhim dostupa: https://www.mercurylang.org/ about/comparison_with_haskell.html (data obrashhenija 20.10.2016).
  8. Pirs B. Tipy v jazykakh programmirovanija. Dobrosvet. 2012. 680 s.
  9. Gelfond M., Kahl Yu. Knowledge representation, reasoning, and the design of intelligent agents: the answer-set programming approach. Cambridge University Press. 2014. 366 p.
  10. Flora-2 User-s Manual. Version 1.1. September 5, 2015. Rezhim dostupa: http://flora.sourceforge.net/docs/floraManual.pdf (data obrashhenija 20.10.2016).
  11. Miller D., Nadathur G. Programming with Higher-Order Logic. Cambridge University Press. 2012. 322 p.
  12. Bratko I. Prolog Programming for Artificial Intelligence. Fourth Edition. Pearson Education Limited. 2012. 697 p.
  13. SUPPLE Parser. Rezhim dostupa: https://gate.ac.uk/sale/tao/splitch18.html#x23-43700018.3 (data obrashhenija 20.10.2016).
  14. TuProlog Interpreter Integration With HyperGraphDB. Rezhim dostupa: https://github.com/hypergraphdb/hyper­graphdb/wiki/TuProlog (data obrashhenija 20.10.2016).