Populate the graph with edges connecting concepts

Assignment Help Software Engineering
Reference no: EM13909461

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 https://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.

Reference no: EM13909461

Questions Cloud

What is the value of martell minings stock : Martell Mining Company's ore reserves are being depleted, so its sales are falling. Also, because its pit is getting deeper each year, its costs are rising. As a result, the company's earnings and dividends are declining at the constant rate of 9% pe..
What is the stocks expected price : A stock is expected to pay a dividend of $2.00 the end of the year (that is, D1 = $2.00), and it should continue to grow at a constant rate of 5% a year. If its required return is 13%, what is the stock's expected price 1 years from today?
Calculate the average check per meal period : An owner invested $180,000 in a new family-style restaurant, of which $160,000 was immediately used to purchase equipment and $20,000 was retained for working cash. Calculate the average check per meal period that will cover all costs, including desi..
What is your current mortgage balance outstanding : Suppose you currently have a mortgage with 10 years remaining with annual payments (the next one coming in exactly one year) at a rate of 6%. The original mortgage amount was a 20-year mortgage for $1 million. What is your current mortgage balance ou..
Populate the graph with edges connecting concepts : 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
Show that for all sample functions except set of probability : Show that for all sample functions N(t, ω), except a set of probability 0, N(t, ω)/t 2/M for all sufficiently larget. Note: Since M is arbitrary, this means that lim N(t)/t = 0 WP1.
Future of managed health care delivery systems : Future of Managed Health Care Delivery Systems.Use eight to ten scholarly and/ or peer-reviewed sources and  the following guide as you write your proposal and bibliography
Cash flows are expected to grow at an annual rate : You are evaluating the potential purchase of a small business currently generating $42,500 after-tax cash flow (Do=$42,500). On the basis of a review of similar-risk investment opportunities, you must earn an 18% rate of return on the proposed purcha..
What changes would you make to the provided schema : What changes would you make to the provided schema

Reviews

Write a Review

Software Engineering Questions & Answers

  Research report on software design

Write a Research Report on software design and answer diffrent type of questions related to design. Report contain diffrent basic questions related to software design.

  A case study in c to java conversion and extensibility

A Case Study in C to Java Conversion and Extensibility

  Create a structural model

Structural modeling is a different view of the same system that you analyzed from a functional perspective. This model shows how data is organized within the system.

  Write an report on a significant software security

Write an report on a significant software security

  Development of a small software system

Analysis, design and development of a small software system.

  Systems analysis and design requirements

Systems Analysis and Design requirements

  Create a complete limited entry decision table

Create a complete limited entry decision table

  Explain flow boundaries map

Explain flow boundaries map the dfd into a software architecture using transform mapping.

  Frame diagrams

Prepare a frame diagram for the software systems.

  Identified systems and elements of the sap system

Identify computing devices, which could be used to support Your Improved Process

  Design a wireframe prototype

Design a wireframe prototype to meet the needs of the personas and requirements.

  Explain the characteristics of visual studio 2005

Explain the characteristics of Visual Studio 2005.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd