Download Harold the Herald - Canisius College Computer Science

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Transformational grammar wikipedia , lookup

Probabilistic context-free grammar wikipedia , lookup

Junction Grammar wikipedia , lookup

Parsing wikipedia , lookup

Transcript
Harold the Herald:
An Automated Heraldic Conflict Checking System
University of Buffalo
School of Informatics
Capstone Proposal
By David P. Salley
Spring 2005
Abstract
Blazon, the language of heraldry, lies somewhere between a formal language and a
natural language. The Society for Creative Anachronism, a non-profit, educational
organization whose members study and re-create aspects of the Middle Ages, manually
maintains a registry of heraldry for its members. I intend to create a website which will
automate much of the registration process. Local heralds will be able to compare
proposed heraldic devices (popularly referred to as “coats of arms”) to registered devices
already on file with the SCA.
Problem Statement
The Society for Creative Anachronism (SCA) is a non-profit, educational organization
whose members study and re-create aspects of the Middle Ages, including heraldry. The
Society maintains a registry of its members’ heraldic devices (popularly referred to as
“coats of arms”) and adds over 500 devices to its registry each year, more than England’s
College of Arms registered in the last century.
The SCA maintains an Ordinary, a database of heraldic devices sorted into categories by
the type of image (called a “charge”) on each device. A device with more than one type
of charge is listed in multiple categories. The Ordinary is roughly the size of a large city
phone book. Each submitted device is compared against each registered device with
which it has a common charge. If there are fewer than two differences between the
submission and a registered device, the devices are said to be in conflict and the
submitted device cannot be registered. For a more complete description of SCA,
designing personal heraldry, and the submission process, see The Known World
Handbook edited by Alan Bedgood.
The registration process has not changed significantly in over 800 years. Prior to the late
1990’s, checking for conflict was done strictly manually. With the advent of the Internet,
this checking has become faster because the Ordinary is now available as an online text
file. However, a simple keyword search can overlook devices with spelling variations or
specialized terms. For example, when checking for conflicts with a device featuring a
bat, one would need to remember to search for both “bat” and “reremouse” (its medieval
heraldic equivalent). For a more thorough discussion of heraldry, see A Complete Guide
to Heraldry by A.C. Fox-Davies
Previous Work
For my Baccalaureate Thesis, I developed a Backus-Naur grammar rule list and an
Augmented Transition Network diagram for Blazon, the language of heraldry. I believe I
am the first to formalize the rules of grammar for heraldic blazons. I designed a
prototype in Lisp that could parse simple blazons. For a more thorough discussion of
Augmented Transition Networks, see Artificial Intelligence by Elaine Rich. For a more
thorough discussion of Backus-Naur grammars, see Artificial Intelligence: A Modern
Approach by Stuart Russell and Peter Norvig.
When I was laid off from my programming job, I started a self-directed study program to
learn the computer languages which had developed since I graduated. To teach myself
Perl, I started re-factoring the prototype. While doing so, I have expanded the original
ATN and grammar structure to encompass a broader range of blazons. For more
information on the Perl language, see Learning Perl by Randal L. Schwartz, and Thomas
Christiansen.
Authority files for the Ordinary have been written by other heralds and may be found at
http://oanda.sca.org/ordinary/index.html . I intend to incorporate these vocabulary lists
into my parser.
Method / Approach
I intend to continue expanding the grammar rules and vocabulary until I can parse over
95% of the Ordinary. The remaining 5% are legacy blazons from the early days of the
SCA and no longer considered to be proper heraldry.
The improved grammar is the basis for a database handler which divides the SCA
heraldic database into categories based on charge type to speed up searching for
comparable blazons. The heralds currently do this manually and mistakes frequently
occur.
I am converting the LISP prototype into a Perl program which will serve as a CGI script
for a webpage. This program will accept proposed blazons as input and compare them
against the database looking for potential conflicts. A list of possible conflicts will be
output. While false positives (a listed conflict is actually clear) are permissible, false
negatives (a potential conflict is not output) are not. Therefore the program will display
all registered heraldry which have less than three differences from the submission. In the
event that no potential conflicts exist at all, the program will state so.
Envisioned Final Deliverable
I intend for the final deliverable to be a website available to heralds throughout the entire
Society via the Internet. An online programmer’s manual will be available for future
maintenance to add vocabulary or in case the SCA changes the rules of conflict.
Qualifications
As stated in Previous Work, I designed the prototype for my Baccalaureate Thesis. My
Bachelor’s Degree was in Computer Science with a strong interest in Artificial
Intelligence. I have had five papers published in SCA Heraldry Conference Proceedings.
I am currently warranted as a senior herald overseeing the work of heralds in Western
New York.
Project Schedule
Summer 2005 Semester -- Database handler complete and parsing over 90% of the
Ordinary
Fall 2005 Semester – Comparison program running and able to check submissions
against the SCA database for possible conflicts
Spring 2006 Semester – Final website available to the SCA
Works Cited
Bedgood, Alan (Ed.). (1992). Known World Handbook. Mipitas, CA: Society for
Creative Anachronism
Fox-Davies, A.C. (1997). A Complete Guide to Heraldry. London, England: Gramercy
Books
Meltzer, Kevin and Michalski, Brent. (2001). Writing CGI Applications with Perl.
Addison-Wesley. Cambridge, MA: O’Reilly & Associates, Inc.
Rich, Elaine. (1983) Artificial Intelligence. New York, NY: McGraw-Hill
Russell, Stuart and Norvig, Peter. (1995) Artificial Intelligence: A Modern Approach
Englewood Cliffs, NJ: Prentice-Hall
Appendix I
A letter from IRB consultant Dr. Christian Marks stating that using SCA heralds to test
the Beta version of the program does not constitute Human Research and no further
reports need to be made to the IRB.
Appendix II
My warrant as an SCA herald
Appendix III
A paper which has been accepted for publication at the 16th Annual Midwest Artificial
Intelligence and Cognitive Science Conference (http://www.maics.us) which is being
hosted by the Department of Computer Science at the University of Dayton on April 16
& 17, 2005.