|
|
|
Michael S. Gashler

|
|
My Objectives
-
I am currently working on a Ph.D. in machine learning at Brigham Young University. My E.T.A. is Dec. 2010. At that time, I will seek a publication-friendly research position that will allow me to set my own research agenda. My current interest is in algorithms for learning the intrinsic and hidden state of temporal systems. Ultimately, I intend to invent the A.I. that will empower robots to enslave humanity and take over the world!
My Refereed Publications
-
Gashler, Michael S. and Ventura, Dan and Martinez, Tony. Iterative non-linear dimensionality reduction with manifold sculpting. In Platt, J.C. and Koller, D. and Singer, Y. and Roweis, S., editor, Advances in Neural Information Processing Systems 20, pages 513–520, MIT Press, Cambridge, MA, 2008.
-
Gashler, Michael S. and Giraud-Carrier, Christophe and Martinez, Tony. Decision Tree Ensemble: Small Heterogeneous Is Better Than Large Homogeneous. In The Seventh International Conference on Machine Learning and Applications, Pages 900 - 905, ICMLA '08. 2008. DOI 10.1109/ICMLA.2008.154
Employment History
-
| Neural Networks and Machine Learning Lab |
Research assistant for Tony Martinez in machine learning at Brigham Young University |
May 2006 – Present |
| Edumetrics Institute |
Worked as a development lead and engineer to build an interpreter training program and a decentralized multiplayer Internet game. |
Dec 2004 – May 2006 |
| Microsoft |
Worked for Microsoft on the Common Language Runtime (the .NET virtual machine.) I developed Code Access Security and the PE file Verifier. |
Jul 2001 – Nov 2004 |
| Vision Lab |
Did Image processing research for Bill Barrett. I worked on finding object boundaries by matching similar parts of successive animation frames. |
Jan 2001 – Jun 2001 |
| Microsoft |
Internship for Microsoft. I did performance work on the startup time of Visual Studio 7.0. |
May 2000 – Jul 2000 |
| Incline Software |
Worked for Incline Software on Ancestral Quest (which later became PAF). |
Apr 1998 – Sep 1999 |
| Waterford Institute |
Developed educational software for children. |
Jan 1998 – Apr 1998 |
| Scott+Charles Computer |
Wrote a Windows version of GlassMaster software for Scott+Charles Computer. GlassMaster is software for running a glass shop. |
May 1994 – Aug 1994 |
Open Source Projects
-
I am an avid hobby-programmer. Once an idea takes hold in my head, a mysterious force seems to compel me to immerse myself in bringing that idea to life. The following is an incomplete list of my projects.
-
Waffles is an open source library of machine learning algorithms. I started this project so that other machine learning researchers could benefit from the algorithms that I develop in the course of my research. It slowly evolved into a huge library with a diversity of machine learning algorithms, utilities for data mining, and all sorts of classes that are useful to a researcher in this field.
|
|
-
|
Gnuology is somewhat like a Wiki for Genealogy. The idea is that all of your relatives should be able to work on the same data at the same time. The program itself is actually a full web server (built from scratch) specifically dedicated for displaying genealogy data from multiple views, and for enabling people to edit the data directly through the web browser.
|
-
Isotope is a decentralized massively multiplayer on-line role playing game that focusses on intellectually stimulating puzzle games. The idea is that people can develop puzzle games, post them on their own web server, and link them into the game universe.
|
|
Other Projects
-
|
To show my admiration for the United States Constitution, I wrote my own version that seeks to incorporate an additional two hundred years of hindsight.
|
-
|
Tesla's Tangle is a board-game that I invented for fun. If you enjoy deep-thinking competitive strategy games, give this one a try.
|
|
-
|
In high school (way back in 1993), I developed a package called Gashler's Great Game Generator. It was a map-editor, sprite-editor, tile-editor, etc. It had a wizard interface that would guide you to associate "personalities" with game characters, tweak game parameters with slider-bars, and would generate a game (side-scroller-style). Back then, this was really cool. Some neighborhood kids actually preferred my software to the game console of the time. (Remember the original NES?) I wrote this in Q-basic, but due to the limitations of that language, I had to write some routines in x86 assembly, which I then encoded as a Q-basic string. I dereferenced those strings and then tricked the machine into calling them as a function. I even interfaced directly with the mouse driver through this mechanism. Aah, those were the days, when life was about video games and I had the time to hack around any obstacle that got in my way!
|
-
|
I added a couple features to Kolourpaint (a KDE project).
|
-
|
I enjoy image processing, and have written several tools for manipulating images.
|
|
-
|
I have written tools for pitch detection/correction, and various other signal processing algorithms.
|
-
|
Yes, I once worked for the Evil Empire. My code can be found in both VS and .NET, and my work has led to two of their patents. (As penance, I now work tirelessly to always use my powers for good instead of evil.)
|
|
-
|
|
I once worked for the company that made Ancestral Quest, which eventually became PAF.
|
-
|
In my freshman assembly class, we were supposed to write a guess-a-number game in
assembly language. I was bored, so I went home and reverse-engineered 8086 assembly.
With no documentation, just a lot of bit-twiddling and "debug" (a low-level debugger
that used to come with DOS), I built my own assembler. Then, using my assembler, I
wrote a higher-level languaged called Tu. I was particularly proud of the fact that
the image-blit function built into my language was two orders of magnitude faster
than the image-blit function built into the language in which I originally wrote the
assembler! Unfortunately, I became so engrossed in this project that I forgot to
show up to the class midterm. I would have failed, but fortunately the professor
agreed to give me a 'C' if I aced the final, which I did. Ha!
|
|
-
|
I enjoy studying computer security. I invented a symmetric-key algorithm that allows
you to plug in your favorite one-way-hash function for making cypher blocks.
Cryptpad is a convenient tool I wrote to store my
passwords. It uses my symmetric-key algorithm with SHA-256. I've had cryptography experts
analyze my algorithm. I've also offered a $50 reward (that's all my wife will let me risk)
since 2001 for anyone who can crack it. I also implemented RSA
asymmetric-key cryptography from scratch. (I even wrote my own BigInteger class.) I used
this to make a secure communication program, and several authentication tools. I also
wrote a Javascript version so I could use cryptography within my web apps.
|
-
-
- todo: finish annotating these...
-
-
-
-
-
| |