[AI] Tech Dose of the Day: Obfuscation, Duck Typing, Ant Colony Optimization and much much more!

vishnu ramchandani vishnuhappy at yahoo.com
Mon Mar 17 07:15:47 EDT 2008


Obfuscation
Dosed by Rithish Saralaya (from MphasiS Software
Services)
What is Obfuscation?
Obfuscation is the process of making the source code
illegible so that it is hard to read and understand.
Companies usually employ obfuscation, as they would
want to deter the re-engineering / recompiling of the
source code.
Imagine the risks that would come out, if one were
able to reverse engineer a propreitary software,
develop it, and distribute it around. The risk is
greater in JAVA and .NET environments as they take
advantage of Just-In-Time compilation; that allows for
deploying an application as intermediate code, rather
than code that has been compiled into machine
language.
There are quite a few obfuscators (or) obfuscation
softwares/tools available that one may use.
Further References
wikipedia :
http://en.wikipedia.org/wiki/Obfuscated_code
blog on obfuscation :
http://blogs.msdn.com/clrsecurity/archive/2005/05/26/422440.aspx

Duck Typing
Dosed by Media&Entertainment Delivery Group (MphasiS
Software Services)
What is Duck Typing?
"If it walks like a duck and quacks like a duck, I
would call it a duck" is what James Riley had to say
referring to the Duck Test. The concept of Duck Typing
is brought out from this.
Duck Typing is a style in which an object's current
set of methods and properties is what determines it
semantics, rather than the class/object it is
inherited from.
In a Duck Typed Language, the language assumes that
the methods ( say quack() and walk() ) and properties
of the object ( say Duck ) are always available and
the check/resolution does not happen at compile-time,
and would throw an error if the same does not resolve
at run-time.
Further References
wikipedia :
http://en.wikipedia.org/wiki/Duck_typing
Example :
http://boo.codehaus.org/Duck+Typing

Ant Colony Optimization
(dosed by Rithish Saralaya (from MphasiS Software
Services)
What is ACO?
ACO or Ant Colony Optimization is one of the more
prominent techniques concerning Swarm Intelligence. It
is inspired by how "ants" behave in finding optimal
paths from their food-source to their colony.
Further Info.
Ants generally wander randomly while hunting for food.
On finding, they return back to their colony secreting
a pheromone along the trail. Other ants follow this
pheromone to the food source and back to the colony.
This pheromone is however evaporative in nature, and
over a period of time loses it power of attraction.
This evaporation is a boon in disguise, as another ant
in probability would have found a better path, and
would have created a pheromone trail. So the ants
follow the trail that is most attractive or strongest
in scent, thus optimizing the path between the food
source, and the colony.
ACO is based on this probabilistic technique where
solutions to computational problemsare found by
finding good paths through graphs.
Further References
wikipedia :
http://en.wikipedia.org/wiki/Ant_colony_optimization
read :
http://www.cs.unibo.it/bison/publications/aco2004.pdf
ACO :
http://iridia.ulb.ac.be/~mdorigo/ACO/ACO.html



      5, 50, 500, 5000 - Store N number of mails in your inbox. Go to http://help.yahoo.com/l/in/yahoo/mail/yahoomail/tools/tools-08.html




More information about the AccessIndia mailing list