Upload
billwzel
View
143
Download
1
Embed Size (px)
Citation preview
The Internet of Everything
• The Internet of Everything creates an impossible task: Finding, collecting and analyzing data in real time from a large number of devices
IoE Device Growth• It is estimated that there were 12B
devices shipped in 2013 and that there will be at least 40B devices in 2025
What This Means• Even with huge data centers and Moore’s
Law, analytics can’t locate, gather, and analyze the volume of data that’s coming
Fog Computing• Fog Computing pushes computing out to the edge
of the Internet, such as in cars that will analyze what’s happening around them and communicate with other cars and to an active traffic grid
Fog Lifter: Compute Locally, Analyze Globally
• Organizes local, dynamic, distributed computing
• Designed for intermittent connectivity
• Processes data locally and makes results available globally
• Data that reaches data centers will be processed multiple times (distributed analytics)
Fog Lifter Platform• Functional Relational Programming
• F-code compiler and evaluator
• Relational rules and constraint checker
• P2P architecture at the Edge
• Work Flow Description
• Data Registry
• Security and Privacy
FRP
• Functional Relational Programming (FRP) is described in the paper Out Of The Tar Pit, by Moseley and Marks (1996)
• It is based on the idea of limiting “unintentional complexity” in order to reduce crashes
• FRP already in use in large scale analytics
F-code Compiler• Fog Lifter uses combinators to implement
pure functional code
• Can compile any pure functional language program into combinator expressions
• Expressions can be distributed across devices and results safely recombined
• See Peyton Jones The Implementation of Functional Programming Languages (1987)
Y (B (S (C B ? (= 0)) 1) (B (S *) (C B (C - 1))))
Relational Programming• Relational Programming (independent of
DBs) implements the immutability of data
• Functional Relational Programming (FRP) uses relational algebra to constrain unintended complexity of functions
• Reduces chance of catastrophic errors
• Logic programming adds constraints to data
Work Flow Design• Maps data flow and computation across the
Internet in order to leverage parallel processing
• Data centers will analyze results of edge computing rather transferring terabytes of data
Enterprise Data Workflows with Cascading O’Reilly (2013)
Data Registry• Provides semantic description of the data
• Also contains data dictionary
• Provides information about computed results and optionally raw data
• Conforms to relational model
Security and Privacy• Data and results must be
secure from hacking by building in heavy encryption
• Block chain secures transactional use of data and computational resources
• Permission must be an act of commission, not omission
Example: Smart Traffic
Car
Car Car Car
Car
Car
Car
Car
Car
Cars plot route from interactive
algorithm
SmartRoad
SmartRoad
SmartRoad
SmartRoad
Roads trackcar flow
Traffic controlintegrates routes
and flow
City planners design infrastructure
changes
Car
Example: Farming Horizontal Aggregation
Water Usage Patterns
Weather/Field Dynamics Pest Dynamics Yield Projections
Water Use Planning Ag Market Analysis Insurance Companies NGOs
The Evolution of Everything (EvE)
• Introduction
• The value of constraints
• Non-Trivial Geography
• Evolutionary Reinforcement Learning (ERL)
• Expanding GP
Introduction to EvE • What if we create an environment we
can learn from and evolve behaviors from a constant flow of data in the real world?
The Value of Constraints
• In discussions on the nature of creativity with the poet Alice Fulton, John Holland observed that creativity comes from constraints
• Reality is the ultimate set of constraints, and hence the ultimate source of creativity to solve problems
Non-Trivial Geography
• Trivial Geography In Genetic Programming (Spector and Klein 2005) showed that even a trivial map of individuals improved evolution
• What if we used real-world geography for evolutionary populations?
ERL: Evolutionary Reinforcement Learning
• Interactions Between Learning and Evolution (Ackley and Littman, 1991) describe a learning system that evolves in an artificial environment: “As the available computing power grows, the ‘artificial life’ experimental approach – based on computer simulations of systems modeling selected aspects of the natural world – becomes more and more feasible.”
• But what if the natural world is the substrate for interactions?
SKGP
• Worzel and MacLean 2015 described the use of combinators as GP primitives:
• Evolves finite state expressions by applying Hindley-Milner type system
• First class functions
• Still not quite enough...
Particulate Genes
• f-code expressions as particulate genes and transition code (state machine)
• Allows metafunctions of genes assembling sequences of other genes
• Supports speciation, sexual reproduction (allowing dominance/recessive genes) and population genetics
GP Reinforcement Learning
• GPRL would combine genetic programming with reinforcement learning
• ERL “...allows evolution to specify not only inherited behaviors, but also inherited goals that are used to guide learning.”
• Evaluation and Action NNs become special “genes” in the particulate genome
GPRL
ƒ
f-code NN values
f-code values NN f-codeNN values
(Neural Nets may use Deep Learning, weightings may be passed on (Lemarkian) or selectively changed (epigenetics))
Assembling EvE
• Fog Lifter as both a source of information and computing resources connected via P2P
• Real-world geography for data and demes
• ERL combining neural nets as learning recognizers and actions
• ...and evolving GP expressions that integrate neural nets into GP
Emergence• Holland’s description of the mechanisms
of emergence include the following and the element in Fog Lifter/SKGP that matches:
• State: evolved functions
• Transition Function: particulate genes
• Generators: GP
• Agents: neural nets as sensors
If The Singularity Arrives, Will It Be By Evolution?• The Evolution of Everything could be a
first step on the way to the Singularity:
• Tied to real world inputs
• Allows functions at multiple levels
• Continuous evolution
• Collections of functions (individuals) may live and die as conditions change