Wednesday, June 14, 2006

Arlisy Version 0.1 Released

Arlisy is a programming project I started on May 21.

Arlisy stands for artificial life synthesizer. It uses neural networks and an evolutionary algorithm to simulate the process of life. Each neural network consists of binary input states, neurons, and binary output states. Depending on how the fitness function of the evolutionary algorithm is implemented, the resulting neural network can attempt to solve a variety of interesting problems.

This version of Arlisy is not very impressive since only a simple neural network has been implemented. Without the evolutionary algorithm all the program does is produce random characters. Once the evolutionary algorithm is finished the program should become much more interesting. Click here to download Arlisy version 0.1.

This is probably going to be one of my main projects for this summer. I have been trying to go through all of the proper stages of software development. Since this will be my first official open source program, I placed it under the GNU General Public License. The project is hosted at SourceForge.net, and can be found at http://sourceforge.net/projects/arlisy.

Tuesday, May 09, 2006

Word Jumble

"Aoccdrnig to rscheearch at Cmabrigde uinervtisy, it deosn't mttaer waht oredr the ltteers in a wrod are, the olny iprmoetnt tihng is taht the frist and lsat ltteres are at the rghit pclae. The rset can be a tatol mses and you can sitll raed it wouthit a porbelm. Tihs is bcuseae we do not raed ervey lteter by it slef but the wrod as a wlohe."

I have made a tool which can be used to test the theory. Most of the words that the tool produced were a lot harder to read than the quote, so I am guessing that the theory is not very accurate. Perhaps it is the specific ordering of letters in the quote which makes it easier to read?

Tuesday, May 02, 2006

qwercs

While working on a programming project I ended up making a new 7 bit character set, similar to ASCII. I am not sure if such a character set has been made before, but this represents all the characters which can be entered with a standard QWERTY keyboard.

qwercs - The QWERTY Character Set
Oct   Dec   Hex   Char           Oct   Dec   Hex   Char
------------------------------------------------------------
000 0 00 Esc 100 64 40 }
001 1 01 F1 101 65 41 002 2 02 F2 102 66 42 |
003 3 03 F3 103 67 43 a
004 4 04 F4 104 68 44 A
005 5 05 F5 105 69 45 s
006 6 06 F6 106 70 46 S
007 7 07 F7 107 71 47 d
010 8 08 F8 110 72 48 D
011 9 09 F9 111 73 49 f
012 10 0A F10 112 74 4A F
013 11 0B F11 113 75 4B g
014 12 0C F12 114 76 4C G
015 13 0D ` 115 77 4D h
016 14 0E ~ 116 78 4E H
017 15 0F 1 117 79 4F j
020 16 10 ! 120 80 50 J
021 17 11 2 121 81 51 k
022 18 12 @ 122 82 52 K
023 19 13 3 123 83 53 l
024 20 14 # 124 84 54 L
025 21 15 4 125 85 55 ;
026 22 16 $ 126 86 56 :
027 23 17 5 127 87 57 '
030 24 18 % 130 88 58 "
031 25 19 6 131 89 59 Enter
032 26 1A ^ 132 90 5A Left Shift
033 27 1B 7 133 91 5B z
034 28 1C & 134 92 5C Z
035 29 1D 8 135 93 5D x
036 30 1E * 136 94 5E X
037 31 1F 9 137 95 5F c
040 32 20 ( 140 96 60 C
041 33 21 0 141 97 61 v
042 34 22 ) 142 98 62 V
043 35 23 - 143 99 63 b
044 36 24 _ 144 100 64 B
045 37 25 = 145 101 65 n
046 38 26 + 146 102 66 N
047 39 27 Backspace 147 103 67 m
050 40 28 Tab 150 104 68 M
051 41 29 q 151 105 69 ,
052 42 2A Q 152 106 6A <>
055 45 2D e 155 109 6D /
056 46 2E E 156 110 6E ?
057 47 2F r 157 111 6F Right Shift
060 48 30 R 160 112 70 Left Ctrl
061 49 31 t 161 113 71 Super Key
062 50 32 T 162 114 72 Left Alt
063 51 33 y 163 115 73 Space
064 52 34 Y 164 116 74 Right Alt
065 53 35 u 165 117 75 Right Ctrl
066 54 36 U 166 118 76 Insert
067 55 37 i 167 119 77 Home
070 56 38 I 170 120 78 Page Up
071 57 39 o 171 121 79 Delete
072 58 3A O 172 122 7A End
073 59 3B p 173 123 7B Page Down
074 60 3C P 174 124 7C Up
075 61 3D [ 175 125 7D Left
076 62 3E { 176 126 7E Down
077 63 3F ] 177 127 7F Right

Indonesia

I made it to Indonesia with relatively few problems. In Vancouver I had some difficulty getting my luggage checked. Both my suitcases were over 10 kilograms above the weight limit. I ended up taking out my desktop and a few CD cases to take as carry ons. Even after taking out the items, the suitcases were still slightly above the limit, but they let the bags through anyway. My only problem then was that there is a limit of one carry on which has to be below 5 kilograms. I had a desktop computer and a large backpack, which were over 10 kilograms each. I continued on with the trip, and luckily nobody stopped me from taking my carry ons.

There was hardly any turbulence the whole trip. I think the seatbelt sign came on a total of five times. I was very impressed with the airport in Kuala Lampur. One of the coolest structures I have seen in a while, and everything was really clean and organized. The airport in LA was not nearly as impressive. It was crowded, confusing, and not very attractive.

I have now been in Indonesia for almost 48 hours. I am very pleased with the house, and my computer is still working. Indonesia seems to be very similar to Thailand, although there are an excessive number of cats roaming the streets for some reason. One potential problem I have encountered is that very few people here seem to know English - which makes communication difficult. Here is a gallery of a few pictures I have taken in Indonesia so far.

Four out of five of my grades are now online. They turned out much better than I expected. I still don't know how I did on Electrical Engineering, so I am going to be anxiously checking my grades over the next few days.

Thursday, April 27, 2006

Update

Yesterday - Finished my last exam. Out of the 5 exams, I did pretty well on three but ran out of time on Electrical Engineering 259 and Computer Science 213. I should get my grades back within the next couple of days. My only hope is that there will be a healthy curve on the two exams which I messed up on.

Today
- Meeting up with friends from 4'th Nootka (the floor from last year) for supper.

Tomorrow
- Visit the Planetarium!

The Day After Tomorrow - Leave on a plane for Indonesia. Flight path: Vancouver (Canada) -> Los Angeles (US) -> Taipei (China) -> Kuala Lumpur (Malaysia) -> Medan (Indonesia).

I get almost exactly four months of summer vacation. During the few moments I have had not studying, I have been scheming on plans... plans which should keep me busy for the four months of vacation. Most of these plans involve my computer however, so if it decides to die for some reason I will become very unhappy. My next blog entry will cover the details of my trip and my impressions of Indonesia.

Sunday, March 26, 2006

Breezy Badger!

A few weeks ago I received five free copies of Ubuntu. I gave away four of the copies, keeping the last one to use on my own computer. I have not had to reformat once since I bought my computer two years ago. I primarily used my 130 GiB Windows partition, and occasionally switched over to Mandriva (20 GiB partition). I never encountered any problems, viruses, or spyware on my Windows partition. However, I decided it was time for a change. I now have a 130 GiB Ubuntu partition, and 20 GiBs for Windows.

Initially Ubuntu automatically detected the majority of my hardware, although I did have to put in some effort to get certain features working. Some of the important changes I had to make included:

-SMP (symmetric multi-processing) support
-NVIDIA drivers
-JRE (Java Runtime Environment)
-Printer drivers
-Mounting Windows partition
-MP3 decoding

I also had some problems with Flash audio being out of sync. In my opinion all of these are essential features which should have been automatically set up by the OS. Hopefully as Linux continues to evolve the initial setup time required will decrease. However, now that I have finished fixing all of the problems, I have a fully functional computer that I am very proud of ^_^. I have made a short screencast of my desktop which can be found here.

Here is a customized version of Google Maps that I made earlier today.

Thursday, March 02, 2006

Google Vs. Microsoft


I just got back from Microsoft’s Develop Mental Tour [photo]. It was a two hour presentation about developing 3D games. Even though it was interesting, not much was accomplished since the process of developing a 3D application can not really be summarized in a two hour time period. I was well rewarded for attending however, since Microsoft felt that this was a good opportunity to give out some free stuff. We got pizza, pop, chips, a massive textbook about programming with C#, and some lottery tickets for a chance to win an HDTV or an MP3 player. There was also a random draw at the end for some free shirts and an Xbox 360 (which I didn’t win).

Last week I attended a Google presentation, which also gave out some free items. It seems like Microsoft and Google are competing to get the valuable attention of us UBC Computer Science students. Google supplied pizza, pop, pens, sticky notes, a strange flashing logo, and some other stuff. Some other items which are currently being mailed to me at no cost are 5 copies of Ubuntu (a Linux distribution), Visual Studio® 2005 Express Edition, and a Microsoft USB flash drive (probably loaded with a variety of advertisements). If you are interested in receiving a free copy of Ubuntu, try visiting https://shipit.ubuntu.com.

Thursday, February 16, 2006

Failure

This is the sixth day of reading break - classes start up again on Monday. This morning I took my first attempt at getting my "N" driver's license. Unfortunately I failed the driving test due to a lack of over-the-shoulder glances. The instructor was extremely observant and took off marks for even the smallest details which other drivers would never notice. Overall it was a waste of 35 dollars and one hour of time. I have to wait at least two weeks before I am eligible to retake the test.

Nath is now a deputy chief of party for Save the Children. Nath, Mom, and Skylor will be leaving for Indonesia on the 27th. I will probably be joining them over the summer.

Today the UBC ResNet bandwidth is supposed to have a significant upgrade. Although this should improve performance, they have also added a system which limits you to 2GiB of bandwidth every 24 hours. If you use over 2GiB you are placed in a "Penalty Box" and allowed allowed a maximum of only 100Kbps. I think I preferred the old setup since even though it was slower, there were no bandwidth limits. I can use 2GiB in under an hour... I guess I will be spending plenty of time in the Penalty Box!

Friday, February 03, 2006

Meal Plan Points

To help keep track of my meal plan points, I have started plotting my rate of food consumption. I am currently way below the "suggested" number of meal plan points. I have put a copy of the graph on my web server. Also of interest on the server are some 360 degree panoramic pictures taken around UBC.

In case you are interested in creating a dragon similar to the one in my previous post, I have uploaded the pictures I used. All that is required for assembling the dragon is a printer, scissors, and glue. Here is the original version, and here is a printer friendly version I made using Photoshop.

Tuesday, January 31, 2006

My Pet Dragon

Here is a video I took of a dragon I made:



The video can be found at Google Video here. A high quality version of the video can be downloaded from my FTP server here (8.39 MiB). In case you are impressed/confused by my dragon, here is another video which explains the illusion.

Monday, January 30, 2006

Katamari Madness

Yesterday I captured a time lapse video of the last level of Katamari Damacy. I mixed together a few songs from the official soundtrack for the audio. Enjoy!



A high quality version of the video can be downloaded from my FTP server here (137 MiB). Here are some links to a few of the videos I have uploaded to Google Video:
-Sket
-Flaming Shadows
-Katamari Time Lapse

Friday, January 20, 2006

Psychology Study

Today I was a research subject in a psychology study called “Learning Probabilistic Sound-Object Associations.” After filling out a few forms, I sat in a small dark room receiving instructions from a speaker. In front of me there was a huge flat screen monitor, a wireless mouse, and a video camera. The experiment consisted of two parts. During the first part different objects appeared on the screen accompanied by a sound. The objects were all colored three dimensional shapes, and the sounds were just random noises. A new object appeared on the screen with a sound every five seconds. During the second part of the experiment two objects were displayed on the screen accompanied by one sound, and I had to choose which of the two objects best matched the sound. The entire process took less than one hour.

Monday, January 16, 2006

Rain


As usual, it is currently pouring rain outside. However, yesterday was surprisingly sunny. Had there been rain yesterday, we would have tied Vancouver's previous 53-year-old record of 28 consecutive days of rain. I preferred the sunny weather over the bragging rights of breaking some record. At least we don't have a rain record comparable to Hawaii - 247 consecutive days of rain!

Tuesday, January 10, 2006

Ennui

I am using this blog entry to publicly release two programming projects I have been working on. These programs were made using Java, so they are operating system independent. Most of the time just double clicking on the .jar file will execute the program in Windows. To execute the file in the command line type "java -jar filename.jar".

Music Library is an mp3 player I made for an assignment in Computer Science 211. You need XMMS for the program to work in Linux, and Windows Media Player for the program to work in Windows. Execute MusicLibrary.jar to run the program (the other 4 files also need to be present in the directory).

Padomni is a simple text editor with similar functionality to Notepad. I made this program two days before my Computer Science 211 exam to review my Java coding skills. I originally wanted to call it Omnipad, but since that name was already taken...

The files can be found on my ftp server at ftp://byronknoll.dyndns.org/Programs. My web server is at http://byronknoll.dyndns.org, and my ftp server is at ftp://byronknoll.dyndns.org. These servers should be up and running most of the time, but I do occasionally turn my computer off. I am currently learning C, C++, and Unix shell scripting in my Computer Science courses.

Friday, January 06, 2006

Louis Braille


I was just looking over the traffic statistics of my Braille Generator web page and saw a large increase in traffic on the 4th. Surprisingly this increase in traffic was due to the fact that January 4th is the birthday of Louis Braille, the inventor of the Braille alphabet!

Wednesday, January 04, 2006

Work, Study, Sleep

I am now sitting in the middle of a deserted hallway with nothing to do for the next two hours except for composing this blog entry. The official job title is "Audio Visual Orientation Guide," and I am supposed to give support to any professors who need help operating the classroom equipment. The only problem is that there are no lectures being held in any of the classrooms on my hallway, therefore I am not receiving any requests for help. I have signed up for a total of nine shifts from 5:30pm to 8:30pm over the next two weeks. I have decided that tomorrow I will bring a book to read during my shift...

Tomorrow is the first day of classes for term 2. I am currently in my second year of "Cognitive Systems - Intelligent Systems and Design." This is a program option part of the Computer Science Department, and combines the fields of Philosophy, Linguistics, Psychology, Electrical Engineering, and Computer Science. Here is a copy of my course schedule for term 2. I am going to be frantically searching for alternative methods of acquiring textbooks for my courses over the next few days. I have decided that I no longer wish to pay 600 dollars every term.

My sleeping schedule was abruptly forced 5 hours out of phase this morning because I was unable to make reservations for the ferry. With all available spots on the ferry already reserved, Nath and I had to wake up at 5:30am to ensure that we would be one of the first standby passengers. We were the second last car on the boat. The trip to UBC took a total of about 5 hours. I spent most of that time on my PSP, finally beating Day of The Tentacle (using ScummVM) after many hours of frustration. It is now 7:30pm and I am already starting to feel tired. I guess I will spend the next hour in a blank daze like the girl sitting across from me in the perpendicular hallway (who also has absolutely nothing to do during her three hour shift).

// Triple Verbs!

Saturday, December 31, 2005

Lantern Festival

I just got back from Pender Island's annual Lantern Festival at Magic Lake. The pictures did not turn out very well due to poor lighting conditions. Most of the show was hard to observe due to a large mass of people. The number of people there somehow seemed to exceed the total population of Pender, so I guess the event is fairly popular. The festival seemed to have a very international theme, including Indonesian shadows puppets and Indian music. With all the costumes, masks, and lanterns I thought the festival may have been more appropriate for Halloween than for New Year's Eve. Only four hours left! Perhaps I should go and practice my reverse counting skills...