SNAKES ON A CARTESIAN OR PERHAPS MERCATOR PROJECTION

October 20th, 2005 by

Here’s an edited for content and length, but not the size of your tv,  log of my talk with Graham, RE: map-time genesis:

(21:19:22) Matt J Alexander: also: I need a hip, pomo name.
(21:19:34) Matt J Alexander: Because a project without a name is nothing.
(21:19:49) Graham: will, you could insert meta into the title
(21:20:07) Graham: mapistry?
(21:21:19) Graham: metamap
(21:21:41) Graham: maplysses
(21:22:09) Matt J Alexander: hrm.
(21:22:25) Matt J Alexander: maplysses is interesting, but syntatically vague on proper pronunciation
(21:22:57) Graham: mapberto eco
(21:23:59) Matt J Alexander: I like the direction this is going in
(21:24:48) Graham: 100 years of map solitude
(21:25:05) Graham: maptavio paz
(21:25:39) Graham: maps joyce
(21:27:29) Matt J Alexander: So the current implementation idea is based on Event atom (or class,or whatever).
(21:27:49) Ravelite: ok, so an event moves a border then?
(21:27:58) Matt J Alexander: A border would be an Event.
(21:28:12) Matt J Alexander: An Event can be one or more Events, or a vector/tuple.
(21:28:19) Matt J Alexander: Vector being:
(21:28:38) Ravelite: ahhhh, so a border event is a vector of border vertices
(21:28:59) Matt J Alexander: {(where: GIS date[lat.,long.elev.]), time, country/tribe, person, short/long descriptions, causes, image/connector images, accuracy}
(21:29:05) Ravelite: so events have a limited time of validity,
(21:29:13) Ravelite: and are replaced by more current ones?
(21:29:27) Matt J Alexander: Yeah. I’m not sure if this is covered by accuracy or would need something like "lifespan"
(21:29:41) Ravelite: Well, probably you don’t need lifespan,
(21:29:46) Ravelite: just chose the most recent.
(21:29:51) Matt J Alexander: I’m also not sure if this ends up with overly large dataset.
(21:29:56) Ravelite: that partitions the timelime well enough
(21:30:07) Matt J Alexander: Since a border would necessitate several events as points just to define all the curves.
(21:30:15) Ravelite: yes
(21:30:42) Matt J Alexander: Is there a more elegant way, or can I just fall back on the mantra of SPACE IS CHEAP, TIME IS EXPENSIVE
(21:31:10) Ravelite: Well, go for simplest to make a prototype.,
(21:31:18) Ravelite: avoid premature optimization
(21:31:28) Ravelite: assume you will throw away this prototype
(21:32:08) Matt J Alexander: Historically, are even the most ardously planned out prototypes thrown out?
(21:32:19) Matt J Alexander: Or do arduously planned prototypes just never get created :p
(21:32:38) Ravelite: well, it’s just one of my design philosophies
(21:32:48) Ravelite: I just think it’s hardest to create something from the start
(21:32:50) Matt J Alexander: One Luke shares
(21:32:59) Ravelite: and you will learn many obvious things once it is build
(21:33:07) Ravelite: that you can’t imagine about right now
(21:33:12) Matt J Alexander: True: certainly I don’t have any domain knowledge about mapping currently
(21:33:25) Matt J Alexander: And only barely so in history
(21:33:39) Ravelite: I agree with your point, the more planning, the harder to do and the greater chance it doesn’t happen
(21:33:59) Ravelite: and most planning will be made irrelevant unless you know a lot about the domain
(21:34:08) Ravelite: and since your app is highly experimental,
(21:34:18) Ravelite: almost no one knows about the domain right now

Hackfest 1001

October 19th, 2005 by graham

Again, it’s at Octane.

Hackfest 1000 Mortem

October 15th, 2005 by

Oops, forgot to post this.  =P

Ben
 o This past week, put together a working demo for the TAs, got some feedback.
 o todo: want to put together a new test type that allows the TA to run a specified test.

Graham
 o This past week, installed frootyloops on his notebook, did homework like a madman.
 o todo: will install emacs.  read swimm sourcecode

Luke
 o This past week, started working on developing apps for trio.  Started writing a bootloader for linux.
 o todo: came up with an idea to improve usability for firefox.  (Navigability without a mouse).  A "generate links" button.
   Also, intelligent transparency.

Vinny
 o This past week, did 3d integration in commotion.
 o todo: want a behavior that puts a terrain in a 3d scene.

Things we learned today:
 o Courtship is the platform of the socially inept.
 o Jesus was a hippie.
 o Graham wants to cruise Nebraska to knock up women.

 

Hack Fest 1000

October 12th, 2005 by graham

It’s at Octane.

HOWTO: From magnitude spectrum to sound

October 9th, 2005 by

Calling all atlhack signal geeks!

Given a real-valued signal it is fairly straightforward to generate the magnitude spectrum. To plot it in matlab it’s


spec = fft( signal, size );
plot( abs( fftshift( spec ) ) );

The purpose of the abs is to get the complex modulus of the transform values. To get the original signal it’s


plot( real( ifft( spec, size ) ) );

Question: if I only knew X where X = abs( fft( signal, size ) ) and signal is real, could I properly reconstruct signal?

Hackfest 111 Mortem

October 7th, 2005 by

Hackfest 111 – Oct 7 2005 7:30 PM

Since Last Time:
Graham: Fun with MPI and OpenMP for his Operating Systems class.

Ben: Has completed much of what the old autograder did in his new framework.

Vinny: OGRE 3D is working with commotion. Basic 2D object tracking is also working.

Titus: Job Interviews.

Luke: Fun with XWindow IDs and reverse engineering windows-only eclipse plugins.

That night:
Graham: Investigated Ning, considered purchasing an audio device for the laptop, and pondered emacs.

Ben: Added UI sugar and honey to the autograder in Netbeans.

Vinny: Worked on Drupal and lost, but he went out fighting.

Luke: Self-realization, Self-rationalization, and a decision to cancel plans to buy a home. Did some dhcp debugging a bit too.

any corrections or missing info? 

Hack Fest 111

October 5th, 2005 by ynniv

the curtain of night;
visions of caffiene, laptops.
hacking the planet

Hackfest 110 Mortem

September 29th, 2005 by graham

Hackfest 110 – Sept 28 2005 7:30 PM

titillating facts:
Ben likes Firefly because it’s Sci-Fi, but they don’t explain any of it.
Ben hates the Magnetic Fields. But likes to dance to other pop music.
You can see the Octane music list from iTunes.
dmesg is one way to figure out what Linux distro a system is running.
/etc/redhat-dist is another way on machines that run some RedHat.

Since Last Time:
Ben-
Autograder generator done, TAUI underway. Cannot view/edit results.
Vinny-
Discovered physics abstraction wrapper – GangstaWrapper (like Ogre abstracts 3d libs) abstracts the underlying physics engine.
Commotion into source control.
Graham-
Nothing on Mused. Setup svn for SWIMM but it’s not working.
Titus-
Found CDT, a plugin that adds C[++] support to Eclipse.
Some Wine development. Trying to get the Newsleecher installer working.
Right now, the installer doesn’t work. It doesn’t let you create directories. The installer is written in Delphi, and it seems to be some sort of win32 problem involving Delphi code.

Plans:
Ben-
Reorganize build structure to remove an extra module and make it simpler.
Get test editor working.
Vinny-
Do something basic in Ogre using Commotion, like basic geometry.
Graham-
Fix the problem with SVN.
Get my file speedup stuff working, which might be hard because I haven’t touched it in weeks.
Titus-
Finish reading EMF (Eclipse Modeling Framework) chapter 1-5.
Stephen-
Doing homework and teaching the graphics gospel.

Realities:
Ben-
Reorganized build structure. Cleaned up ties together.
Vinny-
Reduced 250,000 errors to 2 (bizarre objC error). Basic Ogre setup hacked into Commotion, but not quite.
Graham-
svn now authenticating, rejecting everybody.
Titus-
I messed around with CDT today, and just worked with the Eclipse environment some more. I think it would be helpful to actually be an expert on the environment, as it’s hard to both program for it and learn how it works (from a user perspective) at the same time.

Component: Agent AI

September 28th, 2005 by

The Agent AI is the focus of the simulation. Each character should seem to have a life of their own, and the characters collectively should act as a system. Aspects of this are:


Disposition


A Disposition, in this case, is a relationship between the character and something else: another character, a place,an activity, an object, or the player. It represents how much a character likes or dislikes that thing. Simply a reference and a quantity are all that is required for a disposition. The character will form these as that character interacts with things and they will effect the character’s behavior.

Knowledge


The character can “see” all that goes on in the character’s own “cell.” These are added to characters “memory”- a list of events that the character observes. There are enumerably many actions that a character or the player may take. Each action has a negative or positive effect on whatever entity the action is performed on. In addition, the character may have a “disposition” toward whatever object the action is performed against. This effects how the character interprets ths info.
So when a character observes an event, the recorded “memory” includes the character performing the action, the action itself, the object that is the target and the computed reaction, which is how much the character likes or dislikes the action.

Communication


Each character can share his information with others. What the character decides to talk about depends on the importance of the event, computed by how recent the event is and how it affected the character. Each character knows the difference between what they saw and what they heard. Characters will talk to each other as well as the player.

Scheduling


Each character has their favorite activities and their favorite places, but they will not simply do their favorite thing all day and night. The compulsion to do an activity will decrease as the character is doing that activity. They will grow “bored” with what they are doing and go on to something else. Here, a boring equilibrium should not be reached. Randomness and in-game events will change the character’s priorities.

Personality


The characters personality is determined by a series of metrics as suggested in the paper “Personality in Computer Characters” by Daniel Rousseau. Each character’s behavior will be affected by these.

Goals and Challenges:

One goal here is to avoid equilibrium for the sake of extremes. The society should not have a predictable daily routine and there will be several factors to keep this from happening. Primarily, the player will have great power to stir things up. The player is an element of the system that is not under computer control, so the player’s behavior is not likely to be systematic. In addition random or scripted disasters may befall the town. Overall, randomness will be introduced into every decission a character makes.

Hackfest 110

September 28th, 2005 by graham

Come to Octane and hack with us!