Difference between revisions of "Cs488-2009"
Jump to navigation
Jump to search
Amweeden06 (talk | contribs) (→Research Topics) |
|||
(32 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
− | + | __TOC__ | |
+ | |||
+ | ==Research Topics== | ||
+ | * Aaron ([http://github.com/amweeden06/SRSem-Project-2009 project page]) - An educational game for teaching digital logic | ||
+ | * Brad ([http://github.com/carrick/cartesian-genetic-programming project page]) - Coevolution of combinatorial game theory evaluation functions using self modifying cartesian genetic programming | ||
+ | * Dylan - ([http://github.com/parkhdy/Recursion project page]) - Developing a learning experience through a computer game | ||
+ | * Nate ([http://github.com/nathanielksmith/weltanschauung project page]) - Algorithmic Cut-Up Poetry Generation Using Large Internet-Based Corpuses | ||
+ | * Sam L-M ([http://github.com/leemasa/Syntactic-Natural-Language-Project project page]) - Computational English language recognition and synthesis in database interfacing | ||
+ | * Sam W ([http://github.com/poshul/Senior-sem-project project page]) - Implementing fault tolerance in software | ||
+ | |||
+ | ==Using Github as a work log== | ||
+ | Here are some directions on getting up and running with git and github. | ||
+ | |||
+ | ===Initial Setup=== | ||
+ | # Download and install Git (in linux it's as easy as sudo apt-get install git git-core. Not sure about other platforms) | ||
+ | # Get a user account at github.com | ||
+ | # Click on the New Repository button | ||
+ | # Fill out the info (note that you'll be using the project name to set up git on your machine) | ||
+ | # Click next (or continue or whatever) | ||
+ | # You'll be given directions '''similar''' to these. FOLLOW THESE! Especially if you're working on an ACL. When finished, click 'continue' and rejoice. | ||
+ | mkdir <PROJECT NAME> | ||
+ | cd <PROJECT NAME> | ||
+ | git init | ||
+ | git config user.name '<YOUR NAME>' | ||
+ | git config user.email <YOUR EMAIL> | ||
+ | touch README | ||
+ | git add README | ||
+ | git commit -m 'first commit' | ||
+ | git remote add origin git@github.com:<GITHUB USERNAME>/<PROJECT NAME>.git | ||
+ | git push origin master | ||
+ | |||
+ | ===Workflow=== | ||
+ | |||
+ | * When you add a new file to the directory OR modify an existing file, add it to git tracking using | ||
+ | git add <filename> | ||
+ | * When you want to see what changes you have made to your code (in other words, compare your working code with what was last committed) do | ||
+ | git diff | ||
+ | * When you've made changes you're happy with and want to save (both edits and file adds), use | ||
+ | git commit | ||
+ | * If you've made LOTS of changes and you only want to record some of them, do | ||
+ | git add -P | ||
+ | git commit -m '<LOG MESSAGE>' | ||
+ | * When your committed work is in a state you're happy with, 'push' (it's like uploading) it to github using | ||
+ | git push origin master | ||
+ | * When you've made a bunch of changes, but you realize they suck, and you want to wipe the slate clean, use | ||
+ | git reset --hard | ||
+ | |||
+ | ===Support=== | ||
+ | I am by no means a git master (I just use it because I like github) I have been using it for personal projects for some time. Feel free to ask questions of me about git if you run into trouble. you can email nate@cs.earlham.edu. There is also good documentation here: [http://www.kernel.org/pub/software/scm/git/docs/git.html] | ||
+ | |||
+ | |||
+ | ==Topic Allocation== | ||
− | |||
− | |||
− | |||
# SIMULATION The Monte Carlo Method - '''Samuel''' | # SIMULATION The Monte Carlo Method - '''Samuel''' | ||
− | |||
# GAME TRESS The Minimax Method - '''Brad''' | # GAME TRESS The Minimax Method - '''Brad''' | ||
− | |||
− | |||
# MATHEMATICAL RESEARCH The Mandelbrot Set - '''Nate''' | # MATHEMATICAL RESEARCH The Mandelbrot Set - '''Nate''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
# GENETIC ALGORITHMS Solutions That Evolve - '''Brad''' | # GENETIC ALGORITHMS Solutions That Evolve - '''Brad''' | ||
− | |||
− | |||
# COMPUTER VISION Polyhedral Scenes - '''Brad''' | # COMPUTER VISION Polyhedral Scenes - '''Brad''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
# PERCEPTIONS A Lack of Vision - '''Nate''' | # PERCEPTIONS A Lack of Vision - '''Nate''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
# ANALOG COMPUTATION Spaghetti Computers - '''Sam Leeman-Munk''' | # ANALOG COMPUTATION Spaghetti Computers - '''Sam Leeman-Munk''' | ||
− | |||
− | |||
# NEURAL NETWORKS THAT LEARN Converting Coordinates - '''Samuel''' | # NEURAL NETWORKS THAT LEARN Converting Coordinates - '''Samuel''' | ||
# PUBLIC KEY CRYPTOGRAPHY Intractable Secrets - '''Samuel''' | # PUBLIC KEY CRYPTOGRAPHY Intractable Secrets - '''Samuel''' | ||
− | |||
− | |||
− | |||
− | |||
# NUMBER SYSTEMS FOR COMPUTING Chinese Arithmetic - '''Aaron''' | # NUMBER SYSTEMS FOR COMPUTING Chinese Arithmetic - '''Aaron''' | ||
− | |||
# CELLULAR AUTOMATA The Game of Life - '''Sam Leeman-Munk''' | # CELLULAR AUTOMATA The Game of Life - '''Sam Leeman-Munk''' | ||
# COOK'S THEOREM Nuts and Bolts - '''Aaron''' | # COOK'S THEOREM Nuts and Bolts - '''Aaron''' | ||
Line 50: | Line 68: | ||
# THE SCRAM A Simplified Computer - '''Dylan''' | # THE SCRAM A Simplified Computer - '''Dylan''' | ||
# SHANNON'S THEORY The Elusive Codes - '''Aaron''' | # SHANNON'S THEORY The Elusive Codes - '''Aaron''' | ||
− | |||
− | |||
− | |||
− | |||
# NP-COMPLETE PROBLEMS The Tree of Intractability - '''Aaron''' | # NP-COMPLETE PROBLEMS The Tree of Intractability - '''Aaron''' | ||
# ITERATION AND RECURSION The Towers of Hanoi - '''Dylan''' | # ITERATION AND RECURSION The Towers of Hanoi - '''Dylan''' | ||
− | # VLSI COMPUTERS Circuits in Silicon - | + | # VLSI COMPUTERS Circuits in Silicon - '''Dylan''' |
− | |||
− | |||
# THE HALTING PROBLEM The Uncomputable - '''Sam Leeman-Munk''' | # THE HALTING PROBLEM The Uncomputable - '''Sam Leeman-Munk''' | ||
# COMPUTER VIRUSES A Software Invasion - '''Brad''' | # COMPUTER VIRUSES A Software Invasion - '''Brad''' | ||
− | |||
− | |||
− | |||
# LOGIC PROGRAMMING Prologue to Expertise - '''Nate''' | # LOGIC PROGRAMMING Prologue to Expertise - '''Nate''' | ||
# RELATIONAL DATABASES Do-It-Yourself Queries - '''Samuel''' | # RELATIONAL DATABASES Do-It-Yourself Queries - '''Samuel''' | ||
− | + | ||
+ | ==Class Presentation Schedule== | ||
+ | ===September 9=== | ||
+ | * Brad - Ch. 60: Computer Viruses | ||
+ | * Aaron - Ch. 42: Number Systems for Computing | ||
+ | ===September 16=== | ||
+ | * Sam L-M - Ch. 33: Analog Computation | ||
+ | * Dylan - Ch. 56: VLSI | ||
+ | ===September 23=== | ||
+ | * Sara Penhale - Where to find academically sound research materials (meet in Science Library) | ||
+ | ===September 30=== | ||
+ | * Sam W - Ch. 4: Simulation, The Monte Carlo Method (p.22) | ||
+ | * Nate - Ch 64: Logic Programming (p. 420) | ||
+ | ===October 7=== | ||
+ | * Brad - Ch. 6: Game Trees | ||
+ | * Aaron - Ch. 54: NP Complete Problems | ||
+ | ===October 14=== | ||
+ | * Sam L-M - Ch. 44: Cellular Automata | ||
+ | * Dylan - | ||
+ | ===October 21=== | ||
+ | * Sam W - Neural networks | ||
+ | * Nate - | ||
+ | ===October 28=== | ||
+ | * Brad - Ch. 16: Genetic Algorithms (p.103) | ||
+ | * Aaron - Ch. 45: Cook's Theorem (p.301) | ||
+ | ===November 4=== | ||
+ | * Sam L-M - Self-replicating computers | ||
+ | * Dylan - Towers of Hanoi | ||
+ | |||
+ | ===November 11=== | ||
+ | * Sam W - | ||
+ | * Nate - storing images #47 pg 315 |
Latest revision as of 11:40, 25 November 2009
Contents
Research Topics
- Aaron (project page) - An educational game for teaching digital logic
- Brad (project page) - Coevolution of combinatorial game theory evaluation functions using self modifying cartesian genetic programming
- Dylan - (project page) - Developing a learning experience through a computer game
- Nate (project page) - Algorithmic Cut-Up Poetry Generation Using Large Internet-Based Corpuses
- Sam L-M (project page) - Computational English language recognition and synthesis in database interfacing
- Sam W (project page) - Implementing fault tolerance in software
Using Github as a work log
Here are some directions on getting up and running with git and github.
Initial Setup
- Download and install Git (in linux it's as easy as sudo apt-get install git git-core. Not sure about other platforms)
- Get a user account at github.com
- Click on the New Repository button
- Fill out the info (note that you'll be using the project name to set up git on your machine)
- Click next (or continue or whatever)
- You'll be given directions similar to these. FOLLOW THESE! Especially if you're working on an ACL. When finished, click 'continue' and rejoice.
mkdir <PROJECT NAME> cd <PROJECT NAME> git init git config user.name '<YOUR NAME>' git config user.email <YOUR EMAIL> touch README git add README git commit -m 'first commit' git remote add origin git@github.com:<GITHUB USERNAME>/<PROJECT NAME>.git git push origin master
Workflow
- When you add a new file to the directory OR modify an existing file, add it to git tracking using
git add <filename>
- When you want to see what changes you have made to your code (in other words, compare your working code with what was last committed) do
git diff
- When you've made changes you're happy with and want to save (both edits and file adds), use
git commit
- If you've made LOTS of changes and you only want to record some of them, do
git add -P git commit -m '<LOG MESSAGE>'
- When your committed work is in a state you're happy with, 'push' (it's like uploading) it to github using
git push origin master
- When you've made a bunch of changes, but you realize they suck, and you want to wipe the slate clean, use
git reset --hard
Support
I am by no means a git master (I just use it because I like github) I have been using it for personal projects for some time. Feel free to ask questions of me about git if you run into trouble. you can email nate@cs.earlham.edu. There is also good documentation here: [1]
Topic Allocation
- SIMULATION The Monte Carlo Method - Samuel
- GAME TRESS The Minimax Method - Brad
- MATHEMATICAL RESEARCH The Mandelbrot Set - Nate
- GENETIC ALGORITHMS Solutions That Evolve - Brad
- COMPUTER VISION Polyhedral Scenes - Brad
- PERCEPTIONS A Lack of Vision - Nate
- ANALOG COMPUTATION Spaghetti Computers - Sam Leeman-Munk
- NEURAL NETWORKS THAT LEARN Converting Coordinates - Samuel
- PUBLIC KEY CRYPTOGRAPHY Intractable Secrets - Samuel
- NUMBER SYSTEMS FOR COMPUTING Chinese Arithmetic - Aaron
- CELLULAR AUTOMATA The Game of Life - Sam Leeman-Munk
- COOK'S THEOREM Nuts and Bolts - Aaron
- SELF-REPLICATING COMPUTERS Codd's Machine - Sam Leeman-Munk
- STORING IMAGES A Cat in a Quad Tree - Nate
- THE SCRAM A Simplified Computer - Dylan
- SHANNON'S THEORY The Elusive Codes - Aaron
- NP-COMPLETE PROBLEMS The Tree of Intractability - Aaron
- ITERATION AND RECURSION The Towers of Hanoi - Dylan
- VLSI COMPUTERS Circuits in Silicon - Dylan
- THE HALTING PROBLEM The Uncomputable - Sam Leeman-Munk
- COMPUTER VIRUSES A Software Invasion - Brad
- LOGIC PROGRAMMING Prologue to Expertise - Nate
- RELATIONAL DATABASES Do-It-Yourself Queries - Samuel
Class Presentation Schedule
September 9
- Brad - Ch. 60: Computer Viruses
- Aaron - Ch. 42: Number Systems for Computing
September 16
- Sam L-M - Ch. 33: Analog Computation
- Dylan - Ch. 56: VLSI
September 23
- Sara Penhale - Where to find academically sound research materials (meet in Science Library)
September 30
- Sam W - Ch. 4: Simulation, The Monte Carlo Method (p.22)
- Nate - Ch 64: Logic Programming (p. 420)
October 7
- Brad - Ch. 6: Game Trees
- Aaron - Ch. 54: NP Complete Problems
October 14
- Sam L-M - Ch. 44: Cellular Automata
- Dylan -
October 21
- Sam W - Neural networks
- Nate -
October 28
- Brad - Ch. 16: Genetic Algorithms (p.103)
- Aaron - Ch. 45: Cook's Theorem (p.301)
November 4
- Sam L-M - Self-replicating computers
- Dylan - Towers of Hanoi
November 11
- Sam W -
- Nate - storing images #47 pg 315