Difference between revisions of "Cs488-2009"
Jump to navigation
Jump to search
(committing to topics) |
Amweeden06 (talk | contribs) (→Research Topics) |
||
(50 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' |
− | # PERCEPTIONS A Lack of Vision - | + | 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 | |
− | # ANALOG COMPUTATION Spaghetti Computers - | + | 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 | |
− | # NEURAL NETWORKS THAT LEARN Converting Coordinates - | + | * When you've made changes you're happy with and want to save (both edits and file adds), use |
− | # PUBLIC KEY CRYPTOGRAPHY Intractable Secrets - | + | 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 | |
− | # NUMBER SYSTEMS FOR COMPUTING Chinese Arithmetic - | + | 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 | |
− | # CELLULAR AUTOMATA The Game of Life - | + | git reset --hard |
− | # COOK'S THEOREM Nuts and Bolts - | + | |
− | # SELF-REPLICATING COMPUTERS Codd's Machine - | + | ===Support=== |
− | # STORING IMAGES A Cat in a Quad Tree - | + | 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] |
− | # THE SCRAM A Simplified Computer - | + | |
− | # SHANNON'S THEORY The Elusive Codes - | + | |
− | + | ==Topic Allocation== | |
− | + | ||
− | + | # SIMULATION The Monte Carlo Method - '''Samuel''' | |
− | + | # GAME TRESS The Minimax Method - '''Brad''' | |
− | # NP-COMPLETE PROBLEMS The Tree of Intractability - | + | # MATHEMATICAL RESEARCH The Mandelbrot Set - '''Nate''' |
− | # ITERATION AND RECURSION The Towers of Hanoi - | + | # GENETIC ALGORITHMS Solutions That Evolve - '''Brad''' |
− | # VLSI COMPUTERS Circuits in Silicon - | + | # COMPUTER VISION Polyhedral Scenes - '''Brad''' |
− | + | # PERCEPTIONS A Lack of Vision - '''Nate''' | |
− | + | # ANALOG COMPUTATION Spaghetti Computers - '''Sam Leeman-Munk''' | |
− | # THE HALTING PROBLEM The Uncomputable - | + | # NEURAL NETWORKS THAT LEARN Converting Coordinates - '''Samuel''' |
− | # COMPUTER VIRUSES A Software Invasion - Brad | + | # 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''' | |
− | # LOGIC PROGRAMMING Prologue to Expertise - | + | # SELF-REPLICATING COMPUTERS Codd's Machine - '''Sam Leeman-Munk''' |
− | # RELATIONAL DATABASES Do-It-Yourself Queries - | + | # 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 |
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