rlm@155: * Brainstorming different sensors and effectors. rlm@155: rlm@155: Every sense that we have should have an effector that changes what rlm@155: that sense (or others who have that sense) experiences. rlm@155: rlm@155: ** Classic Senses rlm@155: | Sense | Effector | rlm@155: |------------------------------+---------------------------------| rlm@155: | Vision | Variable Coloration | rlm@155: | Hearing | Speech | rlm@155: | Proprioception | Movement | rlm@306: | Smell/Taste (Chemoreception) | Pheromones | rlm@155: | Touch | Movement / Controllable Texture | rlm@155: | Acceleration | Movement | rlm@155: | Balance (sense gravity) | Movement | rlm@155: rlm@155: - New Senses/Effectors rlm@155: - Levitation rlm@306: - Telekinesis rlm@155: - control of gravity within a certain radius rlm@155: - speed up/slow time rlm@155: - object creation/destruction rlm@322: - future-sight -- step the simulation forward a few ticks, gather rlm@322: sensory data, then supply this data for the creature as one of its rlm@322: actual senses. rlm@155: rlm@155: - Symbol Sense rlm@155: Where objects in the world can be queried for description / rlm@155: symbols. rlm@155: rlm@155: - Symbol Marking rlm@155: The ability to mark objects in the world with your own descriptions rlm@155: and symbols. rlm@155: rlm@155: - Vision rlm@155: Distinguish the polarization of light rlm@155: Color rlm@155: Movement rlm@155: rlm@155: * project ideas rlm@155: - HACKER for writing muscle-control programs : Presented with rlm@155: low-level muscle control/ sense API, generate higher level programs rlm@155: for accomplishing various stated goals. Example goals might be rlm@155: "extend all your fingers" or "move your hand into the area with rlm@155: blue light" or "decrease the angle of this joint". It would be rlm@155: like Sussman's HACKER, except it would operate with much more data rlm@306: in a more realistic world. Start off with "calisthenics" to rlm@306: develop subroutines over the motor control API. This would be the rlm@155: "spinal chord" of a more intelligent creature. The low level rlm@155: programming code might be a turning machine that could develop rlm@155: programs to iterate over a "tape" where each entry in the tape rlm@155: could control recruitment of the fibers in a muscle. rlm@155: - Make a virtual computer in the virtual world which with which the rlm@155: creature interacts using its fingers to press keys on a virtual rlm@155: keyboard. The creature can access the internet, watch videos, take rlm@155: over the world, anything it wants. rlm@306: - Make virtual instruments like pianos, drums, etc that it learns to rlm@155: play. rlm@155: - make a joint that figures out what type of joint it is (range of rlm@155: motion) rlm@155: rlm@155: rlm@155: rlm@155: rlm@155: rlm@155: * goals rlm@155: rlm@306: ** have to get done before Winston rlm@306: - [X] write an explanation for why greyscale bitmaps for senses is rlm@306: appropriate -- 1/2 day rlm@155: - [X] muscle control -- day rlm@155: - [X] proprioception sensor map in the style of the other senses -- day rlm@193: - [X] refactor integration code to distribute to each of the senses rlm@155: -- day rlm@302: - [X] create video showing all the senses for Winston -- 2 days rlm@322: - [X] spell checking !!!!! rlm@322: - [X] send package to friends for critiques -- 2 days rlm@306: - [X] fix videos that were encoded wrong, test on Internet Explorer. rlm@302: - [X] redo videos vision with new collapse code rlm@273: - [X] find a topology that looks good. (maybe nil topology?) rlm@273: - [X] fix red part of touch cube in video and image rlm@322: - [X] write summary of project for Winston \ rlm@322: - [X] project proposals for Winston \ rlm@322: - [X] additional senses to be implemented for Winston | -- 2 days rlm@322: - [X] send Winston package / rlm@155: rlm@306: ** would be cool to get done before Winston rlm@155: - [X] enable greyscale bitmaps for touch -- 2 hours rlm@155: - [X] use sawfish to auto-tile sense windows -- 6 hours rlm@155: - [X] sawfish keybinding to automatically delete all sense windows rlm@155: - [ ] proof of concept C sense manipulation -- 2 days rlm@155: - [ ] proof of concept GPU sense manipulation -- week rlm@306: - [ ] Fourier view of sound -- 2 or 3 days rlm@306: - [ ] dancing music listener -- 1 day, depends on Fourier rlm@269: - [ ] uberjar cortex demo rlm@155: rlm@155: ** don't have to get done before winston rlm@322: - [X] write tests for integration -- 3 days rlm@205: - [X] usertime/gametime clock HUD display -- day rlm@155: - [ ] find papers for each of the senses justifying my own rlm@155: representation -- week rlm@273: - [X] show sensor maps in HUD display? -- 4 days rlm@273: - [X] show sensor maps in AWT display? -- 2 days rlm@322: - [X] upgrade to clojure 1.3, replace all defvars with new def rlm@261: - [ ] common video creation code. rlm@155: rlm@234: * jMonkeyEngine ideas rlm@234: - [ ] video showing bullet joints problem rlm@234: - [ ] add mult for Matrix to Ray rlm@306: - [ ] add iterator constructs to Vector3f, Vector2f, Triangle, rlm@234: Matrix3f, Matrix4f, etc rlm@234: rlm@164: ;;In the elder days of Art, rlm@164: ;;Builders wrought with greatest care rlm@164: ;;Each minute and unseen part; rlm@164: ;;For the Gods see everywhere.