Skip to main content

Posts

Showing posts from February, 2018

AI Will Replace Medicine as We Know It, and That's a Good Thing

Today, a great piece by Dr. Clay Johnston (Dean of the UT Dell Medical School) popped up in my email called Today's Doctors Are an Endangered Species . It's a great blog post that I recommend everyone take a look at. In it, Dr. Johnston talks about how AI is going to eventually be a full replacement for the way physicians practice medicine today, but that it doesn't necessarily mean the end of human-practiced medicine. In fact, physicians' ability to communicate with patients will become more crucial than ever, as the more tedious jobs of diagnosis and prescription move into the realm of AI.

Genetic Algorithms: Mutation

So far in my series on Genetic Algorithms I've covered:  Basic Concepts ,  Encoding ,  Selection , and  Crossover . Those operations will get you most of the way to a functioning optimizer. However, all of the operations we've discussed exert convergence pressure  on the population. That is, selection and crossover have a tendency to draw the population together. The last operator I want to talk about -  mutation - is different. It wants to split the population apart. And as counter intuitive as it seems,  divergence  can be even more important than convergence.

Genetic Algorithms: Crossover

So far in this series on genetic algorithms , I've talked about encoding individuals and selection methods . The next task in a generic algorithm is to mate individuals using an operator called crossover . Crossover produces two (or more) new individuals (children) from two (or more) existing individuals ( parents ). The idea behind crossover is twofold: Sharing of worthwhile traits allows for individuals to be created which inherit the best traits of their parents (optimization), and new combinations of traits may reveal as-yet-unexplored possibilities (search).

Talking to customers

Earlier today my family was on the road returning from a family wedding when we decided to stop for lunch. Needless to say, it didn't go spectacularly well (my Twitter rants are rare, and only occur when something has really set me off):

Genetic Algorithms: Selection

In Genetic Algorithms Basics  and my post on Encoding Individuals , I talked about the basic concepts and operations in all genetic algorithms, and considerations to keep in mind when encoding individuals for GAs. This time I want to spend some time discussing selection . Selection is the most important operation in the GA, and it performs two important functions. First, selection is how we determine who mates (and who doesn't), and as a result which traits survive to the next generation (and which do not). Second, selection acts as the major source of  convergence  in the GA. The way in which you select individuals for mating can have an enormous effect on whether you converge to a suboptimal solution, or manage to find a near-global optimum.

Quantum Computers May be More of an Imminent Threat than AI

The Washington Post published an article yesterday (Feb. 5, 2018) about the rapid progress being made in the area of quantum computing, and how this will likely effect fields such as cryptography, and the dependent IT security field. The article also talks about quantum computing's potential "in [improving] weather forecasting, financial analysis, logistical planning, the search for Earth-like planets, and drug discovery."

Genetic Algorithms: Encoding Individuals

Genetic algorithms are a great tool for optimizing all sorts of things, from path planning and scheduling to neural network architectures. In this post, I'm going to talk about the first step in designing a genetic algorithm: Encoding Individuals . As I mentioned in my post on genetic algorithms basics , genetic algorithms borrow on the concept of phenotypic expression, which is basically the idea that specific sequences of DNA can be mapped to particular traits which are expressed in the individual. For a genetic algorithm, this means knowing what problem you want to solve and developing a succinct way of expressing solutions to that problem as chains of values.

Google is using AI to predict flight delays

( Engadget ) Google is trying its hand at flight delay prediction, saying they will now flag flights that they feel have at least an 80% chance of being delayed. I'm sure frequent flyers will find this useful. For the casual traveler, the second item mentioned might be more interesting: You can now check flight amenities, such as whether a rate includes seat selection or overhead bin access. Of course, as a Southwest traveler I rarely worry about such things... I've personally used Google Flights  for years when selecting business travel or making sure that Southwest's fares beat out my company's preferred carriers. It's nice to see that AI is bringing even more functionality to an already good product. https://www.engadget.com/2018/01/31/google-flights-predicts-delays/

Genetic Algorithms Basics

Everyone is talking about neural networks these days. I'm glad for it. When I started working in nature-inspired algorithms nearly 20 years ago, it was an extremely niche area. In fact, few saw a future for any of these approaches outside academia. But the deep learning revolution that started in 2006 (or 2012, or 1989, depending on who you ask -- I'll have a full post on the history of neural networks later) is going strong, and shows no signs of letting up. It turns out that people like being able to interact with computers using their voice, having images automatically tagged, finding objects in pictures and movies, having TV shows and brands of toilet paper recommended to them based on their viewing and purchasing history, and self-driving cars. Who knew? I plan to write entire posts on all of the different nature-inspired techniques (neural networks, artificial immune systems, ant colony optimization, flocking/swarm algorithms, and simulated annealing) in the future. This