floating point input sequences are possible, i.e.:
odd05% ./prog1 .2 .4 .6 .8
With floating point numbers, remember there is a roundoff issue. Be sure to include a tolerance when determing if floating point numbers are equal.
Your goal is to find the shortest (smallest number of leaf nodes) possible sequence function that solves the problem.
Use the command line to input sequences to your program, i.e.:
odd05% ./prog1 0 1 2 3 4 5 Shortest function is: N Next item is: 6 odd05% ./prog1 2 3 4 5 Shortest function is: N + 2 Next item is: 6Be sure to include a Makefile, and include any special instructions for running your program by using a readme.txt file.
I will be testing your code on the Ubuntu machines (the machines in Stocker 307), so be sure it compiles and runs there!
C++ programs must use the suffix ".cc". You MAY NOT use the suffix ".cpp" which some other operating systems use.
Text files, e.g. script output, should be submitted with the suffix ".txt" e.g. "testcase1.txt", or "test1.txt".
You are to turn in your code electronically by using the submit program on the Ubuntu machines, i.e. those in Stocker 307 (BE SURE TO USE THE MACHINES IN 307 TO RUN SUBMIT(e.g. odd01.cs.ohio.edu, or pu1.cs.ohio.edu), DO NOT USE PRIME, P1, or P2.). To use this method to submit this first program:
~cs6800/bin/submit prog1 prog1.cc test1.txt test2.txt test3.txt Makefile readme.txt or using the unix wildcard '*' command: ~cs6800/bin/submit prog1 prog1.cc test* Makefile readme.txtNote: the first word after the submit command is the name of the assignment to submit, this will change depending on which assignment you are submitting. For homework assignments you will use prog1, prog2, etc. Be sure to limit any single submission to at most 20 files.
There is also an interactive version of the command:
odd01.cs.ohio.edu> ~cs6800/bin/submitThis version allows you to check what has been submitted, as well as several other commands. Here is an example of its use:
odd01.cs.ohio.edu> ~cs6800/bin/submit ** Welcome to the submit program. ** - This program submits programs for CS6800. Remember you can use this program either as menu driven, or command-line driven. Type submit -h for more help. Please type the assignment name to submit: prog1 At any point: ^C will quit, with no changes to any files. Enter one of the following choices: s: submit new files r: review the files submitted d: delete/remove all files previously submitted l: check late record q: quit Choice:Or for help:
/home/cs6800/bin/submit -h
A student asks "For Question 1, do we need to turn in a written program or pseudocode to show our work for the 8 queens heuristic?"
You should turn in pseudocode or a printout of your actual code for this problem.
A student asks "Do we need to choose and turn in the paper on artificial intelligence we will be presenting this semester?"
Yes, you should turn in the title, abstract, and link to a .pdf, if possible, of your proposed paper to read and present.
A student asks "The heuristic in question 1 seems to only choose one column to go to, how can it backtrack?"
The potential columns to place a piece are ordered by the "fewest unattacked squares." So if column A has 2 unattacked squares, and column B has 3 unattacked squares, you would try column A before column B. Any given heuristic will rank possible moves/actions by a metric that orders the possible moves to try.
David M. Chelberg <chelberg@ohio.edu> last-modified: Wed Apr 22 14:20:34 2020