18 Mart 2010 Perşembe

Important Steps

This week, I mainly revised some classes that I wrote previously and added some essential base classes for TRASTRAPS.

First of all, I defined XML files for all units and systems that are used in TRASTRAPS and wrote Initializer class that parses those XML files and initializes database.

Another Initializer class that I implemented is scenario initializer. It gathers scenario units and their properties from database and accumulates them in our singleton unit manager to make them easily reachable during the rule evaluation.

I also implemented RTI communication to be able to send multiple units' positions. In our prototype, there was a single hard-coded unit of which positions were changed manually by us. Now, Simulation Engine calculates positions of each unit and sends them all to the Graphics Engine. I added MissionController class into the Simulation Engine that controls whether units have missions and if they have any, it tries to accomplish that mission. For the time being, I tried to accomplish Move Mission only.

I hope, there will be lots of improvements in the following week.


Integration on Different Platforms

This week I have worked a little bit experimentally :) First issue was making all our modules and federates implemented so far work on my Mac. We have been working on Ubuntu, everything was going well there. But my parts were implemented on my Mac, so on Mac OS X, so we have to realize what we said on our design reports and make the whole thing work platform independently. GUI was working since implemented here, Simulation Engine was not working at first but I handled it with a little bit configuration, and Graphics Engine was not working too, but with a little bit change in implementation will handle that too.

Using Netbeans for code development environment, also we have come across with some difficulties in version differences. After equalizing all platforms and environments, I have joined all the pieces together and try them on Mac OS X. The result was as expected and this step taken was successful in making TRASTRAPS platform independent. Also about one or two months ago, my other friends had tried it on Windows too, it was working.

This is all from me for this week, my last word is again mentioning our website: we all welcome you at http://www.virtualimpact.co.nr


17 Mart 2010 Çarşamba

TRASTRAPS rules...

In TRASTRAPS, we plan to use a rule engine to provide AI. Since we started to use JAVA in Simulation Engine, the Jess Rule Engine came to our mind, so I made a tiny research on it.

Jess is a rule engine and scripting environment written in JAVA. Using Jess, developers can build Java software that has the capacity to decide using knowledge you supply in the form of declarative rules.

After I dive into Jess, I realized that it requires to learn additional language that is very similar to LISP. Therefore, it may make our job a bit difficult. For many rules, it may very helpful to use it, but if there are very few rules, I think it is unnecessary to use.

Şenan Postacı

11 Mart 2010 Perşembe

As time passes by, everything changes

As all my friends said, this week has been a gun fired for start of the project marathon. We have implemented many classes as we had done for our first term demo. And many others with the help of our design document. Inspecting our graphic engine Irrlicht, RTI communication structure Portico and other federates, we have started to think that what if we use both Java and C++ in place of only C++.

Disregarding middle steps, we have decided to use Java for some federates (like Simulation Engine and Recording Engine) and C++ for others (like GUI Engine, Graphics Engine and Sound Engine). Because RTI communication is easier on the way of using Java and C++ makes us lose time in some aspects. This brand new decision leads us to change our already written classes, and this was the role of mine. I have changed the simulation engine's prototype from C++ to Java, so we are now OK with language use.

My other roles to be completed on next weeks are integrating physics engine and helping Suat to define systems class units. So these also will be completed too.


When classes start, we write classes :)

We have started this term and this week very fast. The implementation is getting more and more complex but thanks to our thick Detailed Design Report, everything is going on the right way. We complained much when we were writing the report, but now we see the ease of using it.

This week, my role in the project was developing object classes like Unit classes, System classes and Mission classes. I have written the basics of these classes like predefined attributes, getter and setters, basic predefined methods and constructors - destructors. These are seem primitive actions but we have decided that we have to start by these tasks to construct a strong structure. Also I have implemented database connections via a database class, to store our basic scenario units. Unit manager class is also ready to use by simulation engine including singleton objects. Lastly the scenario class is started to being implemented by me and help of others.

Next week, according to our plan, these all mentioned classes will be finished. See you all next week.


10 Mart 2010 Çarşamba

Start with a new semester

As the new semester starts, we have started to our term project again. This week, we reviewed another groups Detailed Design Report. After we finished it, we had our first meeting in my new house.

Since there are no homeworks yet, we have a great chance to improve TRASTRAPS, therefore we started coding immediately :D With the help of our great Detailed Design Report it is very easy handkle all the jobs.

As we know TRASTRAPS consists of 5 federates: Simulation Engine, Graphics Engine, Audio Engine, Recorder and finally GUI. I started to code some of the Simulation Engine and Graphics Engine.

Şenan Postacı

New Semester, Same Work :)

After a little break, we are all freshly on our job to serve you TRASTRAPS. This week we have given a quick start to implementation phase and the demo we are preparing for tomorrow will also reflect that. Briefly, we have been coding and developing day and night for about a week :)

My part of job is again dealing with GUIs and writing the classes of GUIs integration to project. Control classes are also to be written with database interaction. Apart from these, I have set up and uploaded our website to our provided domain. You can access it from the address http://www.virtualimpact.co.nr (free domain :) ). All the material we have written or implemented (except the last demo) can also be found here. I will upload the end product and manuel at the end of the semester too, Ojala if we finish :) (A spanish word for strong desire). All other parts of the website are again my creative vision. Also you can follow us from twitter too, with "virtual_impact" username. Our last contact with the world is I also included this blog to our welcome page, to make everyone have access to our first term work.

For a last word, last week we have evaluated another group's work and they were good designers too in terms of project development. This also enlarged our vision of thought while inspecting others work.

This is all for this starting week, again I suggest you to visit our website if you have some questions about our project.