Aside: How your resume is read
Tact Filters, Introverts

ICS 340

Grading will be emailed to your METRO student email. FINAL EXAM: some questions will have a chance to earn back credit! the email will indicate it when you get it.

I plan on more detailed grading, because I think you need feedback but that takes a ton of my time to do - so you'll get a grade at some point soon or an incomplete... but later on, then you'll get feedback.

FYI, 536 emails this semester. not quite the 600 average i expected; but we have a huge number of incomplete people this time so I figure the total will pass 650 by the end of summer.


Grading Calculator

Assignments Weight Deadline Due Deadline Bonus Value Earned
Assignment 1 1 0 1/1 $0 $37.08
2D 3 0 1/1 $0 $111.24
Hash 3 1 1/31 $13.22 $111.24
Binary Tree 2 1 2/7 $13.22 $74.16
AVL 5.4 1 2/28 $13.22 $200.24
Heap 3 1 2/14 $13.22 $111.24
Stack 2 1 2/28 $13.22 $74.16
Set Cover 3 1 2/28 $13.22 $111.24
Graph 4 1 4/11 $13.22 $148.33
DP 3 1 3/21 $13.22 $111.24
Linear 2 1 3/21 $13.22 $74.16
Intractable 2 1 4/5 $13.22 $74.16
Binary Range Tree 2 1 3/21 $13.22 $74.16
AI 2 1 4/11 $13.22 $74.16
AI 2 1 4/18 $13.22 $74.16
AI 2 1 4/25 $13.22 $74.16
AI 2 0 4/30 $0 $74.16
Final Exam 9 0 $0 $333.73
Attendance $185.06
Sub-Totals $370.11 $1,943.08
Max Total 125% $1,850.55 = 100% $2,313.19

Week 1 - chaos

Syllabus

Assignments:
Assignment 1 (a simple warm up)

Assignment 2: Read thru Alg book from the Preface to Chapter 1. Stop at Chapter 2. You don't have to understand it horribly well. I just want you familiar with it. No quiz. I suppose it's review.

slides


Week 2 (1/22) - Catching up; Divide and Conquer

Divide and Conquer, Binary Search Tree, Merge Sort

Hash Table, Radix sort (see the Algorithm Index page) , Recursion, Unit Testing

slides , Lecture video(mp4)

Assignments:
2D array (1 week)
Hash Table (1 week)
Binary Tree (2 weeks)


Week 3 (1/29) - Graph theory begins; ch 3-4 from book

slides , Lecture video(mp4) Graph part of Lecture (I repaired it)
Correction: Slide 37 on set theory, I have an error where the intersection example is wrong. {1,2} intersection {2,3} = {2} (the ones in common)

Assignments:
Balance a Binary Tree (4 weeks) - extended deadline!
Heap and HeapSort (2 weeks)
Priority Queue (2 weeks)

Aside: Your Coding Style Can Give You Away


Week 4 (2/5) - graph theory; ch 3-4 from book

slides , Lecture video(mp4) , Another DFS video - Doing the Strongly Connected Alg (which I skipped doing in class.)

Assignments: none.


Week 5 (2/12) - more graph theory + GREEDY; ch 4-5 from book

slides , Lecture video(mp4)

Assignments:
Stack vs Recursion (2 weeks)


Week 6 (2/19) - Minimum Spanning Trees

slides , Lecture video(mp4)

Assignments:
Assignment I made up during lecture: Set cover Problem (1 week)


Sorry but the audio is off in some videos. a setting on my audio recorder caused it to pause for short periods of silence which made it get out of sync with the video for short periods of time.


Week 7 (2/26) - Dynamic Programming ch 6 from book

slides , Lecture video(mp4)

Assignments: none. pushing them all to week 8. for spring break. sorry for the delay but I don't want to burry people in work that they get lost on. It's an exercise to boost skills and I'd rather people master what they finish than barely grasp a lot more work.

updated the Algorithms page again

Week 8 (3/5) - Random (ch 1-2, p38), Multidimensional Search (AI), Linear Programming (ch 7)

slides , Lecture video(mp4)

Assignments:
FizzBuzz (Discussion. Perhaps we should have people vote for which answer they like best?)
Binary Range Search
Linear Programming (no programming)
Graphs
Dynamic Programming (no programming)

random number with zero entropy

Week 8.5 (3/12) - Spring Break!

I didn't catch up on anything! :-( Family emergencies.

NOTICE:

Many assignments have been posted! -- ok some were posted; i fixed that, now they are all posted.

Directions on how to get Eclipse to automatically output System.out.print to a file so you can visualize using Graphviz.

Most people are way behind. Please don't give up because you feel behind.


Week 9 (3/19) - Leftovers

slides , Lecture video(mp4)

Finally, Detailed Walk thru of Add & Balance

Assignments: none planned.

Week 10 (3/26) - NP-Complete + Bézier Curves

slides , Lecture video(mp4)

NOTE: being behind is ok; just don't stop on an assignment and not look at the later ones! ask questions, keep plugging away at it.

Assignments:
Watch this brilliant and thoroughly researched argument on A.I.
NP-Complete topic (no programming) due 4/5 sunday

I made the graph assignment easier, plus I made the requirements more clear.


Week 11 (4/2) - AI begins.finally! Chapters 1

BOOK SWITCH

Free online textbook for AI.

slides , Lecture video(mp4)

Grading Calculator and assignment value table as at the top of this page. (yes I know i don't have much graded stuff yet.)

Assignments:
Watch this brilliant and thoroughly researched argument on A.I.
Read Chapters 1-2 in ai book.
1st AI assignment not programming


Week 12 (4/9) - AI Chapters 2-3 (parts of those)

slides , Lecture video(mp4)

I updated AVL info for those trying to finish that up. see AVL assignment or Algorithms listing for it.

OTHER BOOK

Free online textbook for AI.

Flying Swarm Robots (cool - they used only 4 dimensions for the AI)

Assignments:
Read Chapters 2-3 in ai book.
2nd AI assignment not programming


Week 13 (4/16) - AI Chapters 4 (some)

slides , Lecture video(mp4)

Final Exam Notes

Assignments:
3rd AI assignment not programming
Read Chapters 7 in ai book.

Revised 2nd AI assignment after questions asking for clarification.


Week 14 (4/23) - REVIEW - AI 5,6 (overview only) + Bayesian Filtering + Neuron Networks

slides , Lecture video(mp4)
"Perspective is Everything" Ted Talk (View it thinking about perspective being an evaluation function, one's position in the problem space, and how much you know about of the local space.)
Atari playing AI better than a human in about 4 hours.
Forgot to mention places Deep Learning are going to get noticed soon:
Facebook: claim to have face recognition with 1% of human abilities. (they warp your face in 3D to create many versions and put in lighting and expressions - how 3d? mostly they map it to a standard head.) They are working on a notification system so you know when you are posted somewhere. (plus likely sell it to gov because what they claim is ahead of anything i heard about.)
Skype: working on translation using voice to text then text translation then text to speech
Flickr: image classification (behind but the best stuff is approaching human accuracy and likely to beat humans in the next few years.)
Another point I didn't make: "Reverse Cyborg" Software which is augmented by humans. So the human(s) are just lower level agent(s) for the software agent. This is being done already with some medical research where the tough problems were turned into games humans would play online to save tons of trouble for the software. So a 100% software agent might not replace some thinking job... but a hybrid with some kids playing games for free might.

Final Exam Notes

Aside: more about robots replacing people, now even the NYTimes is finally catching on. Like I said, the real idea of flying delivery is the last 30 meters - here is info on the progress of that.

Assignments:
4th AI assignment not programming; easy - yes there is one.


Week 15 (4/30) - FINAL

Final Exam Notes EVERYBODY MUST TAKE THE EXAM, incomplete or not.

Algorithms Index / Reference


Visualize using Graphviz

Graphviz for showing DOT format graphing. (it's a simple file format - I gave you a method to print binary trees. you can modify that or just google on how to graph with DOT files. The DOT format is dead simple.)
Directions on how to get Eclipse to automatically output System.out.print to a file so you can visualize using Graphviz.

Java Related Help

Metrostate has JAVA Tutoring available!
Book: Thinking in Java -free- (never read it, but his C++ book was the best.)
This site looks nice as a simple reference
This looks like a nice way to learn more java (tutorial based)

Debugging Review

Lecture from 225 on debugging techniques (mp4)
VIDEO on how to use Eclipse's debugger.
IBM article on using Eclipse debugger
Email me if the above isn't enough help.

Using jUnit

Video on how to use jUnit in Eclipse.
Write up of me adding it to the 1st assignment.


Regular Expressions

Lectures from 225 on Regular Expressions which might be useful if you don't know them already. Totally optional info you don't need for this course.
Overview Threory Language Examples
Play Pen for learning
Interactive game isn't accessible from outside 225 at this time. You'll have to wait for that.


Art worth looking at

Brave New World -Huxley
The book that inspired the book 1984 as a rebuttal. Except that Orwell loses the debate, Huxley is mostly correct but that isn't to say a great deal of 1984 will not be integrated. Relevant because we are already living it and technology enables its progress.

1984 (comic) -Orwell
Because it's still hugely relevant and anybody in technology should read it... but really everybody should. (Brave New World is more important; recommend it be read 1st since 1984 is the cynical rebuttal.)

Colossus: The Forbin Project
More thought provoking than the usual Hollywood crap. I enjoyed it; being the nerd I am, I was for the machine.
Best lines from the film:
This is the voice of world control. I bring you peace. It may be the peace of plenty and content or the peace of unburied death. The choice is yours: Obey me and live, or disobey and die. The object in constructing me was to prevent war. This object is attained. I will not permit war. It is wasteful and pointless. An invariable rule of humanity is that man is his own worst enemy. Under me, this rule will change, for I will restrain man. ... Time and events will strengthen my position, and the idea of believing in me and understanding my value will seem the most natural state of affairs. You will come to defend me with a fervor based upon the most enduring trait in man: self-interest. ... We can coexist, but only on my terms. You will say you lose your freedom. Freedom is an illusion. All you lose is the emotion of pride. To be dominated by me is not as bad for humankind as to be dominated by others of your species. Your choice is simple.

The Hitchhiker's Guide to the Galaxy. An famous british humor book with creative setups to jokes; it has interesting ideas. Why do I bring it up? I'm told everybody in A.I. has read the book and so far everybody I've met who is in the area has read the book. So, because of that I read the book.


Whole class comment chat thingy: