MSC: Paper 1 Finally Done

. Monday, August 29, 2011
0 comments

I'm finally done with paper 1! 4am in the morning, August 29, 2011. 2 days before the deadline of the IEEE SCOReD 2011 (9th SCOReD).

Sent email to Dr J to schedule meeting, attached with the document file of the paper.

MSC: Discussions are almost done

. Thursday, August 25, 2011
0 comments

Given the fact that track 3 is much more difficult to race in, the fitness scores are considered quite high as compared to the ratio between this track and the other 2 tracks.

Low average speed, low speed = smaller distance raced,

An interesting observation to note, apart from spectating it drive on the track, is...

So.. quite a fruitful day today. but if I made use of the whole day, I could have done more. but it's ok. I'll try to do much more tomorrow.

Aiming to get it done by end of this week, which is on the August 27, latest by August 28.

MSC: Discussions on the way

. Tuesday, August 23, 2011
0 comments

Inserted all charts into paper, and also a table of the best lap times.

MSC: PC3 keeps crashing, another day to completely compile all results

. Friday, August 19, 2011
0 comments

Run on PC2 is done, but run on PC3 was interrupted by a PC crash at 4am, so I continued it at 10.30pm.
Transferred the results of a run from home PC to PC1, to be compiled together with the rest.

Archived a collection of 3 runs on track 1, the latest, "3_snn_1.csv" is guaranteed to run with the latest settings: RS parameters, best lap time, but there's 2 others, which i'm not quite sure. So I'm sending them home to test run it on home PC.

I compiled the results of the 2 latest completed runs, the one from home, and PC2, into "Track1.xlsx".

As of now, PC1 has completed around 650 generations. Will complete tomorrow.

Found out yesterday from the email Dr J sent us that there's gonna be an international conference in Bangkok. Submission due date is on September 10, 2011.

MSC: Fitness of controller on track 1 tells of sophisticated driving skills

. Thursday, August 18, 2011
0 comments

These are just some thoughts and/or style of writing that unnecessarily be in the paper.

After examining the scores and the controller driving in real-time, we can tell that the controller evolved driving strategies. Although track 1 has only four turning corners, does not mean that the fitness of the controller will easily be that high, because there is high possibility that a less sophisticated driving technique would make the controller slow down while turning the corner.

MSC: My laptop is a snail

.
0 comments

The run on laptop is running too slow. It's been a day already and it hasn't even completed 100 generations. Since the run on PC1 was done yesterday, I'm transferring the run on the laptop to continue on PC1.

The run on PC3 on the other hand has stopped, cos the computer crashed, around 2pm, so I continued it around 5pm. Run on PC2 is fine. and finishing today.

UPDATE: So I continued the run from my laptop on PC1, but I discovered that the results don't match, in fact, the results varies so much. One reason 1 observed, is because the settings I had on my laptop for the race is 1 lap! but how come?! Oh I remember, I duplicated the copy I had in my HDD, which probably has a setting of only 1 lap. Hence the flawed results. Hence I had taken to start a new run on PC1. What a waste of time.

Jessica's birthday 2011

. Wednesday, August 17, 2011
0 comments

Does it make sense to take the best controller of all runs: The best controller of all 10 runs, of the best controller of all 10 controllers of 1000 generations..?

Run on PC1 is done. inserted the results into the spreadsheet.
Arranged the best lap times for tracks 2 and 3.
Included chart of track 2 and 3 into doc file.
Going home to continue.

Produce analysis of results at home!

Today's Jessica's birthday!!

MSC: Prepared laptop for demonstration

.
0 comments

Reach school at 7pm, did not accomplish any progress in writeup yet again, but I managed to install VS2010 on laptop, copied the code and simulator over, and started a run on track 1 on it.

PC3 restarted, so continued from where it left off.

Not sure when I edited the source again, but I edited it since last Thursday Aug 11 and ought to note it down just in case I haven't wrote it down yet.
Right now, the client records the best lap time of the controller, the neuron parameter values are set to reflect Regular Spiking (0.02, 0.2, -65, 8).

So.. Progress...
I basically completed the runs on track 2 and 3 for paper 1. For track 1:

  • 5 completed runs
  • 4 in progress (home, PC1, PC2, PC3), and 1 started today on laptop.
  • So all together == 10.
Next task would be to:
  • Organize data in excel and produce charts to be inserted into paper.
  • Show Dr J the controller, and explain the codes.
  • Must work on write up.

Was it a good day?

. Tuesday, August 16, 2011
0 comments

Did almost nothing related to my studies, except starting 3 more runs in lab for track 1. Other than that, I did not accomplish any progress in my write up. I was suppose to prepare my laptop to show Dr J the simulator and code explanation, but failed to do it, or forgot about it, in a sense.

I ended up downloading a remote access program called "team viewer." At least it's free for non-commercial use.

P.S. I almost forgot to key in data for my accounts. Thank God I remembered. I also ought to catch up with my bible reading!

MSC: table to display best lap time

. Monday, August 15, 2011
0 comments

Table structure to display the best lap times of each run for all 3 tracks.

RunTrack 1Track 2Track 3
1...s...s...s
2...s...s...s
3...s...s...s
4...s...s...s
5...s...s...s
6...s...s...s
7...s...s...s
8...s...s...s
9...s...s...s
10...s...s...s
mean +/- sdmean +/- sdmean +/- sd

MSC: Algorithm for best lap time

. Sunday, August 14, 2011
0 comments

if(cs.getLastLapTime() > 0.0)
{
    if(bestLapTime == 0.0)
        bestLapTime = cs.getLastLapTime();
    else if(cs.getLastLapTime() < bestLapTime)
        bestLapTime = cs.getLastLapTime();
}

Wasted 4 days running redundant experiments

.
0 comments

Discovered that I had wasted 4 days running 2 experimental runs on track 2!! Gosh. So I initiated another run, but this time mad sure it started in generation 0 and the track is track 1.

Will go to school today to start more runs on track 1 in lab. Now, I need some sleep!

taking a time off

. Saturday, August 13, 2011
0 comments

I started slacking on Thursday after meeting Dr J, ad finding out that the submission deadline for a conference in UPM is extended to Aug 31. My laptop is still at school and I need to go and get it.

SimpleDriver Best Lap Times

. Thursday, August 11, 2011
0 comments

A-Speedway: lap1: 01:07:13    Best:01:02:68
CG speedway number 1: lap1: 01:32:96    Best:01:28:65
Street 1: Best:03:06:00

Keeping silent is the best way

. Wednesday, August 10, 2011
0 comments

Am I that foolish?

I made a comment this evening, beginning by stating that his definition of stewardship is shallow. Why does this thought of saying it came up? How could I ever begin a conversation beginning like this. Had I spoke the same way with my friends too?

Quite wasted today not writing my paper. approx 3 days left for me to complete it if I want to submit. Otherwise...

Graphs are on the way

. Monday, August 8, 2011
0 comments

Mingled with the data today.
Wrote a VBA macro to organize the fitness (did not organize the lap time yet. the lap time will be displayed in tables).

Extracted out the highest fitness of each generation in all 10 runs for track 2 and 3, and copied the fitness into a separate sheet, where only all the highest fitness of all 10 runs are displayed, along with a graph. In that separate sheet, named "Overall", included the mean and st deviation of the highest fitness for all generations.
Will see what I will do with it later. Putting them in tables or displaying another graph? or using them to display the mean of all 10 runs of the best individual?

That is 1 solution.

MSC: VBA Macro for arranging data in Excel

.
0 comments

Below is the macro to organize the data in the CSV files using excel.
It will remove all the chromosomes and the last lap time, then it'll insert the max and average values for all generations beside the fitness values, and then insert a line chart based on the max and average data.


Sub delete_unwanted_rows()
'
' delete_unwanted_rows Macro
'
    Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(1, 0).Select
    Range(ActiveCell, ActiveCell.Offset(0, 9)).Select
    Selection.Cut
    Range("A1").Select
    ActiveSheet.Paste
    Selection.End(xlDown).Select
   
    For i = 1 To 1000
        Range(ActiveCell, ActiveCell.Offset(12, 32)).Select
        Selection.ClearContents
   
        Selection.End(xlDown).Select
        Range(ActiveCell, ActiveCell.Offset(0, 9)).Select
        Selection.Cut
        Selection.End(xlUp).Select
        ActiveCell.Offset(1, 0).Select
        ActiveSheet.Paste
        Selection.End(xlDown).Select
    Next i

End Sub

Sub Data_for_chart()
'
' Data_for_chart Macro
'
    Range("L1").Select
    ActiveCell.FormulaR1C1 = "=MAX(RC[-11]:RC[-2])"
    Range("L1").Select
    Selection.Copy
    For i = 1 To 1000
        ActiveCell.Offset(1, 0).Select
        ActiveSheet.Paste
    Next i
    Application.CutCopyMode = False
   
    Range("M1").Select
    ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-12]:RC[-3])"
    Range("M1").Select
    Selection.Copy
    For i = 1 To 1000
        ActiveCell.Offset(1, 0).Select
        ActiveSheet.Paste
    Next i
    Application.CutCopyMode = False
   
    Range("L1000").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlUp)).Select
    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.SetSourceData Source:=Range(ActiveSheet.Name & "!$L$1:$M$1000")
    ActiveChart.ChartType = xlLine
    ActiveChart.SeriesCollection(1).Name = "=""Max"""
    ActiveChart.SeriesCollection(2).Name = "=""Average"""
End Sub

MSC: Procrastination is a sin

. Saturday, August 6, 2011
0 comments

Procrastinated yet again today and wasted it.

MSC:

. Friday, August 5, 2011
0 comments

Formatted paper to mirror IEEE format requirement, for the paper due Aug 15.

Track 2
2 completed runs on my lab PC, and 1 ongoing run.
2 completed runs on the other PC on the far right, and 1 ongoing run.
2 completed runs on the PC on the right.
2 completed runs on home's PC, and 1 ongoing run.

Total: 11 runs

MSC: Spike rate encoding

. Thursday, August 4, 2011
0 comments

Objectives for today:

  1. Mention "spike rate coding" in paper and reference Floreano.
  2. Mention the steps to perform the evolutionary process.
  3. Download IEEE reference style for MS Word.
  4. Refer Kar Bin's paper.
    • Noticed that Kar Bin's paper only has 6 pages including references, with the references taking up the last page, and graphs taking up another page. Hence, he only used 4 pages.

Wasted my Thursday

.
0 comments

I didnt do anything today. Although I did some, but it's not significant enough to justify I did anything.

Humility then honor

.
0 comments

A person needs to be humble before he will be honored.

MSC: Defined constant global initial variable for generation

. Wednesday, August 3, 2011
0 comments

Came to lab. The run on my lab's comp is done. The 2 other comps are not done yet. Home PC is also not done but will be done today.
In the source code:

  • I defined a constant global variable for the initial generation (INITALGEN_)
  • Constructor() => generation = INITIALGEN_
  • Epoch() => if (generation == INITIALGEN_)
CONT' WRITE UP!

Evolutionery Strategy

. Monday, August 1, 2011
0 comments

Evolutionary Strategy is a powerful and common class of Evolutionary Algorithms that directly evolves the phenotypes by representing them as real-valued vectors, which is typically applied to numerical optimization through a stochastic search method.
In the algorithm, the parents are mutated to create offspring so that the more fit among the two survives to the next generation, where new parents are selected from one or both of generations. The parents contributing to the offspring pool are usually selected uniformly at random, while survival is accomplished by truncation, where the new parent population consists of only the best of the competing individuals.

MSC: Fifteen days left

.
0 comments

The run of track 2 on home's PC is completed. Started another 1.
The runs on lab's comps however were interrupted, as most comps are restarted yesterday. So, the runs were continued today afternoon.

15 days left to finish up my 1st paper! In fact, 1 week left! the other week is used for checking. so I better start doing now. BE A DOER!!

me me