Ask Software Engineering Expert

Algorithms and Complexity

The problem statement:

A trout is a fish. 
A TIGER IS A CAT.
A fish has gills. 
A TIGER HAS-STRIPES . 
A fish has fins. 
A TIGER IS WILD .
Fish is food.
A TABBIE IS A CAT .
Fish is animal.
A TABBIE HAS-STRIPES 
An apple is a fruit. 
A TABBIE IS A PET .
Fruit has a stem. 
A FLAG HAS-STRIPES
Fruit is food. A trout is a fish. A FLAG IS AN ARTIFACT
Fruit is vegetable. A cod is a fish. A CAT IS A MAMMAL .
An animal is a living thing. A trout lives in freshwater.  A MAMMAL IS AN ANIMAL . 
A vegetable is a living thing. A cod lives in saltwater.  A DOG IS A MAMMAL .

The knowledge, as expressed by the statements above, needs to be represented by a directed and labelled graph. This graph is meant to provide an insight into the world of some species, to be represented by vertices, and their properties, to be represented by labelled edges. This structure shall provide a mini knowledge base, which can provide answers to questions about properties of species, e.g., what is a vegetable.

Your tasks and deliverables:

A) Download the zipped Java skeleton source code (.java files) already implementing a weighted directed graph via an adjacency matrix, together with the text (KnowledgeStatements.txt) input data file including the statements above, as well as the stdlib.jar library. You can do so by
• Logging on to Blackboard at http://www.westminster.ac.uk/blackboard;
• Go to the relevant module Blackboard site, folder Assessment;

B) Unzip and create the project to work with (see also programming assignment checklist below)

C) Modify the logic of the application in the Main class, as well as the implementation of the supportive data structures, i.e., Graph and Vertex, in such a way that the following tasks are accomplished:

1. Populate the graph vertices (nodes) with all concepts/classes appearing in the knowledge statements above. For instance, Food, Apple, Stem Cat, Tabbie, Dog, etc.

2. Populate the graph with edges connecting concepts/classes as of the given statements above. You need to consider that these edges will be labelled by the predicate in the given statements. For instance, Fruit has a stem shall be represented by the nodes ‘Fruit' and ‘Stem' being connected by the directed edge (direction from Fruit to Stem), which will be labelled by the predicate "has a".

3. Implement a console/ terminal type of interaction upon which the following operations can be selected after successful compilation and running of the programme:

a) A DISPLAY method or operation, which displays all the inputted knowledge statements as of the input text file knowledgeStatements.txt, each statement in a different row;

b) A SEARCH method or operation, which receives as input an arbitrary concept/class and returns all meaningful inheritance relationships. For instance, SearchGenealogy(Trout) shall return Fish and Food as an answer.

c) A SEARCH method or operation, which receives as input an arbitrary concept/class and returns all associated features. For instance, SearchFeatures(Fish) shall return has gills, has fins, is food, is animal, as an answer.

4. Estimate the performance in terms of order of growth classifications, for both SEARCH operations, and justify your performance analysis by putting forward comments in plain English on top of the Main class and programme file.

5. Submit a zipped archive of the source and executable code (e.g., in Java, .java and .class files, respectively), ready for compilation and execution.

Software Engineering, Computer Science

  • Category:- Software Engineering
  • Reference No.:- M91582396
  • Price:- $260

Guranteed 48 Hours Delivery, In Price:- $260

Have any Question?


Related Questions in Software Engineering

In this assignment you will answer the following questions

In this assignment, you will answer the following questions related to Android platform and Android security design. 1. Describe Android architecture in detail by explaining the four conceptual layers. 2. Describe Androi ...

The research paper for this course is about some of the

The research paper for this course is about some of the best sources of digital evidence for child abuse and exploitation, domestic violence, and gambling according to the National Institute of Justice. Research commerci ...

Research projectin the course we have covered various

RESEARCH PROJECT In the course, we have covered various security and privacy issues that arise in the cyberspace field. We have learned to identify these risks and have discussed the current approaches and developments f ...

Overviewyou are required to modify and logically extend

Overview You are required to modify and logically extend the functionality of a provided code base to implement a game. This requires you to modify the code base as well as create documentation and implement various user ...

Address the following integrating biblical perspectives

Address the following, integrating biblical perspectives where appropriate: Define a hate crime and describe how white supremacist groups use the Internet to spread their message of hate. Explain why hate crime legislati ...

In this assignment you will answer the following review

In this assignment, you will answer the following review questions from the reading materials of the module/week. 1. "What are the key components of a typical P2P application? Describe their functions." 2. "What are the ...

Write reply to this article with references with apa

Write reply to this article with references with APA bibliography. Hate Crimes Over the past couple of years, hate crimes have been on the rise in America's largest cities. Studies show that there were sharp spikes in th ...

Reply to this article with apa referencehate crimes

Reply to this article with APA reference. Hate crimes According to Merriam-Webster, hate crime is any of various crimes (such as assault or defacement of property) when motivated by hostility to the victim as a member of ...

Proposaldesign of an efficient gps tracking system tag for

Proposal Design of an efficient GPS Tracking System (tag) for monitoring small species IMPLEMENTING EMBEDDED SYSTEMS USING SYSML Task Using PapyrusSysML Software (Downloadable online - Evaluation Copy- Latest Version) Mo ...

Write review on this article with apa formatgovernment

Write review on this article with APA format. Government surveillance is a major issue in the United States and globally. Surveillance refers to any collection and processing of personal data, whether, identifiable or no ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As