240 likes | 363 Vues
Join us at the Salt Lake City Public Library for an engaging workshop where we delve into the exciting realms of graph theory and genetic algorithms. Learn to harness Python and Pygame to visualize mathematical concepts and explore phenomena like the butterfly effect and social interactions. We will discuss the implications of these theories and their applications in machine learning and artificial intelligence. Ideal for beginners and enthusiasts alike! Visit our resources page for tools and examples to continue your learning journey.
E N D
Frontiers in Mathematics and Computer Science Salt Lake City Public Library, SLC, Utah NazmusSaquib Scientific Computing and Imaging Institute
welcome back! • today we will • experiment with some code • learn a bit about graph theory and genetic algorithm • discuss the implications of mathematics research
installing python and pygame • http://www.python.org/download/ • http://www.pygame.org/download.shtml • python is a programming language • suitable for beginning and learning programming • we will play with some python examples today
agenda – day 2 • mathematics • chaos theory • butterfly effect • weather forecast • fractal music • L-systems • social interactions (in facebook) • graph theory • social interactions example (continued)
agenda – day 2 • computer science • machine learning • big data • genetic algorithms • data mining • sentiment analysis • digital humanities
graph theory • in the context of social interactions • can we predict the behavior of a group of people? (given some information) • group dynamics • graph network
jargon • node and edge http://pc57724.uni-regensburg.de/morgan/teaching/CS104-Social_Networking.pdf
culture hubs • degree of a node http://en.wikipedia.org/wiki/File:Scale-free_network_sample.png
(very primary) types of analysis • power • (who’s The Guy?!) • related to the degree of a graph • closeness • how many people do I need to know to reach someone else asap? http://pc57724.uni-regensburg.de/morgan/teaching/CS104-Social_Networking.pdf
(primary) types of analysis • betweeness • who can get me to the most important people asap? • asap:shortest path in the graph • number of times I need to go through someone to reach someone else
(primary) types of analysis • betweeness (only equation in the slides, I promise!) this is to show you how easy it is to calculate such metrics
example – 15th century Florence • Medici family was less powerful than others • they ended up dominating • why is that so? • betweeness score • Medici: 0.52 • second largest: 0.25 • moral: networking is important! • Medici held the network together
artificial intelligence • machine learning is the development of algorithms from which programs can learn • what can they learn? • what can they do with the training? • training datasets
invitation to big data • we deal with exabytes of data nowadays • 1 exabyte = 1 099 511 627 776 megabytes • 2147483 hard disks (that are each 500 GB) !! • how do we make sense of such a huge amount of information? • opportunities in supercomputing and machine learning
flavor of artificial intelligence • Terminator 2 was not quite right, robots haven’t taken over yet • but we can use AI in other ways • evolutionary algorithms • set a goal, evolve your given information towards the goal • genetic algorithm
genetic algorithm • say, you would like to break someone’s password • you can try all random combinations • or you can do some intelligent guesses • how can we simulate this process for a computer?
simple genetic algorithm • start with “;wql* opqlq” • end goal: “hello world”
genetic algorithm • treat these characters as genes! • genes can mutate, right?
genetic algorithm • but wait, the program should not accept every mutation • how does it know it is closer to the goal? • how can we find the difference between two sets? • Euclidean distance
genetic algorithm • fitness test: is a gene fit to pass? • If the difference between source and target is lower, we accept the mutation. • intermediate results are important too! • in reality, you would derive a good fitness function that would produce “intelligent” results • if you were writing a password breaker, you wouldn’t know the password to begin with!
genetic algorithm • text evolution example (textevolve.py) • music evolution example (music_evolve.py)
research in mathematics • discussion
end of day 2 • resources can be found at • nsaquib.com/presentations • code examples • things to try out • thanks for attending!