This project is to construct a software tool, which will allow
a person to easily organise their digital photos using a web front
end. All photos uploaded into the system, which would be done
using Bluetooth technology, have a date/time stamp, a GPS location,
direction and an optional soundbyte which is to be assumed will
be available with a "camera of the future". This is then stored
in the database to be viewed later. The photos can be organised
by date/time, by keyword (using word-stemming) or by location
(organised by nearest town). Localised searches can be done by
inputting data. The web site will be available to be used by anyone
once they have completed registration, which includes security
measures to pass across information such as credit card numbers,
and checks for valid information. This is a web-based multi-media
project being run on a JRun web-server with Apache with SSL plugged
in. The coding is done using JSPs and JavaBeans.
The DCU Postgraduates developed a Web-based digital video system
called Físchlár. (http://www.cdvp.dcu.ie/index.html) At present
a user can pre-set the recording of TV broadcast programmes and
can choose from a set of different browser interfaces which allow
navigation through the recorded programmes. There is a hard-coded
version of Fischlar, which runs on Internet Explorer on a Compaq
iPAQ with a wireless LAN connection. This project involves extracting
data for a set of programs stored a sample SQL-Server database
that reflects the production Fischlar system. This data will then
be re-formatted into XML format using ASP. This will involve defining
the DTD (Document Type Definition) for Físchlár.The XML Page will
then be parser with an XSL sheet using MSXMLDOM. The main part
of the project will be developing an XML translator to visualise
the iPAQ interface in accordance with the existing hard-coded
HTML interface. This translator will be developed using XML Schema's.
The project is really to see how to implement our Fischlar iPAQ
interface using XML translations, specifically using XML Schemas.
This idea was suggested by Professor Alan Smeaton.
Our project was to develop a personalised SMS email notification
and summarization tool to alert users about incoming emails on
certain topics only, and summarize the text of the emails using
a text summarization tool. In effect, users will receive SMS messages
when their mailboxes are sent emails which flag the system to
summarize the incoming email and send an abbreviated form to a
mobile device. The project incorporates a personalised website
enabling the user to specify the mail server along with the rules
based upon which, the SMS messages will be dispatched, e.g. restriction
by subject, cc, time, date etc. The user will also be able to
view the full details along with the abbreviation of any email
summarized and sent to their phone. A java backend will check
the mail servers of all users and proccess any message which flags
the system, storing it, summarising it and sending it out as a
text message. The technologies used include Internet Information
Server(IIS), Java, Microsoft SQL Server, Active Server Pages(ASP),
JDBC. Project Area: Ecommerce. OS: Windows
This project has a web interface to allow (restricted) users
to enter a "profile" of key phrases. Online news resources such
as the RTE.IE or IRELAND.COM websites are polled, daily, examining
their new material (today's Irish Times for example) to detect
"stories" which contain these key phrases, and such alerts are
notified back to the user via email or via a profile web page,
depending on that users request. For example, the communications
and marketing office in DCU are always interested to know when
and where DCU or Dublin City University is mentioned in the newspapers
and this project generates a web page, daily, with links back
to the specific news stories where DCU is mentioned and then e-mails
the communications and marketing department to notify them. The
project validates all queries by removing stopwords and stemming
the words and using the term frequency algorithm. By using the
TF algorithm, we show results in the order that they are likely
to be most relevant by counting the amount of times the key phrase
occurs. We created a spider to crawl through specified web sites
(eg Ireland.com) following links and downloading the contents
of these pages. The spider is run daily using a batch file, which
then calls a script that matches the users' keywords and phrases
against the daily downloaded files. This project also includes
an archive of up to seven days of matched results. This information
can then be accessed by all valid users. The project was created
through UNIX using PERL and CGI scripts and HTML.
Seperating video into shots and scenes is a huge benefit to
navigating content and is used effectively in Físchlár, a web-based
system in DCU which demonstrate recording and playback of television
programmes as digital video. Físchlár does it's analysis by determining
boundaries between camera shots and selecting shot & scene keyframes.
This a computationally costly exercise and my project parallelises
it so that (a) it runs faster and (b) it does not need a Sun Enterprise
server. A portfolio of methods is used to detect a shot boundary
in a piece of video: colour moment & histogram differences, edge
detection, and MPEG macroblock analysis. Using the school's 23
node Beowulf Linux cluster which I maintain and have previously
helped build, my project parallelises these methods so that the
analysis runs up to 60% faster through ordinary message passing
and temporal data parallelisation. This project was suggested
by and is a contribution to the Centre for Digital Video Processing
(CDVP) in DCU for their work on video analysis, and is also an
effective demonstration of the favourable price/performance ratio
of contemporary cluster computing using Beowulf & Linux. Category:
Multimedia Platform: Linux Language: C/C++, MPI
My project involves taking several minutes worth of Físchlár
video footage which has been segmented into shots, and then analysing
and comparing these shots against one another for colour similarity.
A shot is any continuous video stream taken by the same camera
without stoppage and usually lasts several seconds. Ten minutes
of video footage would contain several scenes each made up of
approximately 15 shots which are themselves made up of several
hundred frames (still images). Any frame can be analysed to compute
a colour histogram which shows the proportion of pixels of each
colour within that frame. Sampling at a rate of 2 frames/second,
I hope to create a 3D colour histogram model to represent each
shot of video footage by combining together a series of histograms
(an 8 second shot will have a 3D colour model combining 16 histograms).
This 3D representation will be stored for each shot. Shots can
then be compared against each other using this 3D model to hopefully
find the next closest similar shot. I expect to implement this
idea using a combination of Java and Microsoft Excel graphs.
My project is a hand written digit classifier, The aim of the
project to to create an application to recognise various hand-written
characters, I intend to create this application by having a Neural
Network, written in java. I intend to try to develop two different
ways to do this, 1 a conventional multilayer feedforward neural
network, using backpropagation and the sigmoid activation function.
2. To write a network using a technique called 'Maximum Entropy',
What maximum entropy will do is try to make the network have as
simple configuration as possible, ( as my other network could
have as many as 6,000 connections ). Languages:Java Area:AI OS:
Windows NT
Graphics
Generator - Mark Preston-Smith and Elaine Kieran
We decided to create a graphics generator for musical input
but we wanted to avoid doing this using fractals as this approach
has often been used before. Instead we have decided to render
animated graphics that will have some visible change in relation
to the musical imput. The program takes in a musical input in
the form of a .WAV file. This file is then processed using Digital
Signal Processing to calculate the frequency and amplitude of
the file at particular time intervals. This output is the input
to a POV-ray file which renders specific graphics to match the
frequency and amplitude of the file. The resulting bitmaps from
the POV-ray file are then made into an AVI and combined with the
original .WAV file, and played on our media player. We well be
using Java and Visual Basic for the processing and multimedia
and POV-ray as the rendering tool. Area: Multimedia Languages:
Java, Visual Basic, POV_ray OS: Windows 2000, and Windows NT
Using image recognition systems to track an object in an environment
with multiple moving objects. Background: Linking object recognitions
systems with image tracking systems to follow a chosen object
in an environment with multiple moving objects. This would have
applications such as tracking (ball or players) during a football
match, or for use in lighting effects (Tracking-lights used in
theatre etc.) Initially I will use a web-cam or similar to stream
images which would then be analysed to find a certain object;
maybe a football. Later this would centre the image on the object
by tracking, using panning functions/zooming of the camera. By
the end I hope to allow for recognition of more complicated objects,
such as certain players of a football match. For the project I
would need a web-cam or similar with programmable tracking, code
would be written in C++ and/or Java, Some pattern recognition
techniques, and would be based on the Windows NT Platform.
Project Idea originally came from one of the project proposals
on the web (http://www.computing.dcu.ie/~alistair/projects.html).
It is a project based on evolution of species and interaction
of animals to each other (attack/defence). My project will be
based on basic species at first but will be designed in such a
way that it could be extended overtime to handle more complex
environments. Things such as climate, temperature, position on
the food chain and supply of food that a species eats. The function
of this project would be to provide a simulation of evolution
over various generations of species and how they evolve over generations
as the supply of their food source grows/shrinks or as their numbers
grow shrink and various other mutations over generations that
cause species to evolve. Doing this project I hope to both learn
about and demonstrate knowledge in AI and pattern matching and
ability to create a program that will itself over time evolve
and show some form of machine learning in it. Various milestones
exist in the project such as classification of species i.e. what
climate suits them best, how long they live, energy usage, etc.
The next milestone would be taking this information and getting
species them to interact with each other (hunting) and with themselves
(hunting in packs). The next milestone would be evolution of a
species over generations and increase decrease in numbers over
generations (i.e. if food source runs out, environment becomes
uninhabitable ) and movement over generations (i.e. if food source
runs out, environment becomes uninhabitable but there is a more
suitable living environment) The requirements of this project
are just a P.C. And c++ compiler and/or Java compiler. There have
been projects in previous years based on evolution but it is a
large area so newer projects could still differ greatly from previous
years ones. Also there are various websources with games based
loosely around it such as E-Den (http://www.geocities.com/ResearchTriangle/Forum/3830/edenoverview.html)
x
The IMAP mail protocol is vastly underused, and it's a shame,
considering the advantages it has over the more predominant POP
protocol. One of the reasons for this is its'complexity, people
prefer to develop clients and server for the very basic POP protocol.
We aim to simplify development of software for this type of mail
system by improving on the protocol. In our protocol, we intend
to use XML to store mail on the server, and all communication
will be in XML. The use of XML, due to the large number of processing
APIs for popular programming languages, will allow developers
to write clients and servers a lot quicker. Our server and client
will be written in java, so we will be developing an API that
can be used to simplify things further for java programmers. Other
benefits of using XML include the possibility of easy development
of other applications such as administration and cataloguing of
mailing lists, among others. The server and client will also be
using inbuilt SSL connections by default. Most email sent over
a network/the internet is in clear text, anybody on the mail's
route can intercept the messages. Most servers that support secure
connections do so by means of tunnelling through SSH, or other
external means. This shouldn't have to be the norm, hence we are
including SSL connections by default in our software.
My project is a fully secure peer to peer web conferencing utility.
It allows sharing of all types of files, peer to peer broadcast
chat (multi user), peer to peer private chat (one to one) and
also group collaboration via a peer to peer canvas. The system
is implemented using a combination of public key cryptography
and des encryption. At no stage are the public keys stored on
the server, if a user wants a file for example he enters into
a protocol with user B which involves generating a session key
with the other user encrypting using Triple DES or AES and abolishing
the session key. Each users private key will be stored securely
on his / her machine. Only the application will be able to access
the private key on the users machine as the user must put in a
password to logon this password is used as the basis for unlocking
the private key at client end. This application has very important
uses in government or highly sensitive business areas where security
is a top priority, but care was taken to balance this with good
usability and design.
The term Bluetooth refers to an open specification for a technology
to enable short-range wireless voice and data communications anywhere
in the world using hardware, software and interoperability requirements.
It is a new and exciting emerging technology, being developed
by the Bluetooth SIG comprised of some 150+ companies. Bluetooth,
which is both inexpensive and energy-efficient, and uses license-free
radio bands, makes it possible for practically anyone to become
an operator using this system. The number of products incorporating
Bluetooth technology is expected to reach 1.4 billion units by
the year 2005. Currently two major limitations of Bluetooth, is
that communication between devices must be direct (one to one);
and secondly that they do not support the movement of an active
terminal from one network interface device to another. However,
in due course of time, solutions for forming, multihop ad hoc,
roaming networks over Bluetooth will be needed. This project aims
to incorporate roaming, similar roaming on GSM Protocol, into
existing Bluetooth technology, i.e. The user may have a portable
device(PDA) and travel seamlessly from one bluetooth piconet to
another. Each piconet is made up of a master and up to 8 slave
devices. Slave devices communicate directly to the master. What
I propose is a routing protocol that allows a device move from
one piconet to another, thus switching the master-slave connection
that it's connected to without the user noticing the change. Firstly,
I will show at an application level that a device can communicate
through the network topology. Secondly develop and prove, at Simulation
level, a protocol to allow routing and handovers. To combine these
together I will develop a information website resource to allow
others see my progress and expand on my ideas.
The concept behind this project is to provide Web based monitoring
of an email server system. The idea is to manage a multi-server
configuration via the Web which would give a merge-view of the
servers. A Web-based viewer of a multi-server environment would
be useful in terms of monitoring throughput figures from multiple
servers and so act as a collector of performance. An accurate
picture of the whole system's performance would be presented giving
statistics for each server and for the system as a whole. If a
server is down, the monitoring tool can report it immediately,
the service provider can be alerted and measures taken to fix
the problem with the server. Analysis of where the traffic is
coming from and going to and if any bottle necks exist would allow
significant alterations to be made to improve service. This project
proposal document presents the idea for the Web management-monitoring
tool as servlet applications. Each tool will be developed as a
separate Java servlet to be run on the servers. Like applets,
the servlets will be accessed through a Web browser. Unlike applets,
the servlets will communicate with the server using the HTTPS
protocol (Secure Hypertext Transfer Protocol), thereby allowing
for encrypted communication between the client and server with
SSL (Secure Socket Layer). The development of a secure single
server view and a secure overall view of the system, as servlets,
provides for localization and enhanced security.
At the moment all students in Dublin City University have been
given a college e-mail account and this account has no expiry
date. The main reason for this is to keep graduates of D.C.U in
contact with the college and each other, after they have left.
I propose the idea of a web-front end that is dedicated to this.
Users will be able to log on to the website and will have complete
access to all the different sections. The different sections are
as follows: They will be able to access their mail from the web
site without having to log in again. log in via telnet or some
other less user-friendly approach. There will be a message board,
which will contain information about jobs, and various other topics
and a message board with messages for other users. I will facilitate
slashdot style message threading. There will also be a search
facility available, which will enable the user to search for other
users and if time allows (search over the previously posted messages
using SQL queries into a DB). For example: I want to search for
a user (Michelle, who started in D.C.U in 1997 and did Applied
Languages) I will then get back a list of results, and whether
the person has updated their information, they will be contactable.
Also the user will be able to modify his/her details which are
available to the site. Security will be dealt with with SSL. SSL,
or Secure Sockets Layer, is a technology, which allows web browsers
and web servers to communicate over a secured connection. This
means that the data being sent is encrypted by one side, transmitted,
then decrypted by the other side prior to any processing. This
is a two-way process, meaning that both the server and the browser
encrypt all traffic before sending out data. Platform Used: Windows
NT Languages Used: JAVA,JSP, SQL
Research
Tool - Lorna Gavin and Fatima Aziz
The idea for our project is to be able to enter items that needed
to be researched into a list on the PDA. When you connect the
PDA to the PC a browser opens up to our metasearch engine and
the items on the list are then searched for in the engine and
their resulting pages of links is then saved to the computer.
Development Tools: Microsoft Visual C++, Conduit Development Kit
and Conduit Inspector and Configuration Tool (for the conduit),
Metrowerks Code Warrior and Palm Emulator (for the Palm Application)
and Tomcat Web Server (for the Metasearch engine). Area: Multimedia
OS: Windows 98
We propose to build our own interface (hack) between an integrated
Suunto Cobra computer and the PC. The information will then be
represented in our own dive log application on the PC. Given enough
time, we will expand this to the Palm-Pilot/Hand-Spring visor
console. The interface will be a plastic box with a few basic
electronic components inside with relevant connecting cables.
It will connect to the RS232 Comms Port on the PC and produce
a bit stream that will be decoded by a VB interface. We will represent
this data in our VB dive log application showing dive profiles
and further dive information e.g. number of dives, air pressure,
depth etc. We will develop our project using VB, which will communicate
with the Suunto Cobra, decode information entered and represent
results graphically. We think this is a good idea, as it will
have real world benefits for scuba Divers as it will show graphically
his/her ascent to the surface with decompression stops depending
on how far he/her dives. We will save money building our own hack
as they retail between Euro70 and Euro120+.
Our project is a Web Search Engine, which will incorporate three
main sections, a Web Crawler, Search Engine and Web Interface.
The web crawler traverses the WWW following links, downloading
web pages and formatting them into a fast, searchable format.
Our search engine will work over three media, giving the user
the option of document, image or email searches. We will use the
TF*IDF Term Weighting algorithm, and some of the features we will
include will be document length normalisation, stop-word removal,
and also a "cache-copy" facility. The web interface will take
in a query from a user, and display the ranked results from that
query on the web interface. Languages: Java, Servlets, HTML, SQL
Server, Tomcat Web Server. Area: MultiMedia OS: Windows NT
My final year project involves building a Search Engine index
using the document-query matching algorithm TF*IDF for internal
representation of documents which should aid fast searching. A
Web interface would have to be developed for the search engine
to improve the functionality of the project as a whole.
ToneGen
- Joanne Kelly
ToneGen is an application which generates Nokia and Motorola
ring tones for mobile phones. It allows the user to generate tones
and outputs the tones to a format which could be entered manually
into the phone or downloaded using a SMSC gateway /developer kit.
It could also support conversion of other file formats (MIDI)
to phone tunes. The tone files database will be taken from the
ceolaire music retrieval system. The user can compose a mobile
phone ring tone, listen to it, edit it, or download it to their
mobile phone. For security reasons, initially the user would have
to register to use the site. When they registered they would be
sent a password by SMS, which they must use along with their phone
number to login. Background. The project was suggested to me by
a School of Computing Postgrad, Tom Sodring. I thought that
it would be a good project to attempt, as I'm interested in using
SMS and other mobile phone technologies. What will the project
achieve? The project would be useful for mobile phone operators
such as Eircell, Esat and Meteor. The main users of this application
would be children and teenagers. Justification for attempting
this Project. I think this project will be enjoyable to work on.
I think that the project idea is extremely interesting and I am
also interested to work with SMS.
The objective of this project is to create a webcrawler and
web based search facitility for seeking out specific file types.
I have chosen to demonstrate the project using MP3 audio as the
target file type. The project will use 3 autonomous agents. 1.
At the backend of this facility will be a web crawling robot.
This agent will perform html parsing and information retrieval
and document traversal. In this process the robot automatically
traverses the Web's hypertext structure by retrieving a document,
and recursively retrieving all documents that are referenced.
Upon finding a hyperlink anchoring to an mp3 it will add the anchor
text and file location to a relational database. 2. A second robot
will be used to ensure that links still active. Any broken links
will be removed from the database. This will be executed on a
periodic basic. It is at this point that links are rated using
reinforcement learning techniques 3. A final agent will be used
request and harvest the mp3s found by the web crawler. This will
provide a feature akin to Google's cache for links to mp3s to,
which are no longer active. ID3 tags contained within the downloaded
mp3s may be used to supplement the information available for searches.
User Interface: Adhering to good design principles the presentation
layer and search facility for the dataset will be implemented
using a relational database, SQL and a server side scripting language.
The purpose of this project is to build a search engine capable
of being used universally to search a website's content. By registering
with my site it would give you the small amount of code needed
to run the search engine from where you want on your site. It
will also allow you to exclude certain folders and files from
the search. This and other options can be set on the preferences
page. The interface and some other general operations will be
coded using PHP. I came up with this idea when I was on INTRA.
The company wanted me to organise a search engine for their site.
I then generated a very basic search engine using a database to
hold all the information and a perl script for the engine. I realised
afterwards that this could be greatly improved. I have since done
some research into search engines and found out that it is possible
to store the information in a matrix which can be held in memory.
This would increase the speed of the retrieval. I will also have
to parse the files to get rid of all the html tags and stop words.
It is one thing to retrieve all the relevant documents. The next
question is how can I sort all these documents so that the most
relevant document is at the top? For this I will use the BM25
probabilistic retrieval model. I will code the search engine in
Java. I will use a list of all the documents and their relevant
URLs on the computing website to test the search engine. This project
will not have a web-crawler but it could be easily added at a
later stage. Proposed Supervisor Cathal Gurrin
The aim of our project was to make learning java easier for
beginners and also to allow easier debugging of run time errors.
The user inputs their completed code to the application. The application
allows the user to observe the execution of their program in slow
motion. As it steps through the code it animates objects and variables
being created, changes in variable values, method calls and interaction
between objects. The project was written in java and executes
as an applet. OS: Windows NT Area: Language Engineering
For my fourth year project I intend to write a D6 emulator for
the Palm Pilot. When complete the system will enable users of
the D6 educational computer to use their Palm Pilot to carry out
the functionality of the D6. (e.g. manually enter a program, examine
registers and run the program). The system front end will consist
of the basic D6 buttons and display which will enable the user
to tap the PDA screen to press the buttons and view the results
on the display. The Project will consist of 3 main areas. 1. Find
a suitable software emulator that can be used as for the 8086
processor. This software must then be altered and adapted to suit
the project. Parts that may require change are interrupts; output
to ports (display, speaker etc.) 2. Learn and understand how to
program the Palm Pilot. The development environment I intend to
use is MetroWerks CodeWarrior IDE and the Constructor for Palm
OS. I must first learn how programs are written for the Palm and
how they are compiled and downloaded to the device 3. Integrate
the work done in parts 1 & 2 above in order to develop the emulator
for the Palm Pilot.
At the moment students submit projects in the project box where
they are recorded and passed onto the relevant lecturer. As most
projects are electronic, this should be easy to automate. The
idea of this project is that a student will submit the project
via a Web page. A Java program would store the project for the
lecturer along with the date it was received. At the project due
date an email notifies the lecturer and the projects are made
available in a common directory. Each lecturer can edit the due
dates of the projects. Project idea came from lecturer Charlie
Daly. This project will allow students to submit their projects
via the web. The projects will then be zipped into a blob and
stored in a mySql database. The lecturer can then download all
projects from the database and add comments or mark projects as
they see fit. The projects will then be sent back to the database
where the student can view comments or the marks that the lecturer
has inserted. Potential users Lecturers and students in DCU Justification
for attempting project. By attempting this project, I would hope
to end the paper trail that leads into each lecturer's office
each year. It would also be advantageous to have an electronic
account of each student's project. Overview of project characteristics,
hardware and software requirements (sources). This project will
use the following Java, MySql, Tomcat, Unix, HTML.
My project is a timetable-scheduling tool primarily for the
use of the VEC schools of Ireland. Currently the software, which
is available does not utilize an optimum algorithm, resulting
in a lot of post-development work to be done by the user and most
frequently this work is done by hand. This project will focus
on creating a solution that is going to be used to create an optimum
timetable for an average VEC school. The remainder will be alterable
from a user-friendly interface. My project will be developed in
Visual Basic v6. This will interact with a Microsoft Access database,
which will hold all the information needed on the teachers, students,
classrooms and subjects. It will be running on any Windows operating
system after Win95.
My 4th Year project is a Java Application that has similar functionality
to Power Point and it's completely written in java. The project
is split into two applications, a slide editor and viewer. The
slide editor is an application, which allows the user to create
new presentation slides and modify existing ones, and the slide
viewer allows the user to playback the slideshow. The application
has the ability to process sound and media files in the presentation
slides. The presentation files are in XML format and the benefits
of this are that it makes the data much more easily to manipulate
and transmit. OS: Windows NT Area: Software Engineering Languages:
Java
For my fourth year project I plan to write a system for ca3
and ca4 Project proposals. A student will fill out a form detailing
their project idea and an overall Specification on an online form.
Then using servlets the form will be transferred to a database
where all project forms will be held. Project submission times
will be noted and if a student is late on submitting a project
they will be emailed by the system to remind them. Then when the
lecturers have their meeting to discuss each student's project
they will be displayable on a webpage, whether project ideas are
acceptable or not will be decided and each group of projects will
be displayed on a separate page. The accepted projects will be
displayed on a webpage and a supervisor will be allocated to each
student based on the type of project it is (certain keywords may
associate it with a certain lecturer). The lecturers will be able
to access a webpage summarising all accepted projects, and will
be able to view their own projects (that they will be supervising)
and to contact the students by mail links. The students' webpages
will be checked to see if they have submitted a functional spec
and the date when it was submitted.
The TBWCR will, depending on the time, reveal only that web
content that is suitable for time period the user is in when they
access the web site. The TBWCR works with the use of special
tags, which can be used to specify the time period when the given
data should be displayed. The administrator simply places these
time tags around the given data, and the required data will be
displayed on the web page at the specified times. TBWCR comes
completed with a graphical user interface, which includes a HTML
text editor, a browser and more. TBWCR allows the administrator
to specify tags in Normal (WYSIWYG) View, or write code in HTML
View. The application is written using the Java language with
the use of Java Swing (front end) and Java Servlets (back end).
X-NET is an ASP application for managing your files and databases
online from anywhere. The directory manager allows you to copy,
cut, paste, download, and view (highlighted) source code, as well
as edit and move files and folders. You have a bi-panel presentation
that lets you easily browse your files, click on a base and edit
it. Also features customizable graphics, colors, and language.
The directory manager automatically opens your Access Mdb and
lets you view/edit all the content and everything that SQL makes
possible through a database manager. You have a complete user
management that lets you attribute folders, rights and more. Available
in 3 languages (English, French and German). A three tier architecture
is used including a Front end Consisting of a web page created
in HTML viewed in Internet Explorer 5. Middle tier The ASP should
perform most of the work with the web server. Back end An MS Access
format will be used with the use of SQL to access it.
This Auction Site will
be used for online virtual items, mainly for many of the gaming
worlds available. Users will be able to sign-up, search for items,
bid on items, run auctions, bookmark auctions and keep a database
of all their own items. This project will be built on a three-tier
structure and at the same time separating all the logic from the
user interface (web page). Database access will be handled using
the new ADO.NET framework. This will create a "disconnected" database
(using Web Services) to the user for them to manipulate, and all
changes will be posted back to the database when needed. All the
logic will be programmed using C# and ASP.NET will be used to
handle all the server controls.
A Console to connect to any odbc complainant, when connected
you can pass sql queries to the database and get back results.
The console has options to load sql queries from text files, and
saves queries to text a file; the sql editor has all the option
of modern day editors like cut, past, load previous queries etc
This project is an application server implementation, which
can load and execute Java code on behalf of remote users. Typically,
a registered user will connect to the server and send one or more
Java classes that will be loaded and executed by the server. Then
remote users will link to the server and request the service of
a program that is currently running on the server. To ensure that
only registered users can use the server and that Java code only
accesses resources for which a user has permission, the server
implements suitable authentication and authorisation mechanisms.
Authorisation is handled with JAAS(Java Authentication and Authorisation
Service), and once a user is authenticated all code is run on
behalf of that user. In this way as opposed to traditional access
control measures we can grant privileges based not just on where
the code comes from, but also, on who is running the code. For
authentication we used an RSA challenge-response mechanism which
we incorporated into the JAAS framework. In order to log on to
the system a user must demonstrate that he/she is in possession
of the required RSAPrivateKey. All keys are stored securely using
PBE (Password Based Encryption) and the client-server connection
is SSL (Secure Socket Layer) over RMI (Remote Method Invocation).
This system was written purely in Java on Windows NT 4.0 so is
completely portable across all platforms. It's a software development
project, and its advantage is that it allows Java classes to be
executed remotely in a secure sandbox like environment with very
fine-grained access control mechanisms.
This project is a java application which takes a sound file
as input, e.g. mp3, wav, cda file etc, and determines the notes/chords
being played using the fast fourier transform method. The user
is then shown how to play the piece of music (on guitar and piano)
using tab notation and an animated user interface. It will also
include options to isolate these instruments and either play back
the wave with the instrument either removed or on its own. It
could also include a wav recorder so the user could record themselves
playing and possibly add effects like time-delay, Wah, phaser,
flanger etc. It would hopefully include an option to combine their
own recording with the backing track from the original sound wave.
The aim of my project
will be two-fold. Firstly there is a web based poker game that
multiple people can log into and play. This game will be capable
of dealing and analysing most of the popular casino poker games
- Texas Holdem, Omaha, Omaha Hi-Lo, 7 Card Stud and 7 Card-stud
hi-lo. Texas Holdem is the game of choice to decide the world
champion of poker. In this game each player receives two cards
and some betting occurs. Then three cards called community cards
are revealed and another round of betting occurs. There are two
subsequent rounds with one card being revealed each time. These
five cards are called community cards and are available to all
the competing players. If at the end there is more than one player
still in the game the best five-card poker hand wins. This hand
is made up from the player's two cards and the five community
cards. For the game of Texas Holdem one or more computer players
will be provided. This is the main goal of the project - to develop
an intelligent texas Holdem player. The player should be capable
of playing against up to nine opponents. The player will have
a strong grounding in probability to aid in decision making. Elements
of game theory will be involved and randomisation used so as not
to be predictable. The computer player should be able to execute
and recognise bluffs, an essential part of a winning poker player.
The central constituent of the computer player will be to implement
some form of opponent modeling. This will be done through neural
networks and the computer player will build up profiles of opponents
over the history of hands played with them. Neural networks appear
to be well suited to this task. Justification of project: The
attention of the artificial intelligence community has only recently
been directed towards poker and a truly world-class player has
yet to be developed. Attempting the project should give a good
insight into artificial intelligence programming, game theory,
statistical programming, java network programming and neural networks.
Intermediate objectives: I would hope to have the dealing, game
interface and hand analysing implemented by January. I would hope
to concentrate the network programming and on the main computer
player from then on. If I have time I may code more than one type
of computer player. Project characteristics: The project will
be implemented in java using Windows NT.
One of the most popular and exciting areas in programming today
is in the area of games programming. With the emergence of new
technologies, games development remains as interesting as ever.
The aim of our project is to develop a three dimensional strategy
game, which is a networked multiplayer game but also has AI opponents.
Fortress's UI was developed using the Java 3D API. The game is
similar to chess but is played on three boards, which are in a
three-tier formation. A player may connect to a Fortress server
and play against other people connected to the server or he/she
may play against an AI opponent. The game also has an integrated
chat feature and games are arranged by people in the chat room.
The server keeps a record of a player's statistics, such as game
wins and losses. These are stored in the player's profile, which
only the player can access with his/her password. These profiles
are protected by the server in an encrypted file.
The aim of my project is to write a computer Go program with
an effective AI algorithm. The game of Go can be played on anything
from a 9x9 to a 19x19 size board and so far no one has created
an AI routine for Computer Go which has been effective against
expert Human players, unlike in other board games such as Chess.
I plan to write a program which will have a GUI enabling a human
player to play against the AI, as well as having network functionality
in the program to allow it to connect to a Go Internet server
where it can play against other computer programs and other human
players. My project will build on the latest AI techniques employed
in Go, as detailed in the paper "Computer Go: An AI orientated
survey" by Bruno Bouzy and Tristan Cazenave (http://www.ai.univ-paris8.fr/~cazenave/CG-AISurvey.pdf).
It will involve a significant degree of research and theory, however
there will be some programming involved in implementing the GUI
and Network functionality, as well as in implementing the AI routines.
Language: Java Platform: NT
Bearings is a web based java one player 3D maze platform game
where the user must navigate through a series of mazes in order
to complete the game. Along the way the user encounters monsters,
which must be killed, and objects (guns, night-vision goggles
etc..) which must be picked up. Against the clock, the aim is
to score as much as possible in as short a time as possible. The
game runs as client/server architecture, where the server manager
runs on the game machine. The client (web browser running the
game) connects via a socket connection to the server. The game
was designed so that the mazes could be created online by players
and have them saved to the system, so that other users may play
them. The user may jump to a particular maze provided they know
the password, which can be attained by completing the levels that
precede the required level. Platform: windows Section: Games/
Entertainment/AI
The project is an email client, which enables the user to access
mail folders from any POP3 email Server. It will be able to receive
plain text and HTML emails and will be able to deal with attachments.
The user will be able to send, receive and store messages. The
second part of the project is to design a Mail Filter, which is,
can be added to the Client and will allow the user to filter out
unwanted emails. The user will be able to tell the Filter what
he/she wants to filter out. There are three main category types
and the filter will decide which category the incoming email falls
into. These categories are Adult Material, Online Shopping and
Banking. The project will involve doing research into the different
methods of Text Filtering and Text Retrieval to see what approaches
are best suited to creating a successful Filter. The Filter will
also sort the mails into Folders of friends and Mailing Lists
that the user has subscribed to. The program will be written in
Java with the user interface being created using the Java Swing
and Java AWT API's. The Mailing functions will be written with
the help of the JavaMailTM API and the JavaBeansTM Activation
Framework (JAF).
I am developing a web-based system to allow a user generate
sports rankings systems akin to the FIFA World Rankings and other
such systems used by sports organizations to calculate performance.
The project can be divided into two parts - a GAA template and
an option to develop one's own ranking system from scratch. As
the GAA does not have a means of ranking its county teams in this
way, I have developed a GAA template as my default option. This
will involve setting out various criteria for establishing results.
For example, a victory in a match will affect a team's standing
depending on the competition in which the game was played; the
stage of the competition; the relative ranking of the opposition;
the score accumulated; and the margin of victory. Rankings are
calculated on a monthly basis, and consider results for the past
five years. The user inputs match results through the web interface
for the current rankings to be worked out. The project also allows
a user to build their own rankings system for whatever sport is
desired, by selecting a whole set of criteria; inputting competitors,
tournaments, tournament formats etc.; selecting the relative importance
of different tournaments; and specifying the low-level details
of the sport itself. My project has an elegant and easily operated
user interface, with helpful notes included for certain input
fields. To develop the system, I have used Java Servlets, JSP
and a JDBC connection to a Microsoft Access database.
I propose to develop a real secure online proportional representation
voting system, real in the sense that it will simulate an actual
election in Ireland. I will also propose to develop other voting
methodologies to compare election results using these different
methods, such as "first past the post". My system will generate
results when polling has finished. The system will also generate
graphical representation of these results using SVG (if time permits).
For the PR method I will use the single transferable vote method.
Description: The voter will be able to log on to the web page,
from which they will be asked to enter their username and password.
I will implement some form of encryption to make this secure.
On a correct entry, a voting form will appear for the designated
constituency, which the voter belongs to. The voter will then
fill in the form. They will do this by selecting the candidate
of their choice in order of preference. Once they have done this
there vote will be recorded. I plan to introduce a time constraint,
which means that a voter will only be able to vote within a specified
time period, as is the case in any election. When the time period
has elapsed the results will be automatically calculated along
with graphical representation of the results. I will also implement
other algorithms for calculating votes. Implementation: I propose
to implement my project by using Java server pages (JSP) in order
to implement the various functions associated with my project.
I will be using the Tomcat server to run these pages. These pages
will connect up to either a Microsoft access or SQL server database.
I will use jdbc (Java database connectivity) for this connection.
The front end will be developed using html. I am also proposing
to develop on screen graphs i.e. so once the results are in you
will be able to see the results in graph format and also be able
to see the voting patterns matched with previous elections etc.
For this I will use S.V.G. (scalable vector graphics) Conclusion:
I think this project is an excellent idea because it enables people
to vote on the Internet, so they don't have to be in their local
booth in order to vote. Secondly the project has no limitations
it can be used anywhere whether it be general elections or a university
elections etc.
Programmer's
Editor - David Costigan and Ronan O'Ceallaigh
Our project is a Programmer's Text Editor, based around a language
definition file, called Fist. The name of the project comes from
the description of telegraph operator's unique style as their
"fist". We intend this editor to be as flexible and fast as possible,
so that an individual programmer would be able to create his/her
own unique coding environment. The language definition file would
include a description of a programming language, for example reserved
words and control structures, which the programmer could edit
to suit his/her own coding style. There would be one definition
file for each language, and several files are supplied with the
editor. There are also numerous user interface features, which
are optional to the user. These include auto-completion, a code
overview window, syntax highlighting and code statistics. OS:
Can be compiled onto any platform. (Unix, Windows, MacOS) Language:
C++ Application Area: Software Engineering
It is in the area rule-based simulation that I have
focused my final year project on. The objective of this project
is to accurately simulate the flow of road traffic in a graphical
user interface. In order to achieve the simulator must capture
both the physical and human components of traffic. This means
that the simulator must determine the reactions of the vehicle
driver depending on the vehicle's state. The state of a vehicle
can be determined by the distance and by the difference in speed,
in comparison to the leading vehicle. If the vehicle state changes,
the driver must react. Other reactions that are determined are
those in response to changes to the environment in which the driver
in driving in. Examples of these would be the speed limit, traffic
lights etc. Another objective of this project is to distinguish
between drivers with different characteristics. A characteristic
of a driver would be the risks that he/she would be willing to
take. A certain type of driver will maintain a safe distance between
himself/herself and the vehicle in front of it others may not.
Some drivers will obey the speed limit, others may not etc. I
have created the simulator using a psycho-physical vehicle-following
model. Psycho-physical vehicle-following models determine reactions
of vehicles in traffic processes with regard to changing the acceleration
of vehicles. Reactions happen if differences in speed and distance
to the predecessor occur.
There is a problem in the health sector at the moment, in that
it is not computerised. We decided to try and computerise the
public health nurse sector, as our Fourth Year Project. The basic
job of the public health nurse, which is to cater for the needs
of the patient she/he is visiting, is made very difficult due
to the manual process of data storage and retrieval. Not only
does the nurse spend the day filling out the forms as she visits
the patients, but she then has the additional task when she/he
arrives home, of updating these files and sending them to the
Health Board by post. This creates a lot of unnecessary over time
for the health nurse. Also, it is not very secure to send this
information by post and as these are medical records, by law they
must remain confidential. The aim of our project was to design
a web-like application into which nurses can enter details of
a patient's consultation. The application takes all the information
entered, saves it to a database and allows the nurse to generate
a report based on the information entered. It also allows the
user to view the report or update information on the database.
There is also options to print the report out and to save the
report onto the nurses desktop. This application could be installed
on the nurse's laptop or home p.c., or it could even be installed
in a clinic with our database as a central database. The project
also deals with security as medical records have to be confidential
by law. The database requires a password and can only be accessed
by running the system. The system can only be accessed by providing
a password, which is registered when installing the application.
This password is encrypted and stored in a file on the database.
The application was designed using JavaServer Pages, MS Access
and XML.
This final year project aims to produce an online auction application.
It is developed using Enterprise Java Bean technology. The main
function of the application will allow registered users to place
items of theirs for sale. These will be then made available to
other registered users so they can bid for them and purchase them.
A user will also be able to view their items currently for sale
as well as view their transaction history. The application is
developed through the EJB technology as this technology is suited
towards developing component based applications. The technology
is also geared towards ensuring safe and secure transactions over
different tiers. The architecture of EJB also encourages good
programming techniques which for example ensures specification
is seperate to implementation and allows developers to more clearly
focus on the business logic of the application, instead of having
to worry about the more technical side of the development. Our
application it is hoped will exploit and use these and other advantages
of the EJB technology. To that effect it as also hoped that we
can carry out some kind of analysis or testing of our application
to highlight some of the advantages of using Enterprise Java Beans.
The aim of the SMS Newsletter project is to allow an Organisation
of some description to send out newsletters (reminders of upcoming
events) to subscribed recipients via SMS. A person can subscribe
to an organisation's newsletter by sending in a message to a specific
phone using keywords. The subscriber's number is then associated
with that club and when a newsletter is scheduled, the new subscriber
receives a message via SMS. The Newsletter is controlled by an
administrator via a web based user interface using Java Server
Pages. Platform: Windows 2000 (JSP's through any browser) Software:
Java and Java Server Pages using Tomcat webserver. Area: Multimedia
The objective of this project is to create an automatic filtering
and categorisation tool for sports related documents. The aim
of it being to aid people in their jobs, making it easier for
users to produce sports reports for television, radio and print
coverage. Using Information Retrieval methods the program will
be able to identify sports documents and then automatically categorise
them into their respective categories. For this ten super-documents
relating to ten different sports will be created, each super-document
will be about 50k of text each. Applying the Information Retrieval
method will allow the identification the best category (if any)
for any particular document. The interface will be web based.
The web page (when a user logs in) will alert a newscaster, researcher
or whoever the user is to the fact that there is new information
about a particular sport. In the event that the document being
entered contains information that leads the program to believe
that it could be two or more sports the program will let the user
decide which one it is. 1) Area of application: MultiMedia 2)
OS: Windows 2000 Professional using IIS web server with Microsoft
SQL Server access holding configuration information 3) Languages
used to implement: Java
I propse to develop an Email client that will be a 100% java
application. I will use the JavaMail API to do this. My Email
client will employ various internet email protocols. (POP, IMAP)
The features of the email client will include: A Folder list,
including the option to create your own folders. Tools for flagging
email for follow up, and a filtering option. An adress book to
manage your contacts. The capability to send attachments with
messages. Messages will be sent in plain text format, but if i
have time i wìll also try to include the capability to send HTML
mail. I also plan to include a hyperlinking facility whereby distinguishing
terms will be selected from an incoming mail message and linked
to google to allow searching for that term. To this end I will
develop a function to select words based on the word frequencies,
the idea that the mid-frequency words are best for this task.
I will use Java Swing toimplement the user interface.
The Personal Organiser is a diary on the web where users input
information about meetings or other events that they wish to be
reminded of, an SMS message and an email will be sent to the user
to alert them of an up and coming event. When the user initially
sets up his/her calendar they must select a password to be used
to logon to their diary/calendar. The username for each user will
be their mobile number. The user can access the web page via their
P.C. When the user logs on from their P.C. they must enter in
their Username (i.e. mobile number) and their chosen password.
When entering details about an event the user selects the date
of the event. On selecting a date the user will be given the option
of scheduling this event with other users, where by it will send
them an email and a SMS message about the proposed event. Then
the user can select how often he/she wishes to remind himself/herself
and other users of the event. The user can have a private and
public diary, whereby the public diary will be accessible by other
users (users will be issued with a username and password), which
will be specified by the user. When a user enters details about
an event for a particular date he/she can decided which diary
to put it into public or private. The private diary can only be
viewed by the user. If the user logs on from their WAP-enabled
mobile phone, the site recognises the users mobile phone number
and brings them directly to their diary/calendar. · Here they
can enter details of a meeting or an event that they wish to be
reminded of via SMS and email and how often they wish to be reminded.
They can also search through their Private and Public Address
Books for information. Platform Used: Windows NT Languages Used:
ASP, VBScript, VB, WML Application Area: Can be used for personal
or business use. Would be useful for people you spend a lot of
time away from their desk
WebMan, our Voice Operated Website Manager is a user friendly
application which allows relevantly inexperienced computer users
to create and maintain their very own website. By incorporating
the latest in speech recognition technologies with a consistent,
easy to use interface, WebMan covers up all of the normal complications
of using HTML to build a website and managing the web pages and
images. Dragon NaturallySpeaking is the speech engine behind the
application allowing for use of Voice Commands and Dictation of
Text. WebMan operates on a speak and click system with context
sensitive hints/help and basic tutorials for all of the main elements
of Web pages. WebMan provides easy to follow steps for all of
the more complicated aspects of designing web pages and uploading
them to the Internet. Area of Application : MultiMedia / Web OS
: Windows 95/98 & NT Languages : Delphi / Object Pascal
This chat room is a client/server application that uses sockets.
The server creates a thread for every new user that connects to
it. The client sends messages to the server, which broadcasts
the string to every other client. The graphics and the speech
synthesis coincide with the clients actions. A client is represented
by a figure on the screen, and if a client is sending a message,
their figure moves their mouth. This is done with the manipulation
of images, and the switching between them. Also every string that
is sent to the client is spoken out to the client. This part of
the project uses Java Speech API. This synthesiser avails of the
Microsoft package Speech SDK 5.1. OS: Windows NT Language : Java
Area: MultiMedia
This project is to be used to automate the linking of a unique
track and trace number to the name and address of the receiver,
of a parcel. The Unique number is held in a barcode which is to
be read from a pre-printed label, by a barcode reader, checked
using check digit calculation, and then linked to a database record
containing the names and addresses of the recipients. The program
also must allocate unique serial numbers, to each client, which
will be written to a spool file along with all relevant information
to be printed. This spool file will be used to personalise the
printed documents. These unique numbers must then be stored and
updated in order to authenticate and keep track of documents.
This entry to the database will also be time and date stamped.
Name and address must be printed on the label containing the barcode.
In addition to basic function of the program it will be required
to print out a dispatch sheet when a consignment of packages has
been finished. This dispatch sheet must include details of all
packages, complete with track and trace number. Also it must contain
the total number of packages dispatched. This dispatch list will
also be e-mailed to the customer. It will contain all the information
from the database. In the event of a misplaced package there will
be the option of a search under name, address, date and track
and trace number. Once the details of the package have been obtained
it will be possible to trace the whereabouts of the package via
the web. OS: Windows me Languages: Powerbasic Area: Other
Normally the steps of designing and creating database systems
are both very long and tedious for a DBMS user. The DBMS user
must first plan out the schema of their DBMS using some sort of
modelling system and then spend a long time creating the necessary
SQL create table statements to create the tables needed in the
Database. My project will combine both these long and arduous
processes into one simple to use application. This application
is a Database Design and Creation tool. The Design and Creation
tool will allow a user familiar with the basics of Database Design,
to create an Entity-Relationship model of the Database schema
on screen. Once the user has created their ER model of the RDBMS,
the application will allow the user to automate the Database Creation
process by generating the necessary SQL statements to create the
required tables in the database. The application will allow users
to design correct representations of database systems and automate
the creation of these systems. The application has a wide variety
of possibilities and uses by both professional and academic users.
Lecturers and Academic staff can use the application to teach
students about correct database design and creation. Users in
the private IT sector such as System Administrators and Project
Managers who require the easy design and implementation of a databases
can also use this application. Since the application has been
developed solely in Java, it is completely platform independent
and offers support to a wide range of RDBMS's through ODBC anJava's
own JDBC. At present the system supports both Microsoft Access
and Microsoft SQL Server. Due to the fact that the application
has been designed and implemented in a completely Object Oriented
manner, there is a framework in place to add different Database
systems easily (such as Oracle etc). As well as adding extra databases
to the system, users can also easily add unlimited functionality
to the application such as a Database Management Suite or a Verification
System for the ER model.
Having noticed the vast amount of documentation required throughout
the Software Project Lifecycle, this project aims to ease the
process of project documentation thus making it less cumbersome
and error-prone. The idea behind this innovation is creating links
between software documents regarding a specific project whereby
fields are automatically populated in the document templates.
This in turn reduces the overheads of both time and integrity
regarding the information input. The project is an online application
developed using Java Servlets, XML, SQL and HTML.Users can create,
store, and view documents for any projects they are involved with.
Our product has many improvements on current applications available
in the software market, through its user friendly environment
and innovative procedures and functionality, thus making it a
forerunner of its field. OS: Windows NT Area: Ecommerce Languages:
Java Servlets, XML, SQL and HTML
I propose to develop a browser based Project Management application
to administer, delegate and monitor resources that are involved
in a Government Departmental based project. A typical Government
Departmental Project has the following properties: Project Title,
Project Sub-Tasks, Personnel involved, Time constraints (milestones
and deadlines) and the budget allocated to the project. Each project
for the upcoming year is described and outlined in a business
plan at the start of the year. Each section within a department
has its own business plan, which shows the projects they will
undertake in the forthcoming year and all the relevant details
of each project as described above. The proposed application will
allow a section to update these projects and generate reports
on these projects based on certain criteria. This will enable
Government personnel to calculate in advance the feasibility of
future projects and to update projects as they progress during
the year. Functions & Features Provided 1. Informative Gantt Chart
Views: The Project Management tool running in a browser will allow
users to view and edit all project information that is stored
in a relational database. The user can view different information
on each specific project based on certain criteria. For instance
there will be Gantt chart views to see all projects currently
in progress and the time and personnel allocated to each individual
project. 2. Edit Specific Projects Using Forms Based on these
views the user can use forms to edit different projects or add
in relevant information. For instance if a project view shows
a project which has not enough resources allocated to it, the
user can see from other projects what resources are available
for that project and if necessary move the dates of that project
to coincide with the release of the necessary resources. 3. Incorporate
Management Science Techniques To increase the functionality of
the tool I plan to incorporate some Management Science techniques
to inform the end user of the feasibility of certain projects
and generate reports to show what resource is being under or over
allocated or similar project diagnostic information.
My project is an automatic stock ordering system, which uses
management science techniques to ensure a company gets it`s stock
for the cheapest possible price, while at the same time ensuring
a company will never run out of a product. The system is implemented
entirely in Java and uses a Swing based GUI which has been designed
to be as user-friendly as possible. The system has been designed
to work with any Win95/98/NT operating system, but due to the
fact that it is written entirely in Java it should be adaptable
to any platform capable of running a Java VM. The main area of
application for this project is ECommerce. OS: Windows NT/ME
This project objective is too create a software environment,
orientated towards a business & Finance market side of Computing.
The application is a Portfolio application, and the targeted end-users
would be private individual investors & asset Managment Companies.
The software will incoporate all the features associated with
portfolio managment & analysis, Which include - - Monitor changes
in the value of your Stocks and funds since they were purchased
- Get a year - to - date returns. - Get a single at-a-glance view
of price changes and market valuations for all holdings. - A graphic
analysis of stocks and markets. - Generate tax & fees due on the
investments. - Tailor the portfolio analysis to suit yor needs.
The software will be based on a Client - Server model, thus allowing
for multiple clients connecting to a database to store the vast
ammounts of information that portfolios amount. The application
will be a graphic user interface for the Front End and a Server
for the Back-end.The Front End will be written in JAVA - SWING
whilst the back end will be written in JAVA. This aspect will
then add a multi - platform dynamic to the Software application.
The database will be an SQL implementation, with an expansion
into ORACLE if possible thus matching the business nees of a Company
& the software that company would have. I have an indepth knowledge
of Java And Java - Swing and to set up a Network of clients connecting
to a Server. My research in this project though stems from the
Finance aspect and incorporating these standards into a viable
software package, as i have much interest from the financial aspects
of Computing.
The OPAC (On-line public access catalog) application is a web
based Client and user account interface. It aims to be a web interface
for any web browser to library management system or as a standalone
product to any Z39.50 server with an oracle database by using
Library and internet standards such as Z39.50,J2EE,XML,JSP. It
will provide ·Basic & expert searches ( title, subject, keyword,
author, ISBN, record number ) ·Library news system ( Library portal
news system ) ·Display member info ·Members will be able to review/rate
books It is OS independant.
Our project, CEREBROGEN, allows a user to control cursor movement
and object selection on a computer using brainwaves. This system
monitors brain electrical activity from Electroencephalographic
(EEG) readings in the sensorimotor cortex using electrodes applied
to the scalp. This information is amplified by a PowerLab system
and sent to a PC via the USB port. The sampled data is relayed
through a third party program, Chart, and then processed by our
Java based application. The data is analysed using a Fast Fourier
Transform, which produces a Frequency Band Spectrum. This spectrum
is further classified in relation to system-coordinated events
during training and testing to identify left and right intentional
movement. Over a number of sessions this allows the user to control
a binary channel with thought alone. This project was developed
in Windows 2000. The area of application is Human Computer Interaction
(HCI), specifically it is a Brain-Computer Interface (BCI) system.
The CEREBROGEN project was sponsored by Intellit Ltd. www.intellit.ie
Tools which allow a user to control another computer from a
different one via a network have been popular for years. However,
all software to date requires both server software to be installed
on the controlled machine and client software to be installed
on the controlling machine. This model presents a number of problems:
- Client software must be carried around on disks if the user
is to use it on different machines - Client software may not be
available for certain platforms - Users may not have permission
to install or run the client software on the machine My project
gets around this by using a system whereby a web browser communicating
using HTTP is used as the client software. A web browser is now
a standard piece of software on computers or, at least, computers
with network capabilities. Because of this the system could be
used by alot more machines than previous systems. For example,
using my system, the controlling system could be in an Internet
café, or it could be a web terminal which are becoming increasingly
common in airports, bus & train stations or it could even be a
handheld device. Basically any computer which can use the web
can be used to control the computer running the server. The ubiquitous
presence of the web access means that a user should be able to
control their home or office computer from anywhere in the world
on almost any machine as if they were actually sitting in front
of it. OS: Windows 9x, NT, 2000 and XP Language: C++ (using Borland's
C++ Builder) Application Area: Remote Desktop
For our project, we have developed two Java libraries to interface
with an Oracle 9i database. The only pre-requirement these libraries
have in order to work is that the server-side library is loaded
into Oracle 9i's built-in CORBA object request broker. The server-side
library provides methods to connect to an Oracle 9I database and
retrieve information about data in the database, including types,
objects (attributes, methods and hierarchy), triggers and stored
procedures. On the server side, we have also provided a Java interface
object which holds the data contents of a query, potentially containing
a combination of objects, arrays and nested tables. This interface
object can be accessed from the client side. The client-side library
is a thin client and provides methods to connect to the server-side
library using CORBA. The client supplies a usable interface for
calling server-side functions, as well as providing java swing
components. The swing components provide a graphical user interface,
which the user can add to a Java application to display the returned
data in a user-friendly fashion. In addition, we have developed
a sample client which illustrates the use of both the client and
server side libraries, as well as being a fully functioning application
in its own right. Language: Java and CORBA with Java OS: Linux
and Windows NT Application area: Java programming and Oracle 9i
The idea behind our project is to develop a Java application
to take an Oracle 9i database and transform it into a content
rich XML schema. In our case we have chosen the W3c XSD schema.
We will not only transform the basic features of the database
into our XML schema but one of the key points is that we will
be able to model and transform the features of Oralce 9i such
as inheritance, relationships, and the whole idea of object tables
into our schema. Once we have generated a vaild schema, we will
then transform the actual data to an XML file. The second half
our project it to take this generted XML file and map it back
to an empty Oracle 9i database. Our application will parse the
XML using an XML DOM parser and generate the create statements
and insert statement to create the database as it originally was
with all of its various features. Finally we will take our appliaction
and research the possibility of mapping our XML to any Object
Oriented database.
XML Database - Caoimhín Dónal Breathnach
The
project consists of an XML front end for an Oracle object-relational
database. The front end will allow the user to store and search
any XML document, and query it on the basis of any tags and content
it may contain. The interface will hide the Oracle Database from
view, and to all intents and purposes it will be an XML database.
The objectives of the project are to provide a powerful tool for
the analysis and storage of an XML document, or a group of XML
documents, and to demonstrate my understanding of the object-relational
database model,the XML document specification language, the Java
programming language, and how to integrate them successfully.
This is a portable java console for SQL statements and connections
to different databases. The console will use a JDBC thin driver
to connect to a database and to work on any Java supported platform.
The application will take the SQL query from the editor and pass
it to the database.The selected SQL statements are executed against
the established connection. One by one the results of the execution
are displayed in the window. The toolbar provides buttons for
saving contents of both the query and the result as ASCII output
and an option for loading and executing sets of SQL statements
as a plain ASCII file. The application will provide all capabilities
modern editors provide, e.g. cut and paste options. Keyword: Database
The traditional design of web servers is limited by a lack of
scalability and fault-tolerance. It is becoming near impossible
to process requests generated by millions of Internet users in
the world and to meet the need of hosting Internet information
that is growing explosively. My project provides an extensible
and scalable Web server system, which can be extended in size
to increase the computing power for handling large amounts of
user requests. The system makes use of freely available software
such as Apache web server to perform the actual web page serving.
My project provides a load balanced front end to a group of web
servers. It achieves the distribution of load using the Http 1.1
protocol and some simple yet effective algorithms. CWS actaully
consists of multiple modules such as Constellation, a gui tool
for creating configuration files, and CWStat, a module for logging
load information. The main part of the system in the actual load
balancing daemon, httplbd. OS: Linux Language: C\C++ & Gnome Application
Area: High Availibility Servers
BF
RacerX - Kevin Boland and Seán Fitzpatrick
Our project we have wrote a Directx Game Engine which supplies
basic development tools for a programmer to be able to develop
there own game quickly. On this engine we have built our game
BFRacerX which is a car simulation that simulates every aspect
of the car right down to the radio :) . This game allows for a
multiplayer game which can be run on the same console or over
a network.
My Project is an Online fantasy World Cup game. It is a child
of the ever increasing popularity of fantasy games online. It
involves email and sms notification to the users and allows one
to pick eleven players from 32 countries and over 700 players
competing in World Cup 2002. Each player earns points for their
performances in the World Cup and if you have this player on your
team, then you earn these points also. You are put in a league
with all the other users as an added incentive to choose wisely.
I will be using Java, Java Servlets, HTML, and SQL to implement
this. Area: MultiMedia OS: Windows NT
The application presented here is a graphical environment, which
allows the user to interact with a virtual 8086 embedded cpu system.
The purpose of the application is to provide a 'view' of the system,
ie to provide a window into the system, and sufficient tools with
which to manipulate or interact with the system. This is achieved
by using a familiar instrument panel layout to graphically represent
the state of critical elements of the system. The main elements
of the user observed system are the individual instruments, all
of which are independent real time view components. As their name
implies these instruments are updated in real time as the information
they present changes. From the interactive and functional point
of view, the user is provided with controls which are similar
to those found on domestic consumer audio visual appliances. These
all follow a similar theme with every control marked with a symbol
which by convention represents the functionality or purpose of
that control. This system uses the DCU D6 embedded development
environment, or D6 computer.
For my final year project I proposed implementing an Identity
Based Encryption (IBE) scheme. The scheme describes a method of
encrypting a message by using the recipients email address as
the public key. The project will demonstrate the advantages of
this system over conventional implementations of Public Key Cryptography
in a simple mail client. The research has been carried out by
the Applied Crypto Group, which is part of the Security Lab in
the Computer Science Department at Stanford University. Using
IBE the sender would encrypt the mail using the recipients' email
address. When received the recipient would call an independent
Private Key Generator (located on an independent server, for example)
to receive his private key which would allow him to then decrypt
his mail. The advantages are that the sender need not know anything
about the recipient when sending a mail to him except for his
email address. The potential users of this systems are anyone
who wishes to send encrypted email but don't want to or are unable
to obtain the recipients public key. It can be used in conjunction
with any mail client and is independent to the security of the
medium the message is travelling through.
An Identity Base Encryption (IBE) scheme
is a public-key cryptosystem where any string is a valid public
key. In particular, email addresses and dates can be public keys.
The IBE email system developed by the Applied Crypto Group at
Stanford University is based on the first practical Identity Based
Encryption scheme (IBE). The cryptosystem has chosen ciphertext
security in the random oracle model assuming an elliptic curve
variant of the computational Diffie-Hellman problem. The aim of
this project is to integrate the work done by the Applied Crypto
Group with the open-source mailing list manager Mailman. This
will allow users to send encrypted mails to their mailing list
using the list email address as a public key and receive individually
encrypted mails to their own address. An extension to the current
Mailman web interface will allow users to encrypt / decrypt mails
that have been encrypted using IBE, and request their key shares
to be mailed to them. Languages: C, Python Operating System: Unix
(for server), Multiplatform (web interface). Project Category:
Network Systems
The main idea behind this project is to allow a person with
multiple e-mail accounts to check all their e-mail at once, thus
cutting out the cumbersome process of having to sign into 4 or
5 different webmail accounts a few times a day. A user initially
registers with One Stop shop by filling in a simple form with
the username, password and mailhost names of each of their e-mail
addresses. These details are stored in a database and the user
is issued a password to gain access to One Stop shop. Each time
the user logs into the site, all of their mail servers are contacted
immediately and any new mail is downloaded accordingly. As well
as checking email each user can reply, forward, send, upload and
download attachments and basically have access to all the standard
e-mail facilities provided by any mail client. The other side
of this project will involve SMS notification of urgent email.
When a user is not logged into the site a mailchecking program
will constantly run in the background. If a new e-mail arrives
and the sender is marked as important in the users address book,
they will be notified via SMS about the e-mail. The senders e-mail
address, the subject and the first few lines of the main body
will be sent.
The aim of this project is to develop a three dimensional simulation
of a shoal or school of fish. The movement of the fish will attempt
to simulate real-life movement patterns by use of a distributed
behavioural model. To do this each fish will have access to the
whole scene's geometric description but, in order to simulate
real life behaviour, each fish can only react to objects within
a small distance from their location. The project will also include
the ability to introduce a predator into the environment and see
how the fish react. This kind of model has been used to produce
film scenes such as the penguins in Batman Returns. It is a particularly
good demonstration of 'emergence', complex global behaviour arising
from a set of simple local rules.
PopM@il
- Eamon Moore and John Joyce
PopM@il is a portable email client that will enable the user
to send and receive POP3 email. The client will also incorporate
some usage-enhancement features such as dealing with attachments,
mailboxes, filters for incoming email and unwanted spam mail,
a drag and drop facility and also supports multiple accounts.
Our main aim regarding the design of this project is to create
a user-friendly application, one that is easy to use and at the
same time satisfies all the user's needs and has all the necessary
components of a standard email program. The project is designed
using the Java programming language, in particular the use of
JavaMail for dealing with connection to mail servers, attachments
and the information about the email. Connections are made through
the email client to a POP3 server for downloading email and an
SMTP server for sending email. PopM@il is designed to be compatible
with all POP3/SMTP servers for both home and office use. Our program
comes in the form of one executable file that is used to install
PopM@il on an operating system. It is compatible with Windows
95 and later versions, Windows NT, Solaris and Linux. This installation
includes registry updates, shortcuts on user desktops, start menus
or user drives.
We aim to build a secure peer to peer instant messenger application.
Allowing users to generate Session keys using SPEKE(Simple Password-authenticated
Exponential Key Exchange) encryption. It is a password-authenticated
Diffie-Hellman exchange, where the password forms the base of
the exchange. In standard Diffie-Hellman, the base is usually
a fixed public number but with SPEKE, the "generator" of the exchange
will be a small password shared by both parties wishing to communicate.
This will provide an advantage over other Instant messenger Services
such as MSN, as it will allow users to transmit confidential data
over a secure connection. We intend our Instant Messenger to be
different by not using a centralised server. Each instance of
our application will have the capability of being a Client/Server
in its own right. For example with MSN Instant Messenger a centralised
server is used. When a user starts up their IM software, a copy
of the IP address of the machine that they are running is associated
with their username and stored on the server. Each application
running on the internet connects to this server and receives the
usernames and IP address' of all other users online. Our application
will attempt to eradicate the centralised server to make a more
robust system independent of one single server. The only problem
with this is discovering a method of user recognition, that is
letting the users know who is online and at which IP address they
are located. We believe we can accomplish this through the use
of email. We are unsure of the difficulty of implementing a decentralised
system, our primary concern is to establish a reliable and secure
Instant Messenger service. Although, it is our ultimate goal to
make this secure IM service independent of a central server.
The purpose of this project is to provide authentication to
streamed data, for example an internet radio broadcast or an online
video stream. Authenticating such data is problematic as it adds
a computation and communication overhead which needs to be minimised
as much as possible while still providing maximum security, there
is also the problem of packet loss which may hinder authentication.
Several schemes have been proposed to overcome this, which are
implemented in the system. The system also allows for the securing
of the data via encryption. The system acts as an independent
middleman, adding authentication data to the stream and/or encrypting
on one end and verifying/decrypting the stream on the other. This
allows other applications which may send data over insecure networks
to utilise these security features.
The objective of our project is to design an online application
which will allow users to gain information regarding local sports
events using either the World Wide Web on their computer, or using
their mobile phone (either by Text Message or WAP). Our aim is
to ensure that this system would be integratable into the business
market (e.g. that a radio station could use the system to provide
up-to-date sports information to its listeners freeing up presenters
/phone attendants to do their own job which is produce a show!).
The application allows users to input all kinds of information:
fixtures, results, club details, training details, etc to the
system. This information can then be available to the public through
whatever mode of communication they desire. The project is implemented
through Active Server Pages (ASP), Servlets, Xml, Wml, SMS and
uses technologies such as Internet Information Server(IIS), and
Microsoft SQL Server. Project Area: Ecommerce. OS: Windows
I propose to do an editor for XML. The term, "XML editor" can
refer to a great many types of tools, depending on the purpose
to which the editor is to be put. Having gone through several
sets of criteria in reviewing editors I have decided that this
was the minimal requirement, ·The tool must be able to open up
multiple documents ·Find/Replace, including global, search a directory
find/replace ·It must show the editor relevant tags and make tagging
easy ·It must validate the results and make it easy to find errors.
·It must be able to switch, update, or add DTDs later. ·It must
allow the creation and/or editing of well-formed XML documents
without DTD. ·If the tool can accommodate at least some types
of external entities, such as images, all the better. ·We also
need a tool for creating, changing, and validating DTDs (the files
that define XML document structure). At this time, many XML editors
do not tend to meet these criteria. I will also have to use Extensible
Stylesheet Language (XSL). XSL is a language for expressing stylesheets.
By attaching style sheets to structured documents on the Web,
authors and readers can influence the presentation of documents
without sacrificing device-independence or adding new tags. As
I get the minimal requirements completed and have more experience
with other editors I will better know and be able to decide what
additional functionality to add to the XML editor.
The idea that started this project off is the fact that only
a small percent of computer power today is ever actually used.
Most people who own PC's never actually need the computing power
that they possess. With this project I would like to get back
to why computers, I think, where originally conceived. The fact
that there are certain things that our brains cannot do, that
it has its limits. While computers are able to work in ways which
we cannot, our brains can do things that computers at the moment
are incapable of doing, for example pattern recognition. Computers
can never actually replace our brains but with computers we can
extend our own capabilities. While computer applications up till
now have been helping man in all areas of life from the cooking
food to chaos theory computers themselves, work-stations and PC's
are now becoming a part of every day life for almost everyone.
Now more so than ever before they are beginning to play a very
important role in education. The project I propose, is to use
computers to help people with learning disorders, specifically
applying to children with learning disabilities. The idea is to
extend their abilities through tailored exercises set out by a
supervisor, building on areas children find difficult to relate
to. The aim is that the computer would give attention to children
in an interactive way, such that they would break down any fears
around different problems, such as spelling and reading and pronouncing
words. I have chosen dyslexia as a specific case disorder. There
seems to be two main parts to this project, the first being the
information gathering and research part, the second being the
actual implementation of a software package that will certainly
be a good template for similar packages in the future. The main
aspect of such a project is research, which will obviously take
up a large amount of time. From that point of view I have good
resources, those being contacts working in the field of dyslexia
which will give a good source of information to build upon. The
software would possibly be either windows based or web based,
therefore will either be programmed in Java or C++. It would involve
a lot of graphics to capture and hold children's attention as
well as a pointing and clicking mechanisms as a user interface.
Dyslexia is a very broad area of study and it would be unrealistic
to believe that my project would be able to address all aspects
of it. For this reason I hope to perfect at least one computer
interactive aiding solution to a specific learning problem. The
program will be informative, using researched data to give parents
and teachers the specific regions of dyslexia that need to be
addressed. It will be interactive, in the sense that, parents
and teachers will be able to adjust the tool to help different
children build necessary skill that haven't been developed for
whatever reason. The plan is that I will narrow down my research
field over the following weeks to a specific element of dyslexia
that could be greatly helped with computer aid.
Many organisations market products over the WWW. Most seem to
use custom designed web sites. The idea here is to produce an
easy-to-use wizard that would help a retailer to set up and maintain
an online store. The assumption would be that the user does not
know much about the web, html, xml, cgi, servlets or anything
else. The program would solicit information from the store owner
and construct the appropriate database and webpages. Such information
would be: Choosing an overall template for the look of the webstore.
Colours and fonts to be used. Product details such as descriptions,pictures
and prices. After this initial setup all the tables in database
and stored proceedures will be generated. Once these are setup
the store owner can then only alter the information of the products.
Such as adding/removing/editing product information This application
will also have a reporting tool to give the store owner information
on product sales. This program would be written mainly in Java
and the database would be SQL Server. The pages that are generated
would be in XML.
I propose to develop a file sharing application, which will
work peer to peer as opposed to the regular client-server model.
The idea is for a company to adopt the program and use it to transfer
files to different locations and between departments and people.
Using an easy-to-setup program will free up resources and reduce
costs on a company's system, where the transfer of multimedia
files and the like is commonplace. The application would also
be faster than, for instance, transferring files normally over
the network. Files will be arranged under categories, and a search
engine will be available, making it easier for the regular computer
user to find the file they need. Also, users will be able to control
the files others can and cannot see. What sets this apart from
other file sharing applications is that it is totally Java based,
with a friendly user interface, therefore enabling any company
to employ the system, no matter the platform they are using. Also,
the program will be easily customisable, as well as small and
efficient, and so can be taken up by a company easily. Basing
the project around existing programs like Gnutella and the likes
of OpenNap, I hope to provide an easy to use but efficient balance
of the two.
Basically it's an SMS based project that will allow the user
to interact with their desktop while they're away from their computer.
The 2 programs that the user will interact with are Microsoft
Outlook and JabberInstant Messenger. I wrote a Com Add-in for
Outlook that will give SMS options to the user.The add-in is written
in VB and is compiled into a dll file. My program added a panel
to the options part of Outlook. The program will be able to send
a SMS notification to a user when he/she recieves an new mail
when they're away from their computer and this SMS will contain
the sender, subject and as much as the body as possible (SMS messages
must be less than 160 chars).Also, the user can enter a meeting/appointment
in their Outlook Schedule and a SMS alert will be sent to them
before that meeting on that day (say an hour beforehand) containing
the subject and location of the appointment. I have chosen Outlook
as the mail program because it's the most common one on PCs. I
decided SMS was the best technology to use as most people nowadays
have mobiles and they can send and read messages easily. The second
part of my project is being able to log onto Jabber (popular IM)
via SMS and send SMS messages to "buddies" who are logged on to
Jabber via a normal client on their PC. My application takes the
SMS, converts it to an IM message (XML stream) and sends it to
my Jabber Server (running in Solaris) which will then send the
message to the intended jabber client (eg. exodus). The user's
buddies can reply to the user's message as normal and this message
is then sent to the jabber server to my program (where the user
is logged on) and my program then converts the IM message to an
SMS message and sends it to the user. All my software is written
in java (except for the COM add-in) and it runs in Windows NT.
Linux
Disk Magic - Anthony Moyles and Sarvesh B. Singh
We intend to develop an application that can copy and compress
a Linux partition (EXT2). This can then be saved to be restored
later at the users convenience. The main feature of LDM will be
its ability to compress the partition information, thus making
it possible for a whole parition to be stored with significantly
less space being used, e.g. a 2GB parition can be backed up onto
a standard 700MB CDR. The user will interact with LDM via a simple
GUI. Most Linux users today have dual boot systems, running Linux
and Windows together. To cater for this LDM will suport FAT16
(DOS/Win95/NT) and Fat32 (Win98/ME/2000) file systems, allowing
the user to back up their Windows partitions also. The NTFS (WinNT/2000/XP)
driver for Linux is currently in its experimental stage, while
the UFS (Solaris) driver for Linux is in Beta. This project will
achieve an application that can aid the user in computer management.
LDM gives the user flexibility to experiment with their system
setup. The user can rest assured in the knowledge that if something
were to go wrong, he/she can restore their system to exactly that
spot before they started altering the system i.e. the last time
the partition was operating properly. Software testers will also
find this tool useful. LDM will decrease significantly the time
and effort required to setup the test environment. These are the
two main problem areas that testers deal with routinely. The Norton
Ghost tool inspired our idea for an application, to be run in
a Linux environment, that could do all these things for an EXT2
partition i.e. to cater for the Linux user.
My fourth year project is a website teaching children to play
gaelic football and hurling. The website consists of a player
area, coach area and a visitor area. The player area contains
all of the skills and drills that are Gaelic and Hurling are drawn
in Flash and give a detailed description of how to perform the
move. The Coach area of the website allows the coach to add players
to the site, add fixtures, add results, generate statistics, based
on previous performances and update all of this information. The
website is backed up by SQL server 7.0 databases into which the
site inserts, updates and selects information. The platform that
i am using is windows NT. The languages are VBScript, SQL,ASP,
HTML, Flash, ActionScript.
This project is a results package for cycling races. It is mostly
aimed at stage races such as the Tour De France or other such
stage races in Ireland such as the FBD Milk Ras. It involves A
comprehensive Database in SQL Server. A Management tool for setting
up race information like Riders, Teams, Mountains/Points competitions,
used for maintaining all of the race results information. A Web
Based tool to provide the results with positions, times, team
prizes(Top 3 riders of each team) and the classifications in the
other competitions. The Web based tool may be a page which could
be integrated into a Newspaper web site or the likes of Cyclingnews.com
online results. As soon as the results are in the database they
are automatically availabe over the Web so no knowledge of html
is required of the user. The Management tool is written in Visual
Basic and the Web-Based tool is written in JSP. The project was
developed on Windows Advanced Server 2000. 85.Design By Contract
- an Implementation in Java Stephen Hall I will be developing
a tool that will test class conformance in Java using Design by
Contract and an assertion based approach. Design by contract is
a technique used to help ensure the correctness of software. A
software contract is a specification of the behavior of a class
and its associated methods. The contract outlines the responsibilities
of both the caller (client) and the method being called. Failure
to meet any of the responsibilities stated in the contract results
in a breach of contract, and indicates the existence of a bug
somewhere in the implementation of the software. Contracts increase
the reusability and robustness of software while decreasing its
complexity. Correctly implemented software contracts reduce the
chance that software bugs could remain unnoticed during the testing
of a program. There are three elements essential to defining a
software contract: preconditions, postconditions, and invariants.
Preconditions and postconditions define the responsibility of
the client and method, respectively. Invariants define rules common
to both the client and the methods. Defining responsibilities
for classes and methods helps you to avoid writing redundant checks
because methods and classes are contractually bound to fulfill
their part of the contract. A method's preconditions represent
the responsibilities that a client has when making a call to that
method. Preconditions specify what a portion of a program's state
must be at the entry of a method. If a method's preconditions
are violated, then this is a breach of contract, and the method
is freed from the responsibility of meeting its postconditions.
It isthe responsibility of the client to meet a method's preconditions,
not the responsibility of the method to verify that its preconditions
have been met. Postconditions are used to specify a method's responsibilities.
As long as its preconditions are satisfied, a method is responsible
for leaving the program in a state defined by its postcondition.
It is the method's responsibility to ensure that this state is
reached, and the client can continue executing while safely assuming
that the method has performed correctly. Application Language:
Java Platforms: NT / Unix
My project addresses the problem of roaming profiles with Internet
Explorer. Giving users the ability to store their bookmarks in
an easily accesible online database. The key feature of the project
is a Toolbar for Internet Explorer, written in C++, which authenticates
the user securely and pulls their list of bookmarks from an LDAP
directory service running remotely. Users also have the option
of logging into their accounts via the web, with a PHP interface
to the database also available.
www.postit.com has been developed specifically for web users
temporary file storage needs. Users create their own accounts
online and are then free to upload files to the PostIt server
where they are hosted for up to 48 hours. The upload/download
can be achieved by using PostIt's own FTP client (for those with
administrative rights to download it to their own hard drive)
or the simple online upload/download mechanism. Users will be
prompted by e-mail, 2 hours before the 48 hour deadline to begin
to retrieve their files, else they will be purged to free up more
space on the server. The main aim of the project is to eliminate
the long waiting times associated with e-mailing files to home
PC's from the office, college or even Internet Cafe's. It also
provides a useful service to any user who has been caught out
without any storgae media ie. Floppy disk or CD-RW. The project
has been developed on Window's XP, primarily with Microsoft's
new Visual Studio.NET using ASP.NET, C# and SQL Server 7 which
has given me the oppurtunity to have a look at what the future
of Internet development holds. This means that Internet Explorer
6 must be used in order to view the project. Adobe PhotoShop and
ImageReady have also been used for all Web graphics. OS - XP Application
Area - E-Commerce Language - C#
DCU
Bookstore - Brendan Wall and Ciaran McCormack
We propose to create an online DCU bookstore where students
can buy and sell second hand books aswell as purchase their recommended
reading as new. The service could be run in conjunction with the
students union and/or the campus bookshop. We propose that the
site will be accessable through a variety of internet mediums
eg pc,wap and palm pilot. We will use XML and stylesheets to create
the different outputs depending on which client will be calling
the server thus making the project client independant and relieving
the need to write html,wml etc for each seperate client. An SQL
database will store the student, book information etc which will
be automatically updated or manually, through restricted administration
access. We will implement active server pages/vbscript using microsofts
iis as our server. Also we would like to implement SMS capabilities
if we can get access to an SMSC. Since we also want the project
to function as a real e-commerce application would we will also
aim to acheive full security with openSSL.
I want to develop a 3d artifical ecosystem with automata living
in it. I hope to simulate sexual reproduction and survival aspects
of the sytem - food and water etc. I will attempt to simulate
a range of species with differing intelligence. I will try to
simulate: Families Herbivores Carnivores Plants Water & dry &fertile
areas BALDWIN EFFECT I would like to develop the system to a stage
that I can see the various effects of intelligence on the autoamta
to their survival and evolution. APPROACH I will try many methods
of simulation Neural Nets for the intelligence. Either genetic
models or algoritms for evolution and reproduction. OS: Windows
95 and above Language: C++ Uses: OpenGL, Neural Nets.
SMS
Email Client - Fergus Maloney and Patrick Mooney
Email2SMS is a mobile email solution, providing real time access
to email accounts anytime, anywhere. Built entirely on Java Technologies,
the solution allows users to fully interact an existing POP3 email
account though SMS text messages. The solution consists of two
main components: a powerful online administration suite and a
backend SMS/Email Engine. The online administration suite allows
users to manage their profile and establish sets of email filters.
Email filters allow the user to prioritise incoming emails. Using
these filters they can define which emails they wish to receive
SMS notifications about. Filters may also be set up have unsolicited
emails, such as Spam automatically deleted from the server. The
SMS/Email Engine utilises hardware to send/receive all SMS text
messages. Using a Nokia 5110 and data cable, we have successfully
built a communications engine capable of parsing SMS requests.
Notifications of awaiting emails are sent to the user, who may,
by return text message, request additional parts of any new email
message. Users may also create new emails or reply to existing
ones directly, all through SMS text message. Fundamentally our
software is about SMS interaction with some application or device.
For this implementation are interfacing with POP3 and SMTP servers.
This can very easily be extended to control many other applications
or devices which are attached to the server.
Our project attempts model that art of composition of music
in a computer and explores the question of whether it is possible
to reduce a creative process such as composing music to an algorithmic
procedure. The program uses various randomisation techniques and
given a set of rules of melody, combined with probabilities of
certain musical traits occurring to generate new works of traditional
Irish music specifically in the style of double jigs, single jigs
and reels. The program renders its output to the popular standard
midi file format so it can be used or edited with other sequencer
programs. It is also useful a creative tool for composers and
musicians of traditional Irish music. OS: MS Windows 9X/NT Language:
C++ Project Area: A.I.
My project is a virtual reality chess game. The game and optionscan
be controlled by voice commands. The virtual chess board can also
be manipulated with the mouse. There are no control buttons etc,
making it more realistic. The game employs full En-Passant chess
game rules. The game is networked via sockets to your opponent's
computer who has the same consistent view of the game. The option
menu controls game settings such as pawn colour, history of moves
and other things. The game can be saved and later loaded and played
across the network. All of these can be controlled by voice commands.
There is also a chat room allowing opponents to communicate. The
game is developed in Java on Windows NT/98 using Java3D,Java Speech,
Java Sockets
Functions the system will perform. The main function of the
system is to allow fresher students view the types of accommodation
that are available, near the college of their choice, without
leaving their home. The students can then choose the type of accommodation
they wish, from a list of dwellings, which have been received
from landlords, and the various accommodation officers from the
colleges incorporated. The system provides a free of charge advertising
medium to landlords wishing to rent their properties to students.
Their property details will be entered into the database, which
will allow the students view what is on offer. The system can
then match their preferred criteria to what's available. The front
end will provide a chat room facility, which will allow users
that are logged on to the system, communicate with each other
in real-time. Here they can ask questions, arrange meetings or
meet new housemates, whatever the case may be. Landlords can chat
with students, students can chat with students and both can chat
with that administration staff if the need arises. Also on the
front end, a message board will be available, again for users
who have an account with the system. Here messages and comments
can be left for whomever they are intended for. This means that
users do not have to be present at their machine in order to communicate
with each other. Her users can finalise arrangements and verify
details concerning agreements. I want to use Oracle 8i DB and
XML to develop this system.
For my
4th year project I will develop a web site that will allow people
to play the traditional Irish card game of 45 online. The game
itself involves a complex scoring system with points awarded for
certain hands, the winner being the first to reach a score of
45 points. The site will be fast, easy to use and will create
an environment that a traditional player is used to. 2, 4 or 6
players will be allowed at any table and as many tables as are
needed. Players will also be allowed to chat online. A player
will be able to play against the computer if no other players
are online, or if a table is a player short, i.e. if there are
5 players, the computer may make the sixth. In addition to the
development of the website, the project poses challenges in regards
to playing the game. The computer must be able to understand the
rules of the game as well as the intricacies of the game such
as robbing, wheels, jinks, trumps and the possibility of being
decked for reneging. This will involve creating a simple form
of AI for the computer so that it has a basic understanding of
tactics and good practices as well as the rules of the game. This
may be done with artificial neural networks and probabilistic
predictions. Amongst other things, this will involve recognising
weak and strong cards at any particular time. In games with partners
there will have to be a guard against taking good cards from a
partner. The cards will be shuffled after every game to simulate
the way in which cards are shuffled and then cut. I am going to
implement one specific version of the game but time permitting
I will add other versions such as Auction 45's and other versions
with more than 6 players.
Our project implements an interactive, visual, web-based software
developer's "assistant". This "assistant" is for interpreting
and applying specific standards, particulary "Software Considerations
in Airbourne Systems and Equipment Certification (RTCA/D0-178B).
This interactive visual web page provides guidelines for the production
of software for aribourne systems & equipment that performs its
intended function with a level of confidence in safety that complies
with airworthiness requirements. The application will discuss
the aspects of airworthiness certification that pertain to the
production for airbourne systems. We have implemented a search
engine on the site so the user can search through the many pages
in our site. It will include various slide shows for the user
to demonstrate various parts of the code. eg. structural coverage
analysis, so in addition to a description of the steps he/she
may need to follow we came up with examples of code to demonstrate
how to do it. Also the user can send in or view comments about
the site and improvement that need to be made.
As the computer games industry expands in the face of emerging
technologies and increasing home-user computer power, the potential
to create more detailed, immersive and realistic games is being
gradually realised. In the spirit of this progression, I chose
to develop a cloth dynamics simulation in a 3D environment as
my final year project. Realistic-looking cloth is rarely seen
in today's computer games and I have yet to see cloth in a game
which reacts to stimuli. The engine I developed demonstrates cloth
reacting to both user interaction and environmental forces. The
project was built using Visual C++ and the DirectX 8 API. OS:
Windows 2000 Area: Others
This project will consist of two main parts. 1. ICD-9 (International
Classification of Disease) Lookup: This system of coding is globally
recognised and used. This coding system consists of thousands
of codes and apart from a handful of common codes doctors and
clerical staff will not know a particular code off the top of
their head. The first part of the project will be to develop a
system for searching for codes that will be easy to use for all
involved. The hospital's budget is determined by the amount of
procedures and the complexity of procedures encountered in a year.
A more complex procedure will mean more money in the budget due
to the greater cost. Therefore accurate recording of the codes
is needed. More accurate coding could result in as much as a twenty
percent increase in the hospital's current 90 million budget.
Another aspect to the codes is that they are sent to the ESRI
(Economic and Social Research Institute). This is currently done
on paper on a monthly basis when it could be automatically generated
in weekly reports and emailed to the ESRI. 2. Patient Discharge
Summary System: When a patient leaves the hospital they are handed
their discharge summary form in a brown envelope. Instead of this,
the automatically generated discharge form could be emailed to
their G.P. The advantages of this would be speed and security
of delivery, also clarity as opposed to the traditional hand written
form. OS Used: Windows 2000 Professional/Advanced Server Languages
Used: ASP, HTML, DHTML, XML, JavaScript, Java, XML Schema Area:
Health Informatics
The Fire Fighting Robot (Sam) is built from Lego parts, and
uses the Lego Mindstorms Programmable Brick as its "brain". Sam
locates a fire, extinguishes it and returns to its starting point
or home base. The system utilises a number of sensors, from touch
to rotation, to achieve its goal and is programmed using Visual
Basic and RCX code. Sam is a behaviour-based robot; the control
system is broken down into horizontal modules, or behaviours that
run in parallel. It follows the rules of Brooks Subsumption architecture,
where control is layered. Higher layers subsume the roles of lower
level layers when they wish to take control. The bottom layer
being "avoid obstacles" and the top layer "locating the fire".
The robot relies on the accuracy of its navigation technique (Proportional,
Integral, Derivative control), and dead-reckoning, to know where
it is at all times and for the journey home. Sam is a totally
autonomous robot that displays complex and useful behaviour through
the operation of a not necessarily complex control system, and
could in theory be used to fight fires where humans could not,
(hazardous chemical fires, etc.) that is provided that the Lego
bricks didn't melt!
For our 4th year project, we aim to develop a version of the
infamous Irish card game 25, which will be accessible to those
who are visually challenged thanks to the inclusion of speech
technology as well as being accessible over the internet. Our
application will allow for one-player games where the player will
compete against the computer as well as providing for two-player
games where players at different locations may compete against
each other. In the case of one-player games, it will be necessary
for the computer to be familiar with the rules of the game and
make decisions as to what card to play next. Upon completion,
we hope that the computer will be able to create the same competitive
atmosphere which exists in a real-world game of 25. OS: Windows
98 Languages: Java, java swing and the Java Speech API Area: Network
Systems
This application tackles the reality which currently confronts
many individuals who liaise with the Department of Agriculture,
from both a client and employee perspective. The system will involve
the deployment of a web-based server sided application which may
be used by the following individuals: 1.Farmers: The currently
inaccurate and archaic pen, paper and telephone approach, which
many farmers are forced to adapt as regard stock control, sales,
births, submission of premium applications for animals and crops,
along with queries regarding delayed payments, will all be eradicated.
It also provides a solution to the cumbersome method whereby the
identity cards of each and every animal receiving premiums or
inspections must be mailed to the Department. 2.Department inspectors:
They, upon successful login, can access their current timetable,
along with appropriate farmer information and medium scale client
maps. 3.Department administration staff can access and process
applications and registrations submitted to the Department of
Agriculture backend SQL Server database, using a user-friendly
front end. Furthermore the modernizing the Department's system
will also comprise of a Java based network application, which
will connect the various Meat Factories or abattoirs throughout
Ireland, to the Department by means of a network connection. This
will enable the appropriate information on slaughtered animals,
and the herd from whence they came, to be sent from the factories'
database in their system, to theDepartment's. The Department can
then process this information and update the appropriate farmer's
record on their system and send out premiums accordingly. This
e-commerce application is designed to fill the technological void
that currently exists for many involved in one of Ireland's biggest
and most fundamental industries to date. Programming languages:
ASP, VBScript, JavaScript, SQL, Java OS: Windows NT Database:
SQL Server Area: ECommerce
My fourth year project is to develop a web based multimedia
project for teaching Céilí dancing. It aims to teach a few basic
traditional figure dances online by using a mixture of diagrams
and explanatory text. There will be music accompaniment to this
so that as each part of the dance is learned it can be practised
with the music. On completion of each dance the music is played
all the way through so the dance can be performed properly. The
reason for choosing to implement this as a web based project is
that online it has the potential to reach a world wide audience.
In particular it will be useful for dancers training for their
teaching exams. For implementing the project I will run it on
an Microsoft IIS server. The dynamic nature of the project was
implemented using ASP, with XML, XSL, HTML, JavaScript and VBScript.
Graphics are created mainly in Paint Shop Pro. The moving illustrations
are designed in Flash and the music accompaniment added either
in Flash or with a separate applet developed with Java.
There are several stages to a compiler, Lexical, Syntactic,
Semantic, Optimising, Instruction selection and the Register allocation
stage. The output of the register allocation stage is 8086 assembly
language and I will try to implement the Register Allocation stage
so that the output assembly code will suit the D6
Our project involved the design of a search engine, Treoir,
which only returns webpages written in the Irish language. We
developed an intelligent spidering system, which explored the
WWW and downloaded webpages only written in the Irish language.
We used the language recogniser we developed for our 3rd year
project to verify that the page to be downloaded was written in
Irish. When a query is inputted by the user, the search engine,
using the document length normalised TF/IDF ranking formula, returns
pages in order of their relevance to the query. Languages: Java,
Perl
The
purpose of this project is to generate a voice with an Irish accent
for the Festival speech synthesis system. The voice will be constructed
using the linguistic theory that modern Irish accents and dialects
are derived, in part, from our Irish-speaking ancestry. As such,
a collection of diphones (sound units) will be extracted from
a lexicon of Irish and recorded. These will be mapped to English
pronunciation rules and used to synthesise speech. OS: Red Hat
Linux, Windows 2000 Professional Application Area: Speech Processing
Language: Java, Scheme
I aim to create an Interlingua Machine Translation system. The
system will take in a sentence of French or English as input and
output the correct translation in the target language. I am using
the Interlingua system of Machine Translation which analyses the
source text into a language-independent representation of the
text, and this representation is then used as the basis for the
generation of the target language text. In this way analysis and
generation are totally seperate components but will be larger
and parse deeper than those in a transfer-based system. Ambiguity
is one of the biggest problems facing NLP and machine translation,
so I have designed the system to solve some of the lexical and
structural problems associated with translating ambiguous language.
The system is written in Prolog and I hope to integrate it with
a web interface using HTML and Perl CGI-scripts.
The project runs from my DCU website. The interface uses Html
and sends the user's question to a Perl Cgi Script. The Cgi Script
changes the query to an acceptable format for Prolog and then
sends the query to the Prolog critiquing system. The critiquing
system expands the query so as to produce a new search string
that will yield better search results than the original query
would have. The Cgi Script takes back this new query and sends
it to a search engine with the use of JavaScript. JavaScript is
also used to display the results on the original query page.
Anaphora Resolution involves the resolving of a pronoun with
the preceding noun that it refers to. An example: The girls watched
the dog play. They laughed at it. People for the most part have
no problem with this discourse - they intuitively know that 'they'
refers to the girls and 'it' refers to the dog. However a computer
system has no such intuition, when it tries to process a text.
This can lead to problems especially in the areas of Machine Translation
and Information Extraction. My project aims to tackle this problem.
My program can take any HTML tagged text, and without any linguistic
knowledge (no parsers, dictionaries, part-of-speech taggers etc)
will find all the nouns and pronouns in the text and then run
a series of tests on nouns in a certain range before the pronoun
to determine which is most probably the antecedent for the pronoun
i.e. which noun the pronoun is referring to
POS Tutoring System is website developed as an aid for learners
of English as a foreign language. It focuses on the eight main
Parts of Speech (POS) and aims to help the user develop an understanding
of the main POS in English and their use, through tutorials and
exercises. The site uses colours to highlight the POS in the tutorials,
the POS Highlighter Tool and the exercises. This approach is based
on the idea that colours enhance learning, by making the text
come alive. The use of colours in a text highlights those words
of interest and also keeps the reader interested in the text.
The online POS Highlighter Tool incorporates a previously developed
POS tagger, written in JAVA and a highlighting program written
in CGI using PERL, linked by JAVA servlets. The web tutorials
and exercises are written in HTML and CGI scripts.
The aim of my project is to develop an MT system suitable for
use in the freight transport industry. Many smaller freight transport
companies are at a huge disadvantage because due to labour costs,
etc. they cannot afford multilingual staff, thereby reducing potential
business in Europe and beyond. I aim to develop this project furtherand
expand its capabilities for realistic use within the industry.
This MT system would enable queries and complaints to be inputted
in the user's language (presuming the user's language is French
or English) and the resulting text can be sent in the target language
to its destination. The freight transport industry employs a range
of special vocabulary, which I aimed to represent in some way
in this project. The system will be implemented in Prolog with
a HTML/CGI user interface.
My project aims to improve on conventional Information Retrieval
methods by retrieving the answer to a user's question, as opposed
to a document, which contains the information. It is a closed
domain question answering system, using the DCU timetables as
its domain of reference. The user's question is parsed into a
logical representation by a grammar to extract the question focus
based on semantic information. This representation is then used
to query the database to retrieve the appropriate answer, which
is then returned to the user. The grammar and logical processing
of the input is handled using a PROLOG DCG (definite clause grammar)
and the interface, and input manipulation is handles using a standalone
Java application, or using HTML and Java servlets.
This project consists of two main parts. The first part converts
an RTF file into a HTML file and in the second part, this converted
HTML file is translated using an online translation system. Our
program accepts a directory of RTF files as input and performs
both procedures on it. Comparison tools exist within the system
which are used to make sure the files have not lost any information
in either process. Our tool works on the windows platform. All
the code is written in Perl with the exception of the comparison
tool, which is coded in Java.
In the last decade corpus based and statistical methods in computational
linguistics have become very widely used. Various corpora provide
the necessary framework for the extraction of broad coverage grammars
in the form of probabilistic context-free grammars. These grammars,
however useful in the domain of computational linguistics have
been shown to grow exponentially with respect to the size of the
corpus from which they have been extracted. In my project I have
experimented with a number of different grammar compaction techniques,
namely the threshold and rule-parsing methods and used these techniques
to compact a large grammar extracted from the Penn Treebank II.
These grammars have then been used to parse a section of the Penn
Treebank with precision and recall figures being calculated to
assess the effects of the compaction on parsing efficiency and
accuracy.
I have designed and implemented a Machine Translation (MT) system.
This MT system translates radio/cassette player manuals from English
to German and German to English (bi-directional). The system is
written in the PROLOG programming language and will be run from
a user interface on the World Wide Web using CGI. This MT system
adopts the indirect-transfer approach. This means when a sentence
is input to system it will be subjected to the three processes
associated with an indirect-transfer approach. These processes
are analysis, transfer and generation. The use of a sub-language
(i.e. operating instructions for radio/cassette players) means
that the coverage of text to be translated is restricted and this
ultimately means that there should be an improved output. The
sentences the system translates are those which are typically
found in a radio/cassette player manual. This means the system
can deal with imperative, indicative, active and passive sentences
and also hard cases such as head switching and relation changing
and combinations of these.
The aim of this project was to design a Transfer-Based Machine
Translation System. The specific area, which I chose for the system
design was e-mails for hotel reservations. The system can translate
fourteen different types of sentences, six of these being "hard
case sentences"(where the structure in French differs from the
structure in English and therefore the translation of this type
of sentence is more difficult). As there are only fourteen sentences
the system is quite small. However the sentences that I chose
highlight a lot of the problems that can occur in the design of
an MT system. My main aim was to show that these problems could
be overcome and therefore this system could be expanded, without
very much difficulty, into a much larger project.
My 4th year project involves writing
a chunking grammar for English Newspaper articles using the Xerox
Incremental Parser (XIP) [Aït-Mokhtar, Chanod and Roux, 2000].
A chunk is basically the non-recursive core of a standard constituent,
extending from the beginning of the constituent to its head [Abney,1991].
Parsers based on the chunk parsing technique are robust and very
fast, both of which are essential requirements when analysing
vast quantities of naturally occurring text. XIP includes a tokeniser,
morphological analyser and HMM tagger which process raw text prior
to chunking. It also includes a rule-based disambiguation module,
which I employed both to refine the POS assignment for certain
under-specified tags (using contextual information at sentence
level), and also to correct recurrent tagging errors. I developed
the chunking rules by identifying constituent patterns from a
corpus of approximately 50,000 words of newspaper articles from
the Wall Street Journal. I then tested the grammar on a new corpus
of 500 randomly selected sentences from the Penn Tree bank in
order to compare the output from my parser with the non-recursive
constituent structures from the Penn Tree bank. Platform required:
Unix for Solaris
As the title indicates my project is an automated implementation
of Irish Derivational Processes. In Natural Language Processing
it would be time consuming and wasteful to list all words in the
lexicon, as many words have multiple forms. Instead these multiple
forms may be accounted for with Two-Level morphological rules
that indicate the various affixation processes which some words
can undergo. Morphographemics (spelling rules) can be implemented
using finite-state automata. I have used Finite State Tools developed
by Xerox at XRCE (Xerox Research Centre Europe) :
Term Retriever is a tool which seeks to identify and
extract terms and their definitions from a corpus. Inspiration
for this project came from Jennifer Pearson's book "Terms in Context"
(1998 Amsterdam/Philadelphia: John Benjamins Publishing Co). A
number of specifications and criteria are outlined in Pearson
(1998) for the procedure and my aim was to implement Term Retriever
according to these. Using Perl and focusing solely on the GCSE
corpus, my tool firstly identifies an initial set of term candidates
according to a set of eight syntactic term formation patterns.
This output is then further refined by categorising the term candidates
into either Simple or Complex Formal Defining Expositives. Areas
where a tool like Term Retriever could have an impact include
special purpose corpus construction, text evaluation, and terminography.
The objective of this project was to build a Two-Level Morphological
tool for French derivational morphology. It will accept a word,
derive the root and will return all possible derivations of that
root (specifically for that meaning) which can be of any word
category (e.g. noun, adjective, adverb). This project has been
developed using Xerox Finite-State Morphology tools; xfst and
lexc. These tools combine phonological rules (xfst) with a lexicon
(lexc) to create a bi-directional system that provides word derivations.
A CALL (Computer-Aided Language Learning) tool to teach primary
school children aged between 10 and 13, beginners French and German.
The software is designed with the learning needs of a particular
group of students in mind. Its main purpose is to provide these
children with a foundation knowledge of a foreign language so
that the transition between primary and secondary school is made
a little easier. As part of the research for the software and
teaching methodology, we taught French and German in a local primary
school in a disadvantaged area - Virgin Mary Boy's National School
in Ballymun. We held two ? hour sessions per language per week,
for a period of six months. During this time we developed the
curriculum and brought the children to DCU on a regular basis
to test the software to date and provide feedback. The final package
will contain a series of learner pages, which will include sound
files for pronunciation, along with a choice of 2-3 exercises
on each learner topic, to reinforce the material learned. The
exercises will not only examine written and comprehension skills
- but also aural ones. Each user must log-on to the system and
their progress is recorded so that a teacher can later login and
examine their progression. Programming languages used: Java, JSPs,
XML, HTML, Javascript. Required Resources: Tomcat 3.2.4
Of all the aspects of the human voice that relate to speech
processing, not very much work has been done with regard to accents.
The aim of this project was to build a recogniser sensitive to
regional Irish accents. Initial research involved experiments
to determine what listeners perceive to be "strong" accents. Based
on our findings, we chose four locations (Donegal, Sligo, Cork
and Dublin) and took sample recordings of the accents native to
these areas. Using the Hidden Markov Model Toolkit (HTK), models
were trained for each accent. Given input of a distinctive accent,
the recogniser outputs a probability of it being one of the four
modelled accents. Changes in pitch were also taken into consideration
as possible determining factors.Such a recognition system might
be used as part of a more complex dialogue system.
When it comes to learning a foreign language, proper pronunciation
is one of the key factors that aids fluency in that language.
Non-native speakers may experience difficulty, however, with the
pronunciation of certain vowels. The aim of my project was to
create a system that aids the vowel pronunciations of non-native
speakers of English. The key factor to this was learning a 'transformation'
that could be applied to a mispronounced vowel, thereby transforming
it into its correctly pronounced form. According to the source-filter
theory of Gunnar Fant, speech can be separated into 2 parts -
1) a source which is modified by 2) a filter. The source is represented
by the larynx and the filter by the vocal tract. Using this theory,
my system applies a transformation to the filter, and then re-synthesises
the user's speech using their own source and their modified filter.
The user of the system, therefore, hears his/her own voice correctly
pronouncing the vowel they were attempting. With their own voice
to imitate, their pronunciation is greatly improved. The system
was implemented using MATLAB.
My project is an on-line PATR-II parser. PATR-II was initially
developed by Stuart M. Shieber at Stanford University. It can
be considered as a form of encoding linguistic information, specifically
the syntactic structure of a given language. Given a set of PATR-II
grammar rules and lexical entries inputted by the system user,
I propose to parse an arbitrary sentence, also inputted by the
user. Determine whether or not the sentence, is syntactically
correct, and if so display a tree structure representation and
a PATR-II feature structure representation of that sentence. The
interface design will consist of integrating my system with the
system already written for CF-PSG parsing by former CL undergraduate
students.
Our project is aimed at providing a software system to the Fire
Department and Emergency Medical Services, and is designed to
provide for efficient database management and administration,
thus improving logistical planning, decision-making, and crucially,
emergency response times. The Mobilisation module will evaluate
the appropriate response to a call out situation. It is based
on a number of stations in Dublin. Each station has its own database
of available fire appliances, ambulances and emergency vehicles,
which they normally dispatch in response to a call. Each incident
type has been assigned a dispatch protocol, which is implemented
in response to a call out. The nature of the response will be
predicated on that protocol. It could involve a "cardiac arrest"
or could simply be a "fire in a skip". If the vehicle types required
are unavailable due to a prior call out, our system implements
a procedure whereby that stations "back up station" joins a queue
and will automatically supply the requested vehicle. Our system
can take into account the distance between the scene of the incident
and those stations nearby. The system allows for immediate updating,
facilitating accurate turnout information. For instance a vehicle
returning from an incident is recognised as "mobile and available",
and so is considered for any subsequent call out that may occur
before it returns to the station. The database also includes 9
forms that cover every day issues within the Dublin Fire Service,
from "staff details" and "equipment logs" to post operational
incident report forms. A user-friendly SQL interface is provided
allowing for queries and updating to be carried out easily. The
interface facilitates the execution of any standard SQL query.
Data may also be input through the forms. A help guide is also
provided. Platforms: Windows , Unix Programming Languages: Java
Swing, Java Database Connectivity, Structured Query Language,
ORACLE database
The aim of our project is to provide a portal for the Oil Distribution
sector. Customers may logon to a secure environment through the
internet. They are presented with a number of services including
the facility to view their account and order oil. The system also
allows for new users to register on the site and view the many
promotions and services available. The project will be implemented
through Windows NT using an Access Database (2000), Active Server
Pages (ASP), Internet Information Server (IIS), Dynamic Hypertext
Markup Language (DHTML), Open Database Connectivity (ODBC), Jscript
and Vbscript. Programming Language: Jscript, Vbscript Platform:
Windows NT Workstation Project Requirements: IIS, Visual Interdev,
ODBC driver
Project Description: The aim of our project is to provide a
system - Adult Literacy Learning System (ALLS) - which will offer
an alternative learning technique to the current learning schemes
in operation today. The majority of the current computer based
learning tools are only available to use as part of an organised
tutor to student session or in libraries under tutor supervision.
The problems we see with this approach is that students are restricted
to only their allotted time per week with the tutor. Our system
can be used as much as required, whenever is convenient for the
student, and they can go back over material as many times as they
like until they are satisfied with their progress, without feeling
embarrassed that they are progressing too slowly. Also, people
who may be embarrassed by the fact that they need this sort of
tuition can have complete anonymity using our online system, after
the first initial lesson to learn how to access and login to the
system. We hope that our system would go some way towards helping
those with learning difficulties. We would expect that students
of our system would gain more confidence in their ability to carry
out normal everyday tasks (such as shopping, reading road signs,
giving their child the correct amount of medicine......), which
prior to the course would have been very problematic for them.
We hope to achieve this by creating an online learning environment,
providing audio/visual material and interactive tutorials. Programming
Language: java Platform: Win95/98/2000/Unix