Variations on the programming topic

“Variations” on programming topic
Student: Giorgi Dzneladze, Bachelor of informatics
e-mail: lia.man.lika@gmail.com
Head :
Levan Imnaishvili, Doctor of technical sciences
About me
My interests
• Software development
• Algorithms
• Computer graphics
Programming skills:
•
•
•
•
•
•
•
•
•
Assembler
C++
C#
PHP
HTML
CSS
Javascript
XML
SQL
Keyboard kernel mode filter driver
Advantages:
• works in kernel mode (ring0)
• grabs input from both usb and ps2 keyboard
• works even before windows logon
Implementation:
• C++
• WDK
Synthesis of finite automata
according to regular expressions
Main concepts:
• for each regular expression a non deterministic automata is built using Thompson
algorithm as a composition of automata corresponding with sub-expressions
• obtained non-deterministic automata is transformed into a deterministic one
• number of states is minimized using the search of state groups distinguishable by
input string
Built automaton can:
• check input string for pattern matching
• find some text in document in order to delete or replace it
• extract substring from string according to pattern
Implementation:
C++/C#
Workflow
Regular
expression
XML &
XSLT
Transition table
(HTML )
Regexbuild.dll
(native)
dot
G
r
a
p
h
v
i
z
Transition
diagram
(gif, jpg, png)
Transition table
Graph view - DFA
Graph view - minimized DFA
Biometric electoral system
Main concepts:
• system architecture includes a server and the polling stations that host registration
and voting terminals.
• Terminals in its turn contain a personal computer with a touch screen and
fingerprint reader.
Advantages:
• excludes the possibility of identity fraud as voter identification is on biometrics.
• Counting procedure is fully automated which also eliminates the possibility
of falsification of election results
Implementation:
Server side: WCF SOAP web service .Net 4.0, SQL server 2008 r2
Client side: Windows Forms Application .Net 4.0
Fingerprint reader: Digital persona U.R.U 4000b
System architecture
GUI – Registration terminal
GUI – Registration terminal
GUI – Voting terminal
Ballot
Ocean simulation
Main concepts:
• the wave height is considered a random variable of horizontal position
and time - h(x, t).
• wave height field is decomposed as a sum of sine and cosine waves.
• the decomposition uses Fast Fourier Transforms
• for computer graphics purposes, the slope vector of the wave height field
is computed in order to find the surface normals
Implementation:
• C#
• XNA
• HLSL
Statistical model
initial values of the Fourier amplitudes of
the wave height field
Fourier amplitudes of the
wave field at time t
modified Phillips spectrum
Statistical model
wave height at the horizontal
position x = (x, z)
gradient for
computing normal
Horizontal displacement for “choppy”
waves
Ocean wireframe
ALU study emulator
Main concepts:
• helps lecturer better explain subject to students while
teaching such disciplines as computer architect and applied theory of
digital automata
• helps students better understand subject while studying computer
architect and applied theory of digital automata
Program can emulate the following operations of ALU:
•
•
•
•
addition
subtraction
multiplication
division
Implementation:
C#/Windows Forms
GUI - part 1
GUI - part 2
GUI - part 3
GUI – part 4
Thanks!