Favorite Physicists & Mathematicians

Favorite Physicists

  1. Harold "Hal" Stahl
  2. Carl Sagan
  3. Richard Feynman
  4. Marie Curie
  5. Nikola Tesla
  6. Albert Einstein
  7. Neil Degrasse Tyson
  8. Niels Bohr
  9. Galileo Galilei
  10. Michael Faraday

Other notables: Stephen Hawking, Edwin Hubble

Favorite Mathematicians

  1. Ada Lovelace
  2. Alan Turing
  3. Johannes Kepler
  4. Rene Descartes
  5. Isaac Newton
  6. Leonardo Fibonacci
  7. George Boole
  8. Blaise Pascal
  9. Johann Gauss
  10. Grace Hopper

Other notables: Daphne Koller, Benoit Mandelbrot

Carvana Jobs.png

Some OSS Projects I Run

  1. Liquid Victor : Media tracking and aggregation [used to assemble this presentation]
  2. Prehensile Pony-Tail : A static site generator built in c#
  3. TestHelperExtensions : A set of extension methods helpful when building unit tests
  4. Conference Scheduler : A conference schedule optimizer
  5. IntentBot - A microservices framework for creating conversational bots on top of Bot Framework
  6. LiquidNun : Library of abstractions and implementations for loosely-coupled applications
  7. Toastmasters Agenda : A c# library and website for generating agenda's for Toastmasters meetings

http://GiveCamp.org

GiveCamp.png
IMG_20190830_222230.jpg

Firefly Optimization

Firefly Optimization Flowchart_800x721.png

Firefly Optimization

initialize n fireflies to random positions
loop maxEpochs times
  for each firefly i
    for each firefly j
      if intensity(i) < intensity(j)
        compute attractiveness
        move firefly(i) toward firefly(j)
        update firefly(i) intensity
      end for
    end for
  sort fireflies
end loop
return best position found

Firefly Optimization

  • Brighter: Better Solution
    • Need estimate of range of values
  • Closer and Brighter: More Attractive
    • Similar to gravity
  • Works better for linear problems
  • Danger: Sparseness
    • Can suffer from the "curse of dimensionality"
Amoeba.jpg

Amoeba Optimization

Amoeba Optimization Flowchart.png

Amoeba Optimization

initialize the amoeba with n (size) locations
loop maxEpochs times
    calculate new possible solutions
        contracted - midway between centroid and worst
        reflected - contracted point reflected across centroid
        expanded - beyond reflected point by a constant factor
    if any solution is better than the current
        replace worst value with best value from new solution
    else
        shrink (multiple contract) all lesser nodes toward the best
    increment epoch count
end loop
return best position found

Amoeba Optimization

Amoeba Optimization - Solutions.png

Amoeba Optimization

  • Key: How the amoeba moves through the solution space
  • Other values for n (sizes of amoeba) can be used
  • Danger: Sparseness
    • Can suffer from the "curse of dimensionality"
what can I do.gif

Linear Data

Positive Only Linear Data.png

Linear Regression Model

Predict the unknown values in a linear equation​

  • Given X (time), predict Y (location)​
    • Y = mX + b​
  • Find the best values for m and b
    • Minimize total error
Regression Model.png

Error Function

Linear Regression - Error Function Plot - Smaller.png

Voter Model

Voter Network Diagram - 673x800.png
Sigmoid Function.png

ML Demo

Using Amoeba Optimzation to Train an ML Model

Bee Colony Optimization

Bee Colony - Best Path - Animated.gif

Types of Bees

Active Workers
Forage on their known path and on a neighboring path

Scouts
Forage on a random path

Inactive Workers
Wait for information from other bees

Bee Colony Optimization

Bee Colony Optimization Flowchart.png

Bee Colony Optimization

Bee Colony Optimization Psudocode.png

Bee Colony Optimization

  • Multiple Search types
    • Active Workers perform neighborhood search
    • Scouts perform random search
  • Waggle Dance
    • Best known path propogates to other foragers
  • Tweaks
    • Number of each type of bee
    • Probability of persuasion
    • Visit limit
  • Less Sensitive to Scale

Ant Colony Optimization

Ant Colony - Best Path - Animated.gif

Pheromones

  • The Pheromones are the key
    • Greater Usage => More Pheromones
    • Shorter Path Length => More Pheromones Remain
    • More Pheromones => Higher Probability of Usage

Ant Colony Optimization

Ant Colony Optimization Flowchart.png

Ant Colony Optimization

Ant Colony Optimization Psudocode.png

Ant Colony Optimization

  • Snowball Effect
    • Longer runs = more pheromone on short paths
    • More pheromone = Higher probability of use
  • Tweaks
    • Number of Ants
    • Pheromones to dispense
    • Pheromone dissipation rate
  • Less Sensitive to Scale

More Bio-Inspired

  • Roach Infestation Optimization
  • Particle Swarm Optimization
  • Multi-Swarm (Birds) Optimization
  • Bacterial Foraging Optimization
  • Genetic Algorithms

Summary

  • Minimum Cost Optimization
    • Firefly Optimization
    • Amoeba Method Optimization
  • Best Path Optimization
    • Bee Colony Optimization
    • Ant Colony Optimization

Resources